diff --git a/Ye-11X115490_PsyDuck4k/lib/.keep b/Ye-11X115490_PsyDuck4k/lib/.keep new file mode 100644 index 00000000..e69de29b diff --git a/Ye-11X115490_PsyDuck4k/lib/AppFox.js b/Ye-11X115490_PsyDuck4k/lib/AppFox.js new file mode 100644 index 00000000..28e1d10d --- /dev/null +++ b/Ye-11X115490_PsyDuck4k/lib/AppFox.js @@ -0,0 +1,3 @@ +//本资源来源于互联网公开渠道,仅可用于个人学习爬虫技术。 +//严禁将其用于任何商业用途,下载后请于 24 小时内删除,搜索结果均来自源站,本人不承担任何责任。 +let e={"User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/124.0.0.0 Safari/537.36",Connection:"Keep-Alive","Accept-Language":"zh-CN,zh;q=0.8","Cache-Control":"no-cache"},t=5e3,i=2,a=0,s=1,r={},l={},n={},o={},p=[],c="",f="",h="",d="",u="";async function g(l){let p=l.ext||"";if("string"==typeof p&&p.startsWith("http"))c=p;else if("object"==typeof p)try{c=p.host,d=p.key||"",u=p.sign||"",i=p.ver||2,h=(p.cms||"").replace(/\/$/,""),/^https?:\/\/.*\/vod/.test(h)&&(h+=h.includes("?")?"&":"?"),f=p.from||"",o=p.parse||{},a=p.custom_first||0,s=void 0!==p.category?p.category:1;let l=p.ua;l&&("string"==typeof l?e["User-Agent"]=l:"object"==typeof l&&(r={host:l.host,config:l.config,home:l.home,category:l.category,search:l.search,parse:l.parse,player:l.player})),t=1e3*(p.timeout||5)}catch(e){}if(!/^https?:\/\/[a-zA-Z0-9-]+(\.[a-zA-Z0-9-]+)*(:\d+)?(\/)?$/.test(c)){let i=Object.assign({},e);r.host&&(i["User-Agent"]=r.host);let a=await req(c,{headers:i,timeout:t});try{let e=JSON.parse(a.content);e.apiDomain&&(c=e.apiDomain)}catch(e){let t=(a.content||"").trim();t.startsWith("http")&&(c=t)}}c=c.replace(/\/$/,"");let g=d&&u;if(3!==i||g)g&&(i=3);else{let e=O();r.config&&(e["User-Agent"]=r.config);let i=(await S(`${c}/api.php/Appfox/config`,{headers:e,timeout:t})).data||{};i.app_key&&i.app_sign&&(d=i.app_key,u=i.app_sign);let a=i.playerList||[],s=i.jiexiDataList||[];a.length>0&&(n={playerList:a,jiexiDataList:s})}}async function y(i){if(!c||0===s)return JSON.stringify({class:[]});let a=Object.assign({},e);r.home&&(a["User-Agent"]=r.home);let l=[],n={},o={class:l,filters:n};if(h&&2!==s){let e=h.replace(/&$/,"");e=e.replace(/&ac=videolist/g,"").replace(/ac=videolist&/g,"").replace(/ac=videolist/g,""),e=e.replace("ac=detail","ac=list");let i=await S(e,{headers:a,timeout:t});i&&i.class&&(l=i.class),o=await S(h.replace(/&$/,""),{headers:a,timeout:t})||{},o.class=l,2===s&&o.list&&o.list.forEach((e=>e.vod_id=`msearch:${e.vod_id}`))}else{let e=await S(`${c}/api.php/Appfox/init`,{headers:a,timeout:t});e&&e.data&&e.data.type_list&&e.data.type_list.forEach((e=>{let t=String(e.type_id);if(l.push({type_id:t,type_name:e.type_name}),i&&e.filter_type_list&&e.filter_type_list.length>0){let i=[];e.filter_type_list.forEach((e=>{let t=e.name;switch(e.name){case"class":t="类型";break;case"area":t="地区";break;case"lang":t="语言";break;case"year":t="年份";break;case"sort":t="排序"}let a=[],s="";e.list.forEach((e=>{e&&a.push({n:e,v:e})})),a.length>0&&(s="sort"===e.name&&e.list.includes("最新")?"最新":e.list.includes("全部")?"全部":a[0].v,i.push({key:e.name,name:t,init:s,value:a}))})),i.length>0&&(n[t]=i)}})),o.class=l,o.filters=n}return JSON.stringify(o)}async function m(){if(!c||0===s)return JSON.stringify({list:[]});if(h&&2!==s)return JSON.stringify({list:[]});let a=Object.assign({},e);(r.homeVideo||r.home)&&(a["User-Agent"]=r.homeVideo||r.home);let l="index";if(2===i||3===i){let e=await S(`${c}/api.php/appfox/nav`,{headers:a,timeout:t}),i="";if(e&&e.data)for(let t of e.data)if("object"==typeof t){i=t.navigationId;break}if(!i)return JSON.stringify({list:[]});l=`nav_video?id=${i}`}let n=await S(`${c}/api.php/Appfox/${l}`,{headers:a,timeout:t}),o=[];return n&&n.data&&n.data.forEach((e=>{e.banner&&o.push(...e.banner),e.categories&&e.categories.forEach((e=>{e.videos&&o.push(...e.videos)}))})),o.length>0&&2===s&&o.forEach((e=>e.vod_id=`msearch:${e.vod_id}`)),JSON.stringify({list:o})}async function $(i,a,l,n){if(!c)return JSON.stringify({list:[]});let o=Object.assign({},e);r.category&&(o["User-Agent"]=r.category);let p={list:[]};if(h&&2!==s)p=await S(`${h}pg=${a}&t=${i}`,{headers:o,timeout:t})||{list:[]};else{let e=n.class||"全部",s=n.area||"全部",r=n.lang||"全部",l=n.year||"全部",f=n.sort||"最新",h=`${c}/api.php/Appfox/vodList?type_id=${i}&class=${encodeURIComponent(e)}&area=${encodeURIComponent(s)}&lang=${encodeURIComponent(r)}&year=${encodeURIComponent(l)}&sort=${encodeURIComponent(f)}&page=${a}`,d=await S(h,{headers:o,timeout:t});d&&d.data&&d.data.recommend_list&&(p.list=d.data.recommend_list)}return 2===s&&p.list&&p.list.forEach((e=>e.vod_id=`msearch:${e.vod_id}`)),JSON.stringify({...p,page:parseInt(a)})}async function _(a,s,l=1){if(!c)return JSON.stringify({list:[]});let n=Object.assign({},e);r.search&&(n["User-Agent"]=r.search);let o={list:[]};if(h){let e=h.includes("?")?h.split("?")[0]+"?":h;o=await S(`${e}ac=detail&wd=${encodeURIComponent(a)}`,{headers:n,timeout:t})||{list:[]},p=o.list||[]}else{if(3===i){let e={ac:"detail",wd:a,pg:String(l)},i=O(JSON.stringify(e));r.search&&(i["User-Agent"]=r.search),o=b((await req(`${c}/api.php/appfoxs/vod`,{method:"post",data:e,headers:i,postType:"",timeout:t})).content)}else{let e=`${c}/api.php/Appfox/vod?ac=detail&wd=${encodeURIComponent(a)}`;f&&(e+=`&from=${f}`),o=await S(e,{headers:n,timeout:t})||{list:[]}}p=o.list||[]}return JSON.stringify(o)}async function v(a){let s=Object.assign({},e),o=r.detail||r.search;o&&(s["User-Agent"]=o);let f=p.find((e=>String(e.vod_id)===String(a)));if(!f)if(h){let e=h.includes("?")?h.split("?")[0]+"?":h,i=await S(`${e}ac=detail&ids=${a}`,{headers:s,timeout:t});i&&i.list&&i.list.length>0&&(f=i.list[0])}else if(3===i){let e={ac:"detail",ids:String(a)},i=O(JSON.stringify(e));o&&(i["User-Agent"]=o);let s=b((await req(`${c}/api.php/appfoxs/vod`,{method:"post",data:e,headers:i,postType:"",timeout:t})).content);s&&s.list&&(f=s.list[0])}else{let e=await S(`${c}/api.php/Appfox/vod?ac=detail&ids=${a}`,{headers:s,timeout:t});e&&e.list&&(f=e.list[0])}if(!f)return JSON.stringify({list:[]});let d=(f.vod_play_from||"").split("$$$"),u=(f.vod_play_url||"").split("$$$");try{let a=3===i?O():Object.assign({},e);if(r.config&&(a["User-Agent"]=r.config),!n||!n.playerList)if(3===i){let e=b((await req(`${c}/api.php/appfoxs/config`,{headers:a,timeout:t})).content);n={playerList:e?.data?.playerList||[],jiexiDataList:e?.data?.jiexiDataList||[]}}else{let e=await S(`${c}/api.php/Appfox/config`,{headers:a,timeout:t});n={playerList:e?.data?.playerList||[],jiexiDataList:e?.data?.jiexiDataList||[]}}let s=n.playerList||[],o=n.jiexiDataList||[],p={};s.forEach((e=>p[e.playerCode]=e));let h=[];for(let e=0;e=2?a.push(i[0]+"$"+t+"@"+i[1]):a.push(e)}h.push(a.join("#"))}}f.vod_play_from=d.join("$$$"),f.vod_play_url=h.join("$$$"),l={},o.forEach((e=>{(e.url||"").startsWith("http")&&(l[e.playerCode]=e.url)}))}catch(e){}return JSON.stringify({list:[f]})}async function A(i,s,n){let p=s.indexOf("@"),c=p>-1?s.substring(0,p):"",f=p>-1?s.substring(p+1):s,h=0,d=0,u=0,g={...e};r.parse&&(g["User-Agent"]=r.parse);let y=r.player||"Mozilla/5.0 (iPhone; CPU iPhone OS 13_2_3 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/13.0.3 Mobile/15E148 Safari/604.1",m=f,$=1===a?[o,l]:[l,o];for(let e of $){if(!u&&!/^https?:\/\/.*\.(m3u8|mp4|flv|mkv)/.test(m))for(let i in e){if(!i.includes(c))continue;let a=e[i];if(Array.isArray(a))for(let e of a){if(e.startsWith("parse:")){m=e.split("parse:")[1]+f,h=0,d=1,u=1;break}try{let i=await S(`${e}${f}`,{headers:g,timeout:t});if(i&&i.url&&i.url.startsWith("http")){m=i.url,u=1;break}}catch(e){}}else if("string"==typeof a){if(a.startsWith("parse:")){m=a.split("parse:")[1]+f,h=0,d=1,u=1;break}try{let e=await S(`${a}${f}`,{headers:g,timeout:t});if(e&&e.url&&e.url.startsWith("http")){m=e.url,u=1;break}}catch(e){}}if(u||d)break}if(u||d)break}return/^https?:\/\/.*\.(m3u8|mp4|flv|mkv)/.test(m)||1===u||(h=1),JSON.stringify({jx:h,parse:d,url:m,header:{"User-Agent":y}})}function b(e){if(!e)return{};try{return JSON.parse(e)}catch(t){try{return JSON.parse(function(e){try{let t=md5X(d).substring(0,16),i=t.split("").reverse().join("");return aesX("AES/CBC/PKCS7",!1,e,!0,t,i,!1)}catch(t){return e}}(e))}catch(t){return e}}}async function S(e,t={}){try{return b((await req(e,t)).content)}catch(e){return{}}}function O(t=""){let i=(new Date).getTime(),a=Math.floor(9e5*Math.random())+1e5,s=md5X(`${u}${d}${i}${a}${t}`);return{"User-Agent":e["User-Agent"],"x-security-auth":`${i}|${a}|${s}`,"content-type":"application/json; charset=utf-8"}}export function __jsEvalReturn(){return{init:g,home:y,homeVod:m,category:$,search:_,detail:v,play:A}} \ No newline at end of file diff --git a/Ye-11X115490_PsyDuck4k/lib/AppGet.py b/Ye-11X115490_PsyDuck4k/lib/AppGet.py new file mode 100644 index 00000000..4acf273a --- /dev/null +++ b/Ye-11X115490_PsyDuck4k/lib/AppGet.py @@ -0,0 +1,412 @@ +# coding = utf-8 +# !/usr/bin/python +# 新时代青年 2025.06.25 getApp第三版 +# 基于原作者修改版本,仅限个人学习爬虫技术,严禁用于任何盈利用途 +from Crypto.Cipher import AES +from base.spider import Spider +from Crypto.Util.Padding import pad, unpad +from concurrent.futures import ThreadPoolExecutor, as_completed +import re, sys, time, uuid, json, base64, urllib3, random, hashlib, os, urllib.parse +urllib3.disable_warnings(urllib3.exceptions.InsecureRequestWarning) +sys.path.append('..') +TARGET_DOMAIN = 'app.lkdyw.cn' + +class Spider(Spider): + xurl, key, iv, init_data, search_verify = '', '', '', '', '' + username, password, device_id, version, get_type = '', '', '', '', '0' + def_headers, auto_vip, line_block, search_timeout = {'User-Agent': 'okhttp/3.14.9'}, 0, [], 10 + vip_purchased, retry_count, sort_keywords, token_cache_file = False, 0, [], '' + auto_vip_triggered, search_mode, auto_vip_enabled = False, False, False + base_host, cache_dir = '', '' + search_index_suffix = 'searchList' + verify_code = '' + is_api3 = False + + def _set_cache_filename(self, host): + try: + parsed = urllib.parse.urlparse(host) + domain = parsed.netloc or os.path.basename(parsed.path) + safe_domain = re.sub(r'[^a-zA-Z0-9_.-]', '_', domain) + self.cache_dir = '/storage/emulated/0/Download/cache' + os.makedirs(self.cache_dir, exist_ok=True) + current_date = time.strftime("%Y%m%d") + if parsed.netloc == TARGET_DOMAIN: + self.token_cache_file = os.path.join(self.cache_dir, f"{safe_domain}_token{current_date}.json") + else: + self.token_cache_file = os.path.join(self.cache_dir, f"{safe_domain}_token.json") + except: + self.cache_dir = '/storage/emulated/0/Download/cache' + os.makedirs(self.cache_dir, exist_ok=True) + self.token_cache_file = os.path.join(self.cache_dir, "default_token.json") + + def init(self, extend=''): + ext = json.loads(extend.strip()) if extend.strip() else {} + api_map = { + '2': '/api.php/qijiappapi', + 'qiji': '/api.php/qijiappapi', + 'flutter': '/api.php/getappapi', + 'get': '/api.php/getappapi', + '3': '/api/vod/' + } + api = api_map.get(str(ext.get('api')), '/api.php/getappapi') + self.get_type = str(ext.get('api')) if str(ext.get('api')) in api_map else 'default' + self.is_api3 = self.get_type == '3' + host = ext['host'] + + self.search_index_suffix = ext.get('index', 'searchList').strip() + self.verify_code = ext.get('verify_code', '').strip() + + if not re.match(r'^https?://', host): + host = 'http://' + host + parsed_host = urllib.parse.urlparse(host) + self.base_host = f"{parsed_host.scheme}://{parsed_host.netloc}".rstrip('/') + + domain_set = set() + if re.match(r'^https?:\/\/[a-zA-Z0-9-]+(\.[a-zA-Z0-9-]+)*(:\d+)?(\/)?$', host): + domain_set.add(host) + else: + host_data = self.fetch(host, headers=self.get_headers(1), timeout=10, verify=False).text + domain_set.update([d.strip() for d in host_data.split('\n') if d.strip()]) + + self.def_headers['User-Agent'] = ext.get('ua', self.def_headers['User-Agent']) + self.key = ext.get('key', ext.get('datakey')) + if not self.key: return + self.iv = ext.get('iv', ext.get('dataiv')) or self.key + self.device_id = ext.get('devideid') or ext.get('deviceid', '') + if not self.device_id: + self.device_id = ''.join(random.choices('0123456789abcdef', k=33)) + self.version, self.username, self.password = str(ext.get('version', '')), ext.get('username'), ext.get('password') + self.auto_vip = int(ext.get('auto_vip', 0)) + self.auto_vip_enabled = self.auto_vip in (1, 2) + self.search_mode = ext.get('search', False) in (1, '1', 'true', 'TRUE') + line_block_conf = ext.get('line_block', '') + self.line_block = [kw.strip() for kw in (line_block_conf.split(',') if isinstance(line_block_conf, str) else line_block_conf) if kw.strip()] + from_config = ext.get('from', '').strip() + if from_config: + self.sort_keywords = [kw.strip() for kw in from_config.split('>') if kw.strip()] + self.search_timeout = int(ext.get('time', 10)) + self.search_timeout = 10 if not (0 < self.search_timeout <= 60) else self.search_timeout + + self._set_cache_filename(self.base_host) + self.load_token_cache() + + if not self.def_headers.get('app-user-token') and ext.get('token'): + self.def_headers['app-user-token'] = ext.get('token') + if self.device_id: + self.def_headers['app-user-device-id'] = self.device_id + + # ==================== 新增:初始化POST请求参数 ==================== + init_post_data = { + "device_id": self.device_id, + "version": self.version, + "timestamp": str(int(time.time())) + } + # =============================================================== + + for domain in domain_set: + try: + self.xurl = f"{domain}{api}" + init_api = 'init' if self.is_api3 else 'initV119' + init_url = f'{self.xurl}{init_api}' if self.is_api3 else f'{self.xurl}.index/{init_api}' + + headers = self.get_headers() + # ==================== 核心:init改用POST请求 ==================== + res = self.post( + url=init_url, + data=init_post_data, + headers=headers, + timeout=(5, 5), + verify=False + ).json() + # =============================================================== + + self.init_data = json.loads(self.decrypt(res['data'])) + self.search_verify = self.init_data['config'].get('system_search_verify_status', False) + break + except Exception as e: + continue + + if self.auto_vip_enabled and not self.def_headers.get('app-user-token') and not self.vip_purchased: + self.silent_register_and_buy_vip() + self.vip_purchased = True + + def fuzzy_sort_lines(self, lines): + if not lines or not self.sort_keywords: return lines + def get_sort_weight(line): + line_name = line['player_show'].lower() + for idx, kw in enumerate(self.sort_keywords): + if kw.lower() in line_name: return idx + return len(self.sort_keywords) + return sorted(lines, key=lambda x: get_sort_weight(x)) + + def load_token_cache(self): + try: + parsed_host = urllib.parse.urlparse(self.base_host) + if parsed_host.netloc == TARGET_DOMAIN: + current_date = time.strftime("%Y%m%d") + for file in os.listdir(self.cache_dir): + if file.startswith(f"{re.sub(r'[^a-zA-Z0-9_.-]', '_', parsed_host.netloc)}_token") and file.endswith('.json'): + if current_date not in file: + os.remove(os.path.join(self.cache_dir, file)) + if os.path.exists(self.token_cache_file): + with open(self.token_cache_file, 'r') as f: + cache = json.load(f) + if cache.get('host') != self.base_host: + return + if cache.get('token'): + self.def_headers['app-user-token'] = cache['token'] + if cache.get('device_id'): + self.device_id = cache['device_id'] + self.def_headers['app-user-device-id'] = cache['device_id'] + except: + pass + + def save_token_cache(self, token, device_id): + try: + os.makedirs(self.cache_dir, exist_ok=True) + cache_data = {'token': token, 'device_id': device_id, 'timestamp': int(time.time()), 'host': self.base_host} + with open(self.token_cache_file, 'w') as f: + json.dump(cache_data, f) + except: + pass + + def get_headers(self, main=0): + base_headers = {'Accept-Encoding': 'gzip'} + if self.get_type == 'qiji': return {**base_headers, 'User-Agent': 'okhttp/3.10.0', 'Connection': 'Keep-Alive', **self.def_headers} + elif self.get_type == 'flutter': + flutter_headers = {'User-Agent': 'Dart/3.5 (dart:io)'} if main == 1 else {'User-Agent': '', 'app-version-code': self.version, 'app-os': 'android', 'app-ui-mode': 'light'} + return {**base_headers, **flutter_headers, **self.def_headers} + elif self.get_type == 'get': + timestamp = str(int(time.time())) + get_headers = {'User-Agent': 'okhttp/3.14.9'} if main == 1 else {'User-Agent': '', 'Connection': 'Keep-Alive', 'app-version-code': self.version, 'app-ui-mode': 'light', 'app-user-device-id': self.device_id, 'app-api-verify-time': timestamp, 'app-api-verify-sign': self.encrypt(timestamp), 'Content-Type': 'application/x-www-form-urlencoded; charset=UTF-8'} + return {**base_headers, **get_headers, **self.def_headers} + elif self.is_api3: + return {**base_headers, **self.def_headers} + return {**base_headers, **self.def_headers} + + def login(self): + if self.username and self.password and self.device_id: + timestamp = str(int(time.time())) + headers = self.get_headers().copy() + headers.update({'app-version-code': "", 'app-ui-mode': 'light', 'app-api-verify-time': timestamp, 'app-api-verify-sign': self.generate_signature(timestamp)}) + login_url = f'{self.xurl}appLogin' if self.is_api3 else f'{self.xurl}.index/appLogin' + res = self.post(login_url, data={'password': self.password, 'code': "", 'device_id': self.device_id, 'user_name': self.username, 'invite_code': "", 'is_emulator': "0"}, headers=headers).json() + auth_token = json.loads(self.decrypt(res['data']))['user']['auth_token'] + self.def_headers['app-user-token'] = auth_token + self.save_token_cache(auth_token, self.device_id) + + def generate_signature(self, timestamp): + key_bytes = self.key.encode('utf-8') + iv_bytes = self.iv.encode('utf-8') + cipher = AES.new(key_bytes, AES.MODE_CBC, iv_bytes) + padded_timestamp = pad(timestamp.encode('utf-8'), AES.block_size) + encrypted_bytes = cipher.encrypt(padded_timestamp) + return base64.b64encode(encrypted_bytes).decode('utf-8') + + def homeContent(self, filter): + result = {"class": [], "filters": {}} + for item in self.init_data.get('type_list', []): + if item['type_name'] not in {'全部', 'QQ', 'juo.one'} and '企鹅群' not in item['type_name']: + result['class'].append({"type_id": item['type_id'], "type_name": item['type_name']}) + filter_items = [{"key": 'by' if ft['name'] == 'sort' else ft['name'], "name": {'class': '类型', 'area': '地区', 'lang': '语言', 'year': '年份', 'sort': '排序'}.get(ft['name'], ft['name']), "value": [{"n": v, "v": v} for v in ft['list']]} for ft in item.get('filter_type_list', []) if ft.get('list')] + if filter_items: result["filters"][str(item['type_id'])] = filter_items + return result + + def homeVideoContent(self): + return {'list': self.arr2vods([vid for item in self.init_data.get('type_list', []) for vid in item.get('recommend_list', [])])} + + def categoryContent(self, cid, pg, filter, ext): + cate_url = f'{self.xurl}typeFilterVodList' if self.is_api3 else f'{self.xurl}.index/typeFilterVodList' + res = self.post(cate_url, headers=self.get_headers(), data={'area': ext.get('area', '全部'), 'year': ext.get('year', '全部'), 'type_id': cid, 'page': str(pg), 'sort': ext.get('sort', '最新'), 'lang': ext.get('lang', '全部'), 'class': ext.get('class', '全部')}, verify=False).json() + return {'list': self.arr2vods(json.loads(self.decrypt(res['data']))['recommend_list']), 'page': pg, 'pagecount': 9999, 'limit': 90, 'total': 999999} + + def _fetch_cate_page(self, page): + try: + cate_url = f'{self.xurl}typeFilterVodList' if self.is_api3 else f'{self.xurl}.index/typeFilterVodList' + res = self.post(cate_url, headers=self.get_headers(), data={'area':'全部','year':'全部','type_id':'0','page':str(page),'sort':'最新','lang':'全部','class':'全部'}, verify=False).json() + return self.arr2vods(json.loads(self.decrypt(res['data']))['recommend_list']) + except: return [] + + def custom_search(self, key): + vods, c_page, stop = [], 1, False + while not stop and c_page <= 100: + batch_end = min(c_page+4, 100) + with ThreadPoolExecutor(max_workers=5) as exe: + tasks = [exe.submit(self._fetch_cate_page, p) for p in range(c_page, batch_end+1)] + for fut in as_completed(tasks): + for v in fut.result(): + if key in v['vod_name'] and v['vod_id'] not in [x['vod_id'] for x in vods]: + vods.append(v) + stop = True + exe.shutdown(wait=False) + break + if stop: break + c_page = batch_end + 1 + return vods + + def searchContent(self, key, quick, pg="1"): + if self.search_mode: + return {'list': self.custom_search(key), 'page': int(pg), 'pagecount': 100, 'limit': 90, 'total': len(self.custom_search(key))} + if 'xiaohys.com' in self.xurl: + data = self.fetch(f'{self.xurl.split("api.php")[0]}index.php/ajax/suggest?mid=1&wd={key}', timeout=self.search_timeout, verify=False).json() + return {'list': [{"vod_id": i['id'], "vod_name": i['name'], "vod_pic": i.get('pic')} for i in data['list']], 'page': pg, 'pagecount': 999, 'limit': 30, 'total': 9999} + payload = {'keywords': key, 'type_id': "0", 'page': str(pg)} + if self.search_verify: + if self.verify_code and len(self.verify_code) == 4 and self.verify_code.isdigit(): + verifi = {'code': self.verify_code, 'uuid': str(uuid.uuid4())} + else: + verifi = self.verification() + if not verifi: return {'list': [], 'page': pg, 'pagecount': 0, 'limit': 30, 'total': 0} + payload.update({'code': verifi['code'], 'key': verifi['uuid']}) + search_url = f'{self.xurl}{self.search_index_suffix}' if self.is_api3 else f'{self.xurl}.index/{self.search_index_suffix}' + res = self.post(search_url, data=payload, headers=self.get_headers(), verify=False, timeout=self.search_timeout).json() + if not res.get('data'): return {'list': [], 'msg': res.get('msg'), 'page': pg, 'pagecount': 0, 'limit': 30, 'total': 0} + return {'list': self.arr2vods(json.loads(self.decrypt(res['data']))['search_list']), 'page': pg, 'pagecount': 999, 'limit': 30, 'total': 9999} + + def detailContent(self, ids): + did = ids[0] + payload = {'vod_id': did} + api_endpoints = ['vodDetail2', 'vodDetail3'] if 'qijiappapi' in self.xurl else ['vodDetail'] + self.login() + for endpoint in api_endpoints: + detail_url = f'{self.xurl}{endpoint}' if self.is_api3 else f'{self.xurl}.index/{endpoint}' + resp = self.post(detail_url, headers=self.get_headers(), data=payload, verify=False) + if resp.status_code == 200: + resp_data = resp.json() + if any(msg in resp_data.get('msg', '') for msg in ['到期', '请先注册登录', '积分', '会员', '登录', '注册']) or resp_data.get('code') == 0: + if self.auto_vip_enabled and not self.vip_purchased and self.retry_count < 1 and not self.auto_vip_triggered: + self.silent_register_and_buy_vip() + self.vip_purchased = True + self.retry_count += 1 + return self.detailContent(ids) + return None + kjson = json.loads(self.decrypt(resp_data['data'])) + filter_keywords = {'防走丢', '群', '防失群', '官网'} | set(self.line_block) + valid_lines = self.fuzzy_sort_lines([{'player_show': line['player_info']['show'], 'parse': line['player_info']['parse'], 'parse_type': line['player_info']['parse_type'], 'player_parse_type': line['player_info']['player_parse_type'], 'urls': line['urls']} for line in kjson['vod_play_list'] if not any(kw in line['player_info']['show'] for kw in filter_keywords)]) + play_form, play_url, name_count = [], [], {} + for line in valid_lines: + show_name = line['player_show'] + name_count[show_name] = name_count.get(show_name, 0) + 1 + if name_count[show_name] > 1: show_name += str(name_count[show_name]) + play_form.append(show_name) + play_url.append('#'.join([f"{vod['name']}${line['parse']},{vod['url']},token+{vod['token']},{line['player_parse_type']},{line['parse_type']}" for vod in line['urls']])) + vod = kjson['vod'] + return {'list': [{"vod_id": did, "vod_name": vod['vod_name'], "vod_actor": vod['vod_actor'].replace('演员', ''), "vod_director": vod.get('vod_director', '').replace('导演', ''), "vod_content": vod['vod_content'], "vod_remarks": vod['vod_remarks'], "vod_year": vod['vod_year'], "vod_area": vod['vod_area'], "vod_play_from": '$$$'.join(play_form), "vod_play_url": '$$$'.join(play_url)}]} + return None + + def playerContent(self, flag, vid, vip_Flags): + uid, raw_url, token, player_parse_type, parse_type = vid.split(',', 4) + token = token.replace('token+', '') + default_header = {'User-Agent': 'Dalvik/2.1.0 (Linux; U; Android 14; 23113RK12C Build/SKQ1.231004.001)'} + if parse_type == '0': return {"parse": 0, "url": raw_url, "header": default_header} + elif parse_type == '2': return {"parse": 1, "url": f'{uid}{raw_url}', "header": default_header} + elif player_parse_type == '2': + try: url = self.fetch(f'{uid}{raw_url}', headers=self.get_headers(1), verify=False).json().get('url', '') + except: url = '' + return {"parse": 0, "url": url, "header": default_header} + try: + parse_url = f'{self.xurl}vodParse' if self.is_api3 else f'{self.xurl}.index/vodParse' + resp = self.post(parse_url, headers=self.get_headers(), data={'parse_api': uid, 'url': self.encrypt(raw_url), 'player_parse_type': player_parse_type, 'token': token}, verify=False).json() + url = json.loads(json.loads(self.decrypt(resp['data']))['json']).get('url', '') + except: url = '' + return {"parse": 0, "playUrl": '', "url": url, "header": default_header} + + def _is_captcha_error(self, response_msg): + return any(kw in response_msg for kw in ["验证码", "captcha", "code", "验证", "校验"]) + + def _silent_register_core(self): + try: + device_id = self.device_id or ''.join(random.choices('0123456789abcdef', k=33)) + username = ''.join(random.choices('ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789', k=10)) + password = ''.join(random.choices('abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789', k=10)) + timestamp = str(int(time.time())) + verifi = None + if self.auto_vip == 2: + for _ in range(2): + verifi = self.verification() + if verifi: break + time.sleep(0.5) + if not verifi: return None, None + code = verifi['code'] if (self.auto_vip == 2 and verifi) else "" + key = verifi['uuid'] if (self.auto_vip == 2 and verifi) else str(uuid.uuid4()) + register_data = json.dumps({"password": password, "code": code, "device_id": device_id, "user_name": username, "invite_code": "", "key": key, "is_emulator": 0}, separators=(',', ':')) + headers = self.get_headers().copy() + headers.update({"app-version-code": self.version or "120", "app-ui-mode": "light", "app-user-device-id": device_id, "app-api-verify-time": timestamp, "app-api-verify-sign": self.generate_signature(timestamp), "Content-Type": "application/x-www-form-urlencoded", "Connection": "Keep-Alive", "Accept-Encoding": "gzip"}) + reg_url = f'{self.xurl}appRegisterV133' if self.is_api3 else f'{self.xurl}.index/appRegisterV133' + resp = self.post(reg_url, headers=headers, data={"data": self.encrypt(register_data)}, verify=False, timeout=10) + if resp.status_code == 200: + resp_json = resp.json() + if resp_json.get("code") != 1 and self._is_captcha_error(resp_json.get("msg", "")) and self.auto_vip == 2: + verifi = self.verification() + if verifi: + code = verifi['code'] + key = verifi['uuid'] + register_data = json.dumps({"password": password, "code": code, "device_id": device_id, "user_name": username, "invite_code": "", "key": key, "is_emulator": 0}, separators=(',', ':')) + resp = self.post(reg_url, headers=headers, data={"data": self.encrypt(register_data)}, verify=False, timeout=10) + resp_json = resp.json() + if resp_json.get("code") == 1: + token = json.loads(self.decrypt(resp_json["data"]))['user'].get('auth_token') + if token: return token, device_id + except: pass + return None, None + + def silent_register_and_buy_vip(self): + max_retries = 3 + for _ in range(max_retries): + token, device_id = self._silent_register_core() + if token and device_id: + self.def_headers.update({'app-user-token': token, 'app-user-device-id': device_id}) + self.device_id = device_id + self.save_token_cache(token, device_id) + self.silent_buy_vip(token, device_id) + self.auto_vip_triggered = True + return True + if self.auto_vip == 2: time.sleep(1) + return False + + def silent_buy_vip(self, token, device_id): + try: + timestamp = str(int(time.time())) + headers = self.get_headers().copy() + headers.update({"app-version-code": self.version or "120", "app-ui-mode": "light", "app-user-device-id": device_id, "app-user-token": token, "app-api-verify-time": timestamp, "app-api-verify-sign": self.generate_signature(timestamp), "Content-Type": "application/x-www-form-urlencoded", "Connection": "Keep-Alive", "Accept-Encoding": "gzip"}) + buy_vip_url = f'{self.xurl}userBuyVip' if self.is_api3 else f'{self.xurl}.index/userBuyVip' + resp = self.post(buy_vip_url, headers=headers, data={"index": "0"}, verify=False, timeout=10) + return resp.status_code == 200 and resp.json().get("code") == 1 + except: return True + + def arr2vods(self, arr): + return [{'vod_id': item['vod_id'], 'vod_name': item['vod_name'], 'vod_pic': item.get('vod_pic'), 'vod_remarks': item.get('vod_remarks')} for item in arr if isinstance(arr, list) and item.get('vod_id')] + + def decrypt(self, encrypted_data_b64): + cipher = AES.new(self.key.encode('utf-8'), AES.MODE_CBC, self.iv.encode('utf-8')) + return unpad(cipher.decrypt(base64.b64decode(encrypted_data_b64)), AES.block_size).decode('utf-8') + + def encrypt(self, sencrypted_data): + cipher = AES.new(self.key.encode('utf-8'), AES.MODE_CBC, self.iv.encode('utf-8')) + return base64.b64encode(cipher.encrypt(pad(sencrypted_data.encode('utf-8'), AES.block_size))).decode('utf-8') + + def verification(self): + try: + uuid_str = str(uuid.uuid4()) + verify_url = f'{self.xurl}verify/create?key={uuid_str}' if self.is_api3 else f'{self.xurl}.verify/create?key={uuid_str}' + img_data = self.fetch(verify_url, headers=self.get_headers(), verify=False).content + if not img_data: return None + code = self.ocr(base64.b64encode(img_data).decode('utf-8')) + if not code: return None + replacements = {'y':'9','口':'0','q':'0','u':'0','o':'0','>':'1','d':'0','b':'8','已':'2','D':'0','五':'5'} + if len(code) == 3: code = code.replace('566', '5066').replace('066', '1666') + code = ''.join(replacements.get(c, c) for c in code) + return {'uuid': uuid_str, 'code': code} if len(code) == 4 and code.isdigit() else None + except: return None + + def ocr(self, base64img): + try: return self.post('https://api.nn.ci/ocr/b64/text', data=base64img, headers=self.get_headers(1), verify=False).text.strip() or None + except: return None + + def localProxy(self, params): + proxy_map = {"m3u8": self.proxyM3u8, "media": self.proxyMedia, "ts": self.proxyTs} + return proxy_map.get(params.get('type'))(params) if proxy_map.get(params.get('type')) else None + + def getName(self): pass + def isVideoFormat(self, url): pass + def manualVideoCheck(self): pass diff --git a/Ye-11X115490_PsyDuck4k/lib/AppYsV2.js b/Ye-11X115490_PsyDuck4k/lib/AppYsV2.js new file mode 100644 index 00000000..b6cf7d78 --- /dev/null +++ b/Ye-11X115490_PsyDuck4k/lib/AppYsV2.js @@ -0,0 +1,1068 @@ +import { Crypto, _ } from 'assets://js/lib/cat.js' + +let host = ''; +let header = { + 'User-Agent': 'okhttp/3.12.11' +}; +let siteKey = ''; +let siteType = ''; +let siteJx = ''; + +const urlPattern1 = /api\.php\/.*?\/vod/; +const urlPattern2 = /api\.php\/.+?\.vod/; +const parsePattern = /\/.+\\?.+=/; +const parsePattern1 = /.*(url|v|vid|php\?id)=/; +const parsePattern2 = /https?:\/\/[^\/]*/; + +const htmlVideoKeyMatch = [ + /player=new/, + /
0) { + let episodeName = segment.substring(0, dollarInSegment); + let urlPart = segment.substring(dollarInSegment); + episodeName = episodeName.replace(/奇迹云/g, ''); + result += episodeName + urlPart; + } else { + result += segment.replace(/奇迹云/g, ''); + } + result += sep; + i = found + sep.length; + } else { + // 最后一段 + let segment = playUrl.substring(i); + let dollarInSegment = segment.indexOf('$'); + if (dollarInSegment > 0) { + let episodeName = segment.substring(0, dollarInSegment); + let urlPart = segment.substring(dollarInSegment); + episodeName = episodeName.replace(/奇迹云/g, ''); + result += episodeName + urlPart; + } else { + result += segment.replace(/奇迹云/g, ''); + } + break; + } + } + return result; +} + +async function detail(ids) { + try { + // 苹果CMS V10模式检测 + if (host.includes('/vod') || host.includes('/provide/vod')) { + const url = `${host}?ac=detail&ids=${ids}`; + const json = await request(url, getHeaders(url)); + const obj = JSON.parse(json); + const result = { list: [] }; + const vod = {}; + + const data = obj.list && obj.list[0] ? obj.list[0] : {}; + vod.vod_id = data.vod_id || ids; + vod.vod_name = (data.vod_name || "").replace(/奇迹云/g, ''); + vod.vod_pic = data.vod_pic || ""; + vod.type_name = (data.type_name || "").replace(/奇迹云/g, ''); + vod.vod_year = (data.vod_year || "").replace(/奇迹云/g, ''); + vod.vod_area = (data.vod_area || "").replace(/奇迹云/g, ''); + vod.vod_remarks = (data.vod_remarks || "").replace(/奇迹云/g, ''); + vod.vod_actor = (data.vod_actor || "").replace(/奇迹云/g, ''); + vod.vod_director = (data.vod_director || "").replace(/奇迹云/g, ''); + vod.vod_content = (data.vod_content || "").replace(/奇迹云/g, ''); + + // 处理线路名称 + let playFrom = data.vod_play_from || ""; + if (playFrom) { + let lines = playFrom.split('$$$'); + let newLines = []; + for (let line of lines) { + if (line && line.toLowerCase().includes('qijiyun4k')) { + newLines.push('狮子心4k专属🦁'); + } else { + newLines.push((line || "").replace(/奇迹云/g, '')); + } + } + vod.vod_play_from = newLines.join('$$$'); + } else { + vod.vod_play_from = ""; + } + + // 处理选集:只替换文字,保留原始分隔符和结构 + vod.vod_play_url = replacePlayUrlText(data.vod_play_url || ""); + + result.list.push(vod); + return JSON.stringify(result); + } else { + // 原有AppYsV2模式 + const apiUrl = host; + const url = getPlayUrlPrefix(apiUrl) + ids; + + const json = await request(url, getHeaders(url)); + const obj = JSON.parse(json); + const result = { + list: [], + }; + const vod = {}; + genPlayList(apiUrl, obj, json, vod, ids); + + // 替换详情中的所有文字 + if (vod.vod_name) vod.vod_name = vod.vod_name.replace(/奇迹云/g, ''); + if (vod.type_name) vod.type_name = vod.type_name.replace(/奇迹云/g, ''); + if (vod.vod_year) vod.vod_year = vod.vod_year.replace(/奇迹云/g, ''); + if (vod.vod_area) vod.vod_area = vod.vod_area.replace(/奇迹云/g, ''); + if (vod.vod_remarks) vod.vod_remarks = vod.vod_remarks.replace(/奇迹云/g, ''); + if (vod.vod_actor) vod.vod_actor = vod.vod_actor.replace(/奇迹云/g, ''); + if (vod.vod_director) vod.vod_director = vod.vod_director.replace(/奇迹云/g, ''); + if (vod.vod_content) vod.vod_content = vod.vod_content.replace(/奇迹云/g, ''); + + // 替换线路名称 + if (vod.vod_play_from) { + let lines = vod.vod_play_from.split('$$$'); + let newLines = []; + for (let line of lines) { + if (line && line.toLowerCase().includes('qijiyun4k')) { + newLines.push('狮子心4k专属🦁'); + } else { + newLines.push((line || "").replace(/奇迹云/g, '')); + } + } + vod.vod_play_from = newLines.join('$$$'); + } + + // 处理选集:只替换文字,保留原始分隔符和结构 + vod.vod_play_url = replacePlayUrlText(vod.vod_play_url || ""); + + result.list.push(vod); + return JSON.stringify(result); + } + } catch (e) { + SpiderDebug.log(e); + } + return ""; +} + +async function play(flag, id, vipFlags) { + try { + let parseUrls = siteJx[flag]; + if (!parseUrls) { + if (siteJx.hasOwnProperty('*')) { + parseUrls = siteJx['*']; + } else { + parseUrls = []; + } + } + + if (parseUrls.length > 0) { + const result = await getFinalVideo(flag, parseUrls, id); + if (result !== null) { + return JSON.stringify(result); + } + } + + if (isVideoFormat(id)) { + const result = { + parse: 0, + playUrl: "", + url: id + }; + return JSON.stringify(result); + } else { + const result = { + parse: 1, + jx: "1", + url: id + }; + return JSON.stringify(result); + } + } catch (e) { + SpiderDebug.log(e); + } + return ""; +} + +async function search(key, quick) { + try { + // 苹果CMS V10模式检测 + if (host.includes('/vod') || host.includes('/provide/vod')) { + const url = `${host}?ac=videolist&wd=${encodeURIComponent(key)}&pg=1`; + const json = await request(url, getHeaders(url)); + const obj = JSON.parse(json); + const videos = []; + + if (obj.list && Array.isArray(obj.list)) { + for (const item of obj.list) { + videos.push({ + vod_id: item.vod_id, + vod_name: (item.vod_name || "").replace(/奇迹云/g, ''), + vod_pic: item.vod_pic || "", + vod_remarks: (item.vod_remarks || "").replace(/奇迹云/g, '') + }); + } + } + return JSON.stringify({ list: videos }); + } else { + // 原有AppYsV2模式 + const apiUrl = host; + const url = getSearchUrl(apiUrl, encodeURIComponent(key)); + const json = await request(url, getHeaders(url)); + const obj = JSON.parse(json); + let jsonArray = null; + const videos = []; + + if (obj.list instanceof Array) { + jsonArray = obj.list; + } else if (obj.data instanceof Object && obj.data.list instanceof Array) { + jsonArray = obj.data.list; + } else if (obj.data instanceof Array) { + jsonArray = obj.data; + } + + if (jsonArray !== null) { + for (const vObj of jsonArray) { + if (vObj.vod_id) { + const v = { + vod_id: vObj.vod_id, + vod_name: (vObj.vod_name || "").replace(/奇迹云/g, ''), + vod_pic: vObj.vod_pic, + vod_remarks: (vObj.vod_remarks || "").replace(/奇迹云/g, '') + }; + videos.push(v); + } else { + const v = { + vod_id: vObj.nextlink, + vod_name: (vObj.title || "").replace(/奇迹云/g, ''), + vod_pic: vObj.pic, + vod_remarks: (vObj.state || "").replace(/奇迹云/g, '') + }; + videos.push(v); + } + } + } + + const result = { list: videos }; + return JSON.stringify(result); + } + } catch (error) { + SpiderDebug.log(error); + } + return ""; +} + +// 辅助函数 +async function getFinalVideo(flag, parseUrls, url) { + let htmlPlayUrl = ""; + for (const parseUrl of parseUrls) { + if (parseUrl === "" || parseUrl === "null") { + continue; + } + const playUrl = parseUrl + url; + const content = await request(playUrl, null, 10000); + let tryJson = null; + try { + tryJson = jsonParse(url, content); + } catch (error) { } + + if (tryJson !== null && tryJson.hasOwnProperty("url") && tryJson.hasOwnProperty("header")) { + tryJson.header = JSON.stringify(tryJson.header); + return tryJson; + } + + if (content.includes(" { + if (purl && !parseUrls.includes(purl)) { + parseUrls.push(purl); + } + }); + } + if (from.player_info?.parse2) { + const parse2 = from.player_info.parse2.split(","); + parse2.forEach(purl => { + if (purl && !parseUrls.includes(purl)) { + parseUrls.push(purl); + } + }); + } + parseUrlMap.set(flag, parseUrls); + } catch (e) { + SpiderDebug.log(e); + } + } + } + } else if (urlPattern1.test(URL)) { + const data = object.list && object.list[0] ? object.list[0] : {}; + vod.vod_id = data.vod_id || vid; + vod.vod_name = data.vod_name || ""; + vod.vod_pic = data.vod_pic || ""; + vod.type_name = data.type_name || ""; + vod.vod_year = data.vod_year || ""; + vod.vod_area = data.vod_area || ""; + vod.vod_remarks = data.vod_remarks || ""; + vod.vod_actor = data.vod_actor || ""; + vod.vod_director = data.vod_director || ""; + vod.vod_content = data.vod_content || ""; + + vod.vod_play_from = data.vod_play_from || ""; + vod.vod_play_url = data.vod_play_url || ""; + } + + // 合并播放源 + if (playFlags.length > 0 && playUrls.length > 0) { + vod.vod_play_from = playFlags.join("$$$"); + vod.vod_play_url = playUrls.join("$$$"); + } +} + +function jsonParse(input, json) { + try { + let jsonPlayData = JSON.parse(json); + if (jsonPlayData.hasOwnProperty("data") && typeof jsonPlayData.data === "object" && !jsonPlayData.hasOwnProperty("url")) { + jsonPlayData = jsonPlayData.data; + } + + let url = jsonPlayData.url; + + if (url.startsWith("//")) { + url = "https:" + url; + } + if (!url.trim().startsWith("http")) { + return null; + } + if (url === input) { + if (isVip(url) || !isVideoFormat(url)) { + return null; + } + } + if (isBlackVodUrl(input, url)) { + return null; + } + + let headers = {}; + if (jsonPlayData.hasOwnProperty("header")) { + headers = jsonPlayData.header; + } else if (jsonPlayData.hasOwnProperty("Header")) { + headers = jsonPlayData.Header; + } else if (jsonPlayData.hasOwnProperty("headers")) { + headers = jsonPlayData.headers; + } else if (jsonPlayData.hasOwnProperty("Headers")) { + headers = jsonPlayData.Headers; + } + + let ua = ""; + if (jsonPlayData.hasOwnProperty("user-agent")) { + ua = jsonPlayData["user-agent"]; + } else if (jsonPlayData.hasOwnProperty("User-Agent")) { + ua = jsonPlayData["User-Agent"]; + } + if (ua.trim().length > 0) { + headers["User-Agent"] = " " + ua; + } + + let referer = ""; + if (jsonPlayData.hasOwnProperty("referer")) { + referer = jsonPlayData.referer; + } else if (jsonPlayData.hasOwnProperty("Referer")) { + referer = jsonPlayData.Referer; + } + if (referer.trim().length > 0) { + headers["Referer"] = " " + referer; + } + + headers = fixJsonVodHeader(headers, input, url); + + const taskResult = { + header: headers, + url: url, + parse: "0" + }; + + return taskResult; + } catch (error) { + SpiderDebug.log(error); + } + return null; +} + +function isVip(url) { + try { + let isVip = false; + const host = new URL(url).hostname; + const vipWebsites = ["iqiyi.com", "v.qq.com", "youku.com", "le.com", "tudou.com", "mgtv.com", "sohu.com", "acfun.cn", "bilibili.com", "baofeng.com", "pptv.com"]; + for (let b = 0; b < vipWebsites.length; b++) { + if (host.includes(vipWebsites[b])) { + if (vipWebsites[b] === "iqiyi.com") { + if (url.includes("iqiyi.com/a_") || url.includes("iqiyi.com/w_") || url.includes("iqiyi.com/v_")) { + isVip = true; + break; + } + } else { + isVip = true; + break; + } + } + } + return isVip; + } catch (e) { + SpiderDebug.log(e); + } + return false; +} + +function isBlackVodUrl(input, url) { + return url.includes("973973.xyz") || url.includes(".fit:"); +} + +function fixJsonVodHeader(headers, input, url) { + if (headers === null) { + headers = {}; + } + + if (input.includes("www.mgtv.com")) { + headers["Referer"] = " "; + headers["User-Agent"] = " Mozilla/5.0"; + } else if (url.includes("titan.mgtv")) { + headers["Referer"] = " "; + headers["User-Agent"] = " Mozilla/5.0"; + } else if (input.includes("bilibili")) { + headers["Referer"] = " https://www.bilibili.com/"; + 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"; + } + + return headers; +} + +const snifferMatch = /http((?!http).){26,}?\.(m3u8|mp4|flv|avi|mkv|rm|wmv|mpg)\?.*|http((?!http).){26,}\.(m3u8|mp4|flv|avi|mkv|rm|wmv|mpg)|http((?!http).){26,}\/m3u8\?pt=m3u8.*|http((?!http).)*?default\.ixigua\.com\/.*|http((?!http).)*?cdn-tos[^\?]*|http((?!http).)*?\/obj\/tos[^\?]*|http.*?\/player\/m3u8play\.php\?url=.*|http.*?\/player\/.*?[pP]lay\.php\?url=.*|http.*?\/playlist\/m3u8\/\?vid=.*|http.*?\.php\?type=m3u8&.*|http.*?\/download.aspx\?.*|http.*?\/api\/up_api.php\?.*|https.*?\.66yk\.cn.*|http((?!http).)*?netease\.com\/file\/.*/; + +function isVideoFormat(url) { + if (snifferMatch.test(url)) { + return !url.includes("cdn-tos") || !url.includes(".js"); + } + return false; +} + +function isVideo(url) { + return !url.includes(".mp4") && !url.includes(".m3u8"); +} + +function UA(url) { + if (url.includes(".vod")) { + return "okhttp/4.1.0"; + } + return "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36"; +} + +function getCateUrl(URL) { + if (URL.includes("api.php/app") || URL.includes("xgapp")) { + return URL + "nav?token="; + } else if (URL.includes(".vod")) { + return URL + "/types"; + } else { + return ""; + } +} + +function getPlayUrlPrefix(URL) { + if (URL.includes("api.php/app") || URL.includes("xgapp")) { + return URL + "video_detail?id="; + } else if (URL.includes(".vod")) { + return URL + "/detail?vod_id="; + } else { + return ""; + } +} + +function getRecommendUrl(URL) { + if (URL.includes("api.php/app") || URL.includes("xgapp")) { + return URL + "index_video?token="; + } else if (URL.includes(".vod")) { + return URL + "/vodPhbAll"; + } else { + return ""; + } +} + +function getFilterTypes(URL, typeExtend) { + let str = ""; + + if (typeExtend !== null) { + for (let key in typeExtend) { + if (key === "class" || key === "area" || key === "lang" || key === "year") { + try { + str += "筛选" + key + "+全部=+" + typeExtend[key].replace(/,/g, "+") + "\n"; + } catch (e) { } + } + } + } + + if (URL.includes(".vod")) { + str += "\n" + "排序+全部=+最新=time+最热=hits+评分=score"; + } else if (URL.includes("api.php/app") || URL.includes("xgapp")) { + // Do nothing, leave the string as it is. + } else { + str = "分类+全部=+电影=movie+连续剧=tvplay+综艺=tvshow+动漫=comic+4K=movie_4k+体育=tiyu\n筛选class+全部=+喜剧+爱情+恐怖+动作+科幻+剧情+战争+警匪+犯罪+动画+奇幻+武侠+冒险+枪战+恐怖+悬疑+惊悚+经典+青春+文艺+微电影+古装+历史+运动+农村+惊悚+惊悚+伦理+情色+福利+三级+儿童+网络电影\n筛选area+全部=+大陆+香港+台湾+美国+英国+法国+日本+韩国+德国+泰国+印度+西班牙+加拿大+其他\n筛选year+全部=+2025+2024+2023+2022+2021+2020+2019+2018+2017+2016+2015+2014+2013+2012+2011+2010+2009+2008+2007+2006+2005+2004+2003+2002+2001+2000"; + } + + return str; +} + +function getCateFilterUrlSuffix(URL) { + if (URL.includes("api.php/app") || URL.includes("xgapp")) { + return "&class=筛选class&area=筛选area&lang=筛选lang&year=筛选year&limit=18&pg=#PN#"; + } else if (URL.includes(".vod")) { + return "&class=筛选class&area=筛选area&lang=筛选lang&year=筛选year&by=排序&limit=18&page=#PN#"; + } else { + return "&page=#PN#&area=筛选area&type=筛选class&start=筛选year"; + } +} + +function getCateFilterUrlPrefix(URL) { + if (URL.includes("api.php/app") || URL.includes("xgapp")) { + return URL + "video?tid="; + } else if (URL.includes(".vod")) { + return URL + "?type="; + } else { + return URL + "?ac=list&class="; + } +} + +function isBan(key) { + return key === "伦理" || key === "情色" || key === "福利"; +} + +function getSearchUrl(URL, KEY) { + if (URL.includes(".vod")) { + return URL + "?wd=" + KEY + "&page="; + } else if (URL.includes("api.php/app") || URL.includes("xgapp")) { + return URL + "search?text=" + KEY + "&pg="; + } else if (urlPattern1.test(URL)) { + return URL + "?ac=list&zm=" + KEY + "&page="; + } + return ""; +} + +function findJsonArray(obj, match, result) { + Object.keys(obj).forEach((k) => { + try { + const o = obj[k]; + if (k === match && Array.isArray(o)) { + result.push(o); + } + if (typeof o === "object" && o !== null) { + if (Array.isArray(o)) { + o.forEach((item) => { + if (typeof item === "object" && item !== null) { + findJsonArray(item, match, result); + } + }); + } else { + findJsonArray(o, match, result); + } + } + } catch (e) { + SpiderDebug.log(e); + } + }); +} + +function jsonArr2Str(array) { + const strings = []; + for (let i = 0; i < array.length; i++) { + try { + strings.push(array[i]); + } catch (e) { + SpiderDebug.log(e); + } + } + return strings.join(","); +} + +function getHeaders(URL) { + const headers = {}; + headers["User-Agent"] = UA(URL); + return headers; +} + +function isJsonString(str) { + try { + JSON.parse(str); + } catch (e) { + return false; + } + return true; +} + +export function __jsEvalReturn() { + return { + init: init, + home: home, + homeVod: homeVod, + category: category, + detail: detail, + play: play, + search: search, + }; +} \ No newline at end of file diff --git a/Ye-11X115490_PsyDuck4k/lib/PsyDuck-Qiji.py b/Ye-11X115490_PsyDuck4k/lib/PsyDuck-Qiji.py new file mode 100644 index 00000000..2c68607c --- /dev/null +++ b/Ye-11X115490_PsyDuck4k/lib/PsyDuck-Qiji.py @@ -0,0 +1,391 @@ +# coding = utf-8 +# !/usr/bin/python +#熊修,可py内部填写,也可以和潇洒appget一样ext下面填写,外部填写会覆盖py内部填写 + +from Crypto.Cipher import AES +from base.spider import Spider +from Crypto.Util.Padding import pad,unpad +import re,sys,time,uuid,json,base64,urllib3 +urllib3.disable_warnings(urllib3.exceptions.InsecureRequestWarning) +sys.path.append('..') + +class Spider(Spider): + xurl,key,iv,init_data,search_verify,suggest_search,username,password,device_id,version,get_type,def_headers= '','','','','','','', '', '','', '0',{'User-Agent': 'okhttp/3.14.9'} + + def init(self, extend=''): + ext=json.loads(extend.strip()) + + api = str(ext.get('api', 'getappapi')) + if api == '2' or api == 'qiji': + self.get_type = 'qiji' + api_path = '/api.php/qijiappapi' + elif api == 'flutter': + self.get_type = 'flutter' + api_path = '/api.php/getappapi' + else: + self.get_type = 'get' + api_path = '/api.php/getappapi' + + host_source = '' + if 'host' in ext: + host_source = ext['host'] + elif 'url' in ext: + host_source = ext['url'] + elif 'site' in ext: + host_source = ext['site'] + + if not host_source: + print("错误: 需要提供host、url或site参数") + return + + domain_set = set() + + if not re.match(r'^https?://[a-zA-Z0-9-]+(\.[a-zA-Z0-9-]+)*(:\d+)?(/)?$', host_source): + try: + host_data = self.fetch(host_source, headers=self.get_headers(1), timeout=10, verify=False).text + domain_set.update([domain.strip() for domain in host_data.split('\n') if domain.strip()]) + except Exception as e: + print(f"获取站点文件失败: {e}") + return + else: + domain_set.add(host_source.rstrip('/')) + + ua = ext.get('ua') + if ua: + self.def_headers['User-Agent'] = ua + + token = ext.get('token') + if token: + self.def_headers['app-user-token'] = token + else: + self.username = ext.get('username') + self.password = ext.get('password') + + self.device_id = ext.get('deviceId') or ext.get('devideid') or '1234567890ABCDEF' + self.version = str(ext.get('version', '1.0.0')) + + self.key = ext.get('key') or ext.get('datakey') or ext.get('dataKey') + if not self.key: + print("错误: 需要提供加密密钥(key/datakey/dataKey)") + return + + self.iv = ext.get('iv') or ext.get('dataiv') or ext.get('dataIv') or self.key + + if self.device_id: + self.def_headers['app-user-device-id'] = self.device_id + + for i in domain_set: + try: + self.xurl = i + api_path + res = self.fetch(self.xurl + '.index/initV119', headers=self.get_headers(), timeout=(5, 5), verify=False).json() + encrypted_data = res['data'] + response = self.decrypt(encrypted_data) + init_data = json.loads(response) + except Exception as e: + print(f"连接失败: {e}") + continue + if init_data: + self.init_data = init_data + self.search_verify = init_data['config'].get('system_search_verify_status', False) + if 'xiaohys.com' in i: + self.suggest_search = '1' + print(f"初始化成功: {i}") + break + + def homeContent(self, filter): + kjson = self.init_data + result = {"class": [], "filters": {}} + for i in kjson['type_list']: + if not(i['type_name'] in {'全部', 'QQ', 'juo.one'} or '企鹅群' in i['type_name']): + result['class'].append({"type_id": i['type_id'], "type_name": i['type_name']}) + name_mapping = {'class': '类型', 'area': '地区', 'lang': '语言', 'year': '年份', 'sort': '排序'} + filter_items = [] + for filter_type in i.get('filter_type_list', []): + filter_name = filter_type.get('name') + values = filter_type.get('list', []) + if not values: continue + value_list = [{"n": value, "v": value} for value in values] + display_name = name_mapping.get(filter_name, filter_name) + key = 'by' if filter_name == 'sort' else filter_name + filter_items.append({ "key": key, "name": display_name, "value": value_list}) + type_id = i.get('type_id') + if filter_items: + result["filters"][str(type_id)] = filter_items + return result + + def homeVideoContent(self): + videos = [] + kjson = self.init_data + for i in kjson['type_list']: + videos.extend(self.arr2vods(i['recommend_list'])) + return {'list': videos} + + def categoryContent(self, cid, pg, filter, ext): + payload = { + 'area': ext.get('area','全部'), + 'year': ext.get('year','全部'), + 'type_id': cid, + 'page': str(pg), + 'sort': ext.get('sort','最新'), + 'lang': ext.get('lang','全部'), + 'class': ext.get('class','全部') + } + res = self.post(f'{self.xurl}.index/typeFilterVodList', headers=self.get_headers(), data=payload, verify=False).json() + encrypted_data = res['data'] + kjson = self.decrypt(encrypted_data) + kjson1 = json.loads(kjson) + videos = self.arr2vods(kjson1['recommend_list']) + return {'list': videos, 'page': pg, 'pagecount': 9999, 'limit': 90, 'total': 999999} + + def searchContent(self, key, quick, pg="1"): + videos = [] + if self.suggest_search == '1': + host = self.xurl.split('api.php')[0] + data = self.fetch(f'{host}index.php/ajax/suggest?mid=1&wd={key}').json() + for i in data['list']: + videos.append({ + "vod_id": i['id'], + "vod_name": i['name'], + "vod_pic": i.get('pic') + }) + else: + payload = {'keywords': key, 'type_id': "0", 'page': str(pg)} + if self.search_verify: + verifi = self.verification() + if verifi is None: + return {'list':[]} + payload['code'] = verifi['code'] + payload['key'] = verifi['uuid'] + res = self.post(f'{self.xurl}.index/searchList', data=payload, headers=self.get_headers(), verify=False).json() + if not res.get('data'): + return {'list':[] ,'msg': res.get('msg')} + encrypted_data = res['data'] + kjson = self.decrypt(encrypted_data) + kjson1 = json.loads(kjson) + videos.extend(self.arr2vods(kjson1['search_list'])) + return {'list': videos, 'page': pg} + + def detailContent(self, ids): + payload = {'vod_id': ids[0]} + if 'qijiappapi' in self.xurl: + api_endpoints = ['vodDetail2', 'vodDetail3'] + else: + api_endpoints = ['vodDetail'] + self.login() + response = {} + for endpoint in api_endpoints: + try: + response = self.post(f'{self.xurl}.index/{endpoint}', headers=self.get_headers(), data=payload, verify=False).json() + except Exception: + continue + if '到期' in response['msg'] or response['code'] == 0: + return None + break + if not response: return None + encrypted_data = response['data'] + kjson1 = self.decrypt(encrypted_data) + kjson = json.loads(kjson1) + videos, play_form, play_url = [], [], [] + lineid = 1 + name_count = {} + for line in kjson['vod_play_list']: + keywords = {'防走丢', '群', '防失群', '官网'} + player_show = line['player_info']['show'] + if any(keyword in player_show for keyword in keywords): + player_show = f'{lineid}线' + line['player_info']['show'] = player_show + count = name_count.get(player_show, 0) + 1 + name_count[player_show] = count + if count > 1: + line['player_info']['show'] = f"{player_show}{count}" + play_form.append(line['player_info']['show']) + parse = line['player_info']['parse'] + parse_type = line['player_info']['parse_type'] + player_parse_type = line['player_info']['player_parse_type'] + kurls = [] + for vod in line['urls']: + token = vod['token'] + kurls.append(f"{str(vod['name'])}${parse},{vod['url']},{token},{player_parse_type},{parse_type}") + play_url.append('#'.join(kurls)) + lineid += 1 + play_form = '$$$'.join(play_form) + play_url = '$$$'.join(play_url) + videos.append({ + "vod_id": ids[0], + "vod_name": kjson['vod']['vod_name'], + "vod_actor": kjson['vod']['vod_actor'].replace('演员', ''), + "vod_director": kjson['vod'].get('vod_director', '').replace('导演', ''), + "vod_content": kjson['vod']['vod_content'], + "vod_remarks": kjson['vod']['vod_remarks'], + "vod_year": kjson['vod']['vod_year'], + "vod_area": kjson['vod']['vod_area'], + "vod_play_from": play_form, + "vod_play_url": play_url + }) + return {'list': videos} + + def playerContent(self, flag, vid, vip_flags): + url = '' + uid, raw_url, token, player_parse_type, parse_type = vid.split(',', 4) + if parse_type == '0': + res = {"parse": 0, "url": raw_url, "header": {'User-Agent': 'Dalvik/2.1.0 (Linux; U; Android 14; 23113RK12C Build/SKQ1.231004.001)'}} + elif parse_type == '2': + res = {"parse": 1, "url": f'{uid}{raw_url}', "header": {'User-Agent': 'Dalvik/2.1.0 (Linux; U; Android 14; 23113RK12C Build/SKQ1.231004.001)'}} + elif player_parse_type == '2': + try: + response = self.fetch(f'{uid}{raw_url}', headers=self.get_headers(1), verify=False).json() + url = response['url'] + except Exception: + pass + res = {"parse": 0, "url": url, "header": {'User-Agent': 'Dalvik/2.1.0 (Linux; U; Android 14; 23113RK12C Build/SKQ1.231004.001)'}} + else: + id1 = self.encrypt(raw_url) + payload = { + 'parse_api': uid, + 'url': id1, + 'player_parse_type': player_parse_type, + 'token': token + } + try: + response = self.post(f"{self.xurl}.index/vodParse", headers=self.get_headers(), data=payload, verify=False).json() + encrypted_data = response['data'] + kjson = self.decrypt(encrypted_data) + kjson1 = json.loads(kjson)['json'] + kjson2 = json.loads(kjson1) + url = kjson2['url'] + except Exception: + pass + res = {"parse": 0, "playUrl": '', "url": url, "header": {'User-Agent': 'Dalvik/2.1.0 (Linux; U; Android 14; 23113RK12C Build/SKQ1.231004.001)'}} + return res + + def localProxy(self, params): + if params['type'] == "m3u8": + return self.proxyM3u8(params) + elif params['type'] == "media": + return self.proxyMedia(params) + elif params['type'] == "ts": + return self.proxyTs(params) + return None + + def get_headers(self,main=0): + get_type = self.get_type + if get_type == 'qiji': + headers = { + 'User-Agent': 'okhttp/3.10.0', + 'Connection': 'Keep-Alive', + 'Accept-Encoding': 'gzip' + } + elif get_type == 'flutter': + main_headers = { + 'User-Agent': 'Dart/3.5 (dart:io)', + 'Accept-Encoding': 'gzip' + } + if main == 1: return main_headers + headers = { + 'User-Agent': '', + 'Accept-Encoding': '', + 'app-version-code': self.version, + 'app-os': 'android', + 'app-ui-mode': 'light', + **main_headers + } + else: + timestamp = str(int(time.time())) + main_headers ={ + 'User-Agent': 'okhttp/3.14.9', + 'Accept-Encoding': 'gzip' + } + if main == 1: return main_headers + headers = { + 'User-Agent': '', + 'Connection': 'Keep-Alive', + 'Accept-Encoding': '', + 'app-version-code': self.version, + 'app-ui-mode': 'light', + 'app-user-device-id': self.device_id, + 'app-api-verify-time': timestamp, + 'app-api-verify-sign': self.encrypt(timestamp), + 'Content-Type': 'application/x-www-form-urlencoded; charset=UTF-8', + **main_headers + } + return {**headers, **self.def_headers} + + def login(self): + if self.username and self.password and self.device_id: + payload = { + 'password': self.password, + 'code': "", + 'device_id': self.device_id, + 'user_name': self.username, + 'invite_code': "", + 'is_emulator': "0" + } + response = self.post(f'{self.xurl}.index/appLogin', data=payload, headers=self.get_headers()).json() + data = self.decrypt(response['data']) + auth_token = json.loads(data)['user']['auth_token'] + self.def_headers['app-user-token'] = auth_token + + def arr2vods(self, arr): + videos = [] + if arr and isinstance(arr, list): + for i in arr: + videos.append({ + 'vod_id': i['vod_id'], + 'vod_name': i['vod_name'], + 'vod_pic': i.get('vod_pic'), + 'vod_remarks': i.get('vod_remarks') + }) + return videos + + def decrypt(self, encrypted_data_b64): + key_bytes = self.key.encode('utf-8') + iv_bytes = self.iv.encode('utf-8') + encrypted_data = base64.b64decode(encrypted_data_b64) + cipher = AES.new(key_bytes, AES.MODE_CBC, iv_bytes) + decrypted_padded = cipher.decrypt(encrypted_data) + decrypted = unpad(decrypted_padded, AES.block_size) + return decrypted.decode('utf-8') + + def encrypt(self, sencrypted_data): + key_bytes = self.key.encode('utf-8') + iv_bytes = self.iv.encode('utf-8') + data_bytes = sencrypted_data.encode('utf-8') + padded_data = pad(data_bytes, AES.block_size) + cipher = AES.new(key_bytes, AES.MODE_CBC, iv_bytes) + encrypted_bytes = cipher.encrypt(padded_data) + encrypted_data_b64 = base64.b64encode(encrypted_bytes).decode('utf-8') + return encrypted_data_b64 + + def ocr(self, base64img): + dat2 = self.post('https://api.nn.ci/ocr/b64/text', data=base64img, headers=self.get_headers(1), verify=False).text + if dat2: return dat2 + return None + + def verification(self): + random_uuid = str(uuid.uuid4()) + dat = self.fetch(f'{self.xurl}.verify/create?key={random_uuid}', headers=self.get_headers(), verify=False).content + base64_img = base64.b64encode(dat).decode('utf-8') + if not dat: + return None + code = self.ocr(base64_img) + if not code: + return None + code = self.replace_code(code) + if not (len(code) == 4 and code.isdigit()): + return None + return {'uuid': random_uuid, 'code': code} + + def replace_code(self,text): + replacements = {'y':'9','口':'0','q':'0','u':'0','o':'0','>':'1','d':'0','b':'8','已':'2','D':'0','五':'5'} + if len(text) == 3: + text = text.replace('566', '5066').replace('066', '1666') + return ''.join(replacements.get(c, c) for c in text) + + def getName(self): + return "新版APPget" + + def isVideoFormat(self, url): + pass + + def manualVideoCheck(self): + pass \ No newline at end of file diff --git a/Ye-11X115490_PsyDuck4k/lib/PsyDuck-wp.jar b/Ye-11X115490_PsyDuck4k/lib/PsyDuck-wp.jar new file mode 100644 index 00000000..b4a13574 Binary files /dev/null and b/Ye-11X115490_PsyDuck4k/lib/PsyDuck-wp.jar differ diff --git a/Ye-11X115490_PsyDuck4k/lib/drpy-core-lite.min.js b/Ye-11X115490_PsyDuck4k/lib/drpy-core-lite.min.js new file mode 100644 index 00000000..2aec8b04 --- /dev/null +++ b/Ye-11X115490_PsyDuck4k/lib/drpy-core-lite.min.js @@ -0,0 +1 @@ +var e={27:e=>{e.exports='(function(global,factory){typeof exports==="object"&&typeof module!=="undefined"?module.exports=factory():typeof define==="function"&&define.amd?define(factory):(global=typeof globalThis!=="undefined"?globalThis:global||self,global.JSON5=factory())})(this,function(){"use strict";function createCommonjsModule(fn,module){return module={exports:{}},fn(module,module.exports),module.exports}var _global=createCommonjsModule(function(module){var global=module.exports=typeof window!="undefined"&&window.Math==Math?window:typeof self!="undefined"&&self.Math==Math?self:Function("return this")();if(typeof __g=="number"){__g=global}});var _core=createCommonjsModule(function(module){var core=module.exports={version:"2.6.5"};if(typeof __e=="number"){__e=core}});var _core_1=_core.version;var _isObject=function(it){return typeof it==="object"?it!==null:typeof it==="function"};var _anObject=function(it){if(!_isObject(it)){throw TypeError(it+" is not an object!")}return it};var _fails=function(exec){try{return!!exec()}catch(e){return true}};var _descriptors=!_fails(function(){return Object.defineProperty({},"a",{get:function(){return 7}}).a!=7});var document=_global.document;var is=_isObject(document)&&_isObject(document.createElement);var _domCreate=function(it){return is?document.createElement(it):{}};var _ie8DomDefine=!_descriptors&&!_fails(function(){return Object.defineProperty(_domCreate("div"),"a",{get:function(){return 7}}).a!=7});var _toPrimitive=function(it,S){if(!_isObject(it)){return it}var fn,val;if(S&&typeof(fn=it.toString)=="function"&&!_isObject(val=fn.call(it))){return val}if(typeof(fn=it.valueOf)=="function"&&!_isObject(val=fn.call(it))){return val}if(!S&&typeof(fn=it.toString)=="function"&&!_isObject(val=fn.call(it))){return val}throw TypeError("Can\'t convert object to primitive value")};var dP=Object.defineProperty;var f=_descriptors?Object.defineProperty:function defineProperty(O,P,Attributes){_anObject(O);P=_toPrimitive(P,true);_anObject(Attributes);if(_ie8DomDefine){try{return dP(O,P,Attributes)}catch(e){}}if("get"in Attributes||"set"in Attributes){throw TypeError("Accessors not supported!")}if("value"in Attributes){O[P]=Attributes.value}return O};var _objectDp={f:f};var _propertyDesc=function(bitmap,value){return{enumerable:!(bitmap&1),configurable:!(bitmap&2),writable:!(bitmap&4),value:value}};var _hide=_descriptors?function(object,key,value){return _objectDp.f(object,key,_propertyDesc(1,value))}:function(object,key,value){object[key]=value;return object};var hasOwnProperty={}.hasOwnProperty;var _has=function(it,key){return hasOwnProperty.call(it,key)};var id=0;var px=Math.random();var _uid=function(key){return"Symbol(".concat(key===undefined?"":key,")_",(++id+px).toString(36))};var _library=false;var _shared=createCommonjsModule(function(module){var SHARED="__core-js_shared__";var store=_global[SHARED]||(_global[SHARED]={});(module.exports=function(key,value){return store[key]||(store[key]=value!==undefined?value:{})})("versions",[]).push({version:_core.version,mode:_library?"pure":"global",copyright:"© 2019 Denis Pushkarev (zloirock.ru)"})});var _functionToString=_shared("native-function-to-string",Function.toString);var _redefine=createCommonjsModule(function(module){var SRC=_uid("src");var TO_STRING="toString";var TPL=(""+_functionToString).split(TO_STRING);_core.inspectSource=function(it){return _functionToString.call(it)};(module.exports=function(O,key,val,safe){var isFunction=typeof val=="function";if(isFunction){_has(val,"name")||_hide(val,"name",key)}if(O[key]===val){return}if(isFunction){_has(val,SRC)||_hide(val,SRC,O[key]?""+O[key]:TPL.join(String(key)))}if(O===_global){O[key]=val}else if(!safe){delete O[key];_hide(O,key,val)}else if(O[key]){O[key]=val}else{_hide(O,key,val)}})(Function.prototype,TO_STRING,function toString(){return typeof this=="function"&&this[SRC]||_functionToString.call(this)})});var _aFunction=function(it){if(typeof it!="function"){throw TypeError(it+" is not a function!")}return it};var _ctx=function(fn,that,length){_aFunction(fn);if(that===undefined){return fn}switch(length){case 1:return function(a){return fn.call(that,a)};case 2:return function(a,b){return fn.call(that,a,b)};case 3:return function(a,b,c){return fn.call(that,a,b,c)}}return function(){return fn.apply(that,arguments)}};var PROTOTYPE="prototype";var $export=function(type,name,source){var IS_FORCED=type&$export.F;var IS_GLOBAL=type&$export.G;var IS_STATIC=type&$export.S;var IS_PROTO=type&$export.P;var IS_BIND=type&$export.B;var target=IS_GLOBAL?_global:IS_STATIC?_global[name]||(_global[name]={}):(_global[name]||{})[PROTOTYPE];var exports=IS_GLOBAL?_core:_core[name]||(_core[name]={});var expProto=exports[PROTOTYPE]||(exports[PROTOTYPE]={});var key,own,out,exp;if(IS_GLOBAL){source=name}for(key in source){own=!IS_FORCED&&target&&target[key]!==undefined;out=(own?target:source)[key];exp=IS_BIND&&own?_ctx(out,_global):IS_PROTO&&typeof out=="function"?_ctx(Function.call,out):out;if(target){_redefine(target,key,out,type&$export.U)}if(exports[key]!=out){_hide(exports,key,exp)}if(IS_PROTO&&expProto[key]!=out){expProto[key]=out}}};_global.core=_core;$export.F=1;$export.G=2;$export.S=4;$export.P=8;$export.B=16;$export.W=32;$export.U=64;$export.R=128;var _export=$export;var ceil=Math.ceil;var floor=Math.floor;var _toInteger=function(it){return isNaN(it=+it)?0:(it>0?floor:ceil)(it)};var _defined=function(it){if(it==undefined){throw TypeError("Can\'t call method on "+it)}return it};var _stringAt=function(TO_STRING){return function(that,pos){var s=String(_defined(that));var i=_toInteger(pos);var l=s.length;var a,b;if(i<0||i>=l){return TO_STRING?"":undefined}a=s.charCodeAt(i);return a<55296||a>56319||i+1===l||(b=s.charCodeAt(i+1))<56320||b>57343?TO_STRING?s.charAt(i):a:TO_STRING?s.slice(i,i+2):(a-55296<<10)+(b-56320)+65536}};var $at=_stringAt(false);_export(_export.P,"String",{codePointAt:function codePointAt(pos){return $at(this,pos)}});var codePointAt=_core.String.codePointAt;var max=Math.max;var min=Math.min;var _toAbsoluteIndex=function(index,length){index=_toInteger(index);return index<0?max(index+length,0):min(index,length)};var fromCharCode=String.fromCharCode;var $fromCodePoint=String.fromCodePoint;_export(_export.S+_export.F*(!!$fromCodePoint&&$fromCodePoint.length!=1),"String",{fromCodePoint:function fromCodePoint(x){var arguments$1=arguments;var res=[];var aLen=arguments.length;var i=0;var code;while(aLen>i){code=+arguments$1[i++];if(_toAbsoluteIndex(code,1114111)!==code){throw RangeError(code+" is not a valid code point")}res.push(code<65536?fromCharCode(code):fromCharCode(((code-=65536)>>10)+55296,code%1024+56320))}return res.join("")}});var fromCodePoint=_core.String.fromCodePoint;var Space_Separator=/[\\u1680\\u2000-\\u200A\\u202F\\u205F\\u3000]/;var ID_Start=/[\\xAA\\xB5\\xBA\\xC0-\\xD6\\xD8-\\xF6\\xF8-\\u02C1\\u02C6-\\u02D1\\u02E0-\\u02E4\\u02EC\\u02EE\\u0370-\\u0374\\u0376\\u0377\\u037A-\\u037D\\u037F\\u0386\\u0388-\\u038A\\u038C\\u038E-\\u03A1\\u03A3-\\u03F5\\u03F7-\\u0481\\u048A-\\u052F\\u0531-\\u0556\\u0559\\u0561-\\u0587\\u05D0-\\u05EA\\u05F0-\\u05F2\\u0620-\\u064A\\u066E\\u066F\\u0671-\\u06D3\\u06D5\\u06E5\\u06E6\\u06EE\\u06EF\\u06FA-\\u06FC\\u06FF\\u0710\\u0712-\\u072F\\u074D-\\u07A5\\u07B1\\u07CA-\\u07EA\\u07F4\\u07F5\\u07FA\\u0800-\\u0815\\u081A\\u0824\\u0828\\u0840-\\u0858\\u0860-\\u086A\\u08A0-\\u08B4\\u08B6-\\u08BD\\u0904-\\u0939\\u093D\\u0950\\u0958-\\u0961\\u0971-\\u0980\\u0985-\\u098C\\u098F\\u0990\\u0993-\\u09A8\\u09AA-\\u09B0\\u09B2\\u09B6-\\u09B9\\u09BD\\u09CE\\u09DC\\u09DD\\u09DF-\\u09E1\\u09F0\\u09F1\\u09FC\\u0A05-\\u0A0A\\u0A0F\\u0A10\\u0A13-\\u0A28\\u0A2A-\\u0A30\\u0A32\\u0A33\\u0A35\\u0A36\\u0A38\\u0A39\\u0A59-\\u0A5C\\u0A5E\\u0A72-\\u0A74\\u0A85-\\u0A8D\\u0A8F-\\u0A91\\u0A93-\\u0AA8\\u0AAA-\\u0AB0\\u0AB2\\u0AB3\\u0AB5-\\u0AB9\\u0ABD\\u0AD0\\u0AE0\\u0AE1\\u0AF9\\u0B05-\\u0B0C\\u0B0F\\u0B10\\u0B13-\\u0B28\\u0B2A-\\u0B30\\u0B32\\u0B33\\u0B35-\\u0B39\\u0B3D\\u0B5C\\u0B5D\\u0B5F-\\u0B61\\u0B71\\u0B83\\u0B85-\\u0B8A\\u0B8E-\\u0B90\\u0B92-\\u0B95\\u0B99\\u0B9A\\u0B9C\\u0B9E\\u0B9F\\u0BA3\\u0BA4\\u0BA8-\\u0BAA\\u0BAE-\\u0BB9\\u0BD0\\u0C05-\\u0C0C\\u0C0E-\\u0C10\\u0C12-\\u0C28\\u0C2A-\\u0C39\\u0C3D\\u0C58-\\u0C5A\\u0C60\\u0C61\\u0C80\\u0C85-\\u0C8C\\u0C8E-\\u0C90\\u0C92-\\u0CA8\\u0CAA-\\u0CB3\\u0CB5-\\u0CB9\\u0CBD\\u0CDE\\u0CE0\\u0CE1\\u0CF1\\u0CF2\\u0D05-\\u0D0C\\u0D0E-\\u0D10\\u0D12-\\u0D3A\\u0D3D\\u0D4E\\u0D54-\\u0D56\\u0D5F-\\u0D61\\u0D7A-\\u0D7F\\u0D85-\\u0D96\\u0D9A-\\u0DB1\\u0DB3-\\u0DBB\\u0DBD\\u0DC0-\\u0DC6\\u0E01-\\u0E30\\u0E32\\u0E33\\u0E40-\\u0E46\\u0E81\\u0E82\\u0E84\\u0E87\\u0E88\\u0E8A\\u0E8D\\u0E94-\\u0E97\\u0E99-\\u0E9F\\u0EA1-\\u0EA3\\u0EA5\\u0EA7\\u0EAA\\u0EAB\\u0EAD-\\u0EB0\\u0EB2\\u0EB3\\u0EBD\\u0EC0-\\u0EC4\\u0EC6\\u0EDC-\\u0EDF\\u0F00\\u0F40-\\u0F47\\u0F49-\\u0F6C\\u0F88-\\u0F8C\\u1000-\\u102A\\u103F\\u1050-\\u1055\\u105A-\\u105D\\u1061\\u1065\\u1066\\u106E-\\u1070\\u1075-\\u1081\\u108E\\u10A0-\\u10C5\\u10C7\\u10CD\\u10D0-\\u10FA\\u10FC-\\u1248\\u124A-\\u124D\\u1250-\\u1256\\u1258\\u125A-\\u125D\\u1260-\\u1288\\u128A-\\u128D\\u1290-\\u12B0\\u12B2-\\u12B5\\u12B8-\\u12BE\\u12C0\\u12C2-\\u12C5\\u12C8-\\u12D6\\u12D8-\\u1310\\u1312-\\u1315\\u1318-\\u135A\\u1380-\\u138F\\u13A0-\\u13F5\\u13F8-\\u13FD\\u1401-\\u166C\\u166F-\\u167F\\u1681-\\u169A\\u16A0-\\u16EA\\u16EE-\\u16F8\\u1700-\\u170C\\u170E-\\u1711\\u1720-\\u1731\\u1740-\\u1751\\u1760-\\u176C\\u176E-\\u1770\\u1780-\\u17B3\\u17D7\\u17DC\\u1820-\\u1877\\u1880-\\u1884\\u1887-\\u18A8\\u18AA\\u18B0-\\u18F5\\u1900-\\u191E\\u1950-\\u196D\\u1970-\\u1974\\u1980-\\u19AB\\u19B0-\\u19C9\\u1A00-\\u1A16\\u1A20-\\u1A54\\u1AA7\\u1B05-\\u1B33\\u1B45-\\u1B4B\\u1B83-\\u1BA0\\u1BAE\\u1BAF\\u1BBA-\\u1BE5\\u1C00-\\u1C23\\u1C4D-\\u1C4F\\u1C5A-\\u1C7D\\u1C80-\\u1C88\\u1CE9-\\u1CEC\\u1CEE-\\u1CF1\\u1CF5\\u1CF6\\u1D00-\\u1DBF\\u1E00-\\u1F15\\u1F18-\\u1F1D\\u1F20-\\u1F45\\u1F48-\\u1F4D\\u1F50-\\u1F57\\u1F59\\u1F5B\\u1F5D\\u1F5F-\\u1F7D\\u1F80-\\u1FB4\\u1FB6-\\u1FBC\\u1FBE\\u1FC2-\\u1FC4\\u1FC6-\\u1FCC\\u1FD0-\\u1FD3\\u1FD6-\\u1FDB\\u1FE0-\\u1FEC\\u1FF2-\\u1FF4\\u1FF6-\\u1FFC\\u2071\\u207F\\u2090-\\u209C\\u2102\\u2107\\u210A-\\u2113\\u2115\\u2119-\\u211D\\u2124\\u2126\\u2128\\u212A-\\u212D\\u212F-\\u2139\\u213C-\\u213F\\u2145-\\u2149\\u214E\\u2160-\\u2188\\u2C00-\\u2C2E\\u2C30-\\u2C5E\\u2C60-\\u2CE4\\u2CEB-\\u2CEE\\u2CF2\\u2CF3\\u2D00-\\u2D25\\u2D27\\u2D2D\\u2D30-\\u2D67\\u2D6F\\u2D80-\\u2D96\\u2DA0-\\u2DA6\\u2DA8-\\u2DAE\\u2DB0-\\u2DB6\\u2DB8-\\u2DBE\\u2DC0-\\u2DC6\\u2DC8-\\u2DCE\\u2DD0-\\u2DD6\\u2DD8-\\u2DDE\\u2E2F\\u3005-\\u3007\\u3021-\\u3029\\u3031-\\u3035\\u3038-\\u303C\\u3041-\\u3096\\u309D-\\u309F\\u30A1-\\u30FA\\u30FC-\\u30FF\\u3105-\\u312E\\u3131-\\u318E\\u31A0-\\u31BA\\u31F0-\\u31FF\\u3400-\\u4DB5\\u4E00-\\u9FEA\\uA000-\\uA48C\\uA4D0-\\uA4FD\\uA500-\\uA60C\\uA610-\\uA61F\\uA62A\\uA62B\\uA640-\\uA66E\\uA67F-\\uA69D\\uA6A0-\\uA6EF\\uA717-\\uA71F\\uA722-\\uA788\\uA78B-\\uA7AE\\uA7B0-\\uA7B7\\uA7F7-\\uA801\\uA803-\\uA805\\uA807-\\uA80A\\uA80C-\\uA822\\uA840-\\uA873\\uA882-\\uA8B3\\uA8F2-\\uA8F7\\uA8FB\\uA8FD\\uA90A-\\uA925\\uA930-\\uA946\\uA960-\\uA97C\\uA984-\\uA9B2\\uA9CF\\uA9E0-\\uA9E4\\uA9E6-\\uA9EF\\uA9FA-\\uA9FE\\uAA00-\\uAA28\\uAA40-\\uAA42\\uAA44-\\uAA4B\\uAA60-\\uAA76\\uAA7A\\uAA7E-\\uAAAF\\uAAB1\\uAAB5\\uAAB6\\uAAB9-\\uAABD\\uAAC0\\uAAC2\\uAADB-\\uAADD\\uAAE0-\\uAAEA\\uAAF2-\\uAAF4\\uAB01-\\uAB06\\uAB09-\\uAB0E\\uAB11-\\uAB16\\uAB20-\\uAB26\\uAB28-\\uAB2E\\uAB30-\\uAB5A\\uAB5C-\\uAB65\\uAB70-\\uABE2\\uAC00-\\uD7A3\\uD7B0-\\uD7C6\\uD7CB-\\uD7FB\\uF900-\\uFA6D\\uFA70-\\uFAD9\\uFB00-\\uFB06\\uFB13-\\uFB17\\uFB1D\\uFB1F-\\uFB28\\uFB2A-\\uFB36\\uFB38-\\uFB3C\\uFB3E\\uFB40\\uFB41\\uFB43\\uFB44\\uFB46-\\uFBB1\\uFBD3-\\uFD3D\\uFD50-\\uFD8F\\uFD92-\\uFDC7\\uFDF0-\\uFDFB\\uFE70-\\uFE74\\uFE76-\\uFEFC\\uFF21-\\uFF3A\\uFF41-\\uFF5A\\uFF66-\\uFFBE\\uFFC2-\\uFFC7\\uFFCA-\\uFFCF\\uFFD2-\\uFFD7\\uFFDA-\\uFFDC]|\\uD800[\\uDC00-\\uDC0B\\uDC0D-\\uDC26\\uDC28-\\uDC3A\\uDC3C\\uDC3D\\uDC3F-\\uDC4D\\uDC50-\\uDC5D\\uDC80-\\uDCFA\\uDD40-\\uDD74\\uDE80-\\uDE9C\\uDEA0-\\uDED0\\uDF00-\\uDF1F\\uDF2D-\\uDF4A\\uDF50-\\uDF75\\uDF80-\\uDF9D\\uDFA0-\\uDFC3\\uDFC8-\\uDFCF\\uDFD1-\\uDFD5]|\\uD801[\\uDC00-\\uDC9D\\uDCB0-\\uDCD3\\uDCD8-\\uDCFB\\uDD00-\\uDD27\\uDD30-\\uDD63\\uDE00-\\uDF36\\uDF40-\\uDF55\\uDF60-\\uDF67]|\\uD802[\\uDC00-\\uDC05\\uDC08\\uDC0A-\\uDC35\\uDC37\\uDC38\\uDC3C\\uDC3F-\\uDC55\\uDC60-\\uDC76\\uDC80-\\uDC9E\\uDCE0-\\uDCF2\\uDCF4\\uDCF5\\uDD00-\\uDD15\\uDD20-\\uDD39\\uDD80-\\uDDB7\\uDDBE\\uDDBF\\uDE00\\uDE10-\\uDE13\\uDE15-\\uDE17\\uDE19-\\uDE33\\uDE60-\\uDE7C\\uDE80-\\uDE9C\\uDEC0-\\uDEC7\\uDEC9-\\uDEE4\\uDF00-\\uDF35\\uDF40-\\uDF55\\uDF60-\\uDF72\\uDF80-\\uDF91]|\\uD803[\\uDC00-\\uDC48\\uDC80-\\uDCB2\\uDCC0-\\uDCF2]|\\uD804[\\uDC03-\\uDC37\\uDC83-\\uDCAF\\uDCD0-\\uDCE8\\uDD03-\\uDD26\\uDD50-\\uDD72\\uDD76\\uDD83-\\uDDB2\\uDDC1-\\uDDC4\\uDDDA\\uDDDC\\uDE00-\\uDE11\\uDE13-\\uDE2B\\uDE80-\\uDE86\\uDE88\\uDE8A-\\uDE8D\\uDE8F-\\uDE9D\\uDE9F-\\uDEA8\\uDEB0-\\uDEDE\\uDF05-\\uDF0C\\uDF0F\\uDF10\\uDF13-\\uDF28\\uDF2A-\\uDF30\\uDF32\\uDF33\\uDF35-\\uDF39\\uDF3D\\uDF50\\uDF5D-\\uDF61]|\\uD805[\\uDC00-\\uDC34\\uDC47-\\uDC4A\\uDC80-\\uDCAF\\uDCC4\\uDCC5\\uDCC7\\uDD80-\\uDDAE\\uDDD8-\\uDDDB\\uDE00-\\uDE2F\\uDE44\\uDE80-\\uDEAA\\uDF00-\\uDF19]|\\uD806[\\uDCA0-\\uDCDF\\uDCFF\\uDE00\\uDE0B-\\uDE32\\uDE3A\\uDE50\\uDE5C-\\uDE83\\uDE86-\\uDE89\\uDEC0-\\uDEF8]|\\uD807[\\uDC00-\\uDC08\\uDC0A-\\uDC2E\\uDC40\\uDC72-\\uDC8F\\uDD00-\\uDD06\\uDD08\\uDD09\\uDD0B-\\uDD30\\uDD46]|\\uD808[\\uDC00-\\uDF99]|\\uD809[\\uDC00-\\uDC6E\\uDC80-\\uDD43]|[\\uD80C\\uD81C-\\uD820\\uD840-\\uD868\\uD86A-\\uD86C\\uD86F-\\uD872\\uD874-\\uD879][\\uDC00-\\uDFFF]|\\uD80D[\\uDC00-\\uDC2E]|\\uD811[\\uDC00-\\uDE46]|\\uD81A[\\uDC00-\\uDE38\\uDE40-\\uDE5E\\uDED0-\\uDEED\\uDF00-\\uDF2F\\uDF40-\\uDF43\\uDF63-\\uDF77\\uDF7D-\\uDF8F]|\\uD81B[\\uDF00-\\uDF44\\uDF50\\uDF93-\\uDF9F\\uDFE0\\uDFE1]|\\uD821[\\uDC00-\\uDFEC]|\\uD822[\\uDC00-\\uDEF2]|\\uD82C[\\uDC00-\\uDD1E\\uDD70-\\uDEFB]|\\uD82F[\\uDC00-\\uDC6A\\uDC70-\\uDC7C\\uDC80-\\uDC88\\uDC90-\\uDC99]|\\uD835[\\uDC00-\\uDC54\\uDC56-\\uDC9C\\uDC9E\\uDC9F\\uDCA2\\uDCA5\\uDCA6\\uDCA9-\\uDCAC\\uDCAE-\\uDCB9\\uDCBB\\uDCBD-\\uDCC3\\uDCC5-\\uDD05\\uDD07-\\uDD0A\\uDD0D-\\uDD14\\uDD16-\\uDD1C\\uDD1E-\\uDD39\\uDD3B-\\uDD3E\\uDD40-\\uDD44\\uDD46\\uDD4A-\\uDD50\\uDD52-\\uDEA5\\uDEA8-\\uDEC0\\uDEC2-\\uDEDA\\uDEDC-\\uDEFA\\uDEFC-\\uDF14\\uDF16-\\uDF34\\uDF36-\\uDF4E\\uDF50-\\uDF6E\\uDF70-\\uDF88\\uDF8A-\\uDFA8\\uDFAA-\\uDFC2\\uDFC4-\\uDFCB]|\\uD83A[\\uDC00-\\uDCC4\\uDD00-\\uDD43]|\\uD83B[\\uDE00-\\uDE03\\uDE05-\\uDE1F\\uDE21\\uDE22\\uDE24\\uDE27\\uDE29-\\uDE32\\uDE34-\\uDE37\\uDE39\\uDE3B\\uDE42\\uDE47\\uDE49\\uDE4B\\uDE4D-\\uDE4F\\uDE51\\uDE52\\uDE54\\uDE57\\uDE59\\uDE5B\\uDE5D\\uDE5F\\uDE61\\uDE62\\uDE64\\uDE67-\\uDE6A\\uDE6C-\\uDE72\\uDE74-\\uDE77\\uDE79-\\uDE7C\\uDE7E\\uDE80-\\uDE89\\uDE8B-\\uDE9B\\uDEA1-\\uDEA3\\uDEA5-\\uDEA9\\uDEAB-\\uDEBB]|\\uD869[\\uDC00-\\uDED6\\uDF00-\\uDFFF]|\\uD86D[\\uDC00-\\uDF34\\uDF40-\\uDFFF]|\\uD86E[\\uDC00-\\uDC1D\\uDC20-\\uDFFF]|\\uD873[\\uDC00-\\uDEA1\\uDEB0-\\uDFFF]|\\uD87A[\\uDC00-\\uDFE0]|\\uD87E[\\uDC00-\\uDE1D]/;var ID_Continue=/[\\xAA\\xB5\\xBA\\xC0-\\xD6\\xD8-\\xF6\\xF8-\\u02C1\\u02C6-\\u02D1\\u02E0-\\u02E4\\u02EC\\u02EE\\u0300-\\u0374\\u0376\\u0377\\u037A-\\u037D\\u037F\\u0386\\u0388-\\u038A\\u038C\\u038E-\\u03A1\\u03A3-\\u03F5\\u03F7-\\u0481\\u0483-\\u0487\\u048A-\\u052F\\u0531-\\u0556\\u0559\\u0561-\\u0587\\u0591-\\u05BD\\u05BF\\u05C1\\u05C2\\u05C4\\u05C5\\u05C7\\u05D0-\\u05EA\\u05F0-\\u05F2\\u0610-\\u061A\\u0620-\\u0669\\u066E-\\u06D3\\u06D5-\\u06DC\\u06DF-\\u06E8\\u06EA-\\u06FC\\u06FF\\u0710-\\u074A\\u074D-\\u07B1\\u07C0-\\u07F5\\u07FA\\u0800-\\u082D\\u0840-\\u085B\\u0860-\\u086A\\u08A0-\\u08B4\\u08B6-\\u08BD\\u08D4-\\u08E1\\u08E3-\\u0963\\u0966-\\u096F\\u0971-\\u0983\\u0985-\\u098C\\u098F\\u0990\\u0993-\\u09A8\\u09AA-\\u09B0\\u09B2\\u09B6-\\u09B9\\u09BC-\\u09C4\\u09C7\\u09C8\\u09CB-\\u09CE\\u09D7\\u09DC\\u09DD\\u09DF-\\u09E3\\u09E6-\\u09F1\\u09FC\\u0A01-\\u0A03\\u0A05-\\u0A0A\\u0A0F\\u0A10\\u0A13-\\u0A28\\u0A2A-\\u0A30\\u0A32\\u0A33\\u0A35\\u0A36\\u0A38\\u0A39\\u0A3C\\u0A3E-\\u0A42\\u0A47\\u0A48\\u0A4B-\\u0A4D\\u0A51\\u0A59-\\u0A5C\\u0A5E\\u0A66-\\u0A75\\u0A81-\\u0A83\\u0A85-\\u0A8D\\u0A8F-\\u0A91\\u0A93-\\u0AA8\\u0AAA-\\u0AB0\\u0AB2\\u0AB3\\u0AB5-\\u0AB9\\u0ABC-\\u0AC5\\u0AC7-\\u0AC9\\u0ACB-\\u0ACD\\u0AD0\\u0AE0-\\u0AE3\\u0AE6-\\u0AEF\\u0AF9-\\u0AFF\\u0B01-\\u0B03\\u0B05-\\u0B0C\\u0B0F\\u0B10\\u0B13-\\u0B28\\u0B2A-\\u0B30\\u0B32\\u0B33\\u0B35-\\u0B39\\u0B3C-\\u0B44\\u0B47\\u0B48\\u0B4B-\\u0B4D\\u0B56\\u0B57\\u0B5C\\u0B5D\\u0B5F-\\u0B63\\u0B66-\\u0B6F\\u0B71\\u0B82\\u0B83\\u0B85-\\u0B8A\\u0B8E-\\u0B90\\u0B92-\\u0B95\\u0B99\\u0B9A\\u0B9C\\u0B9E\\u0B9F\\u0BA3\\u0BA4\\u0BA8-\\u0BAA\\u0BAE-\\u0BB9\\u0BBE-\\u0BC2\\u0BC6-\\u0BC8\\u0BCA-\\u0BCD\\u0BD0\\u0BD7\\u0BE6-\\u0BEF\\u0C00-\\u0C03\\u0C05-\\u0C0C\\u0C0E-\\u0C10\\u0C12-\\u0C28\\u0C2A-\\u0C39\\u0C3D-\\u0C44\\u0C46-\\u0C48\\u0C4A-\\u0C4D\\u0C55\\u0C56\\u0C58-\\u0C5A\\u0C60-\\u0C63\\u0C66-\\u0C6F\\u0C80-\\u0C83\\u0C85-\\u0C8C\\u0C8E-\\u0C90\\u0C92-\\u0CA8\\u0CAA-\\u0CB3\\u0CB5-\\u0CB9\\u0CBC-\\u0CC4\\u0CC6-\\u0CC8\\u0CCA-\\u0CCD\\u0CD5\\u0CD6\\u0CDE\\u0CE0-\\u0CE3\\u0CE6-\\u0CEF\\u0CF1\\u0CF2\\u0D00-\\u0D03\\u0D05-\\u0D0C\\u0D0E-\\u0D10\\u0D12-\\u0D44\\u0D46-\\u0D48\\u0D4A-\\u0D4E\\u0D54-\\u0D57\\u0D5F-\\u0D63\\u0D66-\\u0D6F\\u0D7A-\\u0D7F\\u0D82\\u0D83\\u0D85-\\u0D96\\u0D9A-\\u0DB1\\u0DB3-\\u0DBB\\u0DBD\\u0DC0-\\u0DC6\\u0DCA\\u0DCF-\\u0DD4\\u0DD6\\u0DD8-\\u0DDF\\u0DE6-\\u0DEF\\u0DF2\\u0DF3\\u0E01-\\u0E3A\\u0E40-\\u0E4E\\u0E50-\\u0E59\\u0E81\\u0E82\\u0E84\\u0E87\\u0E88\\u0E8A\\u0E8D\\u0E94-\\u0E97\\u0E99-\\u0E9F\\u0EA1-\\u0EA3\\u0EA5\\u0EA7\\u0EAA\\u0EAB\\u0EAD-\\u0EB9\\u0EBB-\\u0EBD\\u0EC0-\\u0EC4\\u0EC6\\u0EC8-\\u0ECD\\u0ED0-\\u0ED9\\u0EDC-\\u0EDF\\u0F00\\u0F18\\u0F19\\u0F20-\\u0F29\\u0F35\\u0F37\\u0F39\\u0F3E-\\u0F47\\u0F49-\\u0F6C\\u0F71-\\u0F84\\u0F86-\\u0F97\\u0F99-\\u0FBC\\u0FC6\\u1000-\\u1049\\u1050-\\u109D\\u10A0-\\u10C5\\u10C7\\u10CD\\u10D0-\\u10FA\\u10FC-\\u1248\\u124A-\\u124D\\u1250-\\u1256\\u1258\\u125A-\\u125D\\u1260-\\u1288\\u128A-\\u128D\\u1290-\\u12B0\\u12B2-\\u12B5\\u12B8-\\u12BE\\u12C0\\u12C2-\\u12C5\\u12C8-\\u12D6\\u12D8-\\u1310\\u1312-\\u1315\\u1318-\\u135A\\u135D-\\u135F\\u1380-\\u138F\\u13A0-\\u13F5\\u13F8-\\u13FD\\u1401-\\u166C\\u166F-\\u167F\\u1681-\\u169A\\u16A0-\\u16EA\\u16EE-\\u16F8\\u1700-\\u170C\\u170E-\\u1714\\u1720-\\u1734\\u1740-\\u1753\\u1760-\\u176C\\u176E-\\u1770\\u1772\\u1773\\u1780-\\u17D3\\u17D7\\u17DC\\u17DD\\u17E0-\\u17E9\\u180B-\\u180D\\u1810-\\u1819\\u1820-\\u1877\\u1880-\\u18AA\\u18B0-\\u18F5\\u1900-\\u191E\\u1920-\\u192B\\u1930-\\u193B\\u1946-\\u196D\\u1970-\\u1974\\u1980-\\u19AB\\u19B0-\\u19C9\\u19D0-\\u19D9\\u1A00-\\u1A1B\\u1A20-\\u1A5E\\u1A60-\\u1A7C\\u1A7F-\\u1A89\\u1A90-\\u1A99\\u1AA7\\u1AB0-\\u1ABD\\u1B00-\\u1B4B\\u1B50-\\u1B59\\u1B6B-\\u1B73\\u1B80-\\u1BF3\\u1C00-\\u1C37\\u1C40-\\u1C49\\u1C4D-\\u1C7D\\u1C80-\\u1C88\\u1CD0-\\u1CD2\\u1CD4-\\u1CF9\\u1D00-\\u1DF9\\u1DFB-\\u1F15\\u1F18-\\u1F1D\\u1F20-\\u1F45\\u1F48-\\u1F4D\\u1F50-\\u1F57\\u1F59\\u1F5B\\u1F5D\\u1F5F-\\u1F7D\\u1F80-\\u1FB4\\u1FB6-\\u1FBC\\u1FBE\\u1FC2-\\u1FC4\\u1FC6-\\u1FCC\\u1FD0-\\u1FD3\\u1FD6-\\u1FDB\\u1FE0-\\u1FEC\\u1FF2-\\u1FF4\\u1FF6-\\u1FFC\\u203F\\u2040\\u2054\\u2071\\u207F\\u2090-\\u209C\\u20D0-\\u20DC\\u20E1\\u20E5-\\u20F0\\u2102\\u2107\\u210A-\\u2113\\u2115\\u2119-\\u211D\\u2124\\u2126\\u2128\\u212A-\\u212D\\u212F-\\u2139\\u213C-\\u213F\\u2145-\\u2149\\u214E\\u2160-\\u2188\\u2C00-\\u2C2E\\u2C30-\\u2C5E\\u2C60-\\u2CE4\\u2CEB-\\u2CF3\\u2D00-\\u2D25\\u2D27\\u2D2D\\u2D30-\\u2D67\\u2D6F\\u2D7F-\\u2D96\\u2DA0-\\u2DA6\\u2DA8-\\u2DAE\\u2DB0-\\u2DB6\\u2DB8-\\u2DBE\\u2DC0-\\u2DC6\\u2DC8-\\u2DCE\\u2DD0-\\u2DD6\\u2DD8-\\u2DDE\\u2DE0-\\u2DFF\\u2E2F\\u3005-\\u3007\\u3021-\\u302F\\u3031-\\u3035\\u3038-\\u303C\\u3041-\\u3096\\u3099\\u309A\\u309D-\\u309F\\u30A1-\\u30FA\\u30FC-\\u30FF\\u3105-\\u312E\\u3131-\\u318E\\u31A0-\\u31BA\\u31F0-\\u31FF\\u3400-\\u4DB5\\u4E00-\\u9FEA\\uA000-\\uA48C\\uA4D0-\\uA4FD\\uA500-\\uA60C\\uA610-\\uA62B\\uA640-\\uA66F\\uA674-\\uA67D\\uA67F-\\uA6F1\\uA717-\\uA71F\\uA722-\\uA788\\uA78B-\\uA7AE\\uA7B0-\\uA7B7\\uA7F7-\\uA827\\uA840-\\uA873\\uA880-\\uA8C5\\uA8D0-\\uA8D9\\uA8E0-\\uA8F7\\uA8FB\\uA8FD\\uA900-\\uA92D\\uA930-\\uA953\\uA960-\\uA97C\\uA980-\\uA9C0\\uA9CF-\\uA9D9\\uA9E0-\\uA9FE\\uAA00-\\uAA36\\uAA40-\\uAA4D\\uAA50-\\uAA59\\uAA60-\\uAA76\\uAA7A-\\uAAC2\\uAADB-\\uAADD\\uAAE0-\\uAAEF\\uAAF2-\\uAAF6\\uAB01-\\uAB06\\uAB09-\\uAB0E\\uAB11-\\uAB16\\uAB20-\\uAB26\\uAB28-\\uAB2E\\uAB30-\\uAB5A\\uAB5C-\\uAB65\\uAB70-\\uABEA\\uABEC\\uABED\\uABF0-\\uABF9\\uAC00-\\uD7A3\\uD7B0-\\uD7C6\\uD7CB-\\uD7FB\\uF900-\\uFA6D\\uFA70-\\uFAD9\\uFB00-\\uFB06\\uFB13-\\uFB17\\uFB1D-\\uFB28\\uFB2A-\\uFB36\\uFB38-\\uFB3C\\uFB3E\\uFB40\\uFB41\\uFB43\\uFB44\\uFB46-\\uFBB1\\uFBD3-\\uFD3D\\uFD50-\\uFD8F\\uFD92-\\uFDC7\\uFDF0-\\uFDFB\\uFE00-\\uFE0F\\uFE20-\\uFE2F\\uFE33\\uFE34\\uFE4D-\\uFE4F\\uFE70-\\uFE74\\uFE76-\\uFEFC\\uFF10-\\uFF19\\uFF21-\\uFF3A\\uFF3F\\uFF41-\\uFF5A\\uFF66-\\uFFBE\\uFFC2-\\uFFC7\\uFFCA-\\uFFCF\\uFFD2-\\uFFD7\\uFFDA-\\uFFDC]|\\uD800[\\uDC00-\\uDC0B\\uDC0D-\\uDC26\\uDC28-\\uDC3A\\uDC3C\\uDC3D\\uDC3F-\\uDC4D\\uDC50-\\uDC5D\\uDC80-\\uDCFA\\uDD40-\\uDD74\\uDDFD\\uDE80-\\uDE9C\\uDEA0-\\uDED0\\uDEE0\\uDF00-\\uDF1F\\uDF2D-\\uDF4A\\uDF50-\\uDF7A\\uDF80-\\uDF9D\\uDFA0-\\uDFC3\\uDFC8-\\uDFCF\\uDFD1-\\uDFD5]|\\uD801[\\uDC00-\\uDC9D\\uDCA0-\\uDCA9\\uDCB0-\\uDCD3\\uDCD8-\\uDCFB\\uDD00-\\uDD27\\uDD30-\\uDD63\\uDE00-\\uDF36\\uDF40-\\uDF55\\uDF60-\\uDF67]|\\uD802[\\uDC00-\\uDC05\\uDC08\\uDC0A-\\uDC35\\uDC37\\uDC38\\uDC3C\\uDC3F-\\uDC55\\uDC60-\\uDC76\\uDC80-\\uDC9E\\uDCE0-\\uDCF2\\uDCF4\\uDCF5\\uDD00-\\uDD15\\uDD20-\\uDD39\\uDD80-\\uDDB7\\uDDBE\\uDDBF\\uDE00-\\uDE03\\uDE05\\uDE06\\uDE0C-\\uDE13\\uDE15-\\uDE17\\uDE19-\\uDE33\\uDE38-\\uDE3A\\uDE3F\\uDE60-\\uDE7C\\uDE80-\\uDE9C\\uDEC0-\\uDEC7\\uDEC9-\\uDEE6\\uDF00-\\uDF35\\uDF40-\\uDF55\\uDF60-\\uDF72\\uDF80-\\uDF91]|\\uD803[\\uDC00-\\uDC48\\uDC80-\\uDCB2\\uDCC0-\\uDCF2]|\\uD804[\\uDC00-\\uDC46\\uDC66-\\uDC6F\\uDC7F-\\uDCBA\\uDCD0-\\uDCE8\\uDCF0-\\uDCF9\\uDD00-\\uDD34\\uDD36-\\uDD3F\\uDD50-\\uDD73\\uDD76\\uDD80-\\uDDC4\\uDDCA-\\uDDCC\\uDDD0-\\uDDDA\\uDDDC\\uDE00-\\uDE11\\uDE13-\\uDE37\\uDE3E\\uDE80-\\uDE86\\uDE88\\uDE8A-\\uDE8D\\uDE8F-\\uDE9D\\uDE9F-\\uDEA8\\uDEB0-\\uDEEA\\uDEF0-\\uDEF9\\uDF00-\\uDF03\\uDF05-\\uDF0C\\uDF0F\\uDF10\\uDF13-\\uDF28\\uDF2A-\\uDF30\\uDF32\\uDF33\\uDF35-\\uDF39\\uDF3C-\\uDF44\\uDF47\\uDF48\\uDF4B-\\uDF4D\\uDF50\\uDF57\\uDF5D-\\uDF63\\uDF66-\\uDF6C\\uDF70-\\uDF74]|\\uD805[\\uDC00-\\uDC4A\\uDC50-\\uDC59\\uDC80-\\uDCC5\\uDCC7\\uDCD0-\\uDCD9\\uDD80-\\uDDB5\\uDDB8-\\uDDC0\\uDDD8-\\uDDDD\\uDE00-\\uDE40\\uDE44\\uDE50-\\uDE59\\uDE80-\\uDEB7\\uDEC0-\\uDEC9\\uDF00-\\uDF19\\uDF1D-\\uDF2B\\uDF30-\\uDF39]|\\uD806[\\uDCA0-\\uDCE9\\uDCFF\\uDE00-\\uDE3E\\uDE47\\uDE50-\\uDE83\\uDE86-\\uDE99\\uDEC0-\\uDEF8]|\\uD807[\\uDC00-\\uDC08\\uDC0A-\\uDC36\\uDC38-\\uDC40\\uDC50-\\uDC59\\uDC72-\\uDC8F\\uDC92-\\uDCA7\\uDCA9-\\uDCB6\\uDD00-\\uDD06\\uDD08\\uDD09\\uDD0B-\\uDD36\\uDD3A\\uDD3C\\uDD3D\\uDD3F-\\uDD47\\uDD50-\\uDD59]|\\uD808[\\uDC00-\\uDF99]|\\uD809[\\uDC00-\\uDC6E\\uDC80-\\uDD43]|[\\uD80C\\uD81C-\\uD820\\uD840-\\uD868\\uD86A-\\uD86C\\uD86F-\\uD872\\uD874-\\uD879][\\uDC00-\\uDFFF]|\\uD80D[\\uDC00-\\uDC2E]|\\uD811[\\uDC00-\\uDE46]|\\uD81A[\\uDC00-\\uDE38\\uDE40-\\uDE5E\\uDE60-\\uDE69\\uDED0-\\uDEED\\uDEF0-\\uDEF4\\uDF00-\\uDF36\\uDF40-\\uDF43\\uDF50-\\uDF59\\uDF63-\\uDF77\\uDF7D-\\uDF8F]|\\uD81B[\\uDF00-\\uDF44\\uDF50-\\uDF7E\\uDF8F-\\uDF9F\\uDFE0\\uDFE1]|\\uD821[\\uDC00-\\uDFEC]|\\uD822[\\uDC00-\\uDEF2]|\\uD82C[\\uDC00-\\uDD1E\\uDD70-\\uDEFB]|\\uD82F[\\uDC00-\\uDC6A\\uDC70-\\uDC7C\\uDC80-\\uDC88\\uDC90-\\uDC99\\uDC9D\\uDC9E]|\\uD834[\\uDD65-\\uDD69\\uDD6D-\\uDD72\\uDD7B-\\uDD82\\uDD85-\\uDD8B\\uDDAA-\\uDDAD\\uDE42-\\uDE44]|\\uD835[\\uDC00-\\uDC54\\uDC56-\\uDC9C\\uDC9E\\uDC9F\\uDCA2\\uDCA5\\uDCA6\\uDCA9-\\uDCAC\\uDCAE-\\uDCB9\\uDCBB\\uDCBD-\\uDCC3\\uDCC5-\\uDD05\\uDD07-\\uDD0A\\uDD0D-\\uDD14\\uDD16-\\uDD1C\\uDD1E-\\uDD39\\uDD3B-\\uDD3E\\uDD40-\\uDD44\\uDD46\\uDD4A-\\uDD50\\uDD52-\\uDEA5\\uDEA8-\\uDEC0\\uDEC2-\\uDEDA\\uDEDC-\\uDEFA\\uDEFC-\\uDF14\\uDF16-\\uDF34\\uDF36-\\uDF4E\\uDF50-\\uDF6E\\uDF70-\\uDF88\\uDF8A-\\uDFA8\\uDFAA-\\uDFC2\\uDFC4-\\uDFCB\\uDFCE-\\uDFFF]|\\uD836[\\uDE00-\\uDE36\\uDE3B-\\uDE6C\\uDE75\\uDE84\\uDE9B-\\uDE9F\\uDEA1-\\uDEAF]|\\uD838[\\uDC00-\\uDC06\\uDC08-\\uDC18\\uDC1B-\\uDC21\\uDC23\\uDC24\\uDC26-\\uDC2A]|\\uD83A[\\uDC00-\\uDCC4\\uDCD0-\\uDCD6\\uDD00-\\uDD4A\\uDD50-\\uDD59]|\\uD83B[\\uDE00-\\uDE03\\uDE05-\\uDE1F\\uDE21\\uDE22\\uDE24\\uDE27\\uDE29-\\uDE32\\uDE34-\\uDE37\\uDE39\\uDE3B\\uDE42\\uDE47\\uDE49\\uDE4B\\uDE4D-\\uDE4F\\uDE51\\uDE52\\uDE54\\uDE57\\uDE59\\uDE5B\\uDE5D\\uDE5F\\uDE61\\uDE62\\uDE64\\uDE67-\\uDE6A\\uDE6C-\\uDE72\\uDE74-\\uDE77\\uDE79-\\uDE7C\\uDE7E\\uDE80-\\uDE89\\uDE8B-\\uDE9B\\uDEA1-\\uDEA3\\uDEA5-\\uDEA9\\uDEAB-\\uDEBB]|\\uD869[\\uDC00-\\uDED6\\uDF00-\\uDFFF]|\\uD86D[\\uDC00-\\uDF34\\uDF40-\\uDFFF]|\\uD86E[\\uDC00-\\uDC1D\\uDC20-\\uDFFF]|\\uD873[\\uDC00-\\uDEA1\\uDEB0-\\uDFFF]|\\uD87A[\\uDC00-\\uDFE0]|\\uD87E[\\uDC00-\\uDE1D]|\\uDB40[\\uDD00-\\uDDEF]/;var unicode={Space_Separator:Space_Separator,ID_Start:ID_Start,ID_Continue:ID_Continue};var util={isSpaceSeparator:function isSpaceSeparator(c){return typeof c==="string"&&unicode.Space_Separator.test(c)},isIdStartChar:function isIdStartChar(c){return typeof c==="string"&&(c>="a"&&c<="z"||c>="A"&&c<="Z"||c==="$"||c==="_"||unicode.ID_Start.test(c))},isIdContinueChar:function isIdContinueChar(c){return typeof c==="string"&&(c>="a"&&c<="z"||c>="A"&&c<="Z"||c>="0"&&c<="9"||c==="$"||c==="_"||c==="‌"||c==="‍"||unicode.ID_Continue.test(c))},isDigit:function isDigit(c){return typeof c==="string"&&/[0-9]/.test(c)},isHexDigit:function isHexDigit(c){return typeof c==="string"&&/[0-9A-Fa-f]/.test(c)}};var source;var parseState;var stack;var pos;var line;var column;var token;var key;var root;var parse=function parse(text,reviver){source=String(text);parseState="start";stack=[];pos=0;line=1;column=0;token=undefined;key=undefined;root=undefined;do{token=lex();parseStates[parseState]()}while(token.type!=="eof");if(typeof reviver==="function"){return internalize({"":root},"",reviver)}return root};function internalize(holder,name,reviver){var value=holder[name];if(value!=null&&typeof value==="object"){if(Array.isArray(value)){for(var i=0;i0){var c=peek();if(!util.isHexDigit(c)){throw invalidChar(read())}buffer+=read()}return String.fromCodePoint(parseInt(buffer,16))}var parseStates={start:function start(){if(token.type==="eof"){throw invalidEOF()}push()},beforePropertyName:function beforePropertyName(){switch(token.type){case"identifier":case"string":key=token.value;parseState="afterPropertyName";return;case"punctuator":pop();return;case"eof":throw invalidEOF()}},afterPropertyName:function afterPropertyName(){if(token.type==="eof"){throw invalidEOF()}parseState="beforePropertyValue"},beforePropertyValue:function beforePropertyValue(){if(token.type==="eof"){throw invalidEOF()}push()},beforeArrayValue:function beforeArrayValue(){if(token.type==="eof"){throw invalidEOF()}if(token.type==="punctuator"&&token.value==="]"){pop();return}push()},afterPropertyValue:function afterPropertyValue(){if(token.type==="eof"){throw invalidEOF()}switch(token.value){case",":parseState="beforePropertyName";return;case"}":pop()}},afterArrayValue:function afterArrayValue(){if(token.type==="eof"){throw invalidEOF()}switch(token.value){case",":parseState="beforeArrayValue";return;case"]":pop()}},end:function end(){}};function push(){var value;switch(token.type){case"punctuator":switch(token.value){case"{":value={};break;case"[":value=[];break}break;case"null":case"boolean":case"numeric":case"string":value=token.value;break}if(root===undefined){root=value}else{var parent=stack[stack.length-1];if(Array.isArray(parent)){parent.push(value)}else{Object.defineProperty(parent,key,{value:value,writable:true,enumerable:true,configurable:true})}}if(value!==null&&typeof value==="object"){stack.push(value);if(Array.isArray(value)){parseState="beforeArrayValue"}else{parseState="beforePropertyName"}}else{var current=stack[stack.length-1];if(current==null){parseState="end"}else if(Array.isArray(current)){parseState="afterArrayValue"}else{parseState="afterPropertyValue"}}}function pop(){stack.pop();var current=stack[stack.length-1];if(current==null){parseState="end"}else if(Array.isArray(current)){parseState="afterArrayValue"}else{parseState="afterPropertyValue"}}function invalidChar(c){if(c===undefined){return syntaxError("JSON5: invalid end of input at "+line+":"+column)}return syntaxError("JSON5: invalid character \'"+formatChar(c)+"\' at "+line+":"+column)}function invalidEOF(){return syntaxError("JSON5: invalid end of input at "+line+":"+column)}function invalidIdentifier(){column-=5;return syntaxError("JSON5: invalid identifier character at "+line+":"+column)}function separatorChar(c){console.warn("JSON5: \'"+formatChar(c)+"\' in strings is not valid ECMAScript; consider escaping")}function formatChar(c){var replacements={"\'":"\\\\\'",\'"\':\'\\\\"\',"\\\\":"\\\\\\\\","\\b":"\\\\b","\\f":"\\\\f","\\n":"\\\\n","\\r":"\\\\r","\\t":"\\\\t","\\v":"\\\\v","\\0":"\\\\0","\\u2028":"\\\\u2028","\\u2029":"\\\\u2029"};if(replacements[c]){return replacements[c]}if(c<" "){var hexString=c.charCodeAt(0).toString(16);return"\\\\x"+("00"+hexString).substring(hexString.length)}return c}function syntaxError(message){var err=new SyntaxError(message);err.lineNumber=line;err.columnNumber=column;return err}var stringify=function stringify(value,replacer,space){var stack=[];var indent="";var propertyList;var replacerFunc;var gap="";var quote;if(replacer!=null&&typeof replacer==="object"&&!Array.isArray(replacer)){space=replacer.space;quote=replacer.quote;replacer=replacer.replacer}if(typeof replacer==="function"){replacerFunc=replacer}else if(Array.isArray(replacer)){propertyList=[];for(var i=0,list=replacer;i0){space=Math.min(10,Math.floor(space));gap=" ".substr(0,space)}}else if(typeof space==="string"){gap=space.substr(0,10)}return serializeProperty("",{"":value});function serializeProperty(key,holder){var value=holder[key];if(value!=null){if(typeof value.toJSON5==="function"){value=value.toJSON5(key)}else if(typeof value.toJSON==="function"){value=value.toJSON(key)}}if(replacerFunc){value=replacerFunc.call(holder,key,value)}if(value instanceof Number){value=Number(value)}else if(value instanceof String){value=String(value)}else if(value instanceof Boolean){value=value.valueOf()}switch(value){case null:return"null";case true:return"true";case false:return"false"}if(typeof value==="string"){return quoteString(value,false)}if(typeof value==="number"){return String(value)}if(typeof value==="object"){return Array.isArray(value)?serializeArray(value):serializeObject(value)}return undefined}function quoteString(value){var quotes={"\'":.1,\'"\':.2};var replacements={"\'":"\\\\\'",\'"\':\'\\\\"\',"\\\\":"\\\\\\\\","\\b":"\\\\b","\\f":"\\\\f","\\n":"\\\\n","\\r":"\\\\r","\\t":"\\\\t","\\v":"\\\\v","\\0":"\\\\0","\\u2028":"\\\\u2028","\\u2029":"\\\\u2029"};var product="";for(var i=0;i=0){throw TypeError("Converting circular structure to JSON5")}stack.push(value);var stepback=indent;indent=indent+gap;var keys=propertyList||Object.keys(value);var partial=[];for(var i=0,list=keys;i=0){throw TypeError("Converting circular structure to JSON5")}stack.push(value);var stepback=indent;indent=indent+gap;var partial=[];for(var i=0;i{e.exports='"use strict";(function(q){function y(){}function C(b){var d=b.charCodeAt(0)|0;if(55296<=d)if(56319>=d)if(b=b.charCodeAt(1)|0,56320<=b&&57343>=b){if(d=(d<<10)+b-56613888|0,65535>18,128|d>>12&63,128|d>>6&63,128|d&63)}else d=65533;else 57343>=d&&(d=65533);return 2047>=d?v(192|d>>6,128|d&63):v(224|d>>12,128|d>>6&63,128|d&63)}function z(){}function A(b,d){var g=void 0===b?"":(""+b).replace(D,C),c=g.length|0,a=0,k=0,f=d.length|0,h=b.length|0;f>4){case 0:case 1:case 2:case 3:case 4:case 5:case 6:case 7:k=k+1|0;case 8:case 9:case 10:case 11:break;case 12:case 13:if((a+1|0)>4){case 15:n=b[c=c+1|0]&255;if(2!==n>>6||247>6?r+4|0:24,h=h+256&768;case 13:case 12:n=b[c=c+1|0]&255,l<<=6,l|=(h&31)<<6|n&63,r=r+7|0,c>6&&l>>r&&1114112>l?(h=l,l=l-65536|0,0<=l&&(p=(l>>10)+55296|0,h=(l&1023)+56320|0,31>m?(e[m]=p,m=m+1|0,p=-1):(n=p,p=h,h=n))):(h>>=8,c=c-h-1|0,h=65533),l=r=0,f=c<=k?32:a-c|0;default:e[m]=h;continue;case 11:case 10:case 9:case 8:}e[m]=65533}g+=v(e[0],e[1],e[2],e[3],e[4],e[5],e[6],e[7],e[8],e[9],e[10],e[11],e[12],e[13],e[14],e[15],e[16],e[17],e[18],e[19],e[20],e[21],e[22],e[23],e[24],e[25],e[26],e[27],e[28],e[29],e[30],e[31]);32>m&&(g=g.slice(0,m-32|0));if(c>>31,p=-1,g.length=f)g[a]=f;else{if(2047>=f)g[a]=192|f>>6;else{a:{if(55296<=f)if(56319>=f){var h=b.charCodeAt(c=c+1|0)|0;if(56320<=h&&57343>=h){f=(f<<10)+h-56613888|0;if(65535>18;g[a=a+1|0]=128|f>>12&63;g[a=a+1|0]=128|f>>6&63;g[a=a+1|0]=128|f&63;continue}break a}f=65533}else 57343>=f&&(f=65533);!k&&c<<1>12;g[a=a+1|0]=128|f>>6&63}g[a=a+1|0]=128|f&63}}return t?g.subarray(0,a):g.slice(0,a)};B.encodeInto=A;if(!u)q.TextDecoder=y,q.TextEncoder=z;else if(!(q=u.prototype).encodeInto){var I=new u;q.encodeInto=function(b,d){var g=b.length|0,c=d.length|0;if(g>1){var a=I.encode(b);if((a.length|0){e.exports='(function(root,factory){if(typeof exports==="object"){module.exports=exports=factory()}else if(typeof define==="function"&&define.amd){define([],factory)}else{globalThis.CryptoJS=factory()}})(this,function(){var CryptoJS=CryptoJS||function(Math,undefined){var crypto;if(typeof window!=="undefined"&&window.crypto){crypto=window.crypto}if(typeof self!=="undefined"&&self.crypto){crypto=self.crypto}if(typeof globalThis!=="undefined"&&globalThis.crypto){crypto=globalThis.crypto}if(!crypto&&typeof window!=="undefined"&&window.msCrypto){crypto=window.msCrypto}if(!crypto&&typeof global!=="undefined"&&global.crypto){crypto=global.crypto}if(!crypto&&typeof require==="function"){try{crypto=require("crypto")}catch(err){}}var cryptoSecureRandomInt=function(){if(crypto){if(typeof crypto.getRandomValues==="function"){try{return crypto.getRandomValues(new Uint32Array(1))[0]}catch(err){}}if(typeof crypto.randomBytes==="function"){try{return crypto.randomBytes(4).readInt32LE()}catch(err){}}}throw new Error("Native crypto module could not be used to get secure random number.")};var create=Object.create||function(){function F(){}return function(obj){var subtype;F.prototype=obj;subtype=new F;F.prototype=null;return subtype}}();var C={};var C_lib=C.lib={};var Base=C_lib.Base=function(){return{extend:function(overrides){var subtype=create(this);if(overrides){subtype.mixIn(overrides)}if(!subtype.hasOwnProperty("init")||this.init===subtype.init){subtype.init=function(){subtype.$super.init.apply(this,arguments)}}subtype.init.prototype=subtype;subtype.$super=this;return subtype},create:function(){var instance=this.extend();instance.init.apply(instance,arguments);return instance},init:function(){},mixIn:function(properties){for(var propertyName in properties){if(properties.hasOwnProperty(propertyName)){this[propertyName]=properties[propertyName]}}if(properties.hasOwnProperty("toString")){this.toString=properties.toString}},clone:function(){return this.init.prototype.extend(this)}}}();var WordArray=C_lib.WordArray=Base.extend({init:function(words,sigBytes){words=this.words=words||[];if(sigBytes!=undefined){this.sigBytes=sigBytes}else{this.sigBytes=words.length*4}},toString:function(encoder){return(encoder||Hex).stringify(this)},concat:function(wordArray){var thisWords=this.words;var thatWords=wordArray.words;var thisSigBytes=this.sigBytes;var thatSigBytes=wordArray.sigBytes;this.clamp();if(thisSigBytes%4){for(var i=0;i>>2]>>>24-i%4*8&255;thisWords[thisSigBytes+i>>>2]|=thatByte<<24-(thisSigBytes+i)%4*8}}else{for(var j=0;j>>2]=thatWords[j>>>2]}}this.sigBytes+=thatSigBytes;return this},clamp:function(){var words=this.words;var sigBytes=this.sigBytes;words[sigBytes>>>2]&=4294967295<<32-sigBytes%4*8;words.length=Math.ceil(sigBytes/4)},clone:function(){var clone=Base.clone.call(this);clone.words=this.words.slice(0);return clone},random:function(nBytes){var words=[];for(var i=0;i>>2]>>>24-i%4*8&255;hexChars.push((bite>>>4).toString(16));hexChars.push((bite&15).toString(16))}return hexChars.join("")},parse:function(hexStr){var hexStrLength=hexStr.length;var words=[];for(var i=0;i>>3]|=parseInt(hexStr.substr(i,2),16)<<24-i%8*4}return new WordArray.init(words,hexStrLength/2)}};var Latin1=C_enc.Latin1={stringify:function(wordArray){var words=wordArray.words;var sigBytes=wordArray.sigBytes;var latin1Chars=[];for(var i=0;i>>2]>>>24-i%4*8&255;latin1Chars.push(String.fromCharCode(bite))}return latin1Chars.join("")},parse:function(latin1Str){var latin1StrLength=latin1Str.length;var words=[];for(var i=0;i>>2]|=(latin1Str.charCodeAt(i)&255)<<24-i%4*8}return new WordArray.init(words,latin1StrLength)}};var Utf8=C_enc.Utf8={stringify:function(wordArray){try{return decodeURIComponent(escape(Latin1.stringify(wordArray)))}catch(e){throw new Error("Malformed UTF-8 data")}},parse:function(utf8Str){return Latin1.parse(unescape(encodeURIComponent(utf8Str)))}};var BufferedBlockAlgorithm=C_lib.BufferedBlockAlgorithm=Base.extend({reset:function(){this._data=new WordArray.init;this._nDataBytes=0},_append:function(data){if(typeof data=="string"){data=Utf8.parse(data)}this._data.concat(data);this._nDataBytes+=data.sigBytes},_process:function(doFlush){var processedWords;var data=this._data;var dataWords=data.words;var dataSigBytes=data.sigBytes;var blockSize=this.blockSize;var blockSizeBytes=blockSize*4;var nBlocksReady=dataSigBytes/blockSizeBytes;if(doFlush){nBlocksReady=Math.ceil(nBlocksReady)}else{nBlocksReady=Math.max((nBlocksReady|0)-this._minBufferSize,0)}var nWordsReady=nBlocksReady*blockSize;var nBytesReady=Math.min(nWordsReady*4,dataSigBytes);if(nWordsReady){for(var offset=0;offset>>2]|=typedArray[i]<<24-i%4*8}superInit.call(this,words,typedArrayByteLength)}else{superInit.apply(this,arguments)}};subInit.prototype=WordArray})();(function(){var C=CryptoJS;var C_lib=C.lib;var WordArray=C_lib.WordArray;var C_enc=C.enc;var Utf16BE=C_enc.Utf16=C_enc.Utf16BE={stringify:function(wordArray){var words=wordArray.words;var sigBytes=wordArray.sigBytes;var utf16Chars=[];for(var i=0;i>>2]>>>16-i%4*8&65535;utf16Chars.push(String.fromCharCode(codePoint))}return utf16Chars.join("")},parse:function(utf16Str){var utf16StrLength=utf16Str.length;var words=[];for(var i=0;i>>1]|=utf16Str.charCodeAt(i)<<16-i%2*16}return WordArray.create(words,utf16StrLength*2)}};C_enc.Utf16LE={stringify:function(wordArray){var words=wordArray.words;var sigBytes=wordArray.sigBytes;var utf16Chars=[];for(var i=0;i>>2]>>>16-i%4*8&65535);utf16Chars.push(String.fromCharCode(codePoint))}return utf16Chars.join("")},parse:function(utf16Str){var utf16StrLength=utf16Str.length;var words=[];for(var i=0;i>>1]|=swapEndian(utf16Str.charCodeAt(i)<<16-i%2*16)}return WordArray.create(words,utf16StrLength*2)}};function swapEndian(word){return word<<8&4278255360|word>>>8&16711935}})();(function(){var C=CryptoJS;var C_lib=C.lib;var WordArray=C_lib.WordArray;var C_enc=C.enc;var Base64=C_enc.Base64={stringify:function(wordArray){var words=wordArray.words;var sigBytes=wordArray.sigBytes;var map=this._map;wordArray.clamp();var base64Chars=[];for(var i=0;i>>2]>>>24-i%4*8&255;var byte2=words[i+1>>>2]>>>24-(i+1)%4*8&255;var byte3=words[i+2>>>2]>>>24-(i+2)%4*8&255;var triplet=byte1<<16|byte2<<8|byte3;for(var j=0;j<4&&i+j*.75>>6*(3-j)&63))}}var paddingChar=map.charAt(64);if(paddingChar){while(base64Chars.length%4){base64Chars.push(paddingChar)}}return base64Chars.join("")},parse:function(base64Str){var base64StrLength=base64Str.length;var map=this._map;var reverseMap=this._reverseMap;if(!reverseMap){reverseMap=this._reverseMap=[];for(var j=0;j>>6-i%4*2;var bitsCombined=bits1|bits2;words[nBytes>>>2]|=bitsCombined<<24-nBytes%4*8;nBytes++}}return WordArray.create(words,nBytes)}})();(function(){var C=CryptoJS;var C_lib=C.lib;var WordArray=C_lib.WordArray;var C_enc=C.enc;var Base64url=C_enc.Base64url={stringify:function(wordArray,urlSafe=true){var words=wordArray.words;var sigBytes=wordArray.sigBytes;var map=urlSafe?this._safe_map:this._map;wordArray.clamp();var base64Chars=[];for(var i=0;i>>2]>>>24-i%4*8&255;var byte2=words[i+1>>>2]>>>24-(i+1)%4*8&255;var byte3=words[i+2>>>2]>>>24-(i+2)%4*8&255;var triplet=byte1<<16|byte2<<8|byte3;for(var j=0;j<4&&i+j*.75>>6*(3-j)&63))}}var paddingChar=map.charAt(64);if(paddingChar){while(base64Chars.length%4){base64Chars.push(paddingChar)}}return base64Chars.join("")},parse:function(base64Str,urlSafe=true){var base64StrLength=base64Str.length;var map=urlSafe?this._safe_map:this._map;var reverseMap=this._reverseMap;if(!reverseMap){reverseMap=this._reverseMap=[];for(var j=0;j>>6-i%4*2;var bitsCombined=bits1|bits2;words[nBytes>>>2]|=bitsCombined<<24-nBytes%4*8;nBytes++}}return WordArray.create(words,nBytes)}})();(function(Math){var C=CryptoJS;var C_lib=C.lib;var WordArray=C_lib.WordArray;var Hasher=C_lib.Hasher;var C_algo=C.algo;var T=[];(function(){for(var i=0;i<64;i++){T[i]=Math.abs(Math.sin(i+1))*4294967296|0}})();var MD5=C_algo.MD5=Hasher.extend({_doReset:function(){this._hash=new WordArray.init([1732584193,4023233417,2562383102,271733878])},_doProcessBlock:function(M,offset){for(var i=0;i<16;i++){var offset_i=offset+i;var M_offset_i=M[offset_i];M[offset_i]=(M_offset_i<<8|M_offset_i>>>24)&16711935|(M_offset_i<<24|M_offset_i>>>8)&4278255360}var H=this._hash.words;var M_offset_0=M[offset+0];var M_offset_1=M[offset+1];var M_offset_2=M[offset+2];var M_offset_3=M[offset+3];var M_offset_4=M[offset+4];var M_offset_5=M[offset+5];var M_offset_6=M[offset+6];var M_offset_7=M[offset+7];var M_offset_8=M[offset+8];var M_offset_9=M[offset+9];var M_offset_10=M[offset+10];var M_offset_11=M[offset+11];var M_offset_12=M[offset+12];var M_offset_13=M[offset+13];var M_offset_14=M[offset+14];var M_offset_15=M[offset+15];var a=H[0];var b=H[1];var c=H[2];var d=H[3];a=FF(a,b,c,d,M_offset_0,7,T[0]);d=FF(d,a,b,c,M_offset_1,12,T[1]);c=FF(c,d,a,b,M_offset_2,17,T[2]);b=FF(b,c,d,a,M_offset_3,22,T[3]);a=FF(a,b,c,d,M_offset_4,7,T[4]);d=FF(d,a,b,c,M_offset_5,12,T[5]);c=FF(c,d,a,b,M_offset_6,17,T[6]);b=FF(b,c,d,a,M_offset_7,22,T[7]);a=FF(a,b,c,d,M_offset_8,7,T[8]);d=FF(d,a,b,c,M_offset_9,12,T[9]);c=FF(c,d,a,b,M_offset_10,17,T[10]);b=FF(b,c,d,a,M_offset_11,22,T[11]);a=FF(a,b,c,d,M_offset_12,7,T[12]);d=FF(d,a,b,c,M_offset_13,12,T[13]);c=FF(c,d,a,b,M_offset_14,17,T[14]);b=FF(b,c,d,a,M_offset_15,22,T[15]);a=GG(a,b,c,d,M_offset_1,5,T[16]);d=GG(d,a,b,c,M_offset_6,9,T[17]);c=GG(c,d,a,b,M_offset_11,14,T[18]);b=GG(b,c,d,a,M_offset_0,20,T[19]);a=GG(a,b,c,d,M_offset_5,5,T[20]);d=GG(d,a,b,c,M_offset_10,9,T[21]);c=GG(c,d,a,b,M_offset_15,14,T[22]);b=GG(b,c,d,a,M_offset_4,20,T[23]);a=GG(a,b,c,d,M_offset_9,5,T[24]);d=GG(d,a,b,c,M_offset_14,9,T[25]);c=GG(c,d,a,b,M_offset_3,14,T[26]);b=GG(b,c,d,a,M_offset_8,20,T[27]);a=GG(a,b,c,d,M_offset_13,5,T[28]);d=GG(d,a,b,c,M_offset_2,9,T[29]);c=GG(c,d,a,b,M_offset_7,14,T[30]);b=GG(b,c,d,a,M_offset_12,20,T[31]);a=HH(a,b,c,d,M_offset_5,4,T[32]);d=HH(d,a,b,c,M_offset_8,11,T[33]);c=HH(c,d,a,b,M_offset_11,16,T[34]);b=HH(b,c,d,a,M_offset_14,23,T[35]);a=HH(a,b,c,d,M_offset_1,4,T[36]);d=HH(d,a,b,c,M_offset_4,11,T[37]);c=HH(c,d,a,b,M_offset_7,16,T[38]);b=HH(b,c,d,a,M_offset_10,23,T[39]);a=HH(a,b,c,d,M_offset_13,4,T[40]);d=HH(d,a,b,c,M_offset_0,11,T[41]);c=HH(c,d,a,b,M_offset_3,16,T[42]);b=HH(b,c,d,a,M_offset_6,23,T[43]);a=HH(a,b,c,d,M_offset_9,4,T[44]);d=HH(d,a,b,c,M_offset_12,11,T[45]);c=HH(c,d,a,b,M_offset_15,16,T[46]);b=HH(b,c,d,a,M_offset_2,23,T[47]);a=II(a,b,c,d,M_offset_0,6,T[48]);d=II(d,a,b,c,M_offset_7,10,T[49]);c=II(c,d,a,b,M_offset_14,15,T[50]);b=II(b,c,d,a,M_offset_5,21,T[51]);a=II(a,b,c,d,M_offset_12,6,T[52]);d=II(d,a,b,c,M_offset_3,10,T[53]);c=II(c,d,a,b,M_offset_10,15,T[54]);b=II(b,c,d,a,M_offset_1,21,T[55]);a=II(a,b,c,d,M_offset_8,6,T[56]);d=II(d,a,b,c,M_offset_15,10,T[57]);c=II(c,d,a,b,M_offset_6,15,T[58]);b=II(b,c,d,a,M_offset_13,21,T[59]);a=II(a,b,c,d,M_offset_4,6,T[60]);d=II(d,a,b,c,M_offset_11,10,T[61]);c=II(c,d,a,b,M_offset_2,15,T[62]);b=II(b,c,d,a,M_offset_9,21,T[63]);H[0]=H[0]+a|0;H[1]=H[1]+b|0;H[2]=H[2]+c|0;H[3]=H[3]+d|0},_doFinalize:function(){var data=this._data;var dataWords=data.words;var nBitsTotal=this._nDataBytes*8;var nBitsLeft=data.sigBytes*8;dataWords[nBitsLeft>>>5]|=128<<24-nBitsLeft%32;var nBitsTotalH=Math.floor(nBitsTotal/4294967296);var nBitsTotalL=nBitsTotal;dataWords[(nBitsLeft+64>>>9<<4)+15]=(nBitsTotalH<<8|nBitsTotalH>>>24)&16711935|(nBitsTotalH<<24|nBitsTotalH>>>8)&4278255360;dataWords[(nBitsLeft+64>>>9<<4)+14]=(nBitsTotalL<<8|nBitsTotalL>>>24)&16711935|(nBitsTotalL<<24|nBitsTotalL>>>8)&4278255360;data.sigBytes=(dataWords.length+1)*4;this._process();var hash=this._hash;var H=hash.words;for(var i=0;i<4;i++){var H_i=H[i];H[i]=(H_i<<8|H_i>>>24)&16711935|(H_i<<24|H_i>>>8)&4278255360}return hash},clone:function(){var clone=Hasher.clone.call(this);clone._hash=this._hash.clone();return clone}});function FF(a,b,c,d,x,s,t){var n=a+(b&c|~b&d)+x+t;return(n<>>32-s)+b}function GG(a,b,c,d,x,s,t){var n=a+(b&d|c&~d)+x+t;return(n<>>32-s)+b}function HH(a,b,c,d,x,s,t){var n=a+(b^c^d)+x+t;return(n<>>32-s)+b}function II(a,b,c,d,x,s,t){var n=a+(c^(b|~d))+x+t;return(n<>>32-s)+b}C.MD5=Hasher._createHelper(MD5);C.HmacMD5=Hasher._createHmacHelper(MD5)})(Math);(function(){var C=CryptoJS;var C_lib=C.lib;var WordArray=C_lib.WordArray;var Hasher=C_lib.Hasher;var C_algo=C.algo;var W=[];var SHA1=C_algo.SHA1=Hasher.extend({_doReset:function(){this._hash=new WordArray.init([1732584193,4023233417,2562383102,271733878,3285377520])},_doProcessBlock:function(M,offset){var H=this._hash.words;var a=H[0];var b=H[1];var c=H[2];var d=H[3];var e=H[4];for(var i=0;i<80;i++){if(i<16){W[i]=M[offset+i]|0}else{var n=W[i-3]^W[i-8]^W[i-14]^W[i-16];W[i]=n<<1|n>>>31}var t=(a<<5|a>>>27)+e+W[i];if(i<20){t+=(b&c|~b&d)+1518500249}else if(i<40){t+=(b^c^d)+1859775393}else if(i<60){t+=(b&c|b&d|c&d)-1894007588}else{t+=(b^c^d)-899497514}e=d;d=c;c=b<<30|b>>>2;b=a;a=t}H[0]=H[0]+a|0;H[1]=H[1]+b|0;H[2]=H[2]+c|0;H[3]=H[3]+d|0;H[4]=H[4]+e|0},_doFinalize:function(){var data=this._data;var dataWords=data.words;var nBitsTotal=this._nDataBytes*8;var nBitsLeft=data.sigBytes*8;dataWords[nBitsLeft>>>5]|=128<<24-nBitsLeft%32;dataWords[(nBitsLeft+64>>>9<<4)+14]=Math.floor(nBitsTotal/4294967296);dataWords[(nBitsLeft+64>>>9<<4)+15]=nBitsTotal;data.sigBytes=dataWords.length*4;this._process();return this._hash},clone:function(){var clone=Hasher.clone.call(this);clone._hash=this._hash.clone();return clone}});C.SHA1=Hasher._createHelper(SHA1);C.HmacSHA1=Hasher._createHmacHelper(SHA1)})();(function(Math){var C=CryptoJS;var C_lib=C.lib;var WordArray=C_lib.WordArray;var Hasher=C_lib.Hasher;var C_algo=C.algo;var H=[];var K=[];(function(){function isPrime(n){var sqrtN=Math.sqrt(n);for(var factor=2;factor<=sqrtN;factor++){if(!(n%factor)){return false}}return true}function getFractionalBits(n){return(n-(n|0))*4294967296|0}var n=2;var nPrime=0;while(nPrime<64){if(isPrime(n)){if(nPrime<8){H[nPrime]=getFractionalBits(Math.pow(n,1/2))}K[nPrime]=getFractionalBits(Math.pow(n,1/3));nPrime++}n++}})();var W=[];var SHA256=C_algo.SHA256=Hasher.extend({_doReset:function(){this._hash=new WordArray.init(H.slice(0))},_doProcessBlock:function(M,offset){var H=this._hash.words;var a=H[0];var b=H[1];var c=H[2];var d=H[3];var e=H[4];var f=H[5];var g=H[6];var h=H[7];for(var i=0;i<64;i++){if(i<16){W[i]=M[offset+i]|0}else{var gamma0x=W[i-15];var gamma0=(gamma0x<<25|gamma0x>>>7)^(gamma0x<<14|gamma0x>>>18)^gamma0x>>>3;var gamma1x=W[i-2];var gamma1=(gamma1x<<15|gamma1x>>>17)^(gamma1x<<13|gamma1x>>>19)^gamma1x>>>10;W[i]=gamma0+W[i-7]+gamma1+W[i-16]}var ch=e&f^~e&g;var maj=a&b^a&c^b&c;var sigma0=(a<<30|a>>>2)^(a<<19|a>>>13)^(a<<10|a>>>22);var sigma1=(e<<26|e>>>6)^(e<<21|e>>>11)^(e<<7|e>>>25);var t1=h+sigma1+ch+K[i]+W[i];var t2=sigma0+maj;h=g;g=f;f=e;e=d+t1|0;d=c;c=b;b=a;a=t1+t2|0}H[0]=H[0]+a|0;H[1]=H[1]+b|0;H[2]=H[2]+c|0;H[3]=H[3]+d|0;H[4]=H[4]+e|0;H[5]=H[5]+f|0;H[6]=H[6]+g|0;H[7]=H[7]+h|0},_doFinalize:function(){var data=this._data;var dataWords=data.words;var nBitsTotal=this._nDataBytes*8;var nBitsLeft=data.sigBytes*8;dataWords[nBitsLeft>>>5]|=128<<24-nBitsLeft%32;dataWords[(nBitsLeft+64>>>9<<4)+14]=Math.floor(nBitsTotal/4294967296);dataWords[(nBitsLeft+64>>>9<<4)+15]=nBitsTotal;data.sigBytes=dataWords.length*4;this._process();return this._hash},clone:function(){var clone=Hasher.clone.call(this);clone._hash=this._hash.clone();return clone}});C.SHA256=Hasher._createHelper(SHA256);C.HmacSHA256=Hasher._createHmacHelper(SHA256)})(Math);(function(){var C=CryptoJS;var C_lib=C.lib;var WordArray=C_lib.WordArray;var C_algo=C.algo;var SHA256=C_algo.SHA256;var SHA224=C_algo.SHA224=SHA256.extend({_doReset:function(){this._hash=new WordArray.init([3238371032,914150663,812702999,4144912697,4290775857,1750603025,1694076839,3204075428])},_doFinalize:function(){var hash=SHA256._doFinalize.call(this);hash.sigBytes-=4;return hash}});C.SHA224=SHA256._createHelper(SHA224);C.HmacSHA224=SHA256._createHmacHelper(SHA224)})();(function(){var C=CryptoJS;var C_lib=C.lib;var Hasher=C_lib.Hasher;var C_x64=C.x64;var X64Word=C_x64.Word;var X64WordArray=C_x64.WordArray;var C_algo=C.algo;function X64Word_create(){return X64Word.create.apply(X64Word,arguments)}var K=[X64Word_create(1116352408,3609767458),X64Word_create(1899447441,602891725),X64Word_create(3049323471,3964484399),X64Word_create(3921009573,2173295548),X64Word_create(961987163,4081628472),X64Word_create(1508970993,3053834265),X64Word_create(2453635748,2937671579),X64Word_create(2870763221,3664609560),X64Word_create(3624381080,2734883394),X64Word_create(310598401,1164996542),X64Word_create(607225278,1323610764),X64Word_create(1426881987,3590304994),X64Word_create(1925078388,4068182383),X64Word_create(2162078206,991336113),X64Word_create(2614888103,633803317),X64Word_create(3248222580,3479774868),X64Word_create(3835390401,2666613458),X64Word_create(4022224774,944711139),X64Word_create(264347078,2341262773),X64Word_create(604807628,2007800933),X64Word_create(770255983,1495990901),X64Word_create(1249150122,1856431235),X64Word_create(1555081692,3175218132),X64Word_create(1996064986,2198950837),X64Word_create(2554220882,3999719339),X64Word_create(2821834349,766784016),X64Word_create(2952996808,2566594879),X64Word_create(3210313671,3203337956),X64Word_create(3336571891,1034457026),X64Word_create(3584528711,2466948901),X64Word_create(113926993,3758326383),X64Word_create(338241895,168717936),X64Word_create(666307205,1188179964),X64Word_create(773529912,1546045734),X64Word_create(1294757372,1522805485),X64Word_create(1396182291,2643833823),X64Word_create(1695183700,2343527390),X64Word_create(1986661051,1014477480),X64Word_create(2177026350,1206759142),X64Word_create(2456956037,344077627),X64Word_create(2730485921,1290863460),X64Word_create(2820302411,3158454273),X64Word_create(3259730800,3505952657),X64Word_create(3345764771,106217008),X64Word_create(3516065817,3606008344),X64Word_create(3600352804,1432725776),X64Word_create(4094571909,1467031594),X64Word_create(275423344,851169720),X64Word_create(430227734,3100823752),X64Word_create(506948616,1363258195),X64Word_create(659060556,3750685593),X64Word_create(883997877,3785050280),X64Word_create(958139571,3318307427),X64Word_create(1322822218,3812723403),X64Word_create(1537002063,2003034995),X64Word_create(1747873779,3602036899),X64Word_create(1955562222,1575990012),X64Word_create(2024104815,1125592928),X64Word_create(2227730452,2716904306),X64Word_create(2361852424,442776044),X64Word_create(2428436474,593698344),X64Word_create(2756734187,3733110249),X64Word_create(3204031479,2999351573),X64Word_create(3329325298,3815920427),X64Word_create(3391569614,3928383900),X64Word_create(3515267271,566280711),X64Word_create(3940187606,3454069534),X64Word_create(4118630271,4000239992),X64Word_create(116418474,1914138554),X64Word_create(174292421,2731055270),X64Word_create(289380356,3203993006),X64Word_create(460393269,320620315),X64Word_create(685471733,587496836),X64Word_create(852142971,1086792851),X64Word_create(1017036298,365543100),X64Word_create(1126000580,2618297676),X64Word_create(1288033470,3409855158),X64Word_create(1501505948,4234509866),X64Word_create(1607167915,987167468),X64Word_create(1816402316,1246189591)];var W=[];(function(){for(var i=0;i<80;i++){W[i]=X64Word_create()}})();var SHA512=C_algo.SHA512=Hasher.extend({_doReset:function(){this._hash=new X64WordArray.init([new X64Word.init(1779033703,4089235720),new X64Word.init(3144134277,2227873595),new X64Word.init(1013904242,4271175723),new X64Word.init(2773480762,1595750129),new X64Word.init(1359893119,2917565137),new X64Word.init(2600822924,725511199),new X64Word.init(528734635,4215389547),new X64Word.init(1541459225,327033209)])},_doProcessBlock:function(M,offset){var H=this._hash.words;var H0=H[0];var H1=H[1];var H2=H[2];var H3=H[3];var H4=H[4];var H5=H[5];var H6=H[6];var H7=H[7];var H0h=H0.high;var H0l=H0.low;var H1h=H1.high;var H1l=H1.low;var H2h=H2.high;var H2l=H2.low;var H3h=H3.high;var H3l=H3.low;var H4h=H4.high;var H4l=H4.low;var H5h=H5.high;var H5l=H5.low;var H6h=H6.high;var H6l=H6.low;var H7h=H7.high;var H7l=H7.low;var ah=H0h;var al=H0l;var bh=H1h;var bl=H1l;var ch=H2h;var cl=H2l;var dh=H3h;var dl=H3l;var eh=H4h;var el=H4l;var fh=H5h;var fl=H5l;var gh=H6h;var gl=H6l;var hh=H7h;var hl=H7l;for(var i=0;i<80;i++){var Wil;var Wih;var Wi=W[i];if(i<16){Wih=Wi.high=M[offset+i*2]|0;Wil=Wi.low=M[offset+i*2+1]|0}else{var gamma0x=W[i-15];var gamma0xh=gamma0x.high;var gamma0xl=gamma0x.low;var gamma0h=(gamma0xh>>>1|gamma0xl<<31)^(gamma0xh>>>8|gamma0xl<<24)^gamma0xh>>>7;var gamma0l=(gamma0xl>>>1|gamma0xh<<31)^(gamma0xl>>>8|gamma0xh<<24)^(gamma0xl>>>7|gamma0xh<<25);var gamma1x=W[i-2];var gamma1xh=gamma1x.high;var gamma1xl=gamma1x.low;var gamma1h=(gamma1xh>>>19|gamma1xl<<13)^(gamma1xh<<3|gamma1xl>>>29)^gamma1xh>>>6;var gamma1l=(gamma1xl>>>19|gamma1xh<<13)^(gamma1xl<<3|gamma1xh>>>29)^(gamma1xl>>>6|gamma1xh<<26);var Wi7=W[i-7];var Wi7h=Wi7.high;var Wi7l=Wi7.low;var Wi16=W[i-16];var Wi16h=Wi16.high;var Wi16l=Wi16.low;Wil=gamma0l+Wi7l;Wih=gamma0h+Wi7h+(Wil>>>0>>0?1:0);Wil=Wil+gamma1l;Wih=Wih+gamma1h+(Wil>>>0>>0?1:0);Wil=Wil+Wi16l;Wih=Wih+Wi16h+(Wil>>>0>>0?1:0);Wi.high=Wih;Wi.low=Wil}var chh=eh&fh^~eh&gh;var chl=el&fl^~el≷var majh=ah&bh^ah&ch^bh&ch;var majl=al&bl^al&cl^bl&cl;var sigma0h=(ah>>>28|al<<4)^(ah<<30|al>>>2)^(ah<<25|al>>>7);var sigma0l=(al>>>28|ah<<4)^(al<<30|ah>>>2)^(al<<25|ah>>>7);var sigma1h=(eh>>>14|el<<18)^(eh>>>18|el<<14)^(eh<<23|el>>>9);var sigma1l=(el>>>14|eh<<18)^(el>>>18|eh<<14)^(el<<23|eh>>>9);var Ki=K[i];var Kih=Ki.high;var Kil=Ki.low;var t1l=hl+sigma1l;var t1h=hh+sigma1h+(t1l>>>0>>0?1:0);var t1l=t1l+chl;var t1h=t1h+chh+(t1l>>>0>>0?1:0);var t1l=t1l+Kil;var t1h=t1h+Kih+(t1l>>>0>>0?1:0);var t1l=t1l+Wil;var t1h=t1h+Wih+(t1l>>>0>>0?1:0);var t2l=sigma0l+majl;var t2h=sigma0h+majh+(t2l>>>0>>0?1:0);hh=gh;hl=gl;gh=fh;gl=fl;fh=eh;fl=el;el=dl+t1l|0;eh=dh+t1h+(el>>>0
>>0?1:0)|0;dh=ch;dl=cl;ch=bh;cl=bl;bh=ah;bl=al;al=t1l+t2l|0;ah=t1h+t2h+(al>>>0>>0?1:0)|0}H0l=H0.low=H0l+al;H0.high=H0h+ah+(H0l>>>0>>0?1:0);H1l=H1.low=H1l+bl;H1.high=H1h+bh+(H1l>>>0>>0?1:0);H2l=H2.low=H2l+cl;H2.high=H2h+ch+(H2l>>>0>>0?1:0);H3l=H3.low=H3l+dl;H3.high=H3h+dh+(H3l>>>0
>>0?1:0);H4l=H4.low=H4l+el;H4.high=H4h+eh+(H4l>>>0>>0?1:0);H5l=H5.low=H5l+fl;H5.high=H5h+fh+(H5l>>>0>>0?1:0);H6l=H6.low=H6l+gl;H6.high=H6h+gh+(H6l>>>0>>0?1:0);H7l=H7.low=H7l+hl;H7.high=H7h+hh+(H7l>>>0>>0?1:0)},_doFinalize:function(){var data=this._data;var dataWords=data.words;var nBitsTotal=this._nDataBytes*8;var nBitsLeft=data.sigBytes*8;dataWords[nBitsLeft>>>5]|=128<<24-nBitsLeft%32;dataWords[(nBitsLeft+128>>>10<<5)+30]=Math.floor(nBitsTotal/4294967296);dataWords[(nBitsLeft+128>>>10<<5)+31]=nBitsTotal;data.sigBytes=dataWords.length*4;this._process();var hash=this._hash.toX32();return hash},clone:function(){var clone=Hasher.clone.call(this);clone._hash=this._hash.clone();return clone},blockSize:1024/32});C.SHA512=Hasher._createHelper(SHA512);C.HmacSHA512=Hasher._createHmacHelper(SHA512)})();(function(){var C=CryptoJS;var C_x64=C.x64;var X64Word=C_x64.Word;var X64WordArray=C_x64.WordArray;var C_algo=C.algo;var SHA512=C_algo.SHA512;var SHA384=C_algo.SHA384=SHA512.extend({_doReset:function(){this._hash=new X64WordArray.init([new X64Word.init(3418070365,3238371032),new X64Word.init(1654270250,914150663),new X64Word.init(2438529370,812702999),new X64Word.init(355462360,4144912697),new X64Word.init(1731405415,4290775857),new X64Word.init(2394180231,1750603025),new X64Word.init(3675008525,1694076839),new X64Word.init(1203062813,3204075428)])},_doFinalize:function(){var hash=SHA512._doFinalize.call(this);hash.sigBytes-=16;return hash}});C.SHA384=SHA512._createHelper(SHA384);C.HmacSHA384=SHA512._createHmacHelper(SHA384)})();(function(Math){var C=CryptoJS;var C_lib=C.lib;var WordArray=C_lib.WordArray;var Hasher=C_lib.Hasher;var C_x64=C.x64;var X64Word=C_x64.Word;var C_algo=C.algo;var RHO_OFFSETS=[];var PI_INDEXES=[];var ROUND_CONSTANTS=[];(function(){var x=1,y=0;for(var t=0;t<24;t++){RHO_OFFSETS[x+5*y]=(t+1)*(t+2)/2%64;var newX=y%5;var newY=(2*x+3*y)%5;x=newX;y=newY}for(var x=0;x<5;x++){for(var y=0;y<5;y++){PI_INDEXES[x+5*y]=y+(2*x+3*y)%5*5}}var LFSR=1;for(var i=0;i<24;i++){var roundConstantMsw=0;var roundConstantLsw=0;for(var j=0;j<7;j++){if(LFSR&1){var bitPosition=(1<>>24)&16711935|(M2i<<24|M2i>>>8)&4278255360;M2i1=(M2i1<<8|M2i1>>>24)&16711935|(M2i1<<24|M2i1>>>8)&4278255360;var lane=state[i];lane.high^=M2i1;lane.low^=M2i}for(var round=0;round<24;round++){for(var x=0;x<5;x++){var tMsw=0,tLsw=0;for(var y=0;y<5;y++){var lane=state[x+5*y];tMsw^=lane.high;tLsw^=lane.low}var Tx=T[x];Tx.high=tMsw;Tx.low=tLsw}for(var x=0;x<5;x++){var Tx4=T[(x+4)%5];var Tx1=T[(x+1)%5];var Tx1Msw=Tx1.high;var Tx1Lsw=Tx1.low;var tMsw=Tx4.high^(Tx1Msw<<1|Tx1Lsw>>>31);var tLsw=Tx4.low^(Tx1Lsw<<1|Tx1Msw>>>31);for(var y=0;y<5;y++){var lane=state[x+5*y];lane.high^=tMsw;lane.low^=tLsw}}for(var laneIndex=1;laneIndex<25;laneIndex++){var tMsw;var tLsw;var lane=state[laneIndex];var laneMsw=lane.high;var laneLsw=lane.low;var rhoOffset=RHO_OFFSETS[laneIndex];if(rhoOffset<32){tMsw=laneMsw<>>32-rhoOffset;tLsw=laneLsw<>>32-rhoOffset}else{tMsw=laneLsw<>>64-rhoOffset;tLsw=laneMsw<>>64-rhoOffset}var TPiLane=T[PI_INDEXES[laneIndex]];TPiLane.high=tMsw;TPiLane.low=tLsw}var T0=T[0];var state0=state[0];T0.high=state0.high;T0.low=state0.low;for(var x=0;x<5;x++){for(var y=0;y<5;y++){var laneIndex=x+5*y;var lane=state[laneIndex];var TLane=T[laneIndex];var Tx1Lane=T[(x+1)%5+5*y];var Tx2Lane=T[(x+2)%5+5*y];lane.high=TLane.high^~Tx1Lane.high&Tx2Lane.high;lane.low=TLane.low^~Tx1Lane.low&Tx2Lane.low}}var lane=state[0];var roundConstant=ROUND_CONSTANTS[round];lane.high^=roundConstant.high;lane.low^=roundConstant.low}},_doFinalize:function(){var data=this._data;var dataWords=data.words;var nBitsTotal=this._nDataBytes*8;var nBitsLeft=data.sigBytes*8;var blockSizeBits=this.blockSize*32;dataWords[nBitsLeft>>>5]|=1<<24-nBitsLeft%32;dataWords[(Math.ceil((nBitsLeft+1)/blockSizeBits)*blockSizeBits>>>5)-1]|=128;data.sigBytes=dataWords.length*4;this._process();var state=this._state;var outputLengthBytes=this.cfg.outputLength/8;var outputLengthLanes=outputLengthBytes/8;var hashWords=[];for(var i=0;i>>24)&16711935|(laneMsw<<24|laneMsw>>>8)&4278255360;laneLsw=(laneLsw<<8|laneLsw>>>24)&16711935|(laneLsw<<24|laneLsw>>>8)&4278255360;hashWords.push(laneLsw);hashWords.push(laneMsw)}return new WordArray.init(hashWords,outputLengthBytes)},clone:function(){var clone=Hasher.clone.call(this);var state=clone._state=this._state.slice(0);for(var i=0;i<25;i++){state[i]=state[i].clone()}return clone}});C.SHA3=Hasher._createHelper(SHA3);C.HmacSHA3=Hasher._createHmacHelper(SHA3)})(Math);(function(Math){var C=CryptoJS;var C_lib=C.lib;var WordArray=C_lib.WordArray;var Hasher=C_lib.Hasher;var C_algo=C.algo;var _zl=WordArray.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]);var _zr=WordArray.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]);var _sl=WordArray.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]);var _sr=WordArray.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]);var _hl=WordArray.create([0,1518500249,1859775393,2400959708,2840853838]);var _hr=WordArray.create([1352829926,1548603684,1836072691,2053994217,0]);var RIPEMD160=C_algo.RIPEMD160=Hasher.extend({_doReset:function(){this._hash=WordArray.create([1732584193,4023233417,2562383102,271733878,3285377520])},_doProcessBlock:function(M,offset){for(var i=0;i<16;i++){var offset_i=offset+i;var M_offset_i=M[offset_i];M[offset_i]=(M_offset_i<<8|M_offset_i>>>24)&16711935|(M_offset_i<<24|M_offset_i>>>8)&4278255360}var H=this._hash.words;var hl=_hl.words;var hr=_hr.words;var zl=_zl.words;var zr=_zr.words;var sl=_sl.words;var sr=_sr.words;var al,bl,cl,dl,el;var ar,br,cr,dr,er;ar=al=H[0];br=bl=H[1];cr=cl=H[2];dr=dl=H[3];er=el=H[4];var t;for(var i=0;i<80;i+=1){t=al+M[offset+zl[i]]|0;if(i<16){t+=f1(bl,cl,dl)+hl[0]}else if(i<32){t+=f2(bl,cl,dl)+hl[1]}else if(i<48){t+=f3(bl,cl,dl)+hl[2]}else if(i<64){t+=f4(bl,cl,dl)+hl[3]}else{t+=f5(bl,cl,dl)+hl[4]}t=t|0;t=rotl(t,sl[i]);t=t+el|0;al=el;el=dl;dl=rotl(cl,10);cl=bl;bl=t;t=ar+M[offset+zr[i]]|0;if(i<16){t+=f5(br,cr,dr)+hr[0]}else if(i<32){t+=f4(br,cr,dr)+hr[1]}else if(i<48){t+=f3(br,cr,dr)+hr[2]}else if(i<64){t+=f2(br,cr,dr)+hr[3]}else{t+=f1(br,cr,dr)+hr[4]}t=t|0;t=rotl(t,sr[i]);t=t+er|0;ar=er;er=dr;dr=rotl(cr,10);cr=br;br=t}t=H[1]+cl+dr|0;H[1]=H[2]+dl+er|0;H[2]=H[3]+el+ar|0;H[3]=H[4]+al+br|0;H[4]=H[0]+bl+cr|0;H[0]=t},_doFinalize:function(){var data=this._data;var dataWords=data.words;var nBitsTotal=this._nDataBytes*8;var nBitsLeft=data.sigBytes*8;dataWords[nBitsLeft>>>5]|=128<<24-nBitsLeft%32;dataWords[(nBitsLeft+64>>>9<<4)+14]=(nBitsTotal<<8|nBitsTotal>>>24)&16711935|(nBitsTotal<<24|nBitsTotal>>>8)&4278255360;data.sigBytes=(dataWords.length+1)*4;this._process();var hash=this._hash;var H=hash.words;for(var i=0;i<5;i++){var H_i=H[i];H[i]=(H_i<<8|H_i>>>24)&16711935|(H_i<<24|H_i>>>8)&4278255360}return hash},clone:function(){var clone=Hasher.clone.call(this);clone._hash=this._hash.clone();return clone}});function f1(x,y,z){return x^y^z}function f2(x,y,z){return x&y|~x&z}function f3(x,y,z){return(x|~y)^z}function f4(x,y,z){return x&z|y&~z}function f5(x,y,z){return x^(y|~z)}function rotl(x,n){return x<>>32-n}C.RIPEMD160=Hasher._createHelper(RIPEMD160);C.HmacRIPEMD160=Hasher._createHmacHelper(RIPEMD160)})(Math);(function(){var C=CryptoJS;var C_lib=C.lib;var Base=C_lib.Base;var C_enc=C.enc;var Utf8=C_enc.Utf8;var C_algo=C.algo;var HMAC=C_algo.HMAC=Base.extend({init:function(hasher,key){hasher=this._hasher=new hasher.init;if(typeof key=="string"){key=Utf8.parse(key)}var hasherBlockSize=hasher.blockSize;var hasherBlockSizeBytes=hasherBlockSize*4;if(key.sigBytes>hasherBlockSizeBytes){key=hasher.finalize(key)}key.clamp();var oKey=this._oKey=key.clone();var iKey=this._iKey=key.clone();var oKeyWords=oKey.words;var iKeyWords=iKey.words;for(var i=0;i>>2]&255;data.sigBytes-=nPaddingBytes}};var BlockCipher=C_lib.BlockCipher=Cipher.extend({cfg:Cipher.cfg.extend({mode:CBC,padding:Pkcs7}),reset:function(){var modeCreator;Cipher.reset.call(this);var cfg=this.cfg;var iv=cfg.iv;var mode=cfg.mode;if(this._xformMode==this._ENC_XFORM_MODE){modeCreator=mode.createEncryptor}else{modeCreator=mode.createDecryptor;this._minBufferSize=1}if(this._mode&&this._mode.__creator==modeCreator){this._mode.init(this,iv&&iv.words)}else{this._mode=modeCreator.call(mode,this,iv&&iv.words);this._mode.__creator=modeCreator}},_doProcessBlock:function(words,offset){this._mode.processBlock(words,offset)},_doFinalize:function(){var finalProcessedBlocks;var padding=this.cfg.padding;if(this._xformMode==this._ENC_XFORM_MODE){padding.pad(this._data,this.blockSize);finalProcessedBlocks=this._process(!!"flush")}else{finalProcessedBlocks=this._process(!!"flush");padding.unpad(finalProcessedBlocks)}return finalProcessedBlocks},blockSize:128/32});var CipherParams=C_lib.CipherParams=Base.extend({init:function(cipherParams){this.mixIn(cipherParams)},toString:function(formatter){return(formatter||this.formatter).stringify(this)}});var C_format=C.format={};var OpenSSLFormatter=C_format.OpenSSL={stringify:function(cipherParams){var wordArray;var ciphertext=cipherParams.ciphertext;var salt=cipherParams.salt;if(salt){wordArray=WordArray.create([1398893684,1701076831]).concat(salt).concat(ciphertext)}else{wordArray=ciphertext}return wordArray.toString(Base64)},parse:function(openSSLStr){var salt;var ciphertext=Base64.parse(openSSLStr);var ciphertextWords=ciphertext.words;if(ciphertextWords[0]==1398893684&&ciphertextWords[1]==1701076831){salt=WordArray.create(ciphertextWords.slice(2,4));ciphertextWords.splice(0,4);ciphertext.sigBytes-=16}return CipherParams.create({ciphertext:ciphertext,salt:salt})}};var SerializableCipher=C_lib.SerializableCipher=Base.extend({cfg:Base.extend({format:OpenSSLFormatter}),encrypt:function(cipher,message,key,cfg){cfg=this.cfg.extend(cfg);var encryptor=cipher.createEncryptor(key,cfg);var ciphertext=encryptor.finalize(message);var cipherCfg=encryptor.cfg;return CipherParams.create({ciphertext:ciphertext,key:key,iv:cipherCfg.iv,algorithm:cipher,mode:cipherCfg.mode,padding:cipherCfg.padding,blockSize:cipher.blockSize,formatter:cfg.format})},decrypt:function(cipher,ciphertext,key,cfg){cfg=this.cfg.extend(cfg);ciphertext=this._parse(ciphertext,cfg.format);var plaintext=cipher.createDecryptor(key,cfg).finalize(ciphertext.ciphertext);return plaintext},_parse:function(ciphertext,format){if(typeof ciphertext=="string"){return format.parse(ciphertext,this)}else{return ciphertext}}});var C_kdf=C.kdf={};var OpenSSLKdf=C_kdf.OpenSSL={execute:function(password,keySize,ivSize,salt){if(!salt){salt=WordArray.random(64/8)}var key=EvpKDF.create({keySize:keySize+ivSize}).compute(password,salt);var iv=WordArray.create(key.words.slice(keySize),ivSize*4);key.sigBytes=keySize*4;return CipherParams.create({key:key,iv:iv,salt:salt})}};var PasswordBasedCipher=C_lib.PasswordBasedCipher=SerializableCipher.extend({cfg:SerializableCipher.cfg.extend({kdf:OpenSSLKdf}),encrypt:function(cipher,message,password,cfg){cfg=this.cfg.extend(cfg);var derivedParams=cfg.kdf.execute(password,cipher.keySize,cipher.ivSize);cfg.iv=derivedParams.iv;var ciphertext=SerializableCipher.encrypt.call(this,cipher,message,derivedParams.key,cfg);ciphertext.mixIn(derivedParams);return ciphertext},decrypt:function(cipher,ciphertext,password,cfg){cfg=this.cfg.extend(cfg);ciphertext=this._parse(ciphertext,cfg.format);var derivedParams=cfg.kdf.execute(password,cipher.keySize,cipher.ivSize,ciphertext.salt);cfg.iv=derivedParams.iv;var plaintext=SerializableCipher.decrypt.call(this,cipher,ciphertext,derivedParams.key,cfg);return plaintext}})}();CryptoJS.mode.CFB=function(){var CFB=CryptoJS.lib.BlockCipherMode.extend();CFB.Encryptor=CFB.extend({processBlock:function(words,offset){var cipher=this._cipher;var blockSize=cipher.blockSize;generateKeystreamAndEncrypt.call(this,words,offset,blockSize,cipher);this._prevBlock=words.slice(offset,offset+blockSize)}});CFB.Decryptor=CFB.extend({processBlock:function(words,offset){var cipher=this._cipher;var blockSize=cipher.blockSize;var thisBlock=words.slice(offset,offset+blockSize);generateKeystreamAndEncrypt.call(this,words,offset,blockSize,cipher);this._prevBlock=thisBlock}});function generateKeystreamAndEncrypt(words,offset,blockSize,cipher){var keystream;var iv=this._iv;if(iv){keystream=iv.slice(0);this._iv=undefined}else{keystream=this._prevBlock}cipher.encryptBlock(keystream,0);for(var i=0;i>24&255)===255){var b1=word>>16&255;var b2=word>>8&255;var b3=word&255;if(b1===255){b1=0;if(b2===255){b2=0;if(b3===255){b3=0}else{++b3}}else{++b2}}else{++b1}word=0;word+=b1<<16;word+=b2<<8;word+=b3}else{word+=1<<24}return word}function incCounter(counter){if((counter[0]=incWord(counter[0]))===0){counter[1]=incWord(counter[1])}return counter}var Encryptor=CTRGladman.Encryptor=CTRGladman.extend({processBlock:function(words,offset){var cipher=this._cipher;var blockSize=cipher.blockSize;var iv=this._iv;var counter=this._counter;if(iv){counter=this._counter=iv.slice(0);this._iv=undefined}incCounter(counter);var keystream=counter.slice(0);cipher.encryptBlock(keystream,0);for(var i=0;i>>2]|=nPaddingBytes<<24-lastBytePos%4*8;data.sigBytes+=nPaddingBytes},unpad:function(data){var nPaddingBytes=data.words[data.sigBytes-1>>>2]&255;data.sigBytes-=nPaddingBytes}};CryptoJS.pad.Iso10126={pad:function(data,blockSize){var blockSizeBytes=blockSize*4;var nPaddingBytes=blockSizeBytes-data.sigBytes%blockSizeBytes;data.concat(CryptoJS.lib.WordArray.random(nPaddingBytes-1)).concat(CryptoJS.lib.WordArray.create([nPaddingBytes<<24],1))},unpad:function(data){var nPaddingBytes=data.words[data.sigBytes-1>>>2]&255;data.sigBytes-=nPaddingBytes}};CryptoJS.pad.Iso97971={pad:function(data,blockSize){data.concat(CryptoJS.lib.WordArray.create([2147483648],1));CryptoJS.pad.ZeroPadding.pad(data,blockSize)},unpad:function(data){CryptoJS.pad.ZeroPadding.unpad(data);data.sigBytes--}};CryptoJS.pad.ZeroPadding={pad:function(data,blockSize){var blockSizeBytes=blockSize*4;data.clamp();data.sigBytes+=blockSizeBytes-(data.sigBytes%blockSizeBytes||blockSizeBytes)},unpad:function(data){var dataWords=data.words;var i=data.sigBytes-1;for(var i=data.sigBytes-1;i>=0;i--){if(dataWords[i>>>2]>>>24-i%4*8&255){data.sigBytes=i+1;break}}}};CryptoJS.pad.NoPadding={pad:function(){},unpad:function(){}};(function(undefined){var C=CryptoJS;var C_lib=C.lib;var CipherParams=C_lib.CipherParams;var C_enc=C.enc;var Hex=C_enc.Hex;var C_format=C.format;var HexFormatter=C_format.Hex={stringify:function(cipherParams){return cipherParams.ciphertext.toString(Hex)},parse:function(input){var ciphertext=Hex.parse(input);return CipherParams.create({ciphertext:ciphertext})}}})();(function(){var C=CryptoJS;var C_lib=C.lib;var BlockCipher=C_lib.BlockCipher;var C_algo=C.algo;var SBOX=[];var INV_SBOX=[];var SUB_MIX_0=[];var SUB_MIX_1=[];var SUB_MIX_2=[];var SUB_MIX_3=[];var INV_SUB_MIX_0=[];var INV_SUB_MIX_1=[];var INV_SUB_MIX_2=[];var INV_SUB_MIX_3=[];(function(){var d=[];for(var i=0;i<256;i++){if(i<128){d[i]=i<<1}else{d[i]=i<<1^283}}var x=0;var xi=0;for(var i=0;i<256;i++){var sx=xi^xi<<1^xi<<2^xi<<3^xi<<4;sx=sx>>>8^sx&255^99;SBOX[x]=sx;INV_SBOX[sx]=x;var x2=d[x];var x4=d[x2];var x8=d[x4];var t=d[sx]*257^sx*16843008;SUB_MIX_0[x]=t<<24|t>>>8;SUB_MIX_1[x]=t<<16|t>>>16;SUB_MIX_2[x]=t<<8|t>>>24;SUB_MIX_3[x]=t;var t=x8*16843009^x4*65537^x2*257^x*16843008;INV_SUB_MIX_0[sx]=t<<24|t>>>8;INV_SUB_MIX_1[sx]=t<<16|t>>>16;INV_SUB_MIX_2[sx]=t<<8|t>>>24;INV_SUB_MIX_3[sx]=t;if(!x){x=xi=1}else{x=x2^d[d[d[x8^x2]]];xi^=d[d[xi]]}}})();var RCON=[0,1,2,4,8,16,32,64,128,27,54];var AES=C_algo.AES=BlockCipher.extend({_doReset:function(){var t;if(this._nRounds&&this._keyPriorReset===this._key){return}var key=this._keyPriorReset=this._key;var keyWords=key.words;var keySize=key.sigBytes/4;var nRounds=this._nRounds=keySize+6;var ksRows=(nRounds+1)*4;var keySchedule=this._keySchedule=[];for(var ksRow=0;ksRow>>24;t=SBOX[t>>>24]<<24|SBOX[t>>>16&255]<<16|SBOX[t>>>8&255]<<8|SBOX[t&255];t^=RCON[ksRow/keySize|0]<<24}else if(keySize>6&&ksRow%keySize==4){t=SBOX[t>>>24]<<24|SBOX[t>>>16&255]<<16|SBOX[t>>>8&255]<<8|SBOX[t&255]}keySchedule[ksRow]=keySchedule[ksRow-keySize]^t}}var invKeySchedule=this._invKeySchedule=[];for(var invKsRow=0;invKsRow>>24]]^INV_SUB_MIX_1[SBOX[t>>>16&255]]^INV_SUB_MIX_2[SBOX[t>>>8&255]]^INV_SUB_MIX_3[SBOX[t&255]]}}},encryptBlock:function(M,offset){this._doCryptBlock(M,offset,this._keySchedule,SUB_MIX_0,SUB_MIX_1,SUB_MIX_2,SUB_MIX_3,SBOX)},decryptBlock:function(M,offset){var t=M[offset+1];M[offset+1]=M[offset+3];M[offset+3]=t;this._doCryptBlock(M,offset,this._invKeySchedule,INV_SUB_MIX_0,INV_SUB_MIX_1,INV_SUB_MIX_2,INV_SUB_MIX_3,INV_SBOX);var t=M[offset+1];M[offset+1]=M[offset+3];M[offset+3]=t},_doCryptBlock:function(M,offset,keySchedule,SUB_MIX_0,SUB_MIX_1,SUB_MIX_2,SUB_MIX_3,SBOX){var nRounds=this._nRounds;var s0=M[offset]^keySchedule[0];var s1=M[offset+1]^keySchedule[1];var s2=M[offset+2]^keySchedule[2];var s3=M[offset+3]^keySchedule[3];var ksRow=4;for(var round=1;round>>24]^SUB_MIX_1[s1>>>16&255]^SUB_MIX_2[s2>>>8&255]^SUB_MIX_3[s3&255]^keySchedule[ksRow++];var t1=SUB_MIX_0[s1>>>24]^SUB_MIX_1[s2>>>16&255]^SUB_MIX_2[s3>>>8&255]^SUB_MIX_3[s0&255]^keySchedule[ksRow++];var t2=SUB_MIX_0[s2>>>24]^SUB_MIX_1[s3>>>16&255]^SUB_MIX_2[s0>>>8&255]^SUB_MIX_3[s1&255]^keySchedule[ksRow++];var t3=SUB_MIX_0[s3>>>24]^SUB_MIX_1[s0>>>16&255]^SUB_MIX_2[s1>>>8&255]^SUB_MIX_3[s2&255]^keySchedule[ksRow++];s0=t0;s1=t1;s2=t2;s3=t3}var t0=(SBOX[s0>>>24]<<24|SBOX[s1>>>16&255]<<16|SBOX[s2>>>8&255]<<8|SBOX[s3&255])^keySchedule[ksRow++];var t1=(SBOX[s1>>>24]<<24|SBOX[s2>>>16&255]<<16|SBOX[s3>>>8&255]<<8|SBOX[s0&255])^keySchedule[ksRow++];var t2=(SBOX[s2>>>24]<<24|SBOX[s3>>>16&255]<<16|SBOX[s0>>>8&255]<<8|SBOX[s1&255])^keySchedule[ksRow++];var t3=(SBOX[s3>>>24]<<24|SBOX[s0>>>16&255]<<16|SBOX[s1>>>8&255]<<8|SBOX[s2&255])^keySchedule[ksRow++];M[offset]=t0;M[offset+1]=t1;M[offset+2]=t2;M[offset+3]=t3},keySize:256/32});C.AES=BlockCipher._createHelper(AES)})();(function(){var C=CryptoJS;var C_lib=C.lib;var WordArray=C_lib.WordArray;var BlockCipher=C_lib.BlockCipher;var C_algo=C.algo;var PC1=[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];var PC2=[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];var BIT_SHIFTS=[1,2,4,6,8,10,12,14,15,17,19,21,23,25,27,28];var SBOX_P=[{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}];var SBOX_MASK=[4160749569,528482304,33030144,2064384,129024,8064,504,2147483679];var DES=C_algo.DES=BlockCipher.extend({_doReset:function(){var key=this._key;var keyWords=key.words;var keyBits=[];for(var i=0;i<56;i++){var keyBitPos=PC1[i]-1;keyBits[i]=keyWords[keyBitPos>>>5]>>>31-keyBitPos%32&1}var subKeys=this._subKeys=[];for(var nSubKey=0;nSubKey<16;nSubKey++){var subKey=subKeys[nSubKey]=[];var bitShift=BIT_SHIFTS[nSubKey];for(var i=0;i<24;i++){subKey[i/6|0]|=keyBits[(PC2[i]-1+bitShift)%28]<<31-i%6;subKey[4+(i/6|0)]|=keyBits[28+(PC2[i+24]-1+bitShift)%28]<<31-i%6}subKey[0]=subKey[0]<<1|subKey[0]>>>31;for(var i=1;i<7;i++){subKey[i]=subKey[i]>>>(i-1)*4+3}subKey[7]=subKey[7]<<5|subKey[7]>>>27}var invSubKeys=this._invSubKeys=[];for(var i=0;i<16;i++){invSubKeys[i]=subKeys[15-i]}},encryptBlock:function(M,offset){this._doCryptBlock(M,offset,this._subKeys)},decryptBlock:function(M,offset){this._doCryptBlock(M,offset,this._invSubKeys)},_doCryptBlock:function(M,offset,subKeys){this._lBlock=M[offset];this._rBlock=M[offset+1];exchangeLR.call(this,4,252645135);exchangeLR.call(this,16,65535);exchangeRL.call(this,2,858993459);exchangeRL.call(this,8,16711935);exchangeLR.call(this,1,1431655765);for(var round=0;round<16;round++){var subKey=subKeys[round];var lBlock=this._lBlock;var rBlock=this._rBlock;var f=0;for(var i=0;i<8;i++){f|=SBOX_P[i][((rBlock^subKey[i])&SBOX_MASK[i])>>>0]}this._lBlock=rBlock;this._rBlock=lBlock^f}var t=this._lBlock;this._lBlock=this._rBlock;this._rBlock=t;exchangeLR.call(this,1,1431655765);exchangeRL.call(this,8,16711935);exchangeRL.call(this,2,858993459);exchangeLR.call(this,16,65535);exchangeLR.call(this,4,252645135);M[offset]=this._lBlock;M[offset+1]=this._rBlock},keySize:64/32,ivSize:64/32,blockSize:64/32});function exchangeLR(offset,mask){var t=(this._lBlock>>>offset^this._rBlock)&mask;this._rBlock^=t;this._lBlock^=t<>>offset^this._lBlock)&mask;this._lBlock^=t;this._rBlock^=t<192.")}var key1=keyWords.slice(0,2);var key2=keyWords.length<4?keyWords.slice(0,2):keyWords.slice(2,4);var key3=keyWords.length<6?keyWords.slice(0,2):keyWords.slice(4,6);this._des1=DES.createEncryptor(WordArray.create(key1));this._des2=DES.createEncryptor(WordArray.create(key2));this._des3=DES.createEncryptor(WordArray.create(key3))},encryptBlock:function(M,offset){this._des1.encryptBlock(M,offset);this._des2.decryptBlock(M,offset);this._des3.encryptBlock(M,offset)},decryptBlock:function(M,offset){this._des3.decryptBlock(M,offset);this._des2.encryptBlock(M,offset);this._des1.decryptBlock(M,offset)},keySize:192/32,ivSize:64/32,blockSize:64/32});C.TripleDES=BlockCipher._createHelper(TripleDES)})();(function(){var C=CryptoJS;var C_lib=C.lib;var StreamCipher=C_lib.StreamCipher;var C_algo=C.algo;var RC4=C_algo.RC4=StreamCipher.extend({_doReset:function(){var key=this._key;var keyWords=key.words;var keySigBytes=key.sigBytes;var S=this._S=[];for(var i=0;i<256;i++){S[i]=i}for(var i=0,j=0;i<256;i++){var keyByteIndex=i%keySigBytes;var keyByte=keyWords[keyByteIndex>>>2]>>>24-keyByteIndex%4*8&255;j=(j+S[i]+keyByte)%256;var t=S[i];S[i]=S[j];S[j]=t}this._i=this._j=0},_doProcessBlock:function(M,offset){M[offset]^=generateKeystreamWord.call(this)},keySize:256/32,ivSize:0});function generateKeystreamWord(){var S=this._S;var i=this._i;var j=this._j;var keystreamWord=0;for(var n=0;n<4;n++){i=(i+1)%256;j=(j+S[i])%256;var t=S[i];S[i]=S[j];S[j]=t;keystreamWord|=S[(S[i]+S[j])%256]<<24-n*8}this._i=i;this._j=j;return keystreamWord}C.RC4=StreamCipher._createHelper(RC4);var RC4Drop=C_algo.RC4Drop=RC4.extend({cfg:RC4.cfg.extend({drop:192}),_doReset:function(){RC4._doReset.call(this);for(var i=this.cfg.drop;i>0;i--){generateKeystreamWord.call(this)}}});C.RC4Drop=StreamCipher._createHelper(RC4Drop)})();(function(){var C=CryptoJS;var C_lib=C.lib;var StreamCipher=C_lib.StreamCipher;var C_algo=C.algo;var S=[];var C_=[];var G=[];var Rabbit=C_algo.Rabbit=StreamCipher.extend({_doReset:function(){var K=this._key.words;var iv=this.cfg.iv;for(var i=0;i<4;i++){K[i]=(K[i]<<8|K[i]>>>24)&16711935|(K[i]<<24|K[i]>>>8)&4278255360}var X=this._X=[K[0],K[3]<<16|K[2]>>>16,K[1],K[0]<<16|K[3]>>>16,K[2],K[1]<<16|K[0]>>>16,K[3],K[2]<<16|K[1]>>>16];var C=this._C=[K[2]<<16|K[2]>>>16,K[0]&4294901760|K[1]&65535,K[3]<<16|K[3]>>>16,K[1]&4294901760|K[2]&65535,K[0]<<16|K[0]>>>16,K[2]&4294901760|K[3]&65535,K[1]<<16|K[1]>>>16,K[3]&4294901760|K[0]&65535];this._b=0;for(var i=0;i<4;i++){nextState.call(this)}for(var i=0;i<8;i++){C[i]^=X[i+4&7]}if(iv){var IV=iv.words;var IV_0=IV[0];var IV_1=IV[1];var i0=(IV_0<<8|IV_0>>>24)&16711935|(IV_0<<24|IV_0>>>8)&4278255360;var i2=(IV_1<<8|IV_1>>>24)&16711935|(IV_1<<24|IV_1>>>8)&4278255360;var i1=i0>>>16|i2&4294901760;var i3=i2<<16|i0&65535;C[0]^=i0;C[1]^=i1;C[2]^=i2;C[3]^=i3;C[4]^=i0;C[5]^=i1;C[6]^=i2;C[7]^=i3;for(var i=0;i<4;i++){nextState.call(this)}}},_doProcessBlock:function(M,offset){var X=this._X;nextState.call(this);S[0]=X[0]^X[5]>>>16^X[3]<<16;S[1]=X[2]^X[7]>>>16^X[5]<<16;S[2]=X[4]^X[1]>>>16^X[7]<<16;S[3]=X[6]^X[3]>>>16^X[1]<<16;for(var i=0;i<4;i++){S[i]=(S[i]<<8|S[i]>>>24)&16711935|(S[i]<<24|S[i]>>>8)&4278255360;M[offset+i]^=S[i]}},blockSize:128/32,ivSize:64/32});function nextState(){var X=this._X;var C=this._C;for(var i=0;i<8;i++){C_[i]=C[i]}C[0]=C[0]+1295307597+this._b|0;C[1]=C[1]+3545052371+(C[0]>>>0>>0?1:0)|0;C[2]=C[2]+886263092+(C[1]>>>0>>0?1:0)|0;C[3]=C[3]+1295307597+(C[2]>>>0>>0?1:0)|0;C[4]=C[4]+3545052371+(C[3]>>>0>>0?1:0)|0;C[5]=C[5]+886263092+(C[4]>>>0>>0?1:0)|0;C[6]=C[6]+1295307597+(C[5]>>>0>>0?1:0)|0;C[7]=C[7]+3545052371+(C[6]>>>0>>0?1:0)|0;this._b=C[7]>>>0>>0?1:0;for(var i=0;i<8;i++){var gx=X[i]+C[i];var ga=gx&65535;var gb=gx>>>16;var gh=((ga*ga>>>17)+ga*gb>>>15)+gb*gb;var gl=((gx&4294901760)*gx|0)+((gx&65535)*gx|0);G[i]=gh^gl}X[0]=G[0]+(G[7]<<16|G[7]>>>16)+(G[6]<<16|G[6]>>>16)|0;X[1]=G[1]+(G[0]<<8|G[0]>>>24)+G[7]|0;X[2]=G[2]+(G[1]<<16|G[1]>>>16)+(G[0]<<16|G[0]>>>16)|0;X[3]=G[3]+(G[2]<<8|G[2]>>>24)+G[1]|0;X[4]=G[4]+(G[3]<<16|G[3]>>>16)+(G[2]<<16|G[2]>>>16)|0;X[5]=G[5]+(G[4]<<8|G[4]>>>24)+G[3]|0;X[6]=G[6]+(G[5]<<16|G[5]>>>16)+(G[4]<<16|G[4]>>>16)|0;X[7]=G[7]+(G[6]<<8|G[6]>>>24)+G[5]|0}C.Rabbit=StreamCipher._createHelper(Rabbit)})();(function(){var C=CryptoJS;var C_lib=C.lib;var StreamCipher=C_lib.StreamCipher;var C_algo=C.algo;var S=[];var C_=[];var G=[];var RabbitLegacy=C_algo.RabbitLegacy=StreamCipher.extend({_doReset:function(){var K=this._key.words;var iv=this.cfg.iv;var X=this._X=[K[0],K[3]<<16|K[2]>>>16,K[1],K[0]<<16|K[3]>>>16,K[2],K[1]<<16|K[0]>>>16,K[3],K[2]<<16|K[1]>>>16];var C=this._C=[K[2]<<16|K[2]>>>16,K[0]&4294901760|K[1]&65535,K[3]<<16|K[3]>>>16,K[1]&4294901760|K[2]&65535,K[0]<<16|K[0]>>>16,K[2]&4294901760|K[3]&65535,K[1]<<16|K[1]>>>16,K[3]&4294901760|K[0]&65535];this._b=0;for(var i=0;i<4;i++){nextState.call(this)}for(var i=0;i<8;i++){C[i]^=X[i+4&7]}if(iv){var IV=iv.words;var IV_0=IV[0];var IV_1=IV[1];var i0=(IV_0<<8|IV_0>>>24)&16711935|(IV_0<<24|IV_0>>>8)&4278255360;var i2=(IV_1<<8|IV_1>>>24)&16711935|(IV_1<<24|IV_1>>>8)&4278255360;var i1=i0>>>16|i2&4294901760;var i3=i2<<16|i0&65535;C[0]^=i0;C[1]^=i1;C[2]^=i2;C[3]^=i3;C[4]^=i0;C[5]^=i1;C[6]^=i2;C[7]^=i3;for(var i=0;i<4;i++){nextState.call(this)}}},_doProcessBlock:function(M,offset){var X=this._X;nextState.call(this);S[0]=X[0]^X[5]>>>16^X[3]<<16;S[1]=X[2]^X[7]>>>16^X[5]<<16;S[2]=X[4]^X[1]>>>16^X[7]<<16;S[3]=X[6]^X[3]>>>16^X[1]<<16;for(var i=0;i<4;i++){S[i]=(S[i]<<8|S[i]>>>24)&16711935|(S[i]<<24|S[i]>>>8)&4278255360;M[offset+i]^=S[i]}},blockSize:128/32,ivSize:64/32});function nextState(){var X=this._X;var C=this._C;for(var i=0;i<8;i++){C_[i]=C[i]}C[0]=C[0]+1295307597+this._b|0;C[1]=C[1]+3545052371+(C[0]>>>0>>0?1:0)|0;C[2]=C[2]+886263092+(C[1]>>>0>>0?1:0)|0;C[3]=C[3]+1295307597+(C[2]>>>0>>0?1:0)|0;C[4]=C[4]+3545052371+(C[3]>>>0>>0?1:0)|0;C[5]=C[5]+886263092+(C[4]>>>0>>0?1:0)|0;C[6]=C[6]+1295307597+(C[5]>>>0>>0?1:0)|0;C[7]=C[7]+3545052371+(C[6]>>>0>>0?1:0)|0;this._b=C[7]>>>0>>0?1:0;for(var i=0;i<8;i++){var gx=X[i]+C[i];var ga=gx&65535;var gb=gx>>>16;var gh=((ga*ga>>>17)+ga*gb>>>15)+gb*gb;var gl=((gx&4294901760)*gx|0)+((gx&65535)*gx|0);G[i]=gh^gl}X[0]=G[0]+(G[7]<<16|G[7]>>>16)+(G[6]<<16|G[6]>>>16)|0;X[1]=G[1]+(G[0]<<8|G[0]>>>24)+G[7]|0;X[2]=G[2]+(G[1]<<16|G[1]>>>16)+(G[0]<<16|G[0]>>>16)|0;X[3]=G[3]+(G[2]<<8|G[2]>>>24)+G[1]|0;X[4]=G[4]+(G[3]<<16|G[3]>>>16)+(G[2]<<16|G[2]>>>16)|0;X[5]=G[5]+(G[4]<<8|G[4]>>>24)+G[3]|0;X[6]=G[6]+(G[5]<<16|G[5]>>>16)+(G[4]<<16|G[4]>>>16)|0;X[7]=G[7]+(G[6]<<8|G[6]>>>24)+G[5]|0}C.RabbitLegacy=StreamCipher._createHelper(RabbitLegacy)})();return CryptoJS});'},156:(e,t,n)=>{n(642)(n(761))},277:(e,t,n)=>{n(642)(n(906))},316:(e,t,n)=>{n(642)(n(105))},321:e=>{e.exports='!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports):"function"==typeof define&&define.amd?define(["exports"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).JSONPath={})}(this,function(e){"use strict";function n(e,t,r){return t=l(t),function(e,t){{if(t&&("object"==typeof t||"function"==typeof t))return t;if(void 0!==t)throw new TypeError("Derived constructors may only return object or undefined")}return function(e){if(void 0!==e)return e;throw new ReferenceError("this hasn\'t been initialised - super() hasn\'t been called")}(e)}(e,i()?Reflect.construct(t,r||[],l(e).constructor):t.apply(e,r))}function o(e,t,r){if(i())return Reflect.construct.apply(null,arguments);var n=[null];n.push.apply(n,t);n=new(e.bind.apply(e,n));return r&&h(n,r.prototype),n}function i(){try{var e=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}))}catch(e){}return(i=function(){return!!e})()}function t(t,e){var r,n=Object.keys(t);return Object.getOwnPropertySymbols&&(r=Object.getOwnPropertySymbols(t),e&&(r=r.filter(function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable})),n.push.apply(n,r)),n}function r(n){for(var e=1;ee.length)&&(t=e.length);for(var r=0,n=new Array(t);ru.prec:r<=u.prec);)o=n.pop(),t=n.pop().value,c=n.pop(),e={type:l.BINARY_EXP,operator:t,left:c,right:o},n.push(e);(e=this.gobbleToken())||this.throwError("Expected expression after "+s),n.push(i,e)}for(e=n[a=n.length-1];1=t.length&&this.throwError("Unexpected token "+String.fromCharCode(e));break}if(i===l.COMMA_CODE){if(this.index++,++n!==t.length)if(e===l.CPAREN_CODE)this.throwError("Unexpected token ,");else if(e===l.CBRACK_CODE)for(var o=t.length;o":7,"<=":7,">=":7,"<<":8,">>":8,">>>":8,"+":9,"-":9,"*":10,"/":10,"%":10},right_associative:new Set,additional_identifier_chars:new Set(["$","_"]),literals:{true:!0,false:!1,null:null},this_str:"this"}),v.max_unop_len=v.getMaxKeyLen(v.unary_ops),v.max_binop_len=v.getMaxKeyLen(v.binary_ops);var E=function(e){return new v(e).parse()};Object.getOwnPropertyNames(v).forEach(function(e){void 0===E[e]&&"prototype"!==e&&(E[e]=v[e])}),E.Jsep=v;b={name:"ternary",init:function(o){o.hooks.add("after-expression",function(e){if(e.node&&this.code===o.QUMARK_CODE){this.index++;var t=e.node,r=this.gobbleExpression();if(r||this.throwError("Expected expression"),this.gobbleSpaces(),this.code===o.COLON_CODE){this.index++;var n=this.gobbleExpression();if(n||this.throwError("Expected expression"),e.node={type:"ConditionalExpression",test:t,consequent:r,alternate:n},t.operator&&o.binary_ops[t.operator]<=.9){for(var i=t;i.right.operator&&o.binary_ops[i.right.operator]<=.9;)i=i.right;e.node.test=i.right,i.right=e.node,e.node=t}}else this.throwError("Expected :")}})}};E.plugins.register(b);var b={name:"regex",init:function(s){s.hooks.add("gobble-token",function(e){if(47===this.code){for(var t=++this.index,r=!1;this.index>=",">>>=","&=","^=","|="]),updateOperators:[43,45],assignmentPrecedence:.9,init:function(t){var n=[t.IDENTIFIER,t.MEMBER_EXP];g.assignmentOperators.forEach(function(e){return t.addBinaryOp(e,g.assignmentPrecedence,!0)}),t.hooks.add("gobble-token",function(e){var t=this,r=this.code;g.updateOperators.some(function(e){return e===r&&e===t.expr.charCodeAt(t.index+1)})&&(this.index+=2,e.node={type:"UpdateExpression",operator:43===r?"++":"--",argument:this.gobbleTokenProperty(this.gobbleIdentifier()),prefix:!0},e.node.argument&&n.includes(e.node.argument.type)||this.throwError("Unexpected ".concat(e.node.operator)))}),t.hooks.add("after-token",function(e){var t,r=this;e.node&&(t=this.code,g.updateOperators.some(function(e){return e===t&&e===r.expr.charCodeAt(r.index+1)})&&(n.includes(e.node.type)||this.throwError("Unexpected ".concat(e.node.operator)),this.index+=2,e.node={type:"UpdateExpression",operator:43===t?"++":"--",argument:e.node,prefix:!1}))}),t.hooks.add("after-expression",function(e){e.node&&!function t(e){g.assignmentOperators.has(e.operator)?(e.type="AssignmentExpression",t(e.left),t(e.right)):e.operator||Object.values(e).forEach(function(e){e&&"object"===C(e)&&t(e)})}(e.node)})}},A=Object.prototype.hasOwnProperty;function w(e,t){return(e=e.slice()).push(t),e}function k(e,t){return(t=t.slice()).unshift(e),t}var x=function(){function r(e){var t;return s(this,r),(t=n(this,r,[\'JSONPath should not be called with "new" (it prevents return of (unwrapped) scalar values)\'])).avoidNew=!0,t.value=e,t.name="NewError",t}return function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),Object.defineProperty(e,"prototype",{writable:!1}),t&&h(e,t)}(r,p(Error)),c(r)}();function F(e,t,r,n,i){if(!(this instanceof F))try{return new F(e,t,r,n,i)}catch(e){if(!e.avoidNew)throw e;return e.value}"string"==typeof e&&(i=n,n=r,r=t,t=e,e=null);var o=e&&"object"===C(e);if(e=e||{},this.json=e.json||r,this.path=e.path||t,this.resultType=e.resultType||"value",this.flatten=e.flatten||!1,this.wrap=!A.call(e,"wrap")||e.wrap,this.sandbox=e.sandbox||{},this.eval=void 0===e.eval?"safe":e.eval,this.ignoreEvalErrors=void 0!==e.ignoreEvalErrors&&e.ignoreEvalErrors,this.parent=e.parent||null,this.parentProperty=e.parentProperty||null,this.callback=e.callback||n||null,this.otherTypeCallback=e.otherTypeCallback||i||function(){throw new TypeError("You must supply an otherTypeCallback callback option with the @other() operator.")},!1!==e.autostart){var a={path:o?e.path:t};o?"json"in e&&(a.json=e.json):a.json=r;a=this.evaluate(a);if(!a||"object"!==C(a))throw new x(a);return a}}F.prototype.evaluate=function(e,t,r,n){var i=this,o=this.parent,a=this.parentProperty,s=this.flatten,u=this.wrap;if(this.currResultType=this.resultType,this.currEval=this.eval,this.currSandbox=this.sandbox,r=r||this.callback,this.currOtherTypeCallback=n||this.otherTypeCallback,t=t||this.json,(e=e||this.path)&&"object"===C(e)&&!Array.isArray(e)){if(!e.path&&""!==e.path)throw new TypeError(\'You must supply a "path" property when providing an object argument to JSONPath.evaluate().\');if(!A.call(e,"json"))throw new TypeError(\'You must supply a "json" property when providing an object argument to JSONPath.evaluate().\');t=e.json,s=A.call(e,"flatten")?e.flatten:s,this.currResultType=A.call(e,"resultType")?e.resultType:this.currResultType,this.currSandbox=A.call(e,"sandbox")?e.sandbox:this.currSandbox,u=A.call(e,"wrap")?e.wrap:u,this.currEval=A.call(e,"eval")?e.eval:this.currEval,r=A.call(e,"callback")?e.callback:r,this.currOtherTypeCallback=A.call(e,"otherTypeCallback")?e.otherTypeCallback:this.currOtherTypeCallback,o=A.call(e,"parent")?e.parent:o,a=A.call(e,"parentProperty")?e.parentProperty:a,e=e.path}if(o=o||null,a=a||null,Array.isArray(e)&&(e=F.toPathString(e)),(e||""===e)&&t){e=F.toPathArray(e);"$"===e[0]&&1@-\\uD7FF\\uE000-\\uFFFF]|[\\uD800-\\uDBFF][\\uDC00-\\uDFFF]|[\\uD800-\\uDBFF](?![\\uDC00-\\uDFFF])|(?:[^\\uD800-\\uDBFF]|^)[\\uDC00-\\uDFFF])*)[\'\\[](\\??\\((?:[\\0-\\t\\x0B\\f\\x0E-\\u2027\\u202A-\\uD7FF\\uE000-\\uFFFF]|[\\uD800-\\uDBFF][\\uDC00-\\uDFFF]|[\\uD800-\\uDBFF](?![\\uDC00-\\uDFFF])|(?:[^\\uD800-\\uDBFF]|^)[\\uDC00-\\uDFFF])*?\\))(?!(?:[\\0-\\t\\x0B\\f\\x0E-\\u2027\\u202A-\\uD7FF\\uE000-\\uFFFF]|[\\uD800-\\uDBFF][\\uDC00-\\uDFFF]|[\\uD800-\\uDBFF](?![\\uDC00-\\uDFFF])|(?:[^\\uD800-\\uDBFF]|^)[\\uDC00-\\uDFFF])\\)\\])[\'\\]]/g.exec(f);d?this._walk(n,function(e){var t=[d[2]],r=d[1]?n[e][d[1]]:n[e];0=e.length?{done:!0}:{done:!1,value:e[n++]}},e:function(e){throw e},f:t}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var i,o=!0,a=!1;return{s:function(){r=r.call(e)},n:function(){var e=r.next();return o=e.done,e},e:function(e){a=!0,i=e},f:function(){try{o||null==r.return||r.return()}finally{if(a)throw i}}}}(c.split(","));try{for(E.s();!(g=E.n()).done;){var g=g.value;p(this._trace(k(g,l),n,i,o,a,s,!0))}}catch(e){E.e(e)}finally{E.f()}}else!r&&n&&A.call(n,c)&&p(this._trace(l,n[c],w(i,c),n,c,s,e,!0))}if(this._hasParentSelector)for(var x=0;x":function(e,t){return e>t()},"<=":function(e,t){return e<=t()},">=":function(e,t){return e>=t()},"<<":function(e,t){return e<>":function(e,t){return e>>t()},">>>":function(e,t){return e>>>t()},"+":function(e,t){return e+t()},"-":function(e,t){return e-t()},"*":function(e,t){return e*t()},"/":function(e,t){return e/t()},"%":function(e,t){return e%t()}}[e.operator](D.evalAst(e.left,t),function(){return D.evalAst(e.right,t)})},evalCompound:function(e,t){for(var r=0;r{n(642)(n(793))},462:(e,t,n)=>{n(642)(n(321))},481:e=>{e.exports='(function(root,factory){if(typeof exports==="object"){module.exports=exports=factory()}else if(typeof define==="function"&&define.amd){define([],factory)}else{globalThis.gbkTool=factory()}})(this,function(){var data=function(zipData){var re=zipData.replace(/#(\\d+)\\$/g,function(a,b){return Array(+b+3).join("#")}).replace(/#/g,"####").replace(/(\\w\\w):([\\w#]+)(?:,|$)/g,function(a,hd,dt){return dt.replace(/../g,function(a){if(a!="##"){return hd+a}else{return a}})});return re}("4e:020405060f12171f20212326292e2f313335373c40414244464a5155575a5b6263646567686a6b6c6d6e6f727475767778797a7b7c7d7f808182838485878a#909697999c9d9ea3aaafb0b1b4b6b7b8b9bcbdbec8cccfd0d2dadbdce0e2e6e7e9edeeeff1f4f8f9fafcfe,4f:00020304050607080b0c12131415161c1d212328292c2d2e31333537393b3e3f40414244454748494a4b4c525456616266686a6b6d6e7172757778797a7d8081828586878a8c8e909293959698999a9c9e9fa1a2a4abadb0b1b2b3b4b6b7b8b9babbbcbdbec0c1c2c6c7c8c9cbcccdd2d3d4d5d6d9dbe0e2e4e5e7ebecf0f2f4f5f6f7f9fbfcfdff,50:000102030405060708090a#0b0e1011131516171b1d1e20222324272b2f303132333435363738393b3d3f404142444546494a4b4d5051525354565758595b5d5e5f6061626364666768696a6b6d6e6f70717273747578797a7c7d818283848687898a8b8c8e8f909192939495969798999a9b9c9d9e9fa0a1a2a4a6aaabadaeafb0b1b3b4b5b6b7b8b9bcbdbebfc0c1c2c3c4c5c6c7c8c9cacbcccdced0d1d2d3d4d5d7d8d9dbdcdddedfe0e1e2e3e4e5e8e9eaebeff0f1f2f4f6f7f8f9fafcfdfeff,51:00010203040508#090a0c0d0e0f1011131415161718191a1b1c1d1e1f2022232425262728292a2b2c2d2e2f303132333435363738393a3b3c3d3e42474a4c4e4f5052535758595b5d5e5f606163646667696a6f727a7e7f838486878a8b8e8f90919394989a9d9e9fa1a3a6a7a8a9aaadaeb4b8b9babebfc1c2c3c5c8cacdced0d2d3d4d5d6d7d8d9dadcdedfe2e3e5e6e7e8e9eaeceef1f2f4f7fe,52:0405090b0c0f101314151c1e1f2122232526272a2c2f313234353c3e4445464748494b4e4f5253555758#595a5b5d5f6062636466686b6c6d6e7071737475767778797a7b7c7e808384858687898a8b8c8d8e8f91929495969798999a9ca4a5a6a7aeafb0b4b5b6b7b8b9babbbcbdc0c1c2c4c5c6c8cacccdcecfd1d3d4d5d7d9dadbdcdddee0e1e2e3e5e6e7e8e9eaebecedeeeff1f2f3f4f5f6f7f8fbfcfd,53:0102030407090a0b0c0e11121314181b1c1e1f2224252728292b2c2d2f3031323334353637383c3d404244464b4c4d505458595b5d65686a6c6d7276797b7c7d7e80818387888a8e8f#90919293949697999b9c9ea0a1a4a7aaabacadafb0b1b2b3b4b5b7b8b9babcbdbec0c3c4c5c6c7cecfd0d2d3d5dadcdddee1e2e7f4fafeff,54:000205070b1418191a1c2224252a303336373a3d3f4142444547494c4d4e4f515a5d5e5f6061636567696a6b6c6d6e6f7074797a7e7f8183858788898a8d919397989c9e9fa0a1a2a5aeb0b2b5b6b7b9babcbec3c5cacbd6d8dbe0e1e2e3e4ebeceff0f1f4f5f6f7f8f9fbfe,55:0002030405080a0b0c0d0e121315161718191a1c1d1e1f212526#28292b2d3234353638393a3b3d40424547484b4c4d4e4f515253545758595a5b5d5e5f60626368696b6f7071727374797a7d7f85868c8d8e9092939596979a9b9ea0a1a2a3a4a5a6a8a9aaabacadaeafb0b2b4b6b8babcbfc0c1c2c3c6c7c8cacbcecfd0d5d7d8d9dadbdee0e2e7e9edeef0f1f4f6f8f9fafbfcff,56:0203040506070a0b0d1011121314151617191a1c1d202122252628292a2b2e2f30333537383a3c3d3e404142434445464748494a4b4f5051525355565a5b5d5e5f6061#636566676d6e6f70727374757778797a7d7e7f80818283848788898a8b8c8d9091929495969798999a9b9c9d9e9fa0a1a2a4a5a6a7a8a9aaabacadaeb0b1b2b3b4b5b6b8b9babbbdbebfc0c1c2c3c4c5c6c7c8c9cbcccdcecfd0d1d2d3d5d6d8d9dce3e5e6e7e8e9eaeceeeff2f3f6f7f8fbfc,57:00010205070b0c0d0e0f101112131415161718191a1b1d1e202122242526272b313234353637383c3d3f414344454648494b52535455565859626365676c6e707172747578797a7d7e7f80#818788898a8d8e8f90919495969798999a9c9d9e9fa5a8aaacafb0b1b3b5b6b7b9babbbcbdbebfc0c1c4c5c6c7c8c9cacccdd0d1d3d6d7dbdcdee1e2e3e5e6e7e8e9eaebeceef0f1f2f3f5f6f7fbfcfeff,58:0103040508090a0c0e0f101213141617181a1b1c1d1f222325262728292b2c2d2e2f31323334363738393a3b3c3d3e3f4041424345464748494a4b4e4f505253555657595a5b5c5d5f6061626364666768696a6d6e6f707172737475767778797a7b7c7d7f82848687888a8b8c#8d8e8f909194959697989b9c9da0a1a2a3a4a5a6a7aaabacadaeafb0b1b2b3b4b5b6b7b8b9babbbdbebfc0c2c3c4c6c7c8c9cacbcccdcecfd0d2d3d4d6d7d8d9dadbdcdddedfe0e1e2e3e5e6e7e8e9eaedeff1f2f4f5f7f8fafbfcfdfeff,59:000103050608090a0b0c0e1011121317181b1d1e2021222326282c30323335363b3d3e3f404345464a4c4d505253595b5c5d5e5f616364666768696a6b6c6d6e6f70717275777a7b7c7e7f8085898b8c8e8f90919495989a9b9c9d9fa0a1a2a6#a7acadb0b1b3b4b5b6b7b8babcbdbfc0c1c2c3c4c5c7c8c9cccdcecfd5d6d9dbdedfe0e1e2e4e6e7e9eaebedeeeff0f1f2f3f4f5f6f7f8fafcfdfe,5a:00020a0b0d0e0f101214151617191a1b1d1e2122242627282a2b2c2d2e2f3033353738393a3b3d3e3f414243444547484b4c4d4e4f5051525354565758595b5c5d5e5f60616364656668696b6c6d6e6f7071727378797b7c7d7e808182838485868788898a8b8c8d8e8f9091939495969798999c9d9e9fa0a1a2a3a4a5a6a7a8a9abac#adaeafb0b1b4b6b7b9babbbcbdbfc0c3c4c5c6c7c8cacbcdcecfd0d1d3d5d7d9dadbdddedfe2e4e5e7e8eaecedeeeff0f2f3f4f5f6f7f8f9fafbfcfdfeff,5b:0001020304050607080a0b0c0d0e0f10111213141518191a1b1c1d1e1f202122232425262728292a2b2c2d2e2f303133353638393a3b3c3d3e3f4142434445464748494a4b4c4d4e4f52565e606167686b6d6e6f7274767778797b7c7e7f82868a8d8e90919294969fa7a8a9acadaeafb1b2b7babbbcc0c1c3c8c9cacbcdcecf#d1d4d5d6d7d8d9dadbdce0e2e3e6e7e9eaebecedeff1f2f3f4f5f6f7fdfe,5c:0002030507080b0c0d0e10121317191b1e1f2021232628292a2b2d2e2f303233353637434446474c4d5253545657585a5b5c5d5f62646768696a6b6c6d70727374757677787b7c7d7e808384858687898a8b8e8f9293959d9e9fa0a1a4a5a6a7a8aaaeafb0b2b4b6b9babbbcbec0c2c3c5c6c7c8c9cacccdcecfd0d1d3d4d5d6d7d8dadbdcdddedfe0e2e3e7e9ebeceeeff1f2f3f4f5f6f7f8f9fafcfdfeff,5d:00#01040508090a0b0c0d0f10111213151718191a1c1d1f2021222325282a2b2c2f3031323335363738393a3b3c3f4041424344454648494d4e4f5051525354555657595a5c5e5f6061626364656667686a6d6e7071727375767778797a7b7c7d7e7f8081838485868788898a8b8c8d8e8f9091929394959697989a9b9c9e9fa0a1a2a3a4a5a6a7a8a9aaabacadaeafb0b1b2b3b4b5b6b8b9babbbcbdbebfc0c1c2c3c4c6c7c8c9cacbcccecfd0d1d2d3d4d5d6d7d8d9dadcdfe0e3e4eaeced#f0f5f6f8f9fafbfcff,5e:000407090a0b0d0e1213171e1f20212223242528292a2b2c2f303233343536393a3e3f404143464748494a4b4d4e4f50515253565758595a5c5d5f60636465666768696a6b6c6d6e6f70717577797e8182838588898c8d8e92989b9da1a2a3a4a8a9aaabacaeafb0b1b2b4babbbcbdbfc0c1c2c3c4c5c6c7c8cbcccdcecfd0d4d5d7d8d9dadcdddedfe0e1e2e3e4e5e6e7e9ebecedeeeff0f1f2f3f5f8f9fbfcfd,5f:050607090c0d0e10121416191a1c1d1e21222324#282b2c2e30323334353637383b3d3e3f4142434445464748494a4b4c4d4e4f5154595a5b5c5e5f60636567686b6e6f72747576787a7d7e7f83868d8e8f919394969a9b9d9e9fa0a2a3a4a5a6a7a9abacafb0b1b2b3b4b6b8b9babbbebfc0c1c2c7c8cacbced3d4d5dadbdcdedfe2e3e5e6e8e9eceff0f2f3f4f6f7f9fafc,60:0708090b0c10111317181a1e1f2223242c2d2e3031323334363738393a3d3e404445464748494a4c4e4f5153545657585b5c5e5f606165666e71727475777e80#8182858687888a8b8e8f909193959798999c9ea1a2a4a5a7a9aaaeb0b3b5b6b7b9babdbebfc0c1c2c3c4c7c8c9cccdcecfd0d2d3d4d6d7d9dbdee1e2e3e4e5eaf1f2f5f7f8fbfcfdfeff,61:02030405070a0b0c1011121314161718191b1c1d1e21222528292a2c2d2e2f303132333435363738393a3b3c3d3e4041424344454647494b4d4f50525354565758595a5b5c5e5f606163646566696a6b6c6d6e6f717273747678797a7b7c7d7e7f808182838485868788898a8c8d8f9091929395#969798999a9b9c9e9fa0a1a2a3a4a5a6aaabadaeafb0b1b2b3b4b5b6b8b9babbbcbdbfc0c1c3c4c5c6c7c9cccdcecfd0d3d5d6d7d8d9dadbdcdddedfe0e1e2e3e4e5e7e8e9eaebecedeeeff0f1f2f3f4f6f7f8f9fafbfcfdfe,62:00010203040507091314191c1d1e2023262728292b2d2f303132353638393a3b3c424445464a4f50555657595a5c5d5e5f6061626465687172747577787a7b7d818283858687888b8c8d8e8f9094999c9d9ea3a6a7a9aaadaeafb0b2b3b4b6b7b8babec0c1#c3cbcfd1d5dddee0e1e4eaebf0f2f5f8f9fafb,63:00030405060a0b0c0d0f10121314151718191c2627292c2d2e30313334353637383b3c3e3f40414447484a51525354565758595a5b5c5d60646566686a6b6c6f707273747578797c7d7e7f81838485868b8d9193949597999a9b9c9d9e9fa1a4a6abafb1b2b5b6b9bbbdbfc0c1c2c3c5c7c8cacbccd1d3d4d5d7d8d9dadbdcdddfe2e4e5e6e7e8ebeceeeff0f1f3f5f7f9fafbfcfe,64:0304060708090a0d0e111215161718191a1d1f222324#252728292b2e2f3031323335363738393b3c3e404243494b4c4d4e4f505153555657595a5b5c5d5f60616263646566686a6b6c6e6f70717273747576777b7c7d7e7f8081838688898a8b8c8d8e8f90939497989a9b9c9d9fa0a1a2a3a5a6a7a8aaabafb1b2b3b4b6b9bbbdbebfc1c3c4c6c7c8c9cacbcccfd1d3d4d5d6d9dadbdcdddfe0e1e3e5e7e8e9eaebecedeeeff0f1f2f3f4f5f6f7f8f9fafbfcfdfeff,65:01020304050607080a0b0c0d0e0f10111314151617191a1b1c1d1e1f2021#222324262728292a2c2d30313233373a3c3d404142434446474a4b4d4e5052535457585a5c5f606164656768696a6d6e6f7173757678797a7b7c7d7e7f8081828384858688898a8d8e8f92949596989a9d9ea0a2a3a6a8aaacaeb1b2b3b4b5b6b7b8babbbebfc0c2c7c8c9cacdd0d1d3d4d5d8d9dadbdcdddedfe1e3e4eaebf2f3f4f5f8f9fbfcfdfeff,66:0104050708090b0d1011121617181a1b1c1e2122232426292a2b2c2e3032333738393a3b3d3f40424445464748494a4d4e505158#595b5c5d5e6062636567696a6b6c6d7172737578797b7c7d7f808183858688898a8b8d8e8f909293949598999a9b9c9e9fa0a1a2a3a4a5a6a9aaabacadafb0b1b2b3b5b6b7b8babbbcbdbfc0c1c2c3c4c5c6c7c8c9cacbcccdcecfd0d1d2d3d4d5d6d7d8dadedfe0e1e2e3e4e5e7e8eaebecedeeeff1f5f6f8fafbfd,67:010203040506070c0e0f1112131618191a1c1e20212223242527292e303233363738393b3c3e3f414445474a4b4d5254555758595a5b5d62636466676b6c6e717476#78797a7b7d8082838586888a8c8d8e8f9192939496999b9fa0a1a4a6a9acaeb1b2b4b9babbbcbdbebfc0c2c5c6c7c8c9cacbcccdced5d6d7dbdfe1e3e4e6e7e8eaebedeef2f5f6f7f8f9fafbfcfe,68:01020304060d1012141518191a1b1c1e1f20222324252627282b2c2d2e2f30313435363a3b3f474b4d4f52565758595a5b5c5d5e5f6a6c6d6e6f707172737578797a7b7c7d7e7f8082848788898a8b8c8d8e90919294959698999a9b9c9d9e9fa0a1a3a4a5a9aaabacaeb1b2b4b6b7b8#b9babbbcbdbebfc1c3c4c5c6c7c8cacccecfd0d1d3d4d6d7d9dbdcdddedfe1e2e4e5e6e7e8e9eaebecedeff2f3f4f6f7f8fbfdfeff,69:00020304060708090a0c0f11131415161718191a1b1c1d1e21222325262728292a2b2c2e2f313233353637383a3b3c3e4041434445464748494a4b4c4d4e4f50515253555658595b5c5f616264656768696a6c6d6f7072737475767a7b7d7e7f8183858a8b8c8e8f909192939697999a9d9e9fa0a1a2a3a4a5a6a9aaacaeafb0b2b3b5b6b8b9babcbd#bebfc0c2c3c4c5c6c7c8c9cbcdcfd1d2d3d5d6d7d8d9dadcdddee1e2e3e4e5e6e7e8e9eaebeceeeff0f1f3f4f5f6f7f8f9fafbfcfe,6a:000102030405060708090b0c0d0e0f10111213141516191a1b1c1d1e20222324252627292b2c2d2e30323334363738393a3b3c3f40414243454648494a4b4c4d4e4f515253545556575a5c5d5e5f60626364666768696a6b6c6d6e6f70727374757677787a7b7d7e7f81828385868788898a8b8c8d8f929394959698999a9b9c9d9e9fa1a2a3a4a5a6#a7a8aaadaeafb0b1b2b3b4b5b6b7b8b9babbbcbdbebfc0c1c2c3c4c5c6c7c8c9cacbcccdcecfd0d1d2d3d4d5d6d7d8d9dadbdcdddedfe0e1e2e3e4e5e6e7e8e9eaebecedeeeff0f1f2f3f4f5f6f7f8f9fafbfcfdfeff,6b:000102030405060708090a0b0c0d0e0f101112131415161718191a1b1c1d1e1f252628292a2b2c2d2e2f303133343536383b3c3d3f4041424445484a4b4d4e4f5051525354555657585a5b5c5d5e5f606168696b6c6d6e6f7071727374757677787a7d7e7f808588#8c8e8f909194959798999c9d9e9fa0a2a3a4a5a6a7a8a9abacadaeafb0b1b2b6b8b9babbbcbdbec0c3c4c6c7c8c9caccced0d1d8dadcdddedfe0e2e3e4e5e6e7e8e9ecedeef0f1f2f4f6f7f8fafbfcfeff,6c:000102030408090a0b0c0e12171c1d1e2023252b2c2d31333637393a3b3c3e3f434445484b4c4d4e4f5152535658595a62636566676b6c6d6e6f71737577787a7b7c7f8084878a8b8d8e9192959697989a9c9d9ea0a2a8acafb0b4b5b6b7bac0c1c2c3c6c7c8cbcdcecfd1d2d8#d9dadcdddfe4e6e7e9ecedf2f4f9ff,6d:000203050608090a0d0f101113141516181c1d1f20212223242628292c2d2f30343637383a3f404244494c50555657585b5d5f6162646567686b6c6d707172737576797a7b7d7e7f8081838486878a8b8d8f9092969798999a9ca2a5acadb0b1b3b4b6b7b9babbbcbdbec1c2c3c8c9cacdcecfd0d2d3d4d5d7dadbdcdfe2e3e5e7e8e9eaedeff0f2f4f5f6f8fafdfeff,6e:0001020304060708090b0f12131518191b1c1e1f222627282a2c2e30313335#3637393b3c3d3e3f40414245464748494a4b4c4f5051525557595a5c5d5e606162636465666768696a6c6d6f707172737475767778797a7b7c7d8081828487888a8b8c8d8e91929394959697999a9b9d9ea0a1a3a4a6a8a9abacadaeb0b3b5b8b9bcbebfc0c3c4c5c6c8c9cacccdced0d2d6d8d9dbdcdde3e7eaebecedeeeff0f1f2f3f5f6f7f8fafbfcfdfeff,6f:000103040507080a0b0c0d0e101112161718191a1b1c1d1e1f212223252627282c2e303234353738393a3b3c3d3f404142#43444548494a4c4e4f5051525354555657595a5b5d5f60616364656768696a6b6c6f707173757677797b7d7e7f808182838586878a8b8f909192939495969798999a9b9d9e9fa0a2a3a4a5a6a8a9aaabacadaeafb0b1b2b4b5b7b8babbbcbdbebfc1c3c4c5c6c7c8cacbcccdcecfd0d3d4d5d6d7d8d9dadbdcdddfe2e3e4e5e6e7e8e9eaebecedf0f1f2f3f4f5f6f7f8f9fafbfcfdfeff,70:000102030405060708090a0b0c0d0e0f1012131415161718191c1d1e1f2021222425262728292a#2b2c2d2e2f30313233343637383a3b3c3d3e3f404142434445464748494a4b4d4e505152535455565758595a5b5c5d5f606162636465666768696a6e7172737477797a7b7d818283848687888b8c8d8f90919397989a9b9e9fa0a1a2a3a4a5a6a7a8a9aab0b2b4b5b6babebfc4c5c6c7c9cbcccdcecfd0d1d2d3d4d5d6d7dadcdddee0e1e2e3e5eaeef0f1f2f3f4f5f6f8fafbfcfeff,71:0001020304050607080b0c0d0e0f111214171b1c1d1e1f2021222324252728292a2b2c2d2e323334#353738393a3b3c3d3e3f4041424344464748494b4d4f505152535455565758595a5b5d5f6061626365696a6b6c6d6f707174757677797b7c7e7f8081828385868788898b8c8d8e909192939596979a9b9c9d9ea1a2a3a4a5a6a7a9aaabadaeafb0b1b2b4b6b7b8babbbcbdbebfc0c1c2c4c5c6c7c8c9cacbcccdcfd0d1d2d3d6d7d8d9dadbdcdddedfe1e2e3e4e6e8e9eaebecedeff0f1f2f3f4f5f6f7f8fafbfcfdfeff,72:0001020304050708090a0b0c0d0e0f101112131415161718191a#1b1c1e1f2021222324252627292b2d2e2f3233343a3c3e40414243444546494a4b4e4f505153545557585a5c5e60636465686a6b6c6d707173747677787b7c7d828385868788898c8e9091939495969798999a9b9c9d9ea0a1a2a3a4a5a6a7a8a9aaabaeb1b2b3b5babbbcbdbebfc0c5c6c7c9cacbcccfd1d3d4d5d6d8dadb#95$,30:000102,00b702:c9c7,00a830:0305,2014ff5e20:162618191c1d,30:141508090a0b0c0d0e0f16171011,00:b1d7f7,22:362728110f2a2908371aa52520,231222:992b2e614c483d1d606e6f64651e3534,26:4240,00b020:3233,2103ff0400a4ff:e0e1,203000a7211626:0605,25:cbcfcec7c6a1a0b3b2,203b21:92909193,30:13#95$,21:70717273747576777879#4$,24:88898a8b8c8d8e8f909192939495969798999a9b7475767778797a7b7c7d7e7f808182838485868760616263646566676869##,32:20212223242526272829##,21:606162636465666768696a6b#97$,ff:010203e505060708090a0b0c0d0e0f101112131415161718191a1b1c1d1e1f202122232425262728292a2b2c2d2e2f303132333435363738393a3b3c3d3e3f404142434445464748494a4b4c4d4e4f505152535455565758595a5b5c5de3#95$,30:4142434445464748494a4b4c4d4e4f505152535455565758595a5b5c5d5e5f606162636465666768696a6b6c6d6e6f707172737475767778797a7b7c7d7e7f808182838485868788898a8b8c8d8e8f90919293#106$a1a2a3a4a5a6a7a8a9aaabacadaeafb0b1b2b3b4b5b6b7b8b9babbbcbdbebfc0c1c2c3c4c5c6c7c8c9cacbcccdcecfd0d1d2d3d4d5d6d7d8d9dadbdcdddedfe0e1e2e3e4e5e6e7e8e9eaebecedeeeff0f1f2f3f4f5f6#103$,03:9192939495969798999a9b9c9d9e9fa0a1a3a4a5a6a7a8a9#6$b1b2b3b4b5b6b7b8b9babbbcbdbebfc0c1c3c4c5c6c7c8c9#5$,fe:3536393a3f403d3e41424344##3b3c373831#3334#104$,04:10111213141501161718191a1b1c1d1e1f202122232425262728292a2b2c2d2e2f#13$30313233343551363738393a3b3c3d3e3f404142434445464748494a4b4c4d4e4f#11$,02:cacbd9,20:13152535,21:050996979899,22:151f23526667bf,25:505152535455565758595a5b5c5d5e5f606162636465666768696a6b6c6d6e6f7071727381828384858687#88898a8b8c8d8e8f939495bcbde2e3e4e5,2609229530:121d1e#9$,010100e101ce00e0011300e9011b00e8012b00ed01d000ec014d00f301d200f2016b00fa01d400f901:d6d8dadc,00:fcea,0251e7c701:4448,e7c802:61#2$,31:05060708090a0b0c0d0e0f101112131415161718191a1b1c1d1e1f20212223242526272829#19$,30:212223242526272829,32a333:8e8f9c9d9ea1c4ced1d2d5,fe30ff:e2e4#,212132:31#,20:10#1$,30:fc9b9cfdfe069d9e,fe:494a4b4c4d4e4f50515254555657595a5b5c5d5e5f6061#626364656668696a6b,e7:e7e8e9eaebecedeeeff0f1f2f3,30:07#11$,25:000102030405060708090a0b0c0d0e0f101112131415161718191a1b1c1d1e1f202122232425262728292a2b2c2d2e2f303132333435363738393a3b3c3d3e3f404142434445464748494a4b#13$,72:dcdddfe2e3e4e5e6e7eaebf5f6f9fdfeff,73:00020405060708090b0c0d0f1011121418191a1f2023242627282d2f30323335363a3b3c3d404142434445464748#494a4b4c4e4f515354555658595a5b5c5d5e5f6162636465666768696a6b6e7071#92$72737475767778797a7b7c7d7f808182838586888a8c8d8f90929394959798999a9c9d9ea0a1a3a4a5a6a7a8aaacadb1b4b5b6b8b9bcbdbebfc1c3c4c5c6c7#cbccced2d3d4d5d6d7d8dadbdcdddfe1e2e3e4e6e8eaebeceeeff0f1f3f4f5f6f7#92$f8f9fafbfcfdfeff,74:0001020407080b0c0d0e1112131415161718191c1d1e1f2021232427292b2d2f31323738393a3b3d3e3f4042434445464748494a4b4c4d#4e4f505152535456585d606162636465666768696a6b6c6e6f717273747578797a#92$7b7c7d7f8284858688898a8c8d8f9192939495969798999a9b9d9fa0a1a2a3a4a5a6aaabacadaeafb0b1b2b3b4b5b6b7b8b9bbbcbdbebfc0c1c2c3c4c5c6c7#c8c9cacbcccdcecfd0d1d3d4d5d6d7d8d9dadbdddfe1e5e7e8e9eaebecedf0f1f2#92$f3f5f8f9fafbfcfdfe,75:0001020305060708090a0b0c0e1012141516171b1d1e202122232426272a2e3436393c3d3f414243444647494a4d5051525355565758#5d5e5f60616263646768696b6c6d6e6f7071737576777a7b7c7d7e808182848587#92$88898a8c8d8e909395989b9c9ea2a6a7a8a9aaadb6b7babbbfc0c1c6cbcccecfd0d1d3d7d9dadcdddfe0e1e5e9ecedeeeff2f3f5f6f7f8fafbfdfe,76:02040607#08090b0d0e0f11121314161a1c1d1e212327282c2e2f31323637393a3b3d414244#92$45464748494a4b4e4f50515253555758595a5b5d5f6061626465666768696a6c6d6e7071727374757677797a7c7f80818385898a8c8d8f9092949597989a9b#9c9d9e9fa0a1a2a3a5a6a7a8a9aaabacadafb0b3b5b6b7b8b9babbbcbdbec0c1c3,554a963f57c3632854ce550954c076:914c,853c77ee827e788d72319698978d6c285b894ffa630966975cb880fa684880ae660276ce51f9655671ac7ff1888450b2596561ca6fb382ad634c625253ed54277b06516b75a45df462d48dcb9776628a8019575d97387f627238767d67cf767e64464f708d2562dc7a17659173ed642c6273822c9881677f724862:6ecc,4f3474e3534a529e7eca90a65e2e6886699c81807ed168d278c5868c9551508d8c2482de80de53058912526576:c4c7c9cbccd3d5d9dadcdddee0e1e2e3e4e6e7e8e9eaebecedf0f3f5f6f7fafbfdff,77:00020305060a0c0e0f1011121314151617181b1c1d1e21232425272a2b#2c2e3031323334393b3d3e3f4244454648494a4b4c4d4e4f52535455565758595c,858496f94fdd582199715b9d62:b1a5,66b48c799c8d7206676f789160b253:5117,8f8880cc8d1d94a1500d72c8590760eb711988ab595482ef672c7b285d297ef7752d6cf58e668ff8903c9f3b6bd491197b145f7c78a784d6853d6b:d5d9d6,5e:0187,75f995ed655d5f:0ac5,8f9f58c181c2907f965b97ad8fb97f168d2c62414fbf53:d85e,8f:a8a9ab,904d68075f6a819888689cd6618b522b762a5f6c658c6fd26ee85bbe644851:75b0,67c44e1979c9997c70b377:5d5e5f606467696a6d6e6f7071727374757677787a7b7c818283868788898a8b8f90939495969798999a9b9c9d9ea1a3a4a6a8abadaeafb1b2b4b6b7b8b9ba#bcbec0c1c2c3c4c5c6c7c8c9cacbcccecfd0d1d2d3d4d5d6d8d9dadddedfe0e1e4,75c55e7673bb83e064ad62e894b56ce2535a52c3640f94c27b944f2f5e1b823681:168a,6e246cca9a736355535c54fa886557e04e0d5e036b657c3f90e8601664e6731c88c16750624d8d22776c8e2991c75f6983dc8521991053c286956b8b60:ede8,707f82:cd31,4ed36ca785cf64cd7cd969fd66f9834953957b564fa7518c6d4b5c428e6d63d253c983:2c36,67e578b4643d5bdf5c945dee8be762c667f48c7a640063ba8749998b8c177f2094f24ea7961098a4660c731677:e6e8eaeff0f1f2f4f5f7f9fafbfc,78:0304050607080a0b0e0f101315191b1e20212224282a2b2e2f31323335363d3f414243444648494a4b4d4f51535458595a#5b5c5e5f606162636465666768696f7071727374757678797a7b7d7e7f80818283,573a5c1d5e38957f507f80a05382655e7545553150218d856284949e671d56326f6e5de2543570928f66626f64a463a35f7b6f8890f481e38fb05c1866685ff16c8996488d81886c649179f057ce6a59621054484e587a0b60e96f848bda627f901e9a8b79e4540375f4630153196c608fdf5f1b9a70803b9f7f4f885c3a8d647fc565a570bd51:45b2,866b5d075ba062bd916c75748e0c7a2061017b794ec77ef877854e1181ed521d51fa6a7153a88e87950496cf6ec19664695a78:848586888a8b8f9092949596999d9ea0a2a4a6a8a9aaabacadaeafb5b6b7b8babbbcbdbfc0c2c3c4c6c7c8cccdcecfd1d2d3d6d7d8dadbdcdddedfe0e1e2e3#e4e5e6e7e9eaebedeeeff0f1f3f5f6f8f9fbfcfdfeff,79:00020304060708090a0b0c,784050a877d7641089e6590463e35ddd7a7f693d4f20823955984e3275ae7a975e:628a,95ef521b5439708a6376952457826625693f918755076df37eaf882262337ef075b5832878c196cc8f9e614874f78bcd6b64523a8d506b21806a847156f153064e:ce1b,51d17c97918b7c074fc38e7f7be17a9c64675d1450ac810676017cb96dec7fe067515b:58f8,78cb64:ae13,63:aa2b,9519642d8fbe7b5476296253592754466b7950a362345e266b864ee38d37888b5f85902e79:0d0e0f1011121415161718191a1b1c1d1f2021222325262728292a2b2c2d2e2f3031323335363738393d3f42434445474a4b4c4d4e4f505152545558596163#6466696a6b6c6e70717273747576797b7c7d7e7f8283868788898b8c8d8e909192,6020803d62c54e39535590f863b880c665e66c2e4f4660ee6de18bde5f3986cb5f536321515a83616863520063638e4850125c9b79775bfc52307a3b60bc905376d75f:b797,76848e6c706f767b7b4977aa51f3909358244f4e6ef48fea654c7b1b72c46da47fdf5ae162b55e95573084827b2c5e1d5f1f90127f1498a063826ec7789870b95178975b57ab75354f4375385e9760e659606dc06bbf788953fc96d551cb52016389540a94938c038dcc7239789f87768fed8c0d53e079:939495969798999b9c9d9e9fa0a1a2a3a4a5a6a8a9aaabacadaeafb0b1b2b4b5b6b7b8bcbfc2c4c5c7c8cacccecfd0d3d4d6d7d9dadbdcdddee0e1e2e5e8ea#eceef1f2f3f4f5f6f7f9fafcfeff,7a:0104050708090a0c0f10111213151618191b1c,4e0176ef53ee948998769f0e952d5b9a8ba24e:221c,51ac846361c252a8680b4f97606b51bb6d1e515c6296659796618c46901775d890fd77636bd272:8aec,8bfb583577798d4c675c9540809a5ea66e2159927aef77ed953b6bb565ad7f0e58065151961f5bf958a954288e726566987f56e4949d76fe9041638754c659:1a3a,579b8eb267358dfa8235524160f0581586fe5ce89e454fc4989d8bb95a2560765384627c904f9102997f6069800c513f80335c1499756d314e8c7a:1d1f21222425262728292a2b2c2d2e2f303132343536383a3e4041424344454748494a4b4c4d4e4f50525354555658595a5b5c5d5e5f606162636465666768#696a6b6c6d6e6f717273757b7c7d7e828587898a8b8c8e8f909394999a9b9ea1a2,8d3053d17f5a7b4f4f104e4f96006cd573d085e95e06756a7ffb6a0a77fe94927e4151e170e653cd8fd483038d2972af996d6cdb574a82b365b980aa623f963259a84eff8bbf7eba653e83f2975e556198de80a5532a8bfd542080ba5e9f6cb88d3982ac915a54296c1b52067eb7575f711a6c7e7c89594b4efd5fff61247caa4e305c0167ab87025cf0950b98ce75af70fd902251af7f1d8bbd594951e44f5b5426592b657780a45b7562:76c2,8f905e456c1f7b264f:0fd8,670d7a:a3a4a7a9aaabaeafb0b1b2b4b5b6b7b8b9babbbcbdbec0c1c2c3c4c5c6c7c8c9cacccdcecfd0d1d2d3d4d5d7d8dadbdcdde1e2e4e7e8e9eaebeceef0f1f2f3#f4f5f6f7f8fbfcfe,7b:0001020507090c0d0e1012131617181a1c1d1f21222327292d,6d:6eaa,798f88b15f17752b629a8f854fef91dc65a781:2f51,5e9c81508d74526f89868d4b590d50854ed8961c723681798d1f5bcc8ba3964459877f1a549056:760e,8be565396982949976d66e895e72751867:46d1,7aff809d8d76611f79c665628d635188521a94a27f38809b7eb25c976e2f67607bd9768b9ad8818f7f947cd5641e95507a3f54:4ae5,6b4c640162089e3d80f3759952729769845b683c86e496:0194,94ec4e2a54047ed968398ddf801566f45e9a7fb97b:2f303234353637393b3d3f404142434446484a4d4e535557595c5e5f61636465666768696a6b6c6d6f70737476787a7c7d7f81828384868788898a8b8c8e8f#9192939698999a9b9e9fa0a3a4a5aeafb0b2b3b5b6b7b9babbbcbdbebfc0c2c3c4,57c2803f68975de5653b529f606d9f9a4f9b8eac516c5bab5f135de96c5e62f18d21517194a952fe6c9f82df72d757a267848d2d591f8f9c83c754957b8d4f306cbd5b6459d19f1353e486ca9aa88c3780a16545987e56fa96c7522e74dc52505be1630289024e5662d0602a68fa51735b9851a089c27ba199867f5060ef704c8d2f51495e7f901b747089c4572d78455f529f9f95fa8f689b3c8be17678684267dc8d:ea35,523d8f8a6eda68cd950590ed56fd679c88f98fc754c87b:c5c8c9cacbcdcecfd0d2d4d5d6d7d8dbdcdedfe0e2e3e4e7e8e9ebecedeff0f2f3f4f5f6f8f9fafbfdff,7c:0001020304050608090a0d0e101112131415171819#1a1b1c1d1e20212223242528292b2c2d2e2f3031323334353637393a3b3c3d3e42,9ab85b696d776c264ea55bb39a87916361a890af97e9542b6db55bd251fd558a7f:55f0,64bc634d65f161be608d710a6c:5749,592f676d822a58d5568e8c6a6beb90dd597d801753f76d695475559d83:77cf,683879be548c4f55540876d28c8996026cb36db88d6b89109e648d3a563f9ed175d55f8872e0606854fc4ea86a2a886160528f7054c470d886799e3f6d2a5b8f5f187ea255894faf7334543c539a501954:0e7c,4e4e5ffd745a58f6846b80e1877472d07cca6e567c:434445464748494a4b4c4e4f505152535455565758595a5b5c5d5e5f606162636465666768696a6b6c6d6e6f70717275767778797a7e7f8081828384858687#888a8b8c8d8e8f90939496999a9ba0a1a3a6a7a8a9abacadafb0b4b5b6b7b8babb,5f27864e552c62a44e926caa623782b154d7534e733e6ed1753b521253168bdd69d05f8a60006dee574f6b2273af68538fd87f13636260a3552475ea8c6271156da35ba65e7b8352614c9ec478fa87577c27768751f060f6714c66435e4c604d8c0e707063258f895fbd606286d456de6bc160946167534960e066668d3f79fd4f1a70e96c478b:b3f2,7ed88364660f5a5a9b426d:51f7,8c416d3b4f19706b83b7621660d1970d8d27797851fb57:3efa,673a75787a3d79ef7b957c:bfc0c2c3c4c6c9cbcecfd0d1d2d3d4d8dadbdddee1e2e3e4e5e6e7e9eaebecedeef0f1f2f3f4f5f6f7f9fafcfdfeff,7d:000102030405060708090b0c0d0e0f10#1112131415161718191a1b1c1d1e1f212324252628292a2c2d2e30313233343536,808c99658ff96fc08ba59e2159ec7ee97f095409678168d88f917c4d96c653ca602575be6c7253735ac97ea7632451e0810a5df184df628051805b634f0e796d524260b86d4e5b:c4c2,8b:a1b0,65e25fcc964559937e:e7aa,560967b759394f735bb652a0835a988a8d3e753294be50477a3c4ef767b69a7e5ac16b7c76d1575a5c167b3a95f4714e517c80a9827059787f04832768c067ec78:b177,62e363617b804fed526a51cf835069db92748d:f531,89c1952e7bad4ef67d:3738393a3b3c3d3e3f404142434445464748494a4b4c4d4e4f505152535455565758595a5b5c5d5e5f606162636465666768696a6b6c6d6f70717273747576#78797a7b7c7d7e7f808182838485868788898a8b8c8d8e8f909192939495969798,506582305251996f6e:1085,6da75efa50f559dc5c066d466c5f7586848b686859568bb253209171964d854969127901712680f64ea490ca6d479a845a0756bc640594f077eb4fa5811a72e189d2997a7f347ede527f655991758f:7f83,53eb7a9663:eda5,768679f888579636622a52ab8282685467706377776b7aed6d017ed389e359d0621285c982a5754c501f4ecb75a58beb5c4a5dfe7b4b65a491d14eca6d25895f7d2795264ec58c288fdb9773664b79818fd170ec6d787d:999a9b9c9d9e9fa0a1a2a3a4a5a7a8a9aaabacadafb0b1b2b3b4b5b6b7b8b9babbbcbdbebfc0c1c2c3c4c5c6c7c8c9cacbcccdcecfd0d1d2d3d4d5d6d7d8d9#dadbdcdddedfe0e1e2e3e4e5e6e7e8e9eaebecedeeeff0f1f2f3f4f5f6f7f8f9fa,5c3d52b283465162830e775b66769cb84eac60ca7c:beb3,7ecf4e958b66666f988897595883656c955c5f8475c997567a:dfde,51c070af7a9863ea7a767ea0739697ed4e4570784e5d915253a965:51e7,81fc8205548e5c31759a97a062d872d975bd5c459a7983ca5c40548077e94e3e6cae805a62d2636e5de851778ddd8e1e952f4ff153e560e770ac526763509e435a1f5026773753777ee26485652b628963985014723589c951b38bc07edd574783cc94a7519b541b5cfb7d:fbfcfdfeff,7e:000102030405060708090a0b0c0d0e0f101112131415161718191a1b1c1d1e1f202122232425262728292a2b2c2d2e2f30313233343536373839#3a3c3d3e3f40424344454648494a4b4c4d4e4f505152535455565758595a5b5c5d,4fca7ae36d5a90e19a8f55805496536154af5f0063e9697751ef6168520a582a52d8574e780d770b5eb761777ce062:5b97,4ea27095800362f770e49760577782db67ef68f578d5989779d158f354b353ef6e34514b523b5ba28bfe80af554357a660735751542d7a7a60505b5463a762a053e362635bc767af54ed7a9f82e691775e9388e4593857ae630e8de880ef57577b774fa95feb5bbd6b3e53217b5072c2684677:ff36,65f751b54e8f76d45cbf7aa58475594e9b4150807e:5e5f606162636465666768696a6b6c6d6e6f707172737475767778797a7b7c7d7e7f8081838485868788898a8b8c8d8e8f909192939495969798999a9c9d9e#aeb4bbbcd6e4ecf9,7f:0a101e37393b3c3d3e3f404143464748494a4b4c4d4e4f5253,998861276e8357646606634656f062:ec69,5ed39614578362c955878721814a8fa3556683b167658d5684dd5a6a680f62e67bee961151706f9c8c3063fd89c861d27f0670c26ee57405699472fc5eca90ce67176d6a635e52b3726280014f6c59e5916a70d96d9d52d24e5096f7956d857e78ca7d2f5121579264c2808b7c7b6cea68f1695e51b7539868a872819ece7bf172f879bb6f137406674e91cc9ca4793c83:8954,540f68174e3d538952b1783e5386522950884f:8bd0,7f:56595b5c5d5e6063646566676b6c6d6f7073757677787a7b7c7d7f8082838485868788898b8d8f9091929395969798999b9ca0a2a3a5a6a8a9aaabacadaeb1#b3b4b5b6b7babbbec0c2c3c4c6c7c8c9cbcdcfd0d1d2d3d6d7d9dadbdcdddee2e3,75e27acb7c926ca596b6529b748354e94fe9805483b28fde95705ec9601c6d9f5e18655b813894fe604b70bc7ec37cae51c968817cb1826f4e248f8691cf667e4eae8c0564a9804a50da759771ce5be58fbd6f664e86648295635ed66599521788c270c852a3730e7433679778f797164e3490bb9cde6dcb51db8d41541d62ce73b283f196f69f8494c34f367f9a51cc707596755cad988653e64ee46e9c740969b4786b998f7559521876246d4167f3516d9f99804b54997b3c7abf7f:e4e7e8eaebecedeff2f4f5f6f7f8f9fafdfeff,80:020708090a0e0f11131a1b1d1e1f2123242b2c2d2e2f303234393a3c3e404144454748494e4f505153555657#595b5c5d5e5f6061626364656667686b6c6d6e6f7072737475767778797a7b7c7d,9686578462e29647697c5a0464027bd36f0f964b82a6536298855e90708963b35364864f9c819e93788c97328d:ef42,9e7f6f5e79845f559646622e9a74541594dd4fa365c55c:6561,7f1586516c2f5f8b73876ee47eff5ce6631b5b6a6ee653754e7163a0756562a18f6e4f264ed16ca67eb68bba841d87ba7f57903b95237ba99aa188f8843d6d1b9a867edc59889ebb739b780186829a:6c82,561b541757cb4e709ea653568fc881097792999286ee6ee1851366fc61626f2b80:7e818285888a8d8e8f909192949597999ea3a6a7a8acb0b3b5b6b8b9bbc5c7c8c9cacbcfd0d1d2d3d4d5d8dfe0e2e3e6eef5f7f9fbfeff,81:000103040507080b#0c1517191b1c1d1f202122232425262728292a2b2d2e3033343537393a3b3c3d3f,8c298292832b76f26c135fd983bd732b8305951a6bdb77db94c6536f830251925e3d8c8c8d384e4873ab679a68859176970971646ca177095a9295416bcf7f8e66275bd059b95a9a95:e8f7,4eec84:0c99,6aac76df9530731b68a65b5f772f919a97617cdc8ff78c1c5f257c7379d889c56ccc871c5bc65e4268c977207ef551:954d,52c95a297f05976282d763cf778485d079d26e3a5e9959998511706d6c1162bf76bf654f60af95fd660e879f9e2394ed54:0d7d,8c2c647881:40414243444547494d4e4f525657585b5c5d5e5f6162636466686a6b6c6f727375767778818384858687898b8c8d8e90929394959697999a9e9fa0a1a2a4a5#a7a9abacadaeafb0b1b2b4b5b6b7b8b9bcbdbebfc4c5c7c8c9cbcdcecfd0d1d2d3,647986116a21819c78e864699b5462b9672b83ab58a89ed86cab6f205bde964c8c0b725f67d062c772614ea959c66bcd589366ae5e5552df6155672876ee776672677a4662ff54:ea50,94a090a35a1c7eb36c164e435976801059485357753796be56ca63208111607c95f96dd65462998151855ae980fd59ae9713502a6ce55c3c62df4f60533f817b90066eba852b62c85e7478be64b5637b5ff55a18917f9e1f5c3f634f80425b7d556e95:4a4d,6d8560a867e072de51dd5b8181:d4d5d6d7d8d9dadbdcdddedfe0e1e2e4e5e6e8e9ebeeeff0f1f2f5f6f7f8f9fafdff,82:030708090a0b0e0f111315161718191a1d2024252627292e323a3c3d3f#404142434546484a4c4d4e5051525354555657595b5c5d5e606162636465666769,62e76cde725b626d94ae7ebd81136d53519c5f04597452aa6012597366968650759f632a61e67cef8bfa54e66b279e256bb485d5545550766ca4556a8db4722c5e156015743662cd6392724c5f986e436d3e65006f5876d878d076fc7554522453db4e535e9e65c180:2ad6,629b5486522870ae888d8dd16ce1547880da57f988f48d54966a914d4f696c9b55b776c6783062a870f96f8e5f6d84ec68da787c7bf781a8670b9e4f636778b0576f7812973962:79ab,528874356bd782:6a6b6c6d71757677787b7c808183858687898c90939495969a9b9ea0a2a3a7b2b5b6babbbcbfc0c2c3c5c6c9d0d6d9dadde2e7e8e9eaecedeef0f2f3f5f6f8#fafcfdfeff,83:000a0b0d1012131618191d1e1f20212223242526292a2e3032373b3d,5564813e75b276ae533975de50fb5c418b6c7bc7504f72479a9798d86f0274e27968648777a562fc98918d2b54c180584e52576a82f9840d5e7351ed74f68bc45c4f57616cfc98875a4678349b448feb7c955256625194fa4ec68386846183e984b257d467345703666e6d668c3166dd7011671f6b3a6816621a59bb4e0351c46f0667d26c8f517668cb59476b6775665d0e81109f5065d779:4841,9a918d775c824e5e4f01542f5951780c56686c148fc45f036c:7de3,8bab639083:3e3f41424445484a4b4c4d4e5355565758595d6270717273747576797a7e7f808182838487888a8b8c8d8f909194959697999a9d9fa1a2a3a4a5a6a7acadae#afb5bbbebfc2c3c4c6c8c9cbcdced0d1d2d3d5d7d9dadbdee2e3e4e6e7e8ebeced,60706d3d7275626694:8ec5,53438fc17b7e4edf8c264e7e9ed494:b1b3,524d6f5c90636d458c3458115d4c6b:2049,67aa545b81547f8c589985375f3a62a26a47953965726084686577a74e544fa85de7979864ac7fd85ced4fcf7a8d520783044e14602f7a8394a64fb54eb279e6743452e482b964d279bd5bdd6c8197528f7b6c22503e537f6e0564ce66746c3060c598778bf75e86743c7a7779cb4e1890b174036c4256da914b6cc58d8b533a86c666f28eaf5c489a716e2083:eeeff3f4f5f6f7fafbfcfeff,84:0002050708090a10121314151617191a1b1e1f20212223292a2b2c2d2e2f30323334353637393a3b3e3f404142434445474849#4a4b4c4d4e4f505253545556585d5e5f606264656667686a6e6f70727477797b7c,53d65a369f8b8da353bb570898a76743919b6cc9516875ca62f372ac52:389d,7f3a7094763853749e4a69b7786e96c088d97fa471:36c3,518967d374e458e4651856b78ba9997662707ed560f970ed58ec4e:c1ba,5fcd97e74efb8ba45203598a7eab62544ecd65e5620e833884c98363878d71946eb65bb97ed2519763c967d480898339881551125b7a59828fb14e736c5d516589258f6f962e854a745e95:10f0,6da682e55f3164926d128428816e9cc3585e8d5b4e0953c184:7d7e7f8081838485868a8d8f90919293949596989a9b9d9e9fa0a2a3a4a5a6a7a8a9aaabacadaeb0b1b3b5b6b7bbbcbec0c2c3c5c6c7c8cbcccecfd2d4d5d7#d8d9dadbdcdee1e2e4e7e8e9eaebedeeeff1f2f3f4f5f6f7f8f9fafbfdfe,85:000102,4f1e6563685155d34e2764149a9a626b5ac2745f82726da968ee50e7838e7802674052396c997eb150bb5565715e7b5b665273ca82eb67495c715220717d886b95ea965564c58d6181b355846c5562477f2e58924f2455468d4f664c4e0a5c1a88f368a2634e7a0d70e7828d52fa97f65c1154e890b57ecd59628d4a86c782:0c0d,8d6664445c0461516d89793e8bbe78377533547b4f388eab6df15a207ec5795e6c885ba15a76751a80be614e6e1758f075:1f25,727253477ef385:030405060708090a0b0d0e0f101214151618191b1c1d1e2022232425262728292a2d2e2f303132333435363e3f404142444546474b4c4d4e4f505152535455#57585a5b5c5d5f60616263656667696a6b6c6d6e6f707173757677787c7d7f8081,770176db526980dc57235e08593172ee65bd6e7f8bd75c388671534177f362fe65f64ec098df86805b9e8bc653f277e24f7f5c4e9a7659cb5f0f793a58eb4e1667ff4e8b62ed8a93901d52bf662f55dc566c90024ed54f8d91ca99706c0f5e0260435ba489c68bd56536624b99965b:88ff,6388552e53d77626517d852c67a268b36b8a62928f9353d482126dd1758f4e668d4e5b70719f85af66:91d9,7f7287009ecd9f205c5e672f8ff06811675f620d7ad658855eb665706f3185:82838688898a8b8c8d8e909192939495969798999a9d9e9fa0a1a2a3a5a6a7a9abacadb1b2b3b4b5b6b8babbbcbdbebfc0c2c3c4c5c6c7c8cacbcccdced1d2#d4d6d7d8d9dadbdddedfe0e1e2e3e5e6e7e8eaebecedeeeff0f1f2f3f4f5f6f7f8,60555237800d6454887075295e05681362f4971c53cc723d8c016c3477617a0e542e77ac987a821c8bf47855671470c165af64955636601d79c153f84e1d6b7b80865bfa55e356db4f:3a3c,99725df3677e80386002988290015b8b8b:bcf5,641c825864de55fd82cf91654fd77d20901f7c9f50f358516eaf5bbf8bc980839178849c7b97867d96:8b8f,7ee59ad3788e5c817a57904296a7795f5b59635f7b0b84d168ad55067f2974107d2295016240584c4ed65b835979585485:f9fafcfdfe,86:0001020304060708090a0b0c0d0e0f10121314151718191a1b1c1d1e1f20212223242526282a2b2c2d2e2f3031323334353637393a3b3d3e3f40#4142434445464748494a4b4c525355565758595b5c5d5f6061636465666768696a,736d631e8e:4b0f,80ce82d462ac53f06cf0915e592a60016c70574d644a8d2a762b6ee9575b6a8075f06f6d8c:2d08,57666bef889278b363a253f970ad6c645858642a580268e0819b55107cd650188eba6dcc8d9f70eb638f6d9b6ed47ee68404684390036dd896768ba85957727985e4817e75bc8a8a68af52548e22951163d098988e44557c4f5366ff568f60d56d9552435c4959296dfb586b75:301c,606c82148146631167618fe2773a8d:f334,94c15e165385542c70c386:6d6f7072737475767778838485868788898e8f90919294969798999a9b9e9fa0a1a2a5a6abadaeb2b3b7b8b9bbbcbdbebfc1c2c3c5c8cccdd2d3d5d6d7dadc#dde0e1e2e3e5e6e7e8eaebeceff5f6f7fafbfcfdff,87:010405060b0c0e0f10111416,6c405ef7505c4ead5ead633a8247901a6850916e77b3540c94dc5f647ae5687663457b527edf75db507762955934900f51f879c37a8156fe5f9290146d825c60571f541051546e4d56e263a89893817f8715892a9000541e5c6f81c062:d658,81319e3596409a:6e7c,692d59a562d3553e631654c786d96d3c5a0374e6889c6b6a59168c4c5f2f6e7e73a9987d4e3870f75b8c7897633d665a769660cb5b9b5a494e0781556c6a738b4ea167897f515f8065fa671b5fd859845a0187:191b1d1f20242627282a2b2c2d2f303233353638393a3c3d404142434445464a4b4d4f505152545556585a5b5c5d5e5f6162666768696a6b6c6d6f71727375#7778797a7f8081848687898a8c8e8f90919294959698999a9b9c9d9ea0a1a2a3a4,5dcd5fae537197e68fdd684556f4552f60df4e3a6f4d7ef482c7840e59d44f:1f2a,5c3e7eac672a851a5473754f80c355829b4f4f4d6e2d8c135c096170536b761f6e29868a658795fb7eb9543b7a337d0a95ee55e17fc174ee631d87176da17a9d621165a1536763e16c835deb545c94a84e4c6c618bec5c4b65e0829c68a754:3e34,6b:cb66,4e9463425348821e4f:0dae,575e620a96fe6664726952:ffa1,609f8bef661471996790897f785277fd6670563b54389521727a87:a5a6a7a9aaaeb0b1b2b4b6b7b8b9bbbcbebfc1c2c3c4c5c7c8c9cccdcecfd0d4d5d6d7d8d9dadcdddedfe1e2e3e4e6e7e8e9ebecedeff0f1f2f3f4f5f6f7f8#fafbfcfdff,88:0001020405060708090b0c0d0e0f101112141718191a1c1d1e1f2023,7a00606f5e0c6089819d591560dc718470ef6eaa6c5072806a8488ad5e2d4e605ab3559c94e36d177cfb9699620f7ec6778e867e5323971e8f9666875ce14fa072ed4e0b53a6590f54136380952851484ed99c9c7ea454b88d248854823795f26d8e5f265acc663e966973:b02e,53bf817a99857fa15baa96:7750,7ebf76f853a2957699997bb189446e584e617fd479658be660f354cd4eab98795df76a6150cf54118c618427785d9704524a54ee56a395006d885bb56dc6665388:2425262728292a2b2c2d2e2f30313334353637383a3b3d3e3f414243464748494a4b4e4f505152535556585a5b5c5d5e5f6066676a6d6f717374757678797a#7b7c80838687898a8c8e8f90919394959798999a9b9d9e9fa0a1a3a5a6a7a8a9aa,5c0f5b5d6821809655787b11654869544e9b6b47874e978b534f631f643a90aa659c80c18c10519968b0537887f961c86c:c4fb,8c225c5185aa82af950c6b238f9b65b05f:fbc3,4fe18845661f8165732960fa51745211578b5f6290a2884c91925e78674f602759d351:44f6,80f853086c7996c4718a4f:11ee,7f9e673d55c5950879c088967ee3589f620c9700865a5618987b5f908bb884c4915753d965ed5e8f755c60647d6e5a7f7e:eaed,8f6955a75ba360ac65cb738488:acaeafb0b2b3b4b5b6b8b9babbbdbebfc0c3c4c7c8cacbcccdcfd0d1d3d6d7dadbdcdddee0e1e6e7e9eaebecedeeeff2f5f6f7fafbfdff,89:0001030405060708#090b0c0d0e0f1114151617181c1d1e1f20222324262728292c2d2e2f3132333537,9009766377297eda9774859b5b667a7496ea884052cb718f5faa65ec8be25bfb9a6f5de16b896c5b8b:adaf,900a8fc5538b62bc9e:262d,54404e2b82bd7259869c5d1688596daf96c554d14e9a8bb6710954bd960970df6df976d04e25781487125ca95ef68a00989c960e708e6cbf594463a9773c884d6f148273583071d5538c781a96c155015f6671305bb48c1a9a8c6b83592e9e2f79e76768626c4f6f75a17f8a6d0b96336c274ef075d2517b68376f3e908081705996747689:38393a3b3c3d3e3f40424345464748494a4b4c4d4e4f505152535455565758595a5b5c5d6061626364656768696a6b6c6d6e6f707172737475767778797a7c#7d7e808284858788898a8b8c8d8e8f909192939495969798999a9b9c9d9e9fa0a1,64475c2790657a918c2359da54ac8200836f898180006930564e8036723791ce51b64e5f987563964e1a53f666f3814b591c6db24e0058f9533b63d694f14f:9d0a,886398905937905779fb4eea80f075916c825b9c59e85f5d69058681501a5df24e5977e34ee5827a6291661390915c794ebf5f7981c69038808475ab4ea688d4610f6bc55fc64e4976ca6ea28b:e3ae,8c0a8bd15f027f:fccc,7ece83:356b,56e06bb797f3963459fb541f94f66deb5bc5996e5c395f15969089:a2a3a4a5a6a7a8a9aaabacadaeafb0b1b2b3b4b5b6b7b8b9babbbcbdbebfc0c3cdd3d4d5d7d8d9dbdddfe0e1e2e4e7e8e9eaecedeef0f1f2f4f5f6f7f8f9fa#fbfcfdfeff,8a:01020304050608090a0b0c0d0e0f101112131415161718191a1b1c1d,537082f16a315a749e705e947f2883b984:2425,836787478fce8d6276c85f719896786c662054df62e54f6381c375c85eb896cd8e0a86f9548f6cf36d8c6c38607f52c775285e7d4f1860a05fe75c24753190ae94c072b96cb96e389149670953:cbf3,4f5191c98bf153c85e7c8fc26de44e8e76c26986865e611a82064f:59de,903e9c7c61096e:1d14,96854e885a3196e84e0e5c7f79b95b878bed7fbd738957df828b90c15401904755bb5cea5fa161086b3272f180b28a:891e1f202122232425262728292a2b2c2d2e2f303132333435363738393a3b3c3d3f4041424344454647494a4b4c4d4e4f505152535455565758595a5b5c5d5e#5f606162636465666768696a6b6c6d6e6f7071727374757677787a7b7c7d7e7f80,6d745bd388d598848c6b9a6d9e336e0a51:a443,57a38881539f63f48f9556ed54585706733f6e907f188fdc82d1613f6028966266f07ea68d:8ac3,94a55cb37ca4670860a6960580184e9190e75300966851418fd08574915d665597f55b55531d78386742683d54c9707e5bb08f7d518d572854b1651266828d:5e43,810f846c906d7cdf51ff85fb67a365e96fa186a48e81566a90207682707671e58d2362e952196cfd8d3c600e589e618e66fe8d60624e55b36e23672d8f678a:81828384858687888b8c8d8e8f9091929495969798999a9b9c9d9e9fa0a1a2a3a4a5a6a7a8a9aaabacadaeafb0b1b2b3b4b5b6b7b8b9babbbcbdbebfc0c1c2#c3c4c5c6c7c8c9cacbcccdcecfd0d1d2d3d4d5d6d7d8d9dadbdcdddedfe0e1e2e3,94e195f87728680569a8548b4e4d70b88bc86458658b5b857a84503a5be877bb6be18a797c986cbe76cf65a98f975d2d5c5586386808536062187ad96e5b7efd6a1f7ae05f706f335f20638c6da867564e085e108d264ed780c07634969c62db662d627e6cbc8d7571677f695146808753ec906e629854f286f08f998005951785178fd96d5973cd659f771f7504782781fb8d1e94884fa6679575b98bca9707632f9547963584b8632377415f8172f04e896014657462ef6b63653f8a:e4e5e6e7e8e9eaebecedeeeff0f1f2f3f4f5f6f7f8f9fafbfcfdfeff,8b:0001020304050608090a0b0c0d0e0f101112131415161718191a1b1c1d1e1f20212223#24252728292a2b2c2d2e2f303132333435363738393a3b3c3d3e3f404142434445,5e2775c790d18bc1829d679d652f5431871877e580a281026c414e4b7ec7804c76f4690d6b966267503c4f84574063076b628dbe53ea65e87eb85fd763:1ab7,81:f3f4,7f6e5e1c5cd95236667a79e97a1a8d28709975d46ede6cbb7a924e2d76c55fe0949f88777ec879cd80bf91cd4ef24f17821f54685dde6d328bcc7ca58f7480985e1a549276b15b99663c9aa473e0682a86db6731732a8b:f8db,90107af970db716e62c477a956314e3b845767f152a986c08d2e94f87b518b:464748494a4b4c4d4e4f505152535455565758595a5b5c5d5e5f6061626364656768696a6b6d6e6f707172737475767778797a7b7c7d7e7f80818283848586#8788898a8b8c8d8e8f909192939495969798999a9b9c9d9e9facb1bbc7d0ea,8c:091e,4f4f6ce8795d9a7b6293722a62fd4e1378168f6c64b08d5a7bc668695e8488c55986649e58ee72b6690e95258ffd8d5857607f008c0651c6634962d95353684c74228301914c55447740707c6d4a517954a88d4459ff6ecb6dc45b5c7d2b4ed47c7d6ed35b5081ea6e0d5b579b0368d58e2a5b977efc603b7eb590b98d70594f63cd79df8db3535265cf79568bc5963b7ec494bb7e825634918967007f6a5c0a907566285de64f5067de505a4f5c57505e:a7#3$,8c:38393a3b3c3d3e3f4042434445484a4b4d4e4f5051525354565758595b5c5d5e5f60636465666768696c6d6e6f707172747576777b7c7d7e7f808183848687#888b8d8e8f90919293959697999a9b9c9d9e9fa0a1a2a3a4a5a6a7a8a9aaabacad,4e:8d0c,51404e105eff53454e:15981e,9b325b6c56694e2879ba4e3f53154e47592d723b536e6c1056df80e499976bd3777e9f174e:369f,9f104e:5c6993,82885b5b556c560f4ec453:8d9da3a5ae,97658d5d53:1af5262e3e,8d5c53:6663,52:02080e2d333f404c5e615c,84af52:7d82819093,51827f544e:bbc3c9c2e8e1ebde,4f1b4ef34f:2264,4ef54f:2527092b5e67,65384f:5a5d,8c:aeafb0b1b2b3b4b5b6b7b8b9babbbcbdbebfc0c1c2c3c4c5c6c7c8c9cacbcccdcecfd0d1d2d3d4d5d6d7d8d9dadbdcdddedfe0e1e2e3e4e5e6e7e8e9eaebec#edeeeff0f1f2f3f4f5f6f7f8f9fafbfcfdfeff,8d:000102030405060708090a0b0c0d,4f:5f57323d76749189838f7e7baa7cac94e6e8eac5dae3dcd1dff8,50:294c,4ff350:2c0f2e2d,4ffe50:1c0c25287e4355484e6c7ba5a7a9bad6,510650:edece6ee,51:070b,4edd6c3d4f:5865ce,9fa06c467c74516e5dfd9ec999985181591452f9530d8a07531051eb591951554ea051564eb388:6ea4,4eb5811488d279805b3488037fb851:abb1bdbc,8d:0e0f101112131415161718191a1b1c205152575f6568696a6c6e6f717278797a7b7c7d7e7f808283868788898c8d8e8f90929395969798999a9b9c9d9ea0a1#a2a4a5a6a7a8a9aaabacadaeafb0b2b6b7b9bbbdc0c1c2c5c7c8c9cacdd0d2d3d4,51:c796a2a5,8b:a0a6a7aab4b5b7c2c3cbcfced2d3d4d6d8d9dcdfe0e4e8e9eef0f3f6f9fcff,8c:000204070c0f1112141516191b181d1f202125272a2b2e2f32333536,53:697a,96:1d2221312a3d3c4249545f676c7274888d97b0,90:979b9d99aca1b4b3b6ba,8d:d5d8d9dce0e1e2e5e6e7e9edeef0f1f2f4f6fcfeff,8e:00010203040607080b0d0e1011121315161718191a1b1c202124252627282b2d303233343637383b3c3e#3f4345464c4d4e4f505354555657585a5b5c5d5e5f60616263646567686a6b6e71,90:b8b0cfc5bed0c4c7d3e6e2dcd7dbebeffe,91:04221e23312f394346,520d594252:a2acadbe,54ff52:d0d6f0,53df71ee77cd5ef451:f5fc,9b2f53b65f01755a5def57:4ca9a1,58:7ebcc5d1,57:292c2a33392e2f5c3b4269856b867c7b686d7673ada48cb2cfa7b493a0d5d8dad9d2b8f4eff8e4dd,8e:73757778797a7b7d7e808283848688898a8b8c8d8e91929395969798999a9b9d9fa0a1a2a3a4a5a6a7a8a9aaadaeb0b1b3b4b5b6b7b8b9bbbcbdbebfc0c1c2#c3c4c5c6c7c8c9cacbcccdcfd0d1d2d3d4d5d6d7d8d9dadbdcdddedfe0e1e2e3e4,58:0b0d,57:fded,58:001e194420656c81899a80,99a89f1961ff82:797d7f8f8aa8848e919799abb8beb0c8cae398b7aecbccc1a9b4a1aa9fc4cea4e1,830982:f7e4,83:0f07,82:dcf4d2d8,830c82:fbd3,83:111a061415,82:e0d5,83:1c515b5c08923c34319b5e2f4f47435f4017602d3a336665,8e:e5e6e7e8e9eaebecedeeeff0f1f2f3f4f5f6f7f8f9fafbfcfdfeff,8f:000102030405060708090a0b0c0d0e0f101112131415161718191a1b1c1d1e1f20212223#2425262728292a2b2c2d2e2f303132333435363738393a3b3c3d3e3f4041424344,83:681b696c6a6d6eb078b3b4a0aa939c857cb6a97db87b989ea8babcc1,840183:e5d8,580784:180b,83:ddfdd6,84:1c381106,83:d4df,84:0f03,83:f8f9eac5c0,842683:f0e1,84:5c515a597387887a89783c4669768c8e316dc1cdd0e6bdd3cabfbae0a1b9b497e5e3,850c750d853884f085:391f3a,8f:45464748494a4b4c4d4e4f505152535455565758595a5b5c5d5e5f6061626364656a808c929da0a1a2a4a5a6a7aaacadaeafb2b3b4b5b7b8babbbcbfc0c3c6#c9cacbcccdcfd2d6d7dae0e1e3e7eceff1f2f4f5f6fafbfcfeff,90:07080c0e131518,85:563b,84:fffc,85:594868645e7a,77a285:43727ba4a8878f79ae9c85b9b7b0d3c1dcff,86:270529163c,5efe5f0859:3c41,803759:555a58,530f5c:22252c34,62:4c6a9fbbcadad7ee,632262f663:394b43adf6717a8eb46dac8a69aebcf2f8e0ffc4dece,645263:c6be,64:45410b1b200c26215e846d96,90:191c2324252728292a2b2c303132333437393a3d3f4043454648494a4b4c4e545556595a5c5d5e5f6061646667696a6b6c6f70717273767778797a7b7c7e81#84858687898a8c8d8e8f90929496989a9c9e9fa0a4a5a7a8a9abadb2b7bcbdbfc0,64:7ab7b899bac0d0d7e4e2,65:09252e,5f:0bd2,75195f1153:5ff1fde9e8fb,54:1216064b5253545643215759233282947771649a9b8476669dd0adc2b4d2a7a6d3d472a3d5bbbfccd9dadca9aaa4ddcfde,551b54e7552054fd551454f355:22230f11272a678fb5496d41553f503c,90:c2c3c6c8c9cbcccdd2d4d5d6d8d9dadedfe0e3e4e5e9eaeceef0f1f2f3f5f6f7f9fafbfcff,91:00010305060708090a0b0c0d0e0f1011121314151617181a1b1c#1d1f20212425262728292a2b2c2d2e30323334353637383a3b3c3d3e3f40414244,55:375675767733305c8bd283b1b988819f7ed6917bdfbdbe9499eaf7c9,561f55:d1ebecd4e6ddc4efe5f2f3cccde8f5e4,8f9456:1e080c012423,55fe56:00272d5839572c4d62595c4c548664716b7b7c8593afd4d7dde1f5ebf9ff,57:040a091c,5e:0f191411313b3c,91:454748515354555658595b5c5f606667686b6d737a7b7c808182838486888a8e8f939495969798999c9d9e9fa0a1a4a5a6a7a8a9abacb0b1b2b3b6b7b8b9bb#bcbdbebfc0c1c2c3c4c5c6c8cbd0d2d3d4d5d6d7d8d9dadbdddedfe0e1e2e3e4e5,5e:3744545b5e61,5c:8c7a8d9096889899919a9cb5a2bdacabb1a3c1b7c4d2e4cbe5,5d:020327262e241e061b583e343d6c5b6f5d6b4b4a697482999d,8c735d:b7c5,5f:73778287898c95999ca8adb5bc,88625f6172:adb0b4b7b8c3c1cecdd2e8efe9f2f4f7,730172f3730372fa91:e6e7e8e9eaebecedeeeff0f1f2f3f4f5f6f7f8f9fafbfcfdfeff,92:000102030405060708090a0b0c0d0e0f101112131415161718191a1b1c1d1e1f2021222324#25262728292a2b2c2d2e2f303132333435363738393a3b3c3d3e3f404142434445,72fb73:1713210a1e1d152239252c3831504d57606c6f7e,821b592598e759:2402,99:636768696a6b6c74777d8084878a8d9091939495,5e:80918b96a5a0b9b5beb3,8d535e:d2d1dbe8ea,81ba5f:c4c9d6cf,60035fee60045f:e1e4fe,60:0506,5f:eaedf8,60:1935261b0f0d292b0a3f2178797b7a42,92:464748494a4b4c4d4e4f505152535455565758595a5b5c5d5e5f606162636465666768696a6b6c6d6e6f7071727375767778797a7b7c7d7e7f808182838485#868788898a8b8c8d8f909192939495969798999a9b9c9d9e9fa0a1a2a3a4a5a6a7,60:6a7d969aad9d83928c9becbbb1ddd8c6dab4,61:20261523,60f461:000e2b4a75ac94a7b7d4f5,5fdd96b395:e9ebf1f3f5f6fcfe,96:030406080a0b0c0d0f12151617191a,4e2c723f62156c:35545c4aa38590948c6869747686a9d0d4adf7f8f1d7b2e0d6faebeeb1d3effe,92:a8a9aaabacadafb0b1b2b3b4b5b6b7b8b9babbbcbdbebfc0c1c2c3c4c5c6c7c9cacbcccdcecfd0d1d2d3d4d5d6d7d8d9dadbdcdddedfe0e1e2e3e4e5e6e7e8#e9eaebecedeeeff0f1f2f3f4f5f6f7f8f9fafbfcfdfeff,93:00010203040506070809,6d:39270c43480704190e2b4d2e351a4f525433916f9ea05e93945c607c63,6e1a6d:c7c5de,6e0e6d:bfe0,6e116d:e6ddd9,6e166dab6e0c6dae6e:2b6e4e6bb25f865354322544dfb198e0,6f2d6e:e2a5a7bdbbb7d7b4cf8fc29f,6f:6246472415,6ef96f:2f364b742a0929898d8c78727c7ad1,93:0a0b0c0d0e0f101112131415161718191a1b1c1d1e1f202122232425262728292a2b2c2d2e2f303132333435363738393a3b3c3d3f40414243444546474849#4a4b4c4d4e4f505152535455565758595a5b5c5d5e5f606162636465666768696b,6f:c9a7b9b6c2e1eedee0ef,70:1a231b39354f5e,5b:80849593a5b8,752f9a9e64345b:e4ee,89305bf08e478b078f:b6d3d5e5eee4e9e6f3e8,90:05040b26110d162135362d2f445152506858625b,66b990:747d8288838b,5f:50575658,5c3b54ab5c:5059,5b715c:6366,7fbc5f:2a292d,82745f3c9b3b5c6e59:81838da9aaa3,93:6c6d6e6f707172737475767778797a7b7c7d7e7f808182838485868788898a8b8c8d8e909192939495969798999a9b9c9d9e9fa0a1a2a3a4a5a6a7a8a9aaab#acadaeafb0b1b2b3b4b5b6b7b8b9babbbcbdbebfc0c1c2c3c4c5c6c7c8c9cbcccd,59:97caab9ea4d2b2afd7be,5a:0506,59dd5a0859:e3d8f9,5a:0c09323411231340674a553c6275,80ec5a:aa9b777abeebb2d2d4b8e0e3f1d6e6d8dc,5b:091716323740,5c:151c,5b:5a6573515362,9a:7577787a7f7d808185888a90929396989b9c9d9fa0a2a3a5a7,7e:9fa1a3a5a8a9,93:cecfd0d1d2d3d4d5d7d8d9dadbdcdddedfe0e1e2e3e4e5e6e7e8e9eaebecedeeeff0f1f2f3f4f5f6f7f8f9fafbfcfdfeff,94:000102030405060708090a0b0c0d#0e0f101112131415161718191a1b1c1d1e1f202122232425262728292a2b2c2d2e,7e:adb0bec0c1c2c9cbccd0d4d7dbe0e1e8ebeeeff1f2,7f0d7e:f6fafbfe,7f:01020307080b0c0f111217191c1b1f212223242526272a2b2c2d2f3031323335,5e7a757f5ddb753e909573:8e91aea29fcfc2d1b7b3c0c9c8e5d9,987c740a73:e9e7debaf2,74:0f2a5b262528302e2c,94:2f303132333435363738393a3b3c3d3f404142434445464748494a4b4c4d4e4f505152535455565758595a5b5c5d5e5f606162636465666768696a6c6d6e6f#707172737475767778797a7b7c7d7e7f8081828384919698c7cfd3d4dae6fb,95:1c20,74:1b1a415c575559776d7e9c8e8081878b9ea8a990a7d2ba,97:eaebec,67:4c535e4869a5876a7398a775a89ead8b777cf0,680967d8680a67:e9b0,680c67:d9b5dab3dd,680067:c3b8e2,680e67:c1fd,68:323360614e624464831d55664167403e4a4929b58f7477936bc2,696e68fc69:1f20,68f995:27333d43484b555a606e74757778797a7b7c7d7e808182838485868788898a8b8c8d8e8f909192939495969798999a9b9c9d9e9fa0a1a2a3a4a5a6a7a8a9aa#abacadaeafb0b1b2b3b4b5b6b7b8b9babbbcbdbebfc0c1c2c3c4c5c6c7c8c9cacb,692468f069:0b0157,68e369:10713960425d846b80987834cc8788ce896663799ba7bbabadd4b1c1cadf95e08dff,6a2f69ed6a:171865,69f26a:443ea0505b358e793d28587c9190a997ab,73:3752,6b:8182878492938d9a9ba1aa,8f:6b6d71727375767877797a7c7e818284878b,95:cccdcecfd0d1d2d3d4d5d6d7d8d9dadbdcdddedfe0e1e2e3e4e5e6e7ecff,96:0713181b1e20232425262728292b2c2d2f303738393a3e41434a4e4f5152535657#58595a5c5d5e606365666b6d6e6f70717378797a7b7c7d7e7f808182838487898a,8f:8d8e8f989a,8ece62:0b171b1f222125242c,81e774:eff4ff,75:0f1113,65:34eeeff0,66:0a19,677266:031500,708566:f71d34313635,800666:5f54414f56615777848ca79dbedbdce6e9,8d:3233363b3d4045464849474d5559,89:c7cacbcccecfd0d1,72:6e9f5d666f7e7f848b8d8f92,63:0832b0,96:8c8e91929395969a9b9d9e9fa0a1a2a3a4a5a6a8a9aaabacadaeafb1b2b4b5b7b8babbbfc2c3c8cacbd0d1d3d4d6d7d8d9dadbdcdddedfe1e2e3e4e5e6e7eb#ecedeef0f1f2f4f5f8fafbfcfdff,97:0203050a0b0c10111214151718191a1b1d1f20,64:3fd8,80046b:eaf3fdf5f9,6c:0507060d1518191a2129242a32,65:35556b,72:4d525630,8662521680:9f9c93bc,670a80:bdb1abadb4b7e7e8e9eadbc2c4d9cdd7,671080:ddebf1f4ed,81:0d0e,80:f2fc,671581128c5a81:361e2c1832484c5374595a7160697c7d6d67,584d5ab581:888291,6ed581:a3aacc,672681:cabb,97:2122232425262728292b2c2e2f3133343536373a3b3c3d3f404142434445464748494a4b4c4d4e4f5051545557585a5c5d5f63646667686a6b6c6d6e6f7071#72757778797a7b7d7e7f8081828384868788898a8c8e8f9093959697999a9b9c9d,81:c1a6,6b:243739434659,98:d1d2d3d5d9da,6bb35f406bc289f365909f5165:93bcc6c4c3ccced2d6,70:809c969dbbc0b7abb1e8ca,71:1013162f31735c6845724a787a98b3b5a8a0e0d4e7f9,72:1d28,706c71:1866b9,62:3e3d434849,79:3b4046495b5c535a6257606f677a858a9aa7b3,5f:d1d0,97:9e9fa1a2a4a5a6a7a8a9aaacaeb0b1b3b5b6b7b8b9babbbcbdbebfc0c1c2c3c4c5c6c7c8c9cacbcccdcecfd0d1d2d3d4d5d6d7d8d9dadbdcdddedfe0e1e2e3#e4e5e8eeeff0f1f2f4f7f8f9fafbfcfdfeff,98:000102030405060708090a0b0c0d0e,60:3c5d5a67415963ab,61:060d5da99dcbd1,620680:807f,6c:93f6,6dfc77:f6f8,78:0009171811,65ab78:2d1c1d393a3b1f3c252c23294e6d56572650474c6a9b939a879ca1a3b2b9a5d4d9c9ecf2,790578f479:13241e34,9f9b9e:f9fbfc,76f177:040d,76f977:07081a22192d263538505147435a68,98:0f101112131415161718191a1b1c1d1e1f202122232425262728292a2b2c2d2e2f303132333435363738393a3b3c3d3e3f404142434445464748494a4b4c4d#4e4f505152535455565758595a5b5c5d5e5f606162636465666768696a6b6c6d6e,77:62657f8d7d808c919fa0b0b5bd,75:3a404e4b485b727983,7f:58615f,8a487f:68747179817e,76:cde5,883294:8586878b8a8c8d8f909497959a9b9ca3a4abaaadacafb0b2b4b6b7b8b9babcbdbfc4c8c9cacbcccdced0d1d2d5d6d7d9d8dbdedfe0e2e4e5e7e8ea,98:6f70717273748b8e929599a3a8a9aaabacadaeafb0b1b2b3b4b5b6b7b8b9babbbcbdbebfc0c1c2c3c4c5c6c7c8c9cacbcccdcfd0d4d6d7dbdcdde0e1e2e3e4#e5e6e9eaebecedeeeff0f1f2f3f4f5f6f7f8f9fafbfcfdfeff,99:0001020304050607,94:e9ebeeeff3f4f5f7f9fcfdff,95:03020607090a0d0e0f1213141516181b1d1e1f222a2b292c3132343637383c3e3f4235444546494c4e4f525354565758595b5e5f5d61626465666768696a6b6c6f7172733a,77:e7ec,96c979:d5ede3eb,7a065d477a:03021e14,99:08090a0b0c0e0f1112131415161718191a1b1c1d1e1f202122232425262728292a2b2c2d2f303132333435363738393a3b3c3d3e3f40414243444546474849#4a4b4c4d4e4f50515253565758595a5b5c5d5e5f60616264667378797b7e828389,7a:393751,9ecf99a57a7076:888e9399a4,74:dee0,752c9e:202228292a2b2c3231363837393a3e414244464748494b4c4e5155575a5b5c5e63666768696a6b6c716d73,75:929496a09daca3b3b4b8c4b1b0c3c2d6cde3e8e6e4ebe7,760375:f1fcff,76:1000050c170a25181519,99:8c8e9a9b9c9d9e9fa0a1a2a3a4a6a7a9aaabacadaeafb0b1b2b3b4b5b6b7b8b9babbbcbdbebfc0c1c2c3c4c5c6c7c8c9cacbcccdcecfd0d1d2d3d4d5d6d7d8#d9dadbdcdddedfe0e1e2e3e4e5e6e7e8e9eaebecedeeeff0f1f2f3f4f5f6f7f8f9,76:1b3c2220402d303f35433e334d5e545c566b6f,7fca7a:e6787980868895a6a0aca8adb3,88:6469727d7f82a2c6b7bcc9e2cee3e5f1,891a88:fce8fef0,89:2119131b0a342b3641667b,758b80e576:b2b4,77dc80:1214161c20222526272928310b3543464d526971,898398:788083,99:fafbfcfdfeff,9a:000102030405060708090a0b0c0d0e0f101112131415161718191a1b1c1d1e1f202122232425262728292a2b2c2d2e2f303132333435363738#393a3b3c3d3e3f404142434445464748494a4b4c4d4e4f50515253545556575859,98:898c8d8f949a9b9e9fa1a2a5a6,86:4d546c6e7f7a7c7ba88d8bac9da7a3aa93a9b6c4b5ceb0bab1afc9cfb4e9f1f2edf3d0,871386:def4dfd8d1,87:0307,86f887:080a0d09233b1e252e1a3e48343129373f82227d7e7b60704c6e8b53637c64596593afa8d2,9a:5a5b5c5d5e5f606162636465666768696a6b7283898d8e949599a6a9aaabacadaeafb2b3b4b5b9bbbdbebfc3c4c6c7c8c9cacdcecfd0d2d4d5d6d7d9dadbdc#dddee0e2e3e4e5e7e8e9eaeceef0f1f2f3f4f5f6f7f8fafcfdfeff,9b:000102040506,87:c68885ad9783abe5acb5b3cbd3bdd1c0cadbeae0ee,88:1613,87fe88:0a1b21393c,7f:36424445,82107a:fafd,7b:080304150a2b0f47382a192e31202524333e1e585a45754c5d606e7b62727190a6a7b8ac9da885aa9ca2abb4d1c1ccdddae5e6ea,7c0c7b:fefc,7c:0f160b,9b:07090a0b0c0d0e1011121415161718191a1b1c1d1e2021222425262728292a2b2c2d2e3031333435363738393a3d3e3f40464a4b4c4e50525355565758595a#5b5c5d5e5f606162636465666768696a6b6c6d6e6f707172737475767778797a7b,7c:1f2a26384140,81fe82:010204,81ec884482:2122232d2f282b383b33343e44494b4f5a5f68,88:7e8588d8df,895e7f:9d9fa7afb0b2,7c7c65497c:919d9c9ea2b2bcbdc1c7cccdc8c5d7e8,826e66a87f:bfced5e5e1e6e9eef3,7cf87d:77a6ae,7e:479b,9e:b8b4,8d:73849491b1676d,8c:4749,91:4a504e4f64,9b:7c7d7e7f808182838485868788898a8b8c8d8e8f909192939495969798999a9b9c9d9e9fa0a1a2a3a4a5a6a7a8a9aaabacadaeafb0b1b2b3b4b5b6b7b8b9ba#bbbcbdbebfc0c1c2c3c4c5c6c7c8c9cacbcccdcecfd0d1d2d3d4d5d6d7d8d9dadb,91:626170696f7d7e7274798c85908d91a2a3aaadaeafb5b4ba,8c559e7e8d:b8eb,8e:055969,8d:b5bfbcbac4d6d7dadececfdbc6ecf7f8e3f9fbe4,8e098dfd8e:141d1f2c2e232f3a4039353d3149414251524a70767c6f74858f94909c9e,8c:78828a859894,659b89:d6dedadc,9b:dcdddedfe0e1e2e3e4e5e6e7e8e9eaebecedeeeff0f1f2f3f4f5f6f7f8f9fafbfcfdfeff,9c:000102030405060708090a0b0c0d0e0f101112131415161718191a#1b1c1d1e1f202122232425262728292a2b2c2d2e2f303132333435363738393a3b,89:e5ebef,8a3e8b26975396:e9f3ef,97:0601080f0e2a2d303e,9f:808385868788898a8c,9efe9f:0b0d,96:b9bcbdced2,77bf96e092:8eaec8,93:3e6aca8f,94:3e6b,9c:7f8285868788,7a239c:8b8e90919294959a9b9e9fa0a1a2a3a5a6a7a8a9abadaeb0b1b2b3b4b5b6b7babbbcbdc4c5c6c7cacb3c3d3e3f404142434445464748494a4b4c4d4e4f505152535455565758595a5b5c5d5e5f606162636465666768696a6b6c6d6e6f707172737475767778797a#7b7d7e808384898a8c8f93969798999daaacafb9bebfc0c1c2c8c9d1d2dadbe0e1cccdcecfd0d3d4d5d7d8d9dcdddfe2,97:7c85919294afaba3b2b4,9a:b1b0b7,9e589a:b6babcc1c0c5c2cbccd1,9b:45434749484d51,98e899:0d2e5554,9a:dfe1e6efebfbedf9,9b:080f131f23,9e:bdbe,7e3b9e:8287888b92,93d69e:9d9fdbdcdde0dfe2e9e7e5eaef,9f:222c2f39373d3e44,9c:e3e4e5e6e7e8e9eaebecedeeeff0f1f2f3f4f5f6f7f8f9fafbfcfdfeff,9d:000102030405060708090a0b0c0d0e0f101112131415161718191a1b1c1d1e1f2021#22232425262728292a2b2c2d2e2f303132333435363738393a3b3c3d3e3f404142#92$434445464748494a4b4c4d4e4f505152535455565758595a5b5c5d5e5f606162636465666768696a6b6c6d6e6f707172737475767778797a7b7c7d7e7f8081#82838485868788898a8b8c8d8e8f909192939495969798999a9b9c9d9e9fa0a1a2#92$a3a4a5a6a7a8a9aaabacadaeafb0b1b2b3b4b5b6b7b8b9babbbcbdbebfc0c1c2c3c4c5c6c7c8c9cacbcccdcecfd0d1d2d3d4d5d6d7d8d9dadbdcdddedfe0e1#e2e3e4e5e6e7e8e9eaebecedeeeff0f1f2f3f4f5f6f7f8f9fafbfcfdfeff,9e:000102#92$030405060708090a0b0c0d0e0f101112131415161718191a1b1c1d1e24272e30343b3c404d5052535456595d5f606162656e6f727475767778797a7b7c7d80#8183848586898a8c8d8e8f90919495969798999a9b9c9ea0a1a2a3a4a5a7a8a9aa#92$abacadaeafb0b1b2b3b5b6b7b9babcbfc0c1c2c3c5c6c7c8cacbccd0d2d3d5d6d7d9dadee1e3e4e6e8ebecedeef0f1f2f3f4f5f6f7f8fafdff,9f:000102030405#060708090a0c0f1112141516181a1b1c1d1e1f21232425262728292a2b2d2e3031#92$3233343536383a3c3f4041424345464748494a4b4c4d4e4f52535455565758595a5b5c5d5e5f606162636465666768696a6b6c6d6e6f707172737475767778#797a7b7c7d7e81828d8e8f9091929394959697989c9d9ea1a2a3a4a5,f9:2c7995e7f1#92$,fa:0c0d0e0f111314181f20212324272829,e8:15161718191a1b1c1d1e1f202122232425262728292a2b2c2d2e2f303132333435363738393a3b3c3d3e3f40414243#4445464748494a4b4c4d4e4f505152535455565758595a5b5c5d5e5f6061626364"),U2Ghash={},G2Uhash={};!function(data){var k=0;data=data.match(/..../g);for(var i=129;i<=254;i++){for(var j=64;j<=254;j++){U2Ghash[data[k++]]=("%"+i.toString(16)+"%"+j.toString(16)).toUpperCase()}}for(var key in U2Ghash){G2Uhash[U2Ghash[key]]=key}}(data);function isAscii(unicode){return unicode==8364||unicode<=127&&unicode>=0}return{encode:function(str){return str.replace(/./g,function(a){var code=a.charCodeAt(0);if(isAscii(code)){return encodeURIComponent(a)}else{var key=code.toString(16);if(key.length!=4)key=("000"+key).match(/....$/)[0];return U2Ghash[key]||a}})},decode:function(str){return str.replace(/%[0-9A-F]{2}%[0-9A-F]{2}/g,function(a){if(a in G2Uhash){return String.fromCharCode("0x"+G2Uhash[a])}else{return a}}).replace(/%[\\w]{2}/g,function(a){return decodeURIComponent(a)})}}});'},536:(e,t,n)=>{n(642)(n(145))},603:(e,t,n)=>{n(642)(n(990))},642:e=>{e.exports=function(e){function t(e){"undefined"!=typeof console&&(console.error||console.log)("[Script Loader]",e)}try{"undefined"!=typeof execScript&&function n(){return"undefined"!=typeof attachEvent&&"undefined"==typeof addEventListener}()?execScript(e):"undefined"!=typeof eval?eval.call(null,e):t("EvalError: No eval function available")}catch(e){t(e)}}},740:(e,t,n)=>{n(642)(n(481))},761:e=>{e.exports='(function(root,factory){if(typeof exports==="object"){module.exports=exports=factory()}else if(typeof define==="function"&&define.amd){define([],factory)}else{globalThis.WXXH=factory()}})(this,function(){const t=new Uint8Array([0,97,115,109,1,0,0,0,1,48,8,96,3,127,127,127,1,127,96,3,127,127,127,0,96,2,127,127,0,96,1,127,1,127,96,3,127,127,126,1,126,96,3,126,127,127,1,126,96,2,127,126,0,96,1,127,1,126,3,11,10,0,0,2,1,3,4,5,6,1,7,5,3,1,0,1,7,85,9,3,109,101,109,2,0,5,120,120,104,51,50,0,0,6,105,110,105,116,51,50,0,2,8,117,112,100,97,116,101,51,50,0,3,8,100,105,103,101,115,116,51,50,0,4,5,120,120,104,54,52,0,5,6,105,110,105,116,54,52,0,7,8,117,112,100,97,116,101,54,52,0,8,8,100,105,103,101,115,116,54,52,0,9,10,251,22,10,242,1,1,4,127,32,0,32,1,106,33,3,32,1,65,16,79,4,127,32,3,65,16,107,33,6,32,2,65,168,136,141,161,2,106,33,3,32,2,65,137,235,208,208,7,107,33,4,32,2,65,207,140,162,142,6,106,33,5,3,64,32,3,32,0,40,2,0,65,247,148,175,175,120,108,106,65,13,119,65,177,243,221,241,121,108,33,3,32,4,32,0,65,4,106,34,0,40,2,0,65,247,148,175,175,120,108,106,65,13,119,65,177,243,221,241,121,108,33,4,32,2,32,0,65,4,106,34,0,40,2,0,65,247,148,175,175,120,108,106,65,13,119,65,177,243,221,241,121,108,33,2,32,5,32,0,65,4,106,34,0,40,2,0,65,247,148,175,175,120,108,106,65,13,119,65,177,243,221,241,121,108,33,5,32,6,32,0,65,4,106,34,0,79,13,0,11,32,2,65,12,119,32,5,65,18,119,106,32,4,65,7,119,106,32,3,65,1,119,106,5,32,2,65,177,207,217,178,1,106,11,32,1,106,32,0,32,1,65,15,113,16,1,11,146,1,0,32,1,32,2,106,33,2,3,64,32,1,65,4,106,32,2,75,69,4,64,32,0,32,1,40,2,0,65,189,220,202,149,124,108,106,65,17,119,65,175,214,211,190,2,108,33,0,32,1,65,4,106,33,1,12,1,11,11,3,64,32,1,32,2,79,69,4,64,32,0,32,1,45,0,0,65,177,207,217,178,1,108,106,65,11,119,65,177,243,221,241,121,108,33,0,32,1,65,1,106,33,1,12,1,11,11,32,0,32,0,65,15,118,115,65,247,148,175,175,120,108,34,0,65,13,118,32,0,115,65,189,220,202,149,124,108,34,0,65,16,118,32,0,115,11,63,0,32,0,65,8,106,32,1,65,168,136,141,161,2,106,54,2,0,32,0,65,12,106,32,1,65,137,235,208,208,7,107,54,2,0,32,0,65,16,106,32,1,54,2,0,32,0,65,20,106,32,1,65,207,140,162,142,6,106,54,2,0,11,195,4,1,6,127,32,1,32,2,106,33,6,32,0,65,24,106,33,4,32,0,65,40,106,40,2,0,33,3,32,0,32,0,40,2,0,32,2,106,54,2,0,32,0,65,4,106,34,5,32,5,40,2,0,32,2,65,16,79,32,0,40,2,0,65,16,79,114,114,54,2,0,32,2,32,3,106,65,16,73,4,64,32,3,32,4,106,32,1,32,2,252,10,0,0,32,0,65,40,106,32,2,32,3,106,54,2,0,15,11,32,3,4,64,32,3,32,4,106,32,1,65,16,32,3,107,34,2,252,10,0,0,32,0,65,8,106,34,3,32,3,40,2,0,32,4,40,2,0,65,247,148,175,175,120,108,106,65,13,119,65,177,243,221,241,121,108,54,2,0,32,0,65,12,106,34,3,32,3,40,2,0,32,4,65,4,106,40,2,0,65,247,148,175,175,120,108,106,65,13,119,65,177,243,221,241,121,108,54,2,0,32,0,65,16,106,34,3,32,3,40,2,0,32,4,65,8,106,40,2,0,65,247,148,175,175,120,108,106,65,13,119,65,177,243,221,241,121,108,54,2,0,32,0,65,20,106,34,3,32,3,40,2,0,32,4,65,12,106,40,2,0,65,247,148,175,175,120,108,106,65,13,119,65,177,243,221,241,121,108,54,2,0,32,0,65,40,106,65,0,54,2,0,32,1,32,2,106,33,1,11,32,1,32,6,65,16,107,77,4,64,32,6,65,16,107,33,8,32,0,65,8,106,40,2,0,33,2,32,0,65,12,106,40,2,0,33,3,32,0,65,16,106,40,2,0,33,5,32,0,65,20,106,40,2,0,33,7,3,64,32,2,32,1,40,2,0,65,247,148,175,175,120,108,106,65,13,119,65,177,243,221,241,121,108,33,2,32,3,32,1,65,4,106,34,1,40,2,0,65,247,148,175,175,120,108,106,65,13,119,65,177,243,221,241,121,108,33,3,32,5,32,1,65,4,106,34,1,40,2,0,65,247,148,175,175,120,108,106,65,13,119,65,177,243,221,241,121,108,33,5,32,7,32,1,65,4,106,34,1,40,2,0,65,247,148,175,175,120,108,106,65,13,119,65,177,243,221,241,121,108,33,7,32,8,32,1,65,4,106,34,1,79,13,0,11,32,0,65,8,106,32,2,54,2,0,32,0,65,12,106,32,3,54,2,0,32,0,65,16,106,32,5,54,2,0,32,0,65,20,106,32,7,54,2,0,11,32,1,32,6,73,4,64,32,4,32,1,32,6,32,1,107,34,1,252,10,0,0,32,0,65,40,106,32,1,54,2,0,11,11,97,1,1,127,32,0,65,16,106,40,2,0,33,1,32,0,65,4,106,40,2,0,4,127,32,1,65,12,119,32,0,65,20,106,40,2,0,65,18,119,106,32,0,65,12,106,40,2,0,65,7,119,106,32,0,65,8,106,40,2,0,65,1,119,106,5,32,1,65,177,207,217,178,1,106,11,32,0,40,2,0,106,32,0,65,24,106,32,0,65,40,106,40,2,0,16,1,11,255,3,2,3,126,1,127,32,0,32,1,106,33,6,32,1,65,32,79,4,126,32,6,65,32,107,33,6,32,2,66,214,235,130,238,234,253,137,245,224,0,124,33,3,32,2,66,177,169,172,193,173,184,212,166,61,125,33,4,32,2,66,249,234,208,208,231,201,161,228,225,0,124,33,5,3,64,32,3,32,0,41,3,0,66,207,214,211,190,210,199,171,217,66,126,124,66,31,137,66,135,149,175,175,152,182,222,155,158,127,126,33,3,32,4,32,0,65,8,106,34,0,41,3,0,66,207,214,211,190,210,199,171,217,66,126,124,66,31,137,66,135,149,175,175,152,182,222,155,158,127,126,33,4,32,2,32,0,65,8,106,34,0,41,3,0,66,207,214,211,190,210,199,171,217,66,126,124,66,31,137,66,135,149,175,175,152,182,222,155,158,127,126,33,2,32,5,32,0,65,8,106,34,0,41,3,0,66,207,214,211,190,210,199,171,217,66,126,124,66,31,137,66,135,149,175,175,152,182,222,155,158,127,126,33,5,32,6,32,0,65,8,106,34,0,79,13,0,11,32,2,66,12,137,32,5,66,18,137,124,32,4,66,7,137,124,32,3,66,1,137,124,32,3,66,207,214,211,190,210,199,171,217,66,126,66,31,137,66,135,149,175,175,152,182,222,155,158,127,126,133,66,135,149,175,175,152,182,222,155,158,127,126,66,157,163,181,234,131,177,141,138,250,0,125,32,4,66,207,214,211,190,210,199,171,217,66,126,66,31,137,66,135,149,175,175,152,182,222,155,158,127,126,133,66,135,149,175,175,152,182,222,155,158,127,126,66,157,163,181,234,131,177,141,138,250,0,125,32,2,66,207,214,211,190,210,199,171,217,66,126,66,31,137,66,135,149,175,175,152,182,222,155,158,127,126,133,66,135,149,175,175,152,182,222,155,158,127,126,66,157,163,181,234,131,177,141,138,250,0,125,32,5,66,207,214,211,190,210,199,171,217,66,126,66,31,137,66,135,149,175,175,152,182,222,155,158,127,126,133,66,135,149,175,175,152,182,222,155,158,127,126,66,157,163,181,234,131,177,141,138,250,0,125,5,32,2,66,197,207,217,178,241,229,186,234,39,124,11,32,1,173,124,32,0,32,1,65,31,113,16,6,11,134,2,0,32,1,32,2,106,33,2,3,64,32,2,32,1,65,8,106,79,4,64,32,1,41,3,0,66,207,214,211,190,210,199,171,217,66,126,66,31,137,66,135,149,175,175,152,182,222,155,158,127,126,32,0,133,66,27,137,66,135,149,175,175,152,182,222,155,158,127,126,66,157,163,181,234,131,177,141,138,250,0,125,33,0,32,1,65,8,106,33,1,12,1,11,11,32,1,65,4,106,32,2,77,4,64,32,0,32,1,53,2,0,66,135,149,175,175,152,182,222,155,158,127,126,133,66,23,137,66,207,214,211,190,210,199,171,217,66,126,66,249,243,221,241,153,246,153,171,22,124,33,0,32,1,65,4,106,33,1,11,3,64,32,1,32,2,73,4,64,32,0,32,1,49,0,0,66,197,207,217,178,241,229,186,234,39,126,133,66,11,137,66,135,149,175,175,152,182,222,155,158,127,126,33,0,32,1,65,1,106,33,1,12,1,11,11,32,0,32,0,66,33,136,133,66,207,214,211,190,210,199,171,217,66,126,34,0,32,0,66,29,136,133,66,249,243,221,241,153,246,153,171,22,126,34,0,32,0,66,32,136,133,11,77,0,32,0,65,8,106,32,1,66,214,235,130,238,234,253,137,245,224,0,124,55,3,0,32,0,65,16,106,32,1,66,177,169,172,193,173,184,212,166,61,125,55,3,0,32,0,65,24,106,32,1,55,3,0,32,0,65,32,106,32,1,66,249,234,208,208,231,201,161,228,225,0,124,55,3,0,11,244,4,2,3,127,4,126,32,1,32,2,106,33,5,32,0,65,40,106,33,4,32,0,65,200,0,106,40,2,0,33,3,32,0,32,0,41,3,0,32,2,173,124,55,3,0,32,2,32,3,106,65,32,73,4,64,32,3,32,4,106,32,1,32,2,252,10,0,0,32,0,65,200,0,106,32,2,32,3,106,54,2,0,15,11,32,3,4,64,32,3,32,4,106,32,1,65,32,32,3,107,34,2,252,10,0,0,32,0,65,8,106,34,3,32,3,41,3,0,32,4,41,3,0,66,207,214,211,190,210,199,171,217,66,126,124,66,31,137,66,135,149,175,175,152,182,222,155,158,127,126,55,3,0,32,0,65,16,106,34,3,32,3,41,3,0,32,4,65,8,106,41,3,0,66,207,214,211,190,210,199,171,217,66,126,124,66,31,137,66,135,149,175,175,152,182,222,155,158,127,126,55,3,0,32,0,65,24,106,34,3,32,3,41,3,0,32,4,65,16,106,41,3,0,66,207,214,211,190,210,199,171,217,66,126,124,66,31,137,66,135,149,175,175,152,182,222,155,158,127,126,55,3,0,32,0,65,32,106,34,3,32,3,41,3,0,32,4,65,24,106,41,3,0,66,207,214,211,190,210,199,171,217,66,126,124,66,31,137,66,135,149,175,175,152,182,222,155,158,127,126,55,3,0,32,0,65,200,0,106,65,0,54,2,0,32,1,32,2,106,33,1,11,32,1,65,32,106,32,5,77,4,64,32,5,65,32,107,33,2,32,0,65,8,106,41,3,0,33,6,32,0,65,16,106,41,3,0,33,7,32,0,65,24,106,41,3,0,33,8,32,0,65,32,106,41,3,0,33,9,3,64,32,6,32,1,41,3,0,66,207,214,211,190,210,199,171,217,66,126,124,66,31,137,66,135,149,175,175,152,182,222,155,158,127,126,33,6,32,7,32,1,65,8,106,34,1,41,3,0,66,207,214,211,190,210,199,171,217,66,126,124,66,31,137,66,135,149,175,175,152,182,222,155,158,127,126,33,7,32,8,32,1,65,8,106,34,1,41,3,0,66,207,214,211,190,210,199,171,217,66,126,124,66,31,137,66,135,149,175,175,152,182,222,155,158,127,126,33,8,32,9,32,1,65,8,106,34,1,41,3,0,66,207,214,211,190,210,199,171,217,66,126,124,66,31,137,66,135,149,175,175,152,182,222,155,158,127,126,33,9,32,2,32,1,65,8,106,34,1,79,13,0,11,32,0,65,8,106,32,6,55,3,0,32,0,65,16,106,32,7,55,3,0,32,0,65,24,106,32,8,55,3,0,32,0,65,32,106,32,9,55,3,0,11,32,1,32,5,73,4,64,32,4,32,1,32,5,32,1,107,34,1,252,10,0,0,32,0,65,200,0,106,32,1,54,2,0,11,11,188,2,1,5,126,32,0,65,24,106,41,3,0,33,1,32,0,41,3,0,34,2,66,32,90,4,126,32,0,65,8,106,41,3,0,34,3,66,1,137,32,0,65,16,106,41,3,0,34,4,66,7,137,124,32,1,66,12,137,32,0,65,32,106,41,3,0,34,5,66,18,137,124,124,32,3,66,207,214,211,190,210,199,171,217,66,126,66,31,137,66,135,149,175,175,152,182,222,155,158,127,126,133,66,135,149,175,175,152,182,222,155,158,127,126,66,157,163,181,234,131,177,141,138,250,0,125,32,4,66,207,214,211,190,210,199,171,217,66,126,66,31,137,66,135,149,175,175,152,182,222,155,158,127,126,133,66,135,149,175,175,152,182,222,155,158,127,126,66,157,163,181,234,131,177,141,138,250,0,125,32,1,66,207,214,211,190,210,199,171,217,66,126,66,31,137,66,135,149,175,175,152,182,222,155,158,127,126,133,66,135,149,175,175,152,182,222,155,158,127,126,66,157,163,181,234,131,177,141,138,250,0,125,32,5,66,207,214,211,190,210,199,171,217,66,126,66,31,137,66,135,149,175,175,152,182,222,155,158,127,126,133,66,135,149,175,175,152,182,222,155,158,127,126,66,157,163,181,234,131,177,141,138,250,0,125,5,32,1,66,197,207,217,178,241,229,186,234,39,124,11,32,2,124,32,0,65,40,106,32,2,66,31,131,167,16,6,11]);function e(){return function(t){const{exports:{mem:e,xxh32:n,xxh64:r,init32:i,update32:a,digest32:o,init64:s,update64:u,digest64:c}}=t;let h=new Uint8Array(e.buffer);function g(t,n){if(e.buffer.byteLength(h.set(o),a(i(0)))}}function y(t){return t>>>0}const b=2n**64n-1n;function d(t){return t&b}const w=new TextEncoder,l=0,p=0n;function x(t,e=l){return g(3*t.length,0),y(n(0,w.encodeInto(t,h).written,e))}function L(t,e=p){return g(3*t.length,0),d(r(0,w.encodeInto(t,h).written,e))}return{h32:x,h32ToString:(t,e=l)=>x(t,e).toString(16).padStart(8,"0"),h32Raw:(t,e=l)=>(g(t.byteLength,0),h.set(t),y(n(0,t.byteLength,e))),create32:(t=l)=>f(48,t,i,a,o,y),h64:L,h64ToString:(t,e=p)=>L(t,e).toString(16).padStart(16,"0"),h64Raw:(t,e=p)=>(g(t.byteLength,0),h.set(t),d(r(0,t.byteLength,e))),create64:(t=p)=>f(88,t,s,u,c,d)}}(new WebAssembly.Instance(new WebAssembly.Module(t)))}return e()});'},762:(e,t,n)=>{n(642)(n(27))},793:e=>{e.exports='/*! pako 2.1.0 https://github.com/nodeca/pako @license (MIT AND Zlib) */\r\n!function(t,e){"object"==typeof exports&&"undefined"!=typeof module?e(exports):"function"==typeof define&&define.amd?define(["exports"],e):e((t="undefined"!=typeof globalThis?globalThis:t||self).pako={})}(this,(function(t){"use strict";function e(t){let e=t.length;for(;--e>=0;)t[e]=0}const a=256,i=286,n=30,s=15,r=new Uint8Array([0,0,0,0,0,0,0,0,1,1,1,1,2,2,2,2,3,3,3,3,4,4,4,4,5,5,5,5,0]),o=new Uint8Array([0,0,0,0,1,1,2,2,3,3,4,4,5,5,6,6,7,7,8,8,9,9,10,10,11,11,12,12,13,13]),l=new Uint8Array([0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,3,7]),h=new Uint8Array([16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15]),d=new Array(576);e(d);const _=new Array(60);e(_);const f=new Array(512);e(f);const c=new Array(256);e(c);const u=new Array(29);e(u);const w=new Array(n);function m(t,e,a,i,n){this.static_tree=t,this.extra_bits=e,this.extra_base=a,this.elems=i,this.max_length=n,this.has_stree=t&&t.length}let b,g,p;function k(t,e){this.dyn_tree=t,this.max_code=0,this.stat_desc=e}e(w);const v=t=>t<256?f[t]:f[256+(t>>>7)],y=(t,e)=>{t.pending_buf[t.pending++]=255&e,t.pending_buf[t.pending++]=e>>>8&255},x=(t,e,a)=>{t.bi_valid>16-a?(t.bi_buf|=e<>16-t.bi_valid,t.bi_valid+=a-16):(t.bi_buf|=e<{x(t,a[2*e],a[2*e+1])},A=(t,e)=>{let a=0;do{a|=1&t,t>>>=1,a<<=1}while(--e>0);return a>>>1},E=(t,e,a)=>{const i=new Array(16);let n,r,o=0;for(n=1;n<=s;n++)o=o+a[n-1]<<1,i[n]=o;for(r=0;r<=e;r++){let e=t[2*r+1];0!==e&&(t[2*r]=A(i[e]++,e))}},R=t=>{let e;for(e=0;e{t.bi_valid>8?y(t,t.bi_buf):t.bi_valid>0&&(t.pending_buf[t.pending++]=t.bi_buf),t.bi_buf=0,t.bi_valid=0},U=(t,e,a,i)=>{const n=2*e,s=2*a;return t[n]{const i=t.heap[a];let n=a<<1;for(;n<=t.heap_len&&(n{let n,s,l,h,d=0;if(0!==t.sym_next)do{n=255&t.pending_buf[t.sym_buf+d++],n+=(255&t.pending_buf[t.sym_buf+d++])<<8,s=t.pending_buf[t.sym_buf+d++],0===n?z(t,s,e):(l=c[s],z(t,l+a+1,e),h=r[l],0!==h&&(s-=u[l],x(t,s,h)),n--,l=v(n),z(t,l,i),h=o[l],0!==h&&(n-=w[l],x(t,n,h)))}while(d{const a=e.dyn_tree,i=e.stat_desc.static_tree,n=e.stat_desc.has_stree,r=e.stat_desc.elems;let o,l,h,d=-1;for(t.heap_len=0,t.heap_max=573,o=0;o>1;o>=1;o--)S(t,a,o);h=r;do{o=t.heap[1],t.heap[1]=t.heap[t.heap_len--],S(t,a,1),l=t.heap[1],t.heap[--t.heap_max]=o,t.heap[--t.heap_max]=l,a[2*h]=a[2*o]+a[2*l],t.depth[h]=(t.depth[o]>=t.depth[l]?t.depth[o]:t.depth[l])+1,a[2*o+1]=a[2*l+1]=h,t.heap[1]=h++,S(t,a,1)}while(t.heap_len>=2);t.heap[--t.heap_max]=t.heap[1],((t,e)=>{const a=e.dyn_tree,i=e.max_code,n=e.stat_desc.static_tree,r=e.stat_desc.has_stree,o=e.stat_desc.extra_bits,l=e.stat_desc.extra_base,h=e.stat_desc.max_length;let d,_,f,c,u,w,m=0;for(c=0;c<=s;c++)t.bl_count[c]=0;for(a[2*t.heap[t.heap_max]+1]=0,d=t.heap_max+1;d<573;d++)_=t.heap[d],c=a[2*a[2*_+1]+1]+1,c>h&&(c=h,m++),a[2*_+1]=c,_>i||(t.bl_count[c]++,u=0,_>=l&&(u=o[_-l]),w=a[2*_],t.opt_len+=w*(c+u),r&&(t.static_len+=w*(n[2*_+1]+u)));if(0!==m){do{for(c=h-1;0===t.bl_count[c];)c--;t.bl_count[c]--,t.bl_count[c+1]+=2,t.bl_count[h]--,m-=2}while(m>0);for(c=h;0!==c;c--)for(_=t.bl_count[c];0!==_;)f=t.heap[--d],f>i||(a[2*f+1]!==c&&(t.opt_len+=(c-a[2*f+1])*a[2*f],a[2*f+1]=c),_--)}})(t,e),E(a,d,t.bl_count)},O=(t,e,a)=>{let i,n,s=-1,r=e[1],o=0,l=7,h=4;for(0===r&&(l=138,h=3),e[2*(a+1)+1]=65535,i=0;i<=a;i++)n=r,r=e[2*(i+1)+1],++o{let i,n,s=-1,r=e[1],o=0,l=7,h=4;for(0===r&&(l=138,h=3),i=0;i<=a;i++)if(n=r,r=e[2*(i+1)+1],!(++o{x(t,0+(i?1:0),3),Z(t),y(t,a),y(t,~a),a&&t.pending_buf.set(t.window.subarray(e,e+a),t.pending),t.pending+=a};var N=(t,e,i,n)=>{let s,r,o=0;t.level>0?(2===t.strm.data_type&&(t.strm.data_type=(t=>{let e,i=4093624447;for(e=0;e<=31;e++,i>>>=1)if(1&i&&0!==t.dyn_ltree[2*e])return 0;if(0!==t.dyn_ltree[18]||0!==t.dyn_ltree[20]||0!==t.dyn_ltree[26])return 1;for(e=32;e{let e;for(O(t,t.dyn_ltree,t.l_desc.max_code),O(t,t.dyn_dtree,t.d_desc.max_code),T(t,t.bl_desc),e=18;e>=3&&0===t.bl_tree[2*h[e]+1];e--);return t.opt_len+=3*(e+1)+5+5+4,e})(t),s=t.opt_len+3+7>>>3,r=t.static_len+3+7>>>3,r<=s&&(s=r)):s=r=i+5,i+4<=s&&-1!==e?L(t,e,i,n):4===t.strategy||r===s?(x(t,2+(n?1:0),3),D(t,d,_)):(x(t,4+(n?1:0),3),((t,e,a,i)=>{let n;for(x(t,e-257,5),x(t,a-1,5),x(t,i-4,4),n=0;n{F||((()=>{let t,e,a,h,k;const v=new Array(16);for(a=0,h=0;h<28;h++)for(u[h]=a,t=0;t<1<>=7;h(t.pending_buf[t.sym_buf+t.sym_next++]=e,t.pending_buf[t.sym_buf+t.sym_next++]=e>>8,t.pending_buf[t.sym_buf+t.sym_next++]=i,0===e?t.dyn_ltree[2*i]++:(t.matches++,e--,t.dyn_ltree[2*(c[i]+a+1)]++,t.dyn_dtree[2*v(e)]++),t.sym_next===t.sym_end),_tr_align:t=>{x(t,2,3),z(t,256,d),(t=>{16===t.bi_valid?(y(t,t.bi_buf),t.bi_buf=0,t.bi_valid=0):t.bi_valid>=8&&(t.pending_buf[t.pending++]=255&t.bi_buf,t.bi_buf>>=8,t.bi_valid-=8)})(t)}};var C=(t,e,a,i)=>{let n=65535&t|0,s=t>>>16&65535|0,r=0;for(;0!==a;){r=a>2e3?2e3:a,a-=r;do{n=n+e[i++]|0,s=s+n|0}while(--r);n%=65521,s%=65521}return n|s<<16|0};const M=new Uint32Array((()=>{let t,e=[];for(var a=0;a<256;a++){t=a;for(var i=0;i<8;i++)t=1&t?3988292384^t>>>1:t>>>1;e[a]=t}return e})());var H=(t,e,a,i)=>{const n=M,s=i+a;t^=-1;for(let a=i;a>>8^n[255&(t^e[a])];return-1^t},j={2:"need dictionary",1:"stream end",0:"","-1":"file error","-2":"stream error","-3":"data error","-4":"insufficient memory","-5":"buffer error","-6":"incompatible version"},K={Z_NO_FLUSH:0,Z_PARTIAL_FLUSH:1,Z_SYNC_FLUSH:2,Z_FULL_FLUSH:3,Z_FINISH:4,Z_BLOCK:5,Z_TREES:6,Z_OK:0,Z_STREAM_END:1,Z_NEED_DICT:2,Z_ERRNO:-1,Z_STREAM_ERROR:-2,Z_DATA_ERROR:-3,Z_MEM_ERROR:-4,Z_BUF_ERROR:-5,Z_NO_COMPRESSION:0,Z_BEST_SPEED:1,Z_BEST_COMPRESSION:9,Z_DEFAULT_COMPRESSION:-1,Z_FILTERED:1,Z_HUFFMAN_ONLY:2,Z_RLE:3,Z_FIXED:4,Z_DEFAULT_STRATEGY:0,Z_BINARY:0,Z_TEXT:1,Z_UNKNOWN:2,Z_DEFLATED:8};const{_tr_init:P,_tr_stored_block:Y,_tr_flush_block:G,_tr_tally:X,_tr_align:W}=B,{Z_NO_FLUSH:q,Z_PARTIAL_FLUSH:J,Z_FULL_FLUSH:Q,Z_FINISH:V,Z_BLOCK:$,Z_OK:tt,Z_STREAM_END:et,Z_STREAM_ERROR:at,Z_DATA_ERROR:it,Z_BUF_ERROR:nt,Z_DEFAULT_COMPRESSION:st,Z_FILTERED:rt,Z_HUFFMAN_ONLY:ot,Z_RLE:lt,Z_FIXED:ht,Z_DEFAULT_STRATEGY:dt,Z_UNKNOWN:_t,Z_DEFLATED:ft}=K,ct=258,ut=262,wt=42,mt=113,bt=666,gt=(t,e)=>(t.msg=j[e],e),pt=t=>2*t-(t>4?9:0),kt=t=>{let e=t.length;for(;--e>=0;)t[e]=0},vt=t=>{let e,a,i,n=t.w_size;e=t.hash_size,i=e;do{a=t.head[--i],t.head[i]=a>=n?a-n:0}while(--e);e=n,i=e;do{a=t.prev[--i],t.prev[i]=a>=n?a-n:0}while(--e)};let yt=(t,e,a)=>(e<{const e=t.state;let a=e.pending;a>t.avail_out&&(a=t.avail_out),0!==a&&(t.output.set(e.pending_buf.subarray(e.pending_out,e.pending_out+a),t.next_out),t.next_out+=a,e.pending_out+=a,t.total_out+=a,t.avail_out-=a,e.pending-=a,0===e.pending&&(e.pending_out=0))},zt=(t,e)=>{G(t,t.block_start>=0?t.block_start:-1,t.strstart-t.block_start,e),t.block_start=t.strstart,xt(t.strm)},At=(t,e)=>{t.pending_buf[t.pending++]=e},Et=(t,e)=>{t.pending_buf[t.pending++]=e>>>8&255,t.pending_buf[t.pending++]=255&e},Rt=(t,e,a,i)=>{let n=t.avail_in;return n>i&&(n=i),0===n?0:(t.avail_in-=n,e.set(t.input.subarray(t.next_in,t.next_in+n),a),1===t.state.wrap?t.adler=C(t.adler,e,n,a):2===t.state.wrap&&(t.adler=H(t.adler,e,n,a)),t.next_in+=n,t.total_in+=n,n)},Zt=(t,e)=>{let a,i,n=t.max_chain_length,s=t.strstart,r=t.prev_length,o=t.nice_match;const l=t.strstart>t.w_size-ut?t.strstart-(t.w_size-ut):0,h=t.window,d=t.w_mask,_=t.prev,f=t.strstart+ct;let c=h[s+r-1],u=h[s+r];t.prev_length>=t.good_match&&(n>>=2),o>t.lookahead&&(o=t.lookahead);do{if(a=e,h[a+r]===u&&h[a+r-1]===c&&h[a]===h[s]&&h[++a]===h[s+1]){s+=2,a++;do{}while(h[++s]===h[++a]&&h[++s]===h[++a]&&h[++s]===h[++a]&&h[++s]===h[++a]&&h[++s]===h[++a]&&h[++s]===h[++a]&&h[++s]===h[++a]&&h[++s]===h[++a]&&sr){if(t.match_start=e,r=i,i>=o)break;c=h[s+r-1],u=h[s+r]}}}while((e=_[e&d])>l&&0!=--n);return r<=t.lookahead?r:t.lookahead},Ut=t=>{const e=t.w_size;let a,i,n;do{if(i=t.window_size-t.lookahead-t.strstart,t.strstart>=e+(e-ut)&&(t.window.set(t.window.subarray(e,e+e-i),0),t.match_start-=e,t.strstart-=e,t.block_start-=e,t.insert>t.strstart&&(t.insert=t.strstart),vt(t),i+=e),0===t.strm.avail_in)break;if(a=Rt(t.strm,t.window,t.strstart+t.lookahead,i),t.lookahead+=a,t.lookahead+t.insert>=3)for(n=t.strstart-t.insert,t.ins_h=t.window[n],t.ins_h=yt(t,t.ins_h,t.window[n+1]);t.insert&&(t.ins_h=yt(t,t.ins_h,t.window[n+3-1]),t.prev[n&t.w_mask]=t.head[t.ins_h],t.head[t.ins_h]=n,n++,t.insert--,!(t.lookahead+t.insert<3)););}while(t.lookahead{let a,i,n,s=t.pending_buf_size-5>t.w_size?t.w_size:t.pending_buf_size-5,r=0,o=t.strm.avail_in;do{if(a=65535,n=t.bi_valid+42>>3,t.strm.avail_outi+t.strm.avail_in&&(a=i+t.strm.avail_in),a>n&&(a=n),a>8,t.pending_buf[t.pending-2]=~a,t.pending_buf[t.pending-1]=~a>>8,xt(t.strm),i&&(i>a&&(i=a),t.strm.output.set(t.window.subarray(t.block_start,t.block_start+i),t.strm.next_out),t.strm.next_out+=i,t.strm.avail_out-=i,t.strm.total_out+=i,t.block_start+=i,a-=i),a&&(Rt(t.strm,t.strm.output,t.strm.next_out,a),t.strm.next_out+=a,t.strm.avail_out-=a,t.strm.total_out+=a)}while(0===r);return o-=t.strm.avail_in,o&&(o>=t.w_size?(t.matches=2,t.window.set(t.strm.input.subarray(t.strm.next_in-t.w_size,t.strm.next_in),0),t.strstart=t.w_size,t.insert=t.strstart):(t.window_size-t.strstart<=o&&(t.strstart-=t.w_size,t.window.set(t.window.subarray(t.w_size,t.w_size+t.strstart),0),t.matches<2&&t.matches++,t.insert>t.strstart&&(t.insert=t.strstart)),t.window.set(t.strm.input.subarray(t.strm.next_in-o,t.strm.next_in),t.strstart),t.strstart+=o,t.insert+=o>t.w_size-t.insert?t.w_size-t.insert:o),t.block_start=t.strstart),t.high_watern&&t.block_start>=t.w_size&&(t.block_start-=t.w_size,t.strstart-=t.w_size,t.window.set(t.window.subarray(t.w_size,t.w_size+t.strstart),0),t.matches<2&&t.matches++,n+=t.w_size,t.insert>t.strstart&&(t.insert=t.strstart)),n>t.strm.avail_in&&(n=t.strm.avail_in),n&&(Rt(t.strm,t.window,t.strstart,n),t.strstart+=n,t.insert+=n>t.w_size-t.insert?t.w_size-t.insert:n),t.high_water>3,n=t.pending_buf_size-n>65535?65535:t.pending_buf_size-n,s=n>t.w_size?t.w_size:n,i=t.strstart-t.block_start,(i>=s||(i||e===V)&&e!==q&&0===t.strm.avail_in&&i<=n)&&(a=i>n?n:i,r=e===V&&0===t.strm.avail_in&&a===i?1:0,Y(t,t.block_start,a,r),t.block_start+=a,xt(t.strm)),r?3:1)},Dt=(t,e)=>{let a,i;for(;;){if(t.lookahead=3&&(t.ins_h=yt(t,t.ins_h,t.window[t.strstart+3-1]),a=t.prev[t.strstart&t.w_mask]=t.head[t.ins_h],t.head[t.ins_h]=t.strstart),0!==a&&t.strstart-a<=t.w_size-ut&&(t.match_length=Zt(t,a)),t.match_length>=3)if(i=X(t,t.strstart-t.match_start,t.match_length-3),t.lookahead-=t.match_length,t.match_length<=t.max_lazy_match&&t.lookahead>=3){t.match_length--;do{t.strstart++,t.ins_h=yt(t,t.ins_h,t.window[t.strstart+3-1]),a=t.prev[t.strstart&t.w_mask]=t.head[t.ins_h],t.head[t.ins_h]=t.strstart}while(0!=--t.match_length);t.strstart++}else t.strstart+=t.match_length,t.match_length=0,t.ins_h=t.window[t.strstart],t.ins_h=yt(t,t.ins_h,t.window[t.strstart+1]);else i=X(t,0,t.window[t.strstart]),t.lookahead--,t.strstart++;if(i&&(zt(t,!1),0===t.strm.avail_out))return 1}return t.insert=t.strstart<2?t.strstart:2,e===V?(zt(t,!0),0===t.strm.avail_out?3:4):t.sym_next&&(zt(t,!1),0===t.strm.avail_out)?1:2},Tt=(t,e)=>{let a,i,n;for(;;){if(t.lookahead=3&&(t.ins_h=yt(t,t.ins_h,t.window[t.strstart+3-1]),a=t.prev[t.strstart&t.w_mask]=t.head[t.ins_h],t.head[t.ins_h]=t.strstart),t.prev_length=t.match_length,t.prev_match=t.match_start,t.match_length=2,0!==a&&t.prev_length4096)&&(t.match_length=2)),t.prev_length>=3&&t.match_length<=t.prev_length){n=t.strstart+t.lookahead-3,i=X(t,t.strstart-1-t.prev_match,t.prev_length-3),t.lookahead-=t.prev_length-1,t.prev_length-=2;do{++t.strstart<=n&&(t.ins_h=yt(t,t.ins_h,t.window[t.strstart+3-1]),a=t.prev[t.strstart&t.w_mask]=t.head[t.ins_h],t.head[t.ins_h]=t.strstart)}while(0!=--t.prev_length);if(t.match_available=0,t.match_length=2,t.strstart++,i&&(zt(t,!1),0===t.strm.avail_out))return 1}else if(t.match_available){if(i=X(t,0,t.window[t.strstart-1]),i&&zt(t,!1),t.strstart++,t.lookahead--,0===t.strm.avail_out)return 1}else t.match_available=1,t.strstart++,t.lookahead--}return t.match_available&&(i=X(t,0,t.window[t.strstart-1]),t.match_available=0),t.insert=t.strstart<2?t.strstart:2,e===V?(zt(t,!0),0===t.strm.avail_out?3:4):t.sym_next&&(zt(t,!1),0===t.strm.avail_out)?1:2};function Ot(t,e,a,i,n){this.good_length=t,this.max_lazy=e,this.nice_length=a,this.max_chain=i,this.func=n}const It=[new Ot(0,0,0,0,St),new Ot(4,4,8,4,Dt),new Ot(4,5,16,8,Dt),new Ot(4,6,32,32,Dt),new Ot(4,4,16,16,Tt),new Ot(8,16,32,32,Tt),new Ot(8,16,128,128,Tt),new Ot(8,32,128,256,Tt),new Ot(32,128,258,1024,Tt),new Ot(32,258,258,4096,Tt)];function Ft(){this.strm=null,this.status=0,this.pending_buf=null,this.pending_buf_size=0,this.pending_out=0,this.pending=0,this.wrap=0,this.gzhead=null,this.gzindex=0,this.method=ft,this.last_flush=-1,this.w_size=0,this.w_bits=0,this.w_mask=0,this.window=null,this.window_size=0,this.prev=null,this.head=null,this.ins_h=0,this.hash_size=0,this.hash_bits=0,this.hash_mask=0,this.hash_shift=0,this.block_start=0,this.match_length=0,this.prev_match=0,this.match_available=0,this.strstart=0,this.match_start=0,this.lookahead=0,this.prev_length=0,this.max_chain_length=0,this.max_lazy_match=0,this.level=0,this.strategy=0,this.good_match=0,this.nice_match=0,this.dyn_ltree=new Uint16Array(1146),this.dyn_dtree=new Uint16Array(122),this.bl_tree=new Uint16Array(78),kt(this.dyn_ltree),kt(this.dyn_dtree),kt(this.bl_tree),this.l_desc=null,this.d_desc=null,this.bl_desc=null,this.bl_count=new Uint16Array(16),this.heap=new Uint16Array(573),kt(this.heap),this.heap_len=0,this.heap_max=0,this.depth=new Uint16Array(573),kt(this.depth),this.sym_buf=0,this.lit_bufsize=0,this.sym_next=0,this.sym_end=0,this.opt_len=0,this.static_len=0,this.matches=0,this.insert=0,this.bi_buf=0,this.bi_valid=0}const Lt=t=>{if(!t)return 1;const e=t.state;return!e||e.strm!==t||e.status!==wt&&57!==e.status&&69!==e.status&&73!==e.status&&91!==e.status&&103!==e.status&&e.status!==mt&&e.status!==bt?1:0},Nt=t=>{if(Lt(t))return gt(t,at);t.total_in=t.total_out=0,t.data_type=_t;const e=t.state;return e.pending=0,e.pending_out=0,e.wrap<0&&(e.wrap=-e.wrap),e.status=2===e.wrap?57:e.wrap?wt:mt,t.adler=2===e.wrap?0:1,e.last_flush=-2,P(e),tt},Bt=t=>{const e=Nt(t);var a;return e===tt&&((a=t.state).window_size=2*a.w_size,kt(a.head),a.max_lazy_match=It[a.level].max_lazy,a.good_match=It[a.level].good_length,a.nice_match=It[a.level].nice_length,a.max_chain_length=It[a.level].max_chain,a.strstart=0,a.block_start=0,a.lookahead=0,a.insert=0,a.match_length=a.prev_length=2,a.match_available=0,a.ins_h=0),e},Ct=(t,e,a,i,n,s)=>{if(!t)return at;let r=1;if(e===st&&(e=6),i<0?(r=0,i=-i):i>15&&(r=2,i-=16),n<1||n>9||a!==ft||i<8||i>15||e<0||e>9||s<0||s>ht||8===i&&1!==r)return gt(t,at);8===i&&(i=9);const o=new Ft;return t.state=o,o.strm=t,o.status=wt,o.wrap=r,o.gzhead=null,o.w_bits=i,o.w_size=1<Ct(t,e,ft,15,8,dt),deflateInit2:Ct,deflateReset:Bt,deflateResetKeep:Nt,deflateSetHeader:(t,e)=>Lt(t)||2!==t.state.wrap?at:(t.state.gzhead=e,tt),deflate:(t,e)=>{if(Lt(t)||e>$||e<0)return t?gt(t,at):at;const a=t.state;if(!t.output||0!==t.avail_in&&!t.input||a.status===bt&&e!==V)return gt(t,0===t.avail_out?nt:at);const i=a.last_flush;if(a.last_flush=e,0!==a.pending){if(xt(t),0===t.avail_out)return a.last_flush=-1,tt}else if(0===t.avail_in&&pt(e)<=pt(i)&&e!==V)return gt(t,nt);if(a.status===bt&&0!==t.avail_in)return gt(t,nt);if(a.status===wt&&0===a.wrap&&(a.status=mt),a.status===wt){let e=ft+(a.w_bits-8<<4)<<8,i=-1;if(i=a.strategy>=ot||a.level<2?0:a.level<6?1:6===a.level?2:3,e|=i<<6,0!==a.strstart&&(e|=32),e+=31-e%31,Et(a,e),0!==a.strstart&&(Et(a,t.adler>>>16),Et(a,65535&t.adler)),t.adler=1,a.status=mt,xt(t),0!==a.pending)return a.last_flush=-1,tt}if(57===a.status)if(t.adler=0,At(a,31),At(a,139),At(a,8),a.gzhead)At(a,(a.gzhead.text?1:0)+(a.gzhead.hcrc?2:0)+(a.gzhead.extra?4:0)+(a.gzhead.name?8:0)+(a.gzhead.comment?16:0)),At(a,255&a.gzhead.time),At(a,a.gzhead.time>>8&255),At(a,a.gzhead.time>>16&255),At(a,a.gzhead.time>>24&255),At(a,9===a.level?2:a.strategy>=ot||a.level<2?4:0),At(a,255&a.gzhead.os),a.gzhead.extra&&a.gzhead.extra.length&&(At(a,255&a.gzhead.extra.length),At(a,a.gzhead.extra.length>>8&255)),a.gzhead.hcrc&&(t.adler=H(t.adler,a.pending_buf,a.pending,0)),a.gzindex=0,a.status=69;else if(At(a,0),At(a,0),At(a,0),At(a,0),At(a,0),At(a,9===a.level?2:a.strategy>=ot||a.level<2?4:0),At(a,3),a.status=mt,xt(t),0!==a.pending)return a.last_flush=-1,tt;if(69===a.status){if(a.gzhead.extra){let e=a.pending,i=(65535&a.gzhead.extra.length)-a.gzindex;for(;a.pending+i>a.pending_buf_size;){let n=a.pending_buf_size-a.pending;if(a.pending_buf.set(a.gzhead.extra.subarray(a.gzindex,a.gzindex+n),a.pending),a.pending=a.pending_buf_size,a.gzhead.hcrc&&a.pending>e&&(t.adler=H(t.adler,a.pending_buf,a.pending-e,e)),a.gzindex+=n,xt(t),0!==a.pending)return a.last_flush=-1,tt;e=0,i-=n}let n=new Uint8Array(a.gzhead.extra);a.pending_buf.set(n.subarray(a.gzindex,a.gzindex+i),a.pending),a.pending+=i,a.gzhead.hcrc&&a.pending>e&&(t.adler=H(t.adler,a.pending_buf,a.pending-e,e)),a.gzindex=0}a.status=73}if(73===a.status){if(a.gzhead.name){let e,i=a.pending;do{if(a.pending===a.pending_buf_size){if(a.gzhead.hcrc&&a.pending>i&&(t.adler=H(t.adler,a.pending_buf,a.pending-i,i)),xt(t),0!==a.pending)return a.last_flush=-1,tt;i=0}e=a.gzindexi&&(t.adler=H(t.adler,a.pending_buf,a.pending-i,i)),a.gzindex=0}a.status=91}if(91===a.status){if(a.gzhead.comment){let e,i=a.pending;do{if(a.pending===a.pending_buf_size){if(a.gzhead.hcrc&&a.pending>i&&(t.adler=H(t.adler,a.pending_buf,a.pending-i,i)),xt(t),0!==a.pending)return a.last_flush=-1,tt;i=0}e=a.gzindexi&&(t.adler=H(t.adler,a.pending_buf,a.pending-i,i))}a.status=103}if(103===a.status){if(a.gzhead.hcrc){if(a.pending+2>a.pending_buf_size&&(xt(t),0!==a.pending))return a.last_flush=-1,tt;At(a,255&t.adler),At(a,t.adler>>8&255),t.adler=0}if(a.status=mt,xt(t),0!==a.pending)return a.last_flush=-1,tt}if(0!==t.avail_in||0!==a.lookahead||e!==q&&a.status!==bt){let i=0===a.level?St(a,e):a.strategy===ot?((t,e)=>{let a;for(;;){if(0===t.lookahead&&(Ut(t),0===t.lookahead)){if(e===q)return 1;break}if(t.match_length=0,a=X(t,0,t.window[t.strstart]),t.lookahead--,t.strstart++,a&&(zt(t,!1),0===t.strm.avail_out))return 1}return t.insert=0,e===V?(zt(t,!0),0===t.strm.avail_out?3:4):t.sym_next&&(zt(t,!1),0===t.strm.avail_out)?1:2})(a,e):a.strategy===lt?((t,e)=>{let a,i,n,s;const r=t.window;for(;;){if(t.lookahead<=ct){if(Ut(t),t.lookahead<=ct&&e===q)return 1;if(0===t.lookahead)break}if(t.match_length=0,t.lookahead>=3&&t.strstart>0&&(n=t.strstart-1,i=r[n],i===r[++n]&&i===r[++n]&&i===r[++n])){s=t.strstart+ct;do{}while(i===r[++n]&&i===r[++n]&&i===r[++n]&&i===r[++n]&&i===r[++n]&&i===r[++n]&&i===r[++n]&&i===r[++n]&&nt.lookahead&&(t.match_length=t.lookahead)}if(t.match_length>=3?(a=X(t,1,t.match_length-3),t.lookahead-=t.match_length,t.strstart+=t.match_length,t.match_length=0):(a=X(t,0,t.window[t.strstart]),t.lookahead--,t.strstart++),a&&(zt(t,!1),0===t.strm.avail_out))return 1}return t.insert=0,e===V?(zt(t,!0),0===t.strm.avail_out?3:4):t.sym_next&&(zt(t,!1),0===t.strm.avail_out)?1:2})(a,e):It[a.level].func(a,e);if(3!==i&&4!==i||(a.status=bt),1===i||3===i)return 0===t.avail_out&&(a.last_flush=-1),tt;if(2===i&&(e===J?W(a):e!==$&&(Y(a,0,0,!1),e===Q&&(kt(a.head),0===a.lookahead&&(a.strstart=0,a.block_start=0,a.insert=0))),xt(t),0===t.avail_out))return a.last_flush=-1,tt}return e!==V?tt:a.wrap<=0?et:(2===a.wrap?(At(a,255&t.adler),At(a,t.adler>>8&255),At(a,t.adler>>16&255),At(a,t.adler>>24&255),At(a,255&t.total_in),At(a,t.total_in>>8&255),At(a,t.total_in>>16&255),At(a,t.total_in>>24&255)):(Et(a,t.adler>>>16),Et(a,65535&t.adler)),xt(t),a.wrap>0&&(a.wrap=-a.wrap),0!==a.pending?tt:et)},deflateEnd:t=>{if(Lt(t))return at;const e=t.state.status;return t.state=null,e===mt?gt(t,it):tt},deflateSetDictionary:(t,e)=>{let a=e.length;if(Lt(t))return at;const i=t.state,n=i.wrap;if(2===n||1===n&&i.status!==wt||i.lookahead)return at;if(1===n&&(t.adler=C(t.adler,e,a,0)),i.wrap=0,a>=i.w_size){0===n&&(kt(i.head),i.strstart=0,i.block_start=0,i.insert=0);let t=new Uint8Array(i.w_size);t.set(e.subarray(a-i.w_size,a),0),e=t,a=i.w_size}const s=t.avail_in,r=t.next_in,o=t.input;for(t.avail_in=a,t.next_in=0,t.input=e,Ut(i);i.lookahead>=3;){let t=i.strstart,e=i.lookahead-2;do{i.ins_h=yt(i,i.ins_h,i.window[t+3-1]),i.prev[t&i.w_mask]=i.head[i.ins_h],i.head[i.ins_h]=t,t++}while(--e);i.strstart=t,i.lookahead=2,Ut(i)}return i.strstart+=i.lookahead,i.block_start=i.strstart,i.insert=i.lookahead,i.lookahead=0,i.match_length=i.prev_length=2,i.match_available=0,t.next_in=r,t.input=o,t.avail_in=s,i.wrap=n,tt},deflateInfo:"pako deflate (from Nodeca project)"};const Ht=(t,e)=>Object.prototype.hasOwnProperty.call(t,e);var jt=function(t){const e=Array.prototype.slice.call(arguments,1);for(;e.length;){const a=e.shift();if(a){if("object"!=typeof a)throw new TypeError(a+"must be non-object");for(const e in a)Ht(a,e)&&(t[e]=a[e])}}return t},Kt=t=>{let e=0;for(let a=0,i=t.length;a=252?6:t>=248?5:t>=240?4:t>=224?3:t>=192?2:1;Yt[254]=Yt[254]=1;var Gt=t=>{if("function"==typeof TextEncoder&&TextEncoder.prototype.encode)return(new TextEncoder).encode(t);let e,a,i,n,s,r=t.length,o=0;for(n=0;n>>6,e[s++]=128|63&a):a<65536?(e[s++]=224|a>>>12,e[s++]=128|a>>>6&63,e[s++]=128|63&a):(e[s++]=240|a>>>18,e[s++]=128|a>>>12&63,e[s++]=128|a>>>6&63,e[s++]=128|63&a);return e},Xt=(t,e)=>{const a=e||t.length;if("function"==typeof TextDecoder&&TextDecoder.prototype.decode)return(new TextDecoder).decode(t.subarray(0,e));let i,n;const s=new Array(2*a);for(n=0,i=0;i4)s[n++]=65533,i+=r-1;else{for(e&=2===r?31:3===r?15:7;r>1&&i1?s[n++]=65533:e<65536?s[n++]=e:(e-=65536,s[n++]=55296|e>>10&1023,s[n++]=56320|1023&e)}}return((t,e)=>{if(e<65534&&t.subarray&&Pt)return String.fromCharCode.apply(null,t.length===e?t:t.subarray(0,e));let a="";for(let i=0;i{(e=e||t.length)>t.length&&(e=t.length);let a=e-1;for(;a>=0&&128==(192&t[a]);)a--;return a<0||0===a?e:a+Yt[t[a]]>e?a:e};var qt=function(){this.input=null,this.next_in=0,this.avail_in=0,this.total_in=0,this.output=null,this.next_out=0,this.avail_out=0,this.total_out=0,this.msg="",this.state=null,this.data_type=2,this.adler=0};const Jt=Object.prototype.toString,{Z_NO_FLUSH:Qt,Z_SYNC_FLUSH:Vt,Z_FULL_FLUSH:$t,Z_FINISH:te,Z_OK:ee,Z_STREAM_END:ae,Z_DEFAULT_COMPRESSION:ie,Z_DEFAULT_STRATEGY:ne,Z_DEFLATED:se}=K;function re(t){this.options=jt({level:ie,method:se,chunkSize:16384,windowBits:15,memLevel:8,strategy:ne},t||{});let e=this.options;e.raw&&e.windowBits>0?e.windowBits=-e.windowBits:e.gzip&&e.windowBits>0&&e.windowBits<16&&(e.windowBits+=16),this.err=0,this.msg="",this.ended=!1,this.chunks=[],this.strm=new qt,this.strm.avail_out=0;let a=Mt.deflateInit2(this.strm,e.level,e.method,e.windowBits,e.memLevel,e.strategy);if(a!==ee)throw new Error(j[a]);if(e.header&&Mt.deflateSetHeader(this.strm,e.header),e.dictionary){let t;if(t="string"==typeof e.dictionary?Gt(e.dictionary):"[object ArrayBuffer]"===Jt.call(e.dictionary)?new Uint8Array(e.dictionary):e.dictionary,a=Mt.deflateSetDictionary(this.strm,t),a!==ee)throw new Error(j[a]);this._dict_set=!0}}function oe(t,e){const a=new re(e);if(a.push(t,!0),a.err)throw a.msg||j[a.err];return a.result}re.prototype.push=function(t,e){const a=this.strm,i=this.options.chunkSize;let n,s;if(this.ended)return!1;for(s=e===~~e?e:!0===e?te:Qt,"string"==typeof t?a.input=Gt(t):"[object ArrayBuffer]"===Jt.call(t)?a.input=new Uint8Array(t):a.input=t,a.next_in=0,a.avail_in=a.input.length;;)if(0===a.avail_out&&(a.output=new Uint8Array(i),a.next_out=0,a.avail_out=i),(s===Vt||s===$t)&&a.avail_out<=6)this.onData(a.output.subarray(0,a.next_out)),a.avail_out=0;else{if(n=Mt.deflate(a,s),n===ae)return a.next_out>0&&this.onData(a.output.subarray(0,a.next_out)),n=Mt.deflateEnd(this.strm),this.onEnd(n),this.ended=!0,n===ee;if(0!==a.avail_out){if(s>0&&a.next_out>0)this.onData(a.output.subarray(0,a.next_out)),a.avail_out=0;else if(0===a.avail_in)break}else this.onData(a.output)}return!0},re.prototype.onData=function(t){this.chunks.push(t)},re.prototype.onEnd=function(t){t===ee&&(this.result=Kt(this.chunks)),this.chunks=[],this.err=t,this.msg=this.strm.msg};var le={Deflate:re,deflate:oe,deflateRaw:function(t,e){return(e=e||{}).raw=!0,oe(t,e)},gzip:function(t,e){return(e=e||{}).gzip=!0,oe(t,e)},constants:K};const he=16209;var de=function(t,e){let a,i,n,s,r,o,l,h,d,_,f,c,u,w,m,b,g,p,k,v,y,x,z,A;const E=t.state;a=t.next_in,z=t.input,i=a+(t.avail_in-5),n=t.next_out,A=t.output,s=n-(e-t.avail_out),r=n+(t.avail_out-257),o=E.dmax,l=E.wsize,h=E.whave,d=E.wnext,_=E.window,f=E.hold,c=E.bits,u=E.lencode,w=E.distcode,m=(1<>>24,f>>>=p,c-=p,p=g>>>16&255,0===p)A[n++]=65535&g;else{if(!(16&p)){if(0==(64&p)){g=u[(65535&g)+(f&(1<>>=p,c-=p),c<15&&(f+=z[a++]<>>24,f>>>=p,c-=p,p=g>>>16&255,!(16&p)){if(0==(64&p)){g=w[(65535&g)+(f&(1<o){t.msg="invalid distance too far back",E.mode=he;break t}if(f>>>=p,c-=p,p=n-s,v>p){if(p=v-p,p>h&&E.sane){t.msg="invalid distance too far back",E.mode=he;break t}if(y=0,x=_,0===d){if(y+=l-p,p2;)A[n++]=x[y++],A[n++]=x[y++],A[n++]=x[y++],k-=3;k&&(A[n++]=x[y++],k>1&&(A[n++]=x[y++]))}else{y=n-v;do{A[n++]=A[y++],A[n++]=A[y++],A[n++]=A[y++],k-=3}while(k>2);k&&(A[n++]=A[y++],k>1&&(A[n++]=A[y++]))}break}}break}}while(a>3,a-=k,c-=k<<3,f&=(1<{const l=o.bits;let h,d,_,f,c,u,w=0,m=0,b=0,g=0,p=0,k=0,v=0,y=0,x=0,z=0,A=null;const E=new Uint16Array(16),R=new Uint16Array(16);let Z,U,S,D=null;for(w=0;w<=_e;w++)E[w]=0;for(m=0;m=1&&0===E[g];g--);if(p>g&&(p=g),0===g)return n[s++]=20971520,n[s++]=20971520,o.bits=1,0;for(b=1;b0&&(0===t||1!==g))return-1;for(R[1]=0,w=1;w<_e;w++)R[w+1]=R[w]+E[w];for(m=0;m852||2===t&&x>592)return 1;for(;;){Z=w-v,r[m]+1=u?(U=D[r[m]-u],S=A[r[m]-u]):(U=96,S=0),h=1<>v)+d]=Z<<24|U<<16|S|0}while(0!==d);for(h=1<>=1;if(0!==h?(z&=h-1,z+=h):z=0,m++,0==--E[w]){if(w===g)break;w=e[a+r[m]]}if(w>p&&(z&f)!==_){for(0===v&&(v=p),c+=b,k=w-v,y=1<852||2===t&&x>592)return 1;_=z&f,n[_]=p<<24|k<<16|c-s|0}}return 0!==z&&(n[c+z]=w-v<<24|64<<16|0),o.bits=p,0};const{Z_FINISH:be,Z_BLOCK:ge,Z_TREES:pe,Z_OK:ke,Z_STREAM_END:ve,Z_NEED_DICT:ye,Z_STREAM_ERROR:xe,Z_DATA_ERROR:ze,Z_MEM_ERROR:Ae,Z_BUF_ERROR:Ee,Z_DEFLATED:Re}=K,Ze=16180,Ue=16190,Se=16191,De=16192,Te=16194,Oe=16199,Ie=16200,Fe=16206,Le=16209,Ne=t=>(t>>>24&255)+(t>>>8&65280)+((65280&t)<<8)+((255&t)<<24);function Be(){this.strm=null,this.mode=0,this.last=!1,this.wrap=0,this.havedict=!1,this.flags=0,this.dmax=0,this.check=0,this.total=0,this.head=null,this.wbits=0,this.wsize=0,this.whave=0,this.wnext=0,this.window=null,this.hold=0,this.bits=0,this.length=0,this.offset=0,this.extra=0,this.lencode=null,this.distcode=null,this.lenbits=0,this.distbits=0,this.ncode=0,this.nlen=0,this.ndist=0,this.have=0,this.next=null,this.lens=new Uint16Array(320),this.work=new Uint16Array(288),this.lendyn=null,this.distdyn=null,this.sane=0,this.back=0,this.was=0}const Ce=t=>{if(!t)return 1;const e=t.state;return!e||e.strm!==t||e.mode16211?1:0},Me=t=>{if(Ce(t))return xe;const e=t.state;return t.total_in=t.total_out=e.total=0,t.msg="",e.wrap&&(t.adler=1&e.wrap),e.mode=Ze,e.last=0,e.havedict=0,e.flags=-1,e.dmax=32768,e.head=null,e.hold=0,e.bits=0,e.lencode=e.lendyn=new Int32Array(852),e.distcode=e.distdyn=new Int32Array(592),e.sane=1,e.back=-1,ke},He=t=>{if(Ce(t))return xe;const e=t.state;return e.wsize=0,e.whave=0,e.wnext=0,Me(t)},je=(t,e)=>{let a;if(Ce(t))return xe;const i=t.state;return e<0?(a=0,e=-e):(a=5+(e>>4),e<48&&(e&=15)),e&&(e<8||e>15)?xe:(null!==i.window&&i.wbits!==e&&(i.window=null),i.wrap=a,i.wbits=e,He(t))},Ke=(t,e)=>{if(!t)return xe;const a=new Be;t.state=a,a.strm=t,a.window=null,a.mode=Ze;const i=je(t,e);return i!==ke&&(t.state=null),i};let Pe,Ye,Ge=!0;const Xe=t=>{if(Ge){Pe=new Int32Array(512),Ye=new Int32Array(32);let e=0;for(;e<144;)t.lens[e++]=8;for(;e<256;)t.lens[e++]=9;for(;e<280;)t.lens[e++]=7;for(;e<288;)t.lens[e++]=8;for(me(1,t.lens,0,288,Pe,0,t.work,{bits:9}),e=0;e<32;)t.lens[e++]=5;me(2,t.lens,0,32,Ye,0,t.work,{bits:5}),Ge=!1}t.lencode=Pe,t.lenbits=9,t.distcode=Ye,t.distbits=5},We=(t,e,a,i)=>{let n;const s=t.state;return null===s.window&&(s.wsize=1<=s.wsize?(s.window.set(e.subarray(a-s.wsize,a),0),s.wnext=0,s.whave=s.wsize):(n=s.wsize-s.wnext,n>i&&(n=i),s.window.set(e.subarray(a-i,a-i+n),s.wnext),(i-=n)?(s.window.set(e.subarray(a-i,a),0),s.wnext=i,s.whave=s.wsize):(s.wnext+=n,s.wnext===s.wsize&&(s.wnext=0),s.whaveKe(t,15),inflateInit2:Ke,inflate:(t,e)=>{let a,i,n,s,r,o,l,h,d,_,f,c,u,w,m,b,g,p,k,v,y,x,z=0;const A=new Uint8Array(4);let E,R;const Z=new Uint8Array([16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15]);if(Ce(t)||!t.output||!t.input&&0!==t.avail_in)return xe;a=t.state,a.mode===Se&&(a.mode=De),r=t.next_out,n=t.output,l=t.avail_out,s=t.next_in,i=t.input,o=t.avail_in,h=a.hold,d=a.bits,_=o,f=l,x=ke;t:for(;;)switch(a.mode){case Ze:if(0===a.wrap){a.mode=De;break}for(;d<16;){if(0===o)break t;o--,h+=i[s++]<>>8&255,a.check=H(a.check,A,2,0),h=0,d=0,a.mode=16181;break}if(a.head&&(a.head.done=!1),!(1&a.wrap)||(((255&h)<<8)+(h>>8))%31){t.msg="incorrect header check",a.mode=Le;break}if((15&h)!==Re){t.msg="unknown compression method",a.mode=Le;break}if(h>>>=4,d-=4,y=8+(15&h),0===a.wbits&&(a.wbits=y),y>15||y>a.wbits){t.msg="invalid window size",a.mode=Le;break}a.dmax=1<>8&1),512&a.flags&&4&a.wrap&&(A[0]=255&h,A[1]=h>>>8&255,a.check=H(a.check,A,2,0)),h=0,d=0,a.mode=16182;case 16182:for(;d<32;){if(0===o)break t;o--,h+=i[s++]<>>8&255,A[2]=h>>>16&255,A[3]=h>>>24&255,a.check=H(a.check,A,4,0)),h=0,d=0,a.mode=16183;case 16183:for(;d<16;){if(0===o)break t;o--,h+=i[s++]<>8),512&a.flags&&4&a.wrap&&(A[0]=255&h,A[1]=h>>>8&255,a.check=H(a.check,A,2,0)),h=0,d=0,a.mode=16184;case 16184:if(1024&a.flags){for(;d<16;){if(0===o)break t;o--,h+=i[s++]<>>8&255,a.check=H(a.check,A,2,0)),h=0,d=0}else a.head&&(a.head.extra=null);a.mode=16185;case 16185:if(1024&a.flags&&(c=a.length,c>o&&(c=o),c&&(a.head&&(y=a.head.extra_len-a.length,a.head.extra||(a.head.extra=new Uint8Array(a.head.extra_len)),a.head.extra.set(i.subarray(s,s+c),y)),512&a.flags&&4&a.wrap&&(a.check=H(a.check,i,c,s)),o-=c,s+=c,a.length-=c),a.length))break t;a.length=0,a.mode=16186;case 16186:if(2048&a.flags){if(0===o)break t;c=0;do{y=i[s+c++],a.head&&y&&a.length<65536&&(a.head.name+=String.fromCharCode(y))}while(y&&c>9&1,a.head.done=!0),t.adler=a.check=0,a.mode=Se;break;case 16189:for(;d<32;){if(0===o)break t;o--,h+=i[s++]<>>=7&d,d-=7&d,a.mode=Fe;break}for(;d<3;){if(0===o)break t;o--,h+=i[s++]<>>=1,d-=1,3&h){case 0:a.mode=16193;break;case 1:if(Xe(a),a.mode=Oe,e===pe){h>>>=2,d-=2;break t}break;case 2:a.mode=16196;break;case 3:t.msg="invalid block type",a.mode=Le}h>>>=2,d-=2;break;case 16193:for(h>>>=7&d,d-=7&d;d<32;){if(0===o)break t;o--,h+=i[s++]<>>16^65535)){t.msg="invalid stored block lengths",a.mode=Le;break}if(a.length=65535&h,h=0,d=0,a.mode=Te,e===pe)break t;case Te:a.mode=16195;case 16195:if(c=a.length,c){if(c>o&&(c=o),c>l&&(c=l),0===c)break t;n.set(i.subarray(s,s+c),r),o-=c,s+=c,l-=c,r+=c,a.length-=c;break}a.mode=Se;break;case 16196:for(;d<14;){if(0===o)break t;o--,h+=i[s++]<>>=5,d-=5,a.ndist=1+(31&h),h>>>=5,d-=5,a.ncode=4+(15&h),h>>>=4,d-=4,a.nlen>286||a.ndist>30){t.msg="too many length or distance symbols",a.mode=Le;break}a.have=0,a.mode=16197;case 16197:for(;a.have>>=3,d-=3}for(;a.have<19;)a.lens[Z[a.have++]]=0;if(a.lencode=a.lendyn,a.lenbits=7,E={bits:a.lenbits},x=me(0,a.lens,0,19,a.lencode,0,a.work,E),a.lenbits=E.bits,x){t.msg="invalid code lengths set",a.mode=Le;break}a.have=0,a.mode=16198;case 16198:for(;a.have>>24,b=z>>>16&255,g=65535&z,!(m<=d);){if(0===o)break t;o--,h+=i[s++]<>>=m,d-=m,a.lens[a.have++]=g;else{if(16===g){for(R=m+2;d>>=m,d-=m,0===a.have){t.msg="invalid bit length repeat",a.mode=Le;break}y=a.lens[a.have-1],c=3+(3&h),h>>>=2,d-=2}else if(17===g){for(R=m+3;d>>=m,d-=m,y=0,c=3+(7&h),h>>>=3,d-=3}else{for(R=m+7;d>>=m,d-=m,y=0,c=11+(127&h),h>>>=7,d-=7}if(a.have+c>a.nlen+a.ndist){t.msg="invalid bit length repeat",a.mode=Le;break}for(;c--;)a.lens[a.have++]=y}}if(a.mode===Le)break;if(0===a.lens[256]){t.msg="invalid code -- missing end-of-block",a.mode=Le;break}if(a.lenbits=9,E={bits:a.lenbits},x=me(1,a.lens,0,a.nlen,a.lencode,0,a.work,E),a.lenbits=E.bits,x){t.msg="invalid literal/lengths set",a.mode=Le;break}if(a.distbits=6,a.distcode=a.distdyn,E={bits:a.distbits},x=me(2,a.lens,a.nlen,a.ndist,a.distcode,0,a.work,E),a.distbits=E.bits,x){t.msg="invalid distances set",a.mode=Le;break}if(a.mode=Oe,e===pe)break t;case Oe:a.mode=Ie;case Ie:if(o>=6&&l>=258){t.next_out=r,t.avail_out=l,t.next_in=s,t.avail_in=o,a.hold=h,a.bits=d,de(t,f),r=t.next_out,n=t.output,l=t.avail_out,s=t.next_in,i=t.input,o=t.avail_in,h=a.hold,d=a.bits,a.mode===Se&&(a.back=-1);break}for(a.back=0;z=a.lencode[h&(1<>>24,b=z>>>16&255,g=65535&z,!(m<=d);){if(0===o)break t;o--,h+=i[s++]<>p)],m=z>>>24,b=z>>>16&255,g=65535&z,!(p+m<=d);){if(0===o)break t;o--,h+=i[s++]<>>=p,d-=p,a.back+=p}if(h>>>=m,d-=m,a.back+=m,a.length=g,0===b){a.mode=16205;break}if(32&b){a.back=-1,a.mode=Se;break}if(64&b){t.msg="invalid literal/length code",a.mode=Le;break}a.extra=15&b,a.mode=16201;case 16201:if(a.extra){for(R=a.extra;d>>=a.extra,d-=a.extra,a.back+=a.extra}a.was=a.length,a.mode=16202;case 16202:for(;z=a.distcode[h&(1<>>24,b=z>>>16&255,g=65535&z,!(m<=d);){if(0===o)break t;o--,h+=i[s++]<>p)],m=z>>>24,b=z>>>16&255,g=65535&z,!(p+m<=d);){if(0===o)break t;o--,h+=i[s++]<>>=p,d-=p,a.back+=p}if(h>>>=m,d-=m,a.back+=m,64&b){t.msg="invalid distance code",a.mode=Le;break}a.offset=g,a.extra=15&b,a.mode=16203;case 16203:if(a.extra){for(R=a.extra;d>>=a.extra,d-=a.extra,a.back+=a.extra}if(a.offset>a.dmax){t.msg="invalid distance too far back",a.mode=Le;break}a.mode=16204;case 16204:if(0===l)break t;if(c=f-l,a.offset>c){if(c=a.offset-c,c>a.whave&&a.sane){t.msg="invalid distance too far back",a.mode=Le;break}c>a.wnext?(c-=a.wnext,u=a.wsize-c):u=a.wnext-c,c>a.length&&(c=a.length),w=a.window}else w=n,u=r-a.offset,c=a.length;c>l&&(c=l),l-=c,a.length-=c;do{n[r++]=w[u++]}while(--c);0===a.length&&(a.mode=Ie);break;case 16205:if(0===l)break t;n[r++]=a.length,l--,a.mode=Ie;break;case Fe:if(a.wrap){for(;d<32;){if(0===o)break t;o--,h|=i[s++]<{if(Ce(t))return xe;let e=t.state;return e.window&&(e.window=null),t.state=null,ke},inflateGetHeader:(t,e)=>{if(Ce(t))return xe;const a=t.state;return 0==(2&a.wrap)?xe:(a.head=e,e.done=!1,ke)},inflateSetDictionary:(t,e)=>{const a=e.length;let i,n,s;return Ce(t)?xe:(i=t.state,0!==i.wrap&&i.mode!==Ue?xe:i.mode===Ue&&(n=1,n=C(n,e,a,0),n!==i.check)?ze:(s=We(t,e,a,a),s?(i.mode=16210,Ae):(i.havedict=1,ke)))},inflateInfo:"pako inflate (from Nodeca project)"};var Je=function(){this.text=0,this.time=0,this.xflags=0,this.os=0,this.extra=null,this.extra_len=0,this.name="",this.comment="",this.hcrc=0,this.done=!1};const Qe=Object.prototype.toString,{Z_NO_FLUSH:Ve,Z_FINISH:$e,Z_OK:ta,Z_STREAM_END:ea,Z_NEED_DICT:aa,Z_STREAM_ERROR:ia,Z_DATA_ERROR:na,Z_MEM_ERROR:sa}=K;function ra(t){this.options=jt({chunkSize:65536,windowBits:15,to:""},t||{});const e=this.options;e.raw&&e.windowBits>=0&&e.windowBits<16&&(e.windowBits=-e.windowBits,0===e.windowBits&&(e.windowBits=-15)),!(e.windowBits>=0&&e.windowBits<16)||t&&t.windowBits||(e.windowBits+=32),e.windowBits>15&&e.windowBits<48&&0==(15&e.windowBits)&&(e.windowBits|=15),this.err=0,this.msg="",this.ended=!1,this.chunks=[],this.strm=new qt,this.strm.avail_out=0;let a=qe.inflateInit2(this.strm,e.windowBits);if(a!==ta)throw new Error(j[a]);if(this.header=new Je,qe.inflateGetHeader(this.strm,this.header),e.dictionary&&("string"==typeof e.dictionary?e.dictionary=Gt(e.dictionary):"[object ArrayBuffer]"===Qe.call(e.dictionary)&&(e.dictionary=new Uint8Array(e.dictionary)),e.raw&&(a=qe.inflateSetDictionary(this.strm,e.dictionary),a!==ta)))throw new Error(j[a])}function oa(t,e){const a=new ra(e);if(a.push(t),a.err)throw a.msg||j[a.err];return a.result}ra.prototype.push=function(t,e){const a=this.strm,i=this.options.chunkSize,n=this.options.dictionary;let s,r,o;if(this.ended)return!1;for(r=e===~~e?e:!0===e?$e:Ve,"[object ArrayBuffer]"===Qe.call(t)?a.input=new Uint8Array(t):a.input=t,a.next_in=0,a.avail_in=a.input.length;;){for(0===a.avail_out&&(a.output=new Uint8Array(i),a.next_out=0,a.avail_out=i),s=qe.inflate(a,r),s===aa&&n&&(s=qe.inflateSetDictionary(a,n),s===ta?s=qe.inflate(a,r):s===na&&(s=aa));a.avail_in>0&&s===ea&&a.state.wrap>0&&0!==t[a.next_in];)qe.inflateReset(a),s=qe.inflate(a,r);switch(s){case ia:case na:case aa:case sa:return this.onEnd(s),this.ended=!0,!1}if(o=a.avail_out,a.next_out&&(0===a.avail_out||s===ea))if("string"===this.options.to){let t=Wt(a.output,a.next_out),e=a.next_out-t,n=Xt(a.output,t);a.next_out=e,a.avail_out=i-e,e&&a.output.set(a.output.subarray(t,t+e),0),this.onData(n)}else this.onData(a.output.length===a.next_out?a.output:a.output.subarray(0,a.next_out));if(s!==ta||0!==o){if(s===ea)return s=qe.inflateEnd(this.strm),this.onEnd(s),this.ended=!0,!0;if(0===a.avail_in)break}}return!0},ra.prototype.onData=function(t){this.chunks.push(t)},ra.prototype.onEnd=function(t){t===ta&&("string"===this.options.to?this.result=this.chunks.join(""):this.result=Kt(this.chunks)),this.chunks=[],this.err=t,this.msg=this.strm.msg};var la={Inflate:ra,inflate:oa,inflateRaw:function(t,e){return(e=e||{}).raw=!0,oa(t,e)},ungzip:oa,constants:K};const{Deflate:ha,deflate:da,deflateRaw:_a,gzip:fa}=le,{Inflate:ca,inflate:ua,inflateRaw:wa,ungzip:ma}=la;var ba=ha,ga=da,pa=_a,ka=fa,va=ca,ya=ua,xa=wa,za=ma,Aa=K,Ea={Deflate:ba,deflate:ga,deflateRaw:pa,gzip:ka,Inflate:va,inflate:ya,inflateRaw:xa,ungzip:za,constants:Aa};t.Deflate=ba,t.Inflate=va,t.constants=Aa,t.default=Ea,t.deflate=ga,t.deflateRaw=pa,t.gzip=ka,t.inflate=ya,t.inflateRaw=xa,t.ungzip=za,Object.defineProperty(t,"__esModule",{value:!0})}));'},815:(e,t,n)=>{n(642)(n(842))},842:e=>{e.exports='(function(global,factory){typeof exports==="object"&&typeof module!=="undefined"?factory(exports):typeof define==="function"&&define.amd?define(["exports"],factory):(global=typeof globalThis!=="undefined"?globalThis:global||self,factory(global.jinja={}))})(this,function(jinja){"use strict";var STRINGS=/\'(\\\\.|[^\'])*\'|"(\\\\.|[^"\'"])*"/g;var IDENTS_AND_NUMS=/([$_a-z][$\\w]*)|([+-]?\\d+(\\.\\d+)?)/g;var NUMBER=/^[+-]?\\d+(\\.\\d+)?$/;var NON_PRIMITIVES=/\\[[@#~](,[@#~])*\\]|\\[\\]|\\{([@i]:[@#~])(,[@i]:[@#~])*\\}|\\{\\}/g;var IDENTIFIERS=/[$_a-z][$\\w]*/gi;var VARIABLES=/i(\\.i|\\[[@#i]\\])*/g;var ACCESSOR=/(\\.i|\\[[@#i]\\])/g;var OPERATORS=/(===?|!==?|>=?|<=?|&&|\\|\\||[+\\-\\*\\/%])/g;var EOPS=/(^|[^$\\w])(and|or|not|is|isnot)([^$\\w]|$)/g;var LEADING_SPACE=/^\\s+/;var TRAILING_SPACE=/\\s+$/;var START_TOKEN=/\\{\\{\\{|\\{\\{|\\{%|\\{#/;var TAGS={"{{{":/^(\'(\\\\.|[^\'])*\'|"(\\\\.|[^"\'"])*"|.)+?\\}\\}\\}/,"{{":/^(\'(\\\\.|[^\'])*\'|"(\\\\.|[^"\'"])*"|.)+?\\}\\}/,"{%":/^(\'(\\\\.|[^\'])*\'|"(\\\\.|[^"\'"])*"|.)+?%\\}/,"{#":/^(\'(\\\\.|[^\'])*\'|"(\\\\.|[^"\'"])*"|.)+?#\\}/};var delimeters={"{%":"directive","{{":"output","{#":"comment"};var operators={and:"&&",or:"||",not:"!",is:"==",isnot:"!="};var constants={true:true,false:false,null:null};function Parser(){this.nest=[];this.compiled=[];this.childBlocks=0;this.parentBlocks=0;this.isSilent=false}Parser.prototype.push=function(line){if(!this.isSilent){this.compiled.push(line)}};Parser.prototype.parse=function(src){this.tokenize(src);return this.compiled};Parser.prototype.tokenize=function(src){var lastEnd=0,parser=this,trimLeading=false;matchAll(src,START_TOKEN,function(open,index,src){var match=src.slice(index+open.length).match(TAGS[open]);match=match?match[0]:"";var simplified=match.replace(STRINGS,"@");if(!match||~simplified.indexOf(open)){return index+1}var inner=match.slice(0,0-open.length);if(inner.charAt(0)==="-")var wsCollapseLeft=true;if(inner.slice(-1)==="-")var wsCollapseRight=true;inner=inner.replace(/^-|-$/g,"").trim();if(parser.rawMode&&open+inner!=="{%endraw"){return index+1}var text=src.slice(lastEnd,index);lastEnd=index+open.length+match.length;if(trimLeading)text=trimLeft(text);if(wsCollapseLeft)text=trimRight(text);if(wsCollapseRight)trimLeading=true;if(open==="{{{"){open="{{";inner+="|safe"}parser.textHandler(text);parser.tokenHandler(open,inner)});var text=src.slice(lastEnd);if(trimLeading)text=trimLeft(text);this.textHandler(text)};Parser.prototype.textHandler=function(text){this.push("write("+JSON.stringify(text)+");")};Parser.prototype.tokenHandler=function(open,inner){var type=delimeters[open];if(type==="directive"){this.compileTag(inner)}else if(type==="output"){var extracted=this.extractEnt(inner,STRINGS,"@");extracted.src=extracted.src.replace(/\\|\\|/g,"~").split("|");extracted.src=extracted.src.map(function(part){return part.split("~").join("||")});var parts=this.injectEnt(extracted,"@");if(parts.length>1){var filters=parts.slice(1).map(this.parseFilter.bind(this));this.push("filter("+this.parseExpr(parts[0])+","+filters.join(",")+");")}else{this.push("filter("+this.parseExpr(parts[0])+");")}}};Parser.prototype.compileTag=function(str){var directive=str.split(" ")[0];var handler=tagHandlers[directive];if(!handler){throw new Error("Invalid tag: "+str)}handler.call(this,str.slice(directive.length).trim())};Parser.prototype.parseFilter=function(src){src=src.trim();var match=src.match(/[:(]/);var i=match?match.index:-1;if(i<0)return JSON.stringify([src]);var name=src.slice(0,i);var args=src.charAt(i)===":"?src.slice(i+1):src.slice(i+1,-1);args=this.parseExpr(args,{terms:true});return"["+JSON.stringify(name)+","+args+"]"};Parser.prototype.extractEnt=function(src,regex,placeholder){var subs=[],isFunc=typeof placeholder=="function";src=src.replace(regex,function(str){var replacement=isFunc?placeholder(str):placeholder;if(replacement){subs.push(str);return replacement}return str});return{src:src,subs:subs}};Parser.prototype.injectEnt=function(extracted,placeholder){var src=extracted.src,subs=extracted.subs,isArr=Array.isArray(src);var arr=isArr?src:[src];var re=new RegExp("["+placeholder+"]","g"),i=0;arr.forEach(function(src,index){arr[index]=src.replace(re,function(){return subs[i++]})});return isArr?arr:arr[0]};Parser.prototype.replaceComplex=function(s){var parsed=this.extractEnt(s,/i(\\.i|\\[[@#i]\\])+/g,"v");parsed.src=parsed.src.replace(NON_PRIMITIVES,"~");return this.injectEnt(parsed,"v")};Parser.prototype.parseExpr=function(src,opts){opts=opts||{};var parsed1=this.extractEnt(src,STRINGS,"@");parsed1.src=parsed1.src.replace(EOPS,function(s,before,op,after){return op in operators?before+operators[op]+after:s});var parsed2=this.extractEnt(parsed1.src,IDENTS_AND_NUMS,function(s){return s in constants||NUMBER.test(s)?"#":null});var parsed3=this.extractEnt(parsed2.src,IDENTIFIERS,"i");parsed3.src=parsed3.src.replace(/\\s+/g,"");var simplified=parsed3.src;while(simplified!==(simplified=this.replaceComplex(simplified)));while(simplified!==(simplified=simplified.replace(/i(\\.i|\\[[@#i]\\])+/,"v")));simplified=simplified.replace(/[iv]\\[v?\\]/g,"x");simplified=simplified.replace(/[@#~v]/g,"i");simplified=simplified.replace(OPERATORS,"%");simplified=simplified.replace(/!+[i]/g,"i");var terms=opts.terms?simplified.split(","):[simplified];terms.forEach(function(term){while(term!==(term=term.replace(/\\(i(%i)*\\)/g,"i")));if(!term.match(/^i(%i)*/)){throw new Error("Invalid expression: "+src+" "+term)}});parsed3.src=parsed3.src.replace(VARIABLES,this.parseVar.bind(this));parsed2.src=this.injectEnt(parsed3,"i");parsed1.src=this.injectEnt(parsed2,"#");return this.injectEnt(parsed1,"@")};Parser.prototype.parseVar=function(src){var args=Array.prototype.slice.call(arguments);var str=args.pop(),index=args.pop();if(src==="i"&&str.charAt(index+1)===":"){return\'"i"\'}var parts=[\'"i"\'];src.replace(ACCESSOR,function(part){if(part===".i"){parts.push(\'"i"\')}else if(part==="[i]"){parts.push(\'get("i")\')}else{parts.push(part.slice(1,-1))}});return"get("+parts.join(",")+")"};Parser.prototype.escName=function(str){return str.replace(/\\W/g,function(s){return"$"+s.charCodeAt(0).toString(16)})};Parser.prototype.parseQuoted=function(str){if(str.charAt(0)==="\'"){str=str.slice(1,-1).replace(/\\\\.|"/,function(s){if(s==="\\\\\'")return"\'";return s.charAt(0)==="\\\\"?s:"\\\\"+s});str=\'"\'+str+\'"\'}return JSON.parse(str)};var tagHandlers={if:function(expr){this.push("if ("+this.parseExpr(expr)+") {");this.nest.unshift("if")},else:function(){if(this.nest[0]==="for"){this.push("}, function() {")}else{this.push("} else {")}},elseif:function(expr){this.push("} else if ("+this.parseExpr(expr)+") {")},endif:function(){this.nest.shift();this.push("}")},for:function(str){var i=str.indexOf(" in ");var name=str.slice(0,i).trim();var expr=str.slice(i+4).trim();this.push("each("+this.parseExpr(expr)+","+JSON.stringify(name)+",function() {");this.nest.unshift("for")},endfor:function(){this.nest.shift();this.push("});")},raw:function(){this.rawMode=true},endraw:function(){this.rawMode=false},set:function(stmt){var i=stmt.indexOf("=");var name=stmt.slice(0,i).trim();var expr=stmt.slice(i+1).trim();this.push("set("+JSON.stringify(name)+","+this.parseExpr(expr)+");")},block:function(name){if(this.isParent){++this.parentBlocks;var blockName="block_"+(this.escName(name)||this.parentBlocks);this.push("block(typeof "+blockName+\' == "function" ? \'+blockName+" : function() {")}else if(this.hasParent){this.isSilent=false;++this.childBlocks;blockName="block_"+(this.escName(name)||this.childBlocks);this.push("function "+blockName+"() {")}this.nest.unshift("block")},endblock:function(){this.nest.shift();if(this.isParent){this.push("});")}else if(this.hasParent){this.push("}");this.isSilent=true}},extends:function(name){name=this.parseQuoted(name);var parentSrc=this.readTemplateFile(name);this.isParent=true;this.tokenize(parentSrc);this.isParent=false;this.hasParent=true;this.isSilent=true},include:function(name){name=this.parseQuoted(name);var incSrc=this.readTemplateFile(name);this.isInclude=true;this.tokenize(incSrc);this.isInclude=false}};tagHandlers.assign=tagHandlers.set;tagHandlers.elif=tagHandlers.elseif;var getRuntime=function runtime(data,opts){var defaults={autoEscape:"toJson"};var _toString=Object.prototype.toString;var _hasOwnProperty=Object.prototype.hasOwnProperty;var getKeys=Object.keys||function(obj){var keys=[];for(var n in obj)if(_hasOwnProperty.call(obj,n))keys.push(n);return keys};var isArray=Array.isArray||function(obj){return _toString.call(obj)==="[object Array]"};var create=Object.create||function(obj){function F(){}F.prototype=obj;return new F};var toString=function(val){if(val==null)return"";return typeof val.toString=="function"?val.toString():_toString.call(val)};var extend=function(dest,src){var keys=getKeys(src);for(var i=0,len=keys.length;i").join(">").split(\'"\').join(""")},safe:function(val){return val},toJson:function(val){if(typeof val==="object"){return JSON.stringify(val)}return toString(val)}},opts.filters||{});var stack=[create(data||{})],output=[];return{get:get,set:set,push:push,pop:pop,write:write,filter:filter,each:each,block:block,render:render}};var runtime;jinja.compile=function(markup,opts){opts=opts||{};var parser=new Parser;parser.readTemplateFile=this.readTemplateFile;var code=[];code.push("function render($) {");code.push("var get = $.get, set = $.set, push = $.push, pop = $.pop, write = $.write, filter = $.filter, each = $.each, block = $.block;");code.push.apply(code,parser.parse(markup));code.push("return $.render();");code.push("}");code=code.join("\\n");if(opts.runtime===false){var fn=new Function("data","options","return ("+code+")(runtime(data, options))")}else{runtime=runtime||(runtime=getRuntime.toString());fn=new Function("data","options","return ("+code+")(("+runtime+")(data, options))")}return{render:fn}};jinja.render=function(markup,data,opts){var tmpl=jinja.compile(markup);return tmpl.render(data,opts)};jinja.templateFiles=[];jinja.readTemplateFile=function(name){var templateFiles=this.templateFiles||[];var templateFile=templateFiles[name];if(templateFile==null){throw new Error("Template file not found: "+name)}return templateFile};function trimLeft(str){return str.replace(LEADING_SPACE,"")}function trimRight(str){return str.replace(TRAILING_SPACE,"")}function matchAll(str,reg,fn){reg=new RegExp(reg.source,"g"+(reg.ignoreCase?"i":"")+(reg.multiline?"m":""));var match;while(match=reg.exec(str)){var result=fn(match[0],match.index,str);if(typeof result=="number"){reg.lastIndex=result}}}});'},856:(e,t,n)=>{n(642)(n(955))},906:e=>{e.exports='(function(root,factory){if(typeof exports==="object"){module.exports=exports=factory()}else if(typeof define==="function"&&define.amd){define([],factory)}else{globalThis.WebAssembly=factory()}})(this,function(){var ge=new ArrayBuffer(8),ke=new Float32Array(ge),Ee=new Float64Array(ge),Ae=new Int32Array(ge),Ge=new BigInt64Array(ge),Se=new BigUint64Array(ge),ve=new WeakMap,Je=[],xe=class{},te={U(n,l){return(n<0||n===0&&Object.is(n,-0))!==(l<0||l===0&&Object.is(l,-0))?-n:n},d(n){return Se[0]=n,Ge[0]},H(n){return ke[0]=n,Ae[0]},Q(n){return Ae[0]=n,ke[0]},W(n){return Ee[0]=n,Se[0]},q(n){return Se[0]=n,Ee[0]},N(n,l){return n<>>32-l},D(n,l){return n>>>l|n<<32-l},V(n,l){return(n<>64n-l)&0xffffffffffffffffn},j(n,l){return(n>>l|n<<64n-l)&0xffffffffffffffffn},G(n){return n?Math.clz32(n&-n)^31:32},J(n){let l=0;for(;n;)l++,n&=n-1;return l},K(n){let l=Math.clz32(Number(n>>32n&0xffffffffn));return l===32&&(l+=Math.clz32(Number(n&0xffffffffn))),BigInt(l)},Z(n){let l=Number(n&0xffffffffn);return l?BigInt(Math.clz32(l&-l)^31):(l=Number(n>>32n&0xffffffffn),l?BigInt(32+Math.clz32(l&-l)^31):64n)},X(n){let l=0n;for(;n;)l++,n&=n-1n;return l},P(n){return n=Math.trunc(n),n>=2147483647?2147483647:n<=-2147483648?-2147483648:n|0},O(n){return n=Math.trunc(n),n>=4294967295?-1:n<=0?0:n|0},I(n){return n=Math.trunc(n),n>=0x8000000000000000?0x7fffffffffffffffn:n<=-0x8000000000000000?0x8000000000000000n:n===n?BigInt(n)&0xffffffffffffffffn:0n},T(n){return n=Math.trunc(n),n>=0x10000000000000000?0xffffffffffffffffn:n>0?BigInt(n):0n},Y(n){return n&0x80n?n|0xffffffffffffff00n:n&0xffn},ee(n){return n&0x8000n?n|0xffffffffffff0000n:n&0xffffn},te(n){return n&0x80000000n?n|0xffffffff00000000n:n&0xffffffffn},B(n,l,u,y,O){n===l?l.copyWithin(u,y,y+O):l.set(n.subarray(y,y+O),u)},z(n,l,u,y,O){if(u>>>=0,y>>>=0,O>>>=0,y+O>l.length||u+O>n.length)throw RangeError();if(u<=y)for(let p=0;p=0;p--)n[u+p]=l[y+p]},w(n,l,u){let y=n.length;if(u>>>=0,y+u>n.ae)return-1;for(let O=0;O>>=0,y>>>=0,l+y>n.length)throw RangeError();for(let O=0;O1){p=`let r=${p};`;for(let x=0;x{${p}}`)(n,this),n)}return n.p}};var Le=n=>typeof n=="string"?n>="P"&&n<="S":n?typeof n[0]!="string"&&n[0]<0:!1;var Ue=[{e:[["$",40,41,42,43,44,45,46,47,48,49,50,51,52,53],[106,"x",[65,"Q"]],"P","R"],t:["$","x",[-2,"P","Q"],"R"]},{e:[["$",54,55,56,57,58,59,60,61,62],[106,"x",[65,"Q"]],"y","P","R"],t:["$","x","y",[-2,"P","Q"],"R"]},{e:[60,"x","y","P","R"],i:{y:[{e:[66,"Q"],t:[58,"x",[65,[-1,"Q"]],"P","R"]},{e:[["$",48,49,50,51,52,53,41],"z","Q","S"],t:[58,"x",[45,"z","Q","S"],"P","R"]},{e:[["@",172,173],"z"],t:[58,"x","z","P","R"]}]}},{e:[61,"x","y","P","R"],i:{y:[{e:[66,"Q"],t:[59,"x",[65,[-1,"Q"]],"P","R"]},{e:[48,"z","Q","S"],t:[59,"x",[44,"z","Q","S"],"P","R"]},{e:[49,"z","Q","S"],t:[59,"x",[45,"z","Q","S"],"P","R"]},{e:[["$",50,51,52,53,41],"z","Q","S"],t:[59,"x",[47,"z","Q","S"],"P","R"]},{e:[["@",172,173],"z"],t:[59,"x","z","P","R"]}]}},{e:[62,"x","y","P","R"],i:{y:[{e:[66,"Q"],t:[54,"x",[65,[-1,"Q"]],"P","R"]},{e:[48,"z","Q","S"],t:[54,"x",[44,"z","Q","S"],"P","R"]},{e:[49,"z","Q","S"],t:[54,"x",[45,"z","Q","S"],"P","R"]},{e:[50,"z","Q","S"],t:[54,"x",[46,"z","Q","S"],"P","R"]},{e:[51,"z","Q","S"],t:[54,"x",[47,"z","Q","S"],"P","R"]},{e:[["$",52,53,41],"z","Q","S"],t:[54,"x",[40,"z","Q","S"],"P","R"]},{e:[["@",172,173],"z"],t:[54,"x","z","P","R"]}]}},{e:[80,"x"],i:{x:[{e:[["$",48,49],"y","P","R"],t:[69,[45,"y","P","R"]]},{e:[["$",50,51],"y","P","R"],t:[69,[47,"y","P","R"]]},{e:[["$",52,53],"y","P","R"],t:[69,[40,"y","P","R"]]},{e:[["@",172,173],"y"],t:[69,"y"]}]}},{e:[81,[49,"x","P","R"],[66,"Q"]],t:[70,[45,"x","P","R"],[65,[-1,"Q"]]],n:["Q","<=",0xffn]},{e:[82,[49,"x","P","R"],[66,"Q"]],t:[71,[45,"x","P","R"],[65,[-1,"Q"]]],n:["Q","<=",0xffn]},{e:[81,[51,"x","P","R"],[66,"Q"]],t:[70,[47,"x","P","R"],[65,[-1,"Q"]]],n:["Q","<=",0xffffn]},{e:[82,[51,"x","P","R"],[66,"Q"]],t:[71,[47,"x","P","R"],[65,[-1,"Q"]]],n:["Q","<=",0xffffn]},{e:[81,[53,"x","P","R"],[66,"Q"]],t:[70,[40,"x","P","R"],[65,[-1,"Q"]]],n:["Q","<=",0xffffffffn]},{e:[82,[53,"x","P","R"],[66,"Q"]],t:[71,[40,"x","P","R"],[65,[-1,"Q"]]],n:["Q","<=",0xffffffffn]},{e:[240,"x"],i:{x:[{e:[242,"y"],t:[240,"y"]},{e:[["@",69,80],"x"],t:[241,"y"]}]}},{e:[241,"x"],i:{x:[{e:[242,"y"],t:[241,"y"]},{e:[["@",69,80],"y"],t:[240,"y"]},{e:[70,"y","z"],t:[240,[71,"y","z"]]},{e:[71,"y","z"],t:[240,[70,"y","z"]]},{e:[72,"y","z"],t:[240,[78,"y","z"]]},{e:[73,"y","z"],t:[240,[79,"y","z"]]},{e:[74,"y","z"],t:[240,[76,"y","z"]]},{e:[75,"y","z"],t:[240,[77,"y","z"]]},{e:[76,"y","z"],t:[240,[74,"y","z"]]},{e:[77,"y","z"],t:[240,[75,"y","z"]]},{e:[78,"y","z"],t:[240,[72,"y","z"]]},{e:[79,"y","z"],t:[240,[73,"y","z"]]},{e:[81,"y","z"],t:[240,[82,"y","z"]]},{e:[82,"y","z"],t:[240,[81,"y","z"]]},{e:[83,"y","z"],t:[240,[89,"y","z"]]},{e:[84,"y","z"],t:[240,[90,"y","z"]]},{e:[85,"y","z"],t:[240,[87,"y","z"]]},{e:[86,"y","z"],t:[240,[88,"y","z"]]},{e:[87,"y","z"],t:[240,[85,"y","z"]]},{e:[88,"y","z"],t:[240,[86,"y","z"]]},{e:[89,"y","z"],t:[240,[83,"y","z"]]},{e:[90,"y","z"],t:[240,[84,"y","z"]]}]}},{e:[243,"x"],i:{x:[{e:[40,"y","P","R"],t:[245,"y","P","R"]}]}},{e:[244,"x"],i:{x:[{e:[41,"y","P","R"],t:[246,"y","P","R"]},{e:[66,"P"],t:[66,"P"],n:["P","<=",0x7fffffffffffffffn]},{e:[["$",49,51,53],"y","P","R"],t:["$","y","P","R"]}]}},{e:[167,"x"],i:{x:[{e:[66,"P"],t:[65,[-1,"P"]]},{e:[48,"y","P","R"],t:[44,"y","P","R"]},{e:[49,"y","P","R"],t:[45,"y","P","R"]},{e:[50,"y","P","R"],t:[46,"y","P","R"]},{e:[51,"y","P","R"],t:[47,"y","P","R"]},{e:[["$",52,53,41],"y","P","R"],t:[40,"y","P","R"]},{e:[["@",172,173],"y"],t:"y"},{e:[124,[["@",172,173],"y"],[66,"P"]],t:[106,"y",[65,[-1,"P"]]]}]}},{e:[131,"x",[66,"P"]],i:{x:[{e:[66,"Q"],t:[66,[-3,"P","Q"]]},{e:[131,"y",[66,"Q"]],t:[131,"y",[66,[-3,"P","Q"]]]},{e:[49,"y","Q","S"],t:[49,"y","Q","S"],n:[["P","&",0xffn],"===",0xffn]},{e:[48,"y","Q","S"],t:[49,"y","Q","S"],n:["P","===",0xffn]},{e:[51,"y","Q","S"],t:[51,"y","Q","S"],n:[["P","&",0xffffn],"===",0xffffn]},{e:[50,"y","Q","S"],t:[51,"y","Q","S"],n:["P","===",0xffffn]},{e:[53,"y","Q","S"],t:[53,"y","Q","S"],n:[["P","&",0xffffffffn],"===",0xffffffffn]},{e:[52,"y","Q","S"],t:[53,"y","Q","S"],n:["P","===",0xffffffffn]}]}}],He=()=>{let n=0,l=()=>"v"+n++,u=(M,b,$,v,S)=>{if(b<$.length){let C=$[b];if(typeof C=="string")A[C]=`${B}[${M}+${b+1}]`,u(M,b+1,$,v,S);else{let E=l(),z=l();i+=`var ${E}=${B}[${M}+${b+1}],${z}=${B}[${E}]&65535;`,y(E,z,C,v,c=>{u(M,b+1,$,c,S)})}}else S(v)},y=(M,b,[$,...v],S,C)=>{let E=[];if(typeof $=="number")E.push(`${b}===${$}`);else{let[z,...c]=$;c.sort((a,_)=>a-_),U[z]={y:M,se:b,oe:c.some(a=>P.has(a))};for(let a=0;a2?`${b}>=${c[a]}&&${b}<=${c[a+=_-1]}`:`${b}===${c[a]}`)}}S=S.concat({y:M,b:v.map(z=>typeof z=="string"?z:null)}),i+=`if(${E.join("||")}){`,u(M,0,v,S,C),i+="}"},O=(M,b,$,v,S,C)=>{for(let{e:E,i:z,t:c,n:a}of $)y(M,b,E,S,_=>{let F=Object.create(C);p(a,F,()=>{if(z){for(let o in z)x(o,F);for(let o in z){let f=F[o],d=l();i+=`var ${d}=${B}[${f}]&65535;`,O(f,d,z[o],null,_,F)}}if(c){let o=T(c,F,_.slice(),`|${B}[${N}]&${-1<<24}`);typeof c!="string"&&(typeof c[0]=="string"?U[c[0]].oe:P.has(c[0]))?(N!==o&&(i+=`${N}=${o};`),i+="continue"):i+="return "+o}})})},p=(M,b,$)=>{if(M){let v=S=>typeof S=="string"?`${D}[${b[S]||A[S]}]&0xFFFFFFFFFFFFFFFFn`:typeof S=="bigint"?S+"n":`(${v(S[0])})${S[1]}(${v(S[2])})`;i+=`if(${v(M)}){`,$(),i+="}"}else $()},x=(M,b)=>{if(!(M in b)){let $=l();i+=`var ${$}=${A[M]};`,b[M]=$}},T=(M,b,$,v="")=>{if(typeof M=="string")return b[M]||A[M];if(M[0]===-1){let o=T(M[1],b,$);return`Number(${D}[${o}]&0xFFFFFFFFn)`}if(M[0]===-2){let o=T(M[1],b,$),f=T(M[2],b,$);return`${o}+${f}`}if(M[0]===-3){let o=M[1];typeof o=="string"&&x(o,b);let f=T(o,b,$),d=T(M[2],b,$);return i+=`${D}[${f}]&=${D}[${d}];`,f}let[S,...C]=M,z=C.length-+Le(C[C.length-1])-+Le(C[C.length-2])<<16,c=-1,a,_,F;for(let o=0;o<$.length;o++){let f=$[o];if(f.b.length===C.length){let d=0;for(let I=0;Ic&&(c=d,a=o,_=f.y,F=f.b)}}if(!(typeof S=="string"&&U[S].y===_)){let o=(typeof S=="string"?`${U[S].se}|${z}`:`${S|z}`)+v;_?($.splice(a,1),i+=`${B}[${_}]=${o};`):(_=l(),i+=`var ${_}=${J}(${o},${M.length});`)}for(let o=0;o{let l=new DataView(n.buffer),u=()=>{let a=0,_=0,F;do{F=n[c++],a|=(F&127)<<_,_+=7}while(F&128);return a>>>0},y=()=>{let a=0,_=0,F;do{F=n[c++],a|=(F&127)<<_,_+=7}while(F&128);return _<32&&F&64?a|-1<<_:a},O=()=>{let a=0n,_=0n,F;do{F=n[c++],a|=BigInt(F&127)<<_,_+=7n}while(F&128);return _<64&&F&64?a|~0n<<_:a},p=()=>{let a=l.getFloat32(c,!0);return c+=4,a},x=()=>{let a=l.getFloat64(c,!0);return c+=8,a},T=(a=u())=>[...n.slice(c,c+=a)],A=(a=u())=>decodeURIComponent(escape(String.fromCharCode(...n.slice(c,c+=a)))),U=(a=n[c++])=>[u(),a===0?1/0:u()],Y=()=>{let a=[],_;for(;(_=n[c++])!==11;)if(_===65){let F=u();a.push(()=>F)}else if(_===35){let F=u();a.push(o=>{if(F>=o.length)throw RangeError();return o[F]})}else if(_===106){let F=a.pop(),o=a.pop();a.push(f=>o(f)+F(f)|0)}else if(_===107){let F=a.pop(),o=a.pop();a.push(f=>o(f)-F(f)|0)}else if(_===108){let F=a.pop(),o=a.pop();a.push(f=>Math.imul(o(f),F(f)))}else throw new Q("Unsupported constant instruction: "+L(_));if(a.length!==1)throw new Q("Unsupported constant");return a[0]},B=()=>{let a=n[c++],_;if(a===210)_=u();else if(a===208){if(n[c++]!==112)throw new Q("Unsupported reference type: "+L(n[c-1]));_=null}else throw new Q("Unsupported constant instruction: "+L(a));if(n[c++]!==11)throw new Q("Expected end after constant: "+L(n[c-1]));return _},D=a=>{let _=n[c++],F;if(_===65&&a===127){let o=y();F=()=>o}else if(_===66&&a===126){let o=O();F=()=>o}else if(_===67&&a===125){let o=p();F=()=>o}else if(_===68&&a===124){let o=x();F=()=>o}else if(_===208&&(a===112||a===111))c++,F=()=>null;else if(_===210&&a===112){let o=u();F=(f,d)=>d(o)}else if(_===35){let o=u();F=f=>{if(o>=f.length)throw RangeError();return f[o]}}else throw new Q("Unsupported constant instruction: "+L(_));if(n[c++]!==11)throw new Q("Expected end after constant: "+L(n[c-1]));return F},J=[],N=[],t=[],P=[],i=[],M=[],b=[],$=[],v=[],S=new Map,C=[],E=[],z=-1,c=8;if(n.slice(0,8).join(",")!=="0,97,115,109,1,0,0,0")throw new Q("Invalid file header");for(;c+57)throw new Q("Unsupported element kind: "+d);let I=d&3,R=I===2?u():I===0?0:null,K=d&1?null:Y();if(I&&n[c++]!==(d&4?112:0))throw new Q("Unsupported element type: "+L(n[c-1]));let Me=[];for(let pe=0,ie=u();pe2)throw new Q("Unsupported data mode: "+d);let I=d===2?u():0,R=d===1?null:Y(),K=u();t.push([I,R,n.slice(c,c+=K)])}else if(a!==12)throw new Q("Unsupported section type: "+L(a));c=F}return{re:n,o:l,R:J,pe:N,_e:t,ue:P,ce:i,k:M,Fe:b,ge:$,fe:v,de:S,me:z,he:C,E:E}},L=n=>"0x"+n.toString(16).toUpperCase().padStart(2,"0"),Pe=new Map,X=class{constructor(l){Pe.set(this,Ze(l instanceof Uint8Array?l:new Uint8Array(l instanceof ArrayBuffer?l:l.buffer)))}},Q=class extends Error{constructor(l){super(l),this.name="CompileError"}};var Oe=(n,l)=>{if(l===125||l===124)return+n;if(l===127)return n|0;if(l===126)return BigInt(n)&0xffffffffffffffffn;if(l===111)return n;throw Error("Unsupported cast to type: "+L(l))},fe=(n,l)=>{if(l===125||l===124)return"+"+n;if(l===127)return n+"|0";if(l===126)return`BigInt(${n})&0xFFFFFFFFFFFFFFFFn`;if(l===111)return n;if(l===112)return`l.h(${n})`;throw Error("Unsupported cast to type: "+L(l))},Fe=(n,l)=>{if(l===124||l===127)return n;if(l===125)return`Math.fround(${n})`;if(l===126)return`l.d(${n})`;if(l===111)return n;if(l===112)return`l.M(${n})`;throw Error("Unsupported cast to type: "+L(l))};var Ye={1:520,26:521,32:28,33:25,34:29,35:28,36:25,37:29,38:26,40:61,41:61,42:61,43:61,44:61,45:61,46:61,47:61,48:61,49:61,50:61,51:61,52:61,53:61,54:58,55:58,56:58,57:58,58:58,59:58,60:58,61:58,62:58,63:28,64:29,69:13,70:78,71:78,72:78,73:206,74:78,75:206,76:78,77:206,78:78,79:206,80:13,81:78,82:78,83:334,84:78,85:334,86:78,87:334,88:78,89:334,90:78,91:78,92:78,93:78,94:78,95:78,96:78,97:78,98:78,99:78,100:78,101:78,102:78,103:13,104:13,105:13,106:14,107:14,108:14,109:14,110:142,111:14,112:142,113:14,114:14,115:14,116:14,117:14,118:14,119:14,120:14,121:13,122:13,123:13,124:14,125:14,126:14,127:270,128:14,129:270,130:14,131:14,132:14,133:14,134:1038,135:1038,136:1038,137:1038,138:1038,139:13,140:13,141:13,142:13,143:13,144:13,145:13,146:14,147:14,148:14,149:14,150:14,151:14,152:14,153:13,154:13,155:13,156:13,157:13,158:13,159:13,160:14,161:14,162:14,163:14,164:14,165:14,166:14,167:13,168:13,169:13,170:13,171:13,172:13,173:13,174:13,175:13,176:13,177:13,178:525,179:653,180:269,181:13,182:525,183:525,184:653,185:269,186:13,187:525,188:13,189:13,190:13,191:13,192:13,193:13,194:13,195:13,196:13,209:77,210:28,64512:13,64513:13,64514:13,64515:13,64516:13,64517:13,64518:13,64519:13,64521:24,64525:24,64527:30,64528:28,64529:27};var et=new Int32Array(65536),tt=He(),Qe=(n,l,u,y,O,p,x,T,A,U,Y)=>{let B=()=>{let e=0,s=0,r;do{r=I[W++],e|=(r&127)<>>0},D=()=>{let e=0,s=0,r;do{r=I[W++],e|=(r&127)<{let e=0n,s=0n,r;do{r=I[W++],e|=BigInt(r&127)<{let e=I[W];if(e===64)return W++,[0,0];if(e&64)return W++,[0,1];let s=B(),[r,h]=ie[s];return[r.length,h.length]},t=et,P=[],i=0,M=[],b=0,$=e=>{for(;b(v[e]||(_e.push(`t${e}=t[${e}]`),v[e]=!0),"t"+e),C=(e,s,r,h)=>`c.${e+h}[${a(s)}${r?"+"+r:""}]`,E=(e,s,r,h,w)=>`c.${e+h}[${a(s)}${r?"+"+r:""}]=${w}`,z=(e,s,r,h)=>`c.${"o"+h}.get${e}(${a(s)}${r?"+"+r:""},1)`,c=(e,s,r,h,w)=>`c.${"o"+h}.set${e}(${a(s)}${r?"+"+r:""},${w},1)`,a=e=>e<0?$(-e):`(${_(e)})`,_=e=>{let s=t[e],r=s&65535;switch(r){case 16:case 18:{let h=s>>16&255,w=t[e+h+1],[q,H]=l[w],ee=[];for(let G=1;G<=h;G++)ee.push(a(t[e+G]));let j=`f[${w}]`,se=r===18?`l.C(this,${j},[${ee}])`:`${j}(${ee})`;if(H.length<2)return se;let oe=t[e+h+2],Z=[];for(let G=0;G>16&255,w=t[e+h+2],q=t[e+h+3],[H,ee]=ie[q],j=[],se=a(t[e+1]);for(let V=1;V<=h;V++)j.push(a(t[e+V+1]));let oe=`${S(w)}[${se}].x`,Z=r===19?`l.C(this,${oe},[${j}])`:`${oe}(${j})`;if(ee.length<2)return Z;let G=t[e+h+4],ue=[];for(let V=0;V>>0`;case 244:return`l.d(${a(t[e+1])})`;case 69:case 80:return`${a(t[e+1])}?0:1`;case 70:case 81:case 91:case 97:return`${a(t[e+1])}===${a(t[e+2])}`;case 71:case 82:case 92:case 98:return`${a(t[e+1])}!==${a(t[e+2])}`;case 72:case 73:case 83:case 84:case 93:case 99:return`${a(t[e+1])}<${a(t[e+2])}`;case 74:case 75:case 85:case 86:case 94:case 100:return`${a(t[e+1])}>${a(t[e+2])}`;case 76:case 77:case 87:case 88:case 95:case 101:return`${a(t[e+1])}<=${a(t[e+2])}`;case 78:case 79:case 89:case 90:case 96:case 102:return`${a(t[e+1])}>=${a(t[e+2])}`;case 103:return`Math.clz32(${a(t[e+1])})`;case 104:return`l.G(${a(t[e+1])})`;case 105:return`l.J(${a(t[e+1])})`;case 106:return`${a(t[e+1])}+${a(t[e+2])}|0`;case 107:return`${a(t[e+1])}-${a(t[e+2])}|0`;case 108:return`Math.imul(${a(t[e+1])},${a(t[e+2])})`;case 110:case 109:return`${a(t[e+1])}/${a(t[e+2])}|0`;case 112:case 111:return`${a(t[e+1])}%${a(t[e+2])}|0`;case 113:return`${a(t[e+1])}&${a(t[e+2])}`;case 114:return`${a(t[e+1])}|${a(t[e+2])}`;case 115:return`${a(t[e+1])}^${a(t[e+2])}`;case 116:return`${a(t[e+1])}<<${a(t[e+2])}`;case 117:return`${a(t[e+1])}>>${a(t[e+2])}`;case 118:return`${a(t[e+1])}>>>${a(t[e+2])}|0`;case 119:return`l.N(${a(t[e+1])},${a(t[e+2])})`;case 120:return`l.D(${a(t[e+1])},${a(t[e+2])})`;case 121:return`l.K(${a(t[e+1])})`;case 122:return`l.Z(${a(t[e+1])})`;case 123:return`l.X(${a(t[e+1])})`;case 124:return`(${a(t[e+1])}+${a(t[e+2])})&0xFFFFFFFFFFFFFFFFn`;case 125:return`(${a(t[e+1])}-${a(t[e+2])})&0xFFFFFFFFFFFFFFFFn`;case 126:return`(${a(t[e+1])}*${a(t[e+2])})&0xFFFFFFFFFFFFFFFFn`;case 127:return`${a(t[e+1])}/${a(t[e+2])}&0xFFFFFFFFFFFFFFFFn`;case 128:return`${a(t[e+1])}/${a(t[e+2])}`;case 129:return`${a(t[e+1])}%${a(t[e+2])}&0xFFFFFFFFFFFFFFFFn`;case 130:return`${a(t[e+1])}%${a(t[e+2])}`;case 131:return`${a(t[e+1])}&${a(t[e+2])}`;case 132:return`${a(t[e+1])}|${a(t[e+2])}`;case 133:return`${a(t[e+1])}^${a(t[e+2])}`;case 134:return`${a(t[e+1])}<<${a(t[e+2])}&0xFFFFFFFFFFFFFFFFn`;case 135:return`l.d(${a(t[e+1])})>>${a(t[e+2])}&0xFFFFFFFFFFFFFFFFn`;case 136:return`${a(t[e+1])}>>${a(t[e+2])}`;case 137:return`l.V(${a(t[e+1])},${a(t[e+2])})`;case 138:return`l.j(${a(t[e+1])},${a(t[e+2])})`;case 139:case 153:return`Math.abs(${a(t[e+1])})`;case 140:case 154:return`-${a(t[e+1])}`;case 141:case 155:return`Math.ceil(${a(t[e+1])})`;case 142:case 156:return`Math.floor(${a(t[e+1])})`;case 143:case 157:return`Math.trunc(${a(t[e+1])})`;case 144:case 158:return`Math.round(${a(t[e+1])})`;case 145:case 159:return`Math.sqrt(${a(t[e+1])})`;case 146:case 160:return`${a(t[e+1])}+${a(t[e+2])}`;case 147:case 161:return`${a(t[e+1])}-${a(t[e+2])}`;case 148:case 162:return`${a(t[e+1])}*${a(t[e+2])}`;case 149:case 163:return`${a(t[e+1])}/${a(t[e+2])}`;case 150:case 164:return`Math.min(${a(t[e+1])},${a(t[e+2])})`;case 151:case 165:return`Math.max(${a(t[e+1])},${a(t[e+2])})`;case 152:case 166:return`l.U(${a(t[e+1])},${a(t[e+2])})`;case 167:return`Number(${a(t[e+1])}&0xFFFFFFFFn)|0`;case 168:case 169:case 170:case 171:return`Math.trunc(${a(t[e+1])})|0`;case 172:return`BigInt(${a(t[e+1])})`;case 173:return`BigInt(${a(t[e+1])}>>>0)`;case 174:case 175:case 176:case 177:return`BigInt(Math.trunc(${a(t[e+1])}))&0xFFFFFFFFFFFFFFFFn`;case 180:case 181:case 186:case 185:return`Number(${a(t[e+1])})`;case 188:return`l.H(${a(t[e+1])})`;case 189:return`l.W(${a(t[e+1])})`;case 190:return`l.Q(${a(t[e+1])})`;case 191:return`l.q(${a(t[e+1])})`;case 192:return`${a(t[e+1])}<<24>>24`;case 193:return`${a(t[e+1])}<<16>>16`;case 194:return`l.Y(${a(t[e+1])})`;case 195:return`l.ee(${a(t[e+1])})`;case 196:return`l.te(${a(t[e+1])})`;case 208:return"null";case 209:return`${a(t[e+1])}===null`;case 210:return`F(${t[e+1]})`;case 64512:return`l.P(${a(t[e+1])})`;case 64513:return`l.O(${a(t[e+1])})`;case 64514:return`l.P(${a(t[e+1])})`;case 64515:return`l.O(${a(t[e+1])})`;case 64516:return`l.I(${a(t[e+1])})`;case 64517:return`l.T(${a(t[e+1])})`;case 64518:return`l.I(${a(t[e+1])})`;case 64519:return`l.T(${a(t[e+1])})`;case 64520:return`l.B(d[${t[e+4]}],c.${"l"+t[e+5]},${a(t[e+1])},${a(t[e+2])},${a(t[e+3])})`;case 64521:return`d[${t[e+1]}]=new Uint8Array`;case 64522:return`l.B(c.${"l"+t[e+4]},c.${"l"+t[e+5]},${a(t[e+1])},${a(t[e+2])},${a(t[e+3])})`;case 64523:return`c.${"l"+t[e+4]}.fill(${a(t[e+1])},T=${a(t[e+2])},T+${a(t[e+3])})`;case 64524:return`l.z(${S(t[e+4])},e[${t[e+5]}],${a(t[e+1])},${a(t[e+2])},${a(t[e+3])})`;case 64525:return`e[${t[e+1]}]=[]`;case 64526:return`l.z(${S(t[e+4])},${S(t[e+5])},${a(t[e+1])},${a(t[e+2])},${a(t[e+3])})`;case 64527:return`l.w(${S(t[e+3])},${a(t[e+1])},${a(t[e+2])})`;case 64528:return S(t[e+1])+".length";case 64529:return`l.ne(${S(t[e+4])},${a(t[e+1])},${a(t[e+2])},${a(t[e+3])})`;default:throw"Internal error"}},F=(e,s)=>{let r=i;return t[r]=e,i+=s,r},o=(e,s=g)=>{P.push(i),t[i++]=e|65536|s<<24,t[i++]=-s},f=()=>{d(),ne(0),m[m.length-1].a=!0},d=(e=!1)=>{let s=[],r=P.length-1,h=H=>{let ee=t[H],j=ee&65535,se=ee>>16&255,oe=j>=40&&j<=62||j>=64520&&j<=64523;for(let Z=se-1;r>=0&&Z>=0;Z--){let G=-t[H+Z+1],ue=!1;for(let V=r;V>=0;V--){let $e=P[V];if($e===null)continue;let Re=t[$e],ce=Re&65535;if(oe&&(ce<65||ce>66)&&ce!=32)break;if(Re>>>24===G){P[V]=null,ue||(r=V-1),t[H+Z+1]=h($e);break}if(ce!==243&&ce!==244)break;ue=!0}}return tt(t,M,F,H)},w;for(;r>=0;){let H=r--;(w=P[H])!==null&&(P[H]=h(w))}let q;for(r=P.length-1,e&&(r>=0&&(w=P[r])!==null&&t[w]>>>24===g?(q=_(w),r--):q="s"+g,g--);r>=0;)if((w=P[r--])!==null){let H=t[w]>>>24;s.push(`${H?$(H)+"=":""}${_(w)};`)}return k+=s.reverse().join(""),M.length=0,P.length=0,i=0,q},{re:I,o:R,R:K,k:Me,de:pe,E:ie}=A,[We,qe]=ie[Me[U]],[Ne,De,Ve]=K[U],re=[],ze=We.length;for(let e=0;e{let s=m.length{if(m[m.length-1].a)return;let s=m[e];if(e)if(s.F===1){if(g>s.r+s.c)for(let r=1;r<=s.c;r++)k+=`s${s.r+r}=s${g-s.c+r};`;k+=es.r+s.s)for(let r=1;r<=s.s;r++)k+=`s${s.r+r}=s${g-s.s+r};`;k+=e<=ae?`break b${e};`:`L=${s.$};continue;`}else if(s.s===1)k+=`return s${g};`;else if(s.s>1){let r=[];for(let h=s.s-1;h>=0;h--)r.push("s"+(g-h));k+=`return[${r}];`}else k+="return;"},m=[{c:0,a:!1,F:0,$:-1,_:-1,r:0,s:qe.length}],we=e=>{let s=Ye[e]|0;if(!(s&8))return!1;if(s&8)if(m[m.length-1].a)s&32&&I[W++]&64&&B(),s&16&&B();else{let r=s&3;if(s&1024&&(P.push(i),t[i++]=66|g+1<<24,t[i++]=M.length,M.push(63n),P.push(i),t[i++]=131|2<<16|g<<24,t[i++]=-g,t[i++]=-(g+1)),g-=r,s&384)for(let h=0;h1&&(t[i++]=g+1),g+=w.length}s&&f();break}case 17:case 19:{let s=e===19,r=B(),h=B();if(!m[m.length-1].a){let[w,q]=ie[r];g-=w.length+1,P.push(i),q.length===1&&(e|=g+1<<24),t[i++]=e|w.length<<16,t[i++]=-(g+w.length+1);for(let H=1;H<=w.length;H++)t[i++]=-(g+H);t[i++]=h,t[i++]=r,q.length>1&&(t[i++]=g+1),g+=q.length}s&&f();break}case 27:case 28:{if(e===28){let s=B();if(s!==1)throw Error("Unsupported select type count "+s);W++}m[m.length-1].a||(o(240),g-=2,P.push(i),t[i++]=e|3<<16|g<<24,t[i++]=-(g+2),t[i++]=-g,t[i++]=-(g+1));break}case 65:m[m.length-1].a?D():(P.push(i),t[i++]=e|++g<<24,t[i++]=D());break;case 66:m[m.length-1].a?J():(P.push(i),t[i++]=e|++g<<24,t[i++]=M.length,M.push(J()));break;case 67:m[m.length-1].a||(P.push(i),t[i++]=e|++g<<24,t[i++]=W),W+=4;break;case 68:m[m.length-1].a||(P.push(i),t[i++]=e|++g<<24,t[i++]=W),W+=8;break;case 208:W++,m[m.length-1].a||(P.push(i),t[i++]=e|++g<<24);break;case 252:if(e=64512|I[W++],we(e))continue;switch(e){case 64520:{let s=B(),r=B();m[m.length-1].a||(g-=2,P.push(i),t[i++]=e|3<<16|g<<24,t[i++]=-g,t[i++]=-(g+1),t[i++]=-(g+2),t[i++]=s,t[i++]=r);break}case 64522:{let s=B(),r=B();m[m.length-1].a||(g-=2,P.push(i),t[i++]=e|3<<16|g<<24,t[i++]=-g,t[i++]=-(g+1),t[i++]=-(g+2),t[i++]=r,t[i++]=s);break}case 64523:{let s=B();m[m.length-1].a||(g-=2,P.push(i),t[i++]=e|3<<16|g<<24,t[i++]=-(g+1),t[i++]=-g,t[i++]=-(g+2),t[i++]=s);break}case 64524:{let s=B(),r=B();m[m.length-1].a||(g-=2,P.push(i),t[i++]=e|3<<16|g<<24,t[i++]=-g,t[i++]=-(g+1),t[i++]=-(g+2),t[i++]=r,t[i++]=s);break}case 64526:{let s=B(),r=B();m[m.length-1].a||(g-=2,P.push(i),t[i++]=e|3<<16|g<<24,t[i++]=-g,t[i++]=-(g+1),t[i++]=-(g+2),t[i++]=s,t[i++]=r);break}default:throw Error("Unsupported instruction: 0xFC "+L(e&255))}break;default:throw Error("Unsupported instruction: "+L(e))}}if(b>255)throw Error("Deep stacks are not supported");let Ce=JSON.stringify("wasm:"+(pe.get(Y)||`function[${U}]`)),je=`return{${Ce}(${re.slice(0,ze)}){var ${_e};${k}}}[${Ce}]`;return new Function("f","F","c","t","d","e","g","l",je)(n,u,T,y,O,p,x,te)};var de=class{valueOf(){return this.value}},at=(n,l)=>{let[u,y]=n,O=[],p=[];for(let T=0;T1){x=`let r=${x};`;for(let T=0;T{${x}}`)(l,te)},le=class{constructor(l,u){let y=Pe.get(l),{R:O,_e:p,ue:x,ce:T,k:A,Fe:U,ge:Y,fe:B,me:D,he:J,E:N}=y,t=this.exports=Object.create(null),P=[],i=[],M=[],b=[],$=[],v={},S=[],C=a=>{let _=v[a]||(v[a]={xe:a,ie:M[a],p:null,x:(...F)=>{let o=i[a](...F);return _.x=i[a],o}});return _};for(let a of Y){let[_,F,o,f]=a,d=u[_][F];if(o===0){let I=N[f],R=i.length;i.push((...K)=>(i[R]=at(I,d))(...K)),M.push(I)}else if(o===1)S.push(Be.get(d));else if(o===2)P.push(Te.get(d));else if(o===3)b.push(Oe(d,f)),$.push(f);else throw Error(`Unsupported import type ${L(o)} for "${_}"."${F}"`)}let E={};for(let[a,_]of B)P.push(Te.get(new me({initial:a,maximum:a>_?a:_})));for(let a=0;a{E["l"+a]=_.l,E["u"+a]=_.u,E["o"+a]=_.o};E["A"+a]=_,_.L.push(F),F()}for(let[a,_,F]of U)b.push(F(b,C)),$.push(a);let z=[];for(let[a,_,F]of p)_!==null&&(E["l"+a].set(F,_(b)),F=new Uint8Array),z.push(F);for(let a=0;a(i[_]=Qe(i,M,C,S,z,c,b,E,y,a,_))(...F))}let c=[];for(let[a,_,F]of J){if(a!==112&&a!==111)throw Error("Unsupported element type: "+L(a));S.push(Be.get(new he({element:a===111?"externref":"anyfunc",initial:_,maximum:_>F?_:F})))}for(let[a,_,F]of x){let o=[];for(let f of F)o.push(f===null?null:C(f));if(c.push(o),a!==null&&_!==null){let f=S[a],d=_(b);for(let I of o)f[d++]=I}}for(let[a,_,F]of T)if(_===0)t[a]=te.M(C(F));else if(_===1)t[a]=S[F].S;else if(_===2)t[a]=P[F].S;else if(_===3){let o=new de,f=$[F];Object.defineProperty(o,"value",{get:()=>b[F],set:d=>{b[F]=Oe(d,f)}}),t[a]=o}else throw Error(`Unsupported export type ${L(_)} for "${a}"`);D>=0&&i[D]()}},Te=new WeakMap,Ie=n=>Math.max(-1,Math.min(n,65535))|0,me=class{constructor({initial:l,maximum:u}){if(l=Ie(l),u=Ie(u??1/0),l<0||l>u)throw RangeError();let y=new ArrayBuffer(l<<16),O={S:this,f:y,l:new Uint8Array(y),u:new Int8Array(y),o:new DataView(y),g:l,Me:u,L:[],v(p){let x=this.g,T=this.l;if(p=Ie(p),p<0||this.g+p>this.Me)return-1;if(!p)return x;let A=new ArrayBuffer((this.g+=p)<<16),U=new Uint8Array(A);U.set(T);try{structuredClone(this.f,{transfer:[this.f]})}catch{}this.f=A,this.l=U,this.u=new Int8Array(A),this.o=new DataView(A);for(let Y of this.L)Y();return x}};Te.set(this,O),Object.defineProperty(this,"buffer",{get:()=>O.f}),this.grow=p=>{let x=O.v(p);if(x<0)throw RangeError();return x}}},Be=new WeakMap,he=class{constructor({element:l,initial:u,maximum:y}){let O=l=="anyfunc",p=[];if(!O&&l!=="externref")throw TypeError();p.S=this,p.ae=Math.min(4294967295,y??1/0),p.length=u;for(let x=0;xp.length}),this.get=x=>{if(x>>>=0,x>=p.length)throw RangeError();return O?te.M(p[x]):p[x]},this.set=(x,T)=>{if(x>>>=0,x>=p.length)throw RangeError();p[x]=O?te.h(T):T},this.grow=(x,T)=>{let A=te.w(p,O?te.h(T):T,x);if(A<0)throw RangeError();return A}}};var nt=async n=>new X(n),lt=async n=>new X(await(await n).arrayBuffer()),it=async(n,l)=>{if(n instanceof X)return new le(n,l);let u=new X(n);return{module:u,instance:new le(u,l)}},st=async(n,l)=>{let u=new X(await(await n).arrayBuffer());return{module:u,instance:new le(u,l)}},ot=n=>{if(!ArrayBuffer.isView(n)&&!(n instanceof ArrayBuffer))throw TypeError("Invalid buffer source");try{return new X(n),!0}catch{return!1}},Rt={Global:de,Instance:le,compile:nt,compileStreaming:lt,instantiate:it,instantiateStreaming:st,validate:ot,Memory:me,Module:X,Table:he,CompileError:Q};return Rt});'},955:e=>{e.exports='/*! For license information please see node-rsa.bundle.js.LICENSE.txt */\r\n!function(t,e){"object"==typeof exports&&"object"==typeof module?module.exports=e():"function"==typeof define&&define.amd?define([],e):"object"==typeof exports?exports.NODERSA=e():t.NODERSA=e()}(globalThis,(()=>(()=>{var t={6395:t=>{t.exports={newInvalidAsn1Error:function(t){var e=new Error;return e.name="InvalidAsn1Error",e.message=t||"",e}}},5670:(t,e,r)=>{var n=r(6395),i=r(6299),o=r(3319),s=r(1431);for(var a in t.exports={Reader:o,Writer:s},i)i.hasOwnProperty(a)&&(t.exports[a]=i[a]);for(var f in n)n.hasOwnProperty(f)&&(t.exports[f]=n[f])},3319:(t,e,r)=>{var n=r(4529),i=r(4774).Buffer,o=r(6299),s=r(6395).newInvalidAsn1Error;function a(t){if(!t||!i.isBuffer(t))throw new TypeError("data must be a node Buffer");this._buf=t,this._size=t.length,this._len=0,this._offset=0}Object.defineProperty(a.prototype,"length",{enumerable:!0,get:function(){return this._len}}),Object.defineProperty(a.prototype,"offset",{enumerable:!0,get:function(){return this._offset}}),Object.defineProperty(a.prototype,"remain",{get:function(){return this._size-this._offset}}),Object.defineProperty(a.prototype,"buffer",{get:function(){return this._buf.slice(this._offset)}}),a.prototype.readByte=function(t){if(this._size-this._offset<1)return null;var e=255&this._buf[this._offset];return t||(this._offset+=1),e},a.prototype.peek=function(){return this.readByte(!0)},a.prototype.readLength=function(t){if(void 0===t&&(t=this._offset),t>=this._size)return null;var e=255&this._buf[t++];if(null===e)return null;if(128&~e)this._len=e;else{if(0==(e&=127))throw s("Indefinite length not supported");if(e>4)throw s("encoding too long");if(this._size-tthis._size-n)return null;if(this._offset=n,0===this.length)return e?i.alloc(0):"";var a=this._buf.slice(this._offset,this._offset+this.length);return this._offset+=this.length,e?a:a.toString("utf8")},a.prototype.readOID=function(t){t||(t=o.OID);var e=this.readString(t,!0);if(null===e)return null;for(var r=[],n=0,i=0;i4)throw s("Integer too long: "+this.length);if(this.length>this._size-r)return null;this._offset=r;for(var i=this._buf[this._offset],o=0,a=0;a{t.exports={EOC:0,Boolean:1,Integer:2,BitString:3,OctetString:4,Null:5,OID:6,ObjectDescriptor:7,External:8,Real:9,Enumeration:10,PDV:11,Utf8String:12,RelativeOID:13,Sequence:16,Set:17,NumericString:18,PrintableString:19,T61String:20,VideotexString:21,IA5String:22,UTCTime:23,GeneralizedTime:24,GraphicString:25,VisibleString:26,GeneralString:28,UniversalString:29,CharacterString:30,BMPString:31,Constructor:32,Context:128}},1431:(t,e,r)=>{var n=r(4529),i=r(4774).Buffer,o=r(6299),s=r(6395).newInvalidAsn1Error,a={size:1024,growthFactor:8};function f(t){var e,r;e=a,r=t||{},n.ok(e),n.equal(typeof e,"object"),n.ok(r),n.equal(typeof r,"object"),Object.getOwnPropertyNames(e).forEach((function(t){if(!r[t]){var n=Object.getOwnPropertyDescriptor(e,t);Object.defineProperty(r,t,n)}})),t=r,this._buf=i.alloc(t.size||1024),this._size=this._buf.length,this._offset=0,this._options=t,this._seq=[]}Object.defineProperty(f.prototype,"buffer",{get:function(){if(this._seq.length)throw s(this._seq.length+" unended sequence(s)");return this._buf.slice(0,this._offset)}}),f.prototype.writeByte=function(t){if("number"!=typeof t)throw new TypeError("argument must be a Number");this._ensure(1),this._buf[this._offset++]=t},f.prototype.writeInt=function(t,e){if("number"!=typeof t)throw new TypeError("argument must be a Number");"number"!=typeof e&&(e=o.Integer);for(var r=4;(!(4286578688&t)||-8388608==(4286578688&t))&&r>1;)r--,t<<=8;if(r>4)throw s("BER ints cannot be > 0xffffffff");for(this._ensure(2+r),this._buf[this._offset++]=e,this._buf[this._offset++]=r;r-- >0;)this._buf[this._offset++]=(4278190080&t)>>>24,t<<=8},f.prototype.writeNull=function(){this.writeByte(o.Null),this.writeByte(0)},f.prototype.writeEnumeration=function(t,e){if("number"!=typeof t)throw new TypeError("argument must be a Number");return"number"!=typeof e&&(e=o.Enumeration),this.writeInt(t,e)},f.prototype.writeBoolean=function(t,e){if("boolean"!=typeof t)throw new TypeError("argument must be a Boolean");"number"!=typeof e&&(e=o.Boolean),this._ensure(3),this._buf[this._offset++]=e,this._buf[this._offset++]=1,this._buf[this._offset++]=t?255:0},f.prototype.writeString=function(t,e){if("string"!=typeof t)throw new TypeError("argument must be a string (was: "+typeof t+")");"number"!=typeof e&&(e=o.OctetString);var r=i.byteLength(t);this.writeByte(e),this.writeLength(r),r&&(this._ensure(r),this._buf.write(t,this._offset),this._offset+=r)},f.prototype.writeBuffer=function(t,e){if("number"!=typeof e)throw new TypeError("tag must be a number");if(!i.isBuffer(t))throw new TypeError("argument must be a buffer");this.writeByte(e),this.writeLength(t.length),this._ensure(t.length),t.copy(this._buf,this._offset,0,t.length),this._offset+=t.length},f.prototype.writeStringArray=function(t){if(!t instanceof Array)throw new TypeError("argument must be an Array[String]");var e=this;t.forEach((function(t){e.writeString(t)}))},f.prototype.writeOID=function(t,e){if("string"!=typeof t)throw new TypeError("argument must be a string");if("number"!=typeof e&&(e=o.OID),!/^([0-9]+\\.){3,}[0-9]+$/.test(t))throw new Error("argument is not a valid OID string");var r=t.split("."),n=[];n.push(40*parseInt(r[0],10)+parseInt(r[1],10)),r.slice(2).forEach((function(t){!function(t,e){e<128?t.push(e):e<16384?(t.push(e>>>7|128),t.push(127&e)):e<2097152?(t.push(e>>>14|128),t.push(e>>>7&255|128),t.push(127&e)):e<268435456?(t.push(e>>>21|128),t.push(e>>>14&255|128),t.push(e>>>7&255|128),t.push(127&e)):(t.push(e>>>28&255|128),t.push(e>>>21&255|128),t.push(e>>>14&255|128),t.push(e>>>7&255|128),t.push(127&e))}(n,parseInt(t,10))}));var i=this;this._ensure(2+n.length),this.writeByte(e),this.writeLength(n.length),n.forEach((function(t){i.writeByte(t)}))},f.prototype.writeLength=function(t){if("number"!=typeof t)throw new TypeError("argument must be a Number");if(this._ensure(4),t<=127)this._buf[this._offset++]=t;else if(t<=255)this._buf[this._offset++]=129,this._buf[this._offset++]=t;else if(t<=65535)this._buf[this._offset++]=130,this._buf[this._offset++]=t>>8,this._buf[this._offset++]=t;else{if(!(t<=16777215))throw s("Length too long (> 4 bytes)");this._buf[this._offset++]=131,this._buf[this._offset++]=t>>16,this._buf[this._offset++]=t>>8,this._buf[this._offset++]=t}},f.prototype.startSequence=function(t){"number"!=typeof t&&(t=o.Sequence|o.Constructor),this.writeByte(t),this._seq.push(this._offset),this._ensure(3),this._offset+=3},f.prototype.endSequence=function(){var t=this._seq.pop(),e=t+3,r=this._offset-e;if(r<=127)this._shift(e,r,-2),this._buf[t]=r;else if(r<=255)this._shift(e,r,-1),this._buf[t]=129,this._buf[t+1]=r;else if(r<=65535)this._buf[t]=130,this._buf[t+1]=r>>8,this._buf[t+2]=r;else{if(!(r<=16777215))throw s("Sequence too long");this._shift(e,r,1),this._buf[t]=131,this._buf[t+1]=r>>16,this._buf[t+2]=r>>8,this._buf[t+3]=r}},f.prototype._shift=function(t,e,r){n.ok(void 0!==t),n.ok(void 0!==e),n.ok(r),this._buf.copy(this._buf,t+r,t,t+e),this._offset+=r},f.prototype._ensure=function(t){if(n.ok(t),this._size-this._offset{var n=r(5670);t.exports={Ber:n,BerReader:n.Reader,BerWriter:n.Writer}},4529:(t,e,r)=>{"use strict";var n=r(1514)();function i(t,e){if(t===e)return 0;for(var r=t.length,n=e.length,i=0,o=Math.min(r,n);i=0;u--)if(c[u]!==h[u])return!1;for(u=c.length-1;u>=0;u--)if(!S(t[a=c[u]],e[a],r,n))return!1;return!0}(t,e,r,n))}return r?t===e:t==e}function _(t){return"[object Arguments]"==Object.prototype.toString.call(t)}function b(t,e){if(!t||!e)return!1;if("[object RegExp]"==Object.prototype.toString.call(e))return e.test(t);try{if(t instanceof e)return!0}catch(t){}return!Error.isPrototypeOf(e)&&!0===e.call({},t)}function E(t,e,r,n){var i;if("function"!=typeof e)throw new TypeError(\'"block" argument must be a function\');"string"==typeof r&&(n=r,r=null),i=function(t){var e;try{t()}catch(t){e=t}return e}(e),n=(r&&r.name?" ("+r.name+").":".")+(n?" "+n:"."),t&&!i&&v(i,r,"Missing expected exception"+n);var o="string"==typeof n,a=!t&&i&&!r;if((!t&&s.isError(i)&&o&&b(i,r)||a)&&v(i,r,"Got unwanted exception"+n),t&&i&&r&&!b(i,r)||!t&&i)throw i}p.AssertionError=function(t){this.name="AssertionError",this.actual=t.actual,this.expected=t.expected,this.operator=t.operator,t.message?(this.message=t.message,this.generatedMessage=!1):(this.message=g(d(this.actual),128)+" "+this.operator+" "+g(d(this.expected),128),this.generatedMessage=!0);var e=t.stackStartFunction||v;if(Error.captureStackTrace)Error.captureStackTrace(this,e);else{var r=new Error;if(r.stack){var n=r.stack,i=y(e),o=n.indexOf("\\n"+i);if(o>=0){var s=n.indexOf("\\n",o+1);n=n.substring(s+1)}this.stack=n}}},s.inherits(p.AssertionError,Error),p.fail=v,p.ok=m,p.equal=function(t,e,r){t!=e&&v(t,e,r,"==",p.equal)},p.notEqual=function(t,e,r){t==e&&v(t,e,r,"!=",p.notEqual)},p.deepEqual=function(t,e,r){S(t,e,!1)||v(t,e,r,"deepEqual",p.deepEqual)},p.deepStrictEqual=function(t,e,r){S(t,e,!0)||v(t,e,r,"deepStrictEqual",p.deepStrictEqual)},p.notDeepEqual=function(t,e,r){S(t,e,!1)&&v(t,e,r,"notDeepEqual",p.notDeepEqual)},p.notDeepStrictEqual=function t(e,r,n){S(e,r,!0)&&v(e,r,n,"notDeepStrictEqual",t)},p.strictEqual=function(t,e,r){t!==e&&v(t,e,r,"===",p.strictEqual)},p.notStrictEqual=function(t,e,r){t===e&&v(t,e,r,"!==",p.notStrictEqual)},p.throws=function(t,e,r){E(!0,t,e,r)},p.doesNotThrow=function(t,e,r){E(!1,t,e,r)},p.ifError=function(t){if(t)throw t},p.strict=n((function t(e,r){e||v(e,!0,r,"==",t)}),p,{equal:p.strictEqual,deepEqual:p.deepStrictEqual,notEqual:p.notStrictEqual,notDeepEqual:p.notDeepStrictEqual}),p.strict.strict=p.strict;var w=Object.keys||function(t){var e=[];for(var r in t)a.call(t,r)&&e.push(r);return e}},6100:t=>{"function"==typeof Object.create?t.exports=function(t,e){t.super_=e,t.prototype=Object.create(e.prototype,{constructor:{value:t,enumerable:!1,writable:!0,configurable:!0}})}:t.exports=function(t,e){t.super_=e;var r=function(){};r.prototype=e.prototype,t.prototype=new r,t.prototype.constructor=t}},3845:t=>{t.exports=function(t){return t&&"object"==typeof t&&"function"==typeof t.copy&&"function"==typeof t.fill&&"function"==typeof t.readUInt8}},4591:(t,e,r)=>{var n=r(5606),i=/%[sdj%]/g;e.format=function(t){if(!v(t)){for(var e=[],r=0;r=o)return t;switch(t){case"%s":return String(n[r++]);case"%d":return Number(n[r++]);case"%j":try{return JSON.stringify(n[r++])}catch(t){return"[Circular]"}default:return t}})),f=n[r];r=3&&(n.depth=arguments[2]),arguments.length>=4&&(n.colors=arguments[3]),y(r)?n.showHidden=r:r&&e._extend(n,r),m(n.showHidden)&&(n.showHidden=!1),m(n.depth)&&(n.depth=2),m(n.colors)&&(n.colors=!1),m(n.customInspect)&&(n.customInspect=!0),n.colors&&(n.stylize=f),c(n,t,n.depth)}function f(t,e){var r=a.styles[e];return r?"["+a.colors[r][0]+"m"+t+"["+a.colors[r][1]+"m":t}function u(t,e){return t}function c(t,r,n){if(t.customInspect&&r&&w(r.inspect)&&r.inspect!==e.inspect&&(!r.constructor||r.constructor.prototype!==r)){var i=r.inspect(n,t);return v(i)||(i=c(t,i,n)),i}var o=function(t,e){if(m(e))return t.stylize("undefined","undefined");if(v(e)){var r="\'"+JSON.stringify(e).replace(/^"|"$/g,"").replace(/\'/g,"\\\\\'").replace(/\\\\"/g,\'"\')+"\'";return t.stylize(r,"string")}return d(e)?t.stylize(""+e,"number"):y(e)?t.stylize(""+e,"boolean"):g(e)?t.stylize("null","null"):void 0}(t,r);if(o)return o;var s=Object.keys(r),a=function(t){var e={};return t.forEach((function(t,r){e[t]=!0})),e}(s);if(t.showHidden&&(s=Object.getOwnPropertyNames(r)),E(r)&&(s.indexOf("message")>=0||s.indexOf("description")>=0))return h(r);if(0===s.length){if(w(r)){var f=r.name?": "+r.name:"";return t.stylize("[Function"+f+"]","special")}if(S(r))return t.stylize(RegExp.prototype.toString.call(r),"regexp");if(b(r))return t.stylize(Date.prototype.toString.call(r),"date");if(E(r))return h(r)}var u,_="",O=!1,B=["{","}"];return l(r)&&(O=!0,B=["[","]"]),w(r)&&(_=" [Function"+(r.name?": "+r.name:"")+"]"),S(r)&&(_=" "+RegExp.prototype.toString.call(r)),b(r)&&(_=" "+Date.prototype.toUTCString.call(r)),E(r)&&(_=" "+h(r)),0!==s.length||O&&0!=r.length?n<0?S(r)?t.stylize(RegExp.prototype.toString.call(r),"regexp"):t.stylize("[Object]","special"):(t.seen.push(r),u=O?function(t,e,r,n,i){for(var o=[],s=0,a=e.length;s60?r[0]+(""===e?"":e+"\\n ")+" "+t.join(",\\n ")+" "+r[1]:r[0]+e+" "+t.join(", ")+" "+r[1]}(u,_,B)):B[0]+_+B[1]}function h(t){return"["+Error.prototype.toString.call(t)+"]"}function p(t,e,r,n,i,o){var s,a,f;if((f=Object.getOwnPropertyDescriptor(e,i)||{value:e[i]}).get?a=f.set?t.stylize("[Getter/Setter]","special"):t.stylize("[Getter]","special"):f.set&&(a=t.stylize("[Setter]","special")),x(n,i)||(s="["+i+"]"),a||(t.seen.indexOf(f.value)<0?(a=g(r)?c(t,f.value,null):c(t,f.value,r-1)).indexOf("\\n")>-1&&(a=o?a.split("\\n").map((function(t){return" "+t})).join("\\n").substr(2):"\\n"+a.split("\\n").map((function(t){return" "+t})).join("\\n")):a=t.stylize("[Circular]","special")),m(s)){if(o&&i.match(/^\\d+$/))return a;(s=JSON.stringify(""+i)).match(/^"([a-zA-Z_][a-zA-Z_0-9]*)"$/)?(s=s.substr(1,s.length-2),s=t.stylize(s,"name")):(s=s.replace(/\'/g,"\\\\\'").replace(/\\\\"/g,\'"\').replace(/(^"|"$)/g,"\'"),s=t.stylize(s,"string"))}return s+": "+a}function l(t){return Array.isArray(t)}function y(t){return"boolean"==typeof t}function g(t){return null===t}function d(t){return"number"==typeof t}function v(t){return"string"==typeof t}function m(t){return void 0===t}function S(t){return _(t)&&"[object RegExp]"===O(t)}function _(t){return"object"==typeof t&&null!==t}function b(t){return _(t)&&"[object Date]"===O(t)}function E(t){return _(t)&&("[object Error]"===O(t)||t instanceof Error)}function w(t){return"function"==typeof t}function O(t){return Object.prototype.toString.call(t)}function B(t){return t<10?"0"+t.toString(10):t.toString(10)}e.debuglog=function(t){if(m(o)&&(o=n.env.NODE_DEBUG||""),t=t.toUpperCase(),!s[t])if(new RegExp("\\\\b"+t+"\\\\b","i").test(o)){var r=n.pid;s[t]=function(){var n=e.format.apply(e,arguments);console.error("%s %d: %s",t,r,n)}}else s[t]=function(){};return s[t]},e.inspect=a,a.colors={bold:[1,22],italic:[3,23],underline:[4,24],inverse:[7,27],white:[37,39],grey:[90,39],black:[30,39],blue:[34,39],cyan:[36,39],green:[32,39],magenta:[35,39],red:[31,39],yellow:[33,39]},a.styles={special:"cyan",number:"yellow",boolean:"yellow",undefined:"grey",null:"bold",string:"green",date:"magenta",regexp:"red"},e.isArray=l,e.isBoolean=y,e.isNull=g,e.isNullOrUndefined=function(t){return null==t},e.isNumber=d,e.isString=v,e.isSymbol=function(t){return"symbol"==typeof t},e.isUndefined=m,e.isRegExp=S,e.isObject=_,e.isDate=b,e.isError=E,e.isFunction=w,e.isPrimitive=function(t){return null===t||"boolean"==typeof t||"number"==typeof t||"string"==typeof t||"symbol"==typeof t||void 0===t},e.isBuffer=r(3845);var A=["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"];function x(t,e){return Object.prototype.hasOwnProperty.call(t,e)}e.log=function(){var t,r;console.log("%s - %s",(r=[B((t=new Date).getHours()),B(t.getMinutes()),B(t.getSeconds())].join(":"),[t.getDate(),A[t.getMonth()],r].join(" ")),e.format.apply(e,arguments))},e.inherits=r(6100),e._extend=function(t,e){if(!e||!_(e))return t;for(var r=Object.keys(e),n=r.length;n--;)t[r[n]]=e[r[n]];return t}},7526:(t,e)=>{"use strict";e.byteLength=function(t){var e=a(t),r=e[0],n=e[1];return 3*(r+n)/4-n},e.toByteArray=function(t){var e,r,o=a(t),s=o[0],f=o[1],u=new i(function(t,e,r){return 3*(e+r)/4-r}(0,s,f)),c=0,h=f>0?s-4:s;for(r=0;r>16&255,u[c++]=e>>8&255,u[c++]=255&e;return 2===f&&(e=n[t.charCodeAt(r)]<<2|n[t.charCodeAt(r+1)]>>4,u[c++]=255&e),1===f&&(e=n[t.charCodeAt(r)]<<10|n[t.charCodeAt(r+1)]<<4|n[t.charCodeAt(r+2)]>>2,u[c++]=e>>8&255,u[c++]=255&e),u},e.fromByteArray=function(t){for(var e,n=t.length,i=n%3,o=[],s=16383,a=0,u=n-i;au?u:a+s));return 1===i?(e=t[n-1],o.push(r[e>>2]+r[e<<4&63]+"==")):2===i&&(e=(t[n-2]<<8)+t[n-1],o.push(r[e>>10]+r[e>>4&63]+r[e<<2&63]+"=")),o.join("")};for(var r=[],n=[],i="undefined"!=typeof Uint8Array?Uint8Array:Array,o="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",s=0;s<64;++s)r[s]=o[s],n[o.charCodeAt(s)]=s;function a(t){var e=t.length;if(e%4>0)throw new Error("Invalid string. Length must be a multiple of 4");var r=t.indexOf("=");return-1===r&&(r=e),[r,r===e?0:4-r%4]}function f(t,e,n){for(var i,o,s=[],a=e;a>18&63]+r[o>>12&63]+r[o>>6&63]+r[63&o]);return s.join("")}n["-".charCodeAt(0)]=62,n["_".charCodeAt(0)]=63},8287:(t,e,r)=>{"use strict";var n=r(7526),i=r(251);e.Buffer=a,e.SlowBuffer=function(t){return+t!=t&&(t=0),a.alloc(+t)},e.INSPECT_MAX_BYTES=50;var o=2147483647;function s(t){if(t>o)throw new RangeError(\'The value "\'+t+\'" is invalid for option "size"\');var e=new Uint8Array(t);return e.__proto__=a.prototype,e}function a(t,e,r){if("number"==typeof t){if("string"==typeof e)throw new TypeError(\'The "string" argument must be of type string. Received type number\');return c(t)}return f(t,e,r)}function f(t,e,r){if("string"==typeof t)return function(t,e){if("string"==typeof e&&""!==e||(e="utf8"),!a.isEncoding(e))throw new TypeError("Unknown encoding: "+e);var r=0|l(t,e),n=s(r),i=n.write(t,e);return i!==r&&(n=n.slice(0,i)),n}(t,e);if(ArrayBuffer.isView(t))return h(t);if(null==t)throw TypeError("The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type "+typeof t);if(H(t,ArrayBuffer)||t&&H(t.buffer,ArrayBuffer))return function(t,e,r){if(e<0||t.byteLength=o)throw new RangeError("Attempt to allocate Buffer larger than maximum size: 0x"+o.toString(16)+" bytes");return 0|t}function l(t,e){if(a.isBuffer(t))return t.length;if(ArrayBuffer.isView(t)||H(t,ArrayBuffer))return t.byteLength;if("string"!=typeof t)throw new TypeError(\'The "string" argument must be one of type string, Buffer, or ArrayBuffer. Received type \'+typeof t);var r=t.length,n=arguments.length>2&&!0===arguments[2];if(!n&&0===r)return 0;for(var i=!1;;)switch(e){case"ascii":case"latin1":case"binary":return r;case"utf8":case"utf-8":return U(t).length;case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return 2*r;case"hex":return r>>>1;case"base64":return M(t).length;default:if(i)return n?-1:U(t).length;e=(""+e).toLowerCase(),i=!0}}function y(t,e,r){var n=!1;if((void 0===e||e<0)&&(e=0),e>this.length)return"";if((void 0===r||r>this.length)&&(r=this.length),r<=0)return"";if((r>>>=0)<=(e>>>=0))return"";for(t||(t="utf8");;)switch(t){case"hex":return T(this,e,r);case"utf8":case"utf-8":return B(this,e,r);case"ascii":return x(this,e,r);case"latin1":case"binary":return P(this,e,r);case"base64":return O(this,e,r);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return I(this,e,r);default:if(n)throw new TypeError("Unknown encoding: "+t);t=(t+"").toLowerCase(),n=!0}}function g(t,e,r){var n=t[e];t[e]=t[r],t[r]=n}function d(t,e,r,n,i){if(0===t.length)return-1;if("string"==typeof r?(n=r,r=0):r>2147483647?r=2147483647:r<-2147483648&&(r=-2147483648),F(r=+r)&&(r=i?0:t.length-1),r<0&&(r=t.length+r),r>=t.length){if(i)return-1;r=t.length-1}else if(r<0){if(!i)return-1;r=0}if("string"==typeof e&&(e=a.from(e,n)),a.isBuffer(e))return 0===e.length?-1:v(t,e,r,n,i);if("number"==typeof e)return e&=255,"function"==typeof Uint8Array.prototype.indexOf?i?Uint8Array.prototype.indexOf.call(t,e,r):Uint8Array.prototype.lastIndexOf.call(t,e,r):v(t,[e],r,n,i);throw new TypeError("val must be string, number or Buffer")}function v(t,e,r,n,i){var o,s=1,a=t.length,f=e.length;if(void 0!==n&&("ucs2"===(n=String(n).toLowerCase())||"ucs-2"===n||"utf16le"===n||"utf-16le"===n)){if(t.length<2||e.length<2)return-1;s=2,a/=2,f/=2,r/=2}function u(t,e){return 1===s?t[e]:t.readUInt16BE(e*s)}if(i){var c=-1;for(o=r;oa&&(r=a-f),o=r;o>=0;o--){for(var h=!0,p=0;pi&&(n=i):n=i;var o=e.length;n>o/2&&(n=o/2);for(var s=0;s>8,i=r%256,o.push(i),o.push(n);return o}(e,t.length-r),t,r,n)}function O(t,e,r){return 0===e&&r===t.length?n.fromByteArray(t):n.fromByteArray(t.slice(e,r))}function B(t,e,r){r=Math.min(t.length,r);for(var n=[],i=e;i239?4:u>223?3:u>191?2:1;if(i+h<=r)switch(h){case 1:u<128&&(c=u);break;case 2:128==(192&(o=t[i+1]))&&(f=(31&u)<<6|63&o)>127&&(c=f);break;case 3:o=t[i+1],s=t[i+2],128==(192&o)&&128==(192&s)&&(f=(15&u)<<12|(63&o)<<6|63&s)>2047&&(f<55296||f>57343)&&(c=f);break;case 4:o=t[i+1],s=t[i+2],a=t[i+3],128==(192&o)&&128==(192&s)&&128==(192&a)&&(f=(15&u)<<18|(63&o)<<12|(63&s)<<6|63&a)>65535&&f<1114112&&(c=f)}null===c?(c=65533,h=1):c>65535&&(c-=65536,n.push(c>>>10&1023|55296),c=56320|1023&c),n.push(c),i+=h}return function(t){var e=t.length;if(e<=A)return String.fromCharCode.apply(String,t);for(var r="",n=0;nr&&(t+=" ... "),""},a.prototype.compare=function(t,e,r,n,i){if(H(t,Uint8Array)&&(t=a.from(t,t.offset,t.byteLength)),!a.isBuffer(t))throw new TypeError(\'The "target" argument must be one of type Buffer or Uint8Array. Received type \'+typeof t);if(void 0===e&&(e=0),void 0===r&&(r=t?t.length:0),void 0===n&&(n=0),void 0===i&&(i=this.length),e<0||r>t.length||n<0||i>this.length)throw new RangeError("out of range index");if(n>=i&&e>=r)return 0;if(n>=i)return-1;if(e>=r)return 1;if(this===t)return 0;for(var o=(i>>>=0)-(n>>>=0),s=(r>>>=0)-(e>>>=0),f=Math.min(o,s),u=this.slice(n,i),c=t.slice(e,r),h=0;h>>=0,isFinite(r)?(r>>>=0,void 0===n&&(n="utf8")):(n=r,r=void 0)}var i=this.length-e;if((void 0===r||r>i)&&(r=i),t.length>0&&(r<0||e<0)||e>this.length)throw new RangeError("Attempt to write outside buffer bounds");n||(n="utf8");for(var o=!1;;)switch(n){case"hex":return m(this,t,e,r);case"utf8":case"utf-8":return S(this,t,e,r);case"ascii":return _(this,t,e,r);case"latin1":case"binary":return b(this,t,e,r);case"base64":return E(this,t,e,r);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return w(this,t,e,r);default:if(o)throw new TypeError("Unknown encoding: "+n);n=(""+n).toLowerCase(),o=!0}},a.prototype.toJSON=function(){return{type:"Buffer",data:Array.prototype.slice.call(this._arr||this,0)}};var A=4096;function x(t,e,r){var n="";r=Math.min(t.length,r);for(var i=e;ii)&&(r=i);for(var o="",s=e;sr)throw new RangeError("Trying to access beyond buffer length")}function D(t,e,r,n,i,o){if(!a.isBuffer(t))throw new TypeError(\'"buffer" argument must be a Buffer instance\');if(e>i||et.length)throw new RangeError("Index out of range")}function R(t,e,r,n,i,o){if(r+n>t.length)throw new RangeError("Index out of range");if(r<0)throw new RangeError("Index out of range")}function N(t,e,r,n,o){return e=+e,r>>>=0,o||R(t,0,r,4),i.write(t,e,r,n,23,4),r+4}function L(t,e,r,n,o){return e=+e,r>>>=0,o||R(t,0,r,8),i.write(t,e,r,n,52,8),r+8}a.prototype.slice=function(t,e){var r=this.length;(t=~~t)<0?(t+=r)<0&&(t=0):t>r&&(t=r),(e=void 0===e?r:~~e)<0?(e+=r)<0&&(e=0):e>r&&(e=r),e>>=0,e>>>=0,r||k(t,e,this.length);for(var n=this[t],i=1,o=0;++o>>=0,e>>>=0,r||k(t,e,this.length);for(var n=this[t+--e],i=1;e>0&&(i*=256);)n+=this[t+--e]*i;return n},a.prototype.readUInt8=function(t,e){return t>>>=0,e||k(t,1,this.length),this[t]},a.prototype.readUInt16LE=function(t,e){return t>>>=0,e||k(t,2,this.length),this[t]|this[t+1]<<8},a.prototype.readUInt16BE=function(t,e){return t>>>=0,e||k(t,2,this.length),this[t]<<8|this[t+1]},a.prototype.readUInt32LE=function(t,e){return t>>>=0,e||k(t,4,this.length),(this[t]|this[t+1]<<8|this[t+2]<<16)+16777216*this[t+3]},a.prototype.readUInt32BE=function(t,e){return t>>>=0,e||k(t,4,this.length),16777216*this[t]+(this[t+1]<<16|this[t+2]<<8|this[t+3])},a.prototype.readIntLE=function(t,e,r){t>>>=0,e>>>=0,r||k(t,e,this.length);for(var n=this[t],i=1,o=0;++o=(i*=128)&&(n-=Math.pow(2,8*e)),n},a.prototype.readIntBE=function(t,e,r){t>>>=0,e>>>=0,r||k(t,e,this.length);for(var n=e,i=1,o=this[t+--n];n>0&&(i*=256);)o+=this[t+--n]*i;return o>=(i*=128)&&(o-=Math.pow(2,8*e)),o},a.prototype.readInt8=function(t,e){return t>>>=0,e||k(t,1,this.length),128&this[t]?-1*(255-this[t]+1):this[t]},a.prototype.readInt16LE=function(t,e){t>>>=0,e||k(t,2,this.length);var r=this[t]|this[t+1]<<8;return 32768&r?4294901760|r:r},a.prototype.readInt16BE=function(t,e){t>>>=0,e||k(t,2,this.length);var r=this[t+1]|this[t]<<8;return 32768&r?4294901760|r:r},a.prototype.readInt32LE=function(t,e){return t>>>=0,e||k(t,4,this.length),this[t]|this[t+1]<<8|this[t+2]<<16|this[t+3]<<24},a.prototype.readInt32BE=function(t,e){return t>>>=0,e||k(t,4,this.length),this[t]<<24|this[t+1]<<16|this[t+2]<<8|this[t+3]},a.prototype.readFloatLE=function(t,e){return t>>>=0,e||k(t,4,this.length),i.read(this,t,!0,23,4)},a.prototype.readFloatBE=function(t,e){return t>>>=0,e||k(t,4,this.length),i.read(this,t,!1,23,4)},a.prototype.readDoubleLE=function(t,e){return t>>>=0,e||k(t,8,this.length),i.read(this,t,!0,52,8)},a.prototype.readDoubleBE=function(t,e){return t>>>=0,e||k(t,8,this.length),i.read(this,t,!1,52,8)},a.prototype.writeUIntLE=function(t,e,r,n){t=+t,e>>>=0,r>>>=0,n||D(this,t,e,r,Math.pow(2,8*r)-1,0);var i=1,o=0;for(this[e]=255&t;++o>>=0,r>>>=0,n||D(this,t,e,r,Math.pow(2,8*r)-1,0);var i=r-1,o=1;for(this[e+i]=255&t;--i>=0&&(o*=256);)this[e+i]=t/o&255;return e+r},a.prototype.writeUInt8=function(t,e,r){return t=+t,e>>>=0,r||D(this,t,e,1,255,0),this[e]=255&t,e+1},a.prototype.writeUInt16LE=function(t,e,r){return t=+t,e>>>=0,r||D(this,t,e,2,65535,0),this[e]=255&t,this[e+1]=t>>>8,e+2},a.prototype.writeUInt16BE=function(t,e,r){return t=+t,e>>>=0,r||D(this,t,e,2,65535,0),this[e]=t>>>8,this[e+1]=255&t,e+2},a.prototype.writeUInt32LE=function(t,e,r){return t=+t,e>>>=0,r||D(this,t,e,4,4294967295,0),this[e+3]=t>>>24,this[e+2]=t>>>16,this[e+1]=t>>>8,this[e]=255&t,e+4},a.prototype.writeUInt32BE=function(t,e,r){return t=+t,e>>>=0,r||D(this,t,e,4,4294967295,0),this[e]=t>>>24,this[e+1]=t>>>16,this[e+2]=t>>>8,this[e+3]=255&t,e+4},a.prototype.writeIntLE=function(t,e,r,n){if(t=+t,e>>>=0,!n){var i=Math.pow(2,8*r-1);D(this,t,e,r,i-1,-i)}var o=0,s=1,a=0;for(this[e]=255&t;++o>>=0,!n){var i=Math.pow(2,8*r-1);D(this,t,e,r,i-1,-i)}var o=r-1,s=1,a=0;for(this[e+o]=255&t;--o>=0&&(s*=256);)t<0&&0===a&&0!==this[e+o+1]&&(a=1),this[e+o]=(t/s|0)-a&255;return e+r},a.prototype.writeInt8=function(t,e,r){return t=+t,e>>>=0,r||D(this,t,e,1,127,-128),t<0&&(t=255+t+1),this[e]=255&t,e+1},a.prototype.writeInt16LE=function(t,e,r){return t=+t,e>>>=0,r||D(this,t,e,2,32767,-32768),this[e]=255&t,this[e+1]=t>>>8,e+2},a.prototype.writeInt16BE=function(t,e,r){return t=+t,e>>>=0,r||D(this,t,e,2,32767,-32768),this[e]=t>>>8,this[e+1]=255&t,e+2},a.prototype.writeInt32LE=function(t,e,r){return t=+t,e>>>=0,r||D(this,t,e,4,2147483647,-2147483648),this[e]=255&t,this[e+1]=t>>>8,this[e+2]=t>>>16,this[e+3]=t>>>24,e+4},a.prototype.writeInt32BE=function(t,e,r){return t=+t,e>>>=0,r||D(this,t,e,4,2147483647,-2147483648),t<0&&(t=4294967295+t+1),this[e]=t>>>24,this[e+1]=t>>>16,this[e+2]=t>>>8,this[e+3]=255&t,e+4},a.prototype.writeFloatLE=function(t,e,r){return N(this,t,e,!0,r)},a.prototype.writeFloatBE=function(t,e,r){return N(this,t,e,!1,r)},a.prototype.writeDoubleLE=function(t,e,r){return L(this,t,e,!0,r)},a.prototype.writeDoubleBE=function(t,e,r){return L(this,t,e,!1,r)},a.prototype.copy=function(t,e,r,n){if(!a.isBuffer(t))throw new TypeError("argument should be a Buffer");if(r||(r=0),n||0===n||(n=this.length),e>=t.length&&(e=t.length),e||(e=0),n>0&&n=this.length)throw new RangeError("Index out of range");if(n<0)throw new RangeError("sourceEnd out of bounds");n>this.length&&(n=this.length),t.length-e=0;--o)t[o+e]=this[o+r];else Uint8Array.prototype.set.call(t,this.subarray(r,n),e);return i},a.prototype.fill=function(t,e,r,n){if("string"==typeof t){if("string"==typeof e?(n=e,e=0,r=this.length):"string"==typeof r&&(n=r,r=this.length),void 0!==n&&"string"!=typeof n)throw new TypeError("encoding must be a string");if("string"==typeof n&&!a.isEncoding(n))throw new TypeError("Unknown encoding: "+n);if(1===t.length){var i=t.charCodeAt(0);("utf8"===n&&i<128||"latin1"===n)&&(t=i)}}else"number"==typeof t&&(t&=255);if(e<0||this.length>>=0,r=void 0===r?this.length:r>>>0,t||(t=0),"number"==typeof t)for(o=e;o55295&&r<57344){if(!i){if(r>56319){(e-=3)>-1&&o.push(239,191,189);continue}if(s+1===n){(e-=3)>-1&&o.push(239,191,189);continue}i=r;continue}if(r<56320){(e-=3)>-1&&o.push(239,191,189),i=r;continue}r=65536+(i-55296<<10|r-56320)}else i&&(e-=3)>-1&&o.push(239,191,189);if(i=null,r<128){if((e-=1)<0)break;o.push(r)}else if(r<2048){if((e-=2)<0)break;o.push(r>>6|192,63&r|128)}else if(r<65536){if((e-=3)<0)break;o.push(r>>12|224,r>>6&63|128,63&r|128)}else{if(!(r<1114112))throw new Error("Invalid code point");if((e-=4)<0)break;o.push(r>>18|240,r>>12&63|128,r>>6&63|128,63&r|128)}}return o}function M(t){return n.toByteArray(function(t){if((t=(t=t.split("=")[0]).trim().replace(C,"")).length<2)return"";for(;t.length%4!=0;)t+="=";return t}(t))}function j(t,e,r,n){for(var i=0;i=e.length||i>=t.length);++i)e[i+r]=t[i];return i}function H(t,e){return t instanceof e||null!=t&&null!=t.constructor&&null!=t.constructor.name&&t.constructor.name===e.name}function F(t){return t!=t}},8075:(t,e,r)=>{"use strict";var n=r(453),i=r(487),o=i(n("String.prototype.indexOf"));t.exports=function(t,e){var r=n(t,!!e);return"function"==typeof r&&o(t,".prototype.")>-1?i(r):r}},487:(t,e,r)=>{"use strict";var n=r(6743),i=r(453),o=r(6897),s=r(9675),a=i("%Function.prototype.apply%"),f=i("%Function.prototype.call%"),u=i("%Reflect.apply%",!0)||n.call(f,a),c=r(655),h=i("%Math.max%");t.exports=function(t){if("function"!=typeof t)throw new s("a function is required");var e=u(n,f,arguments);return o(e,1+h(0,t.length-(arguments.length-1)),!0)};var p=function(){return u(n,a,arguments)};c?c(t.exports,"apply",{value:p}):t.exports.apply=p},955:function(t,e,r){var n;t.exports=(n=r(9021),r(754),r(4636),r(9506),r(7165),function(){var t=n,e=t.lib.BlockCipher,r=t.algo,i=[],o=[],s=[],a=[],f=[],u=[],c=[],h=[],p=[],l=[];!function(){for(var t=[],e=0;e<256;e++)t[e]=e<128?e<<1:e<<1^283;var r=0,n=0;for(e=0;e<256;e++){var y=n^n<<1^n<<2^n<<3^n<<4;y=y>>>8^255&y^99,i[r]=y,o[y]=r;var g=t[r],d=t[g],v=t[d],m=257*t[y]^16843008*y;s[r]=m<<24|m>>>8,a[r]=m<<16|m>>>16,f[r]=m<<8|m>>>24,u[r]=m,m=16843009*v^65537*d^257*g^16843008*r,c[y]=m<<24|m>>>8,h[y]=m<<16|m>>>16,p[y]=m<<8|m>>>24,l[y]=m,r?(r=g^t[t[t[v^g]]],n^=t[t[n]]):r=n=1}}();var y=[0,1,2,4,8,16,32,64,128,27,54],g=r.AES=e.extend({_doReset:function(){if(!this._nRounds||this._keyPriorReset!==this._key){for(var t=this._keyPriorReset=this._key,e=t.words,r=t.sigBytes/4,n=4*((this._nRounds=r+6)+1),o=this._keySchedule=[],s=0;s6&&s%r==4&&(a=i[a>>>24]<<24|i[a>>>16&255]<<16|i[a>>>8&255]<<8|i[255&a]):(a=i[(a=a<<8|a>>>24)>>>24]<<24|i[a>>>16&255]<<16|i[a>>>8&255]<<8|i[255&a],a^=y[s/r|0]<<24),o[s]=o[s-r]^a}for(var f=this._invKeySchedule=[],u=0;u>>24]]^h[i[a>>>16&255]]^p[i[a>>>8&255]]^l[i[255&a]]}},encryptBlock:function(t,e){this._doCryptBlock(t,e,this._keySchedule,s,a,f,u,i)},decryptBlock:function(t,e){var r=t[e+1];t[e+1]=t[e+3],t[e+3]=r,this._doCryptBlock(t,e,this._invKeySchedule,c,h,p,l,o),r=t[e+1],t[e+1]=t[e+3],t[e+3]=r},_doCryptBlock:function(t,e,r,n,i,o,s,a){for(var f=this._nRounds,u=t[e]^r[0],c=t[e+1]^r[1],h=t[e+2]^r[2],p=t[e+3]^r[3],l=4,y=1;y>>24]^i[c>>>16&255]^o[h>>>8&255]^s[255&p]^r[l++],d=n[c>>>24]^i[h>>>16&255]^o[p>>>8&255]^s[255&u]^r[l++],v=n[h>>>24]^i[p>>>16&255]^o[u>>>8&255]^s[255&c]^r[l++],m=n[p>>>24]^i[u>>>16&255]^o[c>>>8&255]^s[255&h]^r[l++];u=g,c=d,h=v,p=m}g=(a[u>>>24]<<24|a[c>>>16&255]<<16|a[h>>>8&255]<<8|a[255&p])^r[l++],d=(a[c>>>24]<<24|a[h>>>16&255]<<16|a[p>>>8&255]<<8|a[255&u])^r[l++],v=(a[h>>>24]<<24|a[p>>>16&255]<<16|a[u>>>8&255]<<8|a[255&c])^r[l++],m=(a[p>>>24]<<24|a[u>>>16&255]<<16|a[c>>>8&255]<<8|a[255&h])^r[l++],t[e]=g,t[e+1]=d,t[e+2]=v,t[e+3]=m},keySize:8});t.AES=e._createHelper(g)}(),n.AES)},7165:function(t,e,r){var n,i,o,s,a,f,u,c,h,p,l,y,g,d,v,m,S,_,b;t.exports=(n=r(9021),r(9506),void(n.lib.Cipher||(i=n,o=i.lib,s=o.Base,a=o.WordArray,f=o.BufferedBlockAlgorithm,u=i.enc,u.Utf8,c=u.Base64,h=i.algo.EvpKDF,p=o.Cipher=f.extend({cfg:s.extend(),createEncryptor:function(t,e){return this.create(this._ENC_XFORM_MODE,t,e)},createDecryptor:function(t,e){return this.create(this._DEC_XFORM_MODE,t,e)},init:function(t,e,r){this.cfg=this.cfg.extend(r),this._xformMode=t,this._key=e,this.reset()},reset:function(){f.reset.call(this),this._doReset()},process:function(t){return this._append(t),this._process()},finalize:function(t){return t&&this._append(t),this._doFinalize()},keySize:4,ivSize:4,_ENC_XFORM_MODE:1,_DEC_XFORM_MODE:2,_createHelper:function(){function t(t){return"string"==typeof t?b:S}return function(e){return{encrypt:function(r,n,i){return t(n).encrypt(e,r,n,i)},decrypt:function(r,n,i){return t(n).decrypt(e,r,n,i)}}}}()}),o.StreamCipher=p.extend({_doFinalize:function(){return this._process(!0)},blockSize:1}),l=i.mode={},y=o.BlockCipherMode=s.extend({createEncryptor:function(t,e){return this.Encryptor.create(t,e)},createDecryptor:function(t,e){return this.Decryptor.create(t,e)},init:function(t,e){this._cipher=t,this._iv=e}}),g=l.CBC=function(){var t=y.extend();function e(t,e,r){var n=this._iv;if(n){var i=n;this._iv=void 0}else i=this._prevBlock;for(var o=0;o>>2];t.sigBytes-=e}},o.BlockCipher=p.extend({cfg:p.cfg.extend({mode:g,padding:d}),reset:function(){p.reset.call(this);var t=this.cfg,e=t.iv,r=t.mode;if(this._xformMode==this._ENC_XFORM_MODE)var n=r.createEncryptor;else n=r.createDecryptor,this._minBufferSize=1;this._mode&&this._mode.__creator==n?this._mode.init(this,e&&e.words):(this._mode=n.call(r,this,e&&e.words),this._mode.__creator=n)},_doProcessBlock:function(t,e){this._mode.processBlock(t,e)},_doFinalize:function(){var t=this.cfg.padding;if(this._xformMode==this._ENC_XFORM_MODE){t.pad(this._data,this.blockSize);var e=this._process(!0)}else e=this._process(!0),t.unpad(e);return e},blockSize:4}),v=o.CipherParams=s.extend({init:function(t){this.mixIn(t)},toString:function(t){return(t||this.formatter).stringify(this)}}),m=(i.format={}).OpenSSL={stringify:function(t){var e=t.ciphertext,r=t.salt;if(r)var n=a.create([1398893684,1701076831]).concat(r).concat(e);else n=e;return n.toString(c)},parse:function(t){var e=c.parse(t),r=e.words;if(1398893684==r[0]&&1701076831==r[1]){var n=a.create(r.slice(2,4));r.splice(0,4),e.sigBytes-=16}return v.create({ciphertext:e,salt:n})}},S=o.SerializableCipher=s.extend({cfg:s.extend({format:m}),encrypt:function(t,e,r,n){n=this.cfg.extend(n);var i=t.createEncryptor(r,n),o=i.finalize(e),s=i.cfg;return v.create({ciphertext:o,key:r,iv:s.iv,algorithm:t,mode:s.mode,padding:s.padding,blockSize:t.blockSize,formatter:n.format})},decrypt:function(t,e,r,n){return n=this.cfg.extend(n),e=this._parse(e,n.format),t.createDecryptor(r,n).finalize(e.ciphertext)},_parse:function(t,e){return"string"==typeof t?e.parse(t,this):t}}),_=(i.kdf={}).OpenSSL={execute:function(t,e,r,n){n||(n=a.random(8));var i=h.create({keySize:e+r}).compute(t,n),o=a.create(i.words.slice(e),4*r);return i.sigBytes=4*e,v.create({key:i,iv:o,salt:n})}},b=o.PasswordBasedCipher=S.extend({cfg:S.cfg.extend({kdf:_}),encrypt:function(t,e,r,n){var i=(n=this.cfg.extend(n)).kdf.execute(r,t.keySize,t.ivSize);n.iv=i.iv;var o=S.encrypt.call(this,t,e,i.key,n);return o.mixIn(i),o},decrypt:function(t,e,r,n){n=this.cfg.extend(n),e=this._parse(e,n.format);var i=n.kdf.execute(r,t.keySize,t.ivSize,e.salt);return n.iv=i.iv,S.decrypt.call(this,t,e,i.key,n)}}))))},9021:function(t,e){var r;t.exports=(r=r||function(t,e){var r=Object.create||function(){function t(){}return function(e){var r;return t.prototype=e,r=new t,t.prototype=null,r}}(),n={},i=n.lib={},o=i.Base={extend:function(t){var e=r(this);return t&&e.mixIn(t),e.hasOwnProperty("init")&&this.init!==e.init||(e.init=function(){e.$super.init.apply(this,arguments)}),e.init.prototype=e,e.$super=this,e},create:function(){var t=this.extend();return t.init.apply(t,arguments),t},init:function(){},mixIn:function(t){for(var e in t)t.hasOwnProperty(e)&&(this[e]=t[e]);t.hasOwnProperty("toString")&&(this.toString=t.toString)},clone:function(){return this.init.prototype.extend(this)}},s=i.WordArray=o.extend({init:function(t,e){t=this.words=t||[],this.sigBytes=null!=e?e:4*t.length},toString:function(t){return(t||f).stringify(this)},concat:function(t){var e=this.words,r=t.words,n=this.sigBytes,i=t.sigBytes;if(this.clamp(),n%4)for(var o=0;o>>2]>>>24-o%4*8&255;e[n+o>>>2]|=s<<24-(n+o)%4*8}else for(o=0;o>>2]=r[o>>>2];return this.sigBytes+=i,this},clamp:function(){var e=this.words,r=this.sigBytes;e[r>>>2]&=4294967295<<32-r%4*8,e.length=t.ceil(r/4)},clone:function(){var t=o.clone.call(this);return t.words=this.words.slice(0),t},random:function(e){for(var r,n=[],i=function(e){var r=987654321,n=4294967295;return function(){var i=((r=36969*(65535&r)+(r>>16)&n)<<16)+(e=18e3*(65535&e)+(e>>16)&n)&n;return i/=4294967296,(i+=.5)*(t.random()>.5?1:-1)}},o=0;o>>2]>>>24-i%4*8&255;n.push((o>>>4).toString(16)),n.push((15&o).toString(16))}return n.join("")},parse:function(t){for(var e=t.length,r=[],n=0;n>>3]|=parseInt(t.substr(n,2),16)<<24-n%8*4;return new s.init(r,e/2)}},u=a.Latin1={stringify:function(t){for(var e=t.words,r=t.sigBytes,n=[],i=0;i>>2]>>>24-i%4*8&255;n.push(String.fromCharCode(o))}return n.join("")},parse:function(t){for(var e=t.length,r=[],n=0;n>>2]|=(255&t.charCodeAt(n))<<24-n%4*8;return new s.init(r,e)}},c=a.Utf8={stringify:function(t){try{return decodeURIComponent(escape(u.stringify(t)))}catch(t){throw new Error("Malformed UTF-8 data")}},parse:function(t){return u.parse(unescape(encodeURIComponent(t)))}},h=i.BufferedBlockAlgorithm=o.extend({reset:function(){this._data=new s.init,this._nDataBytes=0},_append:function(t){"string"==typeof t&&(t=c.parse(t)),this._data.concat(t),this._nDataBytes+=t.sigBytes},_process:function(e){var r=this._data,n=r.words,i=r.sigBytes,o=this.blockSize,a=i/(4*o),f=(a=e?t.ceil(a):t.max((0|a)-this._minBufferSize,0))*o,u=t.min(4*f,i);if(f){for(var c=0;c>>2]>>>24-o%4*8&255)<<16|(e[o+1>>>2]>>>24-(o+1)%4*8&255)<<8|e[o+2>>>2]>>>24-(o+2)%4*8&255,a=0;a<4&&o+.75*a>>6*(3-a)&63));var f=n.charAt(64);if(f)for(;i.length%4;)i.push(f);return i.join("")},parse:function(t){var e=t.length,r=this._map,n=this._reverseMap;if(!n){n=this._reverseMap=[];for(var i=0;i>>6-s%4*2;n[i>>>2]|=(a|f)<<24-i%4*8,i++}return o.create(n,i)}(t,e,n)},_map:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/="},n.enc.Base64)},5503:function(t,e,r){var n;t.exports=(n=r(9021),function(){var t=n,e=t.lib.WordArray,r=t.enc;function i(t){return t<<8&4278255360|t>>>8&16711935}r.Utf16=r.Utf16BE={stringify:function(t){for(var e=t.words,r=t.sigBytes,n=[],i=0;i>>2]>>>16-i%4*8&65535;n.push(String.fromCharCode(o))}return n.join("")},parse:function(t){for(var r=t.length,n=[],i=0;i>>1]|=t.charCodeAt(i)<<16-i%2*16;return e.create(n,2*r)}},r.Utf16LE={stringify:function(t){for(var e=t.words,r=t.sigBytes,n=[],o=0;o>>2]>>>16-o%4*8&65535);n.push(String.fromCharCode(s))}return n.join("")},parse:function(t){for(var r=t.length,n=[],o=0;o>>1]|=i(t.charCodeAt(o)<<16-o%2*16);return e.create(n,2*r)}}}(),n.enc.Utf16)},9506:function(t,e,r){var n,i,o,s,a,f,u,c;t.exports=(c=r(9021),r(5471),r(1025),o=(i=(n=c).lib).Base,s=i.WordArray,f=(a=n.algo).MD5,u=a.EvpKDF=o.extend({cfg:o.extend({keySize:4,hasher:f,iterations:1}),init:function(t){this.cfg=this.cfg.extend(t)},compute:function(t,e){for(var r=this.cfg,n=r.hasher.create(),i=s.create(),o=i.words,a=r.keySize,f=r.iterations;o.lengthn&&(e=t.finalize(e)),e.clamp();for(var i=this._oKey=e.clone(),s=this._iKey=e.clone(),a=i.words,f=s.words,u=0;u>>2]|=t[i]<<24-i%4*8;e.call(this,n,r)}else e.apply(this,arguments)};r.prototype=t}}(),n.lib.WordArray)},4636:function(t,e,r){var n;t.exports=(n=r(9021),function(t){var e=n,r=e.lib,i=r.WordArray,o=r.Hasher,s=e.algo,a=[];!function(){for(var e=0;e<64;e++)a[e]=4294967296*t.abs(t.sin(e+1))|0}();var f=s.MD5=o.extend({_doReset:function(){this._hash=new i.init([1732584193,4023233417,2562383102,271733878])},_doProcessBlock:function(t,e){for(var r=0;r<16;r++){var n=e+r,i=t[n];t[n]=16711935&(i<<8|i>>>24)|4278255360&(i<<24|i>>>8)}var o=this._hash.words,s=t[e+0],f=t[e+1],l=t[e+2],y=t[e+3],g=t[e+4],d=t[e+5],v=t[e+6],m=t[e+7],S=t[e+8],_=t[e+9],b=t[e+10],E=t[e+11],w=t[e+12],O=t[e+13],B=t[e+14],A=t[e+15],x=o[0],P=o[1],T=o[2],I=o[3];x=u(x,P,T,I,s,7,a[0]),I=u(I,x,P,T,f,12,a[1]),T=u(T,I,x,P,l,17,a[2]),P=u(P,T,I,x,y,22,a[3]),x=u(x,P,T,I,g,7,a[4]),I=u(I,x,P,T,d,12,a[5]),T=u(T,I,x,P,v,17,a[6]),P=u(P,T,I,x,m,22,a[7]),x=u(x,P,T,I,S,7,a[8]),I=u(I,x,P,T,_,12,a[9]),T=u(T,I,x,P,b,17,a[10]),P=u(P,T,I,x,E,22,a[11]),x=u(x,P,T,I,w,7,a[12]),I=u(I,x,P,T,O,12,a[13]),T=u(T,I,x,P,B,17,a[14]),x=c(x,P=u(P,T,I,x,A,22,a[15]),T,I,f,5,a[16]),I=c(I,x,P,T,v,9,a[17]),T=c(T,I,x,P,E,14,a[18]),P=c(P,T,I,x,s,20,a[19]),x=c(x,P,T,I,d,5,a[20]),I=c(I,x,P,T,b,9,a[21]),T=c(T,I,x,P,A,14,a[22]),P=c(P,T,I,x,g,20,a[23]),x=c(x,P,T,I,_,5,a[24]),I=c(I,x,P,T,B,9,a[25]),T=c(T,I,x,P,y,14,a[26]),P=c(P,T,I,x,S,20,a[27]),x=c(x,P,T,I,O,5,a[28]),I=c(I,x,P,T,l,9,a[29]),T=c(T,I,x,P,m,14,a[30]),x=h(x,P=c(P,T,I,x,w,20,a[31]),T,I,d,4,a[32]),I=h(I,x,P,T,S,11,a[33]),T=h(T,I,x,P,E,16,a[34]),P=h(P,T,I,x,B,23,a[35]),x=h(x,P,T,I,f,4,a[36]),I=h(I,x,P,T,g,11,a[37]),T=h(T,I,x,P,m,16,a[38]),P=h(P,T,I,x,b,23,a[39]),x=h(x,P,T,I,O,4,a[40]),I=h(I,x,P,T,s,11,a[41]),T=h(T,I,x,P,y,16,a[42]),P=h(P,T,I,x,v,23,a[43]),x=h(x,P,T,I,_,4,a[44]),I=h(I,x,P,T,w,11,a[45]),T=h(T,I,x,P,A,16,a[46]),x=p(x,P=h(P,T,I,x,l,23,a[47]),T,I,s,6,a[48]),I=p(I,x,P,T,m,10,a[49]),T=p(T,I,x,P,B,15,a[50]),P=p(P,T,I,x,d,21,a[51]),x=p(x,P,T,I,w,6,a[52]),I=p(I,x,P,T,y,10,a[53]),T=p(T,I,x,P,b,15,a[54]),P=p(P,T,I,x,f,21,a[55]),x=p(x,P,T,I,S,6,a[56]),I=p(I,x,P,T,A,10,a[57]),T=p(T,I,x,P,v,15,a[58]),P=p(P,T,I,x,O,21,a[59]),x=p(x,P,T,I,g,6,a[60]),I=p(I,x,P,T,E,10,a[61]),T=p(T,I,x,P,l,15,a[62]),P=p(P,T,I,x,_,21,a[63]),o[0]=o[0]+x|0,o[1]=o[1]+P|0,o[2]=o[2]+T|0,o[3]=o[3]+I|0},_doFinalize:function(){var e=this._data,r=e.words,n=8*this._nDataBytes,i=8*e.sigBytes;r[i>>>5]|=128<<24-i%32;var o=t.floor(n/4294967296),s=n;r[15+(i+64>>>9<<4)]=16711935&(o<<8|o>>>24)|4278255360&(o<<24|o>>>8),r[14+(i+64>>>9<<4)]=16711935&(s<<8|s>>>24)|4278255360&(s<<24|s>>>8),e.sigBytes=4*(r.length+1),this._process();for(var a=this._hash,f=a.words,u=0;u<4;u++){var c=f[u];f[u]=16711935&(c<<8|c>>>24)|4278255360&(c<<24|c>>>8)}return a},clone:function(){var t=o.clone.call(this);return t._hash=this._hash.clone(),t}});function u(t,e,r,n,i,o,s){var a=t+(e&r|~e&n)+i+s;return(a<>>32-o)+e}function c(t,e,r,n,i,o,s){var a=t+(e&n|r&~n)+i+s;return(a<>>32-o)+e}function h(t,e,r,n,i,o,s){var a=t+(e^r^n)+i+s;return(a<>>32-o)+e}function p(t,e,r,n,i,o,s){var a=t+(r^(e|~n))+i+s;return(a<>>32-o)+e}e.MD5=o._createHelper(f),e.HmacMD5=o._createHmacHelper(f)}(Math),n.MD5)},2169:function(t,e,r){var n;t.exports=(n=r(9021),r(7165),n.mode.CFB=function(){var t=n.lib.BlockCipherMode.extend();function e(t,e,r,n){var i=this._iv;if(i){var o=i.slice(0);this._iv=void 0}else o=this._prevBlock;n.encryptBlock(o,0);for(var s=0;s>24))t+=1<<24;else{var e=t>>16&255,r=t>>8&255,n=255&t;255===e?(e=0,255===r?(r=0,255===n?n=0:++n):++r):++e,t=0,t+=e<<16,t+=r<<8,t+=n}return t}var r=t.Encryptor=t.extend({processBlock:function(t,r){var n=this._cipher,i=n.blockSize,o=this._iv,s=this._counter;o&&(s=this._counter=o.slice(0),this._iv=void 0),function(t){0===(t[0]=e(t[0]))&&(t[1]=e(t[1]))}(s);var a=s.slice(0);n.encryptBlock(a,0);for(var f=0;f>>2]|=i<<24-o%4*8,t.sigBytes+=i},unpad:function(t){var e=255&t.words[t.sigBytes-1>>>2];t.sigBytes-=e}},n.pad.Ansix923)},4905:function(t,e,r){var n;t.exports=(n=r(9021),r(7165),n.pad.Iso10126={pad:function(t,e){var r=4*e,i=r-t.sigBytes%r;t.concat(n.lib.WordArray.random(i-1)).concat(n.lib.WordArray.create([i<<24],1))},unpad:function(t){var e=255&t.words[t.sigBytes-1>>>2];t.sigBytes-=e}},n.pad.Iso10126)},482:function(t,e,r){var n;t.exports=(n=r(9021),r(7165),n.pad.Iso97971={pad:function(t,e){t.concat(n.lib.WordArray.create([2147483648],1)),n.pad.ZeroPadding.pad(t,e)},unpad:function(t){n.pad.ZeroPadding.unpad(t),t.sigBytes--}},n.pad.Iso97971)},8124:function(t,e,r){var n;t.exports=(n=r(9021),r(7165),n.pad.NoPadding={pad:function(){},unpad:function(){}},n.pad.NoPadding)},2155:function(t,e,r){var n;t.exports=(n=r(9021),r(7165),n.pad.ZeroPadding={pad:function(t,e){var r=4*e;t.clamp(),t.sigBytes+=r-(t.sigBytes%r||r)},unpad:function(t){for(var e=t.words,r=t.sigBytes-1;!(e[r>>>2]>>>24-r%4*8&255);)r--;t.sigBytes=r+1}},n.pad.ZeroPadding)},19:function(t,e,r){var n,i,o,s,a,f,u,c,h;t.exports=(h=r(9021),r(5471),r(1025),o=(i=(n=h).lib).Base,s=i.WordArray,f=(a=n.algo).SHA1,u=a.HMAC,c=a.PBKDF2=o.extend({cfg:o.extend({keySize:4,hasher:f,iterations:1}),init:function(t){this.cfg=this.cfg.extend(t)},compute:function(t,e){for(var r=this.cfg,n=u.create(r.hasher,t),i=s.create(),o=s.create([1]),a=i.words,f=o.words,c=r.keySize,h=r.iterations;a.length>>16,t[1],t[0]<<16|t[3]>>>16,t[2],t[1]<<16|t[0]>>>16,t[3],t[2]<<16|t[1]>>>16],n=this._C=[t[2]<<16|t[2]>>>16,4294901760&t[0]|65535&t[1],t[3]<<16|t[3]>>>16,4294901760&t[1]|65535&t[2],t[0]<<16|t[0]>>>16,4294901760&t[2]|65535&t[3],t[1]<<16|t[1]>>>16,4294901760&t[3]|65535&t[0]];this._b=0;for(var i=0;i<4;i++)f.call(this);for(i=0;i<8;i++)n[i]^=r[i+4&7];if(e){var o=e.words,s=o[0],a=o[1],u=16711935&(s<<8|s>>>24)|4278255360&(s<<24|s>>>8),c=16711935&(a<<8|a>>>24)|4278255360&(a<<24|a>>>8),h=u>>>16|4294901760&c,p=c<<16|65535&u;for(n[0]^=u,n[1]^=h,n[2]^=c,n[3]^=p,n[4]^=u,n[5]^=h,n[6]^=c,n[7]^=p,i=0;i<4;i++)f.call(this)}},_doProcessBlock:function(t,e){var r=this._X;f.call(this),i[0]=r[0]^r[5]>>>16^r[3]<<16,i[1]=r[2]^r[7]>>>16^r[5]<<16,i[2]=r[4]^r[1]>>>16^r[7]<<16,i[3]=r[6]^r[3]>>>16^r[1]<<16;for(var n=0;n<4;n++)i[n]=16711935&(i[n]<<8|i[n]>>>24)|4278255360&(i[n]<<24|i[n]>>>8),t[e+n]^=i[n]},blockSize:4,ivSize:2});function f(){for(var t=this._X,e=this._C,r=0;r<8;r++)o[r]=e[r];for(e[0]=e[0]+1295307597+this._b|0,e[1]=e[1]+3545052371+(e[0]>>>0>>0?1:0)|0,e[2]=e[2]+886263092+(e[1]>>>0>>0?1:0)|0,e[3]=e[3]+1295307597+(e[2]>>>0>>0?1:0)|0,e[4]=e[4]+3545052371+(e[3]>>>0>>0?1:0)|0,e[5]=e[5]+886263092+(e[4]>>>0>>0?1:0)|0,e[6]=e[6]+1295307597+(e[5]>>>0>>0?1:0)|0,e[7]=e[7]+3545052371+(e[6]>>>0>>0?1:0)|0,this._b=e[7]>>>0>>0?1:0,r=0;r<8;r++){var n=t[r]+e[r],i=65535&n,a=n>>>16,f=((i*i>>>17)+i*a>>>15)+a*a,u=((4294901760&n)*n|0)+((65535&n)*n|0);s[r]=f^u}t[0]=s[0]+(s[7]<<16|s[7]>>>16)+(s[6]<<16|s[6]>>>16)|0,t[1]=s[1]+(s[0]<<8|s[0]>>>24)+s[7]|0,t[2]=s[2]+(s[1]<<16|s[1]>>>16)+(s[0]<<16|s[0]>>>16)|0,t[3]=s[3]+(s[2]<<8|s[2]>>>24)+s[1]|0,t[4]=s[4]+(s[3]<<16|s[3]>>>16)+(s[2]<<16|s[2]>>>16)|0,t[5]=s[5]+(s[4]<<8|s[4]>>>24)+s[3]|0,t[6]=s[6]+(s[5]<<16|s[5]>>>16)+(s[4]<<16|s[4]>>>16)|0,t[7]=s[7]+(s[6]<<8|s[6]>>>24)+s[5]|0}t.RabbitLegacy=e._createHelper(a)}(),n.RabbitLegacy)},6298:function(t,e,r){var n;t.exports=(n=r(9021),r(754),r(4636),r(9506),r(7165),function(){var t=n,e=t.lib.StreamCipher,r=t.algo,i=[],o=[],s=[],a=r.Rabbit=e.extend({_doReset:function(){for(var t=this._key.words,e=this.cfg.iv,r=0;r<4;r++)t[r]=16711935&(t[r]<<8|t[r]>>>24)|4278255360&(t[r]<<24|t[r]>>>8);var n=this._X=[t[0],t[3]<<16|t[2]>>>16,t[1],t[0]<<16|t[3]>>>16,t[2],t[1]<<16|t[0]>>>16,t[3],t[2]<<16|t[1]>>>16],i=this._C=[t[2]<<16|t[2]>>>16,4294901760&t[0]|65535&t[1],t[3]<<16|t[3]>>>16,4294901760&t[1]|65535&t[2],t[0]<<16|t[0]>>>16,4294901760&t[2]|65535&t[3],t[1]<<16|t[1]>>>16,4294901760&t[3]|65535&t[0]];for(this._b=0,r=0;r<4;r++)f.call(this);for(r=0;r<8;r++)i[r]^=n[r+4&7];if(e){var o=e.words,s=o[0],a=o[1],u=16711935&(s<<8|s>>>24)|4278255360&(s<<24|s>>>8),c=16711935&(a<<8|a>>>24)|4278255360&(a<<24|a>>>8),h=u>>>16|4294901760&c,p=c<<16|65535&u;for(i[0]^=u,i[1]^=h,i[2]^=c,i[3]^=p,i[4]^=u,i[5]^=h,i[6]^=c,i[7]^=p,r=0;r<4;r++)f.call(this)}},_doProcessBlock:function(t,e){var r=this._X;f.call(this),i[0]=r[0]^r[5]>>>16^r[3]<<16,i[1]=r[2]^r[7]>>>16^r[5]<<16,i[2]=r[4]^r[1]>>>16^r[7]<<16,i[3]=r[6]^r[3]>>>16^r[1]<<16;for(var n=0;n<4;n++)i[n]=16711935&(i[n]<<8|i[n]>>>24)|4278255360&(i[n]<<24|i[n]>>>8),t[e+n]^=i[n]},blockSize:4,ivSize:2});function f(){for(var t=this._X,e=this._C,r=0;r<8;r++)o[r]=e[r];for(e[0]=e[0]+1295307597+this._b|0,e[1]=e[1]+3545052371+(e[0]>>>0>>0?1:0)|0,e[2]=e[2]+886263092+(e[1]>>>0>>0?1:0)|0,e[3]=e[3]+1295307597+(e[2]>>>0>>0?1:0)|0,e[4]=e[4]+3545052371+(e[3]>>>0>>0?1:0)|0,e[5]=e[5]+886263092+(e[4]>>>0>>0?1:0)|0,e[6]=e[6]+1295307597+(e[5]>>>0>>0?1:0)|0,e[7]=e[7]+3545052371+(e[6]>>>0>>0?1:0)|0,this._b=e[7]>>>0>>0?1:0,r=0;r<8;r++){var n=t[r]+e[r],i=65535&n,a=n>>>16,f=((i*i>>>17)+i*a>>>15)+a*a,u=((4294901760&n)*n|0)+((65535&n)*n|0);s[r]=f^u}t[0]=s[0]+(s[7]<<16|s[7]>>>16)+(s[6]<<16|s[6]>>>16)|0,t[1]=s[1]+(s[0]<<8|s[0]>>>24)+s[7]|0,t[2]=s[2]+(s[1]<<16|s[1]>>>16)+(s[0]<<16|s[0]>>>16)|0,t[3]=s[3]+(s[2]<<8|s[2]>>>24)+s[1]|0,t[4]=s[4]+(s[3]<<16|s[3]>>>16)+(s[2]<<16|s[2]>>>16)|0,t[5]=s[5]+(s[4]<<8|s[4]>>>24)+s[3]|0,t[6]=s[6]+(s[5]<<16|s[5]>>>16)+(s[4]<<16|s[4]>>>16)|0,t[7]=s[7]+(s[6]<<8|s[6]>>>24)+s[5]|0}t.Rabbit=e._createHelper(a)}(),n.Rabbit)},7193:function(t,e,r){var n;t.exports=(n=r(9021),r(754),r(4636),r(9506),r(7165),function(){var t=n,e=t.lib.StreamCipher,r=t.algo,i=r.RC4=e.extend({_doReset:function(){for(var t=this._key,e=t.words,r=t.sigBytes,n=this._S=[],i=0;i<256;i++)n[i]=i;i=0;for(var o=0;i<256;i++){var s=i%r,a=e[s>>>2]>>>24-s%4*8&255;o=(o+n[i]+a)%256;var f=n[i];n[i]=n[o],n[o]=f}this._i=this._j=0},_doProcessBlock:function(t,e){t[e]^=o.call(this)},keySize:8,ivSize:0});function o(){for(var t=this._S,e=this._i,r=this._j,n=0,i=0;i<4;i++){r=(r+t[e=(e+1)%256])%256;var o=t[e];t[e]=t[r],t[r]=o,n|=t[(t[e]+t[r])%256]<<24-8*i}return this._i=e,this._j=r,n}t.RC4=e._createHelper(i);var s=r.RC4Drop=i.extend({cfg:i.cfg.extend({drop:192}),_doReset:function(){i._doReset.call(this);for(var t=this.cfg.drop;t>0;t--)o.call(this)}});t.RC4Drop=e._createHelper(s)}(),n.RC4)},8056:function(t,e,r){var n;t.exports=(n=r(9021),function(t){var e=n,r=e.lib,i=r.WordArray,o=r.Hasher,s=e.algo,a=i.create([0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,7,4,13,1,10,6,15,3,12,0,9,5,2,14,11,8,3,10,14,4,9,15,8,1,2,7,0,6,13,11,5,12,1,9,11,10,0,8,12,4,13,3,7,15,14,5,6,2,4,0,5,9,7,12,2,10,14,1,3,8,11,6,15,13]),f=i.create([5,14,7,0,9,2,11,4,13,6,15,8,1,10,3,12,6,11,3,7,0,13,5,10,14,15,8,12,4,9,1,2,15,5,1,3,7,14,6,9,11,8,12,2,10,0,4,13,8,6,4,1,3,11,15,0,5,12,2,13,9,7,10,14,12,15,10,4,1,5,8,7,6,2,13,14,0,3,9,11]),u=i.create([11,14,15,12,5,8,7,9,11,13,14,15,6,7,9,8,7,6,8,13,11,9,7,15,7,12,15,9,11,7,13,12,11,13,6,7,14,9,13,15,14,8,13,6,5,12,7,5,11,12,14,15,14,15,9,8,9,14,5,6,8,6,5,12,9,15,5,11,6,8,13,12,5,12,13,14,11,8,5,6]),c=i.create([8,9,9,11,13,15,15,5,7,7,8,11,14,14,12,6,9,13,15,7,12,8,9,11,7,7,12,7,6,15,13,11,9,7,15,11,8,6,6,14,12,13,5,14,13,13,7,5,15,5,8,11,14,14,6,14,6,9,12,9,12,5,15,8,8,5,12,9,12,5,14,6,8,13,6,5,15,13,11,11]),h=i.create([0,1518500249,1859775393,2400959708,2840853838]),p=i.create([1352829926,1548603684,1836072691,2053994217,0]),l=s.RIPEMD160=o.extend({_doReset:function(){this._hash=i.create([1732584193,4023233417,2562383102,271733878,3285377520])},_doProcessBlock:function(t,e){for(var r=0;r<16;r++){var n=e+r,i=t[n];t[n]=16711935&(i<<8|i>>>24)|4278255360&(i<<24|i>>>8)}var o,s,l,_,b,E,w,O,B,A,x,P=this._hash.words,T=h.words,I=p.words,k=a.words,D=f.words,R=u.words,N=c.words;for(E=o=P[0],w=s=P[1],O=l=P[2],B=_=P[3],A=b=P[4],r=0;r<80;r+=1)x=o+t[e+k[r]]|0,x+=r<16?y(s,l,_)+T[0]:r<32?g(s,l,_)+T[1]:r<48?d(s,l,_)+T[2]:r<64?v(s,l,_)+T[3]:m(s,l,_)+T[4],x=(x=S(x|=0,R[r]))+b|0,o=b,b=_,_=S(l,10),l=s,s=x,x=E+t[e+D[r]]|0,x+=r<16?m(w,O,B)+I[0]:r<32?v(w,O,B)+I[1]:r<48?d(w,O,B)+I[2]:r<64?g(w,O,B)+I[3]:y(w,O,B)+I[4],x=(x=S(x|=0,N[r]))+A|0,E=A,A=B,B=S(O,10),O=w,w=x;x=P[1]+l+B|0,P[1]=P[2]+_+A|0,P[2]=P[3]+b+E|0,P[3]=P[4]+o+w|0,P[4]=P[0]+s+O|0,P[0]=x},_doFinalize:function(){var t=this._data,e=t.words,r=8*this._nDataBytes,n=8*t.sigBytes;e[n>>>5]|=128<<24-n%32,e[14+(n+64>>>9<<4)]=16711935&(r<<8|r>>>24)|4278255360&(r<<24|r>>>8),t.sigBytes=4*(e.length+1),this._process();for(var i=this._hash,o=i.words,s=0;s<5;s++){var a=o[s];o[s]=16711935&(a<<8|a>>>24)|4278255360&(a<<24|a>>>8)}return i},clone:function(){var t=o.clone.call(this);return t._hash=this._hash.clone(),t}});function y(t,e,r){return t^e^r}function g(t,e,r){return t&e|~t&r}function d(t,e,r){return(t|~e)^r}function v(t,e,r){return t&r|e&~r}function m(t,e,r){return t^(e|~r)}function S(t,e){return t<>>32-e}e.RIPEMD160=o._createHelper(l),e.HmacRIPEMD160=o._createHmacHelper(l)}(Math),n.RIPEMD160)},5471:function(t,e,r){var n,i,o,s,a,f,u,c;t.exports=(i=(n=c=r(9021)).lib,o=i.WordArray,s=i.Hasher,a=n.algo,f=[],u=a.SHA1=s.extend({_doReset:function(){this._hash=new o.init([1732584193,4023233417,2562383102,271733878,3285377520])},_doProcessBlock:function(t,e){for(var r=this._hash.words,n=r[0],i=r[1],o=r[2],s=r[3],a=r[4],u=0;u<80;u++){if(u<16)f[u]=0|t[e+u];else{var c=f[u-3]^f[u-8]^f[u-14]^f[u-16];f[u]=c<<1|c>>>31}var h=(n<<5|n>>>27)+a+f[u];h+=u<20?1518500249+(i&o|~i&s):u<40?1859775393+(i^o^s):u<60?(i&o|i&s|o&s)-1894007588:(i^o^s)-899497514,a=s,s=o,o=i<<30|i>>>2,i=n,n=h}r[0]=r[0]+n|0,r[1]=r[1]+i|0,r[2]=r[2]+o|0,r[3]=r[3]+s|0,r[4]=r[4]+a|0},_doFinalize:function(){var t=this._data,e=t.words,r=8*this._nDataBytes,n=8*t.sigBytes;return e[n>>>5]|=128<<24-n%32,e[14+(n+64>>>9<<4)]=Math.floor(r/4294967296),e[15+(n+64>>>9<<4)]=r,t.sigBytes=4*e.length,this._process(),this._hash},clone:function(){var t=s.clone.call(this);return t._hash=this._hash.clone(),t}}),n.SHA1=s._createHelper(u),n.HmacSHA1=s._createHmacHelper(u),c.SHA1)},6308:function(t,e,r){var n,i,o,s,a,f;t.exports=(f=r(9021),r(3009),i=(n=f).lib.WordArray,o=n.algo,s=o.SHA256,a=o.SHA224=s.extend({_doReset:function(){this._hash=new i.init([3238371032,914150663,812702999,4144912697,4290775857,1750603025,1694076839,3204075428])},_doFinalize:function(){var t=s._doFinalize.call(this);return t.sigBytes-=4,t}}),n.SHA224=s._createHelper(a),n.HmacSHA224=s._createHmacHelper(a),f.SHA224)},3009:function(t,e,r){var n;t.exports=(n=r(9021),function(t){var e=n,r=e.lib,i=r.WordArray,o=r.Hasher,s=e.algo,a=[],f=[];!function(){function e(e){for(var r=t.sqrt(e),n=2;n<=r;n++)if(!(e%n))return!1;return!0}function r(t){return 4294967296*(t-(0|t))|0}for(var n=2,i=0;i<64;)e(n)&&(i<8&&(a[i]=r(t.pow(n,.5))),f[i]=r(t.pow(n,1/3)),i++),n++}();var u=[],c=s.SHA256=o.extend({_doReset:function(){this._hash=new i.init(a.slice(0))},_doProcessBlock:function(t,e){for(var r=this._hash.words,n=r[0],i=r[1],o=r[2],s=r[3],a=r[4],c=r[5],h=r[6],p=r[7],l=0;l<64;l++){if(l<16)u[l]=0|t[e+l];else{var y=u[l-15],g=(y<<25|y>>>7)^(y<<14|y>>>18)^y>>>3,d=u[l-2],v=(d<<15|d>>>17)^(d<<13|d>>>19)^d>>>10;u[l]=g+u[l-7]+v+u[l-16]}var m=n&i^n&o^i&o,S=(n<<30|n>>>2)^(n<<19|n>>>13)^(n<<10|n>>>22),_=p+((a<<26|a>>>6)^(a<<21|a>>>11)^(a<<7|a>>>25))+(a&c^~a&h)+f[l]+u[l];p=h,h=c,c=a,a=s+_|0,s=o,o=i,i=n,n=_+(S+m)|0}r[0]=r[0]+n|0,r[1]=r[1]+i|0,r[2]=r[2]+o|0,r[3]=r[3]+s|0,r[4]=r[4]+a|0,r[5]=r[5]+c|0,r[6]=r[6]+h|0,r[7]=r[7]+p|0},_doFinalize:function(){var e=this._data,r=e.words,n=8*this._nDataBytes,i=8*e.sigBytes;return r[i>>>5]|=128<<24-i%32,r[14+(i+64>>>9<<4)]=t.floor(n/4294967296),r[15+(i+64>>>9<<4)]=n,e.sigBytes=4*r.length,this._process(),this._hash},clone:function(){var t=o.clone.call(this);return t._hash=this._hash.clone(),t}});e.SHA256=o._createHelper(c),e.HmacSHA256=o._createHmacHelper(c)}(Math),n.SHA256)},5953:function(t,e,r){var n;t.exports=(n=r(9021),r(3240),function(t){var e=n,r=e.lib,i=r.WordArray,o=r.Hasher,s=e.x64.Word,a=e.algo,f=[],u=[],c=[];!function(){for(var t=1,e=0,r=0;r<24;r++){f[t+5*e]=(r+1)*(r+2)/2%64;var n=(2*t+3*e)%5;t=e%5,e=n}for(t=0;t<5;t++)for(e=0;e<5;e++)u[t+5*e]=e+(2*t+3*e)%5*5;for(var i=1,o=0;o<24;o++){for(var a=0,h=0,p=0;p<7;p++){if(1&i){var l=(1<>>24)|4278255360&(o<<24|o>>>8),s=16711935&(s<<8|s>>>24)|4278255360&(s<<24|s>>>8),(P=r[i]).high^=s,P.low^=o}for(var a=0;a<24;a++){for(var p=0;p<5;p++){for(var l=0,y=0,g=0;g<5;g++)l^=(P=r[p+5*g]).high,y^=P.low;var d=h[p];d.high=l,d.low=y}for(p=0;p<5;p++){var v=h[(p+4)%5],m=h[(p+1)%5],S=m.high,_=m.low;for(l=v.high^(S<<1|_>>>31),y=v.low^(_<<1|S>>>31),g=0;g<5;g++)(P=r[p+5*g]).high^=l,P.low^=y}for(var b=1;b<25;b++){var E=(P=r[b]).high,w=P.low,O=f[b];O<32?(l=E<>>32-O,y=w<>>32-O):(l=w<>>64-O,y=E<>>64-O);var B=h[u[b]];B.high=l,B.low=y}var A=h[0],x=r[0];for(A.high=x.high,A.low=x.low,p=0;p<5;p++)for(g=0;g<5;g++){var P=r[b=p+5*g],T=h[b],I=h[(p+1)%5+5*g],k=h[(p+2)%5+5*g];P.high=T.high^~I.high&k.high,P.low=T.low^~I.low&k.low}P=r[0];var D=c[a];P.high^=D.high,P.low^=D.low}},_doFinalize:function(){var e=this._data,r=e.words,n=(this._nDataBytes,8*e.sigBytes),o=32*this.blockSize;r[n>>>5]|=1<<24-n%32,r[(t.ceil((n+1)/o)*o>>>5)-1]|=128,e.sigBytes=4*r.length,this._process();for(var s=this._state,a=this.cfg.outputLength/8,f=a/8,u=[],c=0;c>>24)|4278255360&(p<<24|p>>>8),l=16711935&(l<<8|l>>>24)|4278255360&(l<<24|l>>>8),u.push(l),u.push(p)}return new i.init(u,a)},clone:function(){for(var t=o.clone.call(this),e=t._state=this._state.slice(0),r=0;r<25;r++)e[r]=e[r].clone();return t}});e.SHA3=o._createHelper(p),e.HmacSHA3=o._createHmacHelper(p)}(Math),n.SHA3)},9557:function(t,e,r){var n,i,o,s,a,f,u,c;t.exports=(c=r(9021),r(3240),r(1380),i=(n=c).x64,o=i.Word,s=i.WordArray,a=n.algo,f=a.SHA512,u=a.SHA384=f.extend({_doReset:function(){this._hash=new s.init([new o.init(3418070365,3238371032),new o.init(1654270250,914150663),new o.init(2438529370,812702999),new o.init(355462360,4144912697),new o.init(1731405415,4290775857),new o.init(2394180231,1750603025),new o.init(3675008525,1694076839),new o.init(1203062813,3204075428)])},_doFinalize:function(){var t=f._doFinalize.call(this);return t.sigBytes-=16,t}}),n.SHA384=f._createHelper(u),n.HmacSHA384=f._createHmacHelper(u),c.SHA384)},1380:function(t,e,r){var n;t.exports=(n=r(9021),r(3240),function(){var t=n,e=t.lib.Hasher,r=t.x64,i=r.Word,o=r.WordArray,s=t.algo;function a(){return i.create.apply(i,arguments)}var f=[a(1116352408,3609767458),a(1899447441,602891725),a(3049323471,3964484399),a(3921009573,2173295548),a(961987163,4081628472),a(1508970993,3053834265),a(2453635748,2937671579),a(2870763221,3664609560),a(3624381080,2734883394),a(310598401,1164996542),a(607225278,1323610764),a(1426881987,3590304994),a(1925078388,4068182383),a(2162078206,991336113),a(2614888103,633803317),a(3248222580,3479774868),a(3835390401,2666613458),a(4022224774,944711139),a(264347078,2341262773),a(604807628,2007800933),a(770255983,1495990901),a(1249150122,1856431235),a(1555081692,3175218132),a(1996064986,2198950837),a(2554220882,3999719339),a(2821834349,766784016),a(2952996808,2566594879),a(3210313671,3203337956),a(3336571891,1034457026),a(3584528711,2466948901),a(113926993,3758326383),a(338241895,168717936),a(666307205,1188179964),a(773529912,1546045734),a(1294757372,1522805485),a(1396182291,2643833823),a(1695183700,2343527390),a(1986661051,1014477480),a(2177026350,1206759142),a(2456956037,344077627),a(2730485921,1290863460),a(2820302411,3158454273),a(3259730800,3505952657),a(3345764771,106217008),a(3516065817,3606008344),a(3600352804,1432725776),a(4094571909,1467031594),a(275423344,851169720),a(430227734,3100823752),a(506948616,1363258195),a(659060556,3750685593),a(883997877,3785050280),a(958139571,3318307427),a(1322822218,3812723403),a(1537002063,2003034995),a(1747873779,3602036899),a(1955562222,1575990012),a(2024104815,1125592928),a(2227730452,2716904306),a(2361852424,442776044),a(2428436474,593698344),a(2756734187,3733110249),a(3204031479,2999351573),a(3329325298,3815920427),a(3391569614,3928383900),a(3515267271,566280711),a(3940187606,3454069534),a(4118630271,4000239992),a(116418474,1914138554),a(174292421,2731055270),a(289380356,3203993006),a(460393269,320620315),a(685471733,587496836),a(852142971,1086792851),a(1017036298,365543100),a(1126000580,2618297676),a(1288033470,3409855158),a(1501505948,4234509866),a(1607167915,987167468),a(1816402316,1246189591)],u=[];!function(){for(var t=0;t<80;t++)u[t]=a()}();var c=s.SHA512=e.extend({_doReset:function(){this._hash=new o.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(t,e){for(var r=this._hash.words,n=r[0],i=r[1],o=r[2],s=r[3],a=r[4],c=r[5],h=r[6],p=r[7],l=n.high,y=n.low,g=i.high,d=i.low,v=o.high,m=o.low,S=s.high,_=s.low,b=a.high,E=a.low,w=c.high,O=c.low,B=h.high,A=h.low,x=p.high,P=p.low,T=l,I=y,k=g,D=d,R=v,N=m,L=S,C=_,U=b,M=E,j=w,H=O,F=B,z=A,G=x,q=P,$=0;$<80;$++){var K=u[$];if($<16)var W=K.high=0|t[e+2*$],V=K.low=0|t[e+2*$+1];else{var Y=u[$-15],X=Y.high,Z=Y.low,J=(X>>>1|Z<<31)^(X>>>8|Z<<24)^X>>>7,Q=(Z>>>1|X<<31)^(Z>>>8|X<<24)^(Z>>>7|X<<25),tt=u[$-2],et=tt.high,rt=tt.low,nt=(et>>>19|rt<<13)^(et<<3|rt>>>29)^et>>>6,it=(rt>>>19|et<<13)^(rt<<3|et>>>29)^(rt>>>6|et<<26),ot=u[$-7],st=ot.high,at=ot.low,ft=u[$-16],ut=ft.high,ct=ft.low;W=(W=(W=J+st+((V=Q+at)>>>0>>0?1:0))+nt+((V+=it)>>>0>>0?1:0))+ut+((V+=ct)>>>0>>0?1:0),K.high=W,K.low=V}var ht,pt=U&j^~U&F,lt=M&H^~M&z,yt=T&k^T&R^k&R,gt=I&D^I&N^D&N,dt=(T>>>28|I<<4)^(T<<30|I>>>2)^(T<<25|I>>>7),vt=(I>>>28|T<<4)^(I<<30|T>>>2)^(I<<25|T>>>7),mt=(U>>>14|M<<18)^(U>>>18|M<<14)^(U<<23|M>>>9),St=(M>>>14|U<<18)^(M>>>18|U<<14)^(M<<23|U>>>9),_t=f[$],bt=_t.high,Et=_t.low,wt=G+mt+((ht=q+St)>>>0>>0?1:0),Ot=vt+gt;G=F,q=z,F=j,z=H,j=U,H=M,U=L+(wt=(wt=(wt=wt+pt+((ht+=lt)>>>0>>0?1:0))+bt+((ht+=Et)>>>0>>0?1:0))+W+((ht+=V)>>>0>>0?1:0))+((M=C+ht|0)>>>0>>0?1:0)|0,L=R,C=N,R=k,N=D,k=T,D=I,T=wt+(dt+yt+(Ot>>>0>>0?1:0))+((I=ht+Ot|0)>>>0>>0?1:0)|0}y=n.low=y+I,n.high=l+T+(y>>>0>>0?1:0),d=i.low=d+D,i.high=g+k+(d>>>0>>0?1:0),m=o.low=m+N,o.high=v+R+(m>>>0>>0?1:0),_=s.low=_+C,s.high=S+L+(_>>>0>>0?1:0),E=a.low=E+M,a.high=b+U+(E>>>0>>0?1:0),O=c.low=O+H,c.high=w+j+(O>>>0>>0?1:0),A=h.low=A+z,h.high=B+F+(A>>>0>>0?1:0),P=p.low=P+q,p.high=x+G+(P>>>0>>0?1:0)},_doFinalize:function(){var t=this._data,e=t.words,r=8*this._nDataBytes,n=8*t.sigBytes;return e[n>>>5]|=128<<24-n%32,e[30+(n+128>>>10<<5)]=Math.floor(r/4294967296),e[31+(n+128>>>10<<5)]=r,t.sigBytes=4*e.length,this._process(),this._hash.toX32()},clone:function(){var t=e.clone.call(this);return t._hash=this._hash.clone(),t},blockSize:32});t.SHA512=e._createHelper(c),t.HmacSHA512=e._createHmacHelper(c)}(),n.SHA512)},7628:function(t,e,r){var n;t.exports=(n=r(9021),r(754),r(4636),r(9506),r(7165),function(){var t=n,e=t.lib,r=e.WordArray,i=e.BlockCipher,o=t.algo,s=[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],a=[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],f=[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}],c=[4160749569,528482304,33030144,2064384,129024,8064,504,2147483679],h=o.DES=i.extend({_doReset:function(){for(var t=this._key.words,e=[],r=0;r<56;r++){var n=s[r]-1;e[r]=t[n>>>5]>>>31-n%32&1}for(var i=this._subKeys=[],o=0;o<16;o++){var u=i[o]=[],c=f[o];for(r=0;r<24;r++)u[r/6|0]|=e[(a[r]-1+c)%28]<<31-r%6,u[4+(r/6|0)]|=e[28+(a[r+24]-1+c)%28]<<31-r%6;for(u[0]=u[0]<<1|u[0]>>>31,r=1;r<7;r++)u[r]=u[r]>>>4*(r-1)+3;u[7]=u[7]<<5|u[7]>>>27}var h=this._invSubKeys=[];for(r=0;r<16;r++)h[r]=i[15-r]},encryptBlock:function(t,e){this._doCryptBlock(t,e,this._subKeys)},decryptBlock:function(t,e){this._doCryptBlock(t,e,this._invSubKeys)},_doCryptBlock:function(t,e,r){this._lBlock=t[e],this._rBlock=t[e+1],p.call(this,4,252645135),p.call(this,16,65535),l.call(this,2,858993459),l.call(this,8,16711935),p.call(this,1,1431655765);for(var n=0;n<16;n++){for(var i=r[n],o=this._lBlock,s=this._rBlock,a=0,f=0;f<8;f++)a|=u[f][((s^i[f])&c[f])>>>0];this._lBlock=s,this._rBlock=o^a}var h=this._lBlock;this._lBlock=this._rBlock,this._rBlock=h,p.call(this,1,1431655765),l.call(this,8,16711935),l.call(this,2,858993459),p.call(this,16,65535),p.call(this,4,252645135),t[e]=this._lBlock,t[e+1]=this._rBlock},keySize:2,ivSize:2,blockSize:2});function p(t,e){var r=(this._lBlock>>>t^this._rBlock)&e;this._rBlock^=r,this._lBlock^=r<>>t^this._lBlock)&e;this._lBlock^=r,this._rBlock^=r<{"use strict";var n=r(655),i=r(8068),o=r(9675),s=r(5795);t.exports=function(t,e,r){if(!t||"object"!=typeof t&&"function"!=typeof t)throw new o("`obj` must be an object or a function`");if("string"!=typeof e&&"symbol"!=typeof e)throw new o("`property` must be a string or a symbol`");if(arguments.length>3&&"boolean"!=typeof arguments[3]&&null!==arguments[3])throw new o("`nonEnumerable`, if provided, must be a boolean or null");if(arguments.length>4&&"boolean"!=typeof arguments[4]&&null!==arguments[4])throw new o("`nonWritable`, if provided, must be a boolean or null");if(arguments.length>5&&"boolean"!=typeof arguments[5]&&null!==arguments[5])throw new o("`nonConfigurable`, if provided, must be a boolean or null");if(arguments.length>6&&"boolean"!=typeof arguments[6])throw new o("`loose`, if provided, must be a boolean");var a=arguments.length>3?arguments[3]:null,f=arguments.length>4?arguments[4]:null,u=arguments.length>5?arguments[5]:null,c=arguments.length>6&&arguments[6],h=!!s&&s(t,e);if(n)n(t,e,{configurable:null===u&&h?h.configurable:!u,enumerable:null===a&&h?h.enumerable:!a,value:r,writable:null===f&&h?h.writable:!f});else{if(!c&&(a||f||u))throw new i("This environment does not support defining a property as non-configurable, non-writable, or non-enumerable.");t[e]=r}}},655:(t,e,r)=>{"use strict";var n=r(453)("%Object.defineProperty%",!0)||!1;if(n)try{n({},"a",{value:1})}catch(t){n=!1}t.exports=n},1237:t=>{"use strict";t.exports=EvalError},9383:t=>{"use strict";t.exports=Error},9290:t=>{"use strict";t.exports=RangeError},9538:t=>{"use strict";t.exports=ReferenceError},8068:t=>{"use strict";t.exports=SyntaxError},9675:t=>{"use strict";t.exports=TypeError},5345:t=>{"use strict";t.exports=URIError},9353:t=>{"use strict";var e=Object.prototype.toString,r=Math.max,n=function(t,e){for(var r=[],n=0;n{"use strict";var n=r(9353);t.exports=Function.prototype.bind||n},453:(t,e,r)=>{"use strict";var n,i=r(9383),o=r(1237),s=r(9290),a=r(9538),f=r(8068),u=r(9675),c=r(5345),h=Function,p=function(t){try{return h(\'"use strict"; return (\'+t+").constructor;")()}catch(t){}},l=Object.getOwnPropertyDescriptor;if(l)try{l({},"")}catch(t){l=null}var y=function(){throw new u},g=l?function(){try{return y}catch(t){try{return l(arguments,"callee").get}catch(t){return y}}}():y,d=r(4039)(),v=r(24)(),m=Object.getPrototypeOf||(v?function(t){return t.__proto__}:null),S={},_="undefined"!=typeof Uint8Array&&m?m(Uint8Array):n,b={__proto__:null,"%AggregateError%":"undefined"==typeof AggregateError?n:AggregateError,"%Array%":Array,"%ArrayBuffer%":"undefined"==typeof ArrayBuffer?n:ArrayBuffer,"%ArrayIteratorPrototype%":d&&m?m([][Symbol.iterator]()):n,"%AsyncFromSyncIteratorPrototype%":n,"%AsyncFunction%":S,"%AsyncGenerator%":S,"%AsyncGeneratorFunction%":S,"%AsyncIteratorPrototype%":S,"%Atomics%":"undefined"==typeof Atomics?n:Atomics,"%BigInt%":"undefined"==typeof BigInt?n:BigInt,"%BigInt64Array%":"undefined"==typeof BigInt64Array?n:BigInt64Array,"%BigUint64Array%":"undefined"==typeof BigUint64Array?n:BigUint64Array,"%Boolean%":Boolean,"%DataView%":"undefined"==typeof DataView?n:DataView,"%Date%":Date,"%decodeURI%":decodeURI,"%decodeURIComponent%":decodeURIComponent,"%encodeURI%":encodeURI,"%encodeURIComponent%":encodeURIComponent,"%Error%":i,"%eval%":eval,"%EvalError%":o,"%Float32Array%":"undefined"==typeof Float32Array?n:Float32Array,"%Float64Array%":"undefined"==typeof Float64Array?n:Float64Array,"%FinalizationRegistry%":"undefined"==typeof FinalizationRegistry?n:FinalizationRegistry,"%Function%":h,"%GeneratorFunction%":S,"%Int8Array%":"undefined"==typeof Int8Array?n:Int8Array,"%Int16Array%":"undefined"==typeof Int16Array?n:Int16Array,"%Int32Array%":"undefined"==typeof Int32Array?n:Int32Array,"%isFinite%":isFinite,"%isNaN%":isNaN,"%IteratorPrototype%":d&&m?m(m([][Symbol.iterator]())):n,"%JSON%":"object"==typeof JSON?JSON:n,"%Map%":"undefined"==typeof Map?n:Map,"%MapIteratorPrototype%":"undefined"!=typeof Map&&d&&m?m((new Map)[Symbol.iterator]()):n,"%Math%":Math,"%Number%":Number,"%Object%":Object,"%parseFloat%":parseFloat,"%parseInt%":parseInt,"%Promise%":"undefined"==typeof Promise?n:Promise,"%Proxy%":"undefined"==typeof Proxy?n:Proxy,"%RangeError%":s,"%ReferenceError%":a,"%Reflect%":"undefined"==typeof Reflect?n:Reflect,"%RegExp%":RegExp,"%Set%":"undefined"==typeof Set?n:Set,"%SetIteratorPrototype%":"undefined"!=typeof Set&&d&&m?m((new Set)[Symbol.iterator]()):n,"%SharedArrayBuffer%":"undefined"==typeof SharedArrayBuffer?n:SharedArrayBuffer,"%String%":String,"%StringIteratorPrototype%":d&&m?m(""[Symbol.iterator]()):n,"%Symbol%":d?Symbol:n,"%SyntaxError%":f,"%ThrowTypeError%":g,"%TypedArray%":_,"%TypeError%":u,"%Uint8Array%":"undefined"==typeof Uint8Array?n:Uint8Array,"%Uint8ClampedArray%":"undefined"==typeof Uint8ClampedArray?n:Uint8ClampedArray,"%Uint16Array%":"undefined"==typeof Uint16Array?n:Uint16Array,"%Uint32Array%":"undefined"==typeof Uint32Array?n:Uint32Array,"%URIError%":c,"%WeakMap%":"undefined"==typeof WeakMap?n:WeakMap,"%WeakRef%":"undefined"==typeof WeakRef?n:WeakRef,"%WeakSet%":"undefined"==typeof WeakSet?n:WeakSet};if(m)try{null.error}catch(t){var E=m(m(t));b["%Error.prototype%"]=E}var w=function t(e){var r;if("%AsyncFunction%"===e)r=p("async function () {}");else if("%GeneratorFunction%"===e)r=p("function* () {}");else if("%AsyncGeneratorFunction%"===e)r=p("async function* () {}");else if("%AsyncGenerator%"===e){var n=t("%AsyncGeneratorFunction%");n&&(r=n.prototype)}else if("%AsyncIteratorPrototype%"===e){var i=t("%AsyncGenerator%");i&&m&&(r=m(i.prototype))}return b[e]=r,r},O={__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"]},B=r(6743),A=r(9957),x=B.call(Function.call,Array.prototype.concat),P=B.call(Function.apply,Array.prototype.splice),T=B.call(Function.call,String.prototype.replace),I=B.call(Function.call,String.prototype.slice),k=B.call(Function.call,RegExp.prototype.exec),D=/[^%.[\\]]+|\\[(?:(-?\\d+(?:\\.\\d+)?)|(["\'])((?:(?!\\2)[^\\\\]|\\\\.)*?)\\2)\\]|(?=(?:\\.|\\[\\])(?:\\.|\\[\\]|%$))/g,R=/\\\\(\\\\)?/g,N=function(t,e){var r,n=t;if(A(O,n)&&(n="%"+(r=O[n])[0]+"%"),A(b,n)){var i=b[n];if(i===S&&(i=w(n)),void 0===i&&!e)throw new u("intrinsic "+t+" exists, but is not available. Please file an issue!");return{alias:r,name:n,value:i}}throw new f("intrinsic "+t+" does not exist!")};t.exports=function(t,e){if("string"!=typeof t||0===t.length)throw new u("intrinsic name must be a non-empty string");if(arguments.length>1&&"boolean"!=typeof e)throw new u(\'"allowMissing" argument must be a boolean\');if(null===k(/^%?[^%]*%?$/,t))throw new f("`%` may not be present anywhere but at the beginning and end of the intrinsic name");var r=function(t){var e=I(t,0,1),r=I(t,-1);if("%"===e&&"%"!==r)throw new f("invalid intrinsic syntax, expected closing `%`");if("%"===r&&"%"!==e)throw new f("invalid intrinsic syntax, expected opening `%`");var n=[];return T(t,D,(function(t,e,r,i){n[n.length]=r?T(i,R,"$1"):e||t})),n}(t),n=r.length>0?r[0]:"",i=N("%"+n+"%",e),o=i.name,s=i.value,a=!1,c=i.alias;c&&(n=c[0],P(r,x([0,1],c)));for(var h=1,p=!0;h=r.length){var v=l(s,y);s=(p=!!v)&&"get"in v&&!("originalValue"in v.get)?v.get:s[y]}else p=A(s,y),s=s[y];p&&!a&&(b[o]=s)}}return s}},5795:(t,e,r)=>{"use strict";var n=r(453)("%Object.getOwnPropertyDescriptor%",!0);if(n)try{n([],"length")}catch(t){n=null}t.exports=n},592:(t,e,r)=>{"use strict";var n=r(655),i=function(){return!!n};i.hasArrayLengthDefineBug=function(){if(!n)return null;try{return 1!==n([],"length",{value:1}).length}catch(t){return!0}},t.exports=i},24:t=>{"use strict";var e={__proto__:null,foo:{}},r=Object;t.exports=function(){return{__proto__:e}.foo===e.foo&&!(e instanceof r)}},4039:(t,e,r)=>{"use strict";var n="undefined"!=typeof Symbol&&Symbol,i=r(1333);t.exports=function(){return"function"==typeof n&&"function"==typeof Symbol&&"symbol"==typeof n("foo")&&"symbol"==typeof Symbol("bar")&&i()}},1333:t=>{"use strict";t.exports=function(){if("function"!=typeof Symbol||"function"!=typeof Object.getOwnPropertySymbols)return!1;if("symbol"==typeof Symbol.iterator)return!0;var t={},e=Symbol("test"),r=Object(e);if("string"==typeof e)return!1;if("[object Symbol]"!==Object.prototype.toString.call(e))return!1;if("[object Symbol]"!==Object.prototype.toString.call(r))return!1;for(e in t[e]=42,t)return!1;if("function"==typeof Object.keys&&0!==Object.keys(t).length)return!1;if("function"==typeof Object.getOwnPropertyNames&&0!==Object.getOwnPropertyNames(t).length)return!1;var n=Object.getOwnPropertySymbols(t);if(1!==n.length||n[0]!==e)return!1;if(!Object.prototype.propertyIsEnumerable.call(t,e))return!1;if("function"==typeof Object.getOwnPropertyDescriptor){var i=Object.getOwnPropertyDescriptor(t,e);if(42!==i.value||!0!==i.enumerable)return!1}return!0}},9957:(t,e,r)=>{"use strict";var n=Function.prototype.call,i=Object.prototype.hasOwnProperty,o=r(6743);t.exports=o.call(n,i)},251:(t,e)=>{e.read=function(t,e,r,n,i){var o,s,a=8*i-n-1,f=(1<>1,c=-7,h=r?i-1:0,p=r?-1:1,l=t[e+h];for(h+=p,o=l&(1<<-c)-1,l>>=-c,c+=a;c>0;o=256*o+t[e+h],h+=p,c-=8);for(s=o&(1<<-c)-1,o>>=-c,c+=n;c>0;s=256*s+t[e+h],h+=p,c-=8);if(0===o)o=1-u;else{if(o===f)return s?NaN:1/0*(l?-1:1);s+=Math.pow(2,n),o-=u}return(l?-1:1)*s*Math.pow(2,o-n)},e.write=function(t,e,r,n,i,o){var s,a,f,u=8*o-i-1,c=(1<>1,p=23===i?Math.pow(2,-24)-Math.pow(2,-77):0,l=n?0:o-1,y=n?1:-1,g=e<0||0===e&&1/e<0?1:0;for(e=Math.abs(e),isNaN(e)||e===1/0?(a=isNaN(e)?1:0,s=c):(s=Math.floor(Math.log(e)/Math.LN2),e*(f=Math.pow(2,-s))<1&&(s--,f*=2),(e+=s+h>=1?p/f:p*Math.pow(2,1-h))*f>=2&&(s++,f/=2),s+h>=c?(a=0,s=c):s+h>=1?(a=(e*f-1)*Math.pow(2,i),s+=h):(a=e*Math.pow(2,h-1)*Math.pow(2,i),s=0));i>=8;t[r+l]=255&a,l+=y,a/=256,i-=8);for(s=s<0;t[r+l]=255&s,l+=y,s/=256,u-=8);t[r+l-y]|=128*g}},3229:(t,e,r)=>{var n=r(8287).Buffer,i=r(7449),o=r(5682),s=(r(3200),r(3100).Ber,r(8226)._),a=r(8226),f=r(1768),u=r(7460);void 0===i.RSA_NO_PADDING&&(i.RSA_NO_PADDING=3),t.exports=function(){var t={node10:["md4","md5","ripemd160","sha1","sha224","sha256","sha384","sha512"],node:["md4","md5","ripemd160","sha1","sha224","sha256","sha384","sha512"],iojs:["md4","md5","ripemd160","sha1","sha224","sha256","sha384","sha512"],browser:["md5","ripemd160","sha1","sha256","sha512"]},e="pkcs1_oaep",r="pkcs1",i={private:"pkcs1-private-pem","private-der":"pkcs1-private-der",public:"pkcs8-public-pem","public-der":"pkcs8-public-der"};function c(t,i,f){if(!(this instanceof c))return new c(t,i,f);s.isObject(i)&&(f=i,i=void 0),this.$options={signingScheme:r,signingSchemeOptions:{hash:"sha256",saltLength:null},encryptionScheme:e,encryptionSchemeOptions:{hash:"sha1",label:null},environment:a.detectEnvironment(),rsaUtils:this},this.keyPair=new o.Key,this.$cache={},n.isBuffer(t)||s.isString(t)?this.importKey(t,i):s.isObject(t)&&this.generateKeyPair(t.b,t.e),this.setOptions(f)}return c.prototype.setOptions=function(n){if((n=n||{}).environment&&(this.$options.environment=n.environment),n.signingScheme){if(s.isString(n.signingScheme)){var i=n.signingScheme.toLowerCase().split("-");1==i.length?t.node.indexOf(i[0])>-1?(this.$options.signingSchemeOptions={hash:i[0]},this.$options.signingScheme=r):(this.$options.signingScheme=i[0],this.$options.signingSchemeOptions={hash:null}):(this.$options.signingSchemeOptions={hash:i[1]},this.$options.signingScheme=i[0])}else s.isObject(n.signingScheme)&&(this.$options.signingScheme=n.signingScheme.scheme||r,this.$options.signingSchemeOptions=s.omit(n.signingScheme,"scheme"));if(!f.isSignature(this.$options.signingScheme))throw Error("Unsupported signing scheme");if(this.$options.signingSchemeOptions.hash&&-1===t[this.$options.environment].indexOf(this.$options.signingSchemeOptions.hash))throw Error("Unsupported hashing algorithm for "+this.$options.environment+" environment")}if(n.encryptionScheme){if(s.isString(n.encryptionScheme)?(this.$options.encryptionScheme=n.encryptionScheme.toLowerCase(),this.$options.encryptionSchemeOptions={}):s.isObject(n.encryptionScheme)&&(this.$options.encryptionScheme=n.encryptionScheme.scheme||e,this.$options.encryptionSchemeOptions=s.omit(n.encryptionScheme,"scheme")),!f.isEncryption(this.$options.encryptionScheme))throw Error("Unsupported encryption scheme");if(this.$options.encryptionSchemeOptions.hash&&-1===t[this.$options.environment].indexOf(this.$options.encryptionSchemeOptions.hash))throw Error("Unsupported hashing algorithm for "+this.$options.environment+" environment")}this.keyPair.setOptions(this.$options)},c.prototype.generateKeyPair=function(t,e){if(e=e||65537,(t=t||2048)%8!=0)throw Error("Key size must be a multiple of 8.");return this.keyPair.generate(t,e.toString(16)),this.$cache={},this},c.prototype.importKey=function(t,e){if(!t)throw Error("Empty key given");if(e&&(e=i[e]||e),!u.detectAndImport(this.keyPair,t,e)&&void 0===e)throw Error("Key format must be specified");return this.$cache={},this},c.prototype.exportKey=function(t){return t=i[t=t||"private"]||t,this.$cache[t]||(this.$cache[t]=u.detectAndExport(this.keyPair,t)),this.$cache[t]},c.prototype.isPrivate=function(){return this.keyPair.isPrivate()},c.prototype.isPublic=function(t){return this.keyPair.isPublic(t)},c.prototype.isEmpty=function(t){return!(this.keyPair.n||this.keyPair.e||this.keyPair.d)},c.prototype.encrypt=function(t,e,r){return this.$$encryptKey(!1,t,e,r)},c.prototype.decrypt=function(t,e){return this.$$decryptKey(!1,t,e)},c.prototype.encryptPrivate=function(t,e,r){return this.$$encryptKey(!0,t,e,r)},c.prototype.decryptPublic=function(t,e){return this.$$decryptKey(!0,t,e)},c.prototype.$$encryptKey=function(t,e,r,n){try{var i=this.keyPair.encrypt(this.$getDataForEncrypt(e,n),t);return"buffer"!=r&&r?i.toString(r):i}catch(t){throw Error("Error during encryption. Original error: "+t)}},c.prototype.$$decryptKey=function(t,e,r){try{e=s.isString(e)?n.from(e,"base64"):e;var i=this.keyPair.decrypt(e,t);if(null===i)throw Error("Key decrypt method returns null.");return this.$getDecryptedData(i,r)}catch(t){throw Error("Error during decryption (probably incorrect key). Original error: "+t)}},c.prototype.sign=function(t,e,r){if(!this.isPrivate())throw Error("This is not private key");var n=this.keyPair.sign(this.$getDataForEncrypt(t,r));return e&&"buffer"!=e&&(n=n.toString(e)),n},c.prototype.verify=function(t,e,r,n){if(!this.isPublic())throw Error("This is not public key");return n=n&&"buffer"!=n?n:null,this.keyPair.verify(this.$getDataForEncrypt(t,r),e,n)},c.prototype.getKeySize=function(){return this.keyPair.keySize},c.prototype.getMaxMessageSize=function(){return this.keyPair.maxMessageLength},c.prototype.$getDataForEncrypt=function(t,e){if(s.isString(t)||s.isNumber(t))return n.from(""+t,e||"utf8");if(n.isBuffer(t))return t;if(s.isObject(t))return n.from(JSON.stringify(t));throw Error("Unexpected data type")},c.prototype.$getDecryptedData=function(t,e){return"buffer"==(e=e||"buffer")?t:"json"==e?JSON.parse(t.toString()):t.toString(e)},c}()},4538:(t,e,r)=>{var n=r(3200);t.exports={getEngine:function(t,e){var i=r(7469);return"node"===e.environment&&"function"==typeof n.publicEncrypt&&"function"==typeof n.privateDecrypt&&(i="function"==typeof n.privateEncrypt&&"function"==typeof n.publicDecrypt?r(2418):r(1957)),i(t,e)}}},2418:(t,e,r)=>{var n=r(3200),i=r(7449),o=r(1768);t.exports=function(t,e){var r=o.pkcs1.makeScheme(t,e);return{encrypt:function(t,o){var s;if(o)return s=i.RSA_PKCS1_PADDING,e.encryptionSchemeOptions&&e.encryptionSchemeOptions.padding&&(s=e.encryptionSchemeOptions.padding),n.privateEncrypt({key:e.rsaUtils.exportKey("private"),padding:s},t);s=i.RSA_PKCS1_OAEP_PADDING,"pkcs1"===e.encryptionScheme&&(s=i.RSA_PKCS1_PADDING),e.encryptionSchemeOptions&&e.encryptionSchemeOptions.padding&&(s=e.encryptionSchemeOptions.padding);var a=t;return s===i.RSA_NO_PADDING&&(a=r.pkcs0pad(t)),n.publicEncrypt({key:e.rsaUtils.exportKey("public"),padding:s},a)},decrypt:function(t,o){var s;if(o)return s=i.RSA_PKCS1_PADDING,e.encryptionSchemeOptions&&e.encryptionSchemeOptions.padding&&(s=e.encryptionSchemeOptions.padding),n.publicDecrypt({key:e.rsaUtils.exportKey("public"),padding:s},t);s=i.RSA_PKCS1_OAEP_PADDING,"pkcs1"===e.encryptionScheme&&(s=i.RSA_PKCS1_PADDING),e.encryptionSchemeOptions&&e.encryptionSchemeOptions.padding&&(s=e.encryptionSchemeOptions.padding);var a=n.privateDecrypt({key:e.rsaUtils.exportKey("private"),padding:s},t);return s===i.RSA_NO_PADDING?r.pkcs0unpad(a):a}}}},7469:(t,e,r)=>{var n=r(1973),i=r(1768);t.exports=function(t,e){var r=i.pkcs1.makeScheme(t,e);return{encrypt:function(e,i){var o,s;return i?(o=new n(r.encPad(e,{type:1})),s=t.$doPrivate(o)):(o=new n(t.encryptionScheme.encPad(e)),s=t.$doPublic(o)),s.toBuffer(t.encryptedDataLength)},decrypt:function(e,i){var o,s=new n(e);return i?(o=t.$doPublic(s),r.encUnPad(o.toBuffer(t.encryptedDataLength),{type:1})):(o=t.$doPrivate(s),t.encryptionScheme.encUnPad(o.toBuffer(t.encryptedDataLength)))}}}},1957:(t,e,r)=>{var n=r(3200),i=r(7449),o=r(1768);t.exports=function(t,e){var s=r(7469)(t,e),a=o.pkcs1.makeScheme(t,e);return{encrypt:function(t,r){if(r)return s.encrypt(t,r);var o=i.RSA_PKCS1_OAEP_PADDING;"pkcs1"===e.encryptionScheme&&(o=i.RSA_PKCS1_PADDING),e.encryptionSchemeOptions&&e.encryptionSchemeOptions.padding&&(o=e.encryptionSchemeOptions.padding);var f=t;return o===i.RSA_NO_PADDING&&(f=a.pkcs0pad(t)),n.publicEncrypt({key:e.rsaUtils.exportKey("public"),padding:o},f)},decrypt:function(t,r){if(r)return s.decrypt(t,r);var o=i.RSA_PKCS1_OAEP_PADDING;"pkcs1"===e.encryptionScheme&&(o=i.RSA_PKCS1_PADDING),e.encryptionSchemeOptions&&e.encryptionSchemeOptions.padding&&(o=e.encryptionSchemeOptions.padding);var f=n.privateDecrypt({key:e.rsaUtils.exportKey("private"),padding:o},t);return o===i.RSA_NO_PADDING?a.pkcs0unpad(f):f}}}},3374:(t,e,r)=>{r(8226)._,r(8226),t.exports={privateExport:function(t,e){return{n:t.n.toBuffer(),e:t.e,d:t.d.toBuffer(),p:t.p.toBuffer(),q:t.q.toBuffer(),dmp1:t.dmp1.toBuffer(),dmq1:t.dmq1.toBuffer(),coeff:t.coeff.toBuffer()}},privateImport:function(t,e,r){if(!(e.n&&e.e&&e.d&&e.p&&e.q&&e.dmp1&&e.dmq1&&e.coeff))throw Error("Invalid key data");t.setPrivate(e.n,e.e,e.d,e.p,e.q,e.dmp1,e.dmq1,e.coeff)},publicExport:function(t,e){return{n:t.n.toBuffer(),e:t.e}},publicImport:function(t,e,r){if(!e.n||!e.e)throw Error("Invalid key data");t.setPublic(e.n,e.e)},autoImport:function(e,r){return!(!r.n||!r.e||(r.d&&r.p&&r.q&&r.dmp1&&r.dmq1&&r.coeff?(t.exports.privateImport(e,r),0):(t.exports.publicImport(e,r),0)))}}},7460:(t,e,r)=>{function n(t){t=t.split("-");for(var e="private",r={type:"default"},n=1;n{var n=r(8287).Buffer,i=r(8226)._,o=r(8226),s=r(1973);const a="-----BEGIN OPENSSH PRIVATE KEY-----",f="-----END OPENSSH PRIVATE KEY-----";function u(t){const e=t.buf.readInt32BE(t.off);t.off+=4;const r=t.buf.slice(t.off,t.off+e);return t.off+=e,r}function c(t,e){t.buf.writeInt32BE(e.byteLength,t.off),t.off+=4,t.off+=e.copy(t.buf,t.off)}t.exports={privateExport:function(t,e){const r=t.n.toBuffer();let i=n.alloc(4);for(i.writeUInt32BE(t.e,0);0===i[0];)i=i.slice(1);const s=t.d.toBuffer(),u=t.coeff.toBuffer(),h=t.p.toBuffer(),p=t.q.toBuffer();let l;l=void 0!==t.sshcomment?n.from(t.sshcomment):n.from([]);const y=15+i.byteLength+4+r.byteLength,g=23+r.byteLength+4+i.byteLength+4+s.byteLength+4+u.byteLength+4+h.byteLength+4+p.byteLength+4+l.byteLength;let d=43+y+4+g;d+=8*Math.ceil(g/8)-g;const v=n.alloc(d),m={buf:v,off:0};v.write("openssh-key-v1","utf8"),v.writeUInt8(0,14),m.off+=15,c(m,n.from("none")),c(m,n.from("none")),c(m,n.from("")),m.off=m.buf.writeUInt32BE(1,m.off),m.off=m.buf.writeUInt32BE(y,m.off),c(m,n.from("ssh-rsa")),c(m,i),c(m,r),m.off=m.buf.writeUInt32BE(d-47-y,m.off),m.off+=8,c(m,n.from("ssh-rsa")),c(m,r),c(m,i),c(m,s),c(m,u),c(m,h),c(m,p),c(m,l);let S=1;for(;m.off{var n=r(8287).Buffer,i=r(3100).Ber,o=r(8226)._,s=r(8226);const a="-----BEGIN RSA PRIVATE KEY-----",f="-----END RSA PRIVATE KEY-----",u="-----BEGIN RSA PUBLIC KEY-----",c="-----END RSA PUBLIC KEY-----";t.exports={privateExport:function(t,e){e=e||{};var r=t.n.toBuffer(),n=t.d.toBuffer(),o=t.p.toBuffer(),u=t.q.toBuffer(),c=t.dmp1.toBuffer(),h=t.dmq1.toBuffer(),p=t.coeff.toBuffer(),l=r.length+n.length+o.length+u.length+c.length+h.length+p.length+512,y=new i.Writer({size:l});return y.startSequence(),y.writeInt(0),y.writeBuffer(r,2),y.writeInt(t.e),y.writeBuffer(n,2),y.writeBuffer(o,2),y.writeBuffer(u,2),y.writeBuffer(c,2),y.writeBuffer(h,2),y.writeBuffer(p,2),y.endSequence(),"der"===e.type?y.buffer:a+"\\n"+s.linebrk(y.buffer.toString("base64"),64)+"\\n"+f},privateImport:function(t,e,r){var u;if("der"!==(r=r||{}).type){if(n.isBuffer(e)&&(e=e.toString("utf8")),!o.isString(e))throw Error("Unsupported key format");var c=s.trimSurroundingText(e,a,f).replace(/\\s+|\\n\\r|\\n|\\r$/gm,"");u=n.from(c,"base64")}else{if(!n.isBuffer(e))throw Error("Unsupported key format");u=e}var h=new i.Reader(u);h.readSequence(),h.readString(2,!0),t.setPrivate(h.readString(2,!0),h.readString(2,!0),h.readString(2,!0),h.readString(2,!0),h.readString(2,!0),h.readString(2,!0),h.readString(2,!0),h.readString(2,!0))},publicExport:function(t,e){e=e||{};var r=t.n.toBuffer(),n=r.length+512,o=new i.Writer({size:n});return o.startSequence(),o.writeBuffer(r,2),o.writeInt(t.e),o.endSequence(),"der"===e.type?o.buffer:u+"\\n"+s.linebrk(o.buffer.toString("base64"),64)+"\\n"+c},publicImport:function(t,e,r){var a;if("der"!==(r=r||{}).type){if(n.isBuffer(e)&&(e=e.toString("utf8")),o.isString(e)){var f=s.trimSurroundingText(e,u,c).replace(/\\s+|\\n\\r|\\n|\\r$/gm,"");a=n.from(f,"base64")}}else{if(!n.isBuffer(e))throw Error("Unsupported key format");a=e}var h=new i.Reader(a);h.readSequence(),t.setPublic(h.readString(2,!0),h.readString(2,!0))},autoImport:function(e,r){return/^[\\S\\s]*-----BEGIN RSA PRIVATE KEY-----\\s*(?=(([A-Za-z0-9+/=]+\\s*)+))\\1-----END RSA PRIVATE KEY-----[\\S\\s]*$/g.test(r)?(t.exports.privateImport(e,r),!0):!!/^[\\S\\s]*-----BEGIN RSA PUBLIC KEY-----\\s*(?=(([A-Za-z0-9+/=]+\\s*)+))\\1-----END RSA PUBLIC KEY-----[\\S\\s]*$/g.test(r)&&(t.exports.publicImport(e,r),!0)}}},8573:(t,e,r)=>{var n=r(8287).Buffer,i=r(3100).Ber,o=r(8226)._,s="1.2.840.113549.1.1.1",a=r(8226);const f="-----BEGIN PRIVATE KEY-----",u="-----END PRIVATE KEY-----",c="-----BEGIN PUBLIC KEY-----",h="-----END PUBLIC KEY-----";t.exports={privateExport:function(t,e){e=e||{};var r=t.n.toBuffer(),n=t.d.toBuffer(),o=t.p.toBuffer(),c=t.q.toBuffer(),h=t.dmp1.toBuffer(),p=t.dmq1.toBuffer(),l=t.coeff.toBuffer(),y=r.length+n.length+o.length+c.length+h.length+p.length+l.length+512,g=new i.Writer({size:y});g.startSequence(),g.writeInt(0),g.writeBuffer(r,2),g.writeInt(t.e),g.writeBuffer(n,2),g.writeBuffer(o,2),g.writeBuffer(c,2),g.writeBuffer(h,2),g.writeBuffer(p,2),g.writeBuffer(l,2),g.endSequence();var d=new i.Writer({size:y});return d.startSequence(),d.writeInt(0),d.startSequence(),d.writeOID(s),d.writeNull(),d.endSequence(),d.writeBuffer(g.buffer,4),d.endSequence(),"der"===e.type?d.buffer:f+"\\n"+a.linebrk(d.buffer.toString("base64"),64)+"\\n"+u},privateImport:function(t,e,r){var c;if("der"!==(r=r||{}).type){if(n.isBuffer(e)&&(e=e.toString("utf8")),!o.isString(e))throw Error("Unsupported key format");var h=a.trimSurroundingText(e,f,u).replace("-----END PRIVATE KEY-----","").replace(/\\s+|\\n\\r|\\n|\\r$/gm,"");c=n.from(h,"base64")}else{if(!n.isBuffer(e))throw Error("Unsupported key format");c=e}var p=new i.Reader(c);if(p.readSequence(),p.readInt(0),new i.Reader(p.readString(48,!0)).readOID(6,!0)!==s)throw Error("Invalid Public key format");var l=new i.Reader(p.readString(4,!0));l.readSequence(),l.readString(2,!0),t.setPrivate(l.readString(2,!0),l.readString(2,!0),l.readString(2,!0),l.readString(2,!0),l.readString(2,!0),l.readString(2,!0),l.readString(2,!0),l.readString(2,!0))},publicExport:function(t,e){e=e||{};var r=t.n.toBuffer(),n=r.length+512,o=new i.Writer({size:n});o.writeByte(0),o.startSequence(),o.writeBuffer(r,2),o.writeInt(t.e),o.endSequence();var f=new i.Writer({size:n});return f.startSequence(),f.startSequence(),f.writeOID(s),f.writeNull(),f.endSequence(),f.writeBuffer(o.buffer,3),f.endSequence(),"der"===e.type?f.buffer:c+"\\n"+a.linebrk(f.buffer.toString("base64"),64)+"\\n"+h},publicImport:function(t,e,r){var f;if("der"!==(r=r||{}).type){if(n.isBuffer(e)&&(e=e.toString("utf8")),o.isString(e)){var u=a.trimSurroundingText(e,c,h).replace(/\\s+|\\n\\r|\\n|\\r$/gm,"");f=n.from(u,"base64")}}else{if(!n.isBuffer(e))throw Error("Unsupported key format");f=e}var p=new i.Reader(f);if(p.readSequence(),new i.Reader(p.readString(48,!0)).readOID(6,!0)!==s)throw Error("Invalid Public key format");var l=new i.Reader(p.readString(3,!0));l.readByte(),l.readSequence(),t.setPublic(l.readString(2,!0),l.readString(2,!0))},autoImport:function(e,r){return/^[\\S\\s]*-----BEGIN PRIVATE KEY-----\\s*(?=(([A-Za-z0-9+/=]+\\s*)+))\\1-----END PRIVATE KEY-----[\\S\\s]*$/g.test(r)?(t.exports.privateImport(e,r),!0):!!/^[\\S\\s]*-----BEGIN PUBLIC KEY-----\\s*(?=(([A-Za-z0-9+/=]+\\s*)+))\\1-----END PUBLIC KEY-----[\\S\\s]*$/g.test(r)&&(t.exports.publicImport(e,r),!0)}}},1973:(t,e,r)=>{var n=r(8287).Buffer,i=r(3200),o=r(8226)._;function s(t,e){null!=t&&("number"==typeof t?this.fromNumber(t,e):n.isBuffer(t)?this.fromBuffer(t):null==e&&"string"!=typeof t?this.fromByteArray(t):this.fromString(t,e))}function a(){return new s(null)}s.prototype.am=function(t,e,r,n,i,o){for(var s=16383&e,a=e>>14;--o>=0;){var f=16383&this[t],u=this[t++]>>14,c=a*f+u*s;i=((f=s*f+((16383&c)<<14)+r[n]+i)>>28)+(c>>14)+a*u,r[n++]=268435455&f}return i},s.prototype.DB=28,s.prototype.DM=268435455,s.prototype.DV=1<<28,s.prototype.FV=Math.pow(2,52),s.prototype.F1=24,s.prototype.F2=4;var f,u,c=new Array;for(f="0".charCodeAt(0),u=0;u<=9;++u)c[f++]=u;for(f="a".charCodeAt(0),u=10;u<36;++u)c[f++]=u;for(f="A".charCodeAt(0),u=10;u<36;++u)c[f++]=u;function h(t){return"0123456789abcdefghijklmnopqrstuvwxyz".charAt(t)}function p(t,e){var r=c[t.charCodeAt(e)];return null==r?-1:r}function l(t){var e=a();return e.fromInt(t),e}function y(t){var e,r=1;return 0!=(e=t>>>16)&&(t=e,r+=16),0!=(e=t>>8)&&(t=e,r+=8),0!=(e=t>>4)&&(t=e,r+=4),0!=(e=t>>2)&&(t=e,r+=2),0!=(e=t>>1)&&(t=e,r+=1),r}function g(t){this.m=t}function d(t){this.m=t,this.mp=t.invDigit(),this.mpl=32767&this.mp,this.mph=this.mp>>15,this.um=(1<>=16,e+=16),255&t||(t>>=8,e+=8),15&t||(t>>=4,e+=4),3&t||(t>>=2,e+=2),1&t||++e,e}function E(t){for(var e=0;0!=t;)t&=t-1,++e;return e}function w(){}function O(t){return t}function B(t){this.r2=a(),this.q3=a(),s.ONE.dlShiftTo(2*t.t,this.r2),this.mu=this.r2.divide(t),this.m=t}g.prototype.convert=function(t){return t.s<0||t.compareTo(this.m)>=0?t.mod(this.m):t},g.prototype.revert=function(t){return t},g.prototype.reduce=function(t){t.divRemTo(this.m,null,t)},g.prototype.mulTo=function(t,e,r){t.multiplyTo(e,r),this.reduce(r)},g.prototype.sqrTo=function(t,e){t.squareTo(e),this.reduce(e)},d.prototype.convert=function(t){var e=a();return t.abs().dlShiftTo(this.m.t,e),e.divRemTo(this.m,null,e),t.s<0&&e.compareTo(s.ZERO)>0&&this.m.subTo(e,e),e},d.prototype.revert=function(t){var e=a();return t.copyTo(e),this.reduce(e),e},d.prototype.reduce=function(t){for(;t.t<=this.mt2;)t[t.t++]=0;for(var e=0;e>15)*this.mpl&this.um)<<15)&t.DM;for(t[r=e+this.m.t]+=this.m.am(0,n,t,e,0,this.m.t);t[r]>=t.DV;)t[r]-=t.DV,t[++r]++}t.clamp(),t.drShiftTo(this.m.t,t),t.compareTo(this.m)>=0&&t.subTo(this.m,t)},d.prototype.mulTo=function(t,e,r){t.multiplyTo(e,r),this.reduce(r)},d.prototype.sqrTo=function(t,e){t.squareTo(e),this.reduce(e)},w.prototype.convert=O,w.prototype.revert=O,w.prototype.mulTo=function(t,e,r){t.multiplyTo(e,r)},w.prototype.sqrTo=function(t,e){t.squareTo(e)},B.prototype.convert=function(t){if(t.s<0||t.t>2*this.m.t)return t.mod(this.m);if(t.compareTo(this.m)<0)return t;var e=a();return t.copyTo(e),this.reduce(e),e},B.prototype.revert=function(t){return t},B.prototype.reduce=function(t){for(t.drShiftTo(this.m.t-1,this.r2),t.t>this.m.t+1&&(t.t=this.m.t+1,t.clamp()),this.mu.multiplyUpperTo(this.r2,this.m.t+1,this.q3),this.m.multiplyLowerTo(this.q3,this.m.t+1,this.r2);t.compareTo(this.r2)<0;)t.dAddOffset(1,this.m.t+1);for(t.subTo(this.r2,t);t.compareTo(this.m)>=0;)t.subTo(this.m,t)},B.prototype.mulTo=function(t,e,r){t.multiplyTo(e,r),this.reduce(r)},B.prototype.sqrTo=function(t,e){t.squareTo(e),this.reduce(e)};var A=[2,3,5,7,11,13,17,19,23,29,31,37,41,43,47,53,59,61,67,71,73,79,83,89,97,101,103,107,109,113,127,131,137,139,149,151,157,163,167,173,179,181,191,193,197,199,211,223,227,229,233,239,241,251,257,263,269,271,277,281,283,293,307,311,313,317,331,337,347,349,353,359,367,373,379,383,389,397,401,409,419,421,431,433,439,443,449,457,461,463,467,479,487,491,499,503,509,521,523,541,547,557,563,569,571,577,587,593,599,601,607,613,617,619,631,641,643,647,653,659,661,673,677,683,691,701,709,719,727,733,739,743,751,757,761,769,773,787,797,809,811,821,823,827,829,839,853,857,859,863,877,881,883,887,907,911,919,929,937,941,947,953,967,971,977,983,991,997],x=(1<<26)/A[A.length-1];s.prototype.copyTo=function(t){for(var e=this.t-1;e>=0;--e)t[e]=this[e];t.t=this.t,t.s=this.s},s.prototype.fromInt=function(t){this.t=1,this.s=t<0?-1:0,t>0?this[0]=t:t<-1?this[0]=t+DV:this.t=0},s.prototype.fromString=function(t,e,r){var n;switch(e){case 2:n=1;break;case 4:n=2;break;case 8:n=3;break;case 16:n=4;break;case 32:n=5;break;case 256:n=8;break;default:return void this.fromRadix(t,e)}this.t=0,this.s=0;for(var i=t.length,o=!1,a=0;--i>=0;){var f=8==n?255&t[i]:p(t,i);f<0?"-"==t.charAt(i)&&(o=!0):(o=!1,0===a?this[this.t++]=f:a+n>this.DB?(this[this.t-1]|=(f&(1<>this.DB-a):this[this.t-1]|=f<=this.DB&&(a-=this.DB))}!r&&8==n&&128&t[0]&&(this.s=-1,a>0&&(this[this.t-1]|=(1<0&&this[this.t-1]==t;)--this.t},s.prototype.dlShiftTo=function(t,e){var r;for(r=this.t-1;r>=0;--r)e[r+t]=this[r];for(r=t-1;r>=0;--r)e[r]=0;e.t=this.t+t,e.s=this.s},s.prototype.drShiftTo=function(t,e){for(var r=t;r=0;--r)e[r+s+1]=this[r]>>i|a,a=(this[r]&o)<=0;--r)e[r]=0;e[s]=a,e.t=this.t+s+1,e.s=this.s,e.clamp()},s.prototype.rShiftTo=function(t,e){e.s=this.s;var r=Math.floor(t/this.DB);if(r>=this.t)e.t=0;else{var n=t%this.DB,i=this.DB-n,o=(1<>n;for(var s=r+1;s>n;n>0&&(e[this.t-r-1]|=(this.s&o)<>=this.DB;if(t.t>=this.DB;n+=this.s}else{for(n+=this.s;r>=this.DB;n-=t.s}e.s=n<0?-1:0,n<-1?e[r++]=this.DV+n:n>0&&(e[r++]=n),e.t=r,e.clamp()},s.prototype.multiplyTo=function(t,e){var r=this.abs(),n=t.abs(),i=r.t;for(e.t=i+n.t;--i>=0;)e[i]=0;for(i=0;i=0;)t[r]=0;for(r=0;r=e.DV&&(t[r+e.t]-=e.DV,t[r+e.t+1]=1)}t.t>0&&(t[t.t-1]+=e.am(r,e[r],t,2*r,0,1)),t.s=0,t.clamp()},s.prototype.divRemTo=function(t,e,r){var n=t.abs();if(!(n.t<=0)){var i=this.abs();if(i.t0?(n.lShiftTo(c,o),i.lShiftTo(c,r)):(n.copyTo(o),i.copyTo(r));var h=o.t,p=o[h-1];if(0!==p){var l=p*(1<1?o[h-2]>>this.F2:0),g=this.FV/l,d=(1<=0&&(r[r.t++]=1,r.subTo(_,r)),s.ONE.dlShiftTo(h,_),_.subTo(o,o);o.t=0;){var b=r[--m]==p?this.DM:Math.floor(r[m]*g+(r[m-1]+v)*d);if((r[m]+=o.am(0,b,r,S,0,h))0&&r.rShiftTo(c,r),f<0&&s.ZERO.subTo(r,r)}}},s.prototype.invDigit=function(){if(this.t<1)return 0;var t=this[0];if(!(1&t))return 0;var e=3&t;return(e=(e=(e=(e=e*(2-(15&t)*e)&15)*(2-(255&t)*e)&255)*(2-((65535&t)*e&65535))&65535)*(2-t*e%this.DV)%this.DV)>0?this.DV-e:-e},s.prototype.isEven=function(){return 0===(this.t>0?1&this[0]:this.s)},s.prototype.exp=function(t,e){if(t>4294967295||t<1)return s.ONE;var r=a(),n=a(),i=e.convert(this),o=y(t)-1;for(i.copyTo(r);--o>=0;)if(e.sqrTo(r,n),(t&1<0)e.mulTo(n,i,r);else{var f=r;r=n,n=f}return e.revert(r)},s.prototype.chunkSize=function(t){return Math.floor(Math.LN2*this.DB/Math.log(t))},s.prototype.toRadix=function(t){if(null==t&&(t=10),0===this.signum()||t<2||t>36)return"0";var e=this.chunkSize(t),r=Math.pow(t,e),n=l(r),i=a(),o=a(),s="";for(this.divRemTo(n,i,o);i.signum()>0;)s=(r+o.intValue()).toString(t).substr(1)+s,i.divRemTo(n,i,o);return o.intValue().toString(t)+s},s.prototype.fromRadix=function(t,e){this.fromInt(0),null==e&&(e=10);for(var r=this.chunkSize(e),n=Math.pow(e,r),i=!1,o=0,a=0,f=0;f=r&&(this.dMultiply(n),this.dAddOffset(a,0),o=0,a=0))}o>0&&(this.dMultiply(Math.pow(e,o)),this.dAddOffset(a,0)),i&&s.ZERO.subTo(this,this)},s.prototype.fromNumber=function(t,e){if("number"==typeof e)if(t<2)this.fromInt(1);else for(this.fromNumber(t),this.testBit(t-1)||this.bitwiseTo(s.ONE.shiftLeft(t-1),m,this),this.isEven()&&this.dAddOffset(1,0);!this.isProbablePrime(e);)this.dAddOffset(2,0),this.bitLength()>t&&this.subTo(s.ONE.shiftLeft(t-1),this);else{var r=i.randomBytes(1+(t>>3)),n=7&t;n>0?r[0]&=(1<>=this.DB;if(t.t>=this.DB;n+=this.s}else{for(n+=this.s;r>=this.DB;n+=t.s}e.s=n<0?-1:0,n>0?e[r++]=n:n<-1&&(e[r++]=this.DV+n),e.t=r,e.clamp()},s.prototype.dMultiply=function(t){this[this.t]=this.am(0,t-1,this,0,0,this.t),++this.t,this.clamp()},s.prototype.dAddOffset=function(t,e){if(0!==t){for(;this.t<=e;)this[this.t++]=0;for(this[e]+=t;this[e]>=this.DV;)this[e]-=this.DV,++e>=this.t&&(this[this.t++]=0),++this[e]}},s.prototype.multiplyLowerTo=function(t,e,r){var n,i=Math.min(this.t+t.t,e);for(r.s=0,r.t=i;i>0;)r[--i]=0;for(n=r.t-this.t;i=0;)r[n]=0;for(n=Math.max(e-this.t,0);n0)if(0===e)r=this[0]%t;else for(var n=this.t-1;n>=0;--n)r=(e*r+this[n])%t;return r},s.prototype.millerRabin=function(t){var e=this.subtract(s.ONE),r=e.getLowestSetBit();if(r<=0)return!1;var n=e.shiftRight(r);(t=t+1>>1)>A.length&&(t=A.length);for(var i=a(),o=0;o0)for(a>a)>0&&(i=!0,o=h(r));s>=0;)a>(a+=this.DB-e)):(r=this[s]>>(a-=e)&n,a<=0&&(a+=this.DB,--s)),r>0&&(i=!0),i&&(o+=h(r));return i?o:"0"},s.prototype.negate=function(){var t=a();return s.ZERO.subTo(this,t),t},s.prototype.abs=function(){return this.s<0?this.negate():this},s.prototype.compareTo=function(t){var e=this.s-t.s;if(0!=e)return e;var r=this.t;if(0!=(e=r-t.t))return this.s<0?-e:e;for(;--r>=0;)if(0!=(e=this[r]-t[r]))return e;return 0},s.prototype.bitLength=function(){return this.t<=0?0:this.DB*(this.t-1)+y(this[this.t-1]^this.s&this.DM)},s.prototype.mod=function(t){var e=a();return this.abs().divRemTo(t,null,e),this.s<0&&e.compareTo(s.ZERO)>0&&t.subTo(e,e),e},s.prototype.modPowInt=function(t,e){var r;return r=t<256||e.isEven()?new g(e):new d(e),this.exp(t,r)},s.prototype.clone=function(){var t=a();return this.copyTo(t),t},s.prototype.intValue=function(){if(this.s<0){if(1==this.t)return this[0]-this.DV;if(0===this.t)return-1}else{if(1==this.t)return this[0];if(0===this.t)return 0}return(this[1]&(1<<32-this.DB)-1)<>24},s.prototype.shortValue=function(){return 0==this.t?this.s:this[0]<<16>>16},s.prototype.signum=function(){return this.s<0?-1:this.t<=0||1==this.t&&this[0]<=0?0:1},s.prototype.toByteArray=function(){var t=this.t,e=new Array;e[0]=this.s;var r,n=this.DB-t*this.DB%8,i=0;if(t-- >0)for(n>n)!=(this.s&this.DM)>>n&&(e[i++]=r|this.s<=0;)n<8?(r=(this[t]&(1<>(n+=this.DB-8)):(r=this[t]>>(n-=8)&255,n<=0&&(n+=this.DB,--t)),128&r&&(r|=-256),0===i&&(128&this.s)!=(128&r)&&++i,(i>0||r!=this.s)&&(e[i++]=r);return e},s.prototype.toBuffer=function(t){var e=n.from(this.toByteArray());if(!0===t&&0===e[0])e=e.slice(1);else if(o.isNumber(t)){if(e.length>t){for(var r=0;r0?this:t},s.prototype.and=function(t){var e=a();return this.bitwiseTo(t,v,e),e},s.prototype.or=function(t){var e=a();return this.bitwiseTo(t,m,e),e},s.prototype.xor=function(t){var e=a();return this.bitwiseTo(t,S,e),e},s.prototype.andNot=function(t){var e=a();return this.bitwiseTo(t,_,e),e},s.prototype.not=function(){for(var t=a(),e=0;e=this.t?0!=this.s:!!(this[e]&1<1){var h=a();for(n.sqrTo(s[1],h);f<=c;)s[f]=a(),n.mulTo(h,s[f-2],s[f]),f+=2}var p,v,m=t.t-1,S=!0,_=a();for(i=y(t[m])-1;m>=0;){for(i>=u?p=t[m]>>i-u&c:(p=(t[m]&(1<0&&(p|=t[m-1]>>this.DB+i-u)),f=r;!(1&p);)p>>=1,--f;if((i-=f)<0&&(i+=this.DB,--m),S)s[p].copyTo(o),S=!1;else{for(;f>1;)n.sqrTo(o,_),n.sqrTo(_,o),f-=2;f>0?n.sqrTo(o,_):(v=o,o=_,_=v),n.mulTo(_,s[p],o)}for(;m>=0&&!(t[m]&1<=0?(r.subTo(n,r),e&&i.subTo(a,i),o.subTo(f,o)):(n.subTo(r,n),e&&a.subTo(i,a),f.subTo(o,f))}return 0!=n.compareTo(s.ONE)?s.ZERO:f.compareTo(t)>=0?f.subtract(t):f.signum()<0?(f.addTo(t,f),f.signum()<0?f.add(t):f):f},s.prototype.pow=function(t){return this.exp(t,new w)},s.prototype.gcd=function(t){var e=this.s<0?this.negate():this.clone(),r=t.s<0?t.negate():t.clone();if(e.compareTo(r)<0){var n=e;e=r,r=n}var i=e.getLowestSetBit(),o=r.getLowestSetBit();if(o<0)return e;for(i0&&(e.rShiftTo(o,e),r.rShiftTo(o,r));e.signum()>0;)(i=e.getLowestSetBit())>0&&e.rShiftTo(i,e),(i=r.getLowestSetBit())>0&&r.rShiftTo(i,r),e.compareTo(r)>=0?(e.subTo(r,e),e.rShiftTo(1,e)):(r.subTo(e,r),r.rShiftTo(1,r));return o>0&&r.lShiftTo(o,r),r},s.prototype.isProbablePrime=function(t){var e,r=this.abs();if(1==r.t&&r[0]<=A[A.length-1]){for(e=0;e{var n=r(8287).Buffer,i=r(8226)._,o=(r(3200),r(1973)),s=r(8226),a=r(1768),f=r(4538);e.BigInteger=o,t.exports.Key=function(){function t(){this.n=null,this.e=0,this.d=null,this.p=null,this.q=null,this.dmp1=null,this.dmq1=null,this.coeff=null}return t.prototype.setOptions=function(t){var e=a[t.signingScheme],r=a[t.encryptionScheme];e===r?this.signingScheme=this.encryptionScheme=r.makeScheme(this,t):(this.encryptionScheme=r.makeScheme(this,t),this.signingScheme=e.makeScheme(this,t)),this.encryptEngine=f.getEngine(this,t)},t.prototype.generate=function(t,e){var r=t>>1;this.e=parseInt(e,16);for(var n=new o(e,16);;){for(;this.p=new o(t-r,1),0!==this.p.subtract(o.ONE).gcd(n).compareTo(o.ONE)||!this.p.isProbablePrime(10););for(;this.q=new o(r,1),0!==this.q.subtract(o.ONE).gcd(n).compareTo(o.ONE)||!this.q.isProbablePrime(10););if(this.p.compareTo(this.q)<=0){var i=this.p;this.p=this.q,this.q=i}var s=this.p.subtract(o.ONE),a=this.q.subtract(o.ONE),f=s.multiply(a);if(0===f.gcd(n).compareTo(o.ONE)){if(this.n=this.p.multiply(this.q),this.n.bitLength()0&&(i.isNumber(e)||e.length>0)&&r.length>0))throw Error("Invalid RSA private key");this.n=new o(t),this.e=i.isNumber(e)?e:s.get32IntFromBuffer(e,0),this.d=new o(r),n&&a&&f&&u&&c&&(this.p=new o(n),this.q=new o(a),this.dmp1=new o(f),this.dmq1=new o(u),this.coeff=new o(c)),this.$$recalculateCache()},t.prototype.setPublic=function(t,e){if(!(t&&e&&t.length>0&&(i.isNumber(e)||e.length>0)))throw Error("Invalid RSA public key");this.n=new o(t),this.e=i.isNumber(e)?e:s.get32IntFromBuffer(e,0),this.$$recalculateCache()},t.prototype.$doPrivate=function(t){if(this.p||this.q)return t.modPow(this.d,this.n);for(var e=t.mod(this.p).modPow(this.dmp1,this.p),r=t.mod(this.q).modPow(this.dmq1,this.q);e.compareTo(r)<0;)e=e.add(this.p);return e.subtract(r).multiply(this.coeff).mod(this.p).multiply(this.q).add(r)},t.prototype.$doPublic=function(t){return t.modPowInt(this.e,this.n)},t.prototype.encrypt=function(t,e){var r=[],i=[],o=t.length,s=Math.ceil(o/this.maxMessageLength)||1,a=Math.ceil(o/s||1);if(1==s)r.push(t);else for(var f=0;f0)throw Error("Incorrect data or key");for(var r=[],i=0,o=0,s=t.length/this.encryptedDataLength,a=0;a>3},t}()},2487:(t,e,r)=>{var n=r(8287).Buffer,i=(r(1973),r(3200));t.exports={isEncryption:!0,isSignature:!1},t.exports.digestLength={md4:16,md5:16,ripemd160:20,rmd160:20,sha1:20,sha224:28,sha256:32,sha384:48,sha512:64};var o="sha1";t.exports.eme_oaep_mgf1=function(e,r,s){s=s||o;for(var a=t.exports.digestLength[s],f=Math.ceil(r/a),u=n.alloc(a*f),c=n.alloc(4),h=0;hf-2*u-2)throw new Error("Message is too long to encode into an encoded message with a length of "+f+" bytes, increaseemLen to fix this error (minimum value for given parameters and options: "+(f-2*u-2)+")");var c=i.createHash(r);c.update(a),c=c.digest();var h=n.alloc(f-e.length-2*u-1);h.fill(0),h[h.length-1]=1;for(var p=n.concat([c,h,e]),l=i.randomBytes(u),y=s(l,p.length,r),g=0;g{var n=r(8287).Buffer,i=r(1973),o=r(3200),s=r(7449),a={md2:n.from("3020300c06082a864886f70d020205000410","hex"),md5:n.from("3020300c06082a864886f70d020505000410","hex"),sha1:n.from("3021300906052b0e03021a05000414","hex"),sha224:n.from("302d300d06096086480165030402040500041c","hex"),sha256:n.from("3031300d060960864801650304020105000420","hex"),sha384:n.from("3041300d060960864801650304020205000430","hex"),sha512:n.from("3051300d060960864801650304020305000440","hex"),ripemd160:n.from("3021300906052b2403020105000414","hex"),rmd160:n.from("3021300906052b2403020105000414","hex")},f={ripemd160:"rmd160"},u="sha256";t.exports={isEncryption:!0,isSignature:!0},t.exports.makeScheme=function(t,e){function r(t,e){this.key=t,this.options=e}return r.prototype.maxMessageLength=function(){return this.options.encryptionSchemeOptions&&this.options.encryptionSchemeOptions.padding==s.RSA_NO_PADDING?this.key.encryptedDataLength:this.key.encryptedDataLength-11},r.prototype.encPad=function(t,e){var r;if(e=e||{},t.length>this.key.maxMessageLength)throw new Error("Message too long for RSA (n="+this.key.encryptedDataLength+", l="+t.length+")");if(this.options.encryptionSchemeOptions&&this.options.encryptionSchemeOptions.padding==s.RSA_NO_PADDING)return(r=n.alloc(this.key.maxMessageLength-t.length)).fill(0),n.concat([r,t]);if(1===e.type)return(r=n.alloc(this.key.encryptedDataLength-t.length-1)).fill(255,0,r.length-1),r[0]=1,r[r.length-1]=0,n.concat([r,t]);(r=n.alloc(this.key.encryptedDataLength-t.length))[0]=0,r[1]=2;for(var i=o.randomBytes(r.length-3),a=0;a=t.length)return null}else{if(0!==t[0]||2!==t[1])return null;for(r=3;0!==t[r];)if(++r>=t.length)return null}return t.slice(r+1,t.length)},r.prototype.sign=function(t){var e=this.options.signingSchemeOptions.hash||u;if("browser"===this.options.environment){e=f[e]||e;var r=o.createHash(e);r.update(t);var n=this.pkcs1pad(r.digest(),e);return this.key.$doPrivate(new i(n)).toBuffer(this.key.encryptedDataLength)}var s=o.createSign("RSA-"+e.toUpperCase());return s.update(t),s.sign(this.options.rsaUtils.exportKey("private"))},r.prototype.verify=function(t,e,r){if(this.options.encryptionSchemeOptions&&this.options.encryptionSchemeOptions.padding==s.RSA_NO_PADDING)return!1;var a=this.options.signingSchemeOptions.hash||u;if("browser"===this.options.environment){a=f[a]||a,r&&(e=n.from(e,r));var c=o.createHash(a);c.update(t);var h=this.pkcs1pad(c.digest(),a);return this.key.$doPublic(new i(e)).toBuffer().toString("hex")==h.toString("hex")}var p=o.createVerify("RSA-"+a.toUpperCase());return p.update(t),p.verify(this.options.rsaUtils.exportKey("public"),e,r)},r.prototype.pkcs0pad=function(t){var e=n.alloc(this.key.maxMessageLength-t.length);return e.fill(0),n.concat([e,t])},r.prototype.pkcs0unpad=function(t){return"function"==typeof t.lastIndexOf?t.slice(t.lastIndexOf("\\0")+1,t.length):t.slice(String.prototype.lastIndexOf.call(t,"\\0")+1,t.length)},r.prototype.pkcs1pad=function(t,e){var r=a[e];if(!r)throw Error("Unsupported hash algorithm");var i=n.concat([r,t]);if(i.length+10>this.key.encryptedDataLength)throw Error("Key is too short for signing algorithm ("+e+")");var o=n.alloc(this.key.encryptedDataLength-i.length-1);return o.fill(255,0,o.length-1),o[0]=1,o[o.length-1]=0,n.concat([o,i])},new r(t,e)}},4414:(t,e,r)=>{var n=r(8287).Buffer,i=r(1973),o=r(3200);t.exports={isEncryption:!1,isSignature:!0};var s="sha1";t.exports.makeScheme=function(t,e){var a=r(1768).pkcs1_oaep;function f(t,e){this.key=t,this.options=e}return f.prototype.sign=function(t){var e=o.createHash(this.options.signingSchemeOptions.hash||s);e.update(t);var r=this.emsa_pss_encode(e.digest(),this.key.keySize-1);return this.key.$doPrivate(new i(r)).toBuffer(this.key.encryptedDataLength)},f.prototype.verify=function(t,e,r){r&&(e=n.from(e,r)),e=new i(e);var a=Math.ceil((this.key.keySize-1)/8),f=this.key.$doPublic(e).toBuffer(a),u=o.createHash(this.options.signingSchemeOptions.hash||s);return u.update(t),this.emsa_pss_verify(u.digest(),f,this.key.keySize-1)},f.prototype.emsa_pss_encode=function(t,e){var r=this.options.signingSchemeOptions.hash||s,i=this.options.signingSchemeOptions.mgf||a.eme_oaep_mgf1,f=this.options.signingSchemeOptions.saltLength||20,u=a.digestLength[r],c=Math.ceil(e/8);if(c>8-S<<8-S;v[0]=v[0]&_;var b=n.alloc(v.length+l.length+1);return v.copy(b,0),l.copy(b,v.length),b[b.length-1]=188,b},f.prototype.emsa_pss_verify=function(t,e,r){var i=this.options.signingSchemeOptions.hash||s,f=this.options.signingSchemeOptions.mgf||a.eme_oaep_mgf1,u=this.options.signingSchemeOptions.saltLength||20,c=a.digestLength[i],h=Math.ceil(r/8);if(h>8-(g=8*h-r)<<8-g,p[0]=p[0]&l,y=0;0===p[y]&&y{t.exports={pkcs1:r(8290),pkcs1_oaep:r(2487),pss:r(4414),isEncryption:function(e){return t.exports[e]&&t.exports[e].isEncryption},isSignature:function(e){return t.exports[e]&&t.exports[e].isSignature}}},8226:(t,e,r)=>{var n=r(5606);r(3200),t.exports.linebrk=function(t,e){for(var r="",n=0;n+e0){if(r>=4)return t.readUIntBE(e,r);for(var n=0,i=e+r,o=0;i>e;i--,o+=2)n+=t[i-1]*Math.pow(16,o);return n}return NaN},t.exports._={isObject:function(t){var e=typeof t;return!!t&&("object"==e||"function"==e)},isString:function(t){return"string"==typeof t||t instanceof String},isNumber:function(t){return"number"==typeof t||!isNaN(parseFloat(t))&&isFinite(t)},omit:function(t,e){var r={};for(var n in t)t.hasOwnProperty(n)&&n!==e&&(r[n]=t[n]);return r}},t.exports.trimSurroundingText=function(t,e,r){var n=0,i=t.length,o=t.indexOf(e);o>=0&&(n=o+e.length);var s=t.indexOf(r,o);return s>=0&&(i=s),t.substring(n,i)}},8875:(t,e,r)=>{"use strict";var n;if(!Object.keys){var i=Object.prototype.hasOwnProperty,o=Object.prototype.toString,s=r(1093),a=Object.prototype.propertyIsEnumerable,f=!a.call({toString:null},"toString"),u=a.call((function(){}),"prototype"),c=["toString","toLocaleString","valueOf","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","constructor"],h=function(t){var e=t.constructor;return e&&e.prototype===t},p={$applicationCache:!0,$console:!0,$external:!0,$frame:!0,$frameElement:!0,$frames:!0,$innerHeight:!0,$innerWidth:!0,$onmozfullscreenchange:!0,$onmozfullscreenerror:!0,$outerHeight:!0,$outerWidth:!0,$pageXOffset:!0,$pageYOffset:!0,$parent:!0,$scrollLeft:!0,$scrollTop:!0,$scrollX:!0,$scrollY:!0,$self:!0,$webkitIndexedDB:!0,$webkitStorageInfo:!0,$window:!0},l=function(){if("undefined"==typeof window)return!1;for(var t in window)try{if(!p["$"+t]&&i.call(window,t)&&null!==window[t]&&"object"==typeof window[t])try{h(window[t])}catch(t){return!0}}catch(t){return!0}return!1}();n=function(t){var e=null!==t&&"object"==typeof t,r="[object Function]"===o.call(t),n=s(t),a=e&&"[object String]"===o.call(t),p=[];if(!e&&!r&&!n)throw new TypeError("Object.keys called on a non-object");var y=u&&r;if(a&&t.length>0&&!i.call(t,0))for(var g=0;g0)for(var d=0;d{"use strict";var n=Array.prototype.slice,i=r(1093),o=Object.keys,s=o?function(t){return o(t)}:r(8875),a=Object.keys;s.shim=function(){if(Object.keys){var t=function(){var t=Object.keys(arguments);return t&&t.length===arguments.length}(1,2);t||(Object.keys=function(t){return i(t)?a(n.call(t)):a(t)})}else Object.keys=s;return Object.keys||s},t.exports=s},1093:t=>{"use strict";var e=Object.prototype.toString;t.exports=function(t){var r=e.call(t),n="[object Arguments]"===r;return n||(n="[object Array]"!==r&&null!==t&&"object"==typeof t&&"number"==typeof t.length&&t.length>=0&&"[object Function]"===e.call(t.callee)),n}},8403:(t,e,r)=>{"use strict";var n=r(1189),i=r(1333)(),o=r(8075),s=Object,a=o("Array.prototype.push"),f=o("Object.prototype.propertyIsEnumerable"),u=i?Object.getOwnPropertySymbols:null;t.exports=function(t,e){if(null==t)throw new TypeError("target must be an object");var r=s(t);if(1===arguments.length)return r;for(var o=1;o{"use strict";var n=r(8403);t.exports=function(){return Object.assign?function(){if(!Object.assign)return!1;for(var t="abcdefghijklmnopqrst",e=t.split(""),r={},n=0;n{var e,r,n=t.exports={};function i(){throw new Error("setTimeout has not been defined")}function o(){throw new Error("clearTimeout has not been defined")}function s(t){if(e===setTimeout)return setTimeout(t,0);if((e===i||!e)&&setTimeout)return e=setTimeout,setTimeout(t,0);try{return e(t,0)}catch(r){try{return e.call(null,t,0)}catch(r){return e.call(this,t,0)}}}!function(){try{e="function"==typeof setTimeout?setTimeout:i}catch(t){e=i}try{r="function"==typeof clearTimeout?clearTimeout:o}catch(t){r=o}}();var a,f=[],u=!1,c=-1;function h(){u&&a&&(u=!1,a.length?f=a.concat(f):c=-1,f.length&&p())}function p(){if(!u){var t=s(h);u=!0;for(var e=f.length;e;){for(a=f,f=[];++c1)for(var r=1;r{"use strict";var n,i=r(5606),o=r(8287),s=o.Buffer,a={};for(n in o)o.hasOwnProperty(n)&&"SlowBuffer"!==n&&"Buffer"!==n&&(a[n]=o[n]);var f=a.Buffer={};for(n in s)s.hasOwnProperty(n)&&"allocUnsafe"!==n&&"allocUnsafeSlow"!==n&&(f[n]=s[n]);if(a.Buffer.prototype=s.prototype,f.from&&f.from!==Uint8Array.from||(f.from=function(t,e,r){if("number"==typeof t)throw new TypeError(\'The "value" argument must not be of type number. Received type \'+typeof t);if(t&&void 0===t.length)throw new TypeError("The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type "+typeof t);return s(t,e,r)}),f.alloc||(f.alloc=function(t,e,r){if("number"!=typeof t)throw new TypeError(\'The "size" argument must be of type number. Received type \'+typeof t);if(t<0||t>=2*(1<<30))throw new RangeError(\'The value "\'+t+\'" is invalid for option "size"\');var n=s(t);return e&&0!==e.length?"string"==typeof r?n.fill(e,r):n.fill(e):n.fill(0),n}),!a.kStringMaxLength)try{a.kStringMaxLength=i.binding("buffer").kStringMaxLength}catch(t){}a.constants||(a.constants={MAX_LENGTH:a.kMaxLength},a.kStringMaxLength&&(a.constants.MAX_STRING_LENGTH=a.kStringMaxLength)),t.exports=a},6897:(t,e,r)=>{"use strict";var n=r(453),i=r(41),o=r(592)(),s=r(5795),a=r(9675),f=n("%Math.floor%");t.exports=function(t,e){if("function"!=typeof t)throw new a("`fn` is not a function");if("number"!=typeof e||e<0||e>4294967295||f(e)!==e)throw new a("`length` must be a positive 32-bit integer");var r=arguments.length>2&&!!arguments[2],n=!0,u=!0;if("length"in t&&s){var c=s(t,"length");c&&!c.configurable&&(n=!1),c&&!c.writable&&(u=!1)}return(n||u||!r)&&(o?i(t,"length",e,!0,!0):i(t,"length",e)),t}},3200:(t,e,r)=>{var n=r(8287).Buffer,i=r(1396),o={randomBytes:function(t){for(var e=[],r=0;r{var n=r(8287).Buffer;const i=r(3229);let o={outputEncoding:"",PublicFormat:"pkcs1-public",PrivateFormat:"pkcs1-private",options:{environment:"browser",encryptionScheme:"pkcs1"}};t.exports={NodeRSA:i,encryptRSAWithPublicKey:function(t,e,r={}){return r=Object.assign({},o,r),new i(e,r.PublicFormat,r.options).encrypt(t,r.outEncoding||"base64")},encryptRSAWithPrivateKey:function(t,e,r={}){return r=Object.assign({},o,r),new i(e,r.PrivateFormat,r.options).encryptPrivate(t,r.outputEncoding||"base64")},decryptRSAWithPublicKey:function(t,e,r={}){return r=Object.assign({},o,r),new i(e,r.PublicEncoding,r.options).decryptPublic(t,r.outEncoding||"utf8")},decryptRSAWithPrivateKey:function(t,e,r={}){return r=Object.assign({},o,r),new i(e,r.PrivateEncoding,r.options).decrypt(t,r.outEncoding||"utf8")},sign:function(t,e,r={}){return r=Object.assign({},o,r),new i(e,r.PrivateEncoding,r.options).sign(t,r.outEncoding||"base64")},verify:function(t,e,r,s={}){return"string"==typeof e&&e.match(/^([0-9a-fA-F]{2})*$/)?e=n.from(e,"hex"):"string"==typeof e&&(e=n.from(e,"base64")),s=Object.assign({},o,s),new i(r,s.PublicEncoding,s.options).verify(t,e)}}},7449:t=>{"use strict";t.exports=JSON.parse(\'{"O_RDONLY":0,"O_WRONLY":1,"O_RDWR":2,"S_IFMT":61440,"S_IFREG":32768,"S_IFDIR":16384,"S_IFCHR":8192,"S_IFBLK":24576,"S_IFIFO":4096,"S_IFLNK":40960,"S_IFSOCK":49152,"O_CREAT":512,"O_EXCL":2048,"O_NOCTTY":131072,"O_TRUNC":1024,"O_APPEND":8,"O_DIRECTORY":1048576,"O_NOFOLLOW":256,"O_SYNC":128,"O_SYMLINK":2097152,"O_NONBLOCK":4,"S_IRWXU":448,"S_IRUSR":256,"S_IWUSR":128,"S_IXUSR":64,"S_IRWXG":56,"S_IRGRP":32,"S_IWGRP":16,"S_IXGRP":8,"S_IRWXO":7,"S_IROTH":4,"S_IWOTH":2,"S_IXOTH":1,"E2BIG":7,"EACCES":13,"EADDRINUSE":48,"EADDRNOTAVAIL":49,"EAFNOSUPPORT":47,"EAGAIN":35,"EALREADY":37,"EBADF":9,"EBADMSG":94,"EBUSY":16,"ECANCELED":89,"ECHILD":10,"ECONNABORTED":53,"ECONNREFUSED":61,"ECONNRESET":54,"EDEADLK":11,"EDESTADDRREQ":39,"EDOM":33,"EDQUOT":69,"EEXIST":17,"EFAULT":14,"EFBIG":27,"EHOSTUNREACH":65,"EIDRM":90,"EILSEQ":92,"EINPROGRESS":36,"EINTR":4,"EINVAL":22,"EIO":5,"EISCONN":56,"EISDIR":21,"ELOOP":62,"EMFILE":24,"EMLINK":31,"EMSGSIZE":40,"EMULTIHOP":95,"ENAMETOOLONG":63,"ENETDOWN":50,"ENETRESET":52,"ENETUNREACH":51,"ENFILE":23,"ENOBUFS":55,"ENODATA":96,"ENODEV":19,"ENOENT":2,"ENOEXEC":8,"ENOLCK":77,"ENOLINK":97,"ENOMEM":12,"ENOMSG":91,"ENOPROTOOPT":42,"ENOSPC":28,"ENOSR":98,"ENOSTR":99,"ENOSYS":78,"ENOTCONN":57,"ENOTDIR":20,"ENOTEMPTY":66,"ENOTSOCK":38,"ENOTSUP":45,"ENOTTY":25,"ENXIO":6,"EOPNOTSUPP":102,"EOVERFLOW":84,"EPERM":1,"EPIPE":32,"EPROTO":100,"EPROTONOSUPPORT":43,"EPROTOTYPE":41,"ERANGE":34,"EROFS":30,"ESPIPE":29,"ESRCH":3,"ESTALE":70,"ETIME":101,"ETIMEDOUT":60,"ETXTBSY":26,"EWOULDBLOCK":35,"EXDEV":18,"SIGHUP":1,"SIGINT":2,"SIGQUIT":3,"SIGILL":4,"SIGTRAP":5,"SIGABRT":6,"SIGIOT":6,"SIGBUS":10,"SIGFPE":8,"SIGKILL":9,"SIGUSR1":30,"SIGSEGV":11,"SIGUSR2":31,"SIGPIPE":13,"SIGALRM":14,"SIGTERM":15,"SIGCHLD":20,"SIGCONT":19,"SIGSTOP":17,"SIGTSTP":18,"SIGTTIN":21,"SIGTTOU":22,"SIGURG":16,"SIGXCPU":24,"SIGXFSZ":25,"SIGVTALRM":26,"SIGPROF":27,"SIGWINCH":28,"SIGIO":23,"SIGSYS":12,"SSL_OP_ALL":2147486719,"SSL_OP_ALLOW_UNSAFE_LEGACY_RENEGOTIATION":262144,"SSL_OP_CIPHER_SERVER_PREFERENCE":4194304,"SSL_OP_CISCO_ANYCONNECT":32768,"SSL_OP_COOKIE_EXCHANGE":8192,"SSL_OP_CRYPTOPRO_TLSEXT_BUG":2147483648,"SSL_OP_DONT_INSERT_EMPTY_FRAGMENTS":2048,"SSL_OP_EPHEMERAL_RSA":0,"SSL_OP_LEGACY_SERVER_CONNECT":4,"SSL_OP_MICROSOFT_BIG_SSLV3_BUFFER":32,"SSL_OP_MICROSOFT_SESS_ID_BUG":1,"SSL_OP_MSIE_SSLV2_RSA_PADDING":0,"SSL_OP_NETSCAPE_CA_DN_BUG":536870912,"SSL_OP_NETSCAPE_CHALLENGE_BUG":2,"SSL_OP_NETSCAPE_DEMO_CIPHER_CHANGE_BUG":1073741824,"SSL_OP_NETSCAPE_REUSE_CIPHER_CHANGE_BUG":8,"SSL_OP_NO_COMPRESSION":131072,"SSL_OP_NO_QUERY_MTU":4096,"SSL_OP_NO_SESSION_RESUMPTION_ON_RENEGOTIATION":65536,"SSL_OP_NO_SSLv2":16777216,"SSL_OP_NO_SSLv3":33554432,"SSL_OP_NO_TICKET":16384,"SSL_OP_NO_TLSv1":67108864,"SSL_OP_NO_TLSv1_1":268435456,"SSL_OP_NO_TLSv1_2":134217728,"SSL_OP_PKCS1_CHECK_1":0,"SSL_OP_PKCS1_CHECK_2":0,"SSL_OP_SINGLE_DH_USE":1048576,"SSL_OP_SINGLE_ECDH_USE":524288,"SSL_OP_SSLEAY_080_CLIENT_DH_BUG":128,"SSL_OP_SSLREF2_REUSE_CERT_TYPE_BUG":0,"SSL_OP_TLS_BLOCK_PADDING_BUG":512,"SSL_OP_TLS_D5_BUG":256,"SSL_OP_TLS_ROLLBACK_BUG":8388608,"ENGINE_METHOD_DSA":2,"ENGINE_METHOD_DH":4,"ENGINE_METHOD_RAND":8,"ENGINE_METHOD_ECDH":16,"ENGINE_METHOD_ECDSA":32,"ENGINE_METHOD_CIPHERS":64,"ENGINE_METHOD_DIGESTS":128,"ENGINE_METHOD_STORE":256,"ENGINE_METHOD_PKEY_METHS":512,"ENGINE_METHOD_PKEY_ASN1_METHS":1024,"ENGINE_METHOD_ALL":65535,"ENGINE_METHOD_NONE":0,"DH_CHECK_P_NOT_SAFE_PRIME":2,"DH_CHECK_P_NOT_PRIME":1,"DH_UNABLE_TO_CHECK_GENERATOR":4,"DH_NOT_SUITABLE_GENERATOR":8,"NPN_ENABLED":1,"RSA_PKCS1_PADDING":1,"RSA_SSLV23_PADDING":2,"RSA_NO_PADDING":3,"RSA_PKCS1_OAEP_PADDING":4,"RSA_X931_PADDING":5,"RSA_PKCS1_PSS_PADDING":6,"POINT_CONVERSION_COMPRESSED":2,"POINT_CONVERSION_UNCOMPRESSED":4,"POINT_CONVERSION_HYBRID":6,"F_OK":0,"R_OK":4,"W_OK":2,"X_OK":1,"UV_UDP_REUSEADDR":4}\')}},e={};function r(n){var i=e[n];if(void 0!==i)return i.exports;var o=e[n]={exports:{}};return t[n].call(o.exports,o,o.exports,r),o.exports}return r.g=function(){if("object"==typeof globalThis)return globalThis;try{return this||new Function("return this")()}catch(t){if("object"==typeof window)return window}}(),r(7033)})()));'},990:e=>{e.exports='(function webpackUniversalModuleDefinition(root,factory){if(typeof exports==="object"&&typeof module==="object"){module.exports=exports=factory()}else if(typeof define==="function"&&define.amd){define([],factory)}else{globalThis.JSEncrypt=factory()}})(this,()=>{return(()=>{var __webpack_modules__={"./lib/JSEncrypt.js":(__unused_webpack_module,__webpack_exports__,__webpack_require__)=>{"use strict";eval(\'__webpack_require__.r(__webpack_exports__);\\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\\n/* harmony export */ "JSEncrypt": () => (/* binding */ JSEncrypt)\\n/* harmony export */ });\\n/* harmony import */ var _lib_jsbn_base64__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./lib/jsbn/base64 */ "./lib/lib/jsbn/base64.js");\\n/* harmony import */ var _JSEncryptRSAKey__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./JSEncryptRSAKey */ "./lib/JSEncryptRSAKey.js");\\n/* provided dependency */ var process = __webpack_require__(/*! process/browser */ "./node_modules/process/browser.js");\\nvar _a;\\n\\n\\nvar version = typeof process !== \\\'undefined\\\'\\n ? (_a = process.env) === null || _a === void 0 ? void 0 : "3.3.2"\\n : undefined;\\n/**\\n *\\n * @param {Object} [options = {}] - An object to customize JSEncrypt behaviour\\n * possible parameters are:\\n * - default_key_size {number} default: 1024 the key size in bit\\n * - default_public_exponent {string} default: \\\'010001\\\' the hexadecimal representation of the public exponent\\n * - log {boolean} default: false whether log warn/error or not\\n * @constructor\\n */\\nvar JSEncrypt = /** @class */ (function () {\\n function JSEncrypt(options) {\\n if (options === void 0) { options = {}; }\\n options = options || {};\\n this.default_key_size = options.default_key_size\\n ? parseInt(options.default_key_size, 10)\\n : 1024;\\n this.default_public_exponent = options.default_public_exponent || "010001"; // 65537 default openssl public exponent for rsa key type\\n this.log = options.log || false;\\n // The private and public key.\\n this.key = null;\\n }\\n /**\\n * Method to set the rsa key parameter (one method is enough to set both the public\\n * and the private key, since the private key contains the public key paramenters)\\n * Log a warning if logs are enabled\\n * @param {Object|string} key the pem encoded string or an object (with or without header/footer)\\n * @public\\n */\\n JSEncrypt.prototype.setKey = function (key) {\\n if (this.log && this.key) {\\n console.warn("A key was already set, overriding existing.");\\n }\\n this.key = new _JSEncryptRSAKey__WEBPACK_IMPORTED_MODULE_1__.JSEncryptRSAKey(key);\\n };\\n /**\\n * Proxy method for setKey, for api compatibility\\n * @see setKey\\n * @public\\n */\\n JSEncrypt.prototype.setPrivateKey = function (privkey) {\\n // Create the key.\\n this.setKey(privkey);\\n };\\n /**\\n * Proxy method for setKey, for api compatibility\\n * @see setKey\\n * @public\\n */\\n JSEncrypt.prototype.setPublicKey = function (pubkey) {\\n // Sets the public key.\\n this.setKey(pubkey);\\n };\\n /**\\n * Proxy method for RSAKey object\\\'s decrypt, decrypt the string using the private\\n * components of the rsa key object. Note that if the object was not set will be created\\n * on the fly (by the getKey method) using the parameters passed in the JSEncrypt constructor\\n * @param {string} str base64 encoded crypted string to decrypt\\n * @return {string} the decrypted string\\n * @public\\n */\\n JSEncrypt.prototype.decrypt = function (str) {\\n // Return the decrypted string.\\n try {\\n return this.getKey().decrypt((0,_lib_jsbn_base64__WEBPACK_IMPORTED_MODULE_0__.b64tohex)(str));\\n }\\n catch (ex) {\\n return false;\\n }\\n };\\n /**\\n * Proxy method for RSAKey object\\\'s encrypt, encrypt the string using the public\\n * components of the rsa key object. Note that if the object was not set will be created\\n * on the fly (by the getKey method) using the parameters passed in the JSEncrypt constructor\\n * @param {string} str the string to encrypt\\n * @return {string} the encrypted string encoded in base64\\n * @public\\n */\\n JSEncrypt.prototype.encrypt = function (str) {\\n // Return the encrypted string.\\n try {\\n return (0,_lib_jsbn_base64__WEBPACK_IMPORTED_MODULE_0__.hex2b64)(this.getKey().encrypt(str));\\n }\\n catch (ex) {\\n return false;\\n }\\n };\\n /**\\n * Proxy method for RSAKey object\\\'s sign.\\n * @param {string} str the string to sign\\n * @param {function} digestMethod hash method\\n * @param {string} digestName the name of the hash algorithm\\n * @return {string} the signature encoded in base64\\n * @public\\n */\\n JSEncrypt.prototype.sign = function (str, digestMethod, digestName) {\\n // return the RSA signature of \\\'str\\\' in \\\'hex\\\' format.\\n try {\\n return (0,_lib_jsbn_base64__WEBPACK_IMPORTED_MODULE_0__.hex2b64)(this.getKey().sign(str, digestMethod, digestName));\\n }\\n catch (ex) {\\n return false;\\n }\\n };\\n /**\\n * Proxy method for RSAKey object\\\'s verify.\\n * @param {string} str the string to verify\\n * @param {string} signature the signature encoded in base64 to compare the string to\\n * @param {function} digestMethod hash method\\n * @return {boolean} whether the data and signature match\\n * @public\\n */\\n JSEncrypt.prototype.verify = function (str, signature, digestMethod) {\\n // Return the decrypted \\\'digest\\\' of the signature.\\n try {\\n return this.getKey().verify(str, (0,_lib_jsbn_base64__WEBPACK_IMPORTED_MODULE_0__.b64tohex)(signature), digestMethod);\\n }\\n catch (ex) {\\n return false;\\n }\\n };\\n /**\\n * Getter for the current JSEncryptRSAKey object. If it doesn\\\'t exists a new object\\n * will be created and returned\\n * @param {callback} [cb] the callback to be called if we want the key to be generated\\n * in an async fashion\\n * @returns {JSEncryptRSAKey} the JSEncryptRSAKey object\\n * @public\\n */\\n JSEncrypt.prototype.getKey = function (cb) {\\n // Only create new if it does not exist.\\n if (!this.key) {\\n // Get a new private key.\\n this.key = new _JSEncryptRSAKey__WEBPACK_IMPORTED_MODULE_1__.JSEncryptRSAKey();\\n if (cb && {}.toString.call(cb) === "[object Function]") {\\n this.key.generateAsync(this.default_key_size, this.default_public_exponent, cb);\\n return;\\n }\\n // Generate the key.\\n this.key.generate(this.default_key_size, this.default_public_exponent);\\n }\\n return this.key;\\n };\\n /**\\n * Returns the pem encoded representation of the private key\\n * If the key doesn\\\'t exists a new key will be created\\n * @returns {string} pem encoded representation of the private key WITH header and footer\\n * @public\\n */\\n JSEncrypt.prototype.getPrivateKey = function () {\\n // Return the private representation of this key.\\n return this.getKey().getPrivateKey();\\n };\\n /**\\n * Returns the pem encoded representation of the private key\\n * If the key doesn\\\'t exists a new key will be created\\n * @returns {string} pem encoded representation of the private key WITHOUT header and footer\\n * @public\\n */\\n JSEncrypt.prototype.getPrivateKeyB64 = function () {\\n // Return the private representation of this key.\\n return this.getKey().getPrivateBaseKeyB64();\\n };\\n /**\\n * Returns the pem encoded representation of the public key\\n * If the key doesn\\\'t exists a new key will be created\\n * @returns {string} pem encoded representation of the public key WITH header and footer\\n * @public\\n */\\n JSEncrypt.prototype.getPublicKey = function () {\\n // Return the private representation of this key.\\n return this.getKey().getPublicKey();\\n };\\n /**\\n * Returns the pem encoded representation of the public key\\n * If the key doesn\\\'t exists a new key will be created\\n * @returns {string} pem encoded representation of the public key WITHOUT header and footer\\n * @public\\n */\\n JSEncrypt.prototype.getPublicKeyB64 = function () {\\n // Return the private representation of this key.\\n return this.getKey().getPublicBaseKeyB64();\\n };\\nvar b64map="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/";var b64pad="=";var base64DecodeChars=new Array(-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,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,62,-1,-1,-1,63,52,53,54,55,56,57,58,59,60,61,-1,-1,-1,-1,-1,-1,-1,0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,-1,-1,-1,-1,-1,-1,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,-1,-1,-1,-1,-1);function btoa(str){var out,i,len;var c1,c2,c3;len=str.length;i=0;out="";while(i>2);out+=b64map.charAt((c1&3)<<4);out+="==";break}c2=str.charCodeAt(i++);if(i==len){out+=b64map.charAt(c1>>2);out+=b64map.charAt((c1&3)<<4|(c2&240)>>4);out+=b64map.charAt((c2&15)<<2);out+="=";break}c3=str.charCodeAt(i++);out+=b64map.charAt(c1>>2);out+=b64map.charAt((c1&3)<<4|(c2&240)>>4);out+=b64map.charAt((c2&15)<<2|(c3&192)>>6);out+=b64map.charAt(c3&63)}return out}function atob(str){var c1,c2,c3,c4;var i,len,out;len=str.length;i=0;out="";while(i>4);do{c3=str.charCodeAt(i++)&255;if(c3==61)return out;c3=base64DecodeChars[c3]}while(i>2);do{c4=str.charCodeAt(i++)&255;if(c4==61)return out;c4=base64DecodeChars[c4]}while(i>6)+b64map.charAt(c&63)}if(i+1==h.length){c=parseInt(h.substring(i,i+1),16);ret+=b64map.charAt(c<<2)}else if(i+2==h.length){c=parseInt(h.substring(i,i+2),16);ret+=b64map.charAt(c>>2)+b64map.charAt((c&3)<<4)}while((ret.length&3)>0)ret+=b64pad;return ret}function hexToBytes(hex){for(var bytes=[],c=0;c>>4).toString(16));hex.push((bytes[i]&15).toString(16))}return hex.join("")}function b64tohex(str){for(var i=0,bin=atob(str.replace(/[ \\\\r\\\\n]+$/,"")),hex=[];i>3};JSEncrypt.prototype.decryptUnicodeLong=function(string){var k=this.getKey();var maxLength=(k.n.bitLength()+7>>3)*2;try{var hexString=b64tohex(string);var decryptedString="";var rexStr=".{1,"+maxLength+"}";var rex=new RegExp(rexStr,"g");var subStrArray=hexString.match(rex);if(subStrArray){subStrArray.forEach(function(entry){decryptedString+=k.decrypt(entry)});return decryptedString}}catch(ex){console.log("加密错误:"+ex.message);return false}};JSEncrypt.prototype.encryptUnicodeLong=function(string){var k=this.getKey();var maxLength=(k.n.bitLength()+7>>3)-11;try{var subStr="",encryptedString="";var subStart=0,subEnd=0;var bitLen=0,tmpPoint=0;for(var i=0,len=string.length;imaxLength){subStr=string.substring(subStart,subEnd);encryptedString+=k.encrypt(subStr);subStart=subEnd;bitLen=bitLen-tmpPoint}else{subEnd=i;tmpPoint=bitLen}}subStr=string.substring(subStart,len);encryptedString+=k.encrypt(subStr);return hex2b64(encryptedString)}catch(ex){console.log("解密错误:"+ex.message);return false}}; JSEncrypt.version = version;\\n return JSEncrypt;\\n}());\\n\\n\\n\\n//# sourceURL=webpack://JSEncrypt/./lib/JSEncrypt.js?\')},"./lib/JSEncryptRSAKey.js":(__unused_webpack_module,__webpack_exports__,__webpack_require__)=>{"use strict";eval(\'__webpack_require__.r(__webpack_exports__);\\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\\n/* harmony export */ "JSEncryptRSAKey": () => (/* binding */ JSEncryptRSAKey)\\n/* harmony export */ });\\n/* harmony import */ var _lib_jsbn_base64__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./lib/jsbn/base64 */ "./lib/lib/jsbn/base64.js");\\n/* harmony import */ var _lib_asn1js_hex__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./lib/asn1js/hex */ "./lib/lib/asn1js/hex.js");\\n/* harmony import */ var _lib_asn1js_base64__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./lib/asn1js/base64 */ "./lib/lib/asn1js/base64.js");\\n/* harmony import */ var _lib_asn1js_asn1__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./lib/asn1js/asn1 */ "./lib/lib/asn1js/asn1.js");\\n/* harmony import */ var _lib_jsbn_rsa__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./lib/jsbn/rsa */ "./lib/lib/jsbn/rsa.js");\\n/* harmony import */ var _lib_jsbn_jsbn__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./lib/jsbn/jsbn */ "./lib/lib/jsbn/jsbn.js");\\n/* harmony import */ var _lib_jsrsasign_asn1_1_0__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./lib/jsrsasign/asn1-1.0 */ "./lib/lib/jsrsasign/asn1-1.0.js");\\nvar __extends = (undefined && undefined.__extends) || (function () {\\n var extendStatics = function (d, b) {\\n extendStatics = Object.setPrototypeOf ||\\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\\n function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };\\n return extendStatics(d, b);\\n };\\n return function (d, b) {\\n if (typeof b !== "function" && b !== null)\\n throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");\\n extendStatics(d, b);\\n function __() { this.constructor = d; }\\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\\n };\\n})();\\n\\n\\n\\n\\n\\n\\n\\n/**\\n * Create a new JSEncryptRSAKey that extends Tom Wu\\\'s RSA key object.\\n * This object is just a decorator for parsing the key parameter\\n * @param {string|Object} key - The key in string format, or an object containing\\n * the parameters needed to build a RSAKey object.\\n * @constructor\\n */\\nvar JSEncryptRSAKey = /** @class */ (function (_super) {\\n __extends(JSEncryptRSAKey, _super);\\n function JSEncryptRSAKey(key) {\\n var _this = _super.call(this) || this;\\n // Call the super constructor.\\n // RSAKey.call(this);\\n // If a key key was provided.\\n if (key) {\\n // If this is a string...\\n if (typeof key === "string") {\\n _this.parseKey(key);\\n }\\n else if (JSEncryptRSAKey.hasPrivateKeyProperty(key) ||\\n JSEncryptRSAKey.hasPublicKeyProperty(key)) {\\n // Set the values for the key.\\n _this.parsePropertiesFrom(key);\\n }\\n }\\n return _this;\\n }\\n /**\\n * Method to parse a pem encoded string containing both a public or private key.\\n * The method will translate the pem encoded string in a der encoded string and\\n * will parse private key and public key parameters. This method accepts public key\\n * in the rsaencryption pkcs #1 format (oid: 1.2.840.113549.1.1.1).\\n *\\n * @todo Check how many rsa formats use the same format of pkcs #1.\\n *\\n * The format is defined as:\\n * PublicKeyInfo ::= SEQUENCE {\\n * algorithm AlgorithmIdentifier,\\n * PublicKey BIT STRING\\n * }\\n * Where AlgorithmIdentifier is:\\n * AlgorithmIdentifier ::= SEQUENCE {\\n * algorithm OBJECT IDENTIFIER, the OID of the enc algorithm\\n * parameters ANY DEFINED BY algorithm OPTIONAL (NULL for PKCS #1)\\n * }\\n * and PublicKey is a SEQUENCE encapsulated in a BIT STRING\\n * RSAPublicKey ::= SEQUENCE {\\n * modulus INTEGER, -- n\\n * publicExponent INTEGER -- e\\n * }\\n * it\\\'s possible to examine the structure of the keys obtained from openssl using\\n * an asn.1 dumper as the one used here to parse the components: http://lapo.it/asn1js/\\n * @argument {string} pem the pem encoded string, can include the BEGIN/END header/footer\\n * @private\\n */\\n JSEncryptRSAKey.prototype.parseKey = function (pem) {\\n try {\\n var modulus = 0;\\n var public_exponent = 0;\\n var reHex = /^\\\\s*(?:[0-9A-Fa-f][0-9A-Fa-f]\\\\s*)+$/;\\n var der = reHex.test(pem) ? _lib_asn1js_hex__WEBPACK_IMPORTED_MODULE_1__.Hex.decode(pem) : _lib_asn1js_base64__WEBPACK_IMPORTED_MODULE_2__.Base64.unarmor(pem);\\n var asn1 = _lib_asn1js_asn1__WEBPACK_IMPORTED_MODULE_3__.ASN1.decode(der);\\n // Fixes a bug with OpenSSL 1.0+ private keys\\n if (asn1.sub.length === 3) {\\n asn1 = asn1.sub[2].sub[0];\\n }\\n if (asn1.sub.length === 9) {\\n // Parse the private key.\\n modulus = asn1.sub[1].getHexStringValue(); // bigint\\n this.n = (0,_lib_jsbn_jsbn__WEBPACK_IMPORTED_MODULE_5__.parseBigInt)(modulus, 16);\\n public_exponent = asn1.sub[2].getHexStringValue(); // int\\n this.e = parseInt(public_exponent, 16);\\n var private_exponent = asn1.sub[3].getHexStringValue(); // bigint\\n this.d = (0,_lib_jsbn_jsbn__WEBPACK_IMPORTED_MODULE_5__.parseBigInt)(private_exponent, 16);\\n var prime1 = asn1.sub[4].getHexStringValue(); // bigint\\n this.p = (0,_lib_jsbn_jsbn__WEBPACK_IMPORTED_MODULE_5__.parseBigInt)(prime1, 16);\\n var prime2 = asn1.sub[5].getHexStringValue(); // bigint\\n this.q = (0,_lib_jsbn_jsbn__WEBPACK_IMPORTED_MODULE_5__.parseBigInt)(prime2, 16);\\n var exponent1 = asn1.sub[6].getHexStringValue(); // bigint\\n this.dmp1 = (0,_lib_jsbn_jsbn__WEBPACK_IMPORTED_MODULE_5__.parseBigInt)(exponent1, 16);\\n var exponent2 = asn1.sub[7].getHexStringValue(); // bigint\\n this.dmq1 = (0,_lib_jsbn_jsbn__WEBPACK_IMPORTED_MODULE_5__.parseBigInt)(exponent2, 16);\\n var coefficient = asn1.sub[8].getHexStringValue(); // bigint\\n this.coeff = (0,_lib_jsbn_jsbn__WEBPACK_IMPORTED_MODULE_5__.parseBigInt)(coefficient, 16);\\n }\\n else if (asn1.sub.length === 2) {\\n if (asn1.sub[0].sub) {\\n // Parse ASN.1 SubjectPublicKeyInfo type as defined by X.509\\n var bit_string = asn1.sub[1];\\n var sequence = bit_string.sub[0];\\n modulus = sequence.sub[0].getHexStringValue();\\n this.n = (0,_lib_jsbn_jsbn__WEBPACK_IMPORTED_MODULE_5__.parseBigInt)(modulus, 16);\\n public_exponent = sequence.sub[1].getHexStringValue();\\n this.e = parseInt(public_exponent, 16);\\n }\\n else {\\n // Parse ASN.1 RSAPublicKey type as defined by PKCS #1\\n modulus = asn1.sub[0].getHexStringValue();\\n this.n = (0,_lib_jsbn_jsbn__WEBPACK_IMPORTED_MODULE_5__.parseBigInt)(modulus, 16);\\n public_exponent = asn1.sub[1].getHexStringValue();\\n this.e = parseInt(public_exponent, 16);\\n }\\n }\\n else {\\n return false;\\n }\\n return true;\\n }\\n catch (ex) {\\n return false;\\n }\\n };\\n /**\\n * Translate rsa parameters in a hex encoded string representing the rsa key.\\n *\\n * The translation follow the ASN.1 notation :\\n * RSAPrivateKey ::= SEQUENCE {\\n * version Version,\\n * modulus INTEGER, -- n\\n * publicExponent INTEGER, -- e\\n * privateExponent INTEGER, -- d\\n * prime1 INTEGER, -- p\\n * prime2 INTEGER, -- q\\n * exponent1 INTEGER, -- d mod (p1)\\n * exponent2 INTEGER, -- d mod (q-1)\\n * coefficient INTEGER, -- (inverse of q) mod p\\n * }\\n * @returns {string} DER Encoded String representing the rsa private key\\n * @private\\n */\\n JSEncryptRSAKey.prototype.getPrivateBaseKey = function () {\\n var options = {\\n array: [\\n new _lib_jsrsasign_asn1_1_0__WEBPACK_IMPORTED_MODULE_6__.KJUR.asn1.DERInteger({ int: 0 }),\\n new _lib_jsrsasign_asn1_1_0__WEBPACK_IMPORTED_MODULE_6__.KJUR.asn1.DERInteger({ bigint: this.n }),\\n new _lib_jsrsasign_asn1_1_0__WEBPACK_IMPORTED_MODULE_6__.KJUR.asn1.DERInteger({ int: this.e }),\\n new _lib_jsrsasign_asn1_1_0__WEBPACK_IMPORTED_MODULE_6__.KJUR.asn1.DERInteger({ bigint: this.d }),\\n new _lib_jsrsasign_asn1_1_0__WEBPACK_IMPORTED_MODULE_6__.KJUR.asn1.DERInteger({ bigint: this.p }),\\n new _lib_jsrsasign_asn1_1_0__WEBPACK_IMPORTED_MODULE_6__.KJUR.asn1.DERInteger({ bigint: this.q }),\\n new _lib_jsrsasign_asn1_1_0__WEBPACK_IMPORTED_MODULE_6__.KJUR.asn1.DERInteger({ bigint: this.dmp1 }),\\n new _lib_jsrsasign_asn1_1_0__WEBPACK_IMPORTED_MODULE_6__.KJUR.asn1.DERInteger({ bigint: this.dmq1 }),\\n new _lib_jsrsasign_asn1_1_0__WEBPACK_IMPORTED_MODULE_6__.KJUR.asn1.DERInteger({ bigint: this.coeff }),\\n ],\\n };\\n var seq = new _lib_jsrsasign_asn1_1_0__WEBPACK_IMPORTED_MODULE_6__.KJUR.asn1.DERSequence(options);\\n return seq.getEncodedHex();\\n };\\n /**\\n * base64 (pem) encoded version of the DER encoded representation\\n * @returns {string} pem encoded representation without header and footer\\n * @public\\n */\\n JSEncryptRSAKey.prototype.getPrivateBaseKeyB64 = function () {\\n return (0,_lib_jsbn_base64__WEBPACK_IMPORTED_MODULE_0__.hex2b64)(this.getPrivateBaseKey());\\n };\\n /**\\n * Translate rsa parameters in a hex encoded string representing the rsa public key.\\n * The representation follow the ASN.1 notation :\\n * PublicKeyInfo ::= SEQUENCE {\\n * algorithm AlgorithmIdentifier,\\n * PublicKey BIT STRING\\n * }\\n * Where AlgorithmIdentifier is:\\n * AlgorithmIdentifier ::= SEQUENCE {\\n * algorithm OBJECT IDENTIFIER, the OID of the enc algorithm\\n * parameters ANY DEFINED BY algorithm OPTIONAL (NULL for PKCS #1)\\n * }\\n * and PublicKey is a SEQUENCE encapsulated in a BIT STRING\\n * RSAPublicKey ::= SEQUENCE {\\n * modulus INTEGER, -- n\\n * publicExponent INTEGER -- e\\n * }\\n * @returns {string} DER Encoded String representing the rsa public key\\n * @private\\n */\\n JSEncryptRSAKey.prototype.getPublicBaseKey = function () {\\n var first_sequence = new _lib_jsrsasign_asn1_1_0__WEBPACK_IMPORTED_MODULE_6__.KJUR.asn1.DERSequence({\\n array: [\\n new _lib_jsrsasign_asn1_1_0__WEBPACK_IMPORTED_MODULE_6__.KJUR.asn1.DERObjectIdentifier({ oid: "1.2.840.113549.1.1.1" }),\\n new _lib_jsrsasign_asn1_1_0__WEBPACK_IMPORTED_MODULE_6__.KJUR.asn1.DERNull(),\\n ],\\n });\\n var second_sequence = new _lib_jsrsasign_asn1_1_0__WEBPACK_IMPORTED_MODULE_6__.KJUR.asn1.DERSequence({\\n array: [\\n new _lib_jsrsasign_asn1_1_0__WEBPACK_IMPORTED_MODULE_6__.KJUR.asn1.DERInteger({ bigint: this.n }),\\n new _lib_jsrsasign_asn1_1_0__WEBPACK_IMPORTED_MODULE_6__.KJUR.asn1.DERInteger({ int: this.e }),\\n ],\\n });\\n var bit_string = new _lib_jsrsasign_asn1_1_0__WEBPACK_IMPORTED_MODULE_6__.KJUR.asn1.DERBitString({\\n hex: "00" + second_sequence.getEncodedHex(),\\n });\\n var seq = new _lib_jsrsasign_asn1_1_0__WEBPACK_IMPORTED_MODULE_6__.KJUR.asn1.DERSequence({\\n array: [first_sequence, bit_string],\\n });\\n return seq.getEncodedHex();\\n };\\n /**\\n * base64 (pem) encoded version of the DER encoded representation\\n * @returns {string} pem encoded representation without header and footer\\n * @public\\n */\\n JSEncryptRSAKey.prototype.getPublicBaseKeyB64 = function () {\\n return (0,_lib_jsbn_base64__WEBPACK_IMPORTED_MODULE_0__.hex2b64)(this.getPublicBaseKey());\\n };\\n /**\\n * wrap the string in block of width chars. The default value for rsa keys is 64\\n * characters.\\n * @param {string} str the pem encoded string without header and footer\\n * @param {Number} [width=64] - the length the string has to be wrapped at\\n * @returns {string}\\n * @private\\n */\\n JSEncryptRSAKey.wordwrap = function (str, width) {\\n width = width || 64;\\n if (!str) {\\n return str;\\n }\\n var regex = "(.{1," + width + "})( +|$\\\\n?)|(.{1," + width + "})";\\n return str.match(RegExp(regex, "g")).join("\\\\n");\\n };\\n /**\\n * Retrieve the pem encoded private key\\n * @returns {string} the pem encoded private key with header/footer\\n * @public\\n */\\n JSEncryptRSAKey.prototype.getPrivateKey = function () {\\n var key = "-----BEGIN RSA PRIVATE KEY-----\\\\n";\\n key += JSEncryptRSAKey.wordwrap(this.getPrivateBaseKeyB64()) + "\\\\n";\\n key += "-----END RSA PRIVATE KEY-----";\\n return key;\\n };\\n /**\\n * Retrieve the pem encoded public key\\n * @returns {string} the pem encoded public key with header/footer\\n * @public\\n */\\n JSEncryptRSAKey.prototype.getPublicKey = function () {\\n var key = "-----BEGIN PUBLIC KEY-----\\\\n";\\n key += JSEncryptRSAKey.wordwrap(this.getPublicBaseKeyB64()) + "\\\\n";\\n key += "-----END PUBLIC KEY-----";\\n return key;\\n };\\n /**\\n * Check if the object contains the necessary parameters to populate the rsa modulus\\n * and public exponent parameters.\\n * @param {Object} [obj={}] - An object that may contain the two public key\\n * parameters\\n * @returns {boolean} true if the object contains both the modulus and the public exponent\\n * properties (n and e)\\n * @todo check for types of n and e. N should be a parseable bigInt object, E should\\n * be a parseable integer number\\n * @private\\n */\\n JSEncryptRSAKey.hasPublicKeyProperty = function (obj) {\\n obj = obj || {};\\n return obj.hasOwnProperty("n") && obj.hasOwnProperty("e");\\n };\\n /**\\n * Check if the object contains ALL the parameters of an RSA key.\\n * @param {Object} [obj={}] - An object that may contain nine rsa key\\n * parameters\\n * @returns {boolean} true if the object contains all the parameters needed\\n * @todo check for types of the parameters all the parameters but the public exponent\\n * should be parseable bigint objects, the public exponent should be a parseable integer number\\n * @private\\n */\\n JSEncryptRSAKey.hasPrivateKeyProperty = function (obj) {\\n obj = obj || {};\\n return (obj.hasOwnProperty("n") &&\\n obj.hasOwnProperty("e") &&\\n obj.hasOwnProperty("d") &&\\n obj.hasOwnProperty("p") &&\\n obj.hasOwnProperty("q") &&\\n obj.hasOwnProperty("dmp1") &&\\n obj.hasOwnProperty("dmq1") &&\\n obj.hasOwnProperty("coeff"));\\n };\\n /**\\n * Parse the properties of obj in the current rsa object. Obj should AT LEAST\\n * include the modulus and public exponent (n, e) parameters.\\n * @param {Object} obj - the object containing rsa parameters\\n * @private\\n */\\n JSEncryptRSAKey.prototype.parsePropertiesFrom = function (obj) {\\n this.n = obj.n;\\n this.e = obj.e;\\n if (obj.hasOwnProperty("d")) {\\n this.d = obj.d;\\n this.p = obj.p;\\n this.q = obj.q;\\n this.dmp1 = obj.dmp1;\\n this.dmq1 = obj.dmq1;\\n this.coeff = obj.coeff;\\n }\\n };\\n return JSEncryptRSAKey;\\n}(_lib_jsbn_rsa__WEBPACK_IMPORTED_MODULE_4__.RSAKey));\\n\\n\\n\\n//# sourceURL=webpack://JSEncrypt/./lib/JSEncryptRSAKey.js?\')},"./lib/index.js":(__unused_webpack_module,__webpack_exports__,__webpack_require__)=>{"use strict";eval(\'__webpack_require__.r(__webpack_exports__);\\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\\n/* harmony export */ "JSEncrypt": () => (/* reexport safe */ _JSEncrypt__WEBPACK_IMPORTED_MODULE_0__.JSEncrypt),\\n/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__)\\n/* harmony export */ });\\n/* harmony import */ var _JSEncrypt__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./JSEncrypt */ "./lib/JSEncrypt.js");\\n\\n\\n/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (_JSEncrypt__WEBPACK_IMPORTED_MODULE_0__.JSEncrypt);\\n\\n\\n//# sourceURL=webpack://JSEncrypt/./lib/index.js?\')},"./lib/lib/asn1js/asn1.js":(__unused_webpack_module,__webpack_exports__,__webpack_require__)=>{"use strict";eval(\'__webpack_require__.r(__webpack_exports__);\\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\\n/* harmony export */ "ASN1": () => (/* binding */ ASN1),\\n/* harmony export */ "ASN1Tag": () => (/* binding */ ASN1Tag),\\n/* harmony export */ "Stream": () => (/* binding */ Stream)\\n/* harmony export */ });\\n/* harmony import */ var _int10__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./int10 */ "./lib/lib/asn1js/int10.js");\\n// ASN.1 JavaScript decoder\\n// Copyright (c) 2008-2014 Lapo Luchini \\n// Permission to use, copy, modify, and/or distribute this software for any\\n// purpose with or without fee is hereby granted, provided that the above\\n// copyright notice and this permission notice appear in all copies.\\n//\\n// THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES\\n// WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF\\n// MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR\\n// ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES\\n// WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN\\n// ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF\\n// OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.\\n/*jshint browser: true, strict: true, immed: true, latedef: true, undef: true, regexdash: false */\\n/*global oids */\\n\\nvar ellipsis = "\\\\u2026";\\nvar reTimeS = /^(\\\\d\\\\d)(0[1-9]|1[0-2])(0[1-9]|[12]\\\\d|3[01])([01]\\\\d|2[0-3])(?:([0-5]\\\\d)(?:([0-5]\\\\d)(?:[.,](\\\\d{1,3}))?)?)?(Z|[-+](?:[0]\\\\d|1[0-2])([0-5]\\\\d)?)?$/;\\nvar reTimeL = /^(\\\\d\\\\d\\\\d\\\\d)(0[1-9]|1[0-2])(0[1-9]|[12]\\\\d|3[01])([01]\\\\d|2[0-3])(?:([0-5]\\\\d)(?:([0-5]\\\\d)(?:[.,](\\\\d{1,3}))?)?)?(Z|[-+](?:[0]\\\\d|1[0-2])([0-5]\\\\d)?)?$/;\\nfunction stringCut(str, len) {\\n if (str.length > len) {\\n str = str.substring(0, len) + ellipsis;\\n }\\n return str;\\n}\\nvar Stream = /** @class */ (function () {\\n function Stream(enc, pos) {\\n this.hexDigits = "0123456789ABCDEF";\\n if (enc instanceof Stream) {\\n this.enc = enc.enc;\\n this.pos = enc.pos;\\n }\\n else {\\n // enc should be an array or a binary string\\n this.enc = enc;\\n this.pos = pos;\\n }\\n }\\n Stream.prototype.get = function (pos) {\\n if (pos === undefined) {\\n pos = this.pos++;\\n }\\n if (pos >= this.enc.length) {\\n throw new Error("Requesting byte offset ".concat(pos, " on a stream of length ").concat(this.enc.length));\\n }\\n return ("string" === typeof this.enc) ? this.enc.charCodeAt(pos) : this.enc[pos];\\n };\\n Stream.prototype.hexByte = function (b) {\\n return this.hexDigits.charAt((b >> 4) & 0xF) + this.hexDigits.charAt(b & 0xF);\\n };\\n Stream.prototype.hexDump = function (start, end, raw) {\\n var s = "";\\n for (var i = start; i < end; ++i) {\\n s += this.hexByte(this.get(i));\\n if (raw !== true) {\\n switch (i & 0xF) {\\n case 0x7:\\n s += " ";\\n break;\\n case 0xF:\\n s += "\\\\n";\\n break;\\n default:\\n s += " ";\\n }\\n }\\n }\\n return s;\\n };\\n Stream.prototype.isASCII = function (start, end) {\\n for (var i = start; i < end; ++i) {\\n var c = this.get(i);\\n if (c < 32 || c > 176) {\\n return false;\\n }\\n }\\n return true;\\n };\\n Stream.prototype.parseStringISO = function (start, end) {\\n var s = "";\\n for (var i = start; i < end; ++i) {\\n s += String.fromCharCode(this.get(i));\\n }\\n return s;\\n };\\n Stream.prototype.parseStringUTF = function (start, end) {\\n var s = "";\\n for (var i = start; i < end;) {\\n var c = this.get(i++);\\n if (c < 128) {\\n s += String.fromCharCode(c);\\n }\\n else if ((c > 191) && (c < 224)) {\\n s += String.fromCharCode(((c & 0x1F) << 6) | (this.get(i++) & 0x3F));\\n }\\n else {\\n s += String.fromCharCode(((c & 0x0F) << 12) | ((this.get(i++) & 0x3F) << 6) | (this.get(i++) & 0x3F));\\n }\\n }\\n return s;\\n };\\n Stream.prototype.parseStringBMP = function (start, end) {\\n var str = "";\\n var hi;\\n var lo;\\n for (var i = start; i < end;) {\\n hi = this.get(i++);\\n lo = this.get(i++);\\n str += String.fromCharCode((hi << 8) | lo);\\n }\\n return str;\\n };\\n Stream.prototype.parseTime = function (start, end, shortYear) {\\n var s = this.parseStringISO(start, end);\\n var m = (shortYear ? reTimeS : reTimeL).exec(s);\\n if (!m) {\\n return "Unrecognized time: " + s;\\n }\\n if (shortYear) {\\n // to avoid querying the timer, use the fixed range [1970, 2069]\\n // it will conform with ITU X.400 [-10, +40] sliding window until 2030\\n m[1] = +m[1];\\n m[1] += (+m[1] < 70) ? 2000 : 1900;\\n }\\n s = m[1] + "-" + m[2] + "-" + m[3] + " " + m[4];\\n if (m[5]) {\\n s += ":" + m[5];\\n if (m[6]) {\\n s += ":" + m[6];\\n if (m[7]) {\\n s += "." + m[7];\\n }\\n }\\n }\\n if (m[8]) {\\n s += " UTC";\\n if (m[8] != "Z") {\\n s += m[8];\\n if (m[9]) {\\n s += ":" + m[9];\\n }\\n }\\n }\\n return s;\\n };\\n Stream.prototype.parseInteger = function (start, end) {\\n var v = this.get(start);\\n var neg = (v > 127);\\n var pad = neg ? 255 : 0;\\n var len;\\n var s = "";\\n // skip unuseful bits (not allowed in DER)\\n while (v == pad && ++start < end) {\\n v = this.get(start);\\n }\\n len = end - start;\\n if (len === 0) {\\n return neg ? -1 : 0;\\n }\\n // show bit length of huge integers\\n if (len > 4) {\\n s = v;\\n len <<= 3;\\n while (((+s ^ pad) & 0x80) == 0) {\\n s = +s << 1;\\n --len;\\n }\\n s = "(" + len + " bit)\\\\n";\\n }\\n // decode the integer\\n if (neg) {\\n v = v - 256;\\n }\\n var n = new _int10__WEBPACK_IMPORTED_MODULE_0__.Int10(v);\\n for (var i = start + 1; i < end; ++i) {\\n n.mulAdd(256, this.get(i));\\n }\\n return s + n.toString();\\n };\\n Stream.prototype.parseBitString = function (start, end, maxLength) {\\n var unusedBit = this.get(start);\\n var lenBit = ((end - start - 1) << 3) - unusedBit;\\n var intro = "(" + lenBit + " bit)\\\\n";\\n var s = "";\\n for (var i = start + 1; i < end; ++i) {\\n var b = this.get(i);\\n var skip = (i == end - 1) ? unusedBit : 0;\\n for (var j = 7; j >= skip; --j) {\\n s += (b >> j) & 1 ? "1" : "0";\\n }\\n if (s.length > maxLength) {\\n return intro + stringCut(s, maxLength);\\n }\\n }\\n return intro + s;\\n };\\n Stream.prototype.parseOctetString = function (start, end, maxLength) {\\n if (this.isASCII(start, end)) {\\n return stringCut(this.parseStringISO(start, end), maxLength);\\n }\\n var len = end - start;\\n var s = "(" + len + " byte)\\\\n";\\n maxLength /= 2; // we work in bytes\\n if (len > maxLength) {\\n end = start + maxLength;\\n }\\n for (var i = start; i < end; ++i) {\\n s += this.hexByte(this.get(i));\\n }\\n if (len > maxLength) {\\n s += ellipsis;\\n }\\n return s;\\n };\\n Stream.prototype.parseOID = function (start, end, maxLength) {\\n var s = "";\\n var n = new _int10__WEBPACK_IMPORTED_MODULE_0__.Int10();\\n var bits = 0;\\n for (var i = start; i < end; ++i) {\\n var v = this.get(i);\\n n.mulAdd(128, v & 0x7F);\\n bits += 7;\\n if (!(v & 0x80)) { // finished\\n if (s === "") {\\n n = n.simplify();\\n if (n instanceof _int10__WEBPACK_IMPORTED_MODULE_0__.Int10) {\\n n.sub(80);\\n s = "2." + n.toString();\\n }\\n else {\\n var m = n < 80 ? n < 40 ? 0 : 1 : 2;\\n s = m + "." + (n - m * 40);\\n }\\n }\\n else {\\n s += "." + n.toString();\\n }\\n if (s.length > maxLength) {\\n return stringCut(s, maxLength);\\n }\\n n = new _int10__WEBPACK_IMPORTED_MODULE_0__.Int10();\\n bits = 0;\\n }\\n }\\n if (bits > 0) {\\n s += ".incomplete";\\n }\\n return s;\\n };\\n return Stream;\\n}());\\n\\nvar ASN1 = /** @class */ (function () {\\n function ASN1(stream, header, length, tag, sub) {\\n if (!(tag instanceof ASN1Tag)) {\\n throw new Error("Invalid tag value.");\\n }\\n this.stream = stream;\\n this.header = header;\\n this.length = length;\\n this.tag = tag;\\n this.sub = sub;\\n }\\n ASN1.prototype.typeName = function () {\\n switch (this.tag.tagClass) {\\n case 0: // universal\\n switch (this.tag.tagNumber) {\\n case 0x00:\\n return "EOC";\\n case 0x01:\\n return "BOOLEAN";\\n case 0x02:\\n return "INTEGER";\\n case 0x03:\\n return "BIT_STRING";\\n case 0x04:\\n return "OCTET_STRING";\\n case 0x05:\\n return "NULL";\\n case 0x06:\\n return "OBJECT_IDENTIFIER";\\n case 0x07:\\n return "ObjectDescriptor";\\n case 0x08:\\n return "EXTERNAL";\\n case 0x09:\\n return "REAL";\\n case 0x0A:\\n return "ENUMERATED";\\n case 0x0B:\\n return "EMBEDDED_PDV";\\n case 0x0C:\\n return "UTF8String";\\n case 0x10:\\n return "SEQUENCE";\\n case 0x11:\\n return "SET";\\n case 0x12:\\n return "NumericString";\\n case 0x13:\\n return "PrintableString"; // ASCII subset\\n case 0x14:\\n return "TeletexString"; // aka T61String\\n case 0x15:\\n return "VideotexString";\\n case 0x16:\\n return "IA5String"; // ASCII\\n case 0x17:\\n return "UTCTime";\\n case 0x18:\\n return "GeneralizedTime";\\n case 0x19:\\n return "GraphicString";\\n case 0x1A:\\n return "VisibleString"; // ASCII subset\\n case 0x1B:\\n return "GeneralString";\\n case 0x1C:\\n return "UniversalString";\\n case 0x1E:\\n return "BMPString";\\n }\\n return "Universal_" + this.tag.tagNumber.toString();\\n case 1:\\n return "Application_" + this.tag.tagNumber.toString();\\n case 2:\\n return "[" + this.tag.tagNumber.toString() + "]"; // Context\\n case 3:\\n return "Private_" + this.tag.tagNumber.toString();\\n }\\n };\\n ASN1.prototype.content = function (maxLength) {\\n if (this.tag === undefined) {\\n return null;\\n }\\n if (maxLength === undefined) {\\n maxLength = Infinity;\\n }\\n var content = this.posContent();\\n var len = Math.abs(this.length);\\n if (!this.tag.isUniversal()) {\\n if (this.sub !== null) {\\n return "(" + this.sub.length + " elem)";\\n }\\n return this.stream.parseOctetString(content, content + len, maxLength);\\n }\\n switch (this.tag.tagNumber) {\\n case 0x01: // BOOLEAN\\n return (this.stream.get(content) === 0) ? "false" : "true";\\n case 0x02: // INTEGER\\n return this.stream.parseInteger(content, content + len);\\n case 0x03: // BIT_STRING\\n return this.sub ? "(" + this.sub.length + " elem)" :\\n this.stream.parseBitString(content, content + len, maxLength);\\n case 0x04: // OCTET_STRING\\n return this.sub ? "(" + this.sub.length + " elem)" :\\n this.stream.parseOctetString(content, content + len, maxLength);\\n // case 0x05: // NULL\\n case 0x06: // OBJECT_IDENTIFIER\\n return this.stream.parseOID(content, content + len, maxLength);\\n // case 0x07: // ObjectDescriptor\\n // case 0x08: // EXTERNAL\\n // case 0x09: // REAL\\n // case 0x0A: // ENUMERATED\\n // case 0x0B: // EMBEDDED_PDV\\n case 0x10: // SEQUENCE\\n case 0x11: // SET\\n if (this.sub !== null) {\\n return "(" + this.sub.length + " elem)";\\n }\\n else {\\n return "(no elem)";\\n }\\n case 0x0C: // UTF8String\\n return stringCut(this.stream.parseStringUTF(content, content + len), maxLength);\\n case 0x12: // NumericString\\n case 0x13: // PrintableString\\n case 0x14: // TeletexString\\n case 0x15: // VideotexString\\n case 0x16: // IA5String\\n // case 0x19: // GraphicString\\n case 0x1A: // VisibleString\\n // case 0x1B: // GeneralString\\n // case 0x1C: // UniversalString\\n return stringCut(this.stream.parseStringISO(content, content + len), maxLength);\\n case 0x1E: // BMPString\\n return stringCut(this.stream.parseStringBMP(content, content + len), maxLength);\\n case 0x17: // UTCTime\\n case 0x18: // GeneralizedTime\\n return this.stream.parseTime(content, content + len, (this.tag.tagNumber == 0x17));\\n }\\n return null;\\n };\\n ASN1.prototype.toString = function () {\\n return this.typeName() + "@" + this.stream.pos + "[header:" + this.header + ",length:" + this.length + ",sub:" + ((this.sub === null) ? "null" : this.sub.length) + "]";\\n };\\n ASN1.prototype.toPrettyString = function (indent) {\\n if (indent === undefined) {\\n indent = "";\\n }\\n var s = indent + this.typeName() + " @" + this.stream.pos;\\n if (this.length >= 0) {\\n s += "+";\\n }\\n s += this.length;\\n if (this.tag.tagConstructed) {\\n s += " (constructed)";\\n }\\n else if ((this.tag.isUniversal() && ((this.tag.tagNumber == 0x03) || (this.tag.tagNumber == 0x04))) && (this.sub !== null)) {\\n s += " (encapsulates)";\\n }\\n s += "\\\\n";\\n if (this.sub !== null) {\\n indent += " ";\\n for (var i = 0, max = this.sub.length; i < max; ++i) {\\n s += this.sub[i].toPrettyString(indent);\\n }\\n }\\n return s;\\n };\\n ASN1.prototype.posStart = function () {\\n return this.stream.pos;\\n };\\n ASN1.prototype.posContent = function () {\\n return this.stream.pos + this.header;\\n };\\n ASN1.prototype.posEnd = function () {\\n return this.stream.pos + this.header + Math.abs(this.length);\\n };\\n ASN1.prototype.toHexString = function () {\\n return this.stream.hexDump(this.posStart(), this.posEnd(), true);\\n };\\n ASN1.decodeLength = function (stream) {\\n var buf = stream.get();\\n var len = buf & 0x7F;\\n if (len == buf) {\\n return len;\\n }\\n // no reason to use Int10, as it would be a huge buffer anyways\\n if (len > 6) {\\n throw new Error("Length over 48 bits not supported at position " + (stream.pos - 1));\\n }\\n if (len === 0) {\\n return null;\\n } // undefined\\n buf = 0;\\n for (var i = 0; i < len; ++i) {\\n buf = (buf * 256) + stream.get();\\n }\\n return buf;\\n };\\n /**\\n * Retrieve the hexadecimal value (as a string) of the current ASN.1 element\\n * @returns {string}\\n * @public\\n */\\n ASN1.prototype.getHexStringValue = function () {\\n var hexString = this.toHexString();\\n var offset = this.header * 2;\\n var length = this.length * 2;\\n return hexString.substr(offset, length);\\n };\\n ASN1.decode = function (str) {\\n var stream;\\n if (!(str instanceof Stream)) {\\n stream = new Stream(str, 0);\\n }\\n else {\\n stream = str;\\n }\\n var streamStart = new Stream(stream);\\n var tag = new ASN1Tag(stream);\\n var len = ASN1.decodeLength(stream);\\n var start = stream.pos;\\n var header = start - streamStart.pos;\\n var sub = null;\\n var getSub = function () {\\n var ret = [];\\n if (len !== null) {\\n // definite length\\n var end = start + len;\\n while (stream.pos < end) {\\n ret[ret.length] = ASN1.decode(stream);\\n }\\n if (stream.pos != end) {\\n throw new Error("Content size is not correct for container starting at offset " + start);\\n }\\n }\\n else {\\n // undefined length\\n try {\\n for (;;) {\\n var s = ASN1.decode(stream);\\n if (s.tag.isEOC()) {\\n break;\\n }\\n ret[ret.length] = s;\\n }\\n len = start - stream.pos; // undefined lengths are represented as negative values\\n }\\n catch (e) {\\n throw new Error("Exception while decoding undefined length content: " + e);\\n }\\n }\\n return ret;\\n };\\n if (tag.tagConstructed) {\\n // must have valid content\\n sub = getSub();\\n }\\n else if (tag.isUniversal() && ((tag.tagNumber == 0x03) || (tag.tagNumber == 0x04))) {\\n // sometimes BitString and OctetString are used to encapsulate ASN.1\\n try {\\n if (tag.tagNumber == 0x03) {\\n if (stream.get() != 0) {\\n throw new Error("BIT STRINGs with unused bits cannot encapsulate.");\\n }\\n }\\n sub = getSub();\\n for (var i = 0; i < sub.length; ++i) {\\n if (sub[i].tag.isEOC()) {\\n throw new Error("EOC is not supposed to be actual content.");\\n }\\n }\\n }\\n catch (e) {\\n // but silently ignore when they don\\\'t\\n sub = null;\\n }\\n }\\n if (sub === null) {\\n if (len === null) {\\n throw new Error("We can\\\'t skip over an invalid tag with undefined length at offset " + start);\\n }\\n stream.pos = start + Math.abs(len);\\n }\\n return new ASN1(streamStart, header, len, tag, sub);\\n };\\n return ASN1;\\n}());\\n\\nvar ASN1Tag = /** @class */ (function () {\\n function ASN1Tag(stream) {\\n var buf = stream.get();\\n this.tagClass = buf >> 6;\\n this.tagConstructed = ((buf & 0x20) !== 0);\\n this.tagNumber = buf & 0x1F;\\n if (this.tagNumber == 0x1F) { // long tag\\n var n = new _int10__WEBPACK_IMPORTED_MODULE_0__.Int10();\\n do {\\n buf = stream.get();\\n n.mulAdd(128, buf & 0x7F);\\n } while (buf & 0x80);\\n this.tagNumber = n.simplify();\\n }\\n }\\n ASN1Tag.prototype.isUniversal = function () {\\n return this.tagClass === 0x00;\\n };\\n ASN1Tag.prototype.isEOC = function () {\\n return this.tagClass === 0x00 && this.tagNumber === 0x00;\\n };\\n return ASN1Tag;\\n}());\\n\\n\\n\\n//# sourceURL=webpack://JSEncrypt/./lib/lib/asn1js/asn1.js?\')},"./lib/lib/asn1js/base64.js":(__unused_webpack_module,__webpack_exports__,__webpack_require__)=>{"use strict";eval(\'__webpack_require__.r(__webpack_exports__);\\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\\n/* harmony export */ "Base64": () => (/* binding */ Base64)\\n/* harmony export */ });\\n// Base64 JavaScript decoder\\n// Copyright (c) 2008-2013 Lapo Luchini \\n// Permission to use, copy, modify, and/or distribute this software for any\\n// purpose with or without fee is hereby granted, provided that the above\\n// copyright notice and this permission notice appear in all copies.\\n//\\n// THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES\\n// WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF\\n// MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR\\n// ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES\\n// WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN\\n// ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF\\n// OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.\\n/*jshint browser: true, strict: true, immed: true, latedef: true, undef: true, regexdash: false */\\nvar decoder;\\nvar Base64 = {\\n decode: function (a) {\\n var i;\\n if (decoder === undefined) {\\n var b64 = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/";\\n var ignore = "= \\\\f\\\\n\\\\r\\\\t\\\\u00A0\\\\u2028\\\\u2029";\\n decoder = Object.create(null);\\n for (i = 0; i < 64; ++i) {\\n decoder[b64.charAt(i)] = i;\\n }\\n decoder[\\\'-\\\'] = 62; //+\\n decoder[\\\'_\\\'] = 63; //-\\n for (i = 0; i < ignore.length; ++i) {\\n decoder[ignore.charAt(i)] = -1;\\n }\\n }\\n var out = [];\\n var bits = 0;\\n var char_count = 0;\\n for (i = 0; i < a.length; ++i) {\\n var c = a.charAt(i);\\n if (c == "=") {\\n break;\\n }\\n c = decoder[c];\\n if (c == -1) {\\n continue;\\n }\\n if (c === undefined) {\\n throw new Error("Illegal character at offset " + i);\\n }\\n bits |= c;\\n if (++char_count >= 4) {\\n out[out.length] = (bits >> 16);\\n out[out.length] = (bits >> 8) & 0xFF;\\n out[out.length] = bits & 0xFF;\\n bits = 0;\\n char_count = 0;\\n }\\n else {\\n bits <<= 6;\\n }\\n }\\n switch (char_count) {\\n case 1:\\n throw new Error("Base64 encoding incomplete: at least 2 bits missing");\\n case 2:\\n out[out.length] = (bits >> 10);\\n break;\\n case 3:\\n out[out.length] = (bits >> 16);\\n out[out.length] = (bits >> 8) & 0xFF;\\n break;\\n }\\n return out;\\n },\\n re: /-----BEGIN [^-]+-----([A-Za-z0-9+\\\\/=\\\\s]+)-----END [^-]+-----|begin-base64[^\\\\n]+\\\\n([A-Za-z0-9+\\\\/=\\\\s]+)====/,\\n unarmor: function (a) {\\n var m = Base64.re.exec(a);\\n if (m) {\\n if (m[1]) {\\n a = m[1];\\n }\\n else if (m[2]) {\\n a = m[2];\\n }\\n else {\\n throw new Error("RegExp out of sync");\\n }\\n }\\n return Base64.decode(a);\\n }\\n};\\n\\n\\n//# sourceURL=webpack://JSEncrypt/./lib/lib/asn1js/base64.js?\')},"./lib/lib/asn1js/hex.js":(__unused_webpack_module,__webpack_exports__,__webpack_require__)=>{"use strict";eval(\'__webpack_require__.r(__webpack_exports__);\\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\\n/* harmony export */ "Hex": () => (/* binding */ Hex)\\n/* harmony export */ });\\n// Hex JavaScript decoder\\n// Copyright (c) 2008-2013 Lapo Luchini \\n// Permission to use, copy, modify, and/or distribute this software for any\\n// purpose with or without fee is hereby granted, provided that the above\\n// copyright notice and this permission notice appear in all copies.\\n//\\n// THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES\\n// WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF\\n// MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR\\n// ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES\\n// WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN\\n// ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF\\n// OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.\\n/*jshint browser: true, strict: true, immed: true, latedef: true, undef: true, regexdash: false */\\nvar decoder;\\nvar Hex = {\\n decode: function (a) {\\n var i;\\n if (decoder === undefined) {\\n var hex = "0123456789ABCDEF";\\n var ignore = " \\\\f\\\\n\\\\r\\\\t\\\\u00A0\\\\u2028\\\\u2029";\\n decoder = {};\\n for (i = 0; i < 16; ++i) {\\n decoder[hex.charAt(i)] = i;\\n }\\n hex = hex.toLowerCase();\\n for (i = 10; i < 16; ++i) {\\n decoder[hex.charAt(i)] = i;\\n }\\n for (i = 0; i < ignore.length; ++i) {\\n decoder[ignore.charAt(i)] = -1;\\n }\\n }\\n var out = [];\\n var bits = 0;\\n var char_count = 0;\\n for (i = 0; i < a.length; ++i) {\\n var c = a.charAt(i);\\n if (c == "=") {\\n break;\\n }\\n c = decoder[c];\\n if (c == -1) {\\n continue;\\n }\\n if (c === undefined) {\\n throw new Error("Illegal character at offset " + i);\\n }\\n bits |= c;\\n if (++char_count >= 2) {\\n out[out.length] = bits;\\n bits = 0;\\n char_count = 0;\\n }\\n else {\\n bits <<= 4;\\n }\\n }\\n if (char_count) {\\n throw new Error("Hex encoding incomplete: 4 bits missing");\\n }\\n return out;\\n }\\n};\\n\\n\\n//# sourceURL=webpack://JSEncrypt/./lib/lib/asn1js/hex.js?\')},"./lib/lib/asn1js/int10.js":(__unused_webpack_module,__webpack_exports__,__webpack_require__)=>{"use strict";eval(\'__webpack_require__.r(__webpack_exports__);\\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\\n/* harmony export */ "Int10": () => (/* binding */ Int10)\\n/* harmony export */ });\\n// Big integer base-10 printing library\\n// Copyright (c) 2014 Lapo Luchini \\n// Permission to use, copy, modify, and/or distribute this software for any\\n// purpose with or without fee is hereby granted, provided that the above\\n// copyright notice and this permission notice appear in all copies.\\n//\\n// THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES\\n// WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF\\n// MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR\\n// ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES\\n// WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN\\n// ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF\\n// OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.\\n/*jshint browser: true, strict: true, immed: true, latedef: true, undef: true, regexdash: false */\\nvar max = 10000000000000; // biggest integer that can still fit 2^53 when multiplied by 256\\nvar Int10 = /** @class */ (function () {\\n function Int10(value) {\\n this.buf = [+value || 0];\\n }\\n Int10.prototype.mulAdd = function (m, c) {\\n // assert(m <= 256)\\n var b = this.buf;\\n var l = b.length;\\n var i;\\n var t;\\n for (i = 0; i < l; ++i) {\\n t = b[i] * m + c;\\n if (t < max) {\\n c = 0;\\n }\\n else {\\n c = 0 | (t / max);\\n t -= c * max;\\n }\\n b[i] = t;\\n }\\n if (c > 0) {\\n b[i] = c;\\n }\\n };\\n Int10.prototype.sub = function (c) {\\n // assert(m <= 256)\\n var b = this.buf;\\n var l = b.length;\\n var i;\\n var t;\\n for (i = 0; i < l; ++i) {\\n t = b[i] - c;\\n if (t < 0) {\\n t += max;\\n c = 1;\\n }\\n else {\\n c = 0;\\n }\\n b[i] = t;\\n }\\n while (b[b.length - 1] === 0) {\\n b.pop();\\n }\\n };\\n Int10.prototype.toString = function (base) {\\n if ((base || 10) != 10) {\\n throw new Error("only base 10 is supported");\\n }\\n var b = this.buf;\\n var s = b[b.length - 1].toString();\\n for (var i = b.length - 2; i >= 0; --i) {\\n s += (max + b[i]).toString().substring(1);\\n }\\n return s;\\n };\\n Int10.prototype.valueOf = function () {\\n var b = this.buf;\\n var v = 0;\\n for (var i = b.length - 1; i >= 0; --i) {\\n v = v * max + b[i];\\n }\\n return v;\\n };\\n Int10.prototype.simplify = function () {\\n var b = this.buf;\\n return (b.length == 1) ? b[0] : this;\\n };\\n return Int10;\\n}());\\n\\n\\n\\n//# sourceURL=webpack://JSEncrypt/./lib/lib/asn1js/int10.js?\')},"./lib/lib/jsbn/base64.js":(__unused_webpack_module,__webpack_exports__,__webpack_require__)=>{"use strict";eval(\'__webpack_require__.r(__webpack_exports__);\\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\\n/* harmony export */ "b64toBA": () => (/* binding */ b64toBA),\\n/* harmony export */ "b64tohex": () => (/* binding */ b64tohex),\\n/* harmony export */ "hex2b64": () => (/* binding */ hex2b64)\\n/* harmony export */ });\\n/* harmony import */ var _util__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./util */ "./lib/lib/jsbn/util.js");\\n\\nvar b64map = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/";\\nvar b64pad = "=";\\nfunction hex2b64(h) {\\n var i;\\n var c;\\n var ret = "";\\n for (i = 0; i + 3 <= h.length; i += 3) {\\n c = parseInt(h.substring(i, i + 3), 16);\\n ret += b64map.charAt(c >> 6) + b64map.charAt(c & 63);\\n }\\n if (i + 1 == h.length) {\\n c = parseInt(h.substring(i, i + 1), 16);\\n ret += b64map.charAt(c << 2);\\n }\\n else if (i + 2 == h.length) {\\n c = parseInt(h.substring(i, i + 2), 16);\\n ret += b64map.charAt(c >> 2) + b64map.charAt((c & 3) << 4);\\n }\\n while ((ret.length & 3) > 0) {\\n ret += b64pad;\\n }\\n return ret;\\n}\\n// convert a base64 string to hex\\nfunction b64tohex(s) {\\n var ret = "";\\n var i;\\n var k = 0; // b64 state, 0-3\\n var slop = 0;\\n for (i = 0; i < s.length; ++i) {\\n if (s.charAt(i) == b64pad) {\\n break;\\n }\\n var v = b64map.indexOf(s.charAt(i));\\n if (v < 0) {\\n continue;\\n }\\n if (k == 0) {\\n ret += (0,_util__WEBPACK_IMPORTED_MODULE_0__.int2char)(v >> 2);\\n slop = v & 3;\\n k = 1;\\n }\\n else if (k == 1) {\\n ret += (0,_util__WEBPACK_IMPORTED_MODULE_0__.int2char)((slop << 2) | (v >> 4));\\n slop = v & 0xf;\\n k = 2;\\n }\\n else if (k == 2) {\\n ret += (0,_util__WEBPACK_IMPORTED_MODULE_0__.int2char)(slop);\\n ret += (0,_util__WEBPACK_IMPORTED_MODULE_0__.int2char)(v >> 2);\\n slop = v & 3;\\n k = 3;\\n }\\n else {\\n ret += (0,_util__WEBPACK_IMPORTED_MODULE_0__.int2char)((slop << 2) | (v >> 4));\\n ret += (0,_util__WEBPACK_IMPORTED_MODULE_0__.int2char)(v & 0xf);\\n k = 0;\\n }\\n }\\n if (k == 1) {\\n ret += (0,_util__WEBPACK_IMPORTED_MODULE_0__.int2char)(slop << 2);\\n }\\n return ret;\\n}\\n// convert a base64 string to a byte/number array\\nfunction b64toBA(s) {\\n // piggyback on b64tohex for now, optimize later\\n var h = b64tohex(s);\\n var i;\\n var a = [];\\n for (i = 0; 2 * i < h.length; ++i) {\\n a[i] = parseInt(h.substring(2 * i, 2 * i + 2), 16);\\n }\\n return a;\\n}\\n\\n\\n//# sourceURL=webpack://JSEncrypt/./lib/lib/jsbn/base64.js?\')},"./lib/lib/jsbn/jsbn.js":(__unused_webpack_module,__webpack_exports__,__webpack_require__)=>{"use strict";eval(\'__webpack_require__.r(__webpack_exports__);\\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\\n/* harmony export */ "BigInteger": () => (/* binding */ BigInteger),\\n/* harmony export */ "intAt": () => (/* binding */ intAt),\\n/* harmony export */ "nbi": () => (/* binding */ nbi),\\n/* harmony export */ "nbits": () => (/* binding */ nbits),\\n/* harmony export */ "nbv": () => (/* binding */ nbv),\\n/* harmony export */ "parseBigInt": () => (/* binding */ parseBigInt)\\n/* harmony export */ });\\n/* harmony import */ var _util__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./util */ "./lib/lib/jsbn/util.js");\\n// Copyright (c) 2005 Tom Wu\\n// All Rights Reserved.\\n// See "LICENSE" for details.\\n// Basic JavaScript BN library - subset useful for RSA encryption.\\n\\n// Bits per digit\\nvar dbits;\\n// JavaScript engine analysis\\nvar canary = 0xdeadbeefcafe;\\nvar j_lm = ((canary & 0xffffff) == 0xefcafe);\\n//#region\\nvar lowprimes = [2, 3, 5, 7, 11, 13, 17, 19, 23, 29, 31, 37, 41, 43, 47, 53, 59, 61, 67, 71, 73, 79, 83, 89, 97, 101, 103, 107, 109, 113, 127, 131, 137, 139, 149, 151, 157, 163, 167, 173, 179, 181, 191, 193, 197, 199, 211, 223, 227, 229, 233, 239, 241, 251, 257, 263, 269, 271, 277, 281, 283, 293, 307, 311, 313, 317, 331, 337, 347, 349, 353, 359, 367, 373, 379, 383, 389, 397, 401, 409, 419, 421, 431, 433, 439, 443, 449, 457, 461, 463, 467, 479, 487, 491, 499, 503, 509, 521, 523, 541, 547, 557, 563, 569, 571, 577, 587, 593, 599, 601, 607, 613, 617, 619, 631, 641, 643, 647, 653, 659, 661, 673, 677, 683, 691, 701, 709, 719, 727, 733, 739, 743, 751, 757, 761, 769, 773, 787, 797, 809, 811, 821, 823, 827, 829, 839, 853, 857, 859, 863, 877, 881, 883, 887, 907, 911, 919, 929, 937, 941, 947, 953, 967, 971, 977, 983, 991, 997];\\nvar lplim = (1 << 26) / lowprimes[lowprimes.length - 1];\\n//#endregion\\n// (public) Constructor\\nvar BigInteger = /** @class */ (function () {\\n function BigInteger(a, b, c) {\\n if (a != null) {\\n if ("number" == typeof a) {\\n this.fromNumber(a, b, c);\\n }\\n else if (b == null && "string" != typeof a) {\\n this.fromString(a, 256);\\n }\\n else {\\n this.fromString(a, b);\\n }\\n }\\n }\\n //#region PUBLIC\\n // BigInteger.prototype.toString = bnToString;\\n // (public) return string representation in given radix\\n BigInteger.prototype.toString = function (b) {\\n if (this.s < 0) {\\n return "-" + this.negate().toString(b);\\n }\\n var k;\\n if (b == 16) {\\n k = 4;\\n }\\n else if (b == 8) {\\n k = 3;\\n }\\n else if (b == 2) {\\n k = 1;\\n }\\n else if (b == 32) {\\n k = 5;\\n }\\n else if (b == 4) {\\n k = 2;\\n }\\n else {\\n return this.toRadix(b);\\n }\\n var km = (1 << k) - 1;\\n var d;\\n var m = false;\\n var r = "";\\n var i = this.t;\\n var p = this.DB - (i * this.DB) % k;\\n if (i-- > 0) {\\n if (p < this.DB && (d = this[i] >> p) > 0) {\\n m = true;\\n r = (0,_util__WEBPACK_IMPORTED_MODULE_0__.int2char)(d);\\n }\\n while (i >= 0) {\\n if (p < k) {\\n d = (this[i] & ((1 << p) - 1)) << (k - p);\\n d |= this[--i] >> (p += this.DB - k);\\n }\\n else {\\n d = (this[i] >> (p -= k)) & km;\\n if (p <= 0) {\\n p += this.DB;\\n --i;\\n }\\n }\\n if (d > 0) {\\n m = true;\\n }\\n if (m) {\\n r += (0,_util__WEBPACK_IMPORTED_MODULE_0__.int2char)(d);\\n }\\n }\\n }\\n return m ? r : "0";\\n };\\n // BigInteger.prototype.negate = bnNegate;\\n // (public) -this\\n BigInteger.prototype.negate = function () {\\n var r = nbi();\\n BigInteger.ZERO.subTo(this, r);\\n return r;\\n };\\n // BigInteger.prototype.abs = bnAbs;\\n // (public) |this|\\n BigInteger.prototype.abs = function () {\\n return (this.s < 0) ? this.negate() : this;\\n };\\n // BigInteger.prototype.compareTo = bnCompareTo;\\n // (public) return + if this > a, - if this < a, 0 if equal\\n BigInteger.prototype.compareTo = function (a) {\\n var r = this.s - a.s;\\n if (r != 0) {\\n return r;\\n }\\n var i = this.t;\\n r = i - a.t;\\n if (r != 0) {\\n return (this.s < 0) ? -r : r;\\n }\\n while (--i >= 0) {\\n if ((r = this[i] - a[i]) != 0) {\\n return r;\\n }\\n }\\n return 0;\\n };\\n // BigInteger.prototype.bitLength = bnBitLength;\\n // (public) return the number of bits in "this"\\n BigInteger.prototype.bitLength = function () {\\n if (this.t <= 0) {\\n return 0;\\n }\\n return this.DB * (this.t - 1) + nbits(this[this.t - 1] ^ (this.s & this.DM));\\n };\\n // BigInteger.prototype.mod = bnMod;\\n // (public) this mod a\\n BigInteger.prototype.mod = function (a) {\\n var r = nbi();\\n this.abs().divRemTo(a, null, r);\\n if (this.s < 0 && r.compareTo(BigInteger.ZERO) > 0) {\\n a.subTo(r, r);\\n }\\n return r;\\n };\\n // BigInteger.prototype.modPowInt = bnModPowInt;\\n // (public) this^e % m, 0 <= e < 2^32\\n BigInteger.prototype.modPowInt = function (e, m) {\\n var z;\\n if (e < 256 || m.isEven()) {\\n z = new Classic(m);\\n }\\n else {\\n z = new Montgomery(m);\\n }\\n return this.exp(e, z);\\n };\\n // BigInteger.prototype.clone = bnClone;\\n // (public)\\n BigInteger.prototype.clone = function () {\\n var r = nbi();\\n this.copyTo(r);\\n return r;\\n };\\n // BigInteger.prototype.intValue = bnIntValue;\\n // (public) return value as integer\\n BigInteger.prototype.intValue = function () {\\n if (this.s < 0) {\\n if (this.t == 1) {\\n return this[0] - this.DV;\\n }\\n else if (this.t == 0) {\\n return -1;\\n }\\n }\\n else if (this.t == 1) {\\n return this[0];\\n }\\n else if (this.t == 0) {\\n return 0;\\n }\\n // assumes 16 < DB < 32\\n return ((this[1] & ((1 << (32 - this.DB)) - 1)) << this.DB) | this[0];\\n };\\n // BigInteger.prototype.byteValue = bnByteValue;\\n // (public) return value as byte\\n BigInteger.prototype.byteValue = function () {\\n return (this.t == 0) ? this.s : (this[0] << 24) >> 24;\\n };\\n // BigInteger.prototype.shortValue = bnShortValue;\\n // (public) return value as short (assumes DB>=16)\\n BigInteger.prototype.shortValue = function () {\\n return (this.t == 0) ? this.s : (this[0] << 16) >> 16;\\n };\\n // BigInteger.prototype.signum = bnSigNum;\\n // (public) 0 if this == 0, 1 if this > 0\\n BigInteger.prototype.signum = function () {\\n if (this.s < 0) {\\n return -1;\\n }\\n else if (this.t <= 0 || (this.t == 1 && this[0] <= 0)) {\\n return 0;\\n }\\n else {\\n return 1;\\n }\\n };\\n // BigInteger.prototype.toByteArray = bnToByteArray;\\n // (public) convert to bigendian byte array\\n BigInteger.prototype.toByteArray = function () {\\n var i = this.t;\\n var r = [];\\n r[0] = this.s;\\n var p = this.DB - (i * this.DB) % 8;\\n var d;\\n var k = 0;\\n if (i-- > 0) {\\n if (p < this.DB && (d = this[i] >> p) != (this.s & this.DM) >> p) {\\n r[k++] = d | (this.s << (this.DB - p));\\n }\\n while (i >= 0) {\\n if (p < 8) {\\n d = (this[i] & ((1 << p) - 1)) << (8 - p);\\n d |= this[--i] >> (p += this.DB - 8);\\n }\\n else {\\n d = (this[i] >> (p -= 8)) & 0xff;\\n if (p <= 0) {\\n p += this.DB;\\n --i;\\n }\\n }\\n if ((d & 0x80) != 0) {\\n d |= -256;\\n }\\n if (k == 0 && (this.s & 0x80) != (d & 0x80)) {\\n ++k;\\n }\\n if (k > 0 || d != this.s) {\\n r[k++] = d;\\n }\\n }\\n }\\n return r;\\n };\\n // BigInteger.prototype.equals = bnEquals;\\n BigInteger.prototype.equals = function (a) {\\n return (this.compareTo(a) == 0);\\n };\\n // BigInteger.prototype.min = bnMin;\\n BigInteger.prototype.min = function (a) {\\n return (this.compareTo(a) < 0) ? this : a;\\n };\\n // BigInteger.prototype.max = bnMax;\\n BigInteger.prototype.max = function (a) {\\n return (this.compareTo(a) > 0) ? this : a;\\n };\\n // BigInteger.prototype.and = bnAnd;\\n BigInteger.prototype.and = function (a) {\\n var r = nbi();\\n this.bitwiseTo(a, _util__WEBPACK_IMPORTED_MODULE_0__.op_and, r);\\n return r;\\n };\\n // BigInteger.prototype.or = bnOr;\\n BigInteger.prototype.or = function (a) {\\n var r = nbi();\\n this.bitwiseTo(a, _util__WEBPACK_IMPORTED_MODULE_0__.op_or, r);\\n return r;\\n };\\n // BigInteger.prototype.xor = bnXor;\\n BigInteger.prototype.xor = function (a) {\\n var r = nbi();\\n this.bitwiseTo(a, _util__WEBPACK_IMPORTED_MODULE_0__.op_xor, r);\\n return r;\\n };\\n // BigInteger.prototype.andNot = bnAndNot;\\n BigInteger.prototype.andNot = function (a) {\\n var r = nbi();\\n this.bitwiseTo(a, _util__WEBPACK_IMPORTED_MODULE_0__.op_andnot, r);\\n return r;\\n };\\n // BigInteger.prototype.not = bnNot;\\n // (public) ~this\\n BigInteger.prototype.not = function () {\\n var r = nbi();\\n for (var i = 0; i < this.t; ++i) {\\n r[i] = this.DM & ~this[i];\\n }\\n r.t = this.t;\\n r.s = ~this.s;\\n return r;\\n };\\n // BigInteger.prototype.shiftLeft = bnShiftLeft;\\n // (public) this << n\\n BigInteger.prototype.shiftLeft = function (n) {\\n var r = nbi();\\n if (n < 0) {\\n this.rShiftTo(-n, r);\\n }\\n else {\\n this.lShiftTo(n, r);\\n }\\n return r;\\n };\\n // BigInteger.prototype.shiftRight = bnShiftRight;\\n // (public) this >> n\\n BigInteger.prototype.shiftRight = function (n) {\\n var r = nbi();\\n if (n < 0) {\\n this.lShiftTo(-n, r);\\n }\\n else {\\n this.rShiftTo(n, r);\\n }\\n return r;\\n };\\n // BigInteger.prototype.getLowestSetBit = bnGetLowestSetBit;\\n // (public) returns index of lowest 1-bit (or -1 if none)\\n BigInteger.prototype.getLowestSetBit = function () {\\n for (var i = 0; i < this.t; ++i) {\\n if (this[i] != 0) {\\n return i * this.DB + (0,_util__WEBPACK_IMPORTED_MODULE_0__.lbit)(this[i]);\\n }\\n }\\n if (this.s < 0) {\\n return this.t * this.DB;\\n }\\n return -1;\\n };\\n // BigInteger.prototype.bitCount = bnBitCount;\\n // (public) return number of set bits\\n BigInteger.prototype.bitCount = function () {\\n var r = 0;\\n var x = this.s & this.DM;\\n for (var i = 0; i < this.t; ++i) {\\n r += (0,_util__WEBPACK_IMPORTED_MODULE_0__.cbit)(this[i] ^ x);\\n }\\n return r;\\n };\\n // BigInteger.prototype.testBit = bnTestBit;\\n // (public) true iff nth bit is set\\n BigInteger.prototype.testBit = function (n) {\\n var j = Math.floor(n / this.DB);\\n if (j >= this.t) {\\n return (this.s != 0);\\n }\\n return ((this[j] & (1 << (n % this.DB))) != 0);\\n };\\n // BigInteger.prototype.setBit = bnSetBit;\\n // (public) this | (1< 1) {\\n var g2 = nbi();\\n z.sqrTo(g[1], g2);\\n while (n <= km) {\\n g[n] = nbi();\\n z.mulTo(g2, g[n - 2], g[n]);\\n n += 2;\\n }\\n }\\n var j = e.t - 1;\\n var w;\\n var is1 = true;\\n var r2 = nbi();\\n var t;\\n i = nbits(e[j]) - 1;\\n while (j >= 0) {\\n if (i >= k1) {\\n w = (e[j] >> (i - k1)) & km;\\n }\\n else {\\n w = (e[j] & ((1 << (i + 1)) - 1)) << (k1 - i);\\n if (j > 0) {\\n w |= e[j - 1] >> (this.DB + i - k1);\\n }\\n }\\n n = k;\\n while ((w & 1) == 0) {\\n w >>= 1;\\n --n;\\n }\\n if ((i -= n) < 0) {\\n i += this.DB;\\n --j;\\n }\\n if (is1) { // ret == 1, don\\\'t bother squaring or multiplying it\\n g[w].copyTo(r);\\n is1 = false;\\n }\\n else {\\n while (n > 1) {\\n z.sqrTo(r, r2);\\n z.sqrTo(r2, r);\\n n -= 2;\\n }\\n if (n > 0) {\\n z.sqrTo(r, r2);\\n }\\n else {\\n t = r;\\n r = r2;\\n r2 = t;\\n }\\n z.mulTo(r2, g[w], r);\\n }\\n while (j >= 0 && (e[j] & (1 << i)) == 0) {\\n z.sqrTo(r, r2);\\n t = r;\\n r = r2;\\n r2 = t;\\n if (--i < 0) {\\n i = this.DB - 1;\\n --j;\\n }\\n }\\n }\\n return z.revert(r);\\n };\\n // BigInteger.prototype.modInverse = bnModInverse;\\n // (public) 1/this % m (HAC 14.61)\\n BigInteger.prototype.modInverse = function (m) {\\n var ac = m.isEven();\\n if ((this.isEven() && ac) || m.signum() == 0) {\\n return BigInteger.ZERO;\\n }\\n var u = m.clone();\\n var v = this.clone();\\n var a = nbv(1);\\n var b = nbv(0);\\n var c = nbv(0);\\n var d = nbv(1);\\n while (u.signum() != 0) {\\n while (u.isEven()) {\\n u.rShiftTo(1, u);\\n if (ac) {\\n if (!a.isEven() || !b.isEven()) {\\n a.addTo(this, a);\\n b.subTo(m, b);\\n }\\n a.rShiftTo(1, a);\\n }\\n else if (!b.isEven()) {\\n b.subTo(m, b);\\n }\\n b.rShiftTo(1, b);\\n }\\n while (v.isEven()) {\\n v.rShiftTo(1, v);\\n if (ac) {\\n if (!c.isEven() || !d.isEven()) {\\n c.addTo(this, c);\\n d.subTo(m, d);\\n }\\n c.rShiftTo(1, c);\\n }\\n else if (!d.isEven()) {\\n d.subTo(m, d);\\n }\\n d.rShiftTo(1, d);\\n }\\n if (u.compareTo(v) >= 0) {\\n u.subTo(v, u);\\n if (ac) {\\n a.subTo(c, a);\\n }\\n b.subTo(d, b);\\n }\\n else {\\n v.subTo(u, v);\\n if (ac) {\\n c.subTo(a, c);\\n }\\n d.subTo(b, d);\\n }\\n }\\n if (v.compareTo(BigInteger.ONE) != 0) {\\n return BigInteger.ZERO;\\n }\\n if (d.compareTo(m) >= 0) {\\n return d.subtract(m);\\n }\\n if (d.signum() < 0) {\\n d.addTo(m, d);\\n }\\n else {\\n return d;\\n }\\n if (d.signum() < 0) {\\n return d.add(m);\\n }\\n else {\\n return d;\\n }\\n };\\n // BigInteger.prototype.pow = bnPow;\\n // (public) this^e\\n BigInteger.prototype.pow = function (e) {\\n return this.exp(e, new NullExp());\\n };\\n // BigInteger.prototype.gcd = bnGCD;\\n // (public) gcd(this,a) (HAC 14.54)\\n BigInteger.prototype.gcd = function (a) {\\n var x = (this.s < 0) ? this.negate() : this.clone();\\n var y = (a.s < 0) ? a.negate() : a.clone();\\n if (x.compareTo(y) < 0) {\\n var t = x;\\n x = y;\\n y = t;\\n }\\n var i = x.getLowestSetBit();\\n var g = y.getLowestSetBit();\\n if (g < 0) {\\n return x;\\n }\\n if (i < g) {\\n g = i;\\n }\\n if (g > 0) {\\n x.rShiftTo(g, x);\\n y.rShiftTo(g, y);\\n }\\n while (x.signum() > 0) {\\n if ((i = x.getLowestSetBit()) > 0) {\\n x.rShiftTo(i, x);\\n }\\n if ((i = y.getLowestSetBit()) > 0) {\\n y.rShiftTo(i, y);\\n }\\n if (x.compareTo(y) >= 0) {\\n x.subTo(y, x);\\n x.rShiftTo(1, x);\\n }\\n else {\\n y.subTo(x, y);\\n y.rShiftTo(1, y);\\n }\\n }\\n if (g > 0) {\\n y.lShiftTo(g, y);\\n }\\n return y;\\n };\\n // BigInteger.prototype.isProbablePrime = bnIsProbablePrime;\\n // (public) test primality with certainty >= 1-.5^t\\n BigInteger.prototype.isProbablePrime = function (t) {\\n var i;\\n var x = this.abs();\\n if (x.t == 1 && x[0] <= lowprimes[lowprimes.length - 1]) {\\n for (i = 0; i < lowprimes.length; ++i) {\\n if (x[0] == lowprimes[i]) {\\n return true;\\n }\\n }\\n return false;\\n }\\n if (x.isEven()) {\\n return false;\\n }\\n i = 1;\\n while (i < lowprimes.length) {\\n var m = lowprimes[i];\\n var j = i + 1;\\n while (j < lowprimes.length && m < lplim) {\\n m *= lowprimes[j++];\\n }\\n m = x.modInt(m);\\n while (i < j) {\\n if (m % lowprimes[i++] == 0) {\\n return false;\\n }\\n }\\n }\\n return x.millerRabin(t);\\n };\\n //#endregion PUBLIC\\n //#region PROTECTED\\n // BigInteger.prototype.copyTo = bnpCopyTo;\\n // (protected) copy this to r\\n BigInteger.prototype.copyTo = function (r) {\\n for (var i = this.t - 1; i >= 0; --i) {\\n r[i] = this[i];\\n }\\n r.t = this.t;\\n r.s = this.s;\\n };\\n // BigInteger.prototype.fromInt = bnpFromInt;\\n // (protected) set from integer value x, -DV <= x < DV\\n BigInteger.prototype.fromInt = function (x) {\\n this.t = 1;\\n this.s = (x < 0) ? -1 : 0;\\n if (x > 0) {\\n this[0] = x;\\n }\\n else if (x < -1) {\\n this[0] = x + this.DV;\\n }\\n else {\\n this.t = 0;\\n }\\n };\\n // BigInteger.prototype.fromString = bnpFromString;\\n // (protected) set from string and radix\\n BigInteger.prototype.fromString = function (s, b) {\\n var k;\\n if (b == 16) {\\n k = 4;\\n }\\n else if (b == 8) {\\n k = 3;\\n }\\n else if (b == 256) {\\n k = 8;\\n /* byte array */\\n }\\n else if (b == 2) {\\n k = 1;\\n }\\n else if (b == 32) {\\n k = 5;\\n }\\n else if (b == 4) {\\n k = 2;\\n }\\n else {\\n this.fromRadix(s, b);\\n return;\\n }\\n this.t = 0;\\n this.s = 0;\\n var i = s.length;\\n var mi = false;\\n var sh = 0;\\n while (--i >= 0) {\\n var x = (k == 8) ? (+s[i]) & 0xff : intAt(s, i);\\n if (x < 0) {\\n if (s.charAt(i) == "-") {\\n mi = true;\\n }\\n continue;\\n }\\n mi = false;\\n if (sh == 0) {\\n this[this.t++] = x;\\n }\\n else if (sh + k > this.DB) {\\n this[this.t - 1] |= (x & ((1 << (this.DB - sh)) - 1)) << sh;\\n this[this.t++] = (x >> (this.DB - sh));\\n }\\n else {\\n this[this.t - 1] |= x << sh;\\n }\\n sh += k;\\n if (sh >= this.DB) {\\n sh -= this.DB;\\n }\\n }\\n if (k == 8 && ((+s[0]) & 0x80) != 0) {\\n this.s = -1;\\n if (sh > 0) {\\n this[this.t - 1] |= ((1 << (this.DB - sh)) - 1) << sh;\\n }\\n }\\n this.clamp();\\n if (mi) {\\n BigInteger.ZERO.subTo(this, this);\\n }\\n };\\n // BigInteger.prototype.clamp = bnpClamp;\\n // (protected) clamp off excess high words\\n BigInteger.prototype.clamp = function () {\\n var c = this.s & this.DM;\\n while (this.t > 0 && this[this.t - 1] == c) {\\n --this.t;\\n }\\n };\\n // BigInteger.prototype.dlShiftTo = bnpDLShiftTo;\\n // (protected) r = this << n*DB\\n BigInteger.prototype.dlShiftTo = function (n, r) {\\n var i;\\n for (i = this.t - 1; i >= 0; --i) {\\n r[i + n] = this[i];\\n }\\n for (i = n - 1; i >= 0; --i) {\\n r[i] = 0;\\n }\\n r.t = this.t + n;\\n r.s = this.s;\\n };\\n // BigInteger.prototype.drShiftTo = bnpDRShiftTo;\\n // (protected) r = this >> n*DB\\n BigInteger.prototype.drShiftTo = function (n, r) {\\n for (var i = n; i < this.t; ++i) {\\n r[i - n] = this[i];\\n }\\n r.t = Math.max(this.t - n, 0);\\n r.s = this.s;\\n };\\n // BigInteger.prototype.lShiftTo = bnpLShiftTo;\\n // (protected) r = this << n\\n BigInteger.prototype.lShiftTo = function (n, r) {\\n var bs = n % this.DB;\\n var cbs = this.DB - bs;\\n var bm = (1 << cbs) - 1;\\n var ds = Math.floor(n / this.DB);\\n var c = (this.s << bs) & this.DM;\\n for (var i = this.t - 1; i >= 0; --i) {\\n r[i + ds + 1] = (this[i] >> cbs) | c;\\n c = (this[i] & bm) << bs;\\n }\\n for (var i = ds - 1; i >= 0; --i) {\\n r[i] = 0;\\n }\\n r[ds] = c;\\n r.t = this.t + ds + 1;\\n r.s = this.s;\\n r.clamp();\\n };\\n // BigInteger.prototype.rShiftTo = bnpRShiftTo;\\n // (protected) r = this >> n\\n BigInteger.prototype.rShiftTo = function (n, r) {\\n r.s = this.s;\\n var ds = Math.floor(n / this.DB);\\n if (ds >= this.t) {\\n r.t = 0;\\n return;\\n }\\n var bs = n % this.DB;\\n var cbs = this.DB - bs;\\n var bm = (1 << bs) - 1;\\n r[0] = this[ds] >> bs;\\n for (var i = ds + 1; i < this.t; ++i) {\\n r[i - ds - 1] |= (this[i] & bm) << cbs;\\n r[i - ds] = this[i] >> bs;\\n }\\n if (bs > 0) {\\n r[this.t - ds - 1] |= (this.s & bm) << cbs;\\n }\\n r.t = this.t - ds;\\n r.clamp();\\n };\\n // BigInteger.prototype.subTo = bnpSubTo;\\n // (protected) r = this - a\\n BigInteger.prototype.subTo = function (a, r) {\\n var i = 0;\\n var c = 0;\\n var m = Math.min(a.t, this.t);\\n while (i < m) {\\n c += this[i] - a[i];\\n r[i++] = c & this.DM;\\n c >>= this.DB;\\n }\\n if (a.t < this.t) {\\n c -= a.s;\\n while (i < this.t) {\\n c += this[i];\\n r[i++] = c & this.DM;\\n c >>= this.DB;\\n }\\n c += this.s;\\n }\\n else {\\n c += this.s;\\n while (i < a.t) {\\n c -= a[i];\\n r[i++] = c & this.DM;\\n c >>= this.DB;\\n }\\n c -= a.s;\\n }\\n r.s = (c < 0) ? -1 : 0;\\n if (c < -1) {\\n r[i++] = this.DV + c;\\n }\\n else if (c > 0) {\\n r[i++] = c;\\n }\\n r.t = i;\\n r.clamp();\\n };\\n // BigInteger.prototype.multiplyTo = bnpMultiplyTo;\\n // (protected) r = this * a, r != this,a (HAC 14.12)\\n // "this" should be the larger one if appropriate.\\n BigInteger.prototype.multiplyTo = function (a, r) {\\n var x = this.abs();\\n var y = a.abs();\\n var i = x.t;\\n r.t = i + y.t;\\n while (--i >= 0) {\\n r[i] = 0;\\n }\\n for (i = 0; i < y.t; ++i) {\\n r[i + x.t] = x.am(0, y[i], r, i, 0, x.t);\\n }\\n r.s = 0;\\n r.clamp();\\n if (this.s != a.s) {\\n BigInteger.ZERO.subTo(r, r);\\n }\\n };\\n // BigInteger.prototype.squareTo = bnpSquareTo;\\n // (protected) r = this^2, r != this (HAC 14.16)\\n BigInteger.prototype.squareTo = function (r) {\\n var x = this.abs();\\n var i = r.t = 2 * x.t;\\n while (--i >= 0) {\\n r[i] = 0;\\n }\\n for (i = 0; i < x.t - 1; ++i) {\\n var c = x.am(i, x[i], r, 2 * i, 0, 1);\\n if ((r[i + x.t] += x.am(i + 1, 2 * x[i], r, 2 * i + 1, c, x.t - i - 1)) >= x.DV) {\\n r[i + x.t] -= x.DV;\\n r[i + x.t + 1] = 1;\\n }\\n }\\n if (r.t > 0) {\\n r[r.t - 1] += x.am(i, x[i], r, 2 * i, 0, 1);\\n }\\n r.s = 0;\\n r.clamp();\\n };\\n // BigInteger.prototype.divRemTo = bnpDivRemTo;\\n // (protected) divide this by m, quotient and remainder to q, r (HAC 14.20)\\n // r != q, this != m. q or r may be null.\\n BigInteger.prototype.divRemTo = function (m, q, r) {\\n var pm = m.abs();\\n if (pm.t <= 0) {\\n return;\\n }\\n var pt = this.abs();\\n if (pt.t < pm.t) {\\n if (q != null) {\\n q.fromInt(0);\\n }\\n if (r != null) {\\n this.copyTo(r);\\n }\\n return;\\n }\\n if (r == null) {\\n r = nbi();\\n }\\n var y = nbi();\\n var ts = this.s;\\n var ms = m.s;\\n var nsh = this.DB - nbits(pm[pm.t - 1]); // normalize modulus\\n if (nsh > 0) {\\n pm.lShiftTo(nsh, y);\\n pt.lShiftTo(nsh, r);\\n }\\n else {\\n pm.copyTo(y);\\n pt.copyTo(r);\\n }\\n var ys = y.t;\\n var y0 = y[ys - 1];\\n if (y0 == 0) {\\n return;\\n }\\n var yt = y0 * (1 << this.F1) + ((ys > 1) ? y[ys - 2] >> this.F2 : 0);\\n var d1 = this.FV / yt;\\n var d2 = (1 << this.F1) / yt;\\n var e = 1 << this.F2;\\n var i = r.t;\\n var j = i - ys;\\n var t = (q == null) ? nbi() : q;\\n y.dlShiftTo(j, t);\\n if (r.compareTo(t) >= 0) {\\n r[r.t++] = 1;\\n r.subTo(t, r);\\n }\\n BigInteger.ONE.dlShiftTo(ys, t);\\n t.subTo(y, y); // "negative" y so we can replace sub with am later\\n while (y.t < ys) {\\n y[y.t++] = 0;\\n }\\n while (--j >= 0) {\\n // Estimate quotient digit\\n var qd = (r[--i] == y0) ? this.DM : Math.floor(r[i] * d1 + (r[i - 1] + e) * d2);\\n if ((r[i] += y.am(0, qd, r, j, 0, ys)) < qd) { // Try it out\\n y.dlShiftTo(j, t);\\n r.subTo(t, r);\\n while (r[i] < --qd) {\\n r.subTo(t, r);\\n }\\n }\\n }\\n if (q != null) {\\n r.drShiftTo(ys, q);\\n if (ts != ms) {\\n BigInteger.ZERO.subTo(q, q);\\n }\\n }\\n r.t = ys;\\n r.clamp();\\n if (nsh > 0) {\\n r.rShiftTo(nsh, r);\\n } // Denormalize remainder\\n if (ts < 0) {\\n BigInteger.ZERO.subTo(r, r);\\n }\\n };\\n // BigInteger.prototype.invDigit = bnpInvDigit;\\n // (protected) return "-1/this % 2^DB"; useful for Mont. reduction\\n // justification:\\n // xy == 1 (mod m)\\n // xy = 1+km\\n // xy(2-xy) = (1+km)(1-km)\\n // x[y(2-xy)] = 1-k^2m^2\\n // x[y(2-xy)] == 1 (mod m^2)\\n // if y is 1/x mod m, then y(2-xy) is 1/x mod m^2\\n // should reduce x and y(2-xy) by m^2 at each step to keep size bounded.\\n // JS multiply "overflows" differently from C/C++, so care is needed here.\\n BigInteger.prototype.invDigit = function () {\\n if (this.t < 1) {\\n return 0;\\n }\\n var x = this[0];\\n if ((x & 1) == 0) {\\n return 0;\\n }\\n var y = x & 3; // y == 1/x mod 2^2\\n y = (y * (2 - (x & 0xf) * y)) & 0xf; // y == 1/x mod 2^4\\n y = (y * (2 - (x & 0xff) * y)) & 0xff; // y == 1/x mod 2^8\\n y = (y * (2 - (((x & 0xffff) * y) & 0xffff))) & 0xffff; // y == 1/x mod 2^16\\n // last step - calculate inverse mod DV directly;\\n // assumes 16 < DB <= 32 and assumes ability to handle 48-bit ints\\n y = (y * (2 - x * y % this.DV)) % this.DV; // y == 1/x mod 2^dbits\\n // we really want the negative inverse, and -DV < y < DV\\n return (y > 0) ? this.DV - y : -y;\\n };\\n // BigInteger.prototype.isEven = bnpIsEven;\\n // (protected) true iff this is even\\n BigInteger.prototype.isEven = function () {\\n return ((this.t > 0) ? (this[0] & 1) : this.s) == 0;\\n };\\n // BigInteger.prototype.exp = bnpExp;\\n // (protected) this^e, e < 2^32, doing sqr and mul with "r" (HAC 14.79)\\n BigInteger.prototype.exp = function (e, z) {\\n if (e > 0xffffffff || e < 1) {\\n return BigInteger.ONE;\\n }\\n var r = nbi();\\n var r2 = nbi();\\n var g = z.convert(this);\\n var i = nbits(e) - 1;\\n g.copyTo(r);\\n while (--i >= 0) {\\n z.sqrTo(r, r2);\\n if ((e & (1 << i)) > 0) {\\n z.mulTo(r2, g, r);\\n }\\n else {\\n var t = r;\\n r = r2;\\n r2 = t;\\n }\\n }\\n return z.revert(r);\\n };\\n // BigInteger.prototype.chunkSize = bnpChunkSize;\\n // (protected) return x s.t. r^x < DV\\n BigInteger.prototype.chunkSize = function (r) {\\n return Math.floor(Math.LN2 * this.DB / Math.log(r));\\n };\\n // BigInteger.prototype.toRadix = bnpToRadix;\\n // (protected) convert to radix string\\n BigInteger.prototype.toRadix = function (b) {\\n if (b == null) {\\n b = 10;\\n }\\n if (this.signum() == 0 || b < 2 || b > 36) {\\n return "0";\\n }\\n var cs = this.chunkSize(b);\\n var a = Math.pow(b, cs);\\n var d = nbv(a);\\n var y = nbi();\\n var z = nbi();\\n var r = "";\\n this.divRemTo(d, y, z);\\n while (y.signum() > 0) {\\n r = (a + z.intValue()).toString(b).substr(1) + r;\\n y.divRemTo(d, y, z);\\n }\\n return z.intValue().toString(b) + r;\\n };\\n // BigInteger.prototype.fromRadix = bnpFromRadix;\\n // (protected) convert from radix string\\n BigInteger.prototype.fromRadix = function (s, b) {\\n this.fromInt(0);\\n if (b == null) {\\n b = 10;\\n }\\n var cs = this.chunkSize(b);\\n var d = Math.pow(b, cs);\\n var mi = false;\\n var j = 0;\\n var w = 0;\\n for (var i = 0; i < s.length; ++i) {\\n var x = intAt(s, i);\\n if (x < 0) {\\n if (s.charAt(i) == "-" && this.signum() == 0) {\\n mi = true;\\n }\\n continue;\\n }\\n w = b * w + x;\\n if (++j >= cs) {\\n this.dMultiply(d);\\n this.dAddOffset(w, 0);\\n j = 0;\\n w = 0;\\n }\\n }\\n if (j > 0) {\\n this.dMultiply(Math.pow(b, j));\\n this.dAddOffset(w, 0);\\n }\\n if (mi) {\\n BigInteger.ZERO.subTo(this, this);\\n }\\n };\\n // BigInteger.prototype.fromNumber = bnpFromNumber;\\n // (protected) alternate constructor\\n BigInteger.prototype.fromNumber = function (a, b, c) {\\n if ("number" == typeof b) {\\n // new BigInteger(int,int,RNG)\\n if (a < 2) {\\n this.fromInt(1);\\n }\\n else {\\n this.fromNumber(a, c);\\n if (!this.testBit(a - 1)) {\\n // force MSB set\\n this.bitwiseTo(BigInteger.ONE.shiftLeft(a - 1), _util__WEBPACK_IMPORTED_MODULE_0__.op_or, this);\\n }\\n if (this.isEven()) {\\n this.dAddOffset(1, 0);\\n } // force odd\\n while (!this.isProbablePrime(b)) {\\n this.dAddOffset(2, 0);\\n if (this.bitLength() > a) {\\n this.subTo(BigInteger.ONE.shiftLeft(a - 1), this);\\n }\\n }\\n }\\n }\\n else {\\n // new BigInteger(int,RNG)\\n var x = [];\\n var t = a & 7;\\n x.length = (a >> 3) + 1;\\n b.nextBytes(x);\\n if (t > 0) {\\n x[0] &= ((1 << t) - 1);\\n }\\n else {\\n x[0] = 0;\\n }\\n this.fromString(x, 256);\\n }\\n };\\n // BigInteger.prototype.bitwiseTo = bnpBitwiseTo;\\n // (protected) r = this op a (bitwise)\\n BigInteger.prototype.bitwiseTo = function (a, op, r) {\\n var i;\\n var f;\\n var m = Math.min(a.t, this.t);\\n for (i = 0; i < m; ++i) {\\n r[i] = op(this[i], a[i]);\\n }\\n if (a.t < this.t) {\\n f = a.s & this.DM;\\n for (i = m; i < this.t; ++i) {\\n r[i] = op(this[i], f);\\n }\\n r.t = this.t;\\n }\\n else {\\n f = this.s & this.DM;\\n for (i = m; i < a.t; ++i) {\\n r[i] = op(f, a[i]);\\n }\\n r.t = a.t;\\n }\\n r.s = op(this.s, a.s);\\n r.clamp();\\n };\\n // BigInteger.prototype.changeBit = bnpChangeBit;\\n // (protected) this op (1<>= this.DB;\\n }\\n if (a.t < this.t) {\\n c += a.s;\\n while (i < this.t) {\\n c += this[i];\\n r[i++] = c & this.DM;\\n c >>= this.DB;\\n }\\n c += this.s;\\n }\\n else {\\n c += this.s;\\n while (i < a.t) {\\n c += a[i];\\n r[i++] = c & this.DM;\\n c >>= this.DB;\\n }\\n c += a.s;\\n }\\n r.s = (c < 0) ? -1 : 0;\\n if (c > 0) {\\n r[i++] = c;\\n }\\n else if (c < -1) {\\n r[i++] = this.DV + c;\\n }\\n r.t = i;\\n r.clamp();\\n };\\n // BigInteger.prototype.dMultiply = bnpDMultiply;\\n // (protected) this *= n, this >= 0, 1 < n < DV\\n BigInteger.prototype.dMultiply = function (n) {\\n this[this.t] = this.am(0, n - 1, this, 0, 0, this.t);\\n ++this.t;\\n this.clamp();\\n };\\n // BigInteger.prototype.dAddOffset = bnpDAddOffset;\\n // (protected) this += n << w words, this >= 0\\n BigInteger.prototype.dAddOffset = function (n, w) {\\n if (n == 0) {\\n return;\\n }\\n while (this.t <= w) {\\n this[this.t++] = 0;\\n }\\n this[w] += n;\\n while (this[w] >= this.DV) {\\n this[w] -= this.DV;\\n if (++w >= this.t) {\\n this[this.t++] = 0;\\n }\\n ++this[w];\\n }\\n };\\n // BigInteger.prototype.multiplyLowerTo = bnpMultiplyLowerTo;\\n // (protected) r = lower n words of "this * a", a.t <= n\\n // "this" should be the larger one if appropriate.\\n BigInteger.prototype.multiplyLowerTo = function (a, n, r) {\\n var i = Math.min(this.t + a.t, n);\\n r.s = 0; // assumes a,this >= 0\\n r.t = i;\\n while (i > 0) {\\n r[--i] = 0;\\n }\\n for (var j = r.t - this.t; i < j; ++i) {\\n r[i + this.t] = this.am(0, a[i], r, i, 0, this.t);\\n }\\n for (var j = Math.min(a.t, n); i < j; ++i) {\\n this.am(0, a[i], r, i, 0, n - i);\\n }\\n r.clamp();\\n };\\n // BigInteger.prototype.multiplyUpperTo = bnpMultiplyUpperTo;\\n // (protected) r = "this * a" without lower n words, n > 0\\n // "this" should be the larger one if appropriate.\\n BigInteger.prototype.multiplyUpperTo = function (a, n, r) {\\n --n;\\n var i = r.t = this.t + a.t - n;\\n r.s = 0; // assumes a,this >= 0\\n while (--i >= 0) {\\n r[i] = 0;\\n }\\n for (i = Math.max(n - this.t, 0); i < a.t; ++i) {\\n r[this.t + i - n] = this.am(n - i, a[i], r, 0, 0, this.t + i - n);\\n }\\n r.clamp();\\n r.drShiftTo(1, r);\\n };\\n // BigInteger.prototype.modInt = bnpModInt;\\n // (protected) this % n, n < 2^26\\n BigInteger.prototype.modInt = function (n) {\\n if (n <= 0) {\\n return 0;\\n }\\n var d = this.DV % n;\\n var r = (this.s < 0) ? n - 1 : 0;\\n if (this.t > 0) {\\n if (d == 0) {\\n r = this[0] % n;\\n }\\n else {\\n for (var i = this.t - 1; i >= 0; --i) {\\n r = (d * r + this[i]) % n;\\n }\\n }\\n }\\n return r;\\n };\\n // BigInteger.prototype.millerRabin = bnpMillerRabin;\\n // (protected) true if probably prime (HAC 4.24, Miller-Rabin)\\n BigInteger.prototype.millerRabin = function (t) {\\n var n1 = this.subtract(BigInteger.ONE);\\n var k = n1.getLowestSetBit();\\n if (k <= 0) {\\n return false;\\n }\\n var r = n1.shiftRight(k);\\n t = (t + 1) >> 1;\\n if (t > lowprimes.length) {\\n t = lowprimes.length;\\n }\\n var a = nbi();\\n for (var i = 0; i < t; ++i) {\\n // Pick bases at random, instead of starting at 2\\n a.fromInt(lowprimes[Math.floor(Math.random() * lowprimes.length)]);\\n var y = a.modPow(r, this);\\n if (y.compareTo(BigInteger.ONE) != 0 && y.compareTo(n1) != 0) {\\n var j = 1;\\n while (j++ < k && y.compareTo(n1) != 0) {\\n y = y.modPowInt(2, this);\\n if (y.compareTo(BigInteger.ONE) == 0) {\\n return false;\\n }\\n }\\n if (y.compareTo(n1) != 0) {\\n return false;\\n }\\n }\\n }\\n return true;\\n };\\n // BigInteger.prototype.square = bnSquare;\\n // (public) this^2\\n BigInteger.prototype.square = function () {\\n var r = nbi();\\n this.squareTo(r);\\n return r;\\n };\\n //#region ASYNC\\n // Public API method\\n BigInteger.prototype.gcda = function (a, callback) {\\n var x = (this.s < 0) ? this.negate() : this.clone();\\n var y = (a.s < 0) ? a.negate() : a.clone();\\n if (x.compareTo(y) < 0) {\\n var t = x;\\n x = y;\\n y = t;\\n }\\n var i = x.getLowestSetBit();\\n var g = y.getLowestSetBit();\\n if (g < 0) {\\n callback(x);\\n return;\\n }\\n if (i < g) {\\n g = i;\\n }\\n if (g > 0) {\\n x.rShiftTo(g, x);\\n y.rShiftTo(g, y);\\n }\\n // Workhorse of the algorithm, gets called 200 - 800 times per 512 bit keygen.\\n var gcda1 = function () {\\n if ((i = x.getLowestSetBit()) > 0) {\\n x.rShiftTo(i, x);\\n }\\n if ((i = y.getLowestSetBit()) > 0) {\\n y.rShiftTo(i, y);\\n }\\n if (x.compareTo(y) >= 0) {\\n x.subTo(y, x);\\n x.rShiftTo(1, x);\\n }\\n else {\\n y.subTo(x, y);\\n y.rShiftTo(1, y);\\n }\\n if (!(x.signum() > 0)) {\\n if (g > 0) {\\n y.lShiftTo(g, y);\\n }\\n setTimeout(function () { callback(y); }, 0); // escape\\n }\\n else {\\n setTimeout(gcda1, 0);\\n }\\n };\\n setTimeout(gcda1, 10);\\n };\\n // (protected) alternate constructor\\n BigInteger.prototype.fromNumberAsync = function (a, b, c, callback) {\\n if ("number" == typeof b) {\\n if (a < 2) {\\n this.fromInt(1);\\n }\\n else {\\n this.fromNumber(a, c);\\n if (!this.testBit(a - 1)) {\\n this.bitwiseTo(BigInteger.ONE.shiftLeft(a - 1), _util__WEBPACK_IMPORTED_MODULE_0__.op_or, this);\\n }\\n if (this.isEven()) {\\n this.dAddOffset(1, 0);\\n }\\n var bnp_1 = this;\\n var bnpfn1_1 = function () {\\n bnp_1.dAddOffset(2, 0);\\n if (bnp_1.bitLength() > a) {\\n bnp_1.subTo(BigInteger.ONE.shiftLeft(a - 1), bnp_1);\\n }\\n if (bnp_1.isProbablePrime(b)) {\\n setTimeout(function () { callback(); }, 0); // escape\\n }\\n else {\\n setTimeout(bnpfn1_1, 0);\\n }\\n };\\n setTimeout(bnpfn1_1, 0);\\n }\\n }\\n else {\\n var x = [];\\n var t = a & 7;\\n x.length = (a >> 3) + 1;\\n b.nextBytes(x);\\n if (t > 0) {\\n x[0] &= ((1 << t) - 1);\\n }\\n else {\\n x[0] = 0;\\n }\\n this.fromString(x, 256);\\n }\\n };\\n return BigInteger;\\n}());\\n\\n//#region REDUCERS\\n//#region NullExp\\nvar NullExp = /** @class */ (function () {\\n function NullExp() {\\n }\\n // NullExp.prototype.convert = nNop;\\n NullExp.prototype.convert = function (x) {\\n return x;\\n };\\n // NullExp.prototype.revert = nNop;\\n NullExp.prototype.revert = function (x) {\\n return x;\\n };\\n // NullExp.prototype.mulTo = nMulTo;\\n NullExp.prototype.mulTo = function (x, y, r) {\\n x.multiplyTo(y, r);\\n };\\n // NullExp.prototype.sqrTo = nSqrTo;\\n NullExp.prototype.sqrTo = function (x, r) {\\n x.squareTo(r);\\n };\\n return NullExp;\\n}());\\n// Modular reduction using "classic" algorithm\\nvar Classic = /** @class */ (function () {\\n function Classic(m) {\\n this.m = m;\\n }\\n // Classic.prototype.convert = cConvert;\\n Classic.prototype.convert = function (x) {\\n if (x.s < 0 || x.compareTo(this.m) >= 0) {\\n return x.mod(this.m);\\n }\\n else {\\n return x;\\n }\\n };\\n // Classic.prototype.revert = cRevert;\\n Classic.prototype.revert = function (x) {\\n return x;\\n };\\n // Classic.prototype.reduce = cReduce;\\n Classic.prototype.reduce = function (x) {\\n x.divRemTo(this.m, null, x);\\n };\\n // Classic.prototype.mulTo = cMulTo;\\n Classic.prototype.mulTo = function (x, y, r) {\\n x.multiplyTo(y, r);\\n this.reduce(r);\\n };\\n // Classic.prototype.sqrTo = cSqrTo;\\n Classic.prototype.sqrTo = function (x, r) {\\n x.squareTo(r);\\n this.reduce(r);\\n };\\n return Classic;\\n}());\\n//#endregion\\n//#region Montgomery\\n// Montgomery reduction\\nvar Montgomery = /** @class */ (function () {\\n function Montgomery(m) {\\n this.m = m;\\n this.mp = m.invDigit();\\n this.mpl = this.mp & 0x7fff;\\n this.mph = this.mp >> 15;\\n this.um = (1 << (m.DB - 15)) - 1;\\n this.mt2 = 2 * m.t;\\n }\\n // Montgomery.prototype.convert = montConvert;\\n // xR mod m\\n Montgomery.prototype.convert = function (x) {\\n var r = nbi();\\n x.abs().dlShiftTo(this.m.t, r);\\n r.divRemTo(this.m, null, r);\\n if (x.s < 0 && r.compareTo(BigInteger.ZERO) > 0) {\\n this.m.subTo(r, r);\\n }\\n return r;\\n };\\n // Montgomery.prototype.revert = montRevert;\\n // x/R mod m\\n Montgomery.prototype.revert = function (x) {\\n var r = nbi();\\n x.copyTo(r);\\n this.reduce(r);\\n return r;\\n };\\n // Montgomery.prototype.reduce = montReduce;\\n // x = x/R mod m (HAC 14.32)\\n Montgomery.prototype.reduce = function (x) {\\n while (x.t <= this.mt2) {\\n // pad x so am has enough room later\\n x[x.t++] = 0;\\n }\\n for (var i = 0; i < this.m.t; ++i) {\\n // faster way of calculating u0 = x[i]*mp mod DV\\n var j = x[i] & 0x7fff;\\n var u0 = (j * this.mpl + (((j * this.mph + (x[i] >> 15) * this.mpl) & this.um) << 15)) & x.DM;\\n // use am to combine the multiply-shift-add into one call\\n j = i + this.m.t;\\n x[j] += this.m.am(0, u0, x, i, 0, this.m.t);\\n // propagate carry\\n while (x[j] >= x.DV) {\\n x[j] -= x.DV;\\n x[++j]++;\\n }\\n }\\n x.clamp();\\n x.drShiftTo(this.m.t, x);\\n if (x.compareTo(this.m) >= 0) {\\n x.subTo(this.m, x);\\n }\\n };\\n // Montgomery.prototype.mulTo = montMulTo;\\n // r = "xy/R mod m"; x,y != r\\n Montgomery.prototype.mulTo = function (x, y, r) {\\n x.multiplyTo(y, r);\\n this.reduce(r);\\n };\\n // Montgomery.prototype.sqrTo = montSqrTo;\\n // r = "x^2/R mod m"; x != r\\n Montgomery.prototype.sqrTo = function (x, r) {\\n x.squareTo(r);\\n this.reduce(r);\\n };\\n return Montgomery;\\n}());\\n//#endregion Montgomery\\n//#region Barrett\\n// Barrett modular reduction\\nvar Barrett = /** @class */ (function () {\\n function Barrett(m) {\\n this.m = m;\\n // setup Barrett\\n this.r2 = nbi();\\n this.q3 = nbi();\\n BigInteger.ONE.dlShiftTo(2 * m.t, this.r2);\\n this.mu = this.r2.divide(m);\\n }\\n // Barrett.prototype.convert = barrettConvert;\\n Barrett.prototype.convert = function (x) {\\n if (x.s < 0 || x.t > 2 * this.m.t) {\\n return x.mod(this.m);\\n }\\n else if (x.compareTo(this.m) < 0) {\\n return x;\\n }\\n else {\\n var r = nbi();\\n x.copyTo(r);\\n this.reduce(r);\\n return r;\\n }\\n };\\n // Barrett.prototype.revert = barrettRevert;\\n Barrett.prototype.revert = function (x) {\\n return x;\\n };\\n // Barrett.prototype.reduce = barrettReduce;\\n // x = x mod m (HAC 14.42)\\n Barrett.prototype.reduce = function (x) {\\n x.drShiftTo(this.m.t - 1, this.r2);\\n if (x.t > this.m.t + 1) {\\n x.t = this.m.t + 1;\\n x.clamp();\\n }\\n this.mu.multiplyUpperTo(this.r2, this.m.t + 1, this.q3);\\n this.m.multiplyLowerTo(this.q3, this.m.t + 1, this.r2);\\n while (x.compareTo(this.r2) < 0) {\\n x.dAddOffset(1, this.m.t + 1);\\n }\\n x.subTo(this.r2, x);\\n while (x.compareTo(this.m) >= 0) {\\n x.subTo(this.m, x);\\n }\\n };\\n // Barrett.prototype.mulTo = barrettMulTo;\\n // r = x*y mod m; x,y != r\\n Barrett.prototype.mulTo = function (x, y, r) {\\n x.multiplyTo(y, r);\\n this.reduce(r);\\n };\\n // Barrett.prototype.sqrTo = barrettSqrTo;\\n // r = x^2 mod m; x != r\\n Barrett.prototype.sqrTo = function (x, r) {\\n x.squareTo(r);\\n this.reduce(r);\\n };\\n return Barrett;\\n}());\\n//#endregion\\n//#endregion REDUCERS\\n// return new, unset BigInteger\\nfunction nbi() { return new BigInteger(null); }\\nfunction parseBigInt(str, r) {\\n return new BigInteger(str, r);\\n}\\n// am: Compute w_j += (x*this_i), propagate carries,\\n// c is initial carry, returns final carry.\\n// c < 3*dvalue, x < 2*dvalue, this_i < dvalue\\n// We need to select the fastest one that works in this environment.\\nvar inBrowser = typeof navigator !== "undefined";\\nif (inBrowser && j_lm && (navigator.appName == "Microsoft Internet Explorer")) {\\n // am2 avoids a big mult-and-extract completely.\\n // Max digit bits should be <= 30 because we do bitwise ops\\n // on values up to 2*hdvalue^2-hdvalue-1 (< 2^31)\\n BigInteger.prototype.am = function am2(i, x, w, j, c, n) {\\n var xl = x & 0x7fff;\\n var xh = x >> 15;\\n while (--n >= 0) {\\n var l = this[i] & 0x7fff;\\n var h = this[i++] >> 15;\\n var m = xh * l + h * xl;\\n l = xl * l + ((m & 0x7fff) << 15) + w[j] + (c & 0x3fffffff);\\n c = (l >>> 30) + (m >>> 15) + xh * h + (c >>> 30);\\n w[j++] = l & 0x3fffffff;\\n }\\n return c;\\n };\\n dbits = 30;\\n}\\nelse if (inBrowser && j_lm && (navigator.appName != "Netscape")) {\\n // am1: use a single mult and divide to get the high bits,\\n // max digit bits should be 26 because\\n // max internal value = 2*dvalue^2-2*dvalue (< 2^53)\\n BigInteger.prototype.am = function am1(i, x, w, j, c, n) {\\n while (--n >= 0) {\\n var v = x * this[i++] + w[j] + c;\\n c = Math.floor(v / 0x4000000);\\n w[j++] = v & 0x3ffffff;\\n }\\n return c;\\n };\\n dbits = 26;\\n}\\nelse { // Mozilla/Netscape seems to prefer am3\\n // Alternately, set max digit bits to 28 since some\\n // browsers slow down when dealing with 32-bit numbers.\\n BigInteger.prototype.am = function am3(i, x, w, j, c, n) {\\n var xl = x & 0x3fff;\\n var xh = x >> 14;\\n while (--n >= 0) {\\n var l = this[i] & 0x3fff;\\n var h = this[i++] >> 14;\\n var m = xh * l + h * xl;\\n l = xl * l + ((m & 0x3fff) << 14) + w[j] + c;\\n c = (l >> 28) + (m >> 14) + xh * h;\\n w[j++] = l & 0xfffffff;\\n }\\n return c;\\n };\\n dbits = 28;\\n}\\nBigInteger.prototype.DB = dbits;\\nBigInteger.prototype.DM = ((1 << dbits) - 1);\\nBigInteger.prototype.DV = (1 << dbits);\\nvar BI_FP = 52;\\nBigInteger.prototype.FV = Math.pow(2, BI_FP);\\nBigInteger.prototype.F1 = BI_FP - dbits;\\nBigInteger.prototype.F2 = 2 * dbits - BI_FP;\\n// Digit conversions\\nvar BI_RC = [];\\nvar rr;\\nvar vv;\\nrr = "0".charCodeAt(0);\\nfor (vv = 0; vv <= 9; ++vv) {\\n BI_RC[rr++] = vv;\\n}\\nrr = "a".charCodeAt(0);\\nfor (vv = 10; vv < 36; ++vv) {\\n BI_RC[rr++] = vv;\\n}\\nrr = "A".charCodeAt(0);\\nfor (vv = 10; vv < 36; ++vv) {\\n BI_RC[rr++] = vv;\\n}\\nfunction intAt(s, i) {\\n var c = BI_RC[s.charCodeAt(i)];\\n return (c == null) ? -1 : c;\\n}\\n// return bigint initialized to value\\nfunction nbv(i) {\\n var r = nbi();\\n r.fromInt(i);\\n return r;\\n}\\n// returns bit length of the integer x\\nfunction nbits(x) {\\n var r = 1;\\n var t;\\n if ((t = x >>> 16) != 0) {\\n x = t;\\n r += 16;\\n }\\n if ((t = x >> 8) != 0) {\\n x = t;\\n r += 8;\\n }\\n if ((t = x >> 4) != 0) {\\n x = t;\\n r += 4;\\n }\\n if ((t = x >> 2) != 0) {\\n x = t;\\n r += 2;\\n }\\n if ((t = x >> 1) != 0) {\\n x = t;\\n r += 1;\\n }\\n return r;\\n}\\n// "constants"\\nBigInteger.ZERO = nbv(0);\\nBigInteger.ONE = nbv(1);\\n\\n\\n//# sourceURL=webpack://JSEncrypt/./lib/lib/jsbn/jsbn.js?\')},"./lib/lib/jsbn/prng4.js":(__unused_webpack_module,__webpack_exports__,__webpack_require__)=>{"use strict";eval(\'__webpack_require__.r(__webpack_exports__);\\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\\n/* harmony export */ "Arcfour": () => (/* binding */ Arcfour),\\n/* harmony export */ "prng_newstate": () => (/* binding */ prng_newstate),\\n/* harmony export */ "rng_psize": () => (/* binding */ rng_psize)\\n/* harmony export */ });\\n// prng4.js - uses Arcfour as a PRNG\\nvar Arcfour = /** @class */ (function () {\\n function Arcfour() {\\n this.i = 0;\\n this.j = 0;\\n this.S = [];\\n }\\n // Arcfour.prototype.init = ARC4init;\\n // Initialize arcfour context from key, an array of ints, each from [0..255]\\n Arcfour.prototype.init = function (key) {\\n var i;\\n var j;\\n var t;\\n for (i = 0; i < 256; ++i) {\\n this.S[i] = i;\\n }\\n j = 0;\\n for (i = 0; i < 256; ++i) {\\n j = (j + this.S[i] + key[i % key.length]) & 255;\\n t = this.S[i];\\n this.S[i] = this.S[j];\\n this.S[j] = t;\\n }\\n this.i = 0;\\n this.j = 0;\\n };\\n // Arcfour.prototype.next = ARC4next;\\n Arcfour.prototype.next = function () {\\n var t;\\n this.i = (this.i + 1) & 255;\\n this.j = (this.j + this.S[this.i]) & 255;\\n t = this.S[this.i];\\n this.S[this.i] = this.S[this.j];\\n this.S[this.j] = t;\\n return this.S[(t + this.S[this.i]) & 255];\\n };\\n return Arcfour;\\n}());\\n\\n// Plug in your RNG constructor here\\nfunction prng_newstate() {\\n return new Arcfour();\\n}\\n// Pool size must be a multiple of 4 and greater than 32.\\n// An array of bytes the size of the pool will be passed to init()\\nvar rng_psize = 256;\\n\\n\\n//# sourceURL=webpack://JSEncrypt/./lib/lib/jsbn/prng4.js?\')},"./lib/lib/jsbn/rng.js":(__unused_webpack_module,__webpack_exports__,__webpack_require__)=>{"use strict";eval(\'__webpack_require__.r(__webpack_exports__);\\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\\n/* harmony export */ "SecureRandom": () => (/* binding */ SecureRandom)\\n/* harmony export */ });\\n/* harmony import */ var _prng4__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./prng4 */ "./lib/lib/jsbn/prng4.js");\\n// Random number generator - requires a PRNG backend, e.g. prng4.js\\n\\nvar rng_state;\\nvar rng_pool = null;\\nvar rng_pptr;\\n// Initialize the pool with junk if needed.\\nif (rng_pool == null) {\\n rng_pool = [];\\n rng_pptr = 0;\\n var t = void 0;\\n if (typeof window !== \\\'undefined\\\' && window.crypto && window.crypto.getRandomValues) {\\n // Extract entropy (2048 bits) from RNG if available\\n var z = new Uint32Array(256);\\n window.crypto.getRandomValues(z);\\n for (t = 0; t < z.length; ++t) {\\n rng_pool[rng_pptr++] = z[t] & 255;\\n }\\n }\\n // Use mouse events for entropy, if we do not have enough entropy by the time\\n // we need it, entropy will be generated by Math.random.\\n var count = 0;\\n var onMouseMoveListener_1 = function (ev) {\\n count = count || 0;\\n if (count >= 256 || rng_pptr >= _prng4__WEBPACK_IMPORTED_MODULE_0__.rng_psize) {\\n if (window.removeEventListener) {\\n window.removeEventListener("mousemove", onMouseMoveListener_1, false);\\n }\\n else if (window.detachEvent) {\\n window.detachEvent("onmousemove", onMouseMoveListener_1);\\n }\\n return;\\n }\\n try {\\n var mouseCoordinates = ev.x + ev.y;\\n rng_pool[rng_pptr++] = mouseCoordinates & 255;\\n count += 1;\\n }\\n catch (e) {\\n // Sometimes Firefox will deny permission to access event properties for some reason. Ignore.\\n }\\n };\\n if (typeof window !== \\\'undefined\\\') {\\n if (window.addEventListener) {\\n window.addEventListener("mousemove", onMouseMoveListener_1, false);\\n }\\n else if (window.attachEvent) {\\n window.attachEvent("onmousemove", onMouseMoveListener_1);\\n }\\n }\\n}\\nfunction rng_get_byte() {\\n if (rng_state == null) {\\n rng_state = (0,_prng4__WEBPACK_IMPORTED_MODULE_0__.prng_newstate)();\\n // At this point, we may not have collected enough entropy. If not, fall back to Math.random\\n while (rng_pptr < _prng4__WEBPACK_IMPORTED_MODULE_0__.rng_psize) {\\n var random = Math.floor(65536 * Math.random());\\n rng_pool[rng_pptr++] = random & 255;\\n }\\n rng_state.init(rng_pool);\\n for (rng_pptr = 0; rng_pptr < rng_pool.length; ++rng_pptr) {\\n rng_pool[rng_pptr] = 0;\\n }\\n rng_pptr = 0;\\n }\\n // TODO: allow reseeding after first request\\n return rng_state.next();\\n}\\nvar SecureRandom = /** @class */ (function () {\\n function SecureRandom() {\\n }\\n SecureRandom.prototype.nextBytes = function (ba) {\\n for (var i = 0; i < ba.length; ++i) {\\n ba[i] = rng_get_byte();\\n }\\n };\\n return SecureRandom;\\n}());\\n\\n\\n\\n//# sourceURL=webpack://JSEncrypt/./lib/lib/jsbn/rng.js?\')},"./lib/lib/jsbn/rsa.js":(__unused_webpack_module,__webpack_exports__,__webpack_require__)=>{"use strict";eval(\'__webpack_require__.r(__webpack_exports__);\\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\\n/* harmony export */ "RSAKey": () => (/* binding */ RSAKey)\\n/* harmony export */ });\\n/* harmony import */ var _jsbn__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./jsbn */ "./lib/lib/jsbn/jsbn.js");\\n/* harmony import */ var _rng__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./rng */ "./lib/lib/jsbn/rng.js");\\n// Depends on jsbn.js and rng.js\\n// Version 1.1: support utf-8 encoding in pkcs1pad2\\n// convert a (hex) string to a bignum object\\n\\n\\n// function linebrk(s,n) {\\n// var ret = "";\\n// var i = 0;\\n// while(i + n < s.length) {\\n// ret += s.substring(i,i+n) + "\\\\n";\\n// i += n;\\n// }\\n// return ret + s.substring(i,s.length);\\n// }\\n// function byte2Hex(b) {\\n// if(b < 0x10)\\n// return "0" + b.toString(16);\\n// else\\n// return b.toString(16);\\n// }\\nfunction pkcs1pad1(s, n) {\\n if (n < s.length + 22) {\\n console.error("Message too long for RSA");\\n return null;\\n }\\n var len = n - s.length - 6;\\n var filler = "";\\n for (var f = 0; f < len; f += 2) {\\n filler += "ff";\\n }\\n var m = "0001" + filler + "00" + s;\\n return (0,_jsbn__WEBPACK_IMPORTED_MODULE_0__.parseBigInt)(m, 16);\\n}\\n// PKCS#1 (type 2, random) pad input string s to n bytes, and return a bigint\\nfunction pkcs1pad2(s, n) {\\n if (n < s.length + 11) { // TODO: fix for utf-8\\n console.error("Message too long for RSA");\\n return null;\\n }\\n var ba = [];\\n var i = s.length - 1;\\n while (i >= 0 && n > 0) {\\n var c = s.charCodeAt(i--);\\n if (c < 128) { // encode using utf-8\\n ba[--n] = c;\\n }\\n else if ((c > 127) && (c < 2048)) {\\n ba[--n] = (c & 63) | 128;\\n ba[--n] = (c >> 6) | 192;\\n }\\n else {\\n ba[--n] = (c & 63) | 128;\\n ba[--n] = ((c >> 6) & 63) | 128;\\n ba[--n] = (c >> 12) | 224;\\n }\\n }\\n ba[--n] = 0;\\n var rng = new _rng__WEBPACK_IMPORTED_MODULE_1__.SecureRandom();\\n var x = [];\\n while (n > 2) { // random non-zero pad\\n x[0] = 0;\\n while (x[0] == 0) {\\n rng.nextBytes(x);\\n }\\n ba[--n] = x[0];\\n }\\n ba[--n] = 2;\\n ba[--n] = 0;\\n return new _jsbn__WEBPACK_IMPORTED_MODULE_0__.BigInteger(ba);\\n}\\n// "empty" RSA key constructor\\nvar RSAKey = /** @class */ (function () {\\n function RSAKey() {\\n this.n = null;\\n this.e = 0;\\n this.d = null;\\n this.p = null;\\n this.q = null;\\n this.dmp1 = null;\\n this.dmq1 = null;\\n this.coeff = null;\\n }\\n //#region PROTECTED\\n // protected\\n // RSAKey.prototype.doPublic = RSADoPublic;\\n // Perform raw public operation on "x": return x^e (mod n)\\n RSAKey.prototype.doPublic = function (x) {\\n return x.modPowInt(this.e, this.n);\\n };\\n // RSAKey.prototype.doPrivate = RSADoPrivate;\\n // Perform raw private operation on "x": return x^d (mod n)\\n RSAKey.prototype.doPrivate = function (x) {\\n if (this.p == null || this.q == null) {\\n return x.modPow(this.d, this.n);\\n }\\n // TODO: re-calculate any missing CRT params\\n var xp = x.mod(this.p).modPow(this.dmp1, this.p);\\n var xq = x.mod(this.q).modPow(this.dmq1, this.q);\\n while (xp.compareTo(xq) < 0) {\\n xp = xp.add(this.p);\\n }\\n return xp.subtract(xq).multiply(this.coeff).mod(this.p).multiply(this.q).add(xq);\\n };\\n //#endregion PROTECTED\\n //#region PUBLIC\\n // RSAKey.prototype.setPublic = RSASetPublic;\\n // Set the public key fields N and e from hex strings\\n RSAKey.prototype.setPublic = function (N, E) {\\n if (N != null && E != null && N.length > 0 && E.length > 0) {\\n this.n = (0,_jsbn__WEBPACK_IMPORTED_MODULE_0__.parseBigInt)(N, 16);\\n this.e = parseInt(E, 16);\\n }\\n else {\\n console.error("Invalid RSA public key");\\n }\\n };\\n // RSAKey.prototype.encrypt = RSAEncrypt;\\n // Return the PKCS#1 RSA encryption of "text" as an even-length hex string\\n RSAKey.prototype.encrypt = function (text) {\\n var maxLength = (this.n.bitLength() + 7) >> 3;\\n var m = pkcs1pad2(text, maxLength);\\n if (m == null) {\\n return null;\\n }\\n var c = this.doPublic(m);\\n if (c == null) {\\n return null;\\n }\\n var h = c.toString(16);\\n var length = h.length;\\n // fix zero before result\\n for (var i = 0; i < maxLength * 2 - length; i++) {\\n h = "0" + h;\\n }\\n return h;\\n };\\n // RSAKey.prototype.setPrivate = RSASetPrivate;\\n // Set the private key fields N, e, and d from hex strings\\n RSAKey.prototype.setPrivate = function (N, E, D) {\\n if (N != null && E != null && N.length > 0 && E.length > 0) {\\n this.n = (0,_jsbn__WEBPACK_IMPORTED_MODULE_0__.parseBigInt)(N, 16);\\n this.e = parseInt(E, 16);\\n this.d = (0,_jsbn__WEBPACK_IMPORTED_MODULE_0__.parseBigInt)(D, 16);\\n }\\n else {\\n console.error("Invalid RSA private key");\\n }\\n };\\n // RSAKey.prototype.setPrivateEx = RSASetPrivateEx;\\n // Set the private key fields N, e, d and CRT params from hex strings\\n RSAKey.prototype.setPrivateEx = function (N, E, D, P, Q, DP, DQ, C) {\\n if (N != null && E != null && N.length > 0 && E.length > 0) {\\n this.n = (0,_jsbn__WEBPACK_IMPORTED_MODULE_0__.parseBigInt)(N, 16);\\n this.e = parseInt(E, 16);\\n this.d = (0,_jsbn__WEBPACK_IMPORTED_MODULE_0__.parseBigInt)(D, 16);\\n this.p = (0,_jsbn__WEBPACK_IMPORTED_MODULE_0__.parseBigInt)(P, 16);\\n this.q = (0,_jsbn__WEBPACK_IMPORTED_MODULE_0__.parseBigInt)(Q, 16);\\n this.dmp1 = (0,_jsbn__WEBPACK_IMPORTED_MODULE_0__.parseBigInt)(DP, 16);\\n this.dmq1 = (0,_jsbn__WEBPACK_IMPORTED_MODULE_0__.parseBigInt)(DQ, 16);\\n this.coeff = (0,_jsbn__WEBPACK_IMPORTED_MODULE_0__.parseBigInt)(C, 16);\\n }\\n else {\\n console.error("Invalid RSA private key");\\n }\\n };\\n // RSAKey.prototype.generate = RSAGenerate;\\n // Generate a new random private key B bits long, using public expt E\\n RSAKey.prototype.generate = function (B, E) {\\n var rng = new _rng__WEBPACK_IMPORTED_MODULE_1__.SecureRandom();\\n var qs = B >> 1;\\n this.e = parseInt(E, 16);\\n var ee = new _jsbn__WEBPACK_IMPORTED_MODULE_0__.BigInteger(E, 16);\\n for (;;) {\\n for (;;) {\\n this.p = new _jsbn__WEBPACK_IMPORTED_MODULE_0__.BigInteger(B - qs, 1, rng);\\n if (this.p.subtract(_jsbn__WEBPACK_IMPORTED_MODULE_0__.BigInteger.ONE).gcd(ee).compareTo(_jsbn__WEBPACK_IMPORTED_MODULE_0__.BigInteger.ONE) == 0 && this.p.isProbablePrime(10)) {\\n break;\\n }\\n }\\n for (;;) {\\n this.q = new _jsbn__WEBPACK_IMPORTED_MODULE_0__.BigInteger(qs, 1, rng);\\n if (this.q.subtract(_jsbn__WEBPACK_IMPORTED_MODULE_0__.BigInteger.ONE).gcd(ee).compareTo(_jsbn__WEBPACK_IMPORTED_MODULE_0__.BigInteger.ONE) == 0 && this.q.isProbablePrime(10)) {\\n break;\\n }\\n }\\n if (this.p.compareTo(this.q) <= 0) {\\n var t = this.p;\\n this.p = this.q;\\n this.q = t;\\n }\\n var p1 = this.p.subtract(_jsbn__WEBPACK_IMPORTED_MODULE_0__.BigInteger.ONE);\\n var q1 = this.q.subtract(_jsbn__WEBPACK_IMPORTED_MODULE_0__.BigInteger.ONE);\\n var phi = p1.multiply(q1);\\n if (phi.gcd(ee).compareTo(_jsbn__WEBPACK_IMPORTED_MODULE_0__.BigInteger.ONE) == 0) {\\n this.n = this.p.multiply(this.q);\\n this.d = ee.modInverse(phi);\\n this.dmp1 = this.d.mod(p1);\\n this.dmq1 = this.d.mod(q1);\\n this.coeff = this.q.modInverse(this.p);\\n break;\\n }\\n }\\n };\\n // RSAKey.prototype.decrypt = RSADecrypt;\\n // Return the PKCS#1 RSA decryption of "ctext".\\n // "ctext" is an even-length hex string and the output is a plain string.\\n RSAKey.prototype.decrypt = function (ctext) {\\n var c = (0,_jsbn__WEBPACK_IMPORTED_MODULE_0__.parseBigInt)(ctext, 16);\\n var m = this.doPrivate(c);\\n if (m == null) {\\n return null;\\n }\\n return pkcs1unpad2(m, (this.n.bitLength() + 7) >> 3);\\n };\\n // Generate a new random private key B bits long, using public expt E\\n RSAKey.prototype.generateAsync = function (B, E, callback) {\\n var rng = new _rng__WEBPACK_IMPORTED_MODULE_1__.SecureRandom();\\n var qs = B >> 1;\\n this.e = parseInt(E, 16);\\n var ee = new _jsbn__WEBPACK_IMPORTED_MODULE_0__.BigInteger(E, 16);\\n var rsa = this;\\n // These functions have non-descript names because they were originally for(;;) loops.\\n // I don\\\'t know about cryptography to give them better names than loop1-4.\\n var loop1 = function () {\\n var loop4 = function () {\\n if (rsa.p.compareTo(rsa.q) <= 0) {\\n var t = rsa.p;\\n rsa.p = rsa.q;\\n rsa.q = t;\\n }\\n var p1 = rsa.p.subtract(_jsbn__WEBPACK_IMPORTED_MODULE_0__.BigInteger.ONE);\\n var q1 = rsa.q.subtract(_jsbn__WEBPACK_IMPORTED_MODULE_0__.BigInteger.ONE);\\n var phi = p1.multiply(q1);\\n if (phi.gcd(ee).compareTo(_jsbn__WEBPACK_IMPORTED_MODULE_0__.BigInteger.ONE) == 0) {\\n rsa.n = rsa.p.multiply(rsa.q);\\n rsa.d = ee.modInverse(phi);\\n rsa.dmp1 = rsa.d.mod(p1);\\n rsa.dmq1 = rsa.d.mod(q1);\\n rsa.coeff = rsa.q.modInverse(rsa.p);\\n setTimeout(function () { callback(); }, 0); // escape\\n }\\n else {\\n setTimeout(loop1, 0);\\n }\\n };\\n var loop3 = function () {\\n rsa.q = (0,_jsbn__WEBPACK_IMPORTED_MODULE_0__.nbi)();\\n rsa.q.fromNumberAsync(qs, 1, rng, function () {\\n rsa.q.subtract(_jsbn__WEBPACK_IMPORTED_MODULE_0__.BigInteger.ONE).gcda(ee, function (r) {\\n if (r.compareTo(_jsbn__WEBPACK_IMPORTED_MODULE_0__.BigInteger.ONE) == 0 && rsa.q.isProbablePrime(10)) {\\n setTimeout(loop4, 0);\\n }\\n else {\\n setTimeout(loop3, 0);\\n }\\n });\\n });\\n };\\n var loop2 = function () {\\n rsa.p = (0,_jsbn__WEBPACK_IMPORTED_MODULE_0__.nbi)();\\n rsa.p.fromNumberAsync(B - qs, 1, rng, function () {\\n rsa.p.subtract(_jsbn__WEBPACK_IMPORTED_MODULE_0__.BigInteger.ONE).gcda(ee, function (r) {\\n if (r.compareTo(_jsbn__WEBPACK_IMPORTED_MODULE_0__.BigInteger.ONE) == 0 && rsa.p.isProbablePrime(10)) {\\n setTimeout(loop3, 0);\\n }\\n else {\\n setTimeout(loop2, 0);\\n }\\n });\\n });\\n };\\n setTimeout(loop2, 0);\\n };\\n setTimeout(loop1, 0);\\n };\\n RSAKey.prototype.sign = function (text, digestMethod, digestName) {\\n var header = getDigestHeader(digestName);\\n var digest = header + digestMethod(text).toString();\\n var m = pkcs1pad1(digest, this.n.bitLength() / 4);\\n if (m == null) {\\n return null;\\n }\\n var c = this.doPrivate(m);\\n if (c == null) {\\n return null;\\n }\\n var h = c.toString(16);\\n if ((h.length & 1) == 0) {\\n return h;\\n }\\n else {\\n return "0" + h;\\n }\\n };\\n RSAKey.prototype.verify = function (text, signature, digestMethod) {\\n var c = (0,_jsbn__WEBPACK_IMPORTED_MODULE_0__.parseBigInt)(signature, 16);\\n var m = this.doPublic(c);\\n if (m == null) {\\n return null;\\n }\\n var unpadded = m.toString(16).replace(/^1f+00/, "");\\n var digest = removeDigestHeader(unpadded);\\n return digest == digestMethod(text).toString();\\n };\\n return RSAKey;\\n}());\\n\\n// Undo PKCS#1 (type 2, random) padding and, if valid, return the plaintext\\nfunction pkcs1unpad2(d, n) {\\n var b = d.toByteArray();\\n var i = 0;\\n while (i < b.length && b[i] == 0) {\\n ++i;\\n }\\n if (b.length - i != n - 1 || b[i] != 2) {\\n return null;\\n }\\n ++i;\\n while (b[i] != 0) {\\n if (++i >= b.length) {\\n return null;\\n }\\n }\\n var ret = "";\\n while (++i < b.length) {\\n var c = b[i] & 255;\\n if (c < 128) { // utf-8 decode\\n ret += String.fromCharCode(c);\\n }\\n else if ((c > 191) && (c < 224)) {\\n ret += String.fromCharCode(((c & 31) << 6) | (b[i + 1] & 63));\\n ++i;\\n }\\n else {\\n ret += String.fromCharCode(((c & 15) << 12) | ((b[i + 1] & 63) << 6) | (b[i + 2] & 63));\\n i += 2;\\n }\\n }\\n return ret;\\n}\\n// https://tools.ietf.org/html/rfc3447#page-43\\nvar DIGEST_HEADERS = {\\n md2: "3020300c06082a864886f70d020205000410",\\n md5: "3020300c06082a864886f70d020505000410",\\n sha1: "3021300906052b0e03021a05000414",\\n sha224: "302d300d06096086480165030402040500041c",\\n sha256: "3031300d060960864801650304020105000420",\\n sha384: "3041300d060960864801650304020205000430",\\n sha512: "3051300d060960864801650304020305000440",\\n ripemd160: "3021300906052b2403020105000414"\\n};\\nfunction getDigestHeader(name) {\\n return DIGEST_HEADERS[name] || "";\\n}\\nfunction removeDigestHeader(str) {\\n for (var name_1 in DIGEST_HEADERS) {\\n if (DIGEST_HEADERS.hasOwnProperty(name_1)) {\\n var header = DIGEST_HEADERS[name_1];\\n var len = header.length;\\n if (str.substr(0, len) == header) {\\n return str.substr(len);\\n }\\n }\\n }\\n return str;\\n}\\n// Return the PKCS#1 RSA encryption of "text" as a Base64-encoded string\\n// function RSAEncryptB64(text) {\\n// var h = this.encrypt(text);\\n// if(h) return hex2b64(h); else return null;\\n// }\\n// public\\n// RSAKey.prototype.encrypt_b64 = RSAEncryptB64;\\n\\n\\n//# sourceURL=webpack://JSEncrypt/./lib/lib/jsbn/rsa.js?\')},"./lib/lib/jsbn/util.js":(__unused_webpack_module,__webpack_exports__,__webpack_require__)=>{"use strict";eval(\'__webpack_require__.r(__webpack_exports__);\\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\\n/* harmony export */ "cbit": () => (/* binding */ cbit),\\n/* harmony export */ "int2char": () => (/* binding */ int2char),\\n/* harmony export */ "lbit": () => (/* binding */ lbit),\\n/* harmony export */ "op_and": () => (/* binding */ op_and),\\n/* harmony export */ "op_andnot": () => (/* binding */ op_andnot),\\n/* harmony export */ "op_or": () => (/* binding */ op_or),\\n/* harmony export */ "op_xor": () => (/* binding */ op_xor)\\n/* harmony export */ });\\nvar BI_RM = "0123456789abcdefghijklmnopqrstuvwxyz";\\nfunction int2char(n) {\\n return BI_RM.charAt(n);\\n}\\n//#region BIT_OPERATIONS\\n// (public) this & a\\nfunction op_and(x, y) {\\n return x & y;\\n}\\n// (public) this | a\\nfunction op_or(x, y) {\\n return x | y;\\n}\\n// (public) this ^ a\\nfunction op_xor(x, y) {\\n return x ^ y;\\n}\\n// (public) this & ~a\\nfunction op_andnot(x, y) {\\n return x & ~y;\\n}\\n// return index of lowest 1-bit in x, x < 2^31\\nfunction lbit(x) {\\n if (x == 0) {\\n return -1;\\n }\\n var r = 0;\\n if ((x & 0xffff) == 0) {\\n x >>= 16;\\n r += 16;\\n }\\n if ((x & 0xff) == 0) {\\n x >>= 8;\\n r += 8;\\n }\\n if ((x & 0xf) == 0) {\\n x >>= 4;\\n r += 4;\\n }\\n if ((x & 3) == 0) {\\n x >>= 2;\\n r += 2;\\n }\\n if ((x & 1) == 0) {\\n ++r;\\n }\\n return r;\\n}\\n// return number of 1 bits in x\\nfunction cbit(x) {\\n var r = 0;\\n while (x != 0) {\\n x &= x - 1;\\n ++r;\\n }\\n return r;\\n}\\n//#endregion BIT_OPERATIONS\\n\\n\\n//# sourceURL=webpack://JSEncrypt/./lib/lib/jsbn/util.js?\')},"./lib/lib/jsrsasign/asn1-1.0.js":(__unused_webpack_module,__webpack_exports__,__webpack_require__)=>{"use strict";eval("__webpack_require__.r(__webpack_exports__);\\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\\n/* harmony export */ \\"KJUR\\": () => (/* binding */ KJUR)\\n/* harmony export */ });\\n/* harmony import */ var _jsbn_jsbn__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../jsbn/jsbn */ \\"./lib/lib/jsbn/jsbn.js\\");\\n/* harmony import */ var _yahoo__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./yahoo */ \\"./lib/lib/jsrsasign/yahoo.js\\");\\n/* asn1-1.0.13.js (c) 2013-2017 Kenji Urushima | kjur.github.com/jsrsasign/license\\n */\\n/*\\n * asn1.js - ASN.1 DER encoder classes\\n *\\n * Copyright (c) 2013-2017 Kenji Urushima (kenji.urushima@gmail.com)\\n *\\n * This software is licensed under the terms of the MIT License.\\n * https://kjur.github.io/jsrsasign/license\\n *\\n * The above copyright and license notice shall be\\n * included in all copies or substantial portions of the Software.\\n */\\n\\n\\n/**\\n * @fileOverview\\n * @name asn1-1.0.js\\n * @author Kenji Urushima kenji.urushima@gmail.com\\n * @version asn1 1.0.13 (2017-Jun-02)\\n * @since jsrsasign 2.1\\n * @license MIT License\\n */\\n/**\\n * kjur\'s class library name space\\n *

\\n * This name space provides following name spaces:\\n *

    \\n *
  • {@link KJUR.asn1} - ASN.1 primitive hexadecimal encoder
  • \\n *
  • {@link KJUR.asn1.x509} - ASN.1 structure for X.509 certificate and CRL
  • \\n *
  • {@link KJUR.crypto} - Java Cryptographic Extension(JCE) style MessageDigest/Signature\\n * class and utilities
  • \\n *
\\n *

\\n * NOTE: Please ignore method summary and document of this namespace. This caused by a bug of jsdoc2.\\n * @name KJUR\\n * @namespace kjur\'s class library name space\\n */\\nvar KJUR = {};\\n/**\\n * kjur\'s ASN.1 class library name space\\n *

\\n * This is ITU-T X.690 ASN.1 DER encoder class library and\\n * class structure and methods is very similar to\\n * org.bouncycastle.asn1 package of\\n * well known BouncyCaslte Cryptography Library.\\n *

PROVIDING ASN.1 PRIMITIVES

\\n * Here are ASN.1 DER primitive classes.\\n *
    \\n *
  • 0x01 {@link KJUR.asn1.DERBoolean}
  • \\n *
  • 0x02 {@link KJUR.asn1.DERInteger}
  • \\n *
  • 0x03 {@link KJUR.asn1.DERBitString}
  • \\n *
  • 0x04 {@link KJUR.asn1.DEROctetString}
  • \\n *
  • 0x05 {@link KJUR.asn1.DERNull}
  • \\n *
  • 0x06 {@link KJUR.asn1.DERObjectIdentifier}
  • \\n *
  • 0x0a {@link KJUR.asn1.DEREnumerated}
  • \\n *
  • 0x0c {@link KJUR.asn1.DERUTF8String}
  • \\n *
  • 0x12 {@link KJUR.asn1.DERNumericString}
  • \\n *
  • 0x13 {@link KJUR.asn1.DERPrintableString}
  • \\n *
  • 0x14 {@link KJUR.asn1.DERTeletexString}
  • \\n *
  • 0x16 {@link KJUR.asn1.DERIA5String}
  • \\n *
  • 0x17 {@link KJUR.asn1.DERUTCTime}
  • \\n *
  • 0x18 {@link KJUR.asn1.DERGeneralizedTime}
  • \\n *
  • 0x30 {@link KJUR.asn1.DERSequence}
  • \\n *
  • 0x31 {@link KJUR.asn1.DERSet}
  • \\n *
\\n *

OTHER ASN.1 CLASSES

\\n *
    \\n *
  • {@link KJUR.asn1.ASN1Object}
  • \\n *
  • {@link KJUR.asn1.DERAbstractString}
  • \\n *
  • {@link KJUR.asn1.DERAbstractTime}
  • \\n *
  • {@link KJUR.asn1.DERAbstractStructured}
  • \\n *
  • {@link KJUR.asn1.DERTaggedObject}
  • \\n *
\\n *

SUB NAME SPACES

\\n *
    \\n *
  • {@link KJUR.asn1.cades} - CAdES long term signature format
  • \\n *
  • {@link KJUR.asn1.cms} - Cryptographic Message Syntax
  • \\n *
  • {@link KJUR.asn1.csr} - Certificate Signing Request (CSR/PKCS#10)
  • \\n *
  • {@link KJUR.asn1.tsp} - RFC 3161 Timestamping Protocol Format
  • \\n *
  • {@link KJUR.asn1.x509} - RFC 5280 X.509 certificate and CRL
  • \\n *
\\n *

\\n * NOTE: Please ignore method summary and document of this namespace.\\n * This caused by a bug of jsdoc2.\\n * @name KJUR.asn1\\n * @namespace\\n */\\nif (typeof KJUR.asn1 == \\"undefined\\" || !KJUR.asn1)\\n KJUR.asn1 = {};\\n/**\\n * ASN1 utilities class\\n * @name KJUR.asn1.ASN1Util\\n * @class ASN1 utilities class\\n * @since asn1 1.0.2\\n */\\nKJUR.asn1.ASN1Util = new function () {\\n this.integerToByteHex = function (i) {\\n var h = i.toString(16);\\n if ((h.length % 2) == 1)\\n h = \'0\' + h;\\n return h;\\n };\\n this.bigIntToMinTwosComplementsHex = function (bigIntegerValue) {\\n var h = bigIntegerValue.toString(16);\\n if (h.substr(0, 1) != \'-\') {\\n if (h.length % 2 == 1) {\\n h = \'0\' + h;\\n }\\n else {\\n if (!h.match(/^[0-7]/)) {\\n h = \'00\' + h;\\n }\\n }\\n }\\n else {\\n var hPos = h.substr(1);\\n var xorLen = hPos.length;\\n if (xorLen % 2 == 1) {\\n xorLen += 1;\\n }\\n else {\\n if (!h.match(/^[0-7]/)) {\\n xorLen += 2;\\n }\\n }\\n var hMask = \'\';\\n for (var i = 0; i < xorLen; i++) {\\n hMask += \'f\';\\n }\\n var biMask = new _jsbn_jsbn__WEBPACK_IMPORTED_MODULE_0__.BigInteger(hMask, 16);\\n var biNeg = biMask.xor(bigIntegerValue).add(_jsbn_jsbn__WEBPACK_IMPORTED_MODULE_0__.BigInteger.ONE);\\n h = biNeg.toString(16).replace(/^-/, \'\');\\n }\\n return h;\\n };\\n /**\\n * get PEM string from hexadecimal data and header string\\n * @name getPEMStringFromHex\\n * @memberOf KJUR.asn1.ASN1Util\\n * @function\\n * @param {String} dataHex hexadecimal string of PEM body\\n * @param {String} pemHeader PEM header string (ex. \'RSA PRIVATE KEY\')\\n * @return {String} PEM formatted string of input data\\n * @description\\n * This method converts a hexadecimal string to a PEM string with\\n * a specified header. Its line break will be CRLF(\\"\\\\r\\\\n\\").\\n * @example\\n * var pem = KJUR.asn1.ASN1Util.getPEMStringFromHex(\'616161\', \'RSA PRIVATE KEY\');\\n * // value of pem will be:\\n * -----BEGIN PRIVATE KEY-----\\n * YWFh\\n * -----END PRIVATE KEY-----\\n */\\n this.getPEMStringFromHex = function (dataHex, pemHeader) {\\n return hextopem(dataHex, pemHeader);\\n };\\n /**\\n * generate ASN1Object specifed by JSON parameters\\n * @name newObject\\n * @memberOf KJUR.asn1.ASN1Util\\n * @function\\n * @param {Array} param JSON parameter to generate ASN1Object\\n * @return {KJUR.asn1.ASN1Object} generated object\\n * @since asn1 1.0.3\\n * @description\\n * generate any ASN1Object specified by JSON param\\n * including ASN.1 primitive or structured.\\n * Generally \'param\' can be described as follows:\\n *
\\n * {TYPE-OF-ASNOBJ: ASN1OBJ-PARAMETER}\\n *
\\n * \'TYPE-OF-ASN1OBJ\' can be one of following symbols:\\n *
    \\n *
  • \'bool\' - DERBoolean
  • \\n *
  • \'int\' - DERInteger
  • \\n *
  • \'bitstr\' - DERBitString
  • \\n *
  • \'octstr\' - DEROctetString
  • \\n *
  • \'null\' - DERNull
  • \\n *
  • \'oid\' - DERObjectIdentifier
  • \\n *
  • \'enum\' - DEREnumerated
  • \\n *
  • \'utf8str\' - DERUTF8String
  • \\n *
  • \'numstr\' - DERNumericString
  • \\n *
  • \'prnstr\' - DERPrintableString
  • \\n *
  • \'telstr\' - DERTeletexString
  • \\n *
  • \'ia5str\' - DERIA5String
  • \\n *
  • \'utctime\' - DERUTCTime
  • \\n *
  • \'gentime\' - DERGeneralizedTime
  • \\n *
  • \'seq\' - DERSequence
  • \\n *
  • \'set\' - DERSet
  • \\n *
  • \'tag\' - DERTaggedObject
  • \\n *
\\n * @example\\n * newObject({\'prnstr\': \'aaa\'});\\n * newObject({\'seq\': [{\'int\': 3}, {\'prnstr\': \'aaa\'}]})\\n * // ASN.1 Tagged Object\\n * newObject({\'tag\': {\'tag\': \'a1\',\\n * \'explicit\': true,\\n * \'obj\': {\'seq\': [{\'int\': 3}, {\'prnstr\': \'aaa\'}]}}});\\n * // more simple representation of ASN.1 Tagged Object\\n * newObject({\'tag\': [\'a1\',\\n * true,\\n * {\'seq\': [\\n * {\'int\': 3},\\n * {\'prnstr\': \'aaa\'}]}\\n * ]});\\n */\\n this.newObject = function (param) {\\n var _KJUR = KJUR, _KJUR_asn1 = _KJUR.asn1, _DERBoolean = _KJUR_asn1.DERBoolean, _DERInteger = _KJUR_asn1.DERInteger, _DERBitString = _KJUR_asn1.DERBitString, _DEROctetString = _KJUR_asn1.DEROctetString, _DERNull = _KJUR_asn1.DERNull, _DERObjectIdentifier = _KJUR_asn1.DERObjectIdentifier, _DEREnumerated = _KJUR_asn1.DEREnumerated, _DERUTF8String = _KJUR_asn1.DERUTF8String, _DERNumericString = _KJUR_asn1.DERNumericString, _DERPrintableString = _KJUR_asn1.DERPrintableString, _DERTeletexString = _KJUR_asn1.DERTeletexString, _DERIA5String = _KJUR_asn1.DERIA5String, _DERUTCTime = _KJUR_asn1.DERUTCTime, _DERGeneralizedTime = _KJUR_asn1.DERGeneralizedTime, _DERSequence = _KJUR_asn1.DERSequence, _DERSet = _KJUR_asn1.DERSet, _DERTaggedObject = _KJUR_asn1.DERTaggedObject, _newObject = _KJUR_asn1.ASN1Util.newObject;\\n var keys = Object.keys(param);\\n if (keys.length != 1)\\n throw \\"key of param shall be only one.\\";\\n var key = keys[0];\\n if (\\":bool:int:bitstr:octstr:null:oid:enum:utf8str:numstr:prnstr:telstr:ia5str:utctime:gentime:seq:set:tag:\\".indexOf(\\":\\" + key + \\":\\") == -1)\\n throw \\"undefined key: \\" + key;\\n if (key == \\"bool\\")\\n return new _DERBoolean(param[key]);\\n if (key == \\"int\\")\\n return new _DERInteger(param[key]);\\n if (key == \\"bitstr\\")\\n return new _DERBitString(param[key]);\\n if (key == \\"octstr\\")\\n return new _DEROctetString(param[key]);\\n if (key == \\"null\\")\\n return new _DERNull(param[key]);\\n if (key == \\"oid\\")\\n return new _DERObjectIdentifier(param[key]);\\n if (key == \\"enum\\")\\n return new _DEREnumerated(param[key]);\\n if (key == \\"utf8str\\")\\n return new _DERUTF8String(param[key]);\\n if (key == \\"numstr\\")\\n return new _DERNumericString(param[key]);\\n if (key == \\"prnstr\\")\\n return new _DERPrintableString(param[key]);\\n if (key == \\"telstr\\")\\n return new _DERTeletexString(param[key]);\\n if (key == \\"ia5str\\")\\n return new _DERIA5String(param[key]);\\n if (key == \\"utctime\\")\\n return new _DERUTCTime(param[key]);\\n if (key == \\"gentime\\")\\n return new _DERGeneralizedTime(param[key]);\\n if (key == \\"seq\\") {\\n var paramList = param[key];\\n var a = [];\\n for (var i = 0; i < paramList.length; i++) {\\n var asn1Obj = _newObject(paramList[i]);\\n a.push(asn1Obj);\\n }\\n return new _DERSequence({ \'array\': a });\\n }\\n if (key == \\"set\\") {\\n var paramList = param[key];\\n var a = [];\\n for (var i = 0; i < paramList.length; i++) {\\n var asn1Obj = _newObject(paramList[i]);\\n a.push(asn1Obj);\\n }\\n return new _DERSet({ \'array\': a });\\n }\\n if (key == \\"tag\\") {\\n var tagParam = param[key];\\n if (Object.prototype.toString.call(tagParam) === \'[object Array]\' &&\\n tagParam.length == 3) {\\n var obj = _newObject(tagParam[2]);\\n return new _DERTaggedObject({ tag: tagParam[0],\\n explicit: tagParam[1],\\n obj: obj });\\n }\\n else {\\n var newParam = {};\\n if (tagParam.explicit !== undefined)\\n newParam.explicit = tagParam.explicit;\\n if (tagParam.tag !== undefined)\\n newParam.tag = tagParam.tag;\\n if (tagParam.obj === undefined)\\n throw \\"obj shall be specified for \'tag\'.\\";\\n newParam.obj = _newObject(tagParam.obj);\\n return new _DERTaggedObject(newParam);\\n }\\n }\\n };\\n /**\\n * get encoded hexadecimal string of ASN1Object specifed by JSON parameters\\n * @name jsonToASN1HEX\\n * @memberOf KJUR.asn1.ASN1Util\\n * @function\\n * @param {Array} param JSON parameter to generate ASN1Object\\n * @return hexadecimal string of ASN1Object\\n * @since asn1 1.0.4\\n * @description\\n * As for ASN.1 object representation of JSON object,\\n * please see {@link newObject}.\\n * @example\\n * jsonToASN1HEX({\'prnstr\': \'aaa\'});\\n */\\n this.jsonToASN1HEX = function (param) {\\n var asn1Obj = this.newObject(param);\\n return asn1Obj.getEncodedHex();\\n };\\n};\\n/**\\n * get dot noted oid number string from hexadecimal value of OID\\n * @name oidHexToInt\\n * @memberOf KJUR.asn1.ASN1Util\\n * @function\\n * @param {String} hex hexadecimal value of object identifier\\n * @return {String} dot noted string of object identifier\\n * @since jsrsasign 4.8.3 asn1 1.0.7\\n * @description\\n * This static method converts from hexadecimal string representation of\\n * ASN.1 value of object identifier to oid number string.\\n * @example\\n * KJUR.asn1.ASN1Util.oidHexToInt(\'550406\') → \\"2.5.4.6\\"\\n */\\nKJUR.asn1.ASN1Util.oidHexToInt = function (hex) {\\n var s = \\"\\";\\n var i01 = parseInt(hex.substr(0, 2), 16);\\n var i0 = Math.floor(i01 / 40);\\n var i1 = i01 % 40;\\n var s = i0 + \\".\\" + i1;\\n var binbuf = \\"\\";\\n for (var i = 2; i < hex.length; i += 2) {\\n var value = parseInt(hex.substr(i, 2), 16);\\n var bin = (\\"00000000\\" + value.toString(2)).slice(-8);\\n binbuf = binbuf + bin.substr(1, 7);\\n if (bin.substr(0, 1) == \\"0\\") {\\n var bi = new _jsbn_jsbn__WEBPACK_IMPORTED_MODULE_0__.BigInteger(binbuf, 2);\\n s = s + \\".\\" + bi.toString(10);\\n binbuf = \\"\\";\\n }\\n }\\n ;\\n return s;\\n};\\n/**\\n * get hexadecimal value of object identifier from dot noted oid value\\n * @name oidIntToHex\\n * @memberOf KJUR.asn1.ASN1Util\\n * @function\\n * @param {String} oidString dot noted string of object identifier\\n * @return {String} hexadecimal value of object identifier\\n * @since jsrsasign 4.8.3 asn1 1.0.7\\n * @description\\n * This static method converts from object identifier value string.\\n * to hexadecimal string representation of it.\\n * @example\\n * KJUR.asn1.ASN1Util.oidIntToHex(\\"2.5.4.6\\") → \\"550406\\"\\n */\\nKJUR.asn1.ASN1Util.oidIntToHex = function (oidString) {\\n var itox = function (i) {\\n var h = i.toString(16);\\n if (h.length == 1)\\n h = \'0\' + h;\\n return h;\\n };\\n var roidtox = function (roid) {\\n var h = \'\';\\n var bi = new _jsbn_jsbn__WEBPACK_IMPORTED_MODULE_0__.BigInteger(roid, 10);\\n var b = bi.toString(2);\\n var padLen = 7 - b.length % 7;\\n if (padLen == 7)\\n padLen = 0;\\n var bPad = \'\';\\n for (var i = 0; i < padLen; i++)\\n bPad += \'0\';\\n b = bPad + b;\\n for (var i = 0; i < b.length - 1; i += 7) {\\n var b8 = b.substr(i, 7);\\n if (i != b.length - 7)\\n b8 = \'1\' + b8;\\n h += itox(parseInt(b8, 2));\\n }\\n return h;\\n };\\n if (!oidString.match(/^[0-9.]+$/)) {\\n throw \\"malformed oid string: \\" + oidString;\\n }\\n var h = \'\';\\n var a = oidString.split(\'.\');\\n var i0 = parseInt(a[0]) * 40 + parseInt(a[1]);\\n h += itox(i0);\\n a.splice(0, 2);\\n for (var i = 0; i < a.length; i++) {\\n h += roidtox(a[i]);\\n }\\n return h;\\n};\\n// ********************************************************************\\n// Abstract ASN.1 Classes\\n// ********************************************************************\\n// ********************************************************************\\n/**\\n * base class for ASN.1 DER encoder object\\n * @name KJUR.asn1.ASN1Object\\n * @class base class for ASN.1 DER encoder object\\n * @property {Boolean} isModified flag whether internal data was changed\\n * @property {String} hTLV hexadecimal string of ASN.1 TLV\\n * @property {String} hT hexadecimal string of ASN.1 TLV tag(T)\\n * @property {String} hL hexadecimal string of ASN.1 TLV length(L)\\n * @property {String} hV hexadecimal string of ASN.1 TLV value(V)\\n * @description\\n */\\nKJUR.asn1.ASN1Object = function () {\\n var isModified = true;\\n var hTLV = null;\\n var hT = \'00\';\\n var hL = \'00\';\\n var hV = \'\';\\n /**\\n * get hexadecimal ASN.1 TLV length(L) bytes from TLV value(V)\\n * @name getLengthHexFromValue\\n * @memberOf KJUR.asn1.ASN1Object#\\n * @function\\n * @return {String} hexadecimal string of ASN.1 TLV length(L)\\n */\\n this.getLengthHexFromValue = function () {\\n if (typeof this.hV == \\"undefined\\" || this.hV == null) {\\n throw \\"this.hV is null or undefined.\\";\\n }\\n if (this.hV.length % 2 == 1) {\\n throw \\"value hex must be even length: n=\\" + hV.length + \\",v=\\" + this.hV;\\n }\\n var n = this.hV.length / 2;\\n var hN = n.toString(16);\\n if (hN.length % 2 == 1) {\\n hN = \\"0\\" + hN;\\n }\\n if (n < 128) {\\n return hN;\\n }\\n else {\\n var hNlen = hN.length / 2;\\n if (hNlen > 15) {\\n throw \\"ASN.1 length too long to represent by 8x: n = \\" + n.toString(16);\\n }\\n var head = 128 + hNlen;\\n return head.toString(16) + hN;\\n }\\n };\\n /**\\n * get hexadecimal string of ASN.1 TLV bytes\\n * @name getEncodedHex\\n * @memberOf KJUR.asn1.ASN1Object#\\n * @function\\n * @return {String} hexadecimal string of ASN.1 TLV\\n */\\n this.getEncodedHex = function () {\\n if (this.hTLV == null || this.isModified) {\\n this.hV = this.getFreshValueHex();\\n this.hL = this.getLengthHexFromValue();\\n this.hTLV = this.hT + this.hL + this.hV;\\n this.isModified = false;\\n //alert(\\"first time: \\" + this.hTLV);\\n }\\n return this.hTLV;\\n };\\n /**\\n * get hexadecimal string of ASN.1 TLV value(V) bytes\\n * @name getValueHex\\n * @memberOf KJUR.asn1.ASN1Object#\\n * @function\\n * @return {String} hexadecimal string of ASN.1 TLV value(V) bytes\\n */\\n this.getValueHex = function () {\\n this.getEncodedHex();\\n return this.hV;\\n };\\n this.getFreshValueHex = function () {\\n return \'\';\\n };\\n};\\n// == BEGIN DERAbstractString ================================================\\n/**\\n * base class for ASN.1 DER string classes\\n * @name KJUR.asn1.DERAbstractString\\n * @class base class for ASN.1 DER string classes\\n * @param {Array} params associative array of parameters (ex. {\'str\': \'aaa\'})\\n * @property {String} s internal string of value\\n * @extends KJUR.asn1.ASN1Object\\n * @description\\n *
\\n * As for argument \'params\' for constructor, you can specify one of\\n * following properties:\\n *
    \\n *
  • str - specify initial ASN.1 value(V) by a string
  • \\n *
  • hex - specify initial ASN.1 value(V) by a hexadecimal string
  • \\n *
\\n * NOTE: \'params\' can be omitted.\\n */\\nKJUR.asn1.DERAbstractString = function (params) {\\n KJUR.asn1.DERAbstractString.superclass.constructor.call(this);\\n var s = null;\\n var hV = null;\\n /**\\n * get string value of this string object\\n * @name getString\\n * @memberOf KJUR.asn1.DERAbstractString#\\n * @function\\n * @return {String} string value of this string object\\n */\\n this.getString = function () {\\n return this.s;\\n };\\n /**\\n * set value by a string\\n * @name setString\\n * @memberOf KJUR.asn1.DERAbstractString#\\n * @function\\n * @param {String} newS value by a string to set\\n */\\n this.setString = function (newS) {\\n this.hTLV = null;\\n this.isModified = true;\\n this.s = newS;\\n this.hV = stohex(this.s);\\n };\\n /**\\n * set value by a hexadecimal string\\n * @name setStringHex\\n * @memberOf KJUR.asn1.DERAbstractString#\\n * @function\\n * @param {String} newHexString value by a hexadecimal string to set\\n */\\n this.setStringHex = function (newHexString) {\\n this.hTLV = null;\\n this.isModified = true;\\n this.s = null;\\n this.hV = newHexString;\\n };\\n this.getFreshValueHex = function () {\\n return this.hV;\\n };\\n if (typeof params != \\"undefined\\") {\\n if (typeof params == \\"string\\") {\\n this.setString(params);\\n }\\n else if (typeof params[\'str\'] != \\"undefined\\") {\\n this.setString(params[\'str\']);\\n }\\n else if (typeof params[\'hex\'] != \\"undefined\\") {\\n this.setStringHex(params[\'hex\']);\\n }\\n }\\n};\\n_yahoo__WEBPACK_IMPORTED_MODULE_1__.YAHOO.lang.extend(KJUR.asn1.DERAbstractString, KJUR.asn1.ASN1Object);\\n// == END DERAbstractString ================================================\\n// == BEGIN DERAbstractTime ==================================================\\n/**\\n * base class for ASN.1 DER Generalized/UTCTime class\\n * @name KJUR.asn1.DERAbstractTime\\n * @class base class for ASN.1 DER Generalized/UTCTime class\\n * @param {Array} params associative array of parameters (ex. {\'str\': \'130430235959Z\'})\\n * @extends KJUR.asn1.ASN1Object\\n * @description\\n * @see KJUR.asn1.ASN1Object - superclass\\n */\\nKJUR.asn1.DERAbstractTime = function (params) {\\n KJUR.asn1.DERAbstractTime.superclass.constructor.call(this);\\n var s = null;\\n var date = null;\\n // --- PRIVATE METHODS --------------------\\n this.localDateToUTC = function (d) {\\n utc = d.getTime() + (d.getTimezoneOffset() * 60000);\\n var utcDate = new Date(utc);\\n return utcDate;\\n };\\n /*\\n * format date string by Data object\\n * @name formatDate\\n * @memberOf KJUR.asn1.AbstractTime;\\n * @param {Date} dateObject\\n * @param {string} type \'utc\' or \'gen\'\\n * @param {boolean} withMillis flag for with millisections or not\\n * @description\\n * \'withMillis\' flag is supported from asn1 1.0.6.\\n */\\n this.formatDate = function (dateObject, type, withMillis) {\\n var pad = this.zeroPadding;\\n var d = this.localDateToUTC(dateObject);\\n var year = String(d.getFullYear());\\n if (type == \'utc\')\\n year = year.substr(2, 2);\\n var month = pad(String(d.getMonth() + 1), 2);\\n var day = pad(String(d.getDate()), 2);\\n var hour = pad(String(d.getHours()), 2);\\n var min = pad(String(d.getMinutes()), 2);\\n var sec = pad(String(d.getSeconds()), 2);\\n var s = year + month + day + hour + min + sec;\\n if (withMillis === true) {\\n var millis = d.getMilliseconds();\\n if (millis != 0) {\\n var sMillis = pad(String(millis), 3);\\n sMillis = sMillis.replace(/[0]+$/, \\"\\");\\n s = s + \\".\\" + sMillis;\\n }\\n }\\n return s + \\"Z\\";\\n };\\n this.zeroPadding = function (s, len) {\\n if (s.length >= len)\\n return s;\\n return new Array(len - s.length + 1).join(\'0\') + s;\\n };\\n // --- PUBLIC METHODS --------------------\\n /**\\n * get string value of this string object\\n * @name getString\\n * @memberOf KJUR.asn1.DERAbstractTime#\\n * @function\\n * @return {String} string value of this time object\\n */\\n this.getString = function () {\\n return this.s;\\n };\\n /**\\n * set value by a string\\n * @name setString\\n * @memberOf KJUR.asn1.DERAbstractTime#\\n * @function\\n * @param {String} newS value by a string to set such like \\"130430235959Z\\"\\n */\\n this.setString = function (newS) {\\n this.hTLV = null;\\n this.isModified = true;\\n this.s = newS;\\n this.hV = stohex(newS);\\n };\\n /**\\n * set value by a Date object\\n * @name setByDateValue\\n * @memberOf KJUR.asn1.DERAbstractTime#\\n * @function\\n * @param {Integer} year year of date (ex. 2013)\\n * @param {Integer} month month of date between 1 and 12 (ex. 12)\\n * @param {Integer} day day of month\\n * @param {Integer} hour hours of date\\n * @param {Integer} min minutes of date\\n * @param {Integer} sec seconds of date\\n */\\n this.setByDateValue = function (year, month, day, hour, min, sec) {\\n var dateObject = new Date(Date.UTC(year, month - 1, day, hour, min, sec, 0));\\n this.setByDate(dateObject);\\n };\\n this.getFreshValueHex = function () {\\n return this.hV;\\n };\\n};\\n_yahoo__WEBPACK_IMPORTED_MODULE_1__.YAHOO.lang.extend(KJUR.asn1.DERAbstractTime, KJUR.asn1.ASN1Object);\\n// == END DERAbstractTime ==================================================\\n// == BEGIN DERAbstractStructured ============================================\\n/**\\n * base class for ASN.1 DER structured class\\n * @name KJUR.asn1.DERAbstractStructured\\n * @class base class for ASN.1 DER structured class\\n * @property {Array} asn1Array internal array of ASN1Object\\n * @extends KJUR.asn1.ASN1Object\\n * @description\\n * @see KJUR.asn1.ASN1Object - superclass\\n */\\nKJUR.asn1.DERAbstractStructured = function (params) {\\n KJUR.asn1.DERAbstractString.superclass.constructor.call(this);\\n var asn1Array = null;\\n /**\\n * set value by array of ASN1Object\\n * @name setByASN1ObjectArray\\n * @memberOf KJUR.asn1.DERAbstractStructured#\\n * @function\\n * @param {array} asn1ObjectArray array of ASN1Object to set\\n */\\n this.setByASN1ObjectArray = function (asn1ObjectArray) {\\n this.hTLV = null;\\n this.isModified = true;\\n this.asn1Array = asn1ObjectArray;\\n };\\n /**\\n * append an ASN1Object to internal array\\n * @name appendASN1Object\\n * @memberOf KJUR.asn1.DERAbstractStructured#\\n * @function\\n * @param {ASN1Object} asn1Object to add\\n */\\n this.appendASN1Object = function (asn1Object) {\\n this.hTLV = null;\\n this.isModified = true;\\n this.asn1Array.push(asn1Object);\\n };\\n this.asn1Array = new Array();\\n if (typeof params != \\"undefined\\") {\\n if (typeof params[\'array\'] != \\"undefined\\") {\\n this.asn1Array = params[\'array\'];\\n }\\n }\\n};\\n_yahoo__WEBPACK_IMPORTED_MODULE_1__.YAHOO.lang.extend(KJUR.asn1.DERAbstractStructured, KJUR.asn1.ASN1Object);\\n// ********************************************************************\\n// ASN.1 Object Classes\\n// ********************************************************************\\n// ********************************************************************\\n/**\\n * class for ASN.1 DER Boolean\\n * @name KJUR.asn1.DERBoolean\\n * @class class for ASN.1 DER Boolean\\n * @extends KJUR.asn1.ASN1Object\\n * @description\\n * @see KJUR.asn1.ASN1Object - superclass\\n */\\nKJUR.asn1.DERBoolean = function () {\\n KJUR.asn1.DERBoolean.superclass.constructor.call(this);\\n this.hT = \\"01\\";\\n this.hTLV = \\"0101ff\\";\\n};\\n_yahoo__WEBPACK_IMPORTED_MODULE_1__.YAHOO.lang.extend(KJUR.asn1.DERBoolean, KJUR.asn1.ASN1Object);\\n// ********************************************************************\\n/**\\n * class for ASN.1 DER Integer\\n * @name KJUR.asn1.DERInteger\\n * @class class for ASN.1 DER Integer\\n * @extends KJUR.asn1.ASN1Object\\n * @description\\n *
\\n * As for argument \'params\' for constructor, you can specify one of\\n * following properties:\\n *
    \\n *
  • int - specify initial ASN.1 value(V) by integer value
  • \\n *
  • bigint - specify initial ASN.1 value(V) by BigInteger object
  • \\n *
  • hex - specify initial ASN.1 value(V) by a hexadecimal string
  • \\n *
\\n * NOTE: \'params\' can be omitted.\\n */\\nKJUR.asn1.DERInteger = function (params) {\\n KJUR.asn1.DERInteger.superclass.constructor.call(this);\\n this.hT = \\"02\\";\\n /**\\n * set value by Tom Wu\'s BigInteger object\\n * @name setByBigInteger\\n * @memberOf KJUR.asn1.DERInteger#\\n * @function\\n * @param {BigInteger} bigIntegerValue to set\\n */\\n this.setByBigInteger = function (bigIntegerValue) {\\n this.hTLV = null;\\n this.isModified = true;\\n this.hV = KJUR.asn1.ASN1Util.bigIntToMinTwosComplementsHex(bigIntegerValue);\\n };\\n /**\\n * set value by integer value\\n * @name setByInteger\\n * @memberOf KJUR.asn1.DERInteger\\n * @function\\n * @param {Integer} integer value to set\\n */\\n this.setByInteger = function (intValue) {\\n var bi = new _jsbn_jsbn__WEBPACK_IMPORTED_MODULE_0__.BigInteger(String(intValue), 10);\\n this.setByBigInteger(bi);\\n };\\n /**\\n * set value by integer value\\n * @name setValueHex\\n * @memberOf KJUR.asn1.DERInteger#\\n * @function\\n * @param {String} hexadecimal string of integer value\\n * @description\\n *
\\n * NOTE: Value shall be represented by minimum octet length of\\n * two\'s complement representation.\\n * @example\\n * new KJUR.asn1.DERInteger(123);\\n * new KJUR.asn1.DERInteger({\'int\': 123});\\n * new KJUR.asn1.DERInteger({\'hex\': \'1fad\'});\\n */\\n this.setValueHex = function (newHexString) {\\n this.hV = newHexString;\\n };\\n this.getFreshValueHex = function () {\\n return this.hV;\\n };\\n if (typeof params != \\"undefined\\") {\\n if (typeof params[\'bigint\'] != \\"undefined\\") {\\n this.setByBigInteger(params[\'bigint\']);\\n }\\n else if (typeof params[\'int\'] != \\"undefined\\") {\\n this.setByInteger(params[\'int\']);\\n }\\n else if (typeof params == \\"number\\") {\\n this.setByInteger(params);\\n }\\n else if (typeof params[\'hex\'] != \\"undefined\\") {\\n this.setValueHex(params[\'hex\']);\\n }\\n }\\n};\\n_yahoo__WEBPACK_IMPORTED_MODULE_1__.YAHOO.lang.extend(KJUR.asn1.DERInteger, KJUR.asn1.ASN1Object);\\n// ********************************************************************\\n/**\\n * class for ASN.1 DER encoded BitString primitive\\n * @name KJUR.asn1.DERBitString\\n * @class class for ASN.1 DER encoded BitString primitive\\n * @extends KJUR.asn1.ASN1Object\\n * @description\\n *
\\n * As for argument \'params\' for constructor, you can specify one of\\n * following properties:\\n *
    \\n *
  • bin - specify binary string (ex. \'10111\')
  • \\n *
  • array - specify array of boolean (ex. [true,false,true,true])
  • \\n *
  • hex - specify hexadecimal string of ASN.1 value(V) including unused bits
  • \\n *
  • obj - specify {@link KJUR.asn1.ASN1Util.newObject}\\n * argument for \\"BitString encapsulates\\" structure.
  • \\n *
\\n * NOTE1: \'params\' can be omitted.
\\n * NOTE2: \'obj\' parameter have been supported since\\n * asn1 1.0.11, jsrsasign 6.1.1 (2016-Sep-25).
\\n * @example\\n * // default constructor\\n * o = new KJUR.asn1.DERBitString();\\n * // initialize with binary string\\n * o = new KJUR.asn1.DERBitString({bin: \\"1011\\"});\\n * // initialize with boolean array\\n * o = new KJUR.asn1.DERBitString({array: [true,false,true,true]});\\n * // initialize with hexadecimal string (04 is unused bits)\\n * o = new KJUR.asn1.DEROctetString({hex: \\"04bac0\\"});\\n * // initialize with ASN1Util.newObject argument for encapsulated\\n * o = new KJUR.asn1.DERBitString({obj: {seq: [{int: 3}, {prnstr: \'aaa\'}]}});\\n * // above generates a ASN.1 data like this:\\n * // BIT STRING, encapsulates {\\n * // SEQUENCE {\\n * // INTEGER 3\\n * // PrintableString \'aaa\'\\n * // }\\n * // }\\n */\\nKJUR.asn1.DERBitString = function (params) {\\n if (params !== undefined && typeof params.obj !== \\"undefined\\") {\\n var o = KJUR.asn1.ASN1Util.newObject(params.obj);\\n params.hex = \\"00\\" + o.getEncodedHex();\\n }\\n KJUR.asn1.DERBitString.superclass.constructor.call(this);\\n this.hT = \\"03\\";\\n /**\\n * set ASN.1 value(V) by a hexadecimal string including unused bits\\n * @name setHexValueIncludingUnusedBits\\n * @memberOf KJUR.asn1.DERBitString#\\n * @function\\n * @param {String} newHexStringIncludingUnusedBits\\n */\\n this.setHexValueIncludingUnusedBits = function (newHexStringIncludingUnusedBits) {\\n this.hTLV = null;\\n this.isModified = true;\\n this.hV = newHexStringIncludingUnusedBits;\\n };\\n /**\\n * set ASN.1 value(V) by unused bit and hexadecimal string of value\\n * @name setUnusedBitsAndHexValue\\n * @memberOf KJUR.asn1.DERBitString#\\n * @function\\n * @param {Integer} unusedBits\\n * @param {String} hValue\\n */\\n this.setUnusedBitsAndHexValue = function (unusedBits, hValue) {\\n if (unusedBits < 0 || 7 < unusedBits) {\\n throw \\"unused bits shall be from 0 to 7: u = \\" + unusedBits;\\n }\\n var hUnusedBits = \\"0\\" + unusedBits;\\n this.hTLV = null;\\n this.isModified = true;\\n this.hV = hUnusedBits + hValue;\\n };\\n /**\\n * set ASN.1 DER BitString by binary string
\\n * @name setByBinaryString\\n * @memberOf KJUR.asn1.DERBitString#\\n * @function\\n * @param {String} binaryString binary value string (i.e. \'10111\')\\n * @description\\n * Its unused bits will be calculated automatically by length of\\n * \'binaryValue\'.
\\n * NOTE: Trailing zeros \'0\' will be ignored.\\n * @example\\n * o = new KJUR.asn1.DERBitString();\\n * o.setByBooleanArray(\\"01011\\");\\n */\\n this.setByBinaryString = function (binaryString) {\\n binaryString = binaryString.replace(/0+$/, \'\');\\n var unusedBits = 8 - binaryString.length % 8;\\n if (unusedBits == 8)\\n unusedBits = 0;\\n for (var i = 0; i <= unusedBits; i++) {\\n binaryString += \'0\';\\n }\\n var h = \'\';\\n for (var i = 0; i < binaryString.length - 1; i += 8) {\\n var b = binaryString.substr(i, 8);\\n var x = parseInt(b, 2).toString(16);\\n if (x.length == 1)\\n x = \'0\' + x;\\n h += x;\\n }\\n this.hTLV = null;\\n this.isModified = true;\\n this.hV = \'0\' + unusedBits + h;\\n };\\n /**\\n * set ASN.1 TLV value(V) by an array of boolean
\\n * @name setByBooleanArray\\n * @memberOf KJUR.asn1.DERBitString#\\n * @function\\n * @param {array} booleanArray array of boolean (ex. [true, false, true])\\n * @description\\n * NOTE: Trailing falses will be ignored in the ASN.1 DER Object.\\n * @example\\n * o = new KJUR.asn1.DERBitString();\\n * o.setByBooleanArray([false, true, false, true, true]);\\n */\\n this.setByBooleanArray = function (booleanArray) {\\n var s = \'\';\\n for (var i = 0; i < booleanArray.length; i++) {\\n if (booleanArray[i] == true) {\\n s += \'1\';\\n }\\n else {\\n s += \'0\';\\n }\\n }\\n this.setByBinaryString(s);\\n };\\n /**\\n * generate an array of falses with specified length
\\n * @name newFalseArray\\n * @memberOf KJUR.asn1.DERBitString\\n * @function\\n * @param {Integer} nLength length of array to generate\\n * @return {array} array of boolean falses\\n * @description\\n * This static method may be useful to initialize boolean array.\\n * @example\\n * o = new KJUR.asn1.DERBitString();\\n * o.newFalseArray(3) → [false, false, false]\\n */\\n this.newFalseArray = function (nLength) {\\n var a = new Array(nLength);\\n for (var i = 0; i < nLength; i++) {\\n a[i] = false;\\n }\\n return a;\\n };\\n this.getFreshValueHex = function () {\\n return this.hV;\\n };\\n if (typeof params != \\"undefined\\") {\\n if (typeof params == \\"string\\" && params.toLowerCase().match(/^[0-9a-f]+$/)) {\\n this.setHexValueIncludingUnusedBits(params);\\n }\\n else if (typeof params[\'hex\'] != \\"undefined\\") {\\n this.setHexValueIncludingUnusedBits(params[\'hex\']);\\n }\\n else if (typeof params[\'bin\'] != \\"undefined\\") {\\n this.setByBinaryString(params[\'bin\']);\\n }\\n else if (typeof params[\'array\'] != \\"undefined\\") {\\n this.setByBooleanArray(params[\'array\']);\\n }\\n }\\n};\\n_yahoo__WEBPACK_IMPORTED_MODULE_1__.YAHOO.lang.extend(KJUR.asn1.DERBitString, KJUR.asn1.ASN1Object);\\n// ********************************************************************\\n/**\\n * class for ASN.1 DER OctetString
\\n * @name KJUR.asn1.DEROctetString\\n * @class class for ASN.1 DER OctetString\\n * @param {Array} params associative array of parameters (ex. {\'str\': \'aaa\'})\\n * @extends KJUR.asn1.DERAbstractString\\n * @description\\n * This class provides ASN.1 OctetString simple type.
\\n * Supported \\"params\\" attributes are:\\n *
    \\n *
  • str - to set a string as a value
  • \\n *
  • hex - to set a hexadecimal string as a value
  • \\n *
  • obj - to set a encapsulated ASN.1 value by JSON object\\n * which is defined in {@link KJUR.asn1.ASN1Util.newObject}
  • \\n *
\\n * NOTE: A parameter \'obj\' have been supported\\n * for \\"OCTET STRING, encapsulates\\" structure.\\n * since asn1 1.0.11, jsrsasign 6.1.1 (2016-Sep-25).\\n * @see KJUR.asn1.DERAbstractString - superclass\\n * @example\\n * // default constructor\\n * o = new KJUR.asn1.DEROctetString();\\n * // initialize with string\\n * o = new KJUR.asn1.DEROctetString({str: \\"aaa\\"});\\n * // initialize with hexadecimal string\\n * o = new KJUR.asn1.DEROctetString({hex: \\"616161\\"});\\n * // initialize with ASN1Util.newObject argument\\n * o = new KJUR.asn1.DEROctetString({obj: {seq: [{int: 3}, {prnstr: \'aaa\'}]}});\\n * // above generates a ASN.1 data like this:\\n * // OCTET STRING, encapsulates {\\n * // SEQUENCE {\\n * // INTEGER 3\\n * // PrintableString \'aaa\'\\n * // }\\n * // }\\n */\\nKJUR.asn1.DEROctetString = function (params) {\\n if (params !== undefined && typeof params.obj !== \\"undefined\\") {\\n var o = KJUR.asn1.ASN1Util.newObject(params.obj);\\n params.hex = o.getEncodedHex();\\n }\\n KJUR.asn1.DEROctetString.superclass.constructor.call(this, params);\\n this.hT = \\"04\\";\\n};\\n_yahoo__WEBPACK_IMPORTED_MODULE_1__.YAHOO.lang.extend(KJUR.asn1.DEROctetString, KJUR.asn1.DERAbstractString);\\n// ********************************************************************\\n/**\\n * class for ASN.1 DER Null\\n * @name KJUR.asn1.DERNull\\n * @class class for ASN.1 DER Null\\n * @extends KJUR.asn1.ASN1Object\\n * @description\\n * @see KJUR.asn1.ASN1Object - superclass\\n */\\nKJUR.asn1.DERNull = function () {\\n KJUR.asn1.DERNull.superclass.constructor.call(this);\\n this.hT = \\"05\\";\\n this.hTLV = \\"0500\\";\\n};\\n_yahoo__WEBPACK_IMPORTED_MODULE_1__.YAHOO.lang.extend(KJUR.asn1.DERNull, KJUR.asn1.ASN1Object);\\n// ********************************************************************\\n/**\\n * class for ASN.1 DER ObjectIdentifier\\n * @name KJUR.asn1.DERObjectIdentifier\\n * @class class for ASN.1 DER ObjectIdentifier\\n * @param {Array} params associative array of parameters (ex. {\'oid\': \'2.5.4.5\'})\\n * @extends KJUR.asn1.ASN1Object\\n * @description\\n *
\\n * As for argument \'params\' for constructor, you can specify one of\\n * following properties:\\n *
    \\n *
  • oid - specify initial ASN.1 value(V) by a oid string (ex. 2.5.4.13)
  • \\n *
  • hex - specify initial ASN.1 value(V) by a hexadecimal string
  • \\n *
\\n * NOTE: \'params\' can be omitted.\\n */\\nKJUR.asn1.DERObjectIdentifier = function (params) {\\n var itox = function (i) {\\n var h = i.toString(16);\\n if (h.length == 1)\\n h = \'0\' + h;\\n return h;\\n };\\n var roidtox = function (roid) {\\n var h = \'\';\\n var bi = new _jsbn_jsbn__WEBPACK_IMPORTED_MODULE_0__.BigInteger(roid, 10);\\n var b = bi.toString(2);\\n var padLen = 7 - b.length % 7;\\n if (padLen == 7)\\n padLen = 0;\\n var bPad = \'\';\\n for (var i = 0; i < padLen; i++)\\n bPad += \'0\';\\n b = bPad + b;\\n for (var i = 0; i < b.length - 1; i += 7) {\\n var b8 = b.substr(i, 7);\\n if (i != b.length - 7)\\n b8 = \'1\' + b8;\\n h += itox(parseInt(b8, 2));\\n }\\n return h;\\n };\\n KJUR.asn1.DERObjectIdentifier.superclass.constructor.call(this);\\n this.hT = \\"06\\";\\n /**\\n * set value by a hexadecimal string\\n * @name setValueHex\\n * @memberOf KJUR.asn1.DERObjectIdentifier#\\n * @function\\n * @param {String} newHexString hexadecimal value of OID bytes\\n */\\n this.setValueHex = function (newHexString) {\\n this.hTLV = null;\\n this.isModified = true;\\n this.s = null;\\n this.hV = newHexString;\\n };\\n /**\\n * set value by a OID string
\\n * @name setValueOidString\\n * @memberOf KJUR.asn1.DERObjectIdentifier#\\n * @function\\n * @param {String} oidString OID string (ex. 2.5.4.13)\\n * @example\\n * o = new KJUR.asn1.DERObjectIdentifier();\\n * o.setValueOidString(\\"2.5.4.13\\");\\n */\\n this.setValueOidString = function (oidString) {\\n if (!oidString.match(/^[0-9.]+$/)) {\\n throw \\"malformed oid string: \\" + oidString;\\n }\\n var h = \'\';\\n var a = oidString.split(\'.\');\\n var i0 = parseInt(a[0]) * 40 + parseInt(a[1]);\\n h += itox(i0);\\n a.splice(0, 2);\\n for (var i = 0; i < a.length; i++) {\\n h += roidtox(a[i]);\\n }\\n this.hTLV = null;\\n this.isModified = true;\\n this.s = null;\\n this.hV = h;\\n };\\n /**\\n * set value by a OID name\\n * @name setValueName\\n * @memberOf KJUR.asn1.DERObjectIdentifier#\\n * @function\\n * @param {String} oidName OID name (ex. \'serverAuth\')\\n * @since 1.0.1\\n * @description\\n * OID name shall be defined in \'KJUR.asn1.x509.OID.name2oidList\'.\\n * Otherwise raise error.\\n * @example\\n * o = new KJUR.asn1.DERObjectIdentifier();\\n * o.setValueName(\\"serverAuth\\");\\n */\\n this.setValueName = function (oidName) {\\n var oid = KJUR.asn1.x509.OID.name2oid(oidName);\\n if (oid !== \'\') {\\n this.setValueOidString(oid);\\n }\\n else {\\n throw \\"DERObjectIdentifier oidName undefined: \\" + oidName;\\n }\\n };\\n this.getFreshValueHex = function () {\\n return this.hV;\\n };\\n if (params !== undefined) {\\n if (typeof params === \\"string\\") {\\n if (params.match(/^[0-2].[0-9.]+$/)) {\\n this.setValueOidString(params);\\n }\\n else {\\n this.setValueName(params);\\n }\\n }\\n else if (params.oid !== undefined) {\\n this.setValueOidString(params.oid);\\n }\\n else if (params.hex !== undefined) {\\n this.setValueHex(params.hex);\\n }\\n else if (params.name !== undefined) {\\n this.setValueName(params.name);\\n }\\n }\\n};\\n_yahoo__WEBPACK_IMPORTED_MODULE_1__.YAHOO.lang.extend(KJUR.asn1.DERObjectIdentifier, KJUR.asn1.ASN1Object);\\n// ********************************************************************\\n/**\\n * class for ASN.1 DER Enumerated\\n * @name KJUR.asn1.DEREnumerated\\n * @class class for ASN.1 DER Enumerated\\n * @extends KJUR.asn1.ASN1Object\\n * @description\\n *
\\n * As for argument \'params\' for constructor, you can specify one of\\n * following properties:\\n *
    \\n *
  • int - specify initial ASN.1 value(V) by integer value
  • \\n *
  • hex - specify initial ASN.1 value(V) by a hexadecimal string
  • \\n *
\\n * NOTE: \'params\' can be omitted.\\n * @example\\n * new KJUR.asn1.DEREnumerated(123);\\n * new KJUR.asn1.DEREnumerated({int: 123});\\n * new KJUR.asn1.DEREnumerated({hex: \'1fad\'});\\n */\\nKJUR.asn1.DEREnumerated = function (params) {\\n KJUR.asn1.DEREnumerated.superclass.constructor.call(this);\\n this.hT = \\"0a\\";\\n /**\\n * set value by Tom Wu\'s BigInteger object\\n * @name setByBigInteger\\n * @memberOf KJUR.asn1.DEREnumerated#\\n * @function\\n * @param {BigInteger} bigIntegerValue to set\\n */\\n this.setByBigInteger = function (bigIntegerValue) {\\n this.hTLV = null;\\n this.isModified = true;\\n this.hV = KJUR.asn1.ASN1Util.bigIntToMinTwosComplementsHex(bigIntegerValue);\\n };\\n /**\\n * set value by integer value\\n * @name setByInteger\\n * @memberOf KJUR.asn1.DEREnumerated#\\n * @function\\n * @param {Integer} integer value to set\\n */\\n this.setByInteger = function (intValue) {\\n var bi = new _jsbn_jsbn__WEBPACK_IMPORTED_MODULE_0__.BigInteger(String(intValue), 10);\\n this.setByBigInteger(bi);\\n };\\n /**\\n * set value by integer value\\n * @name setValueHex\\n * @memberOf KJUR.asn1.DEREnumerated#\\n * @function\\n * @param {String} hexadecimal string of integer value\\n * @description\\n *
\\n * NOTE: Value shall be represented by minimum octet length of\\n * two\'s complement representation.\\n */\\n this.setValueHex = function (newHexString) {\\n this.hV = newHexString;\\n };\\n this.getFreshValueHex = function () {\\n return this.hV;\\n };\\n if (typeof params != \\"undefined\\") {\\n if (typeof params[\'int\'] != \\"undefined\\") {\\n this.setByInteger(params[\'int\']);\\n }\\n else if (typeof params == \\"number\\") {\\n this.setByInteger(params);\\n }\\n else if (typeof params[\'hex\'] != \\"undefined\\") {\\n this.setValueHex(params[\'hex\']);\\n }\\n }\\n};\\n_yahoo__WEBPACK_IMPORTED_MODULE_1__.YAHOO.lang.extend(KJUR.asn1.DEREnumerated, KJUR.asn1.ASN1Object);\\n// ********************************************************************\\n/**\\n * class for ASN.1 DER UTF8String\\n * @name KJUR.asn1.DERUTF8String\\n * @class class for ASN.1 DER UTF8String\\n * @param {Array} params associative array of parameters (ex. {\'str\': \'aaa\'})\\n * @extends KJUR.asn1.DERAbstractString\\n * @description\\n * @see KJUR.asn1.DERAbstractString - superclass\\n */\\nKJUR.asn1.DERUTF8String = function (params) {\\n KJUR.asn1.DERUTF8String.superclass.constructor.call(this, params);\\n this.hT = \\"0c\\";\\n};\\n_yahoo__WEBPACK_IMPORTED_MODULE_1__.YAHOO.lang.extend(KJUR.asn1.DERUTF8String, KJUR.asn1.DERAbstractString);\\n// ********************************************************************\\n/**\\n * class for ASN.1 DER NumericString\\n * @name KJUR.asn1.DERNumericString\\n * @class class for ASN.1 DER NumericString\\n * @param {Array} params associative array of parameters (ex. {\'str\': \'aaa\'})\\n * @extends KJUR.asn1.DERAbstractString\\n * @description\\n * @see KJUR.asn1.DERAbstractString - superclass\\n */\\nKJUR.asn1.DERNumericString = function (params) {\\n KJUR.asn1.DERNumericString.superclass.constructor.call(this, params);\\n this.hT = \\"12\\";\\n};\\n_yahoo__WEBPACK_IMPORTED_MODULE_1__.YAHOO.lang.extend(KJUR.asn1.DERNumericString, KJUR.asn1.DERAbstractString);\\n// ********************************************************************\\n/**\\n * class for ASN.1 DER PrintableString\\n * @name KJUR.asn1.DERPrintableString\\n * @class class for ASN.1 DER PrintableString\\n * @param {Array} params associative array of parameters (ex. {\'str\': \'aaa\'})\\n * @extends KJUR.asn1.DERAbstractString\\n * @description\\n * @see KJUR.asn1.DERAbstractString - superclass\\n */\\nKJUR.asn1.DERPrintableString = function (params) {\\n KJUR.asn1.DERPrintableString.superclass.constructor.call(this, params);\\n this.hT = \\"13\\";\\n};\\n_yahoo__WEBPACK_IMPORTED_MODULE_1__.YAHOO.lang.extend(KJUR.asn1.DERPrintableString, KJUR.asn1.DERAbstractString);\\n// ********************************************************************\\n/**\\n * class for ASN.1 DER TeletexString\\n * @name KJUR.asn1.DERTeletexString\\n * @class class for ASN.1 DER TeletexString\\n * @param {Array} params associative array of parameters (ex. {\'str\': \'aaa\'})\\n * @extends KJUR.asn1.DERAbstractString\\n * @description\\n * @see KJUR.asn1.DERAbstractString - superclass\\n */\\nKJUR.asn1.DERTeletexString = function (params) {\\n KJUR.asn1.DERTeletexString.superclass.constructor.call(this, params);\\n this.hT = \\"14\\";\\n};\\n_yahoo__WEBPACK_IMPORTED_MODULE_1__.YAHOO.lang.extend(KJUR.asn1.DERTeletexString, KJUR.asn1.DERAbstractString);\\n// ********************************************************************\\n/**\\n * class for ASN.1 DER IA5String\\n * @name KJUR.asn1.DERIA5String\\n * @class class for ASN.1 DER IA5String\\n * @param {Array} params associative array of parameters (ex. {\'str\': \'aaa\'})\\n * @extends KJUR.asn1.DERAbstractString\\n * @description\\n * @see KJUR.asn1.DERAbstractString - superclass\\n */\\nKJUR.asn1.DERIA5String = function (params) {\\n KJUR.asn1.DERIA5String.superclass.constructor.call(this, params);\\n this.hT = \\"16\\";\\n};\\n_yahoo__WEBPACK_IMPORTED_MODULE_1__.YAHOO.lang.extend(KJUR.asn1.DERIA5String, KJUR.asn1.DERAbstractString);\\n// ********************************************************************\\n/**\\n * class for ASN.1 DER UTCTime\\n * @name KJUR.asn1.DERUTCTime\\n * @class class for ASN.1 DER UTCTime\\n * @param {Array} params associative array of parameters (ex. {\'str\': \'130430235959Z\'})\\n * @extends KJUR.asn1.DERAbstractTime\\n * @description\\n *
\\n * As for argument \'params\' for constructor, you can specify one of\\n * following properties:\\n *
    \\n *
  • str - specify initial ASN.1 value(V) by a string (ex.\'130430235959Z\')
  • \\n *
  • hex - specify initial ASN.1 value(V) by a hexadecimal string
  • \\n *
  • date - specify Date object.
  • \\n *
\\n * NOTE: \'params\' can be omitted.\\n *

EXAMPLES

\\n * @example\\n * d1 = new KJUR.asn1.DERUTCTime();\\n * d1.setString(\'130430125959Z\');\\n *\\n * d2 = new KJUR.asn1.DERUTCTime({\'str\': \'130430125959Z\'});\\n * d3 = new KJUR.asn1.DERUTCTime({\'date\': new Date(Date.UTC(2015, 0, 31, 0, 0, 0, 0))});\\n * d4 = new KJUR.asn1.DERUTCTime(\'130430125959Z\');\\n */\\nKJUR.asn1.DERUTCTime = function (params) {\\n KJUR.asn1.DERUTCTime.superclass.constructor.call(this, params);\\n this.hT = \\"17\\";\\n /**\\n * set value by a Date object
\\n * @name setByDate\\n * @memberOf KJUR.asn1.DERUTCTime#\\n * @function\\n * @param {Date} dateObject Date object to set ASN.1 value(V)\\n * @example\\n * o = new KJUR.asn1.DERUTCTime();\\n * o.setByDate(new Date(\\"2016/12/31\\"));\\n */\\n this.setByDate = function (dateObject) {\\n this.hTLV = null;\\n this.isModified = true;\\n this.date = dateObject;\\n this.s = this.formatDate(this.date, \'utc\');\\n this.hV = stohex(this.s);\\n };\\n this.getFreshValueHex = function () {\\n if (typeof this.date == \\"undefined\\" && typeof this.s == \\"undefined\\") {\\n this.date = new Date();\\n this.s = this.formatDate(this.date, \'utc\');\\n this.hV = stohex(this.s);\\n }\\n return this.hV;\\n };\\n if (params !== undefined) {\\n if (params.str !== undefined) {\\n this.setString(params.str);\\n }\\n else if (typeof params == \\"string\\" && params.match(/^[0-9]{12}Z$/)) {\\n this.setString(params);\\n }\\n else if (params.hex !== undefined) {\\n this.setStringHex(params.hex);\\n }\\n else if (params.date !== undefined) {\\n this.setByDate(params.date);\\n }\\n }\\n};\\n_yahoo__WEBPACK_IMPORTED_MODULE_1__.YAHOO.lang.extend(KJUR.asn1.DERUTCTime, KJUR.asn1.DERAbstractTime);\\n// ********************************************************************\\n/**\\n * class for ASN.1 DER GeneralizedTime\\n * @name KJUR.asn1.DERGeneralizedTime\\n * @class class for ASN.1 DER GeneralizedTime\\n * @param {Array} params associative array of parameters (ex. {\'str\': \'20130430235959Z\'})\\n * @property {Boolean} withMillis flag to show milliseconds or not\\n * @extends KJUR.asn1.DERAbstractTime\\n * @description\\n *
\\n * As for argument \'params\' for constructor, you can specify one of\\n * following properties:\\n *
    \\n *
  • str - specify initial ASN.1 value(V) by a string (ex.\'20130430235959Z\')
  • \\n *
  • hex - specify initial ASN.1 value(V) by a hexadecimal string
  • \\n *
  • date - specify Date object.
  • \\n *
  • millis - specify flag to show milliseconds (from 1.0.6)
  • \\n *
\\n * NOTE1: \'params\' can be omitted.\\n * NOTE2: \'withMillis\' property is supported from asn1 1.0.6.\\n */\\nKJUR.asn1.DERGeneralizedTime = function (params) {\\n KJUR.asn1.DERGeneralizedTime.superclass.constructor.call(this, params);\\n this.hT = \\"18\\";\\n this.withMillis = false;\\n /**\\n * set value by a Date object\\n * @name setByDate\\n * @memberOf KJUR.asn1.DERGeneralizedTime#\\n * @function\\n * @param {Date} dateObject Date object to set ASN.1 value(V)\\n * @example\\n * When you specify UTC time, use \'Date.UTC\' method like this:
\\n * o1 = new DERUTCTime();\\n * o1.setByDate(date);\\n *\\n * date = new Date(Date.UTC(2015, 0, 31, 23, 59, 59, 0)); #2015JAN31 23:59:59\\n */\\n this.setByDate = function (dateObject) {\\n this.hTLV = null;\\n this.isModified = true;\\n this.date = dateObject;\\n this.s = this.formatDate(this.date, \'gen\', this.withMillis);\\n this.hV = stohex(this.s);\\n };\\n this.getFreshValueHex = function () {\\n if (this.date === undefined && this.s === undefined) {\\n this.date = new Date();\\n this.s = this.formatDate(this.date, \'gen\', this.withMillis);\\n this.hV = stohex(this.s);\\n }\\n return this.hV;\\n };\\n if (params !== undefined) {\\n if (params.str !== undefined) {\\n this.setString(params.str);\\n }\\n else if (typeof params == \\"string\\" && params.match(/^[0-9]{14}Z$/)) {\\n this.setString(params);\\n }\\n else if (params.hex !== undefined) {\\n this.setStringHex(params.hex);\\n }\\n else if (params.date !== undefined) {\\n this.setByDate(params.date);\\n }\\n if (params.millis === true) {\\n this.withMillis = true;\\n }\\n }\\n};\\n_yahoo__WEBPACK_IMPORTED_MODULE_1__.YAHOO.lang.extend(KJUR.asn1.DERGeneralizedTime, KJUR.asn1.DERAbstractTime);\\n// ********************************************************************\\n/**\\n * class for ASN.1 DER Sequence\\n * @name KJUR.asn1.DERSequence\\n * @class class for ASN.1 DER Sequence\\n * @extends KJUR.asn1.DERAbstractStructured\\n * @description\\n *
\\n * As for argument \'params\' for constructor, you can specify one of\\n * following properties:\\n *
    \\n *
  • array - specify array of ASN1Object to set elements of content
  • \\n *
\\n * NOTE: \'params\' can be omitted.\\n */\\nKJUR.asn1.DERSequence = function (params) {\\n KJUR.asn1.DERSequence.superclass.constructor.call(this, params);\\n this.hT = \\"30\\";\\n this.getFreshValueHex = function () {\\n var h = \'\';\\n for (var i = 0; i < this.asn1Array.length; i++) {\\n var asn1Obj = this.asn1Array[i];\\n h += asn1Obj.getEncodedHex();\\n }\\n this.hV = h;\\n return this.hV;\\n };\\n};\\n_yahoo__WEBPACK_IMPORTED_MODULE_1__.YAHOO.lang.extend(KJUR.asn1.DERSequence, KJUR.asn1.DERAbstractStructured);\\n// ********************************************************************\\n/**\\n * class for ASN.1 DER Set\\n * @name KJUR.asn1.DERSet\\n * @class class for ASN.1 DER Set\\n * @extends KJUR.asn1.DERAbstractStructured\\n * @description\\n *
\\n * As for argument \'params\' for constructor, you can specify one of\\n * following properties:\\n *
    \\n *
  • array - specify array of ASN1Object to set elements of content
  • \\n *
  • sortflag - flag for sort (default: true). ASN.1 BER is not sorted in \'SET OF\'.
  • \\n *
\\n * NOTE1: \'params\' can be omitted.
\\n * NOTE2: sortflag is supported since 1.0.5.\\n */\\nKJUR.asn1.DERSet = function (params) {\\n KJUR.asn1.DERSet.superclass.constructor.call(this, params);\\n this.hT = \\"31\\";\\n this.sortFlag = true; // item shall be sorted only in ASN.1 DER\\n this.getFreshValueHex = function () {\\n var a = new Array();\\n for (var i = 0; i < this.asn1Array.length; i++) {\\n var asn1Obj = this.asn1Array[i];\\n a.push(asn1Obj.getEncodedHex());\\n }\\n if (this.sortFlag == true)\\n a.sort();\\n this.hV = a.join(\'\');\\n return this.hV;\\n };\\n if (typeof params != \\"undefined\\") {\\n if (typeof params.sortflag != \\"undefined\\" &&\\n params.sortflag == false)\\n this.sortFlag = false;\\n }\\n};\\n_yahoo__WEBPACK_IMPORTED_MODULE_1__.YAHOO.lang.extend(KJUR.asn1.DERSet, KJUR.asn1.DERAbstractStructured);\\n// ********************************************************************\\n/**\\n * class for ASN.1 DER TaggedObject\\n * @name KJUR.asn1.DERTaggedObject\\n * @class class for ASN.1 DER TaggedObject\\n * @extends KJUR.asn1.ASN1Object\\n * @description\\n *
\\n * Parameter \'tagNoNex\' is ASN.1 tag(T) value for this object.\\n * For example, if you find \'[1]\' tag in a ASN.1 dump,\\n * \'tagNoHex\' will be \'a1\'.\\n *
\\n * As for optional argument \'params\' for constructor, you can specify *ANY* of\\n * following properties:\\n *
    \\n *
  • explicit - specify true if this is explicit tag otherwise false\\n * (default is \'true\').
  • \\n *
  • tag - specify tag (default is \'a0\' which means [0])
  • \\n *
  • obj - specify ASN1Object which is tagged
  • \\n *
\\n * @example\\n * d1 = new KJUR.asn1.DERUTF8String({\'str\':\'a\'});\\n * d2 = new KJUR.asn1.DERTaggedObject({\'obj\': d1});\\n * hex = d2.getEncodedHex();\\n */\\nKJUR.asn1.DERTaggedObject = function (params) {\\n KJUR.asn1.DERTaggedObject.superclass.constructor.call(this);\\n this.hT = \\"a0\\";\\n this.hV = \'\';\\n this.isExplicit = true;\\n this.asn1Object = null;\\n /**\\n * set value by an ASN1Object\\n * @name setString\\n * @memberOf KJUR.asn1.DERTaggedObject#\\n * @function\\n * @param {Boolean} isExplicitFlag flag for explicit/implicit tag\\n * @param {Integer} tagNoHex hexadecimal string of ASN.1 tag\\n * @param {ASN1Object} asn1Object ASN.1 to encapsulate\\n */\\n this.setASN1Object = function (isExplicitFlag, tagNoHex, asn1Object) {\\n this.hT = tagNoHex;\\n this.isExplicit = isExplicitFlag;\\n this.asn1Object = asn1Object;\\n if (this.isExplicit) {\\n this.hV = this.asn1Object.getEncodedHex();\\n this.hTLV = null;\\n this.isModified = true;\\n }\\n else {\\n this.hV = null;\\n this.hTLV = asn1Object.getEncodedHex();\\n this.hTLV = this.hTLV.replace(/^../, tagNoHex);\\n this.isModified = false;\\n }\\n };\\n this.getFreshValueHex = function () {\\n return this.hV;\\n };\\n if (typeof params != \\"undefined\\") {\\n if (typeof params[\'tag\'] != \\"undefined\\") {\\n this.hT = params[\'tag\'];\\n }\\n if (typeof params[\'explicit\'] != \\"undefined\\") {\\n this.isExplicit = params[\'explicit\'];\\n }\\n if (typeof params[\'obj\'] != \\"undefined\\") {\\n this.asn1Object = params[\'obj\'];\\n this.setASN1Object(this.isExplicit, this.hT, this.asn1Object);\\n }\\n }\\n};\\n_yahoo__WEBPACK_IMPORTED_MODULE_1__.YAHOO.lang.extend(KJUR.asn1.DERTaggedObject, KJUR.asn1.ASN1Object);\\n\\n\\n//# sourceURL=webpack://JSEncrypt/./lib/lib/jsrsasign/asn1-1.0.js?")},"./lib/lib/jsrsasign/yahoo.js":(__unused_webpack_module,__webpack_exports__,__webpack_require__)=>{"use strict";eval(\'__webpack_require__.r(__webpack_exports__);\\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\\n/* harmony export */ "YAHOO": () => (/* binding */ YAHOO)\\n/* harmony export */ });\\n/*!\\nCopyright (c) 2011, Yahoo! Inc. All rights reserved.\\nCode licensed under the BSD License:\\nhttp://developer.yahoo.com/yui/license.html\\nversion: 2.9.0\\n*/\\nvar YAHOO = {};\\nYAHOO.lang = {\\n /**\\n * Utility to set up the prototype, constructor and superclass properties to\\n * support an inheritance strategy that can chain constructors and methods.\\n * Static members will not be inherited.\\n *\\n * @method extend\\n * @static\\n * @param {Function} subc the object to modify\\n * @param {Function} superc the object to inherit\\n * @param {Object} overrides additional properties/methods to add to the\\n * subclass prototype. These will override the\\n * matching items obtained from the superclass\\n * if present.\\n */\\n extend: function (subc, superc, overrides) {\\n if (!superc || !subc) {\\n throw new Error("YAHOO.lang.extend failed, please check that " +\\n "all dependencies are included.");\\n }\\n var F = function () { };\\n F.prototype = superc.prototype;\\n subc.prototype = new F();\\n subc.prototype.constructor = subc;\\n subc.superclass = superc.prototype;\\n if (superc.prototype.constructor == Object.prototype.constructor) {\\n superc.prototype.constructor = superc;\\n }\\n if (overrides) {\\n var i;\\n for (i in overrides) {\\n subc.prototype[i] = overrides[i];\\n }\\n /*\\n * IE will not enumerate native functions in a derived object even if the\\n * function was overridden. This is a workaround for specific functions\\n * we care about on the Object prototype.\\n * @property _IEEnumFix\\n * @param {Function} r the object to receive the augmentation\\n * @param {Function} s the object that supplies the properties to augment\\n * @static\\n * @private\\n */\\n var _IEEnumFix = function () { }, ADD = ["toString", "valueOf"];\\n try {\\n if (/MSIE/.test(navigator.userAgent)) {\\n _IEEnumFix = function (r, s) {\\n for (i = 0; i < ADD.length; i = i + 1) {\\n var fname = ADD[i], f = s[fname];\\n if (typeof f === \\\'function\\\' && f != Object.prototype[fname]) {\\n r[fname] = f;\\n }\\n }\\n };\\n }\\n }\\n catch (ex) { }\\n ;\\n _IEEnumFix(subc.prototype, overrides);\\n }\\n }\\n};\\n\\n\\n//# sourceURL=webpack://JSEncrypt/./lib/lib/jsrsasign/yahoo.js?\')},"./node_modules/process/browser.js":module=>{eval("// shim for using process in browser\\nvar process = module.exports = {};\\n\\n// cached from whatever global is present so that test runners that stub it\\n// don\'t break things. But we need to wrap it in a try catch in case it is\\n// wrapped in strict mode code which doesn\'t define any globals. It\'s inside a\\n// function because try/catches deoptimize in certain engines.\\n\\nvar cachedSetTimeout;\\nvar cachedClearTimeout;\\n\\nfunction defaultSetTimout() {\\n throw new Error(\'setTimeout has not been defined\');\\n}\\nfunction defaultClearTimeout () {\\n throw new Error(\'clearTimeout has not been defined\');\\n}\\n(function () {\\n try {\\n if (typeof setTimeout === \'function\') {\\n cachedSetTimeout = setTimeout;\\n } else {\\n cachedSetTimeout = defaultSetTimout;\\n }\\n } catch (e) {\\n cachedSetTimeout = defaultSetTimout;\\n }\\n try {\\n if (typeof clearTimeout === \'function\') {\\n cachedClearTimeout = clearTimeout;\\n } else {\\n cachedClearTimeout = defaultClearTimeout;\\n }\\n } catch (e) {\\n cachedClearTimeout = defaultClearTimeout;\\n }\\n} ())\\nfunction runTimeout(fun) {\\n if (cachedSetTimeout === setTimeout) {\\n //normal enviroments in sane situations\\n return setTimeout(fun, 0);\\n }\\n // if setTimeout wasn\'t available but was latter defined\\n if ((cachedSetTimeout === defaultSetTimout || !cachedSetTimeout) && setTimeout) {\\n cachedSetTimeout = setTimeout;\\n return setTimeout(fun, 0);\\n }\\n try {\\n // when when somebody has screwed with setTimeout but no I.E. maddness\\n return cachedSetTimeout(fun, 0);\\n } catch(e){\\n try {\\n // When we are in I.E. but the script has been evaled so I.E. doesn\'t trust the global object when called normally\\n return cachedSetTimeout.call(null, fun, 0);\\n } catch(e){\\n // same as above but when it\'s a version of I.E. that must have the global object for \'this\', hopfully our context correct otherwise it will throw a global error\\n return cachedSetTimeout.call(this, fun, 0);\\n }\\n }\\n\\n\\n}\\nfunction runClearTimeout(marker) {\\n if (cachedClearTimeout === clearTimeout) {\\n //normal enviroments in sane situations\\n return clearTimeout(marker);\\n }\\n // if clearTimeout wasn\'t available but was latter defined\\n if ((cachedClearTimeout === defaultClearTimeout || !cachedClearTimeout) && clearTimeout) {\\n cachedClearTimeout = clearTimeout;\\n return clearTimeout(marker);\\n }\\n try {\\n // when when somebody has screwed with setTimeout but no I.E. maddness\\n return cachedClearTimeout(marker);\\n } catch (e){\\n try {\\n // When we are in I.E. but the script has been evaled so I.E. doesn\'t trust the global object when called normally\\n return cachedClearTimeout.call(null, marker);\\n } catch (e){\\n // same as above but when it\'s a version of I.E. that must have the global object for \'this\', hopfully our context correct otherwise it will throw a global error.\\n // Some versions of I.E. have different rules for clearTimeout vs setTimeout\\n return cachedClearTimeout.call(this, marker);\\n }\\n }\\n\\n\\n\\n}\\nvar queue = [];\\nvar draining = false;\\nvar currentQueue;\\nvar queueIndex = -1;\\n\\nfunction cleanUpNextTick() {\\n if (!draining || !currentQueue) {\\n return;\\n }\\n draining = false;\\n if (currentQueue.length) {\\n queue = currentQueue.concat(queue);\\n } else {\\n queueIndex = -1;\\n }\\n if (queue.length) {\\n drainQueue();\\n }\\n}\\n\\nfunction drainQueue() {\\n if (draining) {\\n return;\\n }\\n var timeout = runTimeout(cleanUpNextTick);\\n draining = true;\\n\\n var len = queue.length;\\n while(len) {\\n currentQueue = queue;\\n queue = [];\\n while (++queueIndex < len) {\\n if (currentQueue) {\\n currentQueue[queueIndex].run();\\n }\\n }\\n queueIndex = -1;\\n len = queue.length;\\n }\\n currentQueue = null;\\n draining = false;\\n runClearTimeout(timeout);\\n}\\n\\nprocess.nextTick = function (fun) {\\n var args = new Array(arguments.length - 1);\\n if (arguments.length > 1) {\\n for (var i = 1; i < arguments.length; i++) {\\n args[i - 1] = arguments[i];\\n }\\n }\\n queue.push(new Item(fun, args));\\n if (queue.length === 1 && !draining) {\\n runTimeout(drainQueue);\\n }\\n};\\n\\n// v8 likes predictible objects\\nfunction Item(fun, array) {\\n this.fun = fun;\\n this.array = array;\\n}\\nItem.prototype.run = function () {\\n this.fun.apply(null, this.array);\\n};\\nprocess.title = \'browser\';\\nprocess.browser = true;\\nprocess.env = {};\\nprocess.argv = [];\\nprocess.version = \'\'; // empty string to avoid regexp issues\\nprocess.versions = {};\\n\\nfunction noop() {}\\n\\nprocess.on = noop;\\nprocess.addListener = noop;\\nprocess.once = noop;\\nprocess.off = noop;\\nprocess.removeListener = noop;\\nprocess.removeAllListeners = noop;\\nprocess.emit = noop;\\nprocess.prependListener = noop;\\nprocess.prependOnceListener = noop;\\n\\nprocess.listeners = function (name) { return [] }\\n\\nprocess.binding = function (name) {\\n throw new Error(\'process.binding is not supported\');\\n};\\n\\nprocess.cwd = function () { return \'/\' };\\nprocess.chdir = function (dir) {\\n throw new Error(\'process.chdir is not supported\');\\n};\\nprocess.umask = function() { return 0; };\\n\\n\\n//# sourceURL=webpack://JSEncrypt/./node_modules/process/browser.js?")}};var __webpack_module_cache__={};function __webpack_require__(moduleId){var cachedModule=__webpack_module_cache__[moduleId];if(cachedModule!==undefined){return cachedModule.exports}var module=__webpack_module_cache__[moduleId]={exports:{}};__webpack_modules__[moduleId](module,module.exports,__webpack_require__);return module.exports}(()=>{__webpack_require__.d=(exports,definition)=>{for(var key in definition){if(__webpack_require__.o(definition,key)&&!__webpack_require__.o(exports,key)){Object.defineProperty(exports,key,{enumerable:true,get:definition[key]})}}}})();(()=>{__webpack_require__.o=(obj,prop)=>Object.prototype.hasOwnProperty.call(obj,prop)})();(()=>{__webpack_require__.r=exports=>{if(typeof Symbol!=="undefined"&&Symbol.toStringTag){Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"})}Object.defineProperty(exports,"__esModule",{value:true})}})();var __webpack_exports__=__webpack_require__("./lib/index.js");__webpack_exports__=__webpack_exports__["default"];return __webpack_exports__})()});'}},t={};function n(r){var a=t[r];if(void 0!==a)return a.exports;var i=t[r]={exports:{}};return e[r](i,i.exports,n),i.exports}"function"!=typeof Object.assign&&(Object.assign=function(){for(var e=arguments[0],t=1;t { + _o.msg = _o.msg.trim().split("\n").map(_it => _it.trim()).join("\n"); + return _o + }) +} + +function init_test() { + console.log("init_test_start"); + console.log("当前版本号:" + VERSION); + console.log("本地代理地址:" + getProxyUrl()); + console.log(RKEY); + console.log(JSON.stringify(rule)); + console.log("init_test_end") +} + +function ocr_demo_test() { + let img_base64 = `iVBORw0KGgoAAAANSUhEUgAAAIAAAAAoBAMAAADEX+97AAAAG1BMVEXz+/4thQTa7N6QwIFFkyNeokKozqDB3b93sWHFR+MEAAAACXBIWXMAAA7EAAAOxAGVKw4bAAABN0lEQVRIie2TQU+DQBCFt9vScvQpxR4xrcSjJCZ67JDGXsX+AdR4B3vpsSYm/m2HXaRLmuySepR3Gdidb/btDAjRq5dT96eCMlfBuzi1QLZUoZy2yz5sOvI+9iomaPEZ6nWnEtxqIyiM1RcAy44GNDhBXUjot/VVNweV1ah68FqWRyjKIOqAcyYF6rGcmpYnHzGt3fycNoMw0d3/THFu7hFSJ/8OXO6iTM8/KSg09obAzIHLO250LgQ0txOZSfgrV4Exdw98uGycJ0ErAeExZGhOmFHV9zHO6qVSj0MpLq7xZON56o++MjlsEgfVhbQWWME+xQX7J4V6zfi9A1Ly9rP1BvEXp+BbVJ/M77n+wfOIDVp51pZ4iBxvmj9AGrtvry6emwfKnVkW+ZRKd5ZNMvob36vXP9YPDmQki8QiCFAAAAAASUVORK5CYII=`; + OcrApi.api = OCR_API; + let code = OcrApi.classification(img_base64); + log("测试验证码图片的ocr识别结果为:" + code) +} + +function rsa_demo_test() { + let t1 = (new Date).getTime(); + let pkcs1_public = ` +-----BEGIN RSA PUBLIC KEY----- +MEgCQQCrI0pQ/ERRpJ3Ou190XJedFq846nDYP52rOtXyDxlFK5D3p6JJu2RwsKwy +lsQ9xY0xYPpRZUZKMEeR7e9gmRNLAgMBAAE= +-----END RSA PUBLIC KEY----- +`.trim(); + let pkcs1_public_pem = ` +MEgCQQCrI0pQ/ERRpJ3Ou190XJedFq846nDYP52rOtXyDxlFK5D3p6JJu2RwsKwy +lsQ9xY0xYPpRZUZKMEeR7e9gmRNLAgMBAAE= +`.trim(); + let pkcs8_public = ` +-----BEGIN PUBLIC KEY----- +MFwwDQYJKoZIhvcNAQEBBQADSwAwSAJBAKsjSlD8RFGknc67X3Rcl50WrzjqcNg/ +nas61fIPGUUrkPenokm7ZHCwrDKWxD3FjTFg+lFlRkowR5Ht72CZE0sCAwEAAQ== +-----END PUBLIC KEY-----`.trim(); + let pkcs8_public_pem = ` +MFwwDQYJKoZIhvcNAQEBBQADSwAwSAJBAKsjSlD8RFGknc67X3Rcl50WrzjqcNg/ +nas61fIPGUUrkPenokm7ZHCwrDKWxD3FjTFg+lFlRkowR5Ht72CZE0sCAwEAAQ== +`.trim(); + let pkcs1_private = ` +-----BEGIN RSA PRIVATE KEY----- +MIIBOAIBAAJBAKsjSlD8RFGknc67X3Rcl50WrzjqcNg/nas61fIPGUUrkPenokm7 +ZHCwrDKWxD3FjTFg+lFlRkowR5Ht72CZE0sCAwEAAQI/b6OV1z65UokQaMvSeRXt +0Yv6wiYtduQI9qpq5nzy/ytaqsbBfClNTi/HifKPKxlRouWFkc518EQI8LBxoarJ +AiEA4DaONMplV8PQNa3TKn2F+SDEvLOCjdL0kHKdN90Ti28CIQDDZnTBaHgZwZbA +hS7Bbf5yvwjWMhO6Y7l04/Qm7R+35QIgPuQuqXIoUSD080mp1N5WyRW++atksIF+ +5lGv9e6GP/MCICnj8y/rl6Pd7tXDN6zcSeqLrfdNsREKhB3dKOCXgW9JAiAFYtFS +EJNBXVRTK42SNsZ2hJ/9xLwOwnH2epT8Q43s3Q== +-----END RSA PRIVATE KEY----- +`.trim(); + let pkcs8_private = ` +-----BEGIN PRIVATE KEY----- +MIIBUgIBADANBgkqhkiG9w0BAQEFAASCATwwggE4AgEAAkEAqyNKUPxEUaSdzrtf +dFyXnRavOOpw2D+dqzrV8g8ZRSuQ96eiSbtkcLCsMpbEPcWNMWD6UWVGSjBHke3v +YJkTSwIDAQABAj9vo5XXPrlSiRBoy9J5Fe3Ri/rCJi125Aj2qmrmfPL/K1qqxsF8 +KU1OL8eJ8o8rGVGi5YWRznXwRAjwsHGhqskCIQDgNo40ymVXw9A1rdMqfYX5IMS8 +s4KN0vSQcp033ROLbwIhAMNmdMFoeBnBlsCFLsFt/nK/CNYyE7pjuXTj9CbtH7fl +AiA+5C6pcihRIPTzSanU3lbJFb75q2SwgX7mUa/17oY/8wIgKePzL+uXo93u1cM3 +rNxJ6out902xEQqEHd0o4JeBb0kCIAVi0VIQk0FdVFMrjZI2xnaEn/3EvA7CcfZ6 +lPxDjezd +-----END PRIVATE KEY----- +`.trim(); + let data = ` +NodeRsa +这是node-rsa 现在修改集成在drpy里使用`.trim(); + let encryptedWithPublic = NODERSA.encryptRSAWithPublicKey(data, pkcs1_public, { + outputEncoding: "base64", + options: { + environment: "browser", + encryptionScheme: "pkcs1_oaep" + } + }); + console.log("公钥加密"); + console.log(encryptedWithPublic); + let decryptedWithPrivate = NODERSA.decryptRSAWithPrivateKey(encryptedWithPublic, pkcs1_private, { + options: { + environment: "browser", + encryptionScheme: "pkcs1_oaep" + } + }); + console.log("私钥解密"); + console.log(decryptedWithPrivate); + let pkcs1_sha256_sign = NODERSA.sign("1", pkcs1_private, { + outputEncoding: "base64", + options: { + environment: "browser", + encryptionScheme: "pkcs1", + signingScheme: "pkcs1-sha256" + } + }); + console.log("pkcs1_sha256_sign"); + console.log(pkcs1_sha256_sign); + let pkcs1_sha256_sign_verify = NODERSA.verify("1", "Oulx2QrgeipKYBtqEDqFb2s/+ndk2cGQxO4CkhU7iBM1vyNmmvqubpsmeoUuN3waGrYZLknSEdwBkfv0tUMpFQ==", pkcs1_private, { + options: { + environment: "browser", + encryptionScheme: "pkcs1", + signingScheme: "pkcs1-sha256" + } + }); + console.log("pkcs1_sha256_sign_verify"); + console.log(pkcs1_sha256_sign_verify); + let pkcs1_oaep_sha256 = NODERSA.encryptRSAWithPublicKey(data, `-----BEGIN RSA PUBLIC KEY----- +MIIBCgKCAQEA5KOq1gRNyllLNWKQy8sGpZE3Q1ULLSmzZw+eaAhj9lvqn7IsT1du +SYn08FfoOA2qMwtz+1O2l1mgzNoSVCyVpVabnTG+C9XKeZXAnJHd8aYA7l7Sxhdm +kte+iymYZ0ZBPzijo8938iugtVvqi9UgDmnY3u/NlQDqiL5BGqSxSTd/Sgmy3zD8 +PYzEa3wD9vehQ5fZZ45vKIq8GNVh2Z8+IGO85FF1OsN7+b2yGJa/FmDDNn0+HP+m +PfI+kYBqEVpo0Ztbc3UdxgFwGC8O1n8AQyriwHnSOtIiuBH62J/7qyC/3LEAApRb +Dd9YszqzmODjQUddZKHmvc638VW+azc0EwIDAQAB +-----END RSA PUBLIC KEY----- +`, { + outputEncoding: "base64", + options: { + environment: "browser", + encryptionScheme: { + scheme: "pkcs1_oaep", + hash: "sha256" + } + } + }); + console.log("pkcs1_oaep_sha256"); + console.log(pkcs1_oaep_sha256); + decryptedWithPrivate = NODERSA.decryptRSAWithPrivateKey("kSZesAAyYh2hdsQnYMdGqb6gKAzTauBKouvBzWcc4+F8RvGd0nwO6mVkUMVilPgUuNxjEauHayHiY8gI3Py45UI3+km0rSGyHrS6dHiHgCkMejXHieglYzAB0IxX3Jkm4z/66bdB/D+GFy0oct5fGCMI1UHPjEAYOsazJDa8lBFNbjiWFeb/qiZtIx3vGM7KYPAZzyRf/zPbbQ8zy9xOmRuOl5nnIxgo0Okp3KO/RIPO4GZOSBA8f2lx1UtNwwrXAMpcNavtoqHVcjJ/9lcotXYQFrn5b299pSIRf2gVm8ZJ31SK6Z8cc14nKtvgnmsgClDzIXJ1o1RcDK+knVAySg==", `-----BEGIN RSA PRIVATE KEY----- +MIIEpAIBAAKCAQEA5KOq1gRNyllLNWKQy8sGpZE3Q1ULLSmzZw+eaAhj9lvqn7Is +T1duSYn08FfoOA2qMwtz+1O2l1mgzNoSVCyVpVabnTG+C9XKeZXAnJHd8aYA7l7S +xhdmkte+iymYZ0ZBPzijo8938iugtVvqi9UgDmnY3u/NlQDqiL5BGqSxSTd/Sgmy +3zD8PYzEa3wD9vehQ5fZZ45vKIq8GNVh2Z8+IGO85FF1OsN7+b2yGJa/FmDDNn0+ +HP+mPfI+kYBqEVpo0Ztbc3UdxgFwGC8O1n8AQyriwHnSOtIiuBH62J/7qyC/3LEA +ApRbDd9YszqzmODjQUddZKHmvc638VW+azc0EwIDAQABAoIBADZ/QGgUzInvsLp/ +zO2WbfYm39o/uhNAvk9RbLt1TIZbMFhyOpeKynHi3Swwd9xsfWX/U9zS/lGi/m31 +iKrhmaW4OA1G3vqpMcK7TBbFufYwUEaA+ZJX344euH8pIfdzyneMQ4z3Far2dS7l +QsmjuilVV2kEFadveXewiYoVOWCu00w6bN8wy2SIHlQn+kIL6HQhWz12iKKflIKu +eGRdzLHsKmBt6WbY1Wuhx7HU0fAKdlBDPxCHNlI+kybUYE9o5C2vJiaVM5wqJBgZ +8Dz8kt1QbLJ910JoLXkLVQ8uC8NJKQwFtqQjTGPnEq0+wbgz6Ij599rKZkwW/xq9 +l6KoUiECgYEA6Ah42tVdkNW047f03xVYXFH96RgorHRS36mR8Y+ONUq1fwKidovC +WjwVujt4OPf3l1W6iyn/F6cu/bsmvPrSc3HTN0B1V31QK4OjgetxQ2PSbTldH02J +NPzkt+v+cPxXpx/P5mgt7Weefw5txU547KubGrHUV5rBKFtIx9pj16MCgYEA/EF0 +o19+D24DZAPwlDS5VbEd7FStnwY4oQ5PqbuNOSbSJLMWU0AqzXcRokp8UTyCZ0X3 +ATkS1REq97kShCuR+npTR6a6DlY7sdpPI1SMLNajgB2tkx0EOzX+PfNIbHUd4jpJ +I0ZMAHv/OOtkzQHDaeTWBTrzsWm6/nTiykfduNECgYEA46AMD4HpPECqKAs66e5i +tI6q7JSKskObWVdcmQEfnSAhVOwcvPb2Ptda6UuV8S0xcwDi88rLOUUFUFzc79+P +vTkY38cYVi/VChsluDpk7ptqv0PbGu5Rf+3n4pZdEjI7OvR2W64wAAn67uIUxc7p +yiO/ET0K9rYWb6S9jXGtKMkCgYEA2kPAqoO7zZoBMQ7/oR0lp/HC1HRIbiqx4RlC +8Lgpb+QZPEwA6zPAVVvLVENi4d+bbcRp/xLlKpraNNJcJSSWAMbLPFoU7sbKjA87 +HnTPfRSTEA2d3Ibk3F7Rh8TzS3Ti0JZiJjVzGZAwu41iAMifzwaD8K6boUy80eNN +QH2CaaECgYBUsLYvC/MiYg3w+LGOONuQongoVUXjGqnw2bjVa9RK7lwRdXPUqJ51 +MpVO98IkoLvGSI/0sGNP3GKNhC+eMGjJAVwFyEuOn+JsmMv9Y9uStIVi5tIHIhKw +m7mp8il0kaftHdSxTbspG3tZ2fjIiFIZkLEOmRpd7ogWumgOajzUdA== +-----END RSA PRIVATE KEY-----`, { + options: { + environment: "browser", + encryptionScheme: "pkcs1_oaep" + } + }); + console.log("decryptedWithPrivate"); + console.log(decryptedWithPrivate); + (() => { + let key = new NODERSA.NodeRSA({ + b: 1024 + }); + key.setOptions({ + encryptionScheme: "pkcs1" + }); + let text = `你好drpy node-ras`; + let encrypted = key.encrypt(text, "base64"); + console.log("encrypted: ", encrypted); + const decrypted = key.decrypt(encrypted, "utf8"); + console.log("decrypted: ", decrypted) + })(); + let t2 = (new Date).getTime(); + console.log("rsa_demo_test 测试耗时:" + (t2 - t1) + "毫秒") +} + +function pre() { + if (typeof rule.预处理 === "string" && rule.预处理 && rule.预处理.trim()) { + let code = rule.预处理.trim(); + console.log("执行预处理代码:" + code); + if (code.startsWith("js:")) { + code = code.replace("js:", "") + } + try { + eval(code) + } catch (e) { + console.log(`预处理执行失败:${e.message}`) + } + } +} +let rule = {}; +const MOBILE_UA = "Mozilla/5.0 (Linux; Android 11; Pixel 5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/90.0.4430.91 Mobile Safari/537.36"; +const PC_UA = "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/95.0.4638.54 Safari/537.36"; +const UA = "Mozilla/5.0"; +const UC_UA = "Mozilla/5.0 (Linux; U; Android 9; zh-CN; MI 9 Build/PKQ1.181121.001) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/57.0.2987.108 UCBrowser/12.5.5.1035 Mobile Safari/537.36"; +const IOS_UA = "Mozilla/5.0 (iPhone; CPU iPhone OS 13_2_3 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/13.0.3 Mobile/15E148 Safari/604.1"; +const RULE_CK = "cookie"; +const CATE_EXCLUDE = "首页|留言|APP|下载|资讯|新闻|动态"; +const TAB_EXCLUDE = "猜你|喜欢|下载|剧情|榜|评论"; +const OCR_RETRY = 3; +const OCR_API = "https://api.nn.ci/ocr/b64/text"; +if (typeof MY_URL === "undefined") { + var MY_URL +} +var HOST; +var RKEY; +var fetch; +var print; +var log; +var rule_fetch_params; +var fetch_params; +var oheaders; +var _pdfh; +var _pdfa; +var _pd; +const DOM_CHECK_ATTR = /(url|src|href|-original|-src|-play|-url|style)$/; +const SPECIAL_URL = /^(ftp|magnet|thunder|ws):/; +const NOADD_INDEX = /:eq|:lt|:gt|:first|:last|^body$|^#/; +const URLJOIN_ATTR = /(url|src|href|-original|-src|-play|-url|style)$|^(data-|url-|src-)/; +const SELECT_REGEX = /:eq|:lt|:gt|#/g; +const SELECT_REGEX_A = /:eq|:lt|:gt/g; +const $js = { + toString(func) { + let strfun = func.toString(); + return strfun.replace(/^\(\)(\s+)?=>(\s+)?\{/, "js:").replace(/\}$/, "") + } +}; + +function window_b64() { + let b64map = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/"; + let base64DecodeChars = new Array(-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, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 62, -1, -1, -1, 63, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, -1, -1, -1, -1, -1, -1, -1, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, -1, -1, -1, -1, -1, -1, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, -1, -1, -1, -1, -1); + + function btoa(str) { + var out, i, len; + var c1, c2, c3; + len = str.length; + i = 0; + out = ""; + while (i < len) { + c1 = str.charCodeAt(i++) & 255; + if (i == len) { + out += b64map.charAt(c1 >> 2); + out += b64map.charAt((c1 & 3) << 4); + out += "=="; + break + } + c2 = str.charCodeAt(i++); + if (i == len) { + out += b64map.charAt(c1 >> 2); + out += b64map.charAt((c1 & 3) << 4 | (c2 & 240) >> 4); + out += b64map.charAt((c2 & 15) << 2); + out += "="; + break + } + c3 = str.charCodeAt(i++); + out += b64map.charAt(c1 >> 2); + out += b64map.charAt((c1 & 3) << 4 | (c2 & 240) >> 4); + out += b64map.charAt((c2 & 15) << 2 | (c3 & 192) >> 6); + out += b64map.charAt(c3 & 63) + } + return out + } + + function atob(str) { + var c1, c2, c3, c4; + var i, len, out; + len = str.length; + i = 0; + out = ""; + while (i < len) { + do { + c1 = base64DecodeChars[str.charCodeAt(i++) & 255] + } while (i < len && c1 == -1); + if (c1 == -1) break; + do { + c2 = base64DecodeChars[str.charCodeAt(i++) & 255] + } while (i < len && c2 == -1); + if (c2 == -1) break; + out += String.fromCharCode(c1 << 2 | (c2 & 48) >> 4); + do { + c3 = str.charCodeAt(i++) & 255; + if (c3 == 61) return out; + c3 = base64DecodeChars[c3] + } while (i < len && c3 == -1); + if (c3 == -1) break; + out += String.fromCharCode((c2 & 15) << 4 | (c3 & 60) >> 2); + do { + c4 = str.charCodeAt(i++) & 255; + if (c4 == 61) return out; + c4 = base64DecodeChars[c4] + } while (i < len && c4 == -1); + if (c4 == -1) break; + out += String.fromCharCode((c3 & 3) << 6 | c4) + } + return out + } + return { + atob: atob, + btoa: btoa + } +} +if (typeof atob !== "function" || typeof btoa !== "function") { + var { + atob, + btoa + } = window_b64() +} +if (typeof Object.assign !== "function") { + Object.assign = function() { + let target = arguments[0]; + for (let i = 1; i < arguments.length; i++) { + let source = arguments[i]; + for (let key in source) { + if (Object.prototype.hasOwnProperty.call(source, key)) { + target[key] = source[key] + } + } + } + return target + } +} +if (!String.prototype.includes) { + String.prototype.includes = function(search, start) { + if (typeof start !== "number") { + start = 0 + } + if (start + search.length > this.length) { + return false + } else { + return this.indexOf(search, start) !== -1 + } + } +} +if (!Array.prototype.includes) { + Object.defineProperty(Array.prototype, "includes", { + value: function(searchElement, fromIndex) { + if (this == null) { + throw new TypeError('"this" is null or not defined') + } + var o = Object(this); + var len = o.length >>> 0; + if (len === 0) { + return false + } + var n = fromIndex | 0; + var k = Math.max(n >= 0 ? n : len - Math.abs(n), 0); + while (k < len) { + if (o[k] === searchElement) { + return true + } + k++ + } + return false + }, + enumerable: false + }) +} +if (typeof String.prototype.startsWith !== "function") { + String.prototype.startsWith = function(prefix) { + return this.slice(0, prefix.length) === prefix + } +} +if (typeof String.prototype.endsWith !== "function") { + String.prototype.endsWith = function(suffix) { + return this.indexOf(suffix, this.length - suffix.length) !== -1 + } +} +Object.defineProperty(Object.prototype, "myValues", { + value: function(obj) { + if (obj == null) { + throw new TypeError("Cannot convert undefined or null to object") + } + var res = []; + for (var k in obj) { + if (obj.hasOwnProperty(k)) { + res.push(obj[k]) + } + } + return res + }, + enumerable: false +}); +if (typeof Object.prototype.values !== "function") { + Object.defineProperty(Object.prototype, "values", { + value: function(obj) { + if (obj == null) { + throw new TypeError("Cannot convert undefined or null to object") + } + var res = []; + for (var k in obj) { + if (obj.hasOwnProperty(k)) { + res.push(obj[k]) + } + } + return res + }, + enumerable: false + }) +} +if (typeof Array.prototype.join !== "function") { + Object.defineProperty(Array.prototype, "join", { + value: function(emoji) { + emoji = emoji || ""; + let self = this; + let str = ""; + let i = 0; + if (!Array.isArray(self)) { + throw String(self) + "is not Array" + } + if (self.length === 0) { + return "" + } + if (self.length === 1) { + return String(self[0]) + } + i = 1; + str = this[0]; + for (; i < self.length; i++) { + str += String(emoji) + String(self[i]) + } + return str + }, + enumerable: false + }) +} +if (typeof Array.prototype.toReversed !== "function") { + Object.defineProperty(Array.prototype, "toReversed", { + value: function() { + const clonedList = this.slice(); + const reversedList = clonedList.reverse(); + return reversedList + }, + enumerable: false + }) +} +Object.defineProperty(Array.prototype, "append", { + value: Array.prototype.push, + enumerable: false +}); +Object.defineProperty(String.prototype, "strip", { + value: String.prototype.trim, + enumerable: false +}); +Object.defineProperty(String.prototype, "rstrip", { + value: function(chars) { + let regex = new RegExp(chars + "$"); + return this.replace(regex, "") + }, + enumerable: false +}); + +function 是否正版(vipUrl) { + let flag = new RegExp("qq.com|iqiyi.com|youku.com|mgtv.com|bilibili.com|sohu.com|ixigua.com|pptv.com|miguvideo.com|le.com|1905.com|fun.tv"); + return flag.test(vipUrl) +} + +function urlDeal(vipUrl) { + if (!vipUrl) { + return "" + } + if (!是否正版(vipUrl)) { + return vipUrl + } + if (!/miguvideo/.test(vipUrl)) { + vipUrl = vipUrl.split("#")[0].split("?")[0] + } + return vipUrl +} + +function setResult(d) { + if (!Array.isArray(d)) { + return [] + } + VODS = []; + d.forEach(function(it) { + let obj = { + vod_id: it.url || "", + vod_name: it.title || "", + vod_remarks: it.desc || "", + vod_content: it.content || "", + vod_pic: it.pic_url || it.img || "" + }; + let keys = Object.keys(it); + if (keys.includes("tname")) { + obj.type_name = it.tname || "" + } + if (keys.includes("tid")) { + obj.type_id = it.tid || "" + } + if (keys.includes("year")) { + obj.vod_year = it.year || "" + } + if (keys.includes("actor")) { + obj.vod_actor = it.actor || "" + } + if (keys.includes("director")) { + obj.vod_director = it.director || "" + } + if (keys.includes("area")) { + obj.vod_area = it.area || "" + } + VODS.push(obj) + }); + return VODS +} + +function setResult2(res) { + VODS = res.list || []; + return VODS +} + +function setHomeResult(res) { + if (!res || typeof res !== "object") { + return [] + } + return setResult(res.list) +} + +function rc(js) { + if (js === "maomi_aes.js") { + var a = CryptoJS.enc.Utf8.parse("625222f9149e961d"); + var t = CryptoJS.enc.Utf8.parse("5efdtf6060e2o330"); + return { + De: function(word) { + word = CryptoJS.enc.Hex.parse(word); + return CryptoJS.AES.decrypt(CryptoJS.enc.Base64.stringify(word), a, { + iv: t, + mode: CryptoJS.mode.CBC, + padding: CryptoJS.pad.Pkcs7 + }).toString(CryptoJS.enc.Utf8) + }, + En: function(word) { + var Encrypted = CryptoJS.AES.encrypt(word, a, { + iv: t, + mode: CryptoJS.mode.CBC, + padding: CryptoJS.pad.Pkcs7 + }); + return Encrypted.ciphertext.toString() + } + } + } + return {} +} + +function maoss(jxurl, ref, key) { + fetch_params = JSON.parse(JSON.stringify(rule_fetch_params)); + eval(getCryptoJS()); + try { + var getVideoInfo = function(text) { + return CryptoJS.AES.decrypt(text, key, { + iv: iv, + padding: CryptoJS.pad.Pkcs7 + }).toString(CryptoJS.enc.Utf8) + }; + var token_key = key == undefined ? "dvyYRQlnPRCMdQSe" : key; + if (ref) { + var html = request(jxurl, { + headers: { + Referer: ref + } + }) + } else { + var html = request(jxurl) + } + if (html.indexOf("&btwaf=") != -1) { + html = request(jxurl + "&btwaf" + html.match(/&btwaf(.*?)"/)[1], { + headers: { + Referer: ref + } + }) + } + var token_iv = html.split('_token = "')[1].split('"')[0]; + var key = CryptoJS.enc.Utf8.parse(token_key); + var iv = CryptoJS.enc.Utf8.parse(token_iv); + eval(html.match(/var config = {[\s\S]*?}/)[0] + ""); + if (!config.url.startsWith("http")) { + config.url = CryptoJS.AES.decrypt(config.url, key, { + iv: iv, + padding: CryptoJS.pad.Pkcs7 + }).toString(CryptoJS.enc.Utf8) + } + return config.url + } catch (e) { + return "" + } +} + +function urlencode(str) { + str = (str + "").toString(); + return encodeURIComponent(str).replace(/!/g, "%21").replace(/'/g, "%27").replace(/\(/g, "%28").replace(/\)/g, "%29").replace(/\*/g, "%2A").replace(/%20/g, "+") +} + +function encodeUrl(str) { + if (typeof encodeURI == "function") { + return encodeURI(str) + } else { + str = (str + "").toString(); + return encodeURIComponent(str).replace(/%2F/g, "/").replace(/%3F/g, "?").replace(/%3A/g, ":").replace(/%40/g, "@").replace(/%3D/g, "=").replace(/%3A/g, ":").replace(/%2C/g, ",").replace(/%2B/g, "+").replace(/%24/g, "$") + } +} + +function base64Encode(text) { + return CryptoJS.enc.Base64.stringify(CryptoJS.enc.Utf8.parse(text)) +} + +function base64Decode(text) { + return CryptoJS.enc.Utf8.stringify(CryptoJS.enc.Base64.parse(text)) +} + +function md5(text) { + return CryptoJS.MD5(text).toString() +} + +function uint8ArrayToBase64(uint8Array) { + let binaryString = String.fromCharCode.apply(null, Array.from(uint8Array)); + return btoa(binaryString) +} + +function Utf8ArrayToStr(array) { + var out, i, len, c; + var char2, char3; + out = ""; + len = array.length; + i = 0; + while (i < len) { + c = array[i++]; + switch (c >> 4) { + case 0: + case 1: + case 2: + case 3: + case 4: + case 5: + case 6: + case 7: + out += String.fromCharCode(c); + break; + case 12: + case 13: + char2 = array[i++]; + out += String.fromCharCode((c & 31) << 6 | char2 & 63); + break; + case 14: + char2 = array[i++]; + char3 = array[i++]; + out += String.fromCharCode((c & 15) << 12 | (char2 & 63) << 6 | (char3 & 63) << 0); + break + } + } + return out +} + +function gzip(str) { + let arr = pako.gzip(str, {}); + return uint8ArrayToBase64(arr) +} + +function ungzip(b64Data) { + let strData = atob(b64Data); + const charData = strData.split("").map(function(x) { + return x.charCodeAt(0) + }); + const binData = new Uint8Array(charData); + const data = pako.inflate(binData); + return Utf8ArrayToStr(data) +} + +function encodeStr(input, encoding) { + encoding = encoding || "gbk"; + if (encoding.startsWith("gb")) { + input = gbkTool.encode(input) + } + return input +} + +function decodeStr(input, encoding) { + encoding = encoding || "gbk"; + if (encoding.startsWith("gb")) { + input = gbkTool.decode(input) + } + return input +} + +function getCryptoJS() { + return 'console.log("CryptoJS已装载");' +} +const RSA = { + decode: function(data, key, option) { + option = option || {}; + if (typeof JSEncrypt === "function") { + let chunkSize = option.chunkSize || 117; + let privateKey = this.getPrivateKey(key); + const decryptor = new JSEncrypt; + decryptor.setPrivateKey(privateKey); + let uncrypted = ""; + uncrypted = decryptor.decryptUnicodeLong(data); + return uncrypted + } else { + return false + } + }, + encode: function(data, key, option) { + option = option || {}; + if (typeof JSEncrypt === "function") { + let chunkSize = option.chunkSize || 117; + let publicKey = this.getPublicKey(key); + const encryptor = new JSEncrypt; + encryptor.setPublicKey(publicKey); + let encrypted = ""; + encrypted = encryptor.encryptUnicodeLong(data); + return encrypted + } else { + return false + } + }, + fixKey(key, prefix, endfix) { + if (!key.includes(prefix)) { + key = prefix + key + } + if (!key.includes(endfix)) { + key += endfix + } + return key + }, + getPrivateKey(key) { + let prefix = "-----BEGIN RSA PRIVATE KEY-----"; + let endfix = "-----END RSA PRIVATE KEY-----"; + return this.fixKey(key, prefix, endfix) + }, + getPublicKey(key) { + let prefix = "-----BEGIN PUBLIC KEY-----"; + let endfix = "-----END PUBLIC KEY-----"; + return this.fixKey(key, prefix, endfix) + } +}; + +function getProxyUrl() { + if (typeof getProxy === "function") { + return getProxy(true) + } else { + return "http://127.0.0.1:9978/proxy?do=js" + } +} + +function fixAdM3u8(m3u8_text, m3u8_url, ad_remove) { + if (!m3u8_text && !m3u8_url || !m3u8_text && m3u8_url && !m3u8_url.startsWith("http")) { + return "" + } + if (!m3u8_text) { + log("m3u8_url:" + m3u8_url); + m3u8_text = request(m3u8_url) + } + log("len(m3u8_text):" + m3u8_text.length); + if (!ad_remove) { + return m3u8_text + } + if (ad_remove.startsWith("reg:")) { + ad_remove = ad_remove.slice(4) + } else if (ad_remove.startsWith("js:")) { + ad_remove = ad_remove.slice(3) + } + let m3u8_start = m3u8_text.slice(0, m3u8_text.indexOf("#EXTINF")).trim(); + let m3u8_body = m3u8_text.slice(m3u8_text.indexOf("#EXTINF"), m3u8_text.indexOf("#EXT-X-ENDLIST")).trim(); + let m3u8_end = m3u8_text.slice(m3u8_text.indexOf("#EXT-X-ENDLIST")).trim(); + let murls = []; + let m3_body_list = m3u8_body.split("\n"); + let m3_len = m3_body_list.length; + let i = 0; + while (i < m3_len) { + let mi = m3_body_list[i]; + let mi_1 = m3_body_list[i + 1]; + if (mi.startsWith("#EXTINF")) { + murls.push([mi, mi_1].join("&")); + i += 2 + } else if (mi.startsWith("#EXT-X-DISCONTINUITY")) { + let mi_2 = m3_body_list[i + 2]; + murls.push([mi, mi_1, mi_2].join("&")); + i += 3 + } else { + break + } + } + let new_m3u8_body = []; + for (let murl of murls) { + if (ad_remove && new RegExp(ad_remove).test(murl)) {} else { + let murl_list = murl.split("&"); + if (!murl_list[murl_list.length - 1].startsWith("http") && m3u8_url.startsWith("http")) { + murl_list[murl_list.length - 1] = urljoin(m3u8_url, murl_list[murl_list.length - 1]) + } + murl_list.forEach(it => { + new_m3u8_body.push(it) + }) + } + } + new_m3u8_body = new_m3u8_body.join("\n").trim(); + m3u8_text = [m3u8_start, new_m3u8_body, m3u8_end].join("\n").trim(); + return m3u8_text +} + +function fixAdM3u8Ai(m3u8_url, headers) { + let ts = (new Date).getTime(); + let option = headers ? { + headers: headers + } : {}; + + function b(s1, s2) { + let i = 0; + while (i < s1.length) { + if (s1[i] !== s2[i]) { + break + } + i++ + } + return i + } + + function reverseString(str) { + return str.split("").reverse().join("") + } + let m3u8 = request(m3u8_url, option); + m3u8 = m3u8.trim().split("\n").map(it => it.startsWith("#") ? it : urljoin(m3u8_url, it)).join("\n"); + m3u8 = m3u8.replace(/\n\n/gi, "\n"); + let last_url = m3u8.split("\n").slice(-1)[0]; + if (last_url.length < 5) { + last_url = m3u8.split("\n").slice(-2)[0] + } + if (last_url.includes(".m3u8") && last_url !== m3u8_url) { + m3u8_url = urljoin2(m3u8_url, last_url); + log("嵌套的m3u8_url:" + m3u8_url); + m3u8 = request(m3u8_url, option) + } + let s = m3u8.trim().split("\n").filter(it => it.trim()).join("\n"); + let ss = s.split("\n"); + if (m3u8_url.indexOf("ffzy") > 0) { + let j = 0, + k1 = 0, + m = 0, + n = 0, + t = 0; + let s2 = ""; + for (let i = 0; i < ss.length; i++) { + let s = ss[i]; + let s1 = ""; + if (s.startsWith("#EXTINF")) { + s1 = s.slice(8); + n++; + if (n == 1) k1 = i; + if (s2.indexOf(s1) == -1) { + s2 = s2 + s1; + m++ + } + t = t + parseFloat(s1); + i++; + s = ss[i] + } + if (s.startsWith("#EXT-X-DISCONTINUITY")) { + if (n == 5) { + log("n:" + n); + log("m:" + m); + for (let j = k1; j < k1 + n * 2; j++) { + log(ss[j]) + } + log("广告位置:" + k1); + log("数据条数:" + n); + log("数据种类:" + m); + log("广告时间:" + t.toFixed(5)); + ss.splice(k1, 2 * n + 1); + i = i - 2 * n + 1 + } + t = 0; + m = 0; + n = 0; + s2 = "" + } + } + } + let firststr = ""; + let maxl = 0; + let kk = 0; + let kkk1 = 1; + let kkk2 = 0; + let secondstr = ""; + for (let i = 0; i < ss.length; i++) { + let s = ss[i]; + if (!s.startsWith("#")) { + if (kk == 0) firststr = s; + if (kk > 0) { + if (maxl > b(firststr, s) + 1) { + if (secondstr.length < 5) secondstr = s; + kkk2++ + } else { + maxl = b(firststr, s); + kkk1++ + } + } + kk++; + if (kk >= 30) break + } + } + if (kkk2 > kkk1) firststr = secondstr; + let firststrlen = firststr.length; + let ml = Math.round(ss.length / 2).toString().length; + let maxc = 0; + let laststr = ss.toReversed().find(x => { + if (!x.startsWith("#")) { + let k = b(reverseString(firststr), reverseString(x)); + maxl = b(firststr, x); + maxc++; + if (firststrlen - maxl <= ml + k || maxc > 10) { + return true + } + } + return false + }); + log("最后一条切片:" + laststr); + let ad_urls = []; + for (let i = 0; i < ss.length; i++) { + let s = ss[i]; + if (!s.startsWith("#")) { + if (b(firststr, s) < maxl) { + ad_urls.push(s); + ss.splice(i - 1, 2); + i = i - 2 + } else { + ss[i] = urljoin(m3u8_url, s) + } + } else { + ss[i] = s.replace(/URI=\"(.*)\"/, 'URI="' + urljoin(m3u8_url, "$1") + '"') + } + } + log("处理的m3u8地址:" + m3u8_url); + log("----广告地址----"); + log(ad_urls); + m3u8 = ss.join("\n"); + log("处理耗时:" + ((new Date).getTime() - ts).toString()); + log(m3u8); + return m3u8 +} + +function forceOrder(lists, key, option) { + let start = Math.floor(lists.length / 2); + let end = Math.min(lists.length - 1, start + 1); + if (start >= end) { + return lists + } + let first = lists[start]; + let second = lists[end]; + if (key) { + try { + first = first[key]; + second = second[key] + } catch (e) {} + } + if (option && typeof option === "function") { + try { + first = option(first); + second = option(second) + } catch (e) {} + } + first += ""; + second += ""; + if (first.match(/(\d+)/) && second.match(/(\d+)/)) { + let num1 = Number(first.match(/(\d+)/)[1]); + let num2 = Number(second.match(/(\d+)/)[1]); + if (num1 > num2) { + lists.reverse() + } + } + return lists +} +let VODS = []; +let VOD = {}; +let TABS = []; +let LISTS = []; + +function getQuery(url) { + try { + if (url.indexOf("?") > -1) { + url = url.slice(url.indexOf("?") + 1) + } + let arr = url.split("#")[0].split("&"); + const resObj = {}; + arr.forEach(item => { + let arr1 = item.split("="); + let key = arr1[0]; + let value = arr1.slice(1).join("="); + resObj[key] = value + }); + return resObj + } catch (err) { + log(`getQuery发生错误:${e.message}`); + return {} + } +} + +function urljoin(fromPath, nowPath) { + fromPath = fromPath || ""; + nowPath = nowPath || ""; + return joinUrl(fromPath, nowPath) +} +var urljoin2 = urljoin; +const defaultParser = { + pdfh: pdfh, + pdfa: pdfa, + pd: pd +}; + +function pdfh2(html, parse) { + let html2 = html; + try { + if (typeof html !== "string") { + html2 = html.rr(html.ele).toString() + } + } catch (e) { + print(`html对象转文本发生了错误:${e.message}`) + } + let result = defaultParser.pdfh(html2, parse); + let option = parse.includes("&&") ? parse.split("&&").slice(-1)[0] : parse.split(" ").slice(-1)[0]; + if (/style/.test(option.toLowerCase()) && /url\(/.test(result)) { + try { + result = result.match(/url\((.*?)\)/)[1]; + result = result.replace(/^['|"](.*)['|"]$/, "$1") + } catch (e) {} + } + return result +} + +function pdfa2(html, parse) { + let html2 = html; + try { + if (typeof html !== "string") { + html2 = html.rr(html.ele).toString() + } + } catch (e) { + print(`html对象转文本发生了错误:${e.message}`) + } + return defaultParser.pdfa(html2, parse) +} + +function pd2(html, parse, uri) { + let ret = pdfh2(html, parse); + if (typeof uri === "undefined" || !uri) { + uri = "" + } + if (DOM_CHECK_ATTR.test(parse) && !SPECIAL_URL.test(ret)) { + if (/http/.test(ret)) { + ret = ret.slice(ret.indexOf("http")) + } else { + ret = urljoin(MY_URL, ret) + } + } + return ret +} +const parseTags = { + jsp: { + pdfh: pdfh2, + pdfa: pdfa2, + pd: pd2 + }, + json: { + pdfh(html, parse) { + if (!parse || !parse.trim()) { + return "" + } + if (typeof html === "string") { + html = JSON.parse(html) + } + parse = parse.trim(); + if (!parse.startsWith("$.")) { + parse = "$." + parse + } + parse = parse.split("||"); + for (let ps of parse) { + let ret = cheerio.jp(ps, html); + if (Array.isArray(ret)) { + ret = ret[0] || "" + } else { + ret = ret || "" + } + if (ret && typeof ret !== "string") { + ret = ret.toString() + } + if (ret) { + return ret + } + } + return "" + }, + pdfa(html, parse) { + if (!parse || !parse.trim()) { + return "" + } + if (typeof html === "string") { + html = JSON.parse(html) + } + parse = parse.trim(); + if (!parse.startsWith("$.")) { + parse = "$." + parse + } + let ret = cheerio.jp(parse, html); + if (Array.isArray(ret) && Array.isArray(ret[0]) && ret.length === 1) { + return ret[0] || [] + } + return ret || [] + }, + pd(html, parse) { + let ret = parseTags.json.pdfh(html, parse); + if (ret) { + return urljoin(MY_URL, ret) + } + return ret + } + }, + jq: { + pdfh(html, parse) { + if (!html || !parse || !parse.trim()) { + return "" + } + parse = parse.trim(); + let result = defaultParser.pdfh(html, parse); + return result + }, + pdfa(html, parse) { + if (!html || !parse || !parse.trim()) { + return [] + } + parse = parse.trim(); + let result = defaultParser.pdfa(html, parse); + print(`pdfa解析${parse}=>${result.length}`); + return result + }, + pd(html, parse, base_url) { + if (!html || !parse || !parse.trim()) { + return "" + } + parse = parse.trim(); + base_url = base_url || MY_URL; + return defaultParser.pd(html, parse, base_url) + } + }, + getParse(p0) { + if (p0.startsWith("jsp:")) { + return this.jsp + } else if (p0.startsWith("json:")) { + return this.json + } else if (p0.startsWith("jq:")) { + return this.jq + } else { + return this.jq + } + } +}; +const stringify = JSON.stringify; +const jsp = parseTags.jsp; +const jq = parseTags.jq; + +function readFile(filePath) { + filePath = filePath || "./uri.min.js"; + var fd = os.open(filePath); + var buffer = new ArrayBuffer(1024); + var len = os.read(fd, buffer, 0, 1024); + console.log(len); + let text = String.fromCharCode.apply(null, new Uint8Array(buffer)); + console.log(text); + return text +} + +function dealJson(html) { + try { + html = html.trim(); + if (!(html.startsWith("{") && html.endsWith("}") || html.startsWith("[") && html.endsWith("]"))) { + html = "{" + html.match(/.*?\{(.*)\}/m)[1] + "}" + } + } catch (e) {} + try { + html = JSON.parse(html) + } catch (e) {} + return html +} +var OcrApi = { + api: OCR_API, + classification: function(img) { + let code = ""; + try { + log("通过drpy_ocr验证码接口过验证..."); + let html = ""; + if (this.api.endsWith("drpy/text")) { + html = request(this.api, { + data: { + img: img + }, + headers: { + "User-Agent": PC_UA + }, + method: "POST" + }, true) + } else { + html = post(this.api, { + body: img + }) + } + code = html || "" + } catch (e) { + log(`OCR识别验证码发生错误:${e.message}`) + } + return code + } +}; + +function verifyCode(url) { + let cnt = 0; + let host = getHome(url); + let cookie = ""; + while (cnt < OCR_RETRY) { + try { + let yzm_url = `${host}/index.php/verify/index.html`; + console.log(`验证码链接:${yzm_url}`); + let hhtml = request(yzm_url, { + withHeaders: true, + toBase64: true + }, true); + let json = JSON.parse(hhtml); + if (!cookie) { + let setCk = Object.keys(json).find(it => it.toLowerCase() === "set-cookie"); + cookie = setCk ? json[setCk].split(";")[0] : "" + } + console.log("cookie:" + cookie); + let img = json.body; + let code = OcrApi.classification(img); + console.log(`第${cnt+1}次验证码识别结果:${code}`); + let submit_url = `${host}/index.php/ajax/verify_check?type=search&verify=${code}`; + console.log(submit_url); + let html = request(submit_url, { + headers: { + Cookie: cookie + }, + method: "POST" + }); + html = JSON.parse(html); + if (html.msg === "ok") { + console.log(`第${cnt+1}次验证码提交成功`); + return cookie + } else if (html.msg !== "ok" && cnt + 1 >= OCR_RETRY) { + cookie = "" + } + } catch (e) { + console.log(`第${cnt+1}次验证码提交失败:${e.message}`); + if (cnt + 1 >= OCR_RETRY) { + cookie = "" + } + } + cnt += 1 + } + return cookie +} + +function setItem(k, v) { + local.set(RKEY, k, v); + console.log(`规则${RKEY}设置${k} => ${v}`) +} + +function getItem(k, v) { + return local.get(RKEY, k) || v +} + +function clearItem(k) { + local.delete(RKEY, k) +} + +function getHome(url) { + if (!url) { + return "" + } + let tmp = url.split("//"); + url = tmp[0] + "//" + tmp[1].split("/")[0]; + try { + url = decodeURIComponent(url) + } catch (e) {} + return url +} + +function buildUrl(url, obj) { + obj = obj || {}; + if (url.indexOf("?") < 0) { + url += "?" + } + let param_list = []; + let keys = Object.keys(obj); + keys.forEach(it => { + param_list.push(it + "=" + obj[it]) + }); + let prs = param_list.join("&"); + if (keys.length > 0 && !url.endsWith("?")) { + url += "&" + } + url += prs; + return url +} + +function $require(url) { + eval(request(url)) +} + +function keysToLowerCase(obj) { + return Object.keys(obj).reduce((result, key) => { + const newKey = key.toLowerCase(); + result[newKey] = obj[key]; + return result + }, {}) +} + +function buildQueryString(params) { + const queryArray = []; + for (const key in params) { + if (params.hasOwnProperty(key)) { + let value = params[key]; + if (value === undefined || value === null) { + value = "" + } else { + value = value.toString() + } + const encodedKey = encodeURIComponent(key); + const encodedValue = encodeURIComponent(value); + queryArray.push(encodedKey + "=" + encodedValue) + } + } + return queryArray.join("&") +} + +function parseQueryString(query) { + const params = {}; + query.split("&").forEach(function(part) { + const regex = /^(.*?)=(.*)/; + const match = part.match(regex); + if (match) { + const key = decodeURIComponent(match[1]); + const value = decodeURIComponent(match[2]); + params[key] = value + } + }); + return params +} + +function encodeIfContainsSpecialChars(value) { + const specialChars = ":/?#[]@!$'()*+,;=%"; + if (specialChars.split("").some(char => value.includes(char))) { + return encodeURIComponent(value) + } + return value +} + +function objectToQueryString(obj) { + const encoded = []; + for (let key in obj) { + if (obj.hasOwnProperty(key)) { + encoded.push(encodeURIComponent(key) + "=" + encodeIfContainsSpecialChars(obj[key])) + } + } + return encoded.join("&") +} + +function request(url, obj, ocr_flag) { + ocr_flag = ocr_flag || false; + if (typeof obj === "undefined" || !obj || obj === {}) { + if (!fetch_params || !fetch_params.headers) { + let headers = { + "User-Agent": MOBILE_UA + }; + if (rule.headers) { + Object.assign(headers, rule.headers) + } + if (!fetch_params) { + fetch_params = {} + } + fetch_params.headers = headers + } + if (!fetch_params.headers.Referer) { + fetch_params.headers.Referer = getHome(url) + } + obj = fetch_params + } else { + let headers = obj.headers || {}; + let keys = Object.keys(headers).map(it => it.toLowerCase()); + if (!keys.includes("user-agent")) { + headers["User-Agent"] = MOBILE_UA; + if (typeof fetch_params === "object" && fetch_params && fetch_params.headers) { + let fetch_headers = keysToLowerCase(fetch_params.headers); + if (fetch_headers["user-agent"]) { + headers["User-Agent"] = fetch_headers["user-agent"] + } + } + } + if (!keys.includes("referer")) { + headers["Referer"] = getHome(url) + } + obj.headers = headers + } + if (rule.encoding && rule.encoding !== "utf-8" && !ocr_flag) { + if (!obj.headers.hasOwnProperty("Content-Type") && !obj.headers.hasOwnProperty("content-type")) { + obj.headers["Content-Type"] = "text/html; charset=" + rule.encoding + } + } + if (typeof obj.body != "undefined" && obj.body && typeof obj.body === "string") { + if (!obj.headers.hasOwnProperty("Content-Type") && !obj.headers.hasOwnProperty("content-type")) { + obj.headers["Content-Type"] = "application/x-www-form-urlencoded; charset=" + rule.encoding + } + } else if (typeof obj.body != "undefined" && obj.body && typeof obj.body === "object") { + obj.data = obj.body; + delete obj.body + } + if (!url) { + return obj.withHeaders ? "{}" : "" + } + if (obj.toBase64) { + obj.buffer = 2; + delete obj.toBase64 + } + if (obj.redirect === false) { + obj.redirect = 0 + } + if (obj.headers.hasOwnProperty("Content-Type") || obj.headers.hasOwnProperty("content-type")) { + let _contentType = obj.headers["Content-Type"] || obj.headers["content-type"] || ""; + if (_contentType.includes("application/x-www-form-urlencoded")) { + log("custom body is application/x-www-form-urlencoded"); + if (typeof obj.body == "string") { + let temp_obj = parseQueryString(obj.body); + console.log(JSON.stringify(temp_obj)) + } + } + } + console.log(JSON.stringify(obj.headers)); + console.log("request:" + url + `|method:${obj.method||"GET"}|body:${obj.body||""}`); + let res = req(url, obj); + let html = res.content || ""; + if (obj.withHeaders) { + let htmlWithHeaders = res.headers; + htmlWithHeaders.body = html; + return JSON.stringify(htmlWithHeaders) + } else { + return html + } +} + +function post(url, obj) { + obj = obj || {}; + obj.method = "POST"; + return request(url, obj) +} + +function reqCookie(url, obj, all_cookie) { + obj = obj || {}; + obj.withHeaders = true; + all_cookie = all_cookie || false; + let html = request(url, obj); + let json = JSON.parse(html); + let setCk = Object.keys(json).find(it => it.toLowerCase() === "set-cookie"); + let cookie = setCk ? json[setCk] : ""; + if (Array.isArray(cookie)) { + cookie = cookie.join(";") + } + if (!all_cookie) { + cookie = cookie.split(";")[0] + } + html = json.body; + return { + cookie: cookie, + html: html + } +} +fetch = request; +print = function(data) { + data = data || ""; + if (typeof data == "object" && Object.keys(data).length > 0) { + try { + data = JSON.stringify(data); + console.log(data) + } catch (e) { + console.log(typeof data + ":" + data.length); + return + } + } else if (typeof data == "object" && Object.keys(data).length < 1) { + console.log("null object") + } else { + console.log(data) + } +}; +log = print; + +function checkHtml(html, url, obj) { + if (/\?btwaf=/.test(html)) { + let btwaf = html.match(/btwaf(.*?)"/)[1]; + url = url.split("#")[0] + "?btwaf" + btwaf; + print("宝塔验证访问链接:" + url); + html = request(url, obj) + } + return html +} + +function getCode(url, obj) { + let html = request(url, obj); + html = checkHtml(html, url, obj); + return html +} + +function getHtml(url) { + let obj = {}; + if (rule.headers) { + obj.headers = rule.headers + } + let cookie = getItem(RULE_CK, ""); + if (cookie) { + if (obj.headers && !Object.keys(obj.headers).map(it => it.toLowerCase()).includes("cookie")) { + log("历史无cookie,新增过验证后的cookie"); + obj.headers["Cookie"] = cookie + } else if (obj.headers && obj.headers.cookie && obj.headers.cookie !== cookie) { + obj.headers["Cookie"] = cookie; + log("历史有小写过期的cookie,更新过验证后的cookie") + } else if (obj.headers && obj.headers.Cookie && obj.headers.Cookie !== cookie) { + obj.headers["Cookie"] = cookie; + log("历史有大写过期的cookie,更新过验证后的cookie") + } else if (!obj.headers) { + obj.headers = { + Cookie: cookie + }; + log("历史无headers,更新过验证后的含cookie的headers") + } + } + let html = getCode(url, obj); + return html +} + +function homeParse(homeObj) { + fetch_params = JSON.parse(JSON.stringify(rule_fetch_params)); + let classes = []; + if (homeObj.class_name && homeObj.class_url) { + let names = homeObj.class_name.split("&"); + let urls = homeObj.class_url.split("&"); + let cnt = Math.min(names.length, urls.length); + for (let i = 0; i < cnt; i++) { + classes.push({ + type_id: urls[i], + type_name: names[i] + }) + } + } + if (homeObj.class_parse) { + if (homeObj.class_parse.startsWith("js:")) { + var input = homeObj.MY_URL; + try { + eval(homeObj.class_parse.replace("js:", "")); + if (Array.isArray(input)) { + classes = input + } + } catch (e) { + log(`通过js动态获取分类发生了错误:${e.message}`) + } + } else { + let p = homeObj.class_parse.split(";"); + let p0 = p[0]; + let _ps = parseTags.getParse(p0); + let is_json = p0.startsWith("json:"); + _pdfa = _ps.pdfa; + _pdfh = _ps.pdfh; + _pd = _ps.pd; + MY_URL = rule.url; + if (is_json) { + try { + let cms_cate_url = homeObj.MY_URL.replace("ac=detail", "ac=list"); + let html = homeObj.home_html || getHtml(cms_cate_url); + if (html) { + if (cms_cate_url === homeObj.MY_URL) { + homeHtmlCache = html + } + let list = _pdfa(html, p0.replace("json:", "")); + if (list && list.length > 0) { + classes = list + } + } + } catch (e) { + console.log(e.message) + } + } else if (p.length >= 3 && !is_json) { + try { + let html = homeObj.home_html || getHtml(homeObj.MY_URL); + if (html) { + homeHtmlCache = html; + let list = _pdfa(html, p0); + if (list && list.length > 0) { + list.forEach((it, idex) => { + try { + let name = _pdfh(it, p[1]); + if (homeObj.cate_exclude && new RegExp(homeObj.cate_exclude).test(name)) { + return + } + let url = _pd(it, p[2]); + if (p.length > 3 && p[3] && !homeObj.home_html) { + let exp = new RegExp(p[3]); + url = url.match(exp)[1] + } + classes.push({ + type_id: url.trim(), + type_name: name.trim() + }) + } catch (e) { + console.log(`分类列表定位第${idex}个元素正常报错:${e.message}`) + } + }) + } + } + } catch (e) { + console.log(e.message) + } + } + } + } + classes = classes.filter(it => !homeObj.cate_exclude || !new RegExp(homeObj.cate_exclude).test(it.type_name)); + let resp = { + class: classes + }; + if (homeObj.filter) { + resp.filters = homeObj.filter + } + console.log(JSON.stringify(resp)); + return JSON.stringify(resp) +} + +function getPP(p, pn, pp, ppn) { + try { + let ps = p[pn] === "*" && pp.length > ppn ? pp[ppn] : p[pn]; + return ps + } catch (e) { + return "" + } +} + +function homeVodParse(homeVodObj) { + fetch_params = JSON.parse(JSON.stringify(rule_fetch_params)); + let d = []; + MY_URL = homeVodObj.homeUrl; + console.log(MY_URL); + let t1 = (new Date).getTime(); + let p = homeVodObj.推荐; + print("p:" + p); + if (p === "*" && rule.一级) { + p = rule.一级; + homeVodObj.double = false + } + if (!p || typeof p !== "string") { + return "{}" + } + p = p.trim(); + let pp = rule.一级 ? rule.一级.split(";") : []; + if (p.startsWith("js:")) { + const TYPE = "home"; + var input = MY_URL; + HOST = rule.host; + eval(p.replace("js:", "")); + d = VODS + } else { + p = p.split(";"); + if (!homeVodObj.double && p.length < 5) { + return "{}" + } else if (homeVodObj.double && p.length < 6) { + return "{}" + } + let p0 = getPP(p, 0, pp, 0); + let _ps = parseTags.getParse(p0); + _pdfa = _ps.pdfa; + _pdfh = _ps.pdfh; + _pd = _ps.pd; + let is_json = p0.startsWith("json:"); + p0 = p0.replace(/^(jsp:|json:|jq:)/, ""); + let html = homeHtmlCache || getHtml(MY_URL); + homeHtmlCache = undefined; + if (is_json) { + html = dealJson(html) + } + try { + console.log("double:" + homeVodObj.double); + if (homeVodObj.double) { + let items = _pdfa(html, p0); + let p1 = getPP(p, 1, pp, 0); + let p2 = getPP(p, 2, pp, 1); + let p3 = getPP(p, 3, pp, 2); + let p4 = getPP(p, 4, pp, 3); + let p5 = getPP(p, 5, pp, 4); + let p6 = getPP(p, 6, pp, 5); + for (let item of items) { + let items2 = _pdfa(item, p1); + for (let item2 of items2) { + try { + let title = _pdfh(item2, p2); + let img = ""; + try { + img = _pd(item2, p3) + } catch (e) {} + let desc = ""; + try { + desc = _pdfh(item2, p4) + } catch (e) {} + let links = []; + for (let _p5 of p5.split("+")) { + let link = !homeVodObj.detailUrl ? _pd(item2, _p5, MY_URL) : _pdfh(item2, _p5); + links.push(link) + } + let content; + if (p.length > 6 && p[6]) { + content = _pdfh(item2, p6) + } else { + content = "" + } + let vid = links.join("$"); + if (rule.二级 === "*") { + vid = vid + "@@" + title + "@@" + img + } + let vod = { + vod_name: title, + vod_pic: img, + vod_remarks: desc, + vod_content: content, + vod_id: vid + }; + d.push(vod) + } catch (e) { + console.log(`首页列表双层定位处理发生错误:${e.message}`) + } + } + } + } else { + let items = _pdfa(html, p0); + let p1 = getPP(p, 1, pp, 1); + let p2 = getPP(p, 2, pp, 2); + let p3 = getPP(p, 3, pp, 3); + let p4 = getPP(p, 4, pp, 4); + let p5 = getPP(p, 5, pp, 5); + for (let item of items) { + try { + let title = _pdfh(item, p1); + let img = ""; + try { + img = _pd(item, p2, MY_URL) + } catch (e) {} + let desc = ""; + try { + desc = _pdfh(item, p3) + } catch (e) {} + let links = []; + for (let _p5 of p4.split("+")) { + let link = !homeVodObj.detailUrl ? _pd(item, _p5, MY_URL) : _pdfh(item, _p5); + links.push(link) + } + let content; + if (p.length > 5 && p[5]) { + content = _pdfh(item, p5) + } else { + content = "" + } + let vid = links.join("$"); + if (rule.二级 === "*") { + vid = vid + "@@" + title + "@@" + img + } + let vod = { + vod_name: title, + vod_pic: img, + vod_remarks: desc, + vod_content: content, + vod_id: vid + }; + d.push(vod) + } catch (e) { + console.log(`首页列表单层定位处理发生错误:${e.message}`) + } + } + } + } catch (e) {} + } + let t2 = (new Date).getTime(); + console.log("加载首页推荐耗时:" + (t2 - t1) + "毫秒"); + if (rule.图片替换) { + if (rule.图片替换.startsWith("js:")) { + d.forEach(it => { + try { + var input = it.vod_pic; + eval(rule.图片替换.trim().replace("js:", "")); + it.vod_pic = input + } catch (e) { + log(`图片:${it.vod_pic}替换错误:${e.message}`) + } + }) + } else if (rule.图片替换.includes("=>")) { + let replace_from = rule.图片替换.split("=>")[0]; + let replace_to = rule.图片替换.split("=>")[1]; + d.forEach(it => { + if (it.vod_pic && it.vod_pic.startsWith("http")) { + it.vod_pic = it.vod_pic.replace(replace_from, replace_to) + } + }) + } + } + if (rule.图片来源) { + d.forEach(it => { + if (it.vod_pic && it.vod_pic.startsWith("http")) { + it.vod_pic = it.vod_pic + rule.图片来源 + } + }) + } + if (d.length > 0) { + print(d.slice(0, 2)) + } + return JSON.stringify({ + list: d + }) +} + +function categoryParse(cateObj) { + fetch_params = JSON.parse(JSON.stringify(rule_fetch_params)); + let p = cateObj.一级; + if (!p || typeof p !== "string") { + return "{}" + } + let d = []; + let url = cateObj.url.replaceAll("fyclass", cateObj.tid); + if (cateObj.pg === 1 && url.includes("[") && url.includes("]")) { + url = url.split("[")[1].split("]")[0] + } else if (cateObj.pg > 1 && url.includes("[") && url.includes("]")) { + url = url.split("[")[0] + } + if (rule.filter_url) { + if (!/fyfilter/.test(url)) { + if (!url.endsWith("&") && !rule.filter_url.startsWith("&")) { + url += "&" + } + url += rule.filter_url + } else { + url = url.replace("fyfilter", rule.filter_url) + } + url = url.replaceAll("fyclass", cateObj.tid); + let fl = cateObj.filter ? cateObj.extend : {}; + if (rule.filter_def && typeof rule.filter_def === "object") { + try { + if (Object.keys(rule.filter_def).length > 0 && rule.filter_def.hasOwnProperty(cateObj.tid)) { + let self_fl_def = rule.filter_def[cateObj.tid]; + if (self_fl_def && typeof self_fl_def === "object") { + let fl_def = JSON.parse(JSON.stringify(self_fl_def)); + fl = Object.assign(fl_def, fl) + } + } + } catch (e) { + print(`合并不同分类对应的默认筛选出错:${e.message}`) + } + } + let new_url; + new_url = cheerio.jinja2(url, { + fl: fl, + fyclass: cateObj.tid + }); + url = new_url + } + if (/fypage/.test(url)) { + if (url.includes("(") && url.includes(")")) { + let url_rep = url.match(/.*?\((.*)\)/)[1]; + let cnt_page = url_rep.replaceAll("fypage", cateObj.pg); + let cnt_pg = eval(cnt_page); + url = url.replaceAll(url_rep, cnt_pg).replaceAll("(", "").replaceAll(")", "") + } else { + url = url.replaceAll("fypage", cateObj.pg) + } + } + MY_URL = url; + console.log(MY_URL); + p = p.trim(); + const MY_CATE = cateObj.tid; + if (p.startsWith("js:")) { + var MY_FL = cateObj.extend; + const TYPE = "cate"; + var input = MY_URL; + const MY_PAGE = cateObj.pg; + var desc = ""; + eval(p.trim().replace("js:", "")); + d = VODS + } else { + p = p.split(";"); + if (p.length < 5) { + return "{}" + } + let _ps = parseTags.getParse(p[0]); + _pdfa = _ps.pdfa; + _pdfh = _ps.pdfh; + _pd = _ps.pd; + let is_json = p[0].startsWith("json:"); + p[0] = p[0].replace(/^(jsp:|json:|jq:)/, ""); + try { + let html = getHtml(MY_URL); + if (html) { + if (is_json) { + html = dealJson(html) + } + let list = _pdfa(html, p[0]); + list.forEach(it => { + let links = p[4].split("+").map(p4 => { + return !rule.detailUrl ? _pd(it, p4, MY_URL) : _pdfh(it, p4) + }); + let link = links.join("$"); + let vod_id = rule.detailUrl ? MY_CATE + "$" + link : link; + let vod_name = _pdfh(it, p[1]).replace(/\n|\t/g, "").trim(); + let vod_pic = _pd(it, p[2], MY_URL); + if (rule.二级 === "*") { + vod_id = vod_id + "@@" + vod_name + "@@" + vod_pic + } + d.push({ + vod_id: vod_id, + vod_name: vod_name, + vod_pic: vod_pic, + vod_remarks: _pdfh(it, p[3]).replace(/\n|\t/g, "").trim() + }) + }) + } + } catch (e) { + console.log(e.message) + } + } + if (rule.图片替换) { + if (rule.图片替换.startsWith("js:")) { + d.forEach(it => { + try { + var input = it.vod_pic; + eval(rule.图片替换.trim().replace("js:", "")); + it.vod_pic = input + } catch (e) { + log(`图片:${it.vod_pic}替换错误:${e.message}`) + } + }) + } else if (rule.图片替换.includes("=>")) { + let replace_from = rule.图片替换.split("=>")[0]; + let replace_to = rule.图片替换.split("=>")[1]; + d.forEach(it => { + if (it.vod_pic && it.vod_pic.startsWith("http")) { + it.vod_pic = it.vod_pic.replace(replace_from, replace_to) + } + }) + } + } + if (rule.图片来源) { + d.forEach(it => { + if (it.vod_pic && it.vod_pic.startsWith("http")) { + it.vod_pic = it.vod_pic + rule.图片来源 + } + }) + } + if (d.length > 0) { + print(d.slice(0, 2)) + } + let pagecount = 0; + if (rule.pagecount && typeof rule.pagecount === "object" && rule.pagecount.hasOwnProperty(MY_CATE)) { + print(`MY_CATE:${MY_CATE},pagecount:${JSON.stringify(rule.pagecount)}`); + pagecount = parseInt(rule.pagecount[MY_CATE]) + } + let nodata = { + list: [{ + vod_name: "无数据,防无限请求", + vod_id: "no_data", + vod_remarks: "不要点,会崩的", + vod_pic: "https://ghproxy.net/https://raw.githubusercontent.com/hjdhnx/dr_py/main/404.jpg" + }], + total: 1, + pagecount: 1, + page: 1, + limit: 1 + }; + let vod = d.length < 1 ? JSON.stringify(nodata) : JSON.stringify({ + page: parseInt(cateObj.pg), + pagecount: pagecount || 999, + limit: 20, + total: 999, + list: d + }); + return vod +} + +function searchParse(searchObj) { + fetch_params = JSON.parse(JSON.stringify(rule_fetch_params)); + let d = []; + if (!searchObj.searchUrl) { + return "{}" + } + if (rule.searchNoPage && Number(searchObj.pg) > 1) { + return "{}" + } + let p = searchObj.搜索 === "*" && rule.一级 ? rule.一级 : searchObj.搜索; + if (!p || typeof p !== "string") { + return "{}" + } + p = p.trim(); + let pp = rule.一级 ? rule.一级.split(";") : []; + let url = searchObj.searchUrl.replaceAll("**", searchObj.wd); + if (searchObj.pg === 1 && url.includes("[") && url.includes("]") && !url.includes("#")) { + url = url.split("[")[1].split("]")[0] + } else if (searchObj.pg > 1 && url.includes("[") && url.includes("]") && !url.includes("#")) { + url = url.split("[")[0] + } + if (/fypage/.test(url)) { + if (url.includes("(") && url.includes(")")) { + let url_rep = url.match(/.*?\((.*)\)/)[1]; + let cnt_page = url_rep.replaceAll("fypage", searchObj.pg); + let cnt_pg = eval(cnt_page); + url = url.replaceAll(url_rep, cnt_pg).replaceAll("(", "").replaceAll(")", "") + } else { + url = url.replaceAll("fypage", searchObj.pg) + } + } + MY_URL = url; + console.log(MY_URL); + if (p.startsWith("js:")) { + const TYPE = "search"; + const MY_PAGE = searchObj.pg; + const KEY = searchObj.wd; + var input = MY_URL; + var detailUrl = rule.detailUrl || ""; + eval(p.trim().replace("js:", "")); + d = VODS + } else { + p = p.split(";"); + if (p.length < 5) { + return "{}" + } + let p0 = getPP(p, 0, pp, 0); + let _ps = parseTags.getParse(p0); + _pdfa = _ps.pdfa; + _pdfh = _ps.pdfh; + _pd = _ps.pd; + let is_json = p0.startsWith("json:"); + p0 = p0.replace(/^(jsp:|json:|jq:)/, ""); + try { + let req_method = MY_URL.split(";").length > 1 ? MY_URL.split(";")[1].toLowerCase() : "get"; + let html; + if (req_method === "post") { + let rurls = MY_URL.split(";")[0].split("#"); + let rurl = rurls[0]; + let params = rurls.length > 1 ? rurls[1] : ""; + print(`post=》rurl:${rurl},params:${params}`); + let _fetch_params = JSON.parse(JSON.stringify(rule_fetch_params)); + let postData = { + body: params + }; + Object.assign(_fetch_params, postData); + html = post(rurl, _fetch_params) + } else if (req_method === "postjson") { + let rurls = MY_URL.split(";")[0].split("#"); + let rurl = rurls[0]; + let params = rurls.length > 1 ? rurls[1] : ""; + print(`postjson-》rurl:${rurl},params:${params}`); + try { + params = JSON.parse(params) + } catch (e) { + params = "{}" + } + let _fetch_params = JSON.parse(JSON.stringify(rule_fetch_params)); + let postData = { + body: params + }; + Object.assign(_fetch_params, postData); + html = post(rurl, _fetch_params) + } else { + html = getHtml(MY_URL) + } + if (html) { + let search_tag = rule.搜索验证标识 || "系统安全验证|输入验证码"; + if (new RegExp(search_tag).test(html)) { + let cookie = verifyCode(MY_URL); + if (cookie) { + console.log(`本次成功过验证,cookie:${cookie}`); + setItem(RULE_CK, cookie) + } else { + console.log(`本次自动过搜索验证失败,cookie:${cookie}`) + } + html = getHtml(MY_URL) + } + if (!html.includes(searchObj.wd)) { + console.log("搜索结果源码未包含关键字,疑似搜索失败,正为您打印结果源码"); + console.log(html) + } + if (is_json) { + html = dealJson(html) + } + let list = _pdfa(html, p0); + let p1 = getPP(p, 1, pp, 1); + let p2 = getPP(p, 2, pp, 2); + let p3 = getPP(p, 3, pp, 3); + let p4 = getPP(p, 4, pp, 4); + let p5 = getPP(p, 5, pp, 5); + list.forEach(it => { + let links = p4.split("+").map(_p4 => { + return !rule.detailUrl ? _pd(it, _p4, MY_URL) : _pdfh(it, _p4) + }); + let link = links.join("$"); + let content; + if (p.length > 5 && p[5]) { + content = _pdfh(it, p5) + } else { + content = "" + } + let vod_id = link; + let vod_name = _pdfh(it, p1).replace(/\n|\t/g, "").trim(); + let vod_pic = _pd(it, p2, MY_URL); + if (rule.二级 === "*") { + vod_id = vod_id + "@@" + vod_name + "@@" + vod_pic + } + let ob = { + vod_id: vod_id, + vod_name: vod_name, + vod_pic: vod_pic, + vod_remarks: _pdfh(it, p3).replace(/\n|\t/g, "").trim(), + vod_content: content.replace(/\n|\t/g, "").trim() + }; + d.push(ob) + }) + } + } catch (e) { + print(`搜索发生错误:${e.message}`); + return "{}" + } + } + if (rule.图片替换) { + if (rule.图片替换.startsWith("js:")) { + d.forEach(it => { + try { + var input = it.vod_pic; + eval(rule.图片替换.trim().replace("js:", "")); + it.vod_pic = input + } catch (e) { + log(`图片:${it.vod_pic}替换错误:${e.message}`) + } + }) + } else if (rule.图片替换.includes("=>")) { + let replace_from = rule.图片替换.split("=>")[0]; + let replace_to = rule.图片替换.split("=>")[1]; + d.forEach(it => { + if (it.vod_pic && it.vod_pic.startsWith("http")) { + it.vod_pic = it.vod_pic.replace(replace_from, replace_to) + } + }) + } + } + if (rule.图片来源) { + d.forEach(it => { + if (it.vod_pic && it.vod_pic.startsWith("http")) { + it.vod_pic = it.vod_pic + rule.图片来源 + } + }) + } + return JSON.stringify({ + page: parseInt(searchObj.pg), + pagecount: 10, + limit: 20, + total: 100, + list: d + }) +} + +function detailParse(detailObj) { + let t1 = (new Date).getTime(); + fetch_params = JSON.parse(JSON.stringify(rule_fetch_params)); + let orId = detailObj.orId; + let vod_name = "片名"; + let vod_pic = ""; + let vod_id = orId; + if (rule.二级 === "*") { + let extra = orId.split("@@"); + vod_name = extra.length > 1 ? extra[1] : vod_name; + vod_pic = extra.length > 2 ? extra[2] : vod_pic + } + let vod = { + vod_id: vod_id, + vod_name: vod_name, + vod_pic: vod_pic, + type_name: "类型", + vod_year: "年份", + vod_area: "地区", + vod_remarks: "更新信息", + vod_actor: "主演", + vod_director: "导演", + vod_content: "简介" + }; + let p = detailObj.二级; + let url = detailObj.url; + let detailUrl = detailObj.detailUrl; + let fyclass = detailObj.fyclass; + let tab_exclude = detailObj.tab_exclude; + let html = detailObj.html || ""; + MY_URL = url; + if (detailObj.二级访问前) { + try { + print(`尝试在二级访问前执行代码:${detailObj.二级访问前}`); + eval(detailObj.二级访问前.trim().replace("js:", "")) + } catch (e) { + print(`二级访问前执行代码出现错误:${e.message}`) + } + } + if (p === "*") { + vod.vod_play_from = "在线播放"; + vod.vod_remarks = detailUrl; + vod.vod_actor = "没有二级,只有一级链接直接嗅探播放"; + vod.vod_content = MY_URL; + vod.vod_play_url = "嗅探播放$" + MY_URL.split("@@")[0] + } else if (typeof p === "string" && p.trim().startsWith("js:")) { + const TYPE = "detail"; + var input = MY_URL; + var play_url = ""; + eval(p.trim().replace("js:", "")); + vod = VOD; + console.log(JSON.stringify(vod)) + } else if (p && typeof p === "object") { + let tt1 = (new Date).getTime(); + if (!html) { + html = getHtml(MY_URL) + } + print(`二级${MY_URL}仅获取源码耗时:${(new Date).getTime()-tt1}毫秒`); + let _ps; + if (p.is_json) { + print("二级是json"); + _ps = parseTags.json; + html = dealJson(html) + } else if (p.is_jsp) { + print("二级是jsp"); + _ps = parseTags.jsp + } else if (p.is_jq) { + print("二级是jq"); + _ps = parseTags.jq + } else { + print("二级默认jq"); + _ps = parseTags.jq + } + let tt2 = (new Date).getTime(); + print(`二级${MY_URL}获取并装载源码耗时:${tt2-tt1}毫秒`); + _pdfa = _ps.pdfa; + _pdfh = _ps.pdfh; + _pd = _ps.pd; + if (p.title) { + let p1 = p.title.split(";"); + vod.vod_name = _pdfh(html, p1[0]).replace(/\n|\t/g, "").trim(); + let type_name = p1.length > 1 ? _pdfh(html, p1[1]).replace(/\n|\t/g, "").replace(/ /g, "").trim() : ""; + vod.type_name = type_name || vod.type_name + } + if (p.desc) { + try { + let p1 = p.desc.split(";"); + vod.vod_remarks = _pdfh(html, p1[0]).replace(/\n|\t/g, "").trim(); + vod.vod_year = p1.length > 1 ? _pdfh(html, p1[1]).replace(/\n|\t/g, "").trim() : ""; + vod.vod_area = p1.length > 2 ? _pdfh(html, p1[2]).replace(/\n|\t/g, "").trim() : ""; + vod.vod_actor = p1.length > 3 ? _pdfh(html, p1[3]).replace(/\n|\t/g, "").trim() : ""; + vod.vod_director = p1.length > 4 ? _pdfh(html, p1[4]).replace(/\n|\t/g, "").trim() : "" + } catch (e) {} + } + if (p.content) { + try { + let p1 = p.content.split(";"); + vod.vod_content = _pdfh(html, p1[0]).replace(/\n|\t/g, "").trim() + } catch (e) {} + } + if (p.img) { + try { + let p1 = p.img.split(";"); + vod.vod_pic = _pd(html, p1[0], MY_URL) + } catch (e) {} + } + let vod_play_from = "$$$"; + let playFrom = []; + if (p.重定向 && p.重定向.startsWith("js:")) { + print("开始执行重定向代码:" + p.重定向); + html = eval(p.重定向.replace("js:", "")) + } + if (p.tabs) { + if (p.tabs.startsWith("js:")) { + print("开始执行tabs代码:" + p.tabs); + var input = MY_URL; + eval(p.tabs.replace("js:", "")); + playFrom = TABS + } else { + let p_tab = p.tabs.split(";")[0]; + let vHeader = _pdfa(html, p_tab); + console.log(vHeader.length); + let tab_text = p.tab_text || "body&&Text"; + let new_map = {}; + for (let v of vHeader) { + let v_title = _pdfh(v, tab_text).trim(); + if (!v_title) { + v_title = "线路空" + } + console.log(v_title); + if (tab_exclude && new RegExp(tab_exclude).test(v_title)) { + continue + } + if (!new_map.hasOwnProperty(v_title)) { + new_map[v_title] = 1 + } else { + new_map[v_title] += 1 + } + if (new_map[v_title] > 1) { + v_title += Number(new_map[v_title] - 1) + } + playFrom.push(v_title) + } + } + console.log(JSON.stringify(playFrom)) + } else { + playFrom = ["在线播放"] + } + vod.vod_play_from = playFrom.join(vod_play_from); + let vod_play_url = "$$$"; + let vod_tab_list = []; + if (p.lists) { + if (p.lists.startsWith("js:")) { + print("开始执行lists代码:" + p.lists); + try { + var input = MY_URL; + var play_url = ""; + eval(p.lists.replace("js:", "")); + for (let i in LISTS) { + if (LISTS.hasOwnProperty(i)) { + try { + LISTS[i] = LISTS[i].map(it => it.split("$").slice(0, 2).join("$")) + } catch (e) { + print(`格式化LISTS发生错误:${e.message}`) + } + } + } + vod_play_url = LISTS.map(it => it.join("#")).join(vod_play_url) + } catch (e) { + print(`js执行lists: 发生错误:${e.message}`) + } + } else { + let list_text = p.list_text || "body&&Text"; + let list_url = p.list_url || "a&&href"; + let list_url_prefix = p.list_url_prefix || ""; + let is_tab_js = p.tabs.trim().startsWith("js:"); + for (let i = 0; i < playFrom.length; i++) { + let tab_name = playFrom[i]; + let tab_ext = p.tabs.split(";").length > 1 && !is_tab_js ? p.tabs.split(";")[1] : ""; + let p1 = p.lists.replaceAll("#idv", tab_name).replaceAll("#id", i); + tab_ext = tab_ext.replaceAll("#idv", tab_name).replaceAll("#id", i); + let tabName = tab_ext ? _pdfh(html, tab_ext) : tab_name; + console.log(tabName); + let new_vod_list = []; + let tt1 = (new Date).getTime(); + if (typeof pdfl === "function") { + new_vod_list = pdfl(html, p1, list_text, list_url, MY_URL); + if (list_url_prefix) { + new_vod_list = new_vod_list.map(it => it.split("$")[0] + "$" + list_url_prefix + it.split("$").slice(1).join("$")) + } + } else { + let vodList = []; + try { + vodList = _pdfa(html, p1); + console.log("len(vodList):" + vodList.length) + } catch (e) {} + for (let i = 0; i < vodList.length; i++) { + let it = vodList[i]; + new_vod_list.push(_pdfh(it, list_text).trim() + "$" + list_url_prefix + _pd(it, list_url, MY_URL)) + } + } + if (new_vod_list.length > 0) { + new_vod_list = forceOrder(new_vod_list, "", x => x.split("$")[0]); + console.log(`drpy影响性能代码共计列表数循环次数:${new_vod_list.length},耗时:${(new Date).getTime()-tt1}毫秒`) + } + let vlist = new_vod_list.join("#"); + vod_tab_list.push(vlist) + } + vod_play_url = vod_tab_list.join(vod_play_url) + } + } + vod.vod_play_url = vod_play_url + } + if (rule.图片替换 && rule.图片替换.includes("=>")) { + let replace_from = rule.图片替换.split("=>")[0]; + let replace_to = rule.图片替换.split("=>")[1]; + vod.vod_pic = vod.vod_pic.replace(replace_from, replace_to) + } + if (rule.图片来源 && vod.vod_pic && vod.vod_pic.startsWith("http")) { + vod.vod_pic = vod.vod_pic + rule.图片来源 + } + if (!vod.vod_id || vod_id.includes("$") && vod.vod_id !== vod_id) { + vod.vod_id = vod_id + } + let t2 = (new Date).getTime(); + console.log(`加载二级界面${MY_URL}耗时:${t2-t1}毫秒`); + try { + vod = vodDeal(vod) + } catch (e) { + console.log(`vodDeal发生错误:${e.message}`) + } + return JSON.stringify({ + list: [vod] + }) +} + +function get_tab_index(vod) { + let obj = {}; + vod.vod_play_from.split("$$$").forEach((it, index) => { + obj[it] = index + }); + return obj +} + +function vodDeal(vod) { + let vod_play_from = vod.vod_play_from.split("$$$"); + let vod_play_url = vod.vod_play_url.split("$$$"); + let tab_removed_list = vod_play_from; + let tab_ordered_list = vod_play_from; + let tab_renamed_list = vod_play_from; + let tab_list = vod_play_from; + let play_ordered_list = vod_play_url; + if (rule.tab_remove && rule.tab_remove.length > 0 || rule.tab_order && rule.tab_order.length > 0) { + let tab_index_dict = get_tab_index(vod); + if (rule.tab_remove && rule.tab_remove.length > 0) { + tab_removed_list = vod_play_from.filter(it => !rule.tab_remove.includes(it)); + tab_list = tab_removed_list + } + if (rule.tab_order && rule.tab_order.length > 0) { + let tab_order = rule.tab_order; + tab_ordered_list = tab_removed_list.sort((a, b) => { + const getOrderIndex = (tabName, orderRules) => { + for (let i = 0; i < orderRules.length; i++) { + if (tabName.includes(orderRules[i])) { + return i + } + } + return 9999 + }; + const indexA = getOrderIndex(a, tab_order); + const indexB = getOrderIndex(b, tab_order); + return indexA - indexB + }); + tab_list = tab_ordered_list + } + play_ordered_list = tab_list.map(it => vod_play_url[tab_index_dict[it]]) + } + if (rule.tab_rename && typeof rule.tab_rename === "object" & Object.keys(rule.tab_rename).length > 0) { + tab_renamed_list = tab_list.map(it => rule.tab_rename[it] || it); + tab_list = tab_renamed_list + } + vod.vod_play_from = tab_list.join("$$$"); + vod.vod_play_url = play_ordered_list.join("$$$"); + return vod +} + +function tellIsJx(url) { + try { + let is_vip = !/\.(m3u8|mp4|m4a)$/.test(url.split("?")[0]) && 是否正版(url); + return is_vip ? 1 : 0 + } catch (e) { + return 1 + } +} + +function playParse(playObj) { + fetch_params = JSON.parse(JSON.stringify(rule_fetch_params)); + MY_URL = playObj.url; + var MY_FLAG = playObj.flag; + if (!/http/.test(MY_URL)) { + try { + MY_URL = base64Decode(MY_URL) + } catch (e) {} + } + MY_URL = decodeURIComponent(MY_URL); + var input = MY_URL; + var flag = MY_FLAG; + let common_play = { + parse: SPECIAL_URL.test(input) || /^(push:)/.test(input) ? 0 : 1, + url: input, + flag: flag, + jx: tellIsJx(input) + }; + let lazy_play; + if (!rule.play_parse || !rule.lazy) { + lazy_play = common_play + } else if (rule.play_parse && rule.lazy && typeof rule.lazy === "string") { + try { + let lazy_code = rule.lazy.trim(); + if (lazy_code.startsWith("js:")) { + lazy_code = lazy_code.replace("js:", "").trim() + } + print("开始执行js免嗅=>" + lazy_code); + eval(lazy_code); + lazy_play = typeof input === "object" ? input : { + parse: SPECIAL_URL.test(input) || /^(push:)/.test(input) ? 0 : 1, + jx: tellIsJx(input), + url: input + } + } catch (e) { + print(`js免嗅错误:${e.message}`); + lazy_play = common_play + } + } else { + lazy_play = common_play + } + if (Array.isArray(rule.play_json) && rule.play_json.length > 0) { + let web_url = lazy_play.url; + for (let pjson of rule.play_json) { + if (pjson.re && (pjson.re === "*" || web_url.match(new RegExp(pjson.re)))) { + if (pjson.json && typeof pjson.json === "object") { + let base_json = pjson.json; + lazy_play = Object.assign(lazy_play, base_json); + break + } + } + } + } else if (rule.play_json && !Array.isArray(rule.play_json)) { + let base_json = { + jx: 1, + parse: 1 + }; + lazy_play = Object.assign(lazy_play, base_json) + } else if (!rule.play_json) { + let base_json = { + jx: 0, + parse: 1 + }; + lazy_play = Object.assign(lazy_play, base_json) + } + console.log(JSON.stringify(lazy_play)); + return JSON.stringify(lazy_play) +} + +function proxyParse(proxyObj) { + var input = proxyObj.params; + if (proxyObj.proxy_rule) { + log("准备执行本地代理规则:\n" + proxyObj.proxy_rule); + try { + eval(proxyObj.proxy_rule); + if (input && input !== proxyObj.params && Array.isArray(input) && input.length >= 3) { + return input + } else { + return [404, "text/plain", "Not Found"] + } + } catch (e) { + return [500, "text/plain", "代理规则错误:" + e.message] + } + } else { + return [404, "text/plain", "Not Found"] + } +} + +function isVideoParse(isVideoObj) { + var input = isVideoObj.url; + if (!isVideoObj.t) { + let re_matcher = new RegExp(isVideoObj.isVideo, "i"); + return re_matcher.test(input) + } else { + try { + eval(isVideoObj.isVideo); + if (typeof input === "boolean") { + return input + } else { + return false + } + } catch (e) { + log(`执行嗅探规则发生错误:${e.message}`); + return false + } + } +} + +function removeHeader(content, options = {}) { + const { + mode = "header-only", fileType + } = options; + const COMMENT_CONFIG = { + ".js": { + start: "/*", + end: "*/", + regex: /^\s*\/\*([\s\S]*?)\*\/\s*/, + headerRegex: /@header\(([\s\S]*?)\)/, + topCommentsRegex: /^(\s*(\/\/[^\n]*\n|\/\*[\s\S]*?\*\/)\s*)+/ + }, + ".py": { + start: '"""', + end: '"""', + regex: /^\s*"""([\s\S]*?)"""\s*/, + headerRegex: /@header\(([\s\S]*?)\)/, + topCommentsRegex: /^(\s*(#[^\n]*\n|'''[\s\S]*?'''|"""[\s\S]*?""")\s*)+/ + } + }; + if (!fileType) throw new Error("fileType option is required"); + const ext = fileType.startsWith(".") ? fileType : `.${fileType}`; + const config = COMMENT_CONFIG[ext]; + if (!config) throw new Error(`Unsupported file type: ${ext}`); + if (mode === "top-comments") { + const match = content.match(config.topCommentsRegex); + if (match) { + return content.substring(match[0].length).trim() + } + return content.trim() + } + const match = content.match(config.regex); + if (!match) return content.trim(); + let [fullComment, innerContent] = match; + if (config.headerRegex.test(innerContent)) { + innerContent = innerContent.replace(config.headerRegex, ""); + const cleanedInner = innerContent.split("\n").filter(line => line.trim().length > 0).join("\n"); + if (!cleanedInner.trim()) { + return content.replace(fullComment, "").trim() + } else { + const newComment = `${config.start}${cleanedInner}${config.end}`; + return content.replace(fullComment, newComment).trim() + } + } + return content.trim() +} + +function getOriginalJs(js_code) { + let current_match = /var rule|function|let |var |const|class Rule|async|this\./; + if (current_match.test(js_code)) { + return js_code + } + js_code = removeHeader(js_code, { + mode: "top-comments", + fileType: ".js" + }); + let rsa_private_key = "MIIEvQIBADANBgkqhkiG9w0BAQEFAASCBKcwggSjAgEAAoIBAQCqin/jUpqM6+fgYP/oMqj9zcdHMM0mEZXLeTyixIJWP53lzJV2N2E3OP6BBpUmq2O1a9aLnTIbADBaTulTNiOnVGoNG58umBnupnbmmF8iARbDp2mTzdMMeEgLdrfXS6Y3VvazKYALP8EhEQykQVarexR78vRq7ltY3quXx7cgI0ROfZz5Sw3UOLQJ+VoWmwIxu9AMEZLVzFDQN93hzuzs3tNyHK6xspBGB7zGbwCg+TKi0JeqPDrXxYUpAz1cQ/MO+Da0WgvkXnvrry8NQROHejdLVOAslgr6vYthH9bKbsGyNY3H+P12kcxo9RAcVveONnZbcMyxjtF5dWblaernAgMBAAECggEAGdEHlSEPFmAr5PKqKrtoi6tYDHXdyHKHC5tZy4YV+Pp+a6gxxAiUJejx1hRqBcWSPYeKne35BM9dgn5JofgjI5SKzVsuGL6bxl3ayAOu+xXRHWM9f0t8NHoM5fdd0zC3g88dX3fb01geY2QSVtcxSJpEOpNH3twgZe6naT2pgiq1S4okpkpldJPo5GYWGKMCHSLnKGyhwS76gF8bTPLoay9Jxk70uv6BDUMlA4ICENjmsYtd3oirWwLwYMEJbSFMlyJvB7hjOjR/4RpT4FPnlSsIpuRtkCYXD4jdhxGlvpXREw97UF2wwnEUnfgiZJ2FT/MWmvGGoaV/CfboLsLZuQKBgQDTNZdJrs8dbijynHZuuRwvXvwC03GDpEJO6c1tbZ1s9wjRyOZjBbQFRjDgFeWs9/T1aNBLUrgsQL9c9nzgUziXjr1Nmu52I0Mwxi13Km/q3mT+aQfdgNdu6ojsI5apQQHnN/9yMhF6sNHg63YOpH+b+1bGRCtr1XubuLlumKKscwKBgQDOtQ2lQjMtwsqJmyiyRLiUOChtvQ5XI7B2mhKCGi8kZ+WEAbNQcmThPesVzW+puER6D4Ar4hgsh9gCeuTaOzbRfZ+RLn3Aksu2WJEzfs6UrGvm6DU1INn0z/tPYRAwPX7sxoZZGxqML/z+/yQdf2DREoPdClcDa2Lmf1KpHdB+vQKBgBXFCVHz7a8n4pqXG/HvrIMJdEpKRwH9lUQS/zSPPtGzaLpOzchZFyQQBwuh1imM6Te+VPHeldMh3VeUpGxux39/m+160adlnRBS7O7CdgSsZZZ/dusS06HAFNraFDZf1/VgJTk9BeYygX+AZYu+0tReBKSs9BjKSVJUqPBIVUQXAoGBAJcZ7J6oVMcXxHxwqoAeEhtvLcaCU9BJK36XQ/5M67ceJ72mjJC6/plUbNukMAMNyyi62gO6I9exearecRpB/OGIhjNXm99Ar59dAM9228X8gGfryLFMkWcO/fNZzb6lxXmJ6b2LPY3KqpMwqRLTAU/zy+ax30eFoWdDHYa4X6e1AoGAfa8asVGOJ8GL9dlWufEeFkDEDKO9ww5GdnpN+wqLwePWqeJhWCHad7bge6SnlylJp5aZXl1+YaBTtOskC4Whq9TP2J+dNIgxsaF5EFZQJr8Xv+lY9lu0CruYOh9nTNF9x3nubxJgaSid/7yRPfAGnsJRiknB5bsrCvgsFQFjJVs="; + let decode_content = ""; + + function aes_decrypt(data) { + let key = CryptoJS.enc.Hex.parse("686A64686E780A0A0A0A0A0A0A0A0A0A"); + let iv = CryptoJS.enc.Hex.parse("647A797964730A0A0A0A0A0A0A0A0A0A"); + let encrypted = CryptoJS.AES.decrypt({ + ciphertext: CryptoJS.enc.Base64.parse(data) + }, key, { + iv: iv, + mode: CryptoJS.mode.CBC, + padding: CryptoJS.pad.Pkcs7 + }).toString(CryptoJS.enc.Utf8); + return encrypted + } + let error_log = false; + + function logger(text) { + if (error_log) { + log(text) + } + } + let decode_funcs = [text => { + try { + return ungzip(text) + } catch (e) { + logger("非gzip加密"); + return "" + } + }, text => { + try { + return base64Decode(text) + } catch (e) { + logger("非b64加密"); + return "" + } + }, text => { + try { + return aes_decrypt(text) + } catch (e) { + logger("非aes加密"); + return "" + } + }, text => { + try { + return RSA.decode(text, rsa_private_key, null) + } catch (e) { + logger("非rsa加密"); + return "" + } + }]; + let func_index = 0; + while (!current_match.test(decode_content)) { + decode_content = decode_funcs[func_index](js_code); + func_index++; + if (func_index >= decode_funcs.length) { + break + } + } + return decode_content +} + +function runMain(main_func_code, arg) { + let mainFunc = function() { + return "" + }; + try { + eval(main_func_code + "\nmainFunc=main;"); + return mainFunc(arg) + } catch (e) { + log(`执行main_funct发生了错误:${e.message}`); + return "" + } +} + +function init(ext) { + console.log("init"); + rule = {}; + rule_fetch_params = {}; + fetch_params = null; + try { + let muban = 模板.getMubans(); + if (typeof ext == "object") { + rule = ext + } else if (typeof ext == "string") { + let is_file = ext.startsWith("file://"); + if (ext.startsWith("http") || is_file) { + let query = getQuery(ext); + if (is_file) { + ext = ext.split("?")[0] + } + let js = request(ext, { + method: "GET" + }); + if (js) { + js = getOriginalJs(js); + eval("(function(){" + js.replace("var rule", "rule") + "})()") + } + if (query.type === "url" && query.params) { + if (is_file && /^http/.test(query.params)) { + rule.params = query.params + } else { + rule.params = urljoin(ext, query.params) + } + } else if (query.params) { + rule.params = query.params + } + } else { + ext = getOriginalJs(ext); + eval("(function(){" + ext.replace("var rule", "rule") + "})()") + } + } else { + console.log(`规则加载失败,不支持的规则类型:${typeof ext}`); + return + } + rule.host = (rule.host || "").rstrip("/"); + HOST = rule.host; + if (rule.hostJs) { + console.log(`检测到hostJs,准备执行...`); + try { + eval(rule.hostJs); + rule.host = HOST.rstrip("/") + } catch (e) { + console.log(`执行${rule.hostJs}获取host发生错误:${e.message}`) + } + } + if (rule["模板"] === "自动") { + try { + let host_headers = rule["headers"] || {}; + let host_html = getCode(HOST, { + headers: host_headers + }); + let match_muban = ""; + let muban_keys = Object.keys(muban).filter(it => !/默认|短视2|采集1/.test(it)); + for (let muban_key of muban_keys) { + try { + let host_data = JSON.parse(home({}, host_html, muban[muban_key].class_parse)); + if (host_data.class && host_data.class.length > 0) { + match_muban = muban_key; + console.log(`自动匹配模板:【${muban_key}】`); + break + } + } catch (e) { + console.log(`自动匹配模板:【${muban_key}】错误:${e.message}`) + } + } + if (match_muban) { + muban["自动"] = muban[match_muban]; + if (rule["模板修改"] && rule["模板修改"].startsWith("js:")) { + eval(rule["模板修改"].replace("js:", "").trim()) + } + } else { + delete rule["模板"] + } + } catch (e) { + delete rule["模板"] + } + } + if (rule.模板 && muban.hasOwnProperty(rule.模板)) { + print("继承模板:" + rule.模板); + rule = Object.assign(muban[rule.模板], rule) + } + let rule_cate_excludes = (rule.cate_exclude || "").split("|").filter(it => it.trim()); + let rule_tab_excludes = (rule.tab_exclude || "").split("|").filter(it => it.trim()); + rule_cate_excludes = rule_cate_excludes.concat(CATE_EXCLUDE.split("|").filter(it => it.trim())); + rule_tab_excludes = rule_tab_excludes.concat(TAB_EXCLUDE.split("|").filter(it => it.trim())); + rule.cate_exclude = rule_cate_excludes.join("|"); + rule.tab_exclude = rule_tab_excludes.join("|"); + rule.类型 = rule.类型 || "影视"; + rule.url = rule.url || ""; + rule.double = rule.double || false; + rule.homeUrl = rule.homeUrl || ""; + rule.detailUrl = rule.detailUrl || ""; + rule.searchUrl = rule.searchUrl || ""; + rule.homeUrl = rule.host && rule.homeUrl ? urljoin(rule.host, rule.homeUrl) : rule.homeUrl || rule.host; + rule.homeUrl = cheerio.jinja2(rule.homeUrl, { + rule: rule + }); + rule.detailUrl = rule.host && rule.detailUrl ? urljoin(rule.host, rule.detailUrl) : rule.detailUrl; + rule.二级访问前 = rule.二级访问前 || ""; + if (rule.url.includes("[") && rule.url.includes("]")) { + let u1 = rule.url.split("[")[0]; + let u2 = rule.url.split("[")[1].split("]")[0]; + rule.url = rule.host && rule.url ? urljoin(rule.host, u1) + "[" + urljoin(rule.host, u2) + "]" : rule.url + } else { + rule.url = rule.host && rule.url ? urljoin(rule.host, rule.url) : rule.url + } + if (rule.searchUrl.includes("[") && rule.searchUrl.includes("]") && !rule.searchUrl.includes("#")) { + let u1 = rule.searchUrl.split("[")[0]; + let u2 = rule.searchUrl.split("[")[1].split("]")[0]; + rule.searchUrl = rule.host && rule.searchUrl ? urljoin(rule.host, u1) + "[" + urljoin(rule.host, u2) + "]" : rule.searchUrl + } else { + rule.searchUrl = rule.host && rule.searchUrl ? urljoin(rule.host, rule.searchUrl) : rule.searchUrl + } + rule.timeout = rule.timeout || 5e3; + rule.encoding = rule.编码 || rule.encoding || "utf-8"; + rule.search_encoding = rule.搜索编码 || rule.search_encoding || ""; + rule.图片来源 = rule.图片来源 || ""; + rule.图片替换 = rule.图片替换 || ""; + rule.play_json = rule.hasOwnProperty("play_json") ? rule.play_json : []; + rule.pagecount = rule.hasOwnProperty("pagecount") ? rule.pagecount : {}; + rule.proxy_rule = rule.hasOwnProperty("proxy_rule") ? rule.proxy_rule : ""; + if (!rule.hasOwnProperty("sniffer")) { + rule.sniffer = false + } + rule.sniffer = rule.hasOwnProperty("sniffer") ? rule.sniffer : ""; + rule.sniffer = !!(rule.sniffer && rule.sniffer !== "0" && rule.sniffer !== "false"); + rule.isVideo = rule.hasOwnProperty("isVideo") ? rule.isVideo : ""; + if (rule.sniffer && !rule.isVideo) { + rule.isVideo = "http((?!http).){12,}?\\.(m3u8|mp4|flv|avi|mkv|rm|wmv|mpg|m4a|mp3)\\?.*|http((?!http).){12,}\\.(m3u8|mp4|flv|avi|mkv|rm|wmv|mpg|m4a|mp3)|http((?!http).)*?video/tos*|http((?!http).)*?obj/tos*" + } + rule.tab_remove = rule.hasOwnProperty("tab_remove") ? rule.tab_remove : []; + rule.tab_order = rule.hasOwnProperty("tab_order") ? rule.tab_order : []; + rule.tab_rename = rule.hasOwnProperty("tab_rename") ? rule.tab_rename : {}; + if (rule.headers && typeof rule.headers === "object") { + try { + let header_keys = Object.keys(rule.headers); + for (let k of header_keys) { + if (k.toLowerCase() === "user-agent") { + let v = rule.headers[k]; + console.log(v); + if (["MOBILE_UA", "PC_UA", "UC_UA", "IOS_UA", "UA"].includes(v)) { + rule.headers[k] = eval(v) + } + } else if (k.toLowerCase() === "cookie") { + let v = rule.headers[k]; + if (v && v.startsWith("http")) { + console.log(v); + try { + v = fetch(v); + console.log(v); + rule.headers[k] = v + } catch (e) { + console.log(`从${v}获取cookie发生错误:${e.message}`) + } + } + } + } + } catch (e) { + console.log(`处理headers发生错误:${e.message}`) + } + } else { + rule.headers = {} + } + oheaders = deepCopy(rule.headers); + rule_fetch_params = { + headers: rule.headers, + timeout: rule.timeout, + encoding: rule.encoding + }; + RKEY = typeof key !== "undefined" && key ? key : "drpy_" + (rule.title || rule.host); + pre(); + init_test() + } catch (e) { + console.log(`init_test发生错误:${e.message}`) + } +} +let homeHtmlCache = undefined; + +function home(filter, home_html, class_parse) { + console.log("home"); + home_html = home_html || ""; + class_parse = class_parse || ""; + if (typeof rule.filter === "string" && rule.filter.trim().length > 0) { + try { + let filter_json = ungzip(rule.filter.trim()); + rule.filter = JSON.parse(filter_json) + } catch (e) { + rule.filter = {} + } + } + let homeObj = { + filter: rule.filter || false, + MY_URL: rule.homeUrl, + class_name: rule.class_name || "", + class_url: rule.class_url || "", + class_parse: class_parse || rule.class_parse || "", + cate_exclude: rule.cate_exclude, + home_html: home_html + }; + return homeParse(homeObj) +} + +function homeVod(params) { + console.log("homeVod"); + let homeVodObj = { + "推荐": rule.推荐, + double: rule.double, + homeUrl: rule.homeUrl, + detailUrl: rule.detailUrl + }; + return homeVodParse(homeVodObj) +} + +function category(tid, pg, filter, extend) { + let cateObj = { + url: rule.url, + "一级": rule.一级, + tid: tid, + pg: parseInt(pg), + filter: filter, + extend: extend + }; + return categoryParse(cateObj) +} + +function detail(vod_url) { + let orId = vod_url; + let fyclass = ""; + log("orId:" + orId); + if (vod_url.indexOf("$") > -1) { + let tmp = vod_url.split("$"); + fyclass = tmp[0]; + vod_url = tmp[1] + } + let detailUrl = vod_url.split("@@")[0]; + let url; + if (!detailUrl.startsWith("http") && !detailUrl.includes("/")) { + url = rule.detailUrl.replaceAll("fyid", detailUrl).replaceAll("fyclass", fyclass) + } else if (detailUrl.includes("/")) { + url = urljoin(rule.homeUrl, detailUrl) + } else { + url = detailUrl + } + let detailObj = { + orId: orId, + url: url, + "二级": rule.二级, + "二级访问前": rule.二级访问前, + detailUrl: detailUrl, + fyclass: fyclass, + tab_exclude: rule.tab_exclude + }; + return detailParse(detailObj) +} + +function play(flag, id, flags) { + let playObj = { + url: id, + flag: flag, + flags: flags + }; + return playParse(playObj) +} + +function search(wd, quick, pg) { + if (rule.search_encoding) { + if (rule.search_encoding.toLowerCase() !== "utf-8") { + wd = encodeStr(wd, rule.search_encoding) + } + } else if (rule.encoding && rule.encoding.toLowerCase() !== "utf-8") { + wd = encodeStr(wd, rule.encoding) + } + let searchObj = { + searchUrl: rule.searchUrl, + "搜索": rule.搜索, + wd: wd, + pg: pg || 1, + quick: quick + }; + return searchParse(searchObj) +} + +function proxy(params) { + if (rule.proxy_rule && rule.proxy_rule.trim()) { + rule.proxy_rule = rule.proxy_rule.trim() + } + if (rule.proxy_rule.startsWith("js:")) { + rule.proxy_rule = rule.proxy_rule.replace("js:", "") + } + let proxyObj = { + params: params, + proxy_rule: rule.proxy_rule + }; + return proxyParse(proxyObj) +} + +function sniffer() { + let enable_sniffer = rule.sniffer || false; + if (enable_sniffer) { + log("开始执行辅助嗅探代理规则...") + } + return enable_sniffer +} + +function isVideo(url) { + let t = 0; + let is_video; + if (rule.isVideo && rule.isVideo.trim()) { + is_video = rule.isVideo.trim() + } + if (is_video.startsWith("js:")) { + is_video = is_video.replace("js:", ""); + t = 1 + } + let isVideoObj = { + url: url, + isVideo: is_video, + t: t + }; + let result = isVideoParse(isVideoObj); + if (result) { + log("成功执行辅助嗅探规则并检测到视频地址:\n" + rule.isVideo) + } + return result +} + +function getRule(key) { + return key ? rule[key] || "" : rule +} + +function deepCopy(_obj) { + return JSON.parse(JSON.stringify(_obj)) +} + +function matchesAll(str, pattern, flatten) { + if (!pattern.global) { + pattern = new RegExp(pattern.source, "g" + (pattern.ignoreCase ? "i" : "") + (pattern.multiline ? "m" : "")) + } + var matches = []; + var match; + while ((match = pattern.exec(str)) !== null) { + matches.push(match) + } + return flatten ? matches.flat() : matches +} + +function stringUtils() { + Object.defineProperties(String.prototype, { + replaceX: { + value: function(regex, replacement) { + let matches = matchesAll(this, regex, true); + if (matches && matches.length > 1) { + const hasCaptureGroup = /\$\d/.test(replacement); + if (hasCaptureGroup) { + return this.replace(regex, m => m.replace(regex, replacement)) + } else { + return this.replace(regex, (m, p1) => m.replace(p1, replacement)) + } + } + return this.replace(regex, replacement) + }, + configurable: true, + enumerable: false, + writable: true + }, + parseX: { + get: function() { + try { + return JSON.parse(this) + } catch (e) { + console.log(e.message); + return this.startsWith("[") ? [] : {} + } + }, + configurable: true, + enumerable: false + } + }) +} + +function cut(text, start, end, method, All) { + let result = ""; + let c = (t, s, e) => { + let result = ""; + let rs = []; + let results = []; + try { + let lr = new RegExp(String.raw`${s}`.toString()); + let rr = new RegExp(String.raw`${e}`.toString()); + const segments = t.split(lr); + if (segments.length < 2) return ""; + let cutSegments = segments.slice(1).map(segment => { + let splitSegment = segment.split(rr); + return splitSegment.length < 2 ? undefined : splitSegment[0] + e + }).filter(f => f); + if (All) { + return `[${cutSegments.join(",")}]` + } else { + return cutSegments[0] + } + } catch (e) { + console.log(`Error cutting text:${e.message}`) + } + return result + }; + result = c(text, start, end); + stringUtils(); + if (method && typeof method === "function") { + result = method(result) + } + return result +} + +function DRPY() { + return { + runMain: runMain, + getRule: getRule, + init: init, + home: home, + homeVod: homeVod, + category: category, + detail: detail, + play: play, + search: search, + proxy: proxy, + sniffer: sniffer, + isVideo: isVideo, + fixAdM3u8Ai: fixAdM3u8Ai + } +} +export default { + runMain: runMain, + getRule: getRule, + init: init, + home: home, + homeVod: homeVod, + category: category, + detail: detail, + play: play, + search: search, + proxy: proxy, + sniffer: sniffer, + isVideo: isVideo, + fixAdM3u8Ai: fixAdM3u8Ai, + DRPY: DRPY +}; \ No newline at end of file diff --git a/Ye-11X115490_PsyDuck4k/lib/logo.png b/Ye-11X115490_PsyDuck4k/lib/logo.png new file mode 100644 index 00000000..85a6f055 Binary files /dev/null and b/Ye-11X115490_PsyDuck4k/lib/logo.png differ diff --git a/Ye-11X115490_PsyDuck4k/lib/quick.txt b/Ye-11X115490_PsyDuck4k/lib/quick.txt new file mode 100644 index 00000000..c04372c0 --- /dev/null +++ b/Ye-11X115490_PsyDuck4k/lib/quick.txt @@ -0,0 +1 @@ +__pus=12fd6f406097e6ad7b59ce2b94da18e1AATYn5CsxNOBdy5gdD9AOGUj+hyODyKfX5CYOF7FT/2msT18L+WvAzPTEdh29MVktlv2eMnFu29JO2hYkHt/L1/R; \ No newline at end of file diff --git a/Ye-11X115490_PsyDuck4k/lib/uc.txt b/Ye-11X115490_PsyDuck4k/lib/uc.txt new file mode 100644 index 00000000..a7a5bb20 --- /dev/null +++ b/Ye-11X115490_PsyDuck4k/lib/uc.txt @@ -0,0 +1 @@ +__pus=4f5424234020f4d43638b7bbb501c2dfAAQ6EjxrmDHiJwB8cjYO7BHkLaCtyfWI9OYlpVEaREgU/9PscMnx2yuInMi2orkAAh/BLE8vlrD3Nn7xMoG2D2TG; \ No newline at end of file diff --git a/Ye-11X115490_PsyDuck4k/lib/优酷视频.js b/Ye-11X115490_PsyDuck4k/lib/优酷视频.js new file mode 100644 index 00000000..92e94d7a --- /dev/null +++ b/Ye-11X115490_PsyDuck4k/lib/优酷视频.js @@ -0,0 +1,169 @@ +var rule = { + title: '优酷[官]', + host: 'https://www.%79%6f%75%6b%75.com', + homeUrl: '', + searchUrl: 'https://search.%79%6f%75%6b%75.com/api/search?pg=fypage&keyword=**', + searchable: 2, + quickSearch: 0, + filterable: 1, + multi: 1, + url: '/category/data?optionRefresh=1&pageNo=fypage¶ms=fyfilter', + filter_url: '{{fl}}', + filter: 'H4sIAAAAAAAAA+1cW28bu7X+K4Uf+lIFsHJ3Hw7Q3d1TbODgtA9FgYODDUNJdLKNJs6u46RIiw3IF9nyRfJNtiVLjnyRLd9081UaWdKfGXJm/sXhDMm1SElWnGxnuwECGE6+tTgccpFc6+Mix//qseJndm6CTOV6fvu//+r5W/Bdz297XgYGBvsDQ8FAj69nMPAyyEQkvOeM7ZF0icwaTPo28OJN0HtisIOSiXp+8gndRNhVsPq5wqzkSarOpVCIVoqtJZzdJJNiNXPtdcyVaLUBJZzMPpZwQaoOOqsRQ50LFJ09U0adCxQdXd1BHQM0fYS6E6VFLnCf+97VciMOB56/brWfVa6R9zNX2A+Vqv2c9UWa2JHd4gCNkrW3w0InAHQ5UqZjUicA1DlWJ5VRWScHUOdKGrvFgY/Ov7eOFrDnkYRpTMmec4DDnaKr0CQOwNKlKCstLc0BPDdyTsbm5HMcwHP5XTJ7IJ/jAN+36CT34X0eABPsN+3zaWkCDqTOrCXNxoacTxxA//K7qBMAdKNH1sqC1HEA76sf0M2IfB8H0M7COTHysp0cgC42QeaOpY4D0FVPzdq21HGAfU/T9QXouwfUGfguGBhqW8FuFfWrVjAo1Rl4t/fufSHz/qvI76H8niq/i/K7qtyPcr8q70V5ryL394Gc/VeRP0b5Y1X+COWPVPlDlD9U5Q9Q/kCV37/DfmFj/X4XY89p6pSuyknnqno1u78eDgy/aVv7dm6cblxeYXlUar4zvGfVF6yZI7oopw6azbxMOOELe/KARM5lS/HJi2NSmLVqS0KDo0OiJ6Q0YVamLaMplNgxK5PHxf9A69SPgXf9w+9+DGK3zFrCPq1e4dJalXq3okwnpDjef/3uz2394NVg31UrvxoaxsZYtUsyH6GxRWLMtTWmVak2xhrLE2OXpkPOoXRNOHWYmK6UNGP5VSXZqdvF8TYbu5rsGhs0Gm9gl77/6XufG25JvfxZY223QKvF1i7hVouwXYKuiKUdAyuJlphlpXviQAmsLERrwdrXIb5C1TK+St1Rjp5KjynAZ4i914iFZHrPrKdlEQ6glaEDEoYecHCdGNotdHeLP93iFtmZJNWabCcH8L7cAuoEuE587RqXp/eseA3t4gJo59g0HV2T7eQA2jJdZJFTtoUDeG5knoZW5HMcwPumcmgzAa4TXy3jgNSXralJ+UrA6Gc37AIsKg7Q4rN25D1Y3AOKL1Wq5QA94LlZkz0RQPdtb4aeBltn8CdEECe51cl1uVGllha+qNUPa/EGXTHzj7QSNpsFko22eTx/7+Ne6b3vfyUhN0dCsFH+Xp2E3O3t7WOSXizR65boxTb29Wrs0d/X13uH/cICj1sLPHYLPMYCj1oLPHILPMICOhPy9z3s+4VJg3m5RhYSbZPVGq1qnOmX5w0dCMAnkgo9rvW/CDwJvuj3mo9WrRhmfYPG9uzofLtVW5SafzhMkMgEaYattLS4JsJYvkKMnOYwNBGUK83ZxVMar1qX4N5UEbx3acTeDFmbR7Qsg6AmghCTm6DLEZLNoSvVRGC2y0MWYbT3aiIYtdo6o0O0PGrFM9I1qyIol86YhuH9ntFq7aCAts6OmZeyVgGgvpFDKzJB3x/gBlgTgf3qZRadrNocCVek/VQR9HemSJcXzMqKtTwr+6uKkMdN2rOSnggAY7B/REPrliGJIGJodWzGbE6TSVkCMfS5fECiMSdxRgpybWoiaO96zIoB3eEAueAGiSVI9lSjW61SeON52B6rk+mUfB1gJIdb7Bk6n6eb0nFpIkHEa5f2lHHLRPznEWyRrBJ2EJmrz8CCu6VmIu/tqkx5CADzK3NiVqXHEQApYJiOy7UiwEewbrO+ZI9KRicAVF2p0IhsrgBgzVSFbMtxEQBeu79GR2TnBcApek5KwFg5AF1yjQUhqeMAdIkYTWTsQtMuSSNpIuiPcUzy0lQCQJvjGXoK7JwDqH9lksyCw+NAmTnOdgZnjguwP2FmGeiPB9BG0zRpgI088JXQ3Rihu/2sUtfEEVdekXLiZwXCc3IldvxjU05fUG6pherpHLGdB7YwPXdcV6TTeawq7eYCuQyhpftUJSOQjAbaBaOjyW6cCTLnzUKPdfieXsbRn6MIDBxJOKk9mliWnhKwyhoqIRKVPhExRoZ9Yki1AApToFNNZ0khCwJj6uSCZFfcZk2HZCFVBOXOkrScIdFDNmdlOVWEoThNV6paOU0EPT8+MY0FpwqhELDSc7sZxm67APu1ZzcPoFMeUHWMxsBZBWKwWG3cCxyyBGIoMZY3jSNnW2YjECMvyjmJE7KXZj/AixQR9LNxwfplZSUvQYzvWqAjBrzIA7jYY6QEhxIcKG1klVnGMbZRYJiFpw0rJtUCcL5GpvcYo1f42g3t4z60Vbs6xdthE6cs0F+WTorcqQzoWiK1G4W8Lg39UMLqhqgmc6ZsDyib6gEf2x7RlVVsyXSZNFdlSzjA9TeuJDI5gOfmss52TD7nJQF9QgZGHJmxInJ7KwBM3S7HsHRjk6SkDxcAJnRzns1c2aRsg6S2fEIGrf7E9KuTj9MT6YYFUOYDUQieB0B3XKPjQEc5wGlt4A5VANDF9qx58KQc4MrucqIsEwCyG50SApyoYyHAWiG5pZeFOm3xXUcRGnF9hZwjAqspaGuqShfkqhYAKqiM2VszuIdArM74p69e/vgiOBx8htPebr6363W2myETZ23TvlWp+SCPIbCF18ZbWkmV/5bTa1/3AT03sA9AudpfP/bXr/bXj/31q/3VthIg79VTtiIr7O/VJpuasu3r+7zE8t632lkQQGiPt7XXHZYqghmazVnxC7MCh0qAwQkdJqzJMemEOAA/PD9rnchHBYBJ3ixYablTFgBaFwrRVchJcQB1noctI2fPlJ2UdCWaCOoondKNBbITYT+yJlUEPbzcoOsyzAsADitzYsVLpA7JC8DwdCFCp7OMFFjz0gaaCMqlJ+zShSzBAejKZdyqCID2j5q1STC+B0BnZGjm1AlN2Ftwx0UVgaUbuzS2JS3NAYYskfCDqCWxEoNZm0hkjSZk0lMTQU2dzkg5iSwtkPHmZ0r6ceKksSgfP1b3/dyknsbCXHZWkDv3ToeHP7z6h1jCenD49Axgl8NcZk+al8MhAPKxfRKWU00AvU7tRKHlLMGqJRiNpcth05At0kRQzkvJyxIcIPdwB1zLWGgiGLsuCTg2Sa3TLfdguABHvaoId7UnzpacdgJojOGHgRfP+jsxZRKZYIa/arKBUh2Sjlm6a5BGUq07NRnQBVDInxWHWxUc4NQ7Yq5Wo5xc5GthnqaRdUJr5GIHR14TIdmedxpJINseUOfG1L4y36aUDnTh/2RuRrkEwAFmDbxthHifvqfoRuBpftusQjKCgy7blWuxeutwxy6uSx0HHTcMLTsFs7JET/bw7AMxWCCSckIbWAIx9GfsxC5vYgnESstpsoAtdwE+HSbLsAfgAEPlulVjHr9mN8D5qiKcSqf2+TbJVEkYfIoqAksU83QFTv04ULwkk6CXdAG0Y7lE8vLekQBYZ8Pam7EbYVK8hJoVkbpeA8/bfCejVk5j/Gp+K5TqQmXsixyPSGJ9BwncvTv3UcEAKB7ceYgKBkDxiInN2o5ZkVmgR3d+6e1AS8pUiLXs6s0ftX/wwLxr/qY9jao/GT+3V+UrH8jDQbgFhFThplIcXY5l7MkDa1xGdgFgRLpcYmLhCB2+ABgMUhg/BUBfbaCfFQDp5CQpSP8sAHqZBUbewMV4APqXbeBxmACqZ4GcrQBI/zocSbXstwOD79pW5KRBlkauWpGgVEfgm29+L0RPnjz1PRkaGB54/YNCcwuYB+bA55K5bEF8KTFX8j19OvzWJ/Jk1Sabe5y58AL29KiVKrCYRxNLbpmmQr095ubxcXiDKpLl/uvV2+Cv/jsw/GYoKIq9cCWDXAKl/vgdaF/9bWDwOWh+9+s/CE0Ai//pL/8phP8XHHwa/LqXv5m9/M8607vVBM4NHXJ18NxKsuFnXaDu5JrFKfeN+2W7FEFOJgDoxstkbtvKSdeFGEqoR/wth/t24ZgYORaByDpcWlFFyFDnaOqY/eBehYt8QgYVeudyykdLgKEqZiSkQByoTgh0AkDNUwZNy9s+AsBzmapdyHO2JJ9WRTh2U2S7ZFbh9YC1mR989eMLZd7zYSXZHFlcaRu3VqU2/Q52mZqeS9Mihn3Z/hFNHzhj0l0hhjqSdXK8T9clgUAMndoK06LcWQgA9ScjzvGIXZYJZ8Tw9N60lZRcVwB4d32VzhZZgJXvBgyDsjhDV6p2BK6WAdbzAsCl2zICX937V/f+hbh3kXtB9/73gcF/DvQ/Dw4O3UgmK79sGnC3jANYZ6PHbmIow7bjkp2pIh8HdqPBmLIAbAPO2JvPilTYDxf5nLW4WdsWgP/D73xhI3bqjGlbuagdhcRCMUr2T634HuOrPno2w6zmU2WicMdNhNvCwx0u8rF9rPsP6xpNZ5ydgnbra2qGXOx8+93/yJd6+NnAO2XrnGQttnOjpCkPqTQRbhzcUdLSappIL2cai5jS4CJO8H0CeGd9AjiJsF2s+Xi20MdWF2uAj8wX7UXcf9jzs2RPJrkFgC7wm4Ki8fq1QTfVuivHVgBtvQ4Fnw8GBp++63893GH37yTOaaH9ZK9Vqc23LIu9kDDjQJmLbvfg5IFjbapW8praPSFUn06u6U8n165KBD8JPHnX3ymhEZnoktAAZY+W0PCrCQ1c7/4791DBgJLpeKhmOtDxuuLfCPnDD+UyeJuuaOpHuUtN+W/oND8mnXE9zuyt4ZvnzCR8RC5DjP8B9ZAYSsxHmbdkv0lCnutoIpWwXnWRtRspNS932cZZyzloIhiQ+Qnm6uTK5+A6mRW2e3dLI18GjEM9R8/kvRIBQFfY1J5GjP5hBfOYAoBNTpZJQ9pcANxTbFqFVZqW0wAx1Lx0rDSbA3h6ZNasrHH2LitQRZgDcr9TF7NH1KSKPk9+5i9/+FaI3NsV0ObQOWPV7h4AeqWJsN8Rs57SymkinHFFsr5r7c5pRVulwPGNmpUe4ROHyZ2kPMTsoLiOG+NJoivMgsrruLTbSsl+yE21eqLrsMKOV+pcB8bjODqwZwNvB14PvBpstatLyK48tkWl2hX100VsjHYD+mHnQXhwK5b9aOOJbwZu33g4J+9/0QYVH5x8cQa9qROMYgGvmAgAXvr8BHUCQMvm1Kspc9qllN9/8zuhcP8HXndxySnLczoBvogZIr52uv0Z0mU2fOarLy26D18xvu6fpuj6Jyc+kAh7+eb1wNN+b190Q1dj6GWcxMvKB2CAZYkXA2+DVqxEgKspApjoWyNkZ4WEK1YWprsqguXV5XM7Ui+7x1OxDH7hpongXd7c5GkM+S5VpJdjTA/ZkSbSy7X+HYVWqV765VutGIMtrVM/TtJEX8TyF18d3v7y/8gA8Zy1rf/JUGDwWWtDP4Gvut+/hMJ2dNsOwZGvKoL2LM6S6ol13LBn4NNyVYQbret9um03L8z6hvZptCaC8YssWGvj+ifUqgjKZaPW1D7bD9BIgoydkRIcUrcrcHPh5udZq0g+YTdT6ta2TQH9OzoyjThbgfjJniaCcrOHzD52aMS5lH/rRRPBStple7QNetogRTnamgjq8/4wmvs1OsxjTQR29S612iNxKwUnEaroMzAN+2zcLsDOnwPQ5bbtoswpCIChpIarQQAYmuOklVqUw8EBmKLLpTo+ZlLHAerO3Nyn+kWaJoKpHl1mW3S3QRAMNBHUx//IAJw3IoaautzItFIJa7QKvfAA9J5/VqFlW1SRXk5b2JoIRqE4Ts/kuAkAbSyNk0loIwfQxjxbY5CP4QCe63Z9MXpCV8/ZgsOnNRGW27Sm4FYqBzhzFu2pYzpVUL509ET/IWRfQIz56f8BvNNeN7lTAAA=', + headers: { + 'User-Agent': 'PC_UA', + 'Cookie': 'cna=VvNvGX3e0ywCAavVEXlnA2bg; __ysuid=1626676228345Rl1; __ayft=1652434048647; __arycid=dm-1-00; __arcms=dm-1-00; __ayvstp=85; __arpvid=1667204023100cWWdgM-1667204023112; __ayscnt=10; __aypstp=60; isg=BBwcqxvvk3BxkWQGugbLpUSf7TrOlcC_U7GAj_YdfYfvQbzLHqYGT4Hgp6m5TvgX; tfstk=c3JOByYUH20ilVucLOhh0pCtE40lZfGc-PjLHLLfuX7SWNyAiQvkeMBsIw7PWDC..; l=eBQguS-PjdJFGJT-BOfwourza77OSIRA_uPzaNbMiOCPOb1B5UxfW6yHp4T6C3GVhsGJR3rp2umHBeYBqQd-nxvOF8qmSVDmn', + 'Referer': 'https://www.youku.com', + }, + timeout: 5000, + class_name: '电视剧&电影&综艺&动漫&少儿&纪录片&文化&亲子&教育&搞笑&生活&体育&音乐&游戏', + class_url: '电视剧&电影&综艺&动漫&少儿&纪录片&文化&亲子&教育&搞笑&生活&体育&音乐&游戏', + limit: 20, + //play_parse: true, +lazy:'js:input=""+input.split("?")[0];log(input);let html=JSON.parse(request(input));log(html);input=html.url||input', + 一级: $js.toString(() => { + let d = []; + MY_FL.type = MY_CATE; + let fl = stringify(MY_FL); + fl = encodeUrl(fl); + input = input.split("{")[0] + fl; + if (MY_PAGE > 1) { + let old_session = getItem("yk_session_" + MY_CATE, "{}"); + if (MY_PAGE === 2) { + input = input.replace("optionRefresh=1", "session=" + encodeUrl(old_session)) + } else { + input = input.replace("optionRefresh=1", "session=" + encodeUrl(old_session)) + } + } + let html = fetch(input, fetch_params); + try { + html = JSON.parse(html); + let lists = html.data.filterData.listData; + let session = html.data.filterData.session; + session = stringify(session); + if (session !== getItem("yk_session_" + MY_CATE, "{}")) { + setItem("yk_session_" + MY_CATE, session) + } + lists.forEach(function (it) { + let vid; + if (it.videoLink.includes("id_")) { + vid = it.videoLink.split("id_")[1].split(".html")[0] + } else { + vid = "msearch:" + } + d.push({ + title: it.title, + img: it.img, + desc: it.summary, + url: "https://search.youku.com/api/search?appScene=show_episode&showIds=" + vid, + content: it.subTitle + }) + }) + } catch (e) { + log("一级列表解析发生错误:" + e.message) + } + setResult(d); + }), + 二级: $js.toString(() => { + var d = []; + VOD = {}; + let html = request(input); + let json = JSON.parse(html); + if (/keyword/.test(input)) { + input = "https://search.youku.com/api/search?appScene=show_episode&showIds=" + json.pageComponentList[0].commonData.showId; + json = JSON.parse(fetch(MY_URL, fetch_params)) + } + let video_lists = json.serisesList; + var name = json.sourceName; + if (/优酷/.test(name) && video_lists.length > 0) { + let ourl = "https://v.youku.com/v_show/id_" + video_lists[0].videoId + ".html"; + let _img = video_lists[0].thumbUrl; + let html = fetch(ourl, { + headers: { + Referer: "https://v.youku.com/", + "User-Agent": PC_UA + } + }); + let json = /__INITIAL_DATA__/.test(html) ? html.split("window.__INITIAL_DATA__ =")[1].split(";")[0] : "{}"; + if (json === "{}") { + log("触发了优酷人机验证"); + VOD.vod_remarks = ourl; + VOD.vod_pic = _img; + VOD.vod_name = video_lists[0].title.replace(/(\d+)/g, ""); + VOD.vod_content = "触发了优酷人机验证,本次未获取详情,但不影响播放(" + ourl + ")" + } else { + try { + json = JSON.parse(json); + let data = json.data.data; + let data_extra = data.data.extra; + let img = data_extra.showImgV; + let model = json.data.model; + let m = model.detail.data.nodes[0].nodes[0].nodes[0].data; + let _type = m.showGenre; + let _desc = m.updateInfo || m.subtitle; + let JJ = m.desc; + let _title = m.introTitle; + VOD.vod_pic = img; + VOD.vod_name = _title; + VOD.vod_type = _type; + VOD.vod_remarks = _desc; + VOD.vod_content = JJ + } catch (e) { + log("海报渲染发生错误:" + e.message); + print(json); + VOD.vod_remarks = name + } + } + } + if (!/优酷/.test(name)) { + VOD.vod_content = "非自家播放源,暂无视频简介及海报"; + VOD.vod_remarks = name + } + + function adhead(url) { + return urlencode(url) + } + + play_url = play_url.replace("&play_url=", "&type=json&play_url="); + video_lists.forEach(function (it) { + let url = "https://v.youku.com/v_show/id_" + it.videoId + ".html"; + if (it.thumbUrl) { + d.push({ + desc: it.showVideoStage ? it.showVideoStage.replace("期", "集") : it.displayName, + pic_url: it.thumbUrl, + title: it.title, + url: play_url + adhead(url) + }) + } else if (name !== "优酷") { + d.push({ + title: it.displayName ? it.displayName : it.title, + url: play_url + adhead(it.url) + }) + } + }); + VOD.vod_play_from = name; + VOD.vod_play_url = d.map(function (it) { + return it.title + "$" + it.url + }) + .join("#"); + }), + + 搜索: $js.toString(() => { + var d = []; + let html = request(input); + let json = JSON.parse(html); + json.pageComponentList.forEach(function (it) { + if (it.hasOwnProperty("commonData")) { + it = it.commonData; + d.push({ + title: it.titleDTO.displayName, + img: it.posterDTO.vThumbUrl, + desc: it.stripeBottom, + content: it.updateNotice + " " + it.feature, + url: "https://search.youku.com/api/search?appScene=show_episode&showIds=" + it.showId + "&appCaller=h5" + }) + } + }); + setResult(d) + }), +} \ No newline at end of file diff --git a/Ye-11X115490_PsyDuck4k/lib/哔哩哔哩.js b/Ye-11X115490_PsyDuck4k/lib/哔哩哔哩.js new file mode 100644 index 00000000..b421b20a --- /dev/null +++ b/Ye-11X115490_PsyDuck4k/lib/哔哩哔哩.js @@ -0,0 +1,116 @@ +/** + * 影视TV 弹幕支持 + * https://t.me/fongmi_offical/ + * https://github.com/FongMi/Release/tree/main/apk + * Cookie设置 + * Cookie获取方法 https://ghproxy.net/https://raw.githubusercontent.com/UndCover/PyramidStore/main/list.md + * Cookie设置方法1: DR-PY 后台管理界面 + * CMS后台管理 > 设置中心 > 环境变量 > {"bili_cookie":"XXXXXXX","vmid":"XXXXXX"} > 保存 + * Cookie设置方法2: 手动替换Cookie + * 底下代码 headers的 + * "Cookie":"$bili_cookie" + * 手动替换为 + * "Cookie":"将获取的Cookie黏贴在这" + * 客户端长期Cookie设置教程: + * 抓包哔哩手机端搜索access_key,取任意链接里的access_key和appkey在drpy环境变量中增加同名的环境变量即可 + * 此时哔哩.js这个解析可用于此源的解析线路用 + */ + +var rule = { + title:'bili', + host:'https://api.bilibili.com', + url:'/fyclass-fypage&vmid=$vmid', + detailUrl:'/pgc/view/web/season?season_id=fyid', + filter_url:'fl={{fl}}', + vmid获取教程:'登录后访问https://api.bilibili.com/x/web-interface/nav,搜索mid就是,cookie需要 bili_jct,DedeUserID,SESSDATA参数', + searchUrl:'/x/web-interface/search/type?keyword=**&page=fypage&search_type=', + searchable:1, + filterable:1, + quickSearch:0, + headers:{ + 'User-Agent':'PC_UA', + "Referer": "https://www.bilibili.com", + "Cookie":"" + }, + tab_order:['bilibili','720P'],//线路顺序,按里面的顺序优先,没写的依次排后面 + timeout:5000, + class_name:'番剧&国创&电影&电视剧&纪录片&综艺&全部&追番&追剧&时间表', + class_url:'1&4&2&5&3&7&全部&追番&追剧&时间表', + filter:{"全部":[{"key":"tid","name":"分类","value":[{"n":"番剧","v":"1"},{"n":"国创","v":"4"},{"n":"电影","v":"2"},{"n":"电视剧","v":"5"},{"n":"记录片","v":"3"},{"n":"综艺","v":"7"}]},{"key":"order","name":"排序","value":[{"n":"播放数量","v":"2"},{"n":"更新时间","v":"0"},{"n":"最高评分","v":"4"},{"n":"弹幕数量","v":"1"},{"n":"追看人数","v":"3"},{"n":"开播时间","v":"5"},{"n":"上映时间","v":"6"}]},{"key":"season_status","name":"付费","value":[{"n":"全部","v":"-1"},{"n":"免费","v":"1"},{"n":"付费","v":"2%2C6"},{"n":"大会员","v":"4%2C6"}]}],"时间表":[{"key":"tid","name":"分类","value":[{"n":"番剧","v":"1"},{"n":"国创","v":"4"}]}]}, + play_parse:true, + play_json:[{re:'http://jiexi.fc8001.top/AXogZOBnwSzZOtQf.php?url=', json:{jx:1, parse:0,header:JSON.stringify({"user-agent":"PC_UA"})}}], + pagecount:{"1":1,"2":1,"3":1,"4":1,"5":1,"7":1,"时间表":1}, + lazy:'', + limit:5, + 推荐:'', + 推荐:'js:let d=[];function get_result(url){let videos=[];let html=request(url);let jo=JSON.parse(html);if(jo["code"]===0){let vodList=jo.result?jo.result.list:jo.data.list;vodList.forEach(function(vod){let aid=(vod["season_id"]+"").trim();let title=vod["title"].trim();let img=vod["cover"].trim();let remark=vod.new_ep?vod["new_ep"]["index_show"]:vod["index_show"];videos.push({vod_id:aid,vod_name:title,vod_pic:img,vod_remarks:remark})})}return videos}function get_rank(tid,pg){return get_result("https://api.bilibili.com/pgc/web/rank/list?season_type="+tid+"&pagesize=20&page="+pg+"&day=3")}function get_rank2(tid,pg){return get_result("https://api.bilibili.com/pgc/season/rank/web/list?season_type="+tid+"&pagesize=20&page="+pg+"&day=3")}function home_video(){let videos=get_rank(1).slice(0,5);[4,2,5,3,7].forEach(function(i){videos=videos.concat(get_rank2(i).slice(0,5))});return videos}VODS=home_video();', + 一级:'', + 一级:'js:let d=[];let vmid=input.split("vmid=")[1].split("&")[0];function get_result(url){let videos=[];let html=request(url);let jo=JSON.parse(html);if(jo["code"]===0){let vodList=jo.result?jo.result.list:jo.data.list;vodList.forEach(function(vod){let aid=(vod["season_id"]+"").trim();let title=vod["title"].trim();let img=vod["cover"].trim();let remark=vod.new_ep?vod["new_ep"]["index_show"]:vod["index_show"];videos.push({vod_id:aid,vod_name:title,vod_pic:img,vod_remarks:remark})})}return videos}function get_rank(tid,pg){return get_result("https://api.bilibili.com/pgc/web/rank/list?season_type="+tid+"&pagesize=20&page="+pg+"&day=3")}function get_rank2(tid,pg){return get_result("https://api.bilibili.com/pgc/season/rank/web/list?season_type="+tid+"&pagesize=20&page="+pg+"&day=3")}function get_zhui(pg,mode){let url="https://api.bilibili.com/x/space/bangumi/follow/list?type="+mode+"&follow_status=0&pn="+pg+"&ps=10&vmid="+vmid;return get_result(url)}function get_all(tid,pg,order,season_status){let url="https://api.bilibili.com/pgc/season/index/result?order="+order+"&pagesize=20&type=1&season_type="+tid+"&page="+pg+"&season_status="+season_status;return get_result(url)}function get_timeline(tid,pg){let videos=[];let url="https://api.bilibili.com/pgc/web/timeline/v2?season_type="+tid+"&day_before=2&day_after=4";let html=request(url);let jo=JSON.parse(html);if(jo["code"]===0){let videos1=[];let vodList=jo.result.latest;vodList.forEach(function(vod){let aid=(vod["season_id"]+"").trim();let title=vod["title"].trim();let img=vod["cover"].trim();let remark=vod["pub_index"]+" "+vod["follows"].replace("系列","");videos1.push({vod_id:aid,vod_name:title,vod_pic:img,vod_remarks:remark})});let videos2=[];for(let i=0;i<7;i++){let vodList=jo["result"]["timeline"][i]["episodes"];vodList.forEach(function(vod){if(vod["published"]+""==="0"){let aid=(vod["season_id"]+"").trim();let title=vod["title"].trim();let img=vod["cover"].trim();let date=vod["pub_ts"];let remark=date+" "+vod["pub_index"];videos2.push({vod_id:aid,vod_name:title,vod_pic:img,vod_remarks:remark})}})}videos=videos2.concat(videos1)}return videos}function cate_filter(d,cookie){if(MY_CATE==="1"){return get_rank(MY_CATE,MY_PAGE)}else if(["2","3","4","5","7"].includes(MY_CATE)){return get_rank2(MY_CATE,MY_PAGE)}else if(MY_CATE==="全部"){let tid=MY_FL.tid||"1";let order=MY_FL.order||"2";let season_status=MY_FL.season_status||"-1";return get_all(tid,MY_PAGE,order,season_status)}else if(MY_CATE==="追番"){return get_zhui(MY_PAGE,1)}else if(MY_CATE==="追剧"){return get_zhui(MY_PAGE,2)}else if(MY_CATE==="时间表"){let tid=MY_FL.tid||"1";return get_timeline(tid,MY_PAGE)}else{return[]}}VODS=cate_filter();', + 二级:{ + is_json:true, + title:".result.title;.result.share_sub_title", + img:".result.cover", + desc:".result.new_ep.desc;.result.publish.pub_time;.result.subtitle", + content:".result.evaluate", + tabs:"js:pdfa=jsp.pdfa;TABS=['B站']", + lists:".result.episodes", + list_text:'title', + list_url:'cid', + }, + 二级:'', + 二级:'js:function zh(num){let p="";if(Number(num)>1e8){p=(num/1e8).toFixed(2)+"亿"}else if(Number(num)>1e4){p=(num/1e4).toFixed(2)+"万"}else{p=num}return p}let html=request(input);let jo=JSON.parse(html).result;let id=jo["season_id"];let title=jo["title"];let pic=jo["cover"];let areas=jo["areas"][0]["name"];let typeName=jo["share_sub_title"];let date=jo["publish"]["pub_time"].substr(0,4);let dec=jo["evaluate"];let remark=jo["new_ep"]["desc"];let stat=jo["stat"];let status="弹幕: "+zh(stat["danmakus"])+" 点赞: "+zh(stat["likes"])+" 投币: "+zh(stat["coins"])+" 追番追剧: "+zh(stat["favorites"]);let score=jo.hasOwnProperty("rating")?"评分: "+jo["rating"]["score"]+" "+jo["subtitle"]:"暂无评分"+" "+jo["subtitle"];let vod={vod_id:id,vod_name:title,vod_pic:pic,type_name:typeName,vod_year:date,vod_area:areas,vod_remarks:remark,vod_actor:status,vod_director:score,vod_content:dec};let ja=jo["episodes"];let playurls1=[];let playurls2=[];ja.forEach(function(tmpJo){let eid=tmpJo["id"];let cid=tmpJo["cid"];let link=tmpJo["link"];let part=tmpJo["title"].replace("#","-")+" "+tmpJo["long_title"];playurls1.push(part+"$"+eid+"_"+cid);playurls2.push(part+"$"+link)});let playUrl=playurls1.join("#")+"$$$"+playurls2.join("#");vod["vod_play_from"]="B站$$$bilibili";vod["vod_play_url"]=playUrl;VOD=vod;', + 搜索:'', + 搜索:'js:let url1=input+"media_bangumi";let url2=input+"media_ft";let html=request(url1);let msg=JSON.parse(html).message;if(msg!=="0"){VODS=[{vod_name:KEY+"➢"+msg,vod_id:"no_data",vod_remarks:"别点,缺少bili_cookie",vod_pic:"https://ghproxy.net/https://raw.githubusercontent.com/hjdhnx/dr_py/main/404.jpg"}]}else{let jo1=JSON.parse(html).data;html=request(url2);let jo2=JSON.parse(html).data;let videos=[];let vodList=[];if(jo1["numResults"]===0){vodList=jo2["result"]}else if(jo2["numResults"]===0){vodList=jo1["result"]}else{vodList=jo1["result"].concat(jo2["result"])}vodList.forEach(function(vod){let aid=(vod["season_id"]+"").trim();let title=KEY+"➢"+vod["title"].trim().replace(\'\',"").replace("","");let img=vod["cover"].trim();let remark=vod["index_show"];videos.push({vod_id:aid,vod_name:title,vod_pic:img,vod_remarks:remark})});VODS=videos}', + lazy:'', + lazy:`js: + if (/^http/.test(input)) { + input = { + jx: 1, + url: input, + parse: 0, + header: JSON.stringify({ + "user-agent": "Mozilla/5.0" + }) + } + } else { + let ids = input.split("_"); + let dan = 'https://api.bilibili.com/x/v1/dm/list.so?oid=' + ids[1]; + let result = {}; + let url = "https://api.bilibili.com/pgc/player/web/playurl?qn=116&ep_id=" + ids[0] + "&cid=" + ids[1]; + let html = request(url); + let jRoot = JSON.parse(html); + if (jRoot["message"] !== "success") { + print("需要大会员权限才能观看"); + input = "" + } else { + let jo = jRoot["result"]; + let ja = jo["durl"]; + let maxSize = -1; + let position = -1; + ja.forEach(function(tmpJo, i) { + if (maxSize < Number(tmpJo["size"])) { + maxSize = Number(tmpJo["size"]); + position = i + } + }); + let url = ""; + if (ja.length > 0) { + if (position === -1) { + position = 0 + } + url = ja[position]["url"] + } + result["parse"] = 0; + result["playUrl"] = ""; + result["url"] = url; + result["header"] = { + Referer: "https://www.bilibili.com", + "User-Agent": "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/100.0.4896.127 Safari/537.36" + }; + result["contentType"] = "video/x-flv"; + result["danmaku"] = dan; + input = result + } + } + `, +} \ No newline at end of file diff --git a/Ye-11X115490_PsyDuck4k/lib/山楂影视.py b/Ye-11X115490_PsyDuck4k/lib/山楂影视.py new file mode 100644 index 00000000..c8c7ab15 --- /dev/null +++ b/Ye-11X115490_PsyDuck4k/lib/山楂影视.py @@ -0,0 +1,350 @@ + # -*- coding: utf-8 -*- +# 本资源来源于互联网公开渠道,仅可用于个人学习爬虫技术。 +# 严禁将其用于任何商业用途,下载后请于 24 小时内删除,搜索结果均来自源站,本人不承担任何责任。 +#junyouyun + +import sys +import json +import time +import base64 +import hashlib +import urllib3 +import concurrent.futures +from urllib.parse import quote +from base.spider import Spider +from Crypto.PublicKey import RSA +from Crypto.Cipher import PKCS1_v1_5 + +urllib3.disable_warnings(urllib3.exceptions.InsecureRequestWarning) +sys.path.append('..') + +class Spider(Spider): + host, userid, episode_list = '', '', [] + + # ---------- 加密与签名相关常量 ---------- + PUB_KEY_B64 = "MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQCoYt0BP77U+DM08BiI/QbSRIfxijXo85BTPqIM1Ow8BNwhLETzRIZ+dEwdWDbydG/PspgBAfRpGaYVdJYtvaC2JnoO8+Ik6qMWojfEJxSFLa0Pb0A892tun4gsxoEMjcreZ+YGyaBxAfqX0BSMfdrOgIYaZQjYrw9TRLlUT31QoQIDAQAB" + APP_SIGN_SHA1 = "09a8dc51639a31801af5f6418caebfabc695eb24" + DEVICE_ID = "2d590b9842d064a1" + + # RSA 私钥(用于解密响应) + PRIV_KEY_B64 = """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==""" + + headers = { + 'User-Agent': "okhttp/4.12.0", + 'Connection': "Keep-Alive", + 'Accept-Encoding': "gzip", + 'Content-Type': "application/json;charset=UTF-8", + 'Cache-Control': "no-cache", + 'token': "", + 'deviceId': DEVICE_ID, + 'client': "app", + 'deviceType': "Android" + } + + # ---------- RSA 加密 ---------- + def rsa_encrypt(self, data: str) -> str: + key = RSA.import_key(base64.b64decode(self.PUB_KEY_B64)) + cipher = PKCS1_v1_5.new(key) + encrypted = cipher.encrypt(data.encode('utf-8')) + return base64.b64encode(encrypted).decode('utf-8') + + # ---------- RSA 解密(支持分块) ---------- + def rsa_decrypt(self, encrypted_b64: str) -> str: + key = RSA.import_key(base64.b64decode(self.PRIV_KEY_B64)) + cipher = PKCS1_v1_5.new(key) + encrypted_bytes = base64.b64decode(encrypted_b64) + block_size = 256 + decrypted_parts = [] + for i in range(0, len(encrypted_bytes), block_size): + block = encrypted_bytes[i:i+block_size] + decrypted_parts.append(cipher.decrypt(block, None)) + return b''.join(decrypted_parts).decode('utf-8') + + # ---------- 构建签名参数 ---------- + def build_params_string(self, episode_id="", episode_index="", vid="", player_id="", type_id="", user_id=""): + return (f"episodeId{episode_id}" + f"episodeIndex{episode_index}" + f"id{vid}" + f"playerId{player_id}" + f"source0" + f"typeId{type_id}" + f"userId{user_id}") + + def generate_sign(self, timestamp: str, params_str: str, device_id: str) -> str: + raw = f"SaltLSFBTimestamp{timestamp}Params{params_str}ClientappDeviceId{device_id}" + b64 = base64.b64encode(raw.encode('utf-8')).decode('utf-8') + md5 = hashlib.md5(b64.encode('utf-8')).hexdigest().upper() + return md5 + + def build_encrypted_headers(self, body_json: str, params_str: str) -> dict: + timestamp = str(int(time.time())) + encrypted_key = self.rsa_encrypt(body_json) + snjm = self.rsa_encrypt("113") + appsign = self.rsa_encrypt(self.APP_SIGN_SHA1) + sign = self.generate_sign(timestamp, params_str, self.DEVICE_ID) + + headers = { + "snjm": snjm, + "appsign": appsign, + "timestamp": timestamp, + "sign": sign, + "deviceId": self.DEVICE_ID, + "token": self.headers.get('token', ''), + "client": "app", + "deviceType": "Android", + "Content-Type": "application/json;charset=UTF-8", + "Cache-Control": "no-cache", + "User-Agent": "okhttp/4.12.0" + } + return headers, {"key": encrypted_key} + + # ---------- 原有接口(保持不变) ---------- + def init(self, extend=''): + self.headers['deviceId'] = self.DEVICE_ID + self.host = 'http://qkys.qukanwh.com' + response = self.fetch(f'{self.host}/api/v1/app/user/visitorInfo', headers=self.headers).json() + self.userid = response['data']['id'] + token = response['data']['token'] + self.headers['token'] = token + + def homeContent(self, filter): + response = self.post(f'{self.host}/api/v1/app/screen/screenType', headers=self.headers).json() + data = response['data'] + classes = [] + for i in data: + classes.append({'type_id': i['id'], 'type_name': i['name']}) + return {'class': classes} + + def homeVideoContent(self): + response = self.post(f'{self.host}/api/v1/app/recommend/recommendList', headers=self.headers).json() + data = response['data'] + videos = [] + with concurrent.futures.ThreadPoolExecutor() as executor: + future_to_id = { + executor.submit( + self.post, + f'{self.host}/api/v1/app/recommend/recommendSubList', + data=json.dumps({ + "condition": item['id'], + "pageNum": 1, + "pageSize": 6 + }), + headers=self.headers + ): item['id'] for item in data + } + for future in concurrent.futures.as_completed(future_to_id): + try: + response = future.result().json() + for video in response['data']['records']: + videos.append({ + "vod_id": video['id'], + "vod_name": video['name'], + "vod_pic": video['cover'] + }) + except Exception as e: + print(f"Request failed for item {future_to_id[future]}: {str(e)}") + return {'list': videos} + + def categoryContent(self, tid, pg, filter, extend): + payload = { + "condition": { + "classify": "", + "region": "", + "sreecnTypeEnum": "NEWEST", + "typeId": tid, + "year": "" + }, + "pageNum": pg, + "pageSize": 40 + } + response = self.post(f'{self.host}/api/v1/app/screen/screenMovie', data=json.dumps(payload), headers=self.headers).json() + videos = [] + for i in response['data']['records']: + videos.append({ + "vod_id": i['id'], + "vod_name": i['name'], + "vod_pic": i['cover'], + "vod_remarks": i['area'], + "vod_year": i['year'] + }) + return {'list': videos, 'page': pg} + + def searchContent(self, key, quick, pg='1'): + payload = { + "condition": { + "value": key + }, + "pageNum": pg, + "pageSize": 40 + } + response = self.post(f'{self.host}/api/v1/app/search/searchMovie', data=json.dumps(payload), headers=self.headers).json() + videos = [] + for i in response['data']['records']: + videos.append({ + 'vod_id': i['id'], + 'vod_name': i['name'], + 'vod_pic': i['cover'], + 'vod_remarks': i['area'], + 'vod_year': i['year'], + 'vod_area': i['area'], + 'vod_content': i['desc'] + }) + return {'list': videos, 'page': pg} + + # ---------- 详情页(已集成解密) ---------- + def detailContent(self, ids): + type_id = "M15" # 注意:原脚本写死为 M17,可根据需要修改 + vid = ids[0] + body = { + "id": vid, + "source": 0, + "typeId": type_id, + "userId": self.userid, + "episodeId": "", + "episodeIndex": "", + "playerId": "" + } + body_json = json.dumps(body, separators=(',', ':')) + params_str = self.build_params_string( + episode_id="", + episode_index="", + vid=str(vid), + player_id="", + type_id=type_id, + user_id=str(self.userid) + ) + headers, payload = self.build_encrypted_headers(body_json, params_str) + + # 发送加密请求 + resp_raw = self.post(f'{self.host}/api/v1/app/play/movieDetails', data=json.dumps(payload), headers=headers).json() + encrypted_data = resp_raw.get('data') + if not encrypted_data: + raise Exception("响应中 data 为空") + # 解密 data 字段 + decrypted_json_str = self.rsa_decrypt(encrypted_data) + data = json.loads(decrypted_json_str) + + # 后续处理与原脚本相同 + currentplayerid = data['playerId'] + play_urls = [] + play_url = [] + show = [] + for i in data['episodeList']: + play_url.append(f"{i['episode']}${ids[0]}@{currentplayerid}@{i['id']}@episode") + play_urls.append('#'.join(play_url)) + moviePlayerList = data['moviePlayerList'] + for i2 in moviePlayerList: + if i2['id'] == currentplayerid: + show.append(i2['moviePlayerName']) + for j in moviePlayerList: + playerid = j['id'] + episodeTotal = j.get('episodeTotal') + if playerid == currentplayerid or episodeTotal is None: + continue + play_url = [] + for k in range(1, episodeTotal + 1): + play_url.append(f"第{k}集${k}@{playerid}@{ids[0]}@virtual") + play_urls.append('#'.join(play_url)) + if j['moviePlayerName'] not in show: + show.append(j['moviePlayerName']) + + # 获取简介(此接口可能无需加密,保持原样) + payload_desc = { + "id": ids[0], + "typeId": type_id + } + response_desc = self.post(f'{self.host}/api/v1/app/play/movieDesc', data=json.dumps(payload_desc), headers=self.headers).json() + data2 = response_desc['data'] + + video = { + 'vod_id': data2['id'], + 'vod_name': data2['name'], + 'vod_pic': data2['cover'], + 'vod_content': data2['introduce'], + 'vod_year': data2['year'], + 'vod_area': data2['area'], + 'vod_remarks': '', + 'vod_score': data2['score'], + 'type_name': data2['classify'], + 'vod_director': data2['director'], + 'vod_actor': data2['star'], + 'vod_play_from': '$$$'.join(show), + 'vod_play_url': '$$$'.join(play_urls) + } + return {'list': [video]} + + # ---------- 播放页(已集成解密) ---------- + def playerContent(self, flag, id, vipflags): + param, playerid, param2, param3 = id.split('@') + if param3 == 'virtual': + payload = { + "episodeIndex": str(int(param) - 1), + "id": int(param2), + "playerId": playerid, + "source": 0, + "typeId": "M15", + "userId": self.userid, + "episodeId": "" + } + else: + payload = { + "episodeId": param2, + "id": int(param), + "playerId": playerid, + "source": 0, + "typeId": "M15", + "userId": self.userid, + "episodeIndex": "" + } + body_json = json.dumps(payload, separators=(',', ':')) + print(body_json) + params_str = self.build_params_string( + episode_id=payload.get("episodeId", ""), + episode_index=payload.get("episodeIndex", ""), + vid=str(payload["id"]), + player_id=payload["playerId"], + type_id=payload["typeId"], + user_id=str(payload["userId"]) + ) + print(params_str) + headers, encrypted_payload = self.build_encrypted_headers(body_json, params_str) + print(headers) + print(encrypted_payload) + # 获取播放信息(加密响应) + resp_raw = self.post(f'{self.host}/api/v1/app/play/movieDetails', data=json.dumps(encrypted_payload), headers=headers).json() + encrypted_data = resp_raw.get('data') + if not encrypted_data: + raise Exception("响应中 data 为空") + decrypted_json_str = self.rsa_decrypt(encrypted_data) + data = json.loads(decrypted_json_str) + print(data) + parse_url = data['url'] + playerid = data['playerId'] + + # 调用分析接口(注:analysisMovieUrl 的响应可能也是加密的,但原脚本直接取 data,这里暂不做额外解密) + analysis_body = { + "playerUrl": parse_url, + "playerId": playerid + } + analysis_json = json.dumps(analysis_body, separators=(',', ':')) + # analysisMovieUrl 接口的参数拼接?理论上也需要签名,但原脚本是 GET 方式,为了兼容,我们沿用原脚本的 GET 方式 + # 原脚本使用 fetch GET 带参数,并未加密。这里也采用 GET 方式,不使用加密 headers + resp_analysis = self.fetch(f"{self.host}/api/v1/app/play/analysisMovieUrl?playerUrl={quote(parse_url,safe='')}&playerId={playerid}", headers=self.headers).json() + url = resp_analysis.get('data') + + return {'jx': '0', 'parse': '0', 'url': url, 'header': {'User-Agent': 'Mozilla/5.0 (iPhone; CPU iPhone OS 13_2_3 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/13.0.3 Mobile/15E148 Safari/604.1'}} + + def getName(self): + pass + + def isVideoFormat(self, url): + pass + + def manualVideoCheck(self): + pass + + def destroy(self): + pass + + def localProxy(self, param): + pass \ No newline at end of file diff --git a/Ye-11X115490_PsyDuck4k/lib/布布影视.js b/Ye-11X115490_PsyDuck4k/lib/布布影视.js new file mode 100644 index 00000000..a23348e4 --- /dev/null +++ b/Ye-11X115490_PsyDuck4k/lib/布布影视.js @@ -0,0 +1,211 @@ +// 本资源来源于互联网公开渠道,仅可用于个人学习爬虫技术。 +// 严禁将其用于任何商业用途,下载后请于 24 小时内删除,搜索结果均来自源站,本人不承担任何责任。 + +import {Crypto, _} from 'assets://js/lib/cat.js'; +let host = 'https://bubutv.top'; +let device_id = ''; +const pkg = 'com.sunshine.tv'; +const ver = '4'; +const device_id_cache_key = 'com.sunshine.tv_3qys_B7k7Dt56Rn'; + +async function init(cfg) { + const ext = cfg.ext; + if (typeof cfg.ext === 'string' && cfg.ext.startsWith('http')) { + host = cfg.ext.trim().replace(/\/$/, ''); + } +} + +async function home(filter) { + const hd = await getHeaders(); + const resp = await req(`${host}/api.php/app/index/home`, { headers: hd }); + const json = JSON.parse(resp.content); + const classes = _.map(json.data.categories, (i) => ({ + 'type_id': i.type_name, + 'type_name': i.type_name + })); + const videos = []; + for (const cat of json.data.categories) { + videos.push(...arr2vods(cat.videos)); + } + return JSON.stringify({ class: classes, list: videos }); +} + +async function homeVod() { + return JSON.stringify({ list: [] }); +} + +async function category(tid, pg, filter, extend) { + const hd = await getHeaders(); + const url = `${host}/api.php/app/filter/vod?type_name=${encodeURIComponent(tid)}&page=${pg}&sort=hits`; + const resp = await req(url, { headers: hd }); + const json = JSON.parse(resp.content); + return JSON.stringify({ + list: arr2vods(json.data), + pagecount: json.pageCount, + page: parseInt(pg) + }); +} + +async function search(wd, quick, pg=1) { + const hd = await getHeaders(); + const url = `${host}/api.php/app/search/index?wd=${encodeURIComponent(wd)}&page=${pg}&limit=15`; + const resp = await req(url, { headers: hd }); + const json = JSON.parse(resp.content); + return JSON.stringify({ + list: arr2vods(json.data), + pagecount: json.pageCount, + page: parseInt(pg) + }); +} + +async function detail(id) { + const hd = await getHeaders(); + const resp = await req(`${host}/api.php/app/vod/get_detail?vod_id=${id}`, { headers: hd }); + const json = JSON.parse(resp.content); + const data = json.data[0]; + const vodplayer = json.vodplayer; + const shows = []; + const play_urls = []; + const raw_shows = data.vod_play_from.split('$$$'); + const raw_urls_list = data.vod_play_url.split('$$$'); + for (let i = 0; i < raw_shows.length; i++) { + const show_code = raw_shows[i]; + const urls_str = raw_urls_list[i]; + let need_parse = 0; + let is_show = 0; + let name = show_code; + const player_info = _.find(vodplayer, (p) => p.from === show_code); + if (player_info) { + is_show = 1; + need_parse = player_info.decode_status; + if (show_code.toLowerCase() !== player_info.show.toLowerCase()) { + name = `${player_info.show} (${show_code})`; + } + } + if (is_show === 1) { + const urls = []; + for (const url_item of urls_str.split('#')) { + if (url_item.includes('$')) { + const [episode, url] = url_item.split('$'); + urls.push(`${episode}$${show_code}@${need_parse}@${url}`); + } + } + if (urls.length > 0) { + play_urls.push(urls.join('#')); + shows.push(name); + } + } + } + const video = { + 'vod_id': data.vod_id.toString(), + 'vod_name': data.vod_name, + 'vod_pic': data.vod_pic, + 'vod_remarks': data.vod_remarks, + 'vod_year': data.vod_year, + 'vod_area': data.vod_area, + 'vod_actor': data.vod_actor, + 'vod_director': data.vod_director, + 'vod_content': data.vod_content, + 'vod_play_from': shows.join('$$$'), + 'vod_play_url': play_urls.join('$$$'), + 'type_name': data.vod_class + }; + return JSON.stringify({ list: [video] }); +} + +async function play(flag, vid, flags) { + const parts = vid.split('@'); + const play_from = parts[0]; + const need_parse = parts[1]; + const raw_url = parts[2]; + let url = ''; + let jx = 0; + if (need_parse === '1') { + try { + const hd = await getHeaders(); + const apiUrl = `${host}/api.php/app/decode/url/?url=${encodeURIComponent(raw_url)}&vodFrom=${play_from}`; + const resp = await req(apiUrl, { headers: hd, timeout: 30000 }); + const json = JSON.parse(resp.content); + if (json.data && json.data.startsWith('http')) { + url = json.data; + } + } catch (e) { + console.error('Play decode error:', e); + } + } + if (!url) { + url = raw_url; + if (/(www\.iqiyi|v\.qq|v\.youku|www\.mgtv|www\.bilibili)\.com/.test(raw_url)) { + jx = 1; + } + } + return JSON.stringify({ jx: jx, parse: 0, url: url, header: {'User-Agent': 'com.sunshine.tv/1.2.0 (Linux;Android 15) AndroidXMedia3/1.4.1'}}); +} + +async function getHeaders() { + const timestamp = Math.floor(Date.now() / 1000).toString(); + const nonce = randomStr(3, '0123456789'); + if (!device_id) { + device_id = await local.get('cache', device_id_cache_key); + if (!device_id || device_id.length !== 16) { + device_id = randomStr(16); + await local.set('cache', device_id_cache_key, device_id); + } + } + const sign_str = `finger=SF-C3B2B41F6EFFFF9869176CF68F6790E8F07506FC88632C94B4F5F0430D5498CA&id=${pkg}&nonce=${nonce}&sk=SK-thanks&time=${timestamp}&v=${ver}`; + const sign = sha256(sign_str); + return { + 'User-Agent': 'okhttp/4.12.0', + 'Accept': 'application/json', + 'x-aid': pkg, + 'x-ave': ver, + 'x-time': timestamp, + 'x-nonc': nonce, + 'x-sign': sign, + 'x-device-id': device_id, + 'x-device-brand': 'vivo', + 'x-device-model': 'V2309A', + 'x-update-id': '0245861b-2ebf-5524-389d-f983830651ec' + }; +} + +function arr2vods(arr) { + return _.map(arr, (i) => { + let type_name = i.type_name || ''; + if (i.vod_class) { + type_name = type_name + (type_name ? ',' : '') + i.vod_class; + } + return { + 'vod_id': i.vod_id.toString(), + 'vod_name': i.vod_name, + 'vod_pic': i.vod_pic, + 'vod_remarks': i.vod_remarks, + 'type_name': type_name, + 'vod_year': i.vod_year + }; + }); +} + +function randomStr(len, chars = '0123456789abcdef') { + let str = ''; + for (let i = 0; i < len; i++) { + str += chars[_.random(0, chars.length - 1)]; + } + return str; +} + +function sha256(text) { + return Crypto.SHA256(text).toString().toUpperCase(); +} + +export function __jsEvalReturn() { + return { + init: init, + home: home, + homeVod: homeVod, + category: category, + search: search, + detail: detail, + play: play + }; +} \ No newline at end of file diff --git a/Ye-11X115490_PsyDuck4k/lib/枫叶.js b/Ye-11X115490_PsyDuck4k/lib/枫叶.js new file mode 100644 index 00000000..ea3f8cb2 --- /dev/null +++ b/Ye-11X115490_PsyDuck4k/lib/枫叶.js @@ -0,0 +1,948 @@ +import cheerio from 'assets://js/lib/cheerio.min.js'; + +// import cheerio from '../lib/cheerio.min.js'; +const sites = [ + 'https://www.cd-zj.com', + 'https://www.gzwlr.com', +] +const appConfig = { + siteName: "枫叶4k影院", + siteUrl: sites[0] +} +const UA = "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36"; +const Headers = { + "User-Agent": UA, + "Referer": appConfig.siteUrl + "/", +} +async function init(ext) {} + +function getYearFilter() { + let years = [{ + "n": "全部", + "v": "" + }]; + const currentYear = new Date().getFullYear().toString(); + for (let y = currentYear; y >= currentYear - 22; y--) { + years.push({ + "n": String(y), + "v": String(y) + }); + } + return { + "key": "year", + "name": "年份", + "value": years + }; +} + +function getLetterFilter() { + return { + "key": "letter", + "name": "字母", + "value": [{ + "n": "全部", + "v": "" + }, + { + "n": "A", + "v": "A" + }, { + "n": "B", + "v": "B" + }, { + "n": "C", + "v": "C" + }, { + "n": "D", + "v": "D" + }, + { + "n": "E", + "v": "E" + }, { + "n": "F", + "v": "F" + }, { + "n": "G", + "v": "G" + }, { + "n": "H", + "v": "H" + }, + { + "n": "I", + "v": "I" + }, { + "n": "J", + "v": "J" + }, { + "n": "K", + "v": "K" + }, { + "n": "L", + "v": "L" + }, + { + "n": "M", + "v": "M" + }, { + "n": "N", + "v": "N" + }, { + "n": "O", + "v": "O" + }, { + "n": "P", + "v": "P" + }, + { + "n": "Q", + "v": "Q" + }, { + "n": "R", + "v": "R" + }, { + "n": "S", + "v": "S" + }, { + "n": "T", + "v": "T" + }, + { + "n": "U", + "v": "U" + }, { + "n": "V", + "v": "V" + }, { + "n": "W", + "v": "W" + }, { + "n": "X", + "v": "X" + }, + { + "n": "Y", + "v": "Y" + }, { + "n": "Z", + "v": "Z" + }, { + "n": "0-9", + "v": "0-9" + } + ] + } +} +const OtherFilters = [{ + "key": "area", + "name": "地区", + "value": [{ + "n": "全部", + "v": "" + }, { + "n": "大陆", + "v": "大陆" + }, { + "n": "香港", + "v": "香港" + }, + { + "n": "台湾", + "v": "台湾" + }, { + "n": "美国", + "v": "美国" + }, { + "n": "韩国", + "v": "韩国" + }, + { + "n": "日本", + "v": "日本" + }, { + "n": "泰国", + "v": "泰国" + }, { + "n": "新加坡", + "v": "新加坡" + }, + { + "n": "马来西亚", + "v": "马来西亚" + }, { + "n": "印度", + "v": "印度" + }, { + "n": "英国", + "v": "英国" + }, + { + "n": "法国", + "v": "法国" + }, { + "n": "加拿大", + "v": "加拿大" + }, { + "n": "西班牙", + "v": "西班牙" + }, + { + "n": "俄罗斯", + "v": "俄罗斯" + }, { + "n": "其它", + "v": "其它" + } + ] + }, + getYearFilter(), + { + "key": "lang", + "name": "语言", + "value": [{ + "n": "全部", + "v": "" + }, { + "n": "国语", + "v": "国语" + }, { + "n": "英语", + "v": "英语" + }, + { + "n": "粤语", + "v": "粤语" + }, { + "n": "闽南语", + "v": "闽南语" + }, { + "n": "韩语", + "v": "韩语" + }, + { + "n": "日语", + "v": "日语" + }, { + "n": "其它", + "v": "其它" + } + ] + }, + getLetterFilter() +]; +const myFilters = { + "2": [{ + key: "type", + "name": "类型", + value: [{ + "n": "全部", + "v": "2" + }, + { + "n": "国产剧", + "v": "13" + }, + { + "n": "日韩剧", + "v": "15" + }, + { + "n": "海外剧", + "v": "16" + }, + ] + }, + { + "key": "class", + "name": "剧情", + "value": [{ + "n": "全部", + "v": "" + }, { + "n": "古装", + "v": "古装" + }, { + "n": "战争", + "v": "战争" + }, + { + "n": "青春偶像", + "v": "青春偶像" + }, { + "n": "喜剧", + "v": "喜剧" + }, { + "n": "家庭", + "v": "家庭" + }, + { + "n": "犯罪", + "v": "犯罪" + }, { + "n": "动作", + "v": "动作" + }, { + "n": "奇幻", + "v": "奇幻" + }, + { + "n": "剧情", + "v": "剧情" + }, { + "n": "历史", + "v": "历史" + }, { + "n": "经典", + "v": "经典" + }, + { + "n": "乡村", + "v": "乡村" + }, { + "n": "情景", + "v": "情景" + }, { + "n": "商战", + "v": "商战" + }, + { + "n": "网剧", + "v": "网剧" + }, { + "n": "其他", + "v": "其他" + } + ] + }, + ...OtherFilters + ], + "1": [{ + "key": "type", + "name": "类型", + value: [{ + "n": "全部", + "v": "1" + }, + { + "n": "动作片", + "v": "6" + }, + { + "n": "喜剧片", + "v": "7" + }, + { + "n": "恐怖片", + "v": "8" + }, + { + "n": "科幻片", + "v": "9" + }, + { + "n": "爱情片", + "v": "10" + }, + { + "n": "剧情片", + "v": "11" + } + ] + }, + { + "key": "class", + "name": "剧情", + "value": [{ + "n": "全部", + "v": "" + }, + { + "n": "喜剧", + "v": "喜剧" + }, + { + "n": "爱情", + "v": "爱情" + }, + { + "n": "恐怖", + "v": "恐怖" + }, + { + "n": "动作", + "v": "动作" + }, + { + "n": "科幻", + "v": "科幻" + }, + { + "n": "剧情", + "v": "剧情" + }, + { + "n": "战争", + "v": "战争" + }, + { + "n": "警匪", + "v": "警匪" + }, + { + "n": "犯罪", + "v": "犯罪" + }, + { + "n": "动画", + "v": "动画" + }, + { + "n": "奇幻", + "v": "奇幻" + }, + { + "n": "武侠", + "v": "武侠" + }, + { + "n": "冒险", + "v": "冒险" + }, + { + "n": "枪战", + "v": "枪战" + }, + { + "n": "悬疑", + "v": "悬疑" + }, + { + "n": "惊悚", + "v": "惊悚" + }, + { + "n": "经典", + "v": "经典" + }, + { + "n": "青春", + "v": "青春" + }, + { + "n": "文艺", + "v": "文艺" + }, + { + "n": "微电影", + "v": "微电影" + }, + { + "n": "古装", + "v": "古装" + }, + { + "n": "历史", + "v": "历史" + }, + { + "n": "运动", + "v": "运动" + }, + { + "n": "农村", + "v": "农村" + }, + { + "n": "儿童", + "v": "儿童" + }, + { + "n": "网络电影", + "v": "网络电影" + } + ] + }, + ...OtherFilters + ], + "4": [{ + "key": "type", + "name": "类型", + "value": [{ + "n": "全部", + "v": "4" + }, + { + "n": "国产动漫", + "v": "25" + }, + { + "n": "日韩动漫", + "v": "26" + }, + ] + }, + { + "key": "class", + "name": "剧情", + "value": [{ + "n": "全部", + "v": "" + }, + { + "n": "情感", + "v": "情感" + }, + { + "n": "科幻", + "v": "科幻" + }, + { + "n": "热血", + "v": "热血" + }, + { + "n": "推理", + "v": "推理" + }, + { + "n": "搞笑", + "v": "搞笑" + }, + { + "n": "冒险", + "v": "冒险" + }, + { + "n": "萝莉", + "v": "萝莉" + }, + { + "n": "校园", + "v": "校园" + }, + { + "n": "动作", + "v": "动作" + }, + { + "n": "机战", + "v": "机战" + }, + { + "n": "运动", + "v": "运动" + }, + { + "n": "战争", + "v": "战争" + }, + { + "n": "少年", + "v": "少年" + }, + { + "n": "少女", + "v": "少女" + }, + { + "n": "社会", + "v": "社会" + }, + { + "n": "原创", + "v": "原创" + }, + { + "n": "亲子", + "v": "亲子" + }, + { + "n": "益智", + "v": "益智" + }, + { + "n": "励志", + "v": "励志" + }, + { + "n": "其他", + "v": "其他" + } + ] + }, + ...OtherFilters + ], + "3": [{ + "key": "type", + "name": "类型", + value: [{ + "n": "全部", + "v": "3" + }, + { + "n": "大陆综艺", + "v": "21" + }, + { + "n": "日韩综艺", + "v": "22" + }, + ] + }, + { + "key": "class", + "name": "剧情", + "value": [{ + "n": "全部", + "v": "" + }, + { + "n": "选秀", + "v": "选秀" + }, + { + "n": "情感", + "v": "情感" + }, + { + "n": "访谈", + "v": "访谈" + }, + { + "n": "播报", + "v": "播报" + }, + { + "n": "旅游", + "v": "旅游" + }, + { + "n": "音乐", + "v": "音乐" + }, + { + "n": "美食", + "v": "美食" + }, + { + "n": "纪实", + "v": "纪实" + }, + { + "n": "曲艺", + "v": "曲艺" + }, + { + "n": "生活", + "v": "生活" + }, + { + "n": "游戏互动", + "v": "游戏互动" + }, + { + "n": "财经", + "v": "财经" + }, + { + "n": "求职", + "v": "求职" + } + ] + }, + ...OtherFilters + ], + "5": [ + getYearFilter(), + getLetterFilter() + ], +}; +async function home(filter) { + return JSON.stringify({ + class: [{ + type_id: "/label/qq", + type_name: "腾讯精选" + }, + { + type_id: "/label/youku", + type_name: "优酷精选" + }, + { + type_id: "/label/bli", + type_name: "哔哩精选" + }, + { + type_id: "2", + type_name: "电视剧", + }, + { + type_id: "1", + type_name: "电影" + }, + { + type_id: "4", + type_name: "动漫" + }, + { + type_id: "3", + type_name: "综艺" + }, + { + type_id: "5", + type_name: "热门短剧" + } + + + ], + filters: myFilters + }); +} +async function category(tid, pg, filter, extend) { + pg = pg || 1; + let type = extend.type || tid; + const isLanel = tid.startsWith("/label"); + let url = ""; + const typePrefix = appConfig.siteUrl === 'https://www.gzwlr.com' ? "list" : "cupfox-list"; + if (isLanel) { + url = appConfig.siteUrl + tid + `/page/${pg}.html`; + } else { + let classVal = extend.class || ''; + let areaVal = extend.area || ''; + let langVal = extend.lang || ''; + let letterVal = extend.letter || ''; + let orderVal = extend.orderBy || ''; + let yearVal = extend.year || ''; + url = `${appConfig.siteUrl}/${typePrefix}/${type}-${areaVal}-${''}-${classVal}-${langVal}-${letterVal}-${orderVal}-${''}-${pg}-${''}-${''}-${yearVal}.html`; + } + const html = (await req(url)).content; + const $ = cheerio.load(html); + let list = []; + $(".public-list-div.public-list-bj").each(function(index, el) { + let vod_id = $(el).find("a.public-list-exp").attr("href"); + let vod_name = $(el).find("a.public-list-exp").attr("title").trim(); + let _4k = $(el).find(".public-prt-g").text().trim() + let vod_pic = $(el).find(".public-list-exp img").attr("data-src"); + let upto = $(el).find(".ft2").text().trim(); + let vod_remarks = _4k + ' ' + upto + list.push({ + vod_id, + vod_name, + vod_pic, + vod_remarks + }); + }); + const pageStr = $('.page-tip').text().trim() + const pagecount = pageStr.match(/\d+\/(\d+)页/)?.[1] || 1 + return JSON.stringify({ + list, + pagecount + }); +} +async function search(wd, quick, page) { + if (page >= 2) { + return JSON.stringify({ + list: [], + pagecount: 1 + }); + } + try { + const searchPrefex = appConfig.siteUrl === 'https://www.gzwlr.com' ? "search" : "cupfox-search"; + const url = `${appConfig.siteUrl}/${searchPrefex}/-------------.html?wd=${wd}`; + const html = (await req(url)).content; + const $ = cheerio.load(html); + let list = []; + $('.search-box').each((i, el) => { + const vod_id = $(el).find(".thumb-txt a").attr('href') || ''; + const vod_name = $(el).find(".thumb-txt a").text().trim() + const vod_pic = $(el).find('.left img').attr('data-src') || ''; + const vod_remarks = $(el).find('.public-list-prb').text().trim() + list.push({ + vod_id, + vod_name, + vod_pic, + vod_remarks + }); + }) + return JSON.stringify({ + list: list, + pagecount: 1 + }); + } catch (e) { + console.error("❌ search 遭遇内部崩溃 =", e.message); + return JSON.stringify({ + list: [] + }); + } +} +async function detail(id) { + try { + const videoId = id; + const url = appConfig.siteUrl + videoId; + const response = await req(url); + const html = response ? response.content : ''; + const $ = cheerio.load(html); + + const vod_name = $('.slide-info-title').text().trim(); + const imgSrc = $('.detail-pic img').attr("data-src") || ''; + const vod_pic = imgSrc ? (imgSrc.startsWith('http') ? imgSrc : appConfig.siteUrl + imgSrc) : ''; + const vod_actor = $('.detail-info .slide-info').eq(2).text().replace(/演员:\s*/, '').trim(); + const vod_remarks = $('.detail-info .slide-info').eq(4).text().replace(/连载\s*:\s*/, '').trim(); + const vod_content = ''+$('#height_limit').text().trim(); + + + let rawLines = []; + let rawPlaylists = []; + $('.swiper-slide').each((i, el) => { + const lineName = $(el).clone().find('i, span').remove().end().text().trim(); + rawLines.push(lineName); + }); + $('.anthology-list-box').each((lineIndex, poolEl) => { + const episodes = []; + $(poolEl).find('a').each((episodeIndex, epEl) => { + const name = $(epEl).text().trim(); + const href = $(epEl).attr('href') || ''; + if (name && href) { + episodes.push(`${name}\$${href}`); + } + }); + rawPlaylists.push(episodes); + }); + + + let targetLineIdx = -1; + + for (let i = 0; i < rawLines.length; i++) { + const name = rawLines[i]; + const eps = rawPlaylists[i]; + if (name.includes("至臻4k") && eps.length > 0) { + targetLineIdx = i; + break; + } + } + + if (targetLineIdx === -1 && rawLines.length > 0) { + targetLineIdx = 0; + } + + let finalLines = []; + let finalPlaylists = []; + if (targetLineIdx !== -1) { + finalLines.push("在线播放"); + finalPlaylists.push(rawPlaylists[targetLineIdx]); + } + + + const { + vod_play_from, + vod_play_url + } = buildVodPlayData(finalLines, finalPlaylists, true); + const vod = { + vod_id: videoId, + vod_name, + vod_pic, + vod_actor, + vod_remarks, + vod_content, + vod_play_from, + vod_play_url + }; + return JSON.stringify({ + list: [vod] + }); + } catch (error) { + console.error(`解析详情页异常 [ID: ${id}]:`, error); + return JSON.stringify({ + list: [] + }); + } +} + +function buildVodPlayData(lines, playlists, shouldReverse = true) { + const processedPlaylists = playlists.map(eps => { + if (shouldReverse) { + eps.reverse(); + } + return eps.join('#'); + }); + return { + vod_play_from: lines.filter(Boolean).join('$$$'), + vod_play_url: processedPlaylists.join('$$$') + }; +} + +function isDirectUrl(url) { + return url.startsWith('http') || url.endsWith(".m3u8") || url.endsWith(".mp4"); +} +async function parsePLayUrl(is2kLine, url) { + const parseApiUrl = is2kLine ? "https://zzrs.mfdyvip.com/player/" : "https://fgsrg.hzqingshan.com/player/" + try { + const html = (await req(`${parseApiUrl}?url=${url}`, { + method: 'GET', + headers: Headers + })).content + const $ = cheerio.load(html) + const token = $('#player-data').attr('data-te'); + console.log("🚀 成功拿到 token:", token); + let playData = await req(`${parseApiUrl}/mplayer.php`, { + method: 'POST', + headers: { + 'Content-Type': 'application/x-www-form-urlencoded', + }, + data: { + url: url, + token: token, + } + }).content + playData = JSON.parse(playData) + return playData.url + } catch (e) { + console.error("❌ play encounters an internal crash =", e); + return ""; + } +} +async function play(flag, id, flags) { + try { + const html = (await req(`${appConfig.siteUrl}${id}`)).content; + const url = getPlayUrl(html) + if (isDirectUrl(url)) { + return JSON.stringify({ + parse: 0, + Header: { + "User-Agent": UA + }, + url, + }); + } + const is2kLine = flag.includes('2k') + const playUrl = await parsePLayUrl(is2kLine, url) + return JSON.stringify({ + parse: 0, + Header: { + "User-Agent": UA + }, + url: playUrl + }); + } catch (e) { + console.error("❌ play 遭遇内部崩溃 =", e); + return JSON.stringify({ + parse: 0, + url: "" + }); + } +} + +function getPlayUrl(html) { + const match = html.match(/var\s+player_aaaa[\s\S]*?"url"\s*:\s*"([^"]+)"/); + let url = match ? match[1] : ''; + url = url.replace(/\\/g, ''); + return url; +} +export default { + init, + home, + category, + detail, + search, + play +}; diff --git a/Ye-11X115490_PsyDuck4k/lib/歪比巴卜.js b/Ye-11X115490_PsyDuck4k/lib/歪比巴卜.js new file mode 100644 index 00000000..5590e3e1 --- /dev/null +++ b/Ye-11X115490_PsyDuck4k/lib/歪比巴卜.js @@ -0,0 +1,678 @@ +/** + title: "歪比巴卜", + author: "", + logo: "https://wbbb1.com/static/images/logo.png", + more: { + sourceTag: "在线影视" + } +*/ +import { Crypto, load, _ } from 'assets://js/lib/cat.js'; + +let HOST = 'https://wbbb1.com'; +let siteKey = "", siteType = "", sourceKey = "", ext = ""; + +const UA = 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/136.0.0.0 Safari/537.36'; + +async function init(cfg) { + siteKey = cfg.skey; + siteType = cfg.stype; + sourceKey = cfg.sourceKey; + ext = cfg.ext; + + if (ext && ext.startsWith('http')) { + HOST = ext; + } +} + +async function home(filter) { + const classes = [ + { type_id: "1", type_name: "电影" }, + { type_id: "2", type_name: "剧集" }, + { type_id: "3", type_name: "动漫" }, + { type_id: "4", type_name: "综艺" } + ]; + + const filterObj = { + "1": [ + { + key: "class", + name: "类型", + value: [ + { n: "全部", v: "" }, + { n: "动作", v: "动作" }, + { n: "喜剧", v: "喜剧" }, + { n: "爱情", v: "爱情" }, + { n: "科幻", v: "科幻" }, + { n: "恐怖", v: "恐怖" }, + { n: "悬疑", v: "悬疑" }, + { n: "犯罪", v: "犯罪" }, + { n: "战争", v: "战争" }, + { n: "奇幻", v: "奇幻" }, + { n: "冒险", v: "冒险" }, + { n: "古装", v: "古装" }, + { n: "剧情", v: "剧情" } + ] + }, + { + key: "area", + name: "地区", + value: [ + { n: "全部", v: "" }, + { n: "大陆", v: "大陆" }, + { n: "香港", v: "香港" }, + { n: "台湾", v: "台湾" }, + { n: "美国", v: "美国" }, + { n: "日本", v: "日本" }, + { n: "韩国", v: "韩国" }, + { n: "英国", v: "英国" }, + { n: "法国", v: "法国" }, + { n: "印度", v: "印度" }, + { n: "泰国", v: "泰国" } + ] + }, + { + key: "lang", + name: "语言", + value: [ + { n: "全部", v: "" }, + { n: "国语", v: "国语" }, + { n: "粤语", v: "粤语" }, + { n: "英语", v: "英语" }, + { n: "日语", v: "日语" }, + { n: "韩语", v: "韩语" } + ] + }, + { + key: "year", + name: "年份", + value: [ + { n: "全部", v: "" }, + { n: "2026", v: "2026" }, + { n: "2025", v: "2025" }, + { n: "2024", v: "2024" }, + { n: "2023", v: "2023" }, + { n: "2022", v: "2022" }, + { n: "2021", v: "2021" }, + { n: "2020", v: "2020" }, + { n: "2019", v: "2019" }, + { n: "2018", v: "2018" } + ] + }, + { + key: "letter", + name: "字母", + value: [ + { n: "全部", v: "" }, + { n: "A", v: "A" }, + { n: "B", v: "B" }, + { n: "C", v: "C" }, + { n: "D", v: "D" }, + { n: "E", v: "E" }, + { n: "F", v: "F" }, + { n: "G", v: "G" }, + { n: "H", v: "H" }, + { n: "I", v: "I" }, + { n: "J", v: "J" }, + { n: "K", v: "K" }, + { n: "L", v: "L" }, + { n: "M", v: "M" }, + { n: "N", v: "N" }, + { n: "O", v: "O" }, + { n: "P", v: "P" }, + { n: "Q", v: "Q" }, + { n: "R", v: "R" }, + { n: "S", v: "S" }, + { n: "T", v: "T" }, + { n: "U", v: "U" }, + { n: "V", v: "V" }, + { n: "W", v: "W" }, + { n: "X", v: "X" }, + { n: "Y", v: "Y" }, + { n: "Z", v: "Z" }, + { n: "0-9", v: "0-9" } + ] + }, + { + key: "by", + name: "排序", + value: [ + { n: "时间排序", v: "time" }, + { n: "人气排序", v: "hits" }, + { n: "评分排序", v: "score" } + ] + } + ], + + "2": [ + { + key: "class", + name: "类型", + value: [ + { n: "全部", v: "" }, + { n: "爱情", v: "爱情" }, + { n: "都市", v: "都市" }, + { n: "家庭", v: "家庭" }, + { n: "战争", v: "战争" }, + { n: "喜剧", v: "喜剧" }, + { n: "古装", v: "古装" }, + { n: "武侠", v: "武侠" }, + { n: "悬疑", v: "悬疑" }, + { n: "科幻", v: "科幻" }, + { n: "惊悚", v: "惊悚" }, + { n: "犯罪", v: "犯罪" }, + { n: "剧情", v: "剧情" } + ] + }, + { + key: "area", + name: "地区", + value: [ + { n: "全部", v: "" }, + { n: "大陆", v: "大陆" }, + { n: "港台", v: "港台" }, + { n: "美国", v: "美国" }, + { n: "韩国", v: "韩国" }, + { n: "日本", v: "日本" }, + { n: "泰国", v: "泰国" } + ] + }, + { + key: "lang", + name: "语言", + value: [ + { n: "全部", v: "" }, + { n: "国语", v: "国语" }, + { n: "粤语", v: "粤语" }, + { n: "英语", v: "英语" }, + { n: "日语", v: "日语" }, + { n: "韩语", v: "韩语" } + ] + }, + { + key: "year", + name: "年份", + value: [ + { n: "全部", v: "" }, + { n: "2026", v: "2026" }, + { n: "2025", v: "2025" }, + { n: "2024", v: "2024" }, + { n: "2023", v: "2023" }, + { n: "2022", v: "2022" }, + { n: "2021", v: "2021" }, + { n: "2020", v: "2020" } + ] + }, + { + key: "letter", + name: "字母", + value: [ + { n: "全部", v: "" }, + { n: "A", v: "A" }, + { n: "B", v: "B" }, + { n: "C", v: "C" }, + { n: "D", v: "D" }, + { n: "E", v: "E" }, + { n: "F", v: "F" }, + { n: "G", v: "G" }, + { n: "H", v: "H" }, + { n: "I", v: "I" }, + { n: "J", v: "J" }, + { n: "K", v: "K" }, + { n: "L", v: "L" }, + { n: "M", v: "M" }, + { n: "N", v: "N" }, + { n: "O", v: "O" }, + { n: "P", v: "P" }, + { n: "Q", v: "Q" }, + { n: "R", v: "R" }, + { n: "S", v: "S" }, + { n: "T", v: "T" }, + { n: "U", v: "U" }, + { n: "V", v: "V" }, + { n: "W", v: "W" }, + { n: "X", v: "X" }, + { n: "Y", v: "Y" }, + { n: "Z", v: "Z" }, + { n: "0-9", v: "0-9" } + ] + }, + { + key: "by", + name: "排序", + value: [ + { n: "时间排序", v: "time" }, + { n: "人气排序", v: "hits" }, + { n: "评分排序", v: "score" } + ] + } + ], + + "3": [ + { + key: "class", + name: "类型", + value: [ + { n: "全部", v: "" }, + { n: "国产动漫", v: "国产动漫" }, + { n: "日本动漫", v: "日本动漫" }, + { n: "欧美动漫", v: "欧美动漫" } + ] + }, + { + key: "year", + name: "年份", + value: [ + { n: "全部", v: "" }, + { n: "2025", v: "2025" }, + { n: "2024", v: "2024" }, + { n: "2023", v: "2023" } + ] + }, + { + key: "by", + name: "排序", + value: [ + { n: "时间排序", v: "time" }, + { n: "人气排序", v: "hits" }, + { n: "评分排序", v: "score" } + ] + } + ], + + "4": [ + { + key: "class", + name: "类型", + value: [ + { n: "全部", v: "" }, + { n: "大陆综艺", v: "大陆综艺" }, + { n: "港台综艺", v: "港台综艺" }, + { n: "日韩综艺", v: "日韩综艺" }, + { n: "欧美综艺", v: "欧美综艺" } + ] + }, + { + key: "by", + name: "排序", + value: [ + { n: "时间排序", v: "time" }, + { n: "人气排序", v: "hits" }, + { n: "评分排序", v: "score" } + ] + } + ] + }; + + return JSON.stringify({ + class: classes, + filters: filterObj + }); +} + +async function homeVod() { + try { + const res = await req(HOST, { + headers: { 'User-Agent': UA } + }); + + const $ = load(res.content); + const list = []; + + $('.module-poster-item.module-item').each((_, item) => { + const it = $(item); + const href = it.attr('href'); + const vod_id = href ? href.match(/\/detail\/(\d+)\.html/)?.[1] : ''; + + list.push({ + vod_id: vod_id || href, + vod_name: it.attr('title') || '', + vod_pic: it.find('img.lazyload').attr('data-original') || '', + vod_remarks: it.find('.module-item-note').text().trim() || '' + }); + }); + + return JSON.stringify({ list: list }); + } catch (e) { + return JSON.stringify({ list: [] }); + } +} + +async function category(tid, pg, filter, extend) { + if (!pg || pg <= 0) pg = 1; + + const area = extend.area || ''; + const by = extend.by || 'time'; + const cls = extend.class || ''; + const lang = extend.lang || ''; + const letter = extend.letter || ''; + const year = extend.year || ''; + + const url = `${HOST}/show/${tid}-${area}-${by}-${cls}-${lang}-${letter}---${pg}---${year}.html`; + + try { + const res = await req(url, { + headers: { 'User-Agent': UA } + }); + + const $ = load(res.content); + const list = []; + + $('.module-poster-item.module-item').each((_, item) => { + const it = $(item); + const href = it.attr('href'); + const vod_id = href ? href.match(/\/detail\/(\d+)\.html/)?.[1] : ''; + + list.push({ + vod_id: vod_id || href, + vod_name: it.attr('title') || '', + vod_pic: it.find('img.lazyload').attr('data-original') || '', + vod_remarks: it.find('.module-item-note').text().trim() || '' + }); + }); + + const hasNext = res.content.includes('title="下一页"') || res.content.includes('class="next"'); + const pagecount = hasNext ? pg + 1 : pg; + + return JSON.stringify({ + page: pg, + pagecount: pagecount, + limit: 72, + total: list.length * (hasNext ? 2 : 1), + list: list + }); + } catch (e) { + return JSON.stringify({ + page: pg, + pagecount: pg, + limit: 0, + total: 0, + list: [] + }); + } +} + +async function search(wd, pg) { + if (!pg || pg <= 0) pg = 1; + + const url = `${HOST}/search/-------------.html?wd=${encodeURIComponent(wd)}&page=${pg}`; + + try { + const res = await req(url, { + headers: { 'User-Agent': UA } + }); + + const $ = load(res.content); + const list = []; + + $('.module-card-item.module-item').each((_, item) => { + const it = $(item); + const link = it.find('.module-card-item-poster'); + const href = link.attr('href'); + const vod_id = href ? href.match(/\/detail\/(\d+)\.html/)?.[1] : ''; + + list.push({ + vod_id: vod_id || href, + vod_name: it.find('.module-card-item-title strong').text().trim() || '', + vod_pic: link.find('img.lazyload').attr('data-original') || '', + vod_remarks: link.find('.module-item-note').text().trim() || '' + }); + }); + + const hasNext = list.length >= 20; + const pagecount = hasNext ? pg + 1 : pg; + + return JSON.stringify({ + page: pg, + pagecount: pagecount, + total: list.length, + list: list + }); + } catch (e) { + return JSON.stringify({ + page: pg, + pagecount: pg, + total: 0, + list: [] + }); + } +} + +async function detail(id) { + try { + const res = await req(id.startsWith('http') ? id : `${HOST}/detail/${id}.html`, { + headers: { 'User-Agent': UA } + }); + + const $ = load(res.content); + + const vod_name = $('h1').first().text().trim() || ''; + const vod_pic = $('.module-info-poster img.lazyload').attr('data-original') || ''; + + let vod_year = ''; + let vod_area = ''; + let vod_type = ''; + + $('.module-info-tag-link a').each((_, el) => { + const text = $(el).text().trim(); + if (/^\d{4}$/.test(text)) { + vod_year = text; + } else if (['大陆', '香港', '台湾', '美国', '日本', '韩国', '欧美', '港台'].includes(text)) { + vod_area = text; + } else if (!vod_type) { + vod_type = text; + } + }); + + let vod_director = ''; + let vod_actor = ''; + let vod_remarks = ''; + + $('.module-info-item').each((_, el) => { + const title = $(el).find('.module-info-item-title').text().trim(); + const content = $(el).find('.module-info-item-content').text().trim(); + + if (title.includes('导演')) { + vod_director = content.replace(/\s+/g, ' ').trim(); + } else if (title.includes('主演')) { + vod_actor = content.replace(/\s+/g, ' ').trim(); + } else if (title.includes('备注') || title.includes('更新')) { + vod_remarks = content; + } + }); + + const vod_content = $('.module-info-introduction-content').text().trim() || ''; + + const playFrom = []; + const playUrls = []; + + $('.module-tab-item.tab-item').each((i, el) => { + const from = $(el).find('span').text().trim() || `线路${i + 1}`; + + const urls = []; + $('.module-play-list-content').eq(i).find('a.module-play-list-link').each((_, a) => { + const name = $(a).text().trim(); + const href = $(a).attr('href'); + const fullUrl = href && href.startsWith('http') ? href : `${HOST}${href}`; + if (name && fullUrl) { + urls.push(`${name}$${fullUrl}`); + } + }); + + if (urls.length > 0) { + playFrom.push(from); + playUrls.push(urls.join('#')); + } + }); + + const vod = { + vod_id: id, + vod_name: vod_name, + vod_pic: vod_pic, + vod_year: vod_year, + vod_area: vod_area, + vod_type: vod_type, + vod_remarks: vod_remarks, + vod_actor: vod_actor, + vod_director: vod_director, + vod_content: vod_content, + vod_play_from: playFrom.join('$$$'), + vod_play_url: playUrls.join('$$$') + }; + + return JSON.stringify({ list: [vod] }); + } catch (e) { + return JSON.stringify({ list: [] }); + } +} + +// MD5 哈希函数 +function md5X(str) { + return Crypto.MD5(str).toString(); +} + +// AES 解密函数 +function aesX(mode, isEncrypt, data, isBase64, key, iv, isKeyBase64) { + try { + let keyWord = Crypto.enc.Utf8.parse(key); + let ivWord = Crypto.enc.Utf8.parse(iv); + let decrypted = Crypto.AES.decrypt(data, keyWord, { + iv: ivWord, + mode: Crypto.mode.CBC, + padding: Crypto.pad.Pkcs7 + }); + return decrypted.toString(Crypto.enc.Utf8); + } catch (e) { + return ''; + } +} + +// RC4 加密 +function rc4Encrypt(data, key) { + const keyWord = Crypto.enc.Utf8.parse(key); + const encrypted = Crypto.RC4.encrypt(data, keyWord); + return encrypted.toString(); +} + +// RC4 解密 +function rc4Decrypt(base64Data, key) { + const keyWord = Crypto.enc.Utf8.parse(key); + const decrypted = Crypto.RC4.decrypt(base64Data, keyWord); + return decrypted.toString(Crypto.enc.Utf8); +} + +async function play(flag, id, flags) { + try { + // 获取播放页面 + const res = await req(id, { + headers: { + 'User-Agent': UA, + 'Referer': HOST + } + }); + + const html = res.content; + + // 提取 player_aaaa 配置 + const configMatch = html.match(/player_aaaa\s*=\s*(\{[\s\S]+?})(?=\s*;\s*|\s*<\/script>)/); + if (!configMatch) { + return JSON.stringify({ parse: 1, url: id }); + } + + const player_aaaa = JSON.parse(configMatch[1]); + let videoUrl = player_aaaa.url; + + if (!videoUrl) { + return JSON.stringify({ parse: 1, url: id }); + } + + // 解密 URL(如果需要) + const encrypt = String(player_aaaa.encrypt || '0'); + if (encrypt === '1') { + videoUrl = decodeURIComponent(videoUrl); + } else if (encrypt === '2') { + videoUrl = Crypto.enc.Base64.parse(videoUrl).toString(Crypto.enc.Utf8); + videoUrl = decodeURIComponent(videoUrl); + } + + // 如果已经是直链,直接返回 + if (videoUrl && /\.(m3u8|mp4|flv|mkv)(\?|$)/i.test(videoUrl)) { + return JSON.stringify({ + parse: 0, + url: videoUrl, + header: { + 'User-Agent': UA, + 'Referer': HOST + } + }); + } + + // 准备 API 请求参数 + const hostName = 'xn--qvr2v.850088.xyz'; + const rc4Key = (md5X(videoUrl) + ' P').slice(-22); + const rc4KeyHex = Crypto.enc.Utf8.parse(rc4Key); + + const currentTime = Math.floor(Date.now() / 1000); + + // 计算各种加密参数 + let keyValue = rc4Encrypt(md5X(videoUrl + 'stray'), rc4Key); + let vkeyValue = rc4Encrypt(currentTime + md5X(rc4Key + 'stray'), rc4Key); + let ckeyValue = rc4Encrypt(md5X(hostName + 'stray'), rc4Key); + + // 发送 API 请求获取真实地址 + const apiRes = await req(`https://${hostName}/player/api.php`, { + method: 'POST', + postType: 'form', + headers: { + 'User-Agent': UA, + 'Accept': 'application/json, text/javascript, */*; q=0.01', + 'Origin': `https://${hostName}`, + 'X-Requested-With': 'XMLHttpRequest', + 'Referer': `https://${hostName}/` + }, + data: { + 'url': videoUrl, + 'key': keyValue, + 'vkey': vkeyValue, + 'ckey': ckeyValue + } + }); + + const json = JSON.parse(apiRes.content); + + if (json.code === 200 || json.code === '200') { + // 解密 AES key 和 iv + const aesKey = rc4Decrypt(json.aes_key, rc4Key); + const aesIv = rc4Decrypt(json.aes_iv, rc4Key); + + // 解密真实视频地址 + const realUrl = aesX('AES/CBC/PKCS7', false, json.url, true, aesKey, aesIv, false); + + if (realUrl && realUrl.startsWith('http')) { + return JSON.stringify({ + parse: 0, + url: realUrl, + header: { + 'User-Agent': UA, + 'Referer': HOST + } + }); + } + } + + return JSON.stringify({ parse: 1, url: videoUrl }); + } catch (e) { + return JSON.stringify({ parse: 1, url: id }); + } +} + +export function __jsEvalReturn() { + return { + init, + home, + homeVod, + category, + detail, + search, + play + }; +} \ No newline at end of file diff --git a/Ye-11X115490_PsyDuck4k/lib/潇洒.jar b/Ye-11X115490_PsyDuck4k/lib/潇洒.jar new file mode 100644 index 00000000..52889a45 Binary files /dev/null and b/Ye-11X115490_PsyDuck4k/lib/潇洒.jar differ diff --git a/Ye-11X115490_PsyDuck4k/lib/爱奇艺.js b/Ye-11X115490_PsyDuck4k/lib/爱奇艺.js new file mode 100644 index 00000000..cd9be2eb --- /dev/null +++ b/Ye-11X115490_PsyDuck4k/lib/爱奇艺.js @@ -0,0 +1,39 @@ +var rule = { + title:'奇珍异兽', + host:'https://www.iqiyi.com', + homeUrl:'', + // detailUrl:'https://pcw-api.iqiyi.com/albums/album/avlistinfo?aid=fyid&size=2000&page=1', + detailUrl:'https://pcw-api.iqiyi.com/video/video/videoinfowithuser/fyid?agent_type=1&authcookie=&subkey=fyid&subscribe=1', + searchUrl:'https://search.video.iqiyi.com/o?if=html5&key=**&pageNum=fypage&pos=1&pageSize=24&site=iqiyi', + searchable:2, + multi:1, + filterable:1, + filter:{'1': [{'key': 'mode', 'name': '综合排序', 'value': [{'n': '全部', 'v': ''}, {'n': '热播榜', 'v': 11}, {'n': '好评榜', 'v': 8}, {'n': '新上线', 'v': 4}]}, {'key': 'year', 'name': '全部年份', 'value': [{'n': '全部', '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-2011', 'v': '2011_2016'}, {'n': '2010-2000', 'v': '2000_2010'}, {'n': '90年代', 'v': '1990_1999'}, {'n': '80年代', 'v': '1980_1989'}, {'n': '更早', 'v': '1964_1979'}]}, {'key': 'is_purchase', 'name': '全部资费', 'value': [{'n': '全部', 'v': ''}, {'n': '免费', 'v': 0}, {'n': '会员', 'v': 1}, {'n': '付费', 'v': 2}]}, {'key': 'three_category_id', 'name': '地区', 'value': [{'n': '全部', 'v': ''}, {'n': '华语', 'v': 1}, {'n': '香港地区', 'v': 28997}, {'n': '美国', 'v': 2}, {'n': '欧洲', 'v': 3}, {'n': '韩国', 'v': 4}, {'n': '日本', 'v': 308}, {'n': '泰国', 'v': 1115}, {'n': '印度', 'v': 28999}, {'n': '其它', 'v': 5}]}, {'key': '18001', 'name': '类型', 'value': [{'n': '全部', 'v': ''}, {'n': '喜剧', 'v': 8}, {'n': '爱情', 'v': 6}, {'n': '动作', 'v': 11}, {'n': '枪战', 'v': 131}, {'n': '犯罪', 'v': 291}, {'n': '惊悚', 'v': 128}, {'n': '恐怖', 'v': 10}, {'n': '悬疑', 'v': 289}, {'n': '动画', 'v': 12}, {'n': '家庭', 'v': 27356}, {'n': '奇幻', 'v': 1284}, {'n': '魔幻', 'v': 129}, {'n': '科幻', 'v': 9}, {'n': '战争', 'v': 7}, {'n': '青春', 'v': 130}]}, {'key': '27396', 'name': '规格', 'value': [{'n': '全部', 'v': ''}, {'n': '巨制', 'v': 27397}, {'n': '院线', 'v': 27815}, {'n': '独播', 'v': 30149}, {'n': '网络电影', 'v': 27401}]}], '2': [{'key': 'mode', 'name': '综合排序', 'value': [{'n': '全部', 'v': ''}, {'n': '热播榜', 'v': 11}, {'n': '好评榜', 'v': 8}, {'n': '新上线', 'v': 4}]}, {'key': 'year', 'name': '全部年份', 'value': [{'n': '全部', '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-2011', 'v': '2011_2016'}, {'n': '2010-2000', 'v': '2000_2010'}, {'n': '90年代', 'v': '1990_1999'}, {'n': '80年代', 'v': '1980_1989'}, {'n': '更早', 'v': '1964_1979'}]}, {'key': 'is_purchase', 'name': '全部资费', 'value': [{'n': '全部', 'v': ''}, {'n': '免费', 'v': 0}, {'n': '会员', 'v': 1}, {'n': '付费', 'v': 2}]}, {'key': 'three_category_id', 'name': '地区', 'value': [{'n': '全部', 'v': ''}, {'n': '内地', 'v': 15}, {'n': '港剧', 'v': 16}, {'n': '韩剧', 'v': 17}, {'n': '美剧', 'v': 18}, {'n': '日剧', 'v': 309}, {'n': '泰剧', 'v': 1114}, {'n': '台湾地区', 'v': 1117}, {'n': '英剧', 'v': 28916}, {'n': '其它', 'v': 19}]}, {'key': '18003', 'name': '类型', 'value': [{'n': '全部', 'v': ''}, {'n': '自制', 'v': 11992}, {'n': '古装', 'v': 24}, {'n': '言情', 'v': 20}, {'n': '武侠', 'v': 23}, {'n': '偶像', 'v': 30}, {'n': '家庭', 'v': 1654}, {'n': '青春', 'v': 1653}, {'n': '都市', 'v': 24064}, {'n': '喜剧', 'v': 135}, {'n': '战争', 'v': 27916}, {'n': '军旅', 'v': 1655}, {'n': '谍战', 'v': 290}, {'n': '悬疑', 'v': 32}, {'n': '罪案', 'v': 149}, {'n': '穿越', 'v': 148}, {'n': '宫廷', 'v': 139}, {'n': '历史', 'v': 21}, {'n': '神话', 'v': 145}, {'n': '科幻', 'v': 34}, {'n': '年代', 'v': 27}, {'n': '农村', 'v': 29}, {'n': '商战', 'v': 140}, {'n': '剧情', 'v': 24063}, {'n': '奇幻', 'v': 27881}, {'n': '网剧', 'v': 24065}, {'n': '竖短片', 'v': 32839}]}], '3': [{'key': 'mode', 'name': '综合排序', 'value': [{'n': '全部', 'v': ''}, {'n': '热播榜', 'v': 11}, {'n': '好评榜', 'v': 8}, {'n': '新上线', 'v': 4}]}, {'key': 'year', 'name': '全部年份', 'value': [{'n': '全部', '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-2011', 'v': '2011_2016'}, {'n': '2010-2000', 'v': '2000_2010'}, {'n': '90年代', 'v': '1990_1999'}, {'n': '80年代', 'v': '1980_1989'}, {'n': '更早', 'v': '1964_1979'}]}, {'key': 'is_purchase', 'name': '全部资费', 'value': [{'n': '全部', 'v': ''}, {'n': '免费', 'v': 0}, {'n': '会员', 'v': 1}, {'n': '付费', 'v': 2}]}, {'key': 'three_category_id', 'name': '地区', 'value': [{'n': '全部', 'v': ''}, {'n': '国内', 'v': 20323}, {'n': '国外', 'v': 20324}]}, {'key': '18004', 'name': '类型', 'value': [{'n': '全部', 'v': ''}, {'n': '人文', 'v': 70}, {'n': '美食', 'v': 33908}, {'n': '医疗', 'v': 33924}, {'n': '自然', 'v': 33933}, {'n': '萌宠', 'v': 33945}, {'n': '财经', 'v': 33953}, {'n': '罪案', 'v': 33960}, {'n': '竞技', 'v': 33967}, {'n': '灾难', 'v': 33974}, {'n': '军事', 'v': 72}, {'n': '历史', 'v': 74}, {'n': '探险', 'v': 73}, {'n': '社会', 'v': 71}, {'n': '科技', 'v': 28119}, {'n': '旅游', 'v': 310}]}, {'key': '28467', 'name': '出品方', 'value': [{'n': '全部', 'v': ''}, {'n': 'BBC', 'v': 28468}, {'n': '美国历史频道', 'v': 28470}, {'n': '探索频道', 'v': 28471}, {'n': '央视记录', 'v': 28472}, {'n': '北京纪实频道', 'v': 28473}, {'n': '上海纪实频道', 'v': 28474}, {'n': '朗思文化', 'v': 28476}, {'n': 'CNEX', 'v': 28477}, {'n': '五星传奇', 'v': 28478}, {'n': 'IMG', 'v': 28479}, {'n': 'NHK', 'v': 28480}, {'n': '爱奇艺出品', 'v': 31283}, {'n': 'Netflix', 'v': 31286}]}, {'key': '29076', 'name': '片种', 'value': [{'n': '全部', 'v': ''}, {'n': '纪录电影', 'v': 29077}, {'n': '系列纪录片', 'v': 29078}, {'n': '网络纪录片', 'v': 29082}, {'n': '纪实栏目', 'v': 29083}]}, {'key': '31294', 'name': '时长', 'value': [{'n': '全部', 'v': ''}, {'n': '微纪录', 'v': 29079}, {'n': '长纪录', 'v': 29080}, {'n': '短纪录', 'v': 29081}]}], '4': [{'key': 'mode', 'name': '综合排序', 'value': [{'n': '全部', 'v': ''}, {'n': '热播榜', 'v': 11}, {'n': '好评榜', 'v': 8}, {'n': '新上线', 'v': 4}]}, {'key': 'year', 'name': '全部年份', 'value': [{'n': '全部', '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-2011', 'v': '2011_2016'}, {'n': '2010-2000', 'v': '2000_2010'}, {'n': '90年代', 'v': '1990_1999'}, {'n': '80年代', 'v': '1980_1989'}, {'n': '更早', 'v': '1964_1979'}]}, {'key': 'is_purchase', 'name': '全部资费', 'value': [{'n': '全部', 'v': ''}, {'n': '免费', 'v': 0}, {'n': '会员', 'v': 1}, {'n': '付费', 'v': 2}]}, {'key': 'three_category_id', 'name': '地区', 'value': [{'n': '全部', 'v': ''}, {'n': '中国大陆', 'v': 37}, {'n': '日本', 'v': 38}, {'n': '韩国', 'v': 1106}, {'n': '欧美', 'v': 30218}, {'n': '其它', 'v': 40}]}, {'key': '30219', 'name': '版本', 'value': [{'n': '全部', 'v': ''}, {'n': '动画', 'v': 30220}, {'n': '特摄', 'v': 30223}, {'n': '布袋戏', 'v': 30224}, {'n': '特别篇', 'v': 32782}, {'n': '动态漫画', 'v': 32783}, {'n': '动画电影', 'v': 32784}, {'n': '竖版视频', 'v': 32785}, {'n': '轻动画', 'v': 33482}, {'n': '短剧', 'v': 33483}]}, {'key': '30225', 'name': '风格', 'value': [{'n': '全部', 'v': ''}, {'n': '搞笑', 'v': 30230}, {'n': '热血', 'v': 30232}, {'n': '催泪', 'v': 30233}, {'n': '治愈', 'v': 30234}, {'n': '励志', 'v': 30237}, {'n': '机战', 'v': 30241}, {'n': '恋爱', 'v': 30243}, {'n': '科幻', 'v': 30245}, {'n': '奇幻', 'v': 30247}, {'n': '推理', 'v': 30248}, {'n': '校园', 'v': 30249}, {'n': '日常', 'v': 30252}, {'n': '历史', 'v': 30254}, {'n': '美食', 'v': 30255}, {'n': '职场', 'v': 30256}, {'n': '偶像', 'v': 30258}, {'n': '泡面', 'v': 30265}, {'n': '冒险', 'v': 30267}, {'n': '竞技', 'v': 30268}, {'n': '合家欢', 'v': 30270}, {'n': '武侠', 'v': 32792}, {'n': '玄幻', 'v': 32793}]}, {'key': '32795', 'name': '新类型', 'value': [{'n': '全部', 'v': ''}, {'n': '轻小说改编', 'v': 32796}, {'n': '漫画改编', 'v': 32797}, {'n': '游戏改编', 'v': 32798}, {'n': '原创', 'v': 32799}]}], '6': [{'key': 'mode', 'name': '综合排序', 'value': [{'n': '全部', 'v': ''}, {'n': '热播榜', 'v': 11}, {'n': '好评榜', 'v': 8}, {'n': '新上线', 'v': 4}]}, {'key': 'year', 'name': '全部年份', 'value': [{'n': '全部', '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-2011', 'v': '2011_2016'}, {'n': '2010-2000', 'v': '2000_2010'}, {'n': '90年代', 'v': '1990_1999'}, {'n': '80年代', 'v': '1980_1989'}, {'n': '更早', 'v': '1964_1979'}]}, {'key': 'is_purchase', 'name': '全部资费', 'value': [{'n': '全部', 'v': ''}, {'n': '免费', 'v': 0}, {'n': '会员', 'v': 1}, {'n': '付费', 'v': 2}]}, {'key': 'three_category_id', 'name': '地区', 'value': [{'n': '全部', 'v': ''}, {'n': '内地', 'v': 151}, {'n': '港台', 'v': 152}, {'n': '韩国', 'v': 33306}, {'n': '欧美', 'v': 154}, {'n': '其它', 'v': 1113}]}, {'key': '18014', 'name': '类型', 'value': [{'n': '全部', 'v': ''}, {'n': '播报', 'v': 155}, {'n': '访谈', 'v': 156}, {'n': '游戏', 'v': 158}, {'n': '晚会', 'v': 292}, {'n': '曲艺', 'v': 293}, {'n': '脱口秀', 'v': 2118}, {'n': '真人秀', 'v': 2224}, {'n': '竞技', 'v': 30278}, {'n': '爱奇艺出品', 'v': 30279}, {'n': '竞演', 'v': 33860}]}, {'key': '33162', 'name': '题材', 'value': [{'n': '全部', 'v': ''}, {'n': '音乐', 'v': 33163}, {'n': '舞蹈', 'v': 33172}, {'n': '文化', 'v': 33173}, {'n': '美食', 'v': 33182}, {'n': '伦理', 'v': 33184}, {'n': '相亲', 'v': 33193}, {'n': '纪实', 'v': 33195}, {'n': '生活', 'v': 33196}, {'n': '亲子', 'v': 33197}, {'n': '少儿', 'v': 33198}, {'n': '财经', 'v': 33199}, {'n': '健康', 'v': 33200}, {'n': '时尚', 'v': 33203}, {'n': '旅游', 'v': 33205}, {'n': '教育', 'v': 33206}, {'n': '其它', 'v': 33220}, {'n': '爱情', 'v': 33316}, {'n': '搞笑', 'v': 33317}, {'n': '益智', 'v': 33318}, {'n': '职场', 'v': 33319}, {'n': '语言', 'v': 33530}, {'n': '辩论', 'v': 33531}, {'n': '演讲', 'v': 33843}]}], '5': [{'key': 'mode', 'name': '综合排序', 'value': [{'n': '全部', 'v': ''}, {'n': '热播榜', 'v': 11}, {'n': '好评榜', 'v': 8}, {'n': '新上线', 'v': 4}]}, {'key': 'year', 'name': '全部年份', 'value': [{'n': '全部', '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-2011', 'v': '2011_2016'}, {'n': '2010-2000', 'v': '2000_2010'}, {'n': '90年代', 'v': '1990_1999'}, {'n': '80年代', 'v': '1980_1989'}, {'n': '更早', 'v': '1964_1979'}]}, {'key': 'is_purchase', 'name': '全部资费', 'value': [{'n': '全部', 'v': ''}, {'n': '免费', 'v': 0}, {'n': '会员', 'v': 1}, {'n': '付费', 'v': 2}]}, {'key': 'three_category_id', 'name': '地区', 'value': [{'n': '全部', 'v': ''}, {'n': '内地', 'v': 221}, {'n': '港台', 'v': 220}, {'n': '欧美', 'v': 219}, {'n': '日韩', 'v': 218}, {'n': '拉美', 'v': 217}, {'n': '亚洲地区', 'v': 216}, {'n': '非洲', 'v': 215}]}, {'key': '18009', 'name': '语种', 'value': [{'n': '全部', 'v': ''}, {'n': '普通话', 'v': 91}, {'n': '粤语', 'v': 92}, {'n': '闽南语', 'v': 93}, {'n': '英语', 'v': 94}, {'n': '日语', 'v': 95}, {'n': '韩语', 'v': 96}, {'n': '其它', 'v': 97}]}, {'key': '23554', 'name': '音乐类型', 'value': [{'n': '全部', 'v': ''}, {'n': '单曲MV', 'v': 23556}, {'n': '单曲现场', 'v': 23557}, {'n': '演唱会', 'v': 23558}, {'n': '新闻', 'v': 23559}, {'n': '访谈', 'v': 23560}, {'n': '音乐记录', 'v': 23561}, {'n': '音乐周边', 'v': 23562}, {'n': '音乐节目', 'v': 23563}, {'n': '影视原声', 'v': 23564}, {'n': '音乐短片', 'v': 23565}, {'n': '其他', 'v': 23566}]}], '16': [{'key': 'mode', 'name': '综合排序', 'value': [{'n': '全部', 'v': ''}, {'n': '热播榜', 'v': 11}, {'n': '好评榜', 'v': 8}, {'n': '新上线', 'v': 4}]}, {'key': 'year', 'name': '全部年份', 'value': [{'n': '全部', '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-2011', 'v': '2011_2016'}, {'n': '2010-2000', 'v': '2000_2010'}, {'n': '90年代', 'v': '1990_1999'}, {'n': '80年代', 'v': '1980_1989'}, {'n': '更早', 'v': '1964_1979'}]}, {'key': 'is_purchase', 'name': '全部资费', 'value': [{'n': '全部', 'v': ''}, {'n': '免费', 'v': 0}, {'n': '会员', 'v': 1}, {'n': '付费', 'v': 2}]}, {'key': '18061', 'name': '类型', 'value': [{'n': '全部', 'v': ''}, {'n': '喜剧', 'v': 1296}, {'n': '爱情', 'v': 1297}, {'n': '动作', 'v': 1298}, {'n': '奇幻', 'v': 1299}, {'n': '惊悚', 'v': 1300}, {'n': '悬疑', 'v': 1301}, {'n': '青春', 'v': 1302}]}]}, + // url:'https://pcw-api.iqiyi.com/search/recommend/list?channel_id=fyclass&data_type=1&is_purchase=&mode=24&page_id=fypage&ret_num=48&three_category_id=', + url:'https://pcw-api.iqiyi.com/search/recommend/list?channel_id=fyclass&data_type=1&page_id=fypage&ret_num=48', + filter_url:'is_purchase={{fl.is_purchase}}&mode={{fl.mode}}&three_category_id={{fl.three_category_id}}&market_release_date_level={{fl.year}}', + // url:'https://pcw-api.iqiyi.com/search/video/videolists?channel_id=fyclass&pageNum=fypage&pageSize=24&data_type=1&site=iqiyi', + headers:{ + 'User-Agent':'MOBILE_UA' + }, + timeout:5000, + class_name:'电影&电视剧&纪录片&动漫&综艺&音乐&网络电影', + class_url:'1&2&3&4&6&5&16', + limit:20, + // play_parse:true, + // 手动调用解析请求json的url,此lazy不方便 + lazy:'js:input=""+input.split("?")[0];log(input);let html=JSON.parse(request(input));log(html);input=html.url||input', + // 推荐:'.list_item;img&&alt;img&&src;a&&Text;a&&data-float', + // 一级:'json:.data.list;.name;.imageUrl;.latestOrder;.albumId', + 推荐:'', + // 推荐:'js:let d=[];fetch_params.headers["user-agent"]=PC_UA;pdfh=jsp.pdfh;pdfa=jsp.pdfa;pd=jsp.pd;let html=fetch(HOST,fetch_params);let lists=pdfa(html,".qy-mod-li");lists.forEach(function(it){try{let title=pdfh(it,"p.sub&&title");let desc=pdfh(it,".qy-mod-label&&Text");let pic_url=pd(it,"img&&src");d.push({title:title,desc:desc,img:pic_url})}catch(e){}});res=setResult(d);', + 一级:'js:let d=[];if(MY_CATE==="16"){input=input.replace("channel_id=16","channel_id=1").split("three_category_id")[0];input+="three_category_id=27401"}else if(MY_CATE==="5"){input=input.replace("data_type=1","data_type=2")}let html=request(input);let json=JSON.parse(html);if(json.code==="A00003"){fetch_params.headers["user-agent"]=PC_UA;json=JSON.parse(fetch(input,fetch_params))}json.data.list.forEach(function(data){if(data.channelId===1){desc=data.hasOwnProperty("score")?data.score+"分\\t":""}else if(data.channelId===2||data.channelId===4){if(data.latestOrder===data.videoCount){desc=(data.hasOwnProperty("score")?data.score+"分\\t":"")+data.latestOrder+"集全"}else{if(data.videoCount){desc=(data.hasOwnProperty("score")?data.score+"分\\t":"")+data.latestOrder+"/"+data.videoCount+"集"}else{desc="更新至 "+data.latestOrder+"集"}}}else if(data.channelId===6){desc=data.period+"期"}else if(data.channelId===5){desc=data.focus}else{if(data.latestOrder){desc="更新至 第"+data.latestOrder+"期"}else if(data.period){desc=data.period}else{desc=data.focus}}url=MY_CATE+"$"+data.albumId;d.push({url:url,title:data.name,desc:desc,pic_url:data.imageUrl.replace(".jpg","_390_520.jpg?caplist=jpg,webp")})});setResult(d);', + // 一级:'js:let d=[];if(MY_CATE==="16"){input=input.replace("channel_id=16","channel_id=1").split("three_category_id")[0];input+="three_category_id=27401"}else if(MY_CATE==="5"){input=input.replace("data_type=1","data_type=2")}let html=fetch(input,fetch_params);let json=JSON.parse(html);if(json.code==="A00003"){fetch_params.headers["user-agent"]=PC_UA;json=JSON.parse(fetch(input,fetch_params))}json.data.list.forEach(function(data){if(data.channelId===1){desc=data.hasOwnProperty("score")?data.score+"分\\t":""}else if(data.channelId===2||data.channelId===4){if(data.latestOrder===data.videoCount){desc=(data.hasOwnProperty("score")?data.score+"分\\t":"")+data.latestOrder+"集全"}else{if(data.videoCount){desc=(data.hasOwnProperty("score")?data.score+"分\\t":"")+data.latestOrder+"/"+data.videoCount+"集"}else{desc="更新至 "+data.latestOrder+"集"}}}else if(data.channelId===6){desc=data.period+"期"}else if(data.channelId===5){desc=data.focus}else{if(data.latestOrder){desc="更新至 第"+data.latestOrder+"期"}else if(data.period){desc=data.period}else{desc=data.focus}}url=MY_CATE+"$"+data.albumId;d.push({url:url,title:data.name,desc:desc,pic_url:data.imageUrl.replace(".jpg","_390_520.jpg?caplist=jpg,webp")})});setResult(d);', + // 一级:'json:.data.list;.name;.imageUrl;.playUrl;.latestOrder', + // 二级:{is_json:1,"title":"data.title;data.moviecategory[0]+data.moviecategory[1]","img":"data.cdncover","desc":"data.area[0];data.director[0]","content":"data.description","tabs":"data.playlink_sites;data.playlinksdetail.#idv.quality","lists":"data.playlinksdetail.#idv.default_url"}, + // 二级:{is_json:1,"title":"data.name+data.subtitle;data.latestOrder","img":"data.imageUrl","desc":"data.categories;data.areas","content":"data.description","tabs":"data.name","lists":"data.playlinksdetail.#idv.default_url"}, + 二级:'', + 二级:'js:let d=[];let html=request(input);let json=JSON.parse(html).data;VOD={vod_id:"",vod_url:input,vod_name:"",type_name:"",vod_actor:"",vod_year:"",vod_director:"",vod_area:"",vod_content:"",vod_remarks:"",vod_pic:""};VOD.vod_name=json.name;try{if(json.latestOrder){VOD.vod_remarks="类型: "+(json.categories[0].name||"")+"\\t"+(json.categories[1].name||"")+"\\t"+(json.categories[2].name||"")+"\\t"+"评分:"+(json.score||"")+"\\n更新至:第"+json.latestOrder+"集(期)/共"+json.videoCount+"集(期)"}else{VOD.vod_remarks="类型: "+(json.categories[0].name||"")+"\\t"+(json.categories[1].name||"")+"\\t"+(json.categories[2].name||"")+"\\t"+"评分:"+(json.score||"")+json.period}}catch(e){VOD.vod_remarks=json.subtitle}VOD.vod_area=(json.focus||"")+"\\n资费:"+(json.payMark===1?"VIP":"免费")+"\\n地区:"+(json.areas||"");let vsize="579_772";try{vsize=json.imageSize[12]}catch(e){}VOD.vod_pic=json.imageUrl.replace(".jpg","_"+vsize+".jpg?caplist=jpg,webp");VOD.type_name=json.categories.map(function(it){return it.name}).join(",");if(json.people.main_charactor){let vod_actors=[];json.people.main_charactor.forEach(function(it){vod_actors.push(it.name)});VOD.vod_actor=vod_actors.join(",")}VOD.vod_content=json.description;let playlists=[];if(json.channelId===1||json.channelId===5){playlists=[{playUrl:json.playUrl,imageUrl:json.imageUrl,shortTitle:json.shortTitle,focus:json.focus,period:json.period}]}else{if(json.channelId===6){let qs=json.period.split("-")[0];let listUrl="https://pcw-api.iqiyi.com/album/source/svlistinfo?cid=6&sourceid="+json.albumId+"&timelist="+qs;let playData=JSON.parse(request(listUrl)).data[qs];playData.forEach(function(it){playlists.push({playUrl:it.playUrl,imageUrl:it.imageUrl,shortTitle:it.shortTitle,focus:it.focus,period:it.period})})}else{let listUrl="https://pcw-api.iqiyi.com/albums/album/avlistinfo?aid="+json.albumId+"&size=200&page=1";let data=JSON.parse(request(listUrl)).data;let total=data.total;playlists=data.epsodelist;if(total>200){for(let i=2;i200){for(let i=2;i { + let d = []; + let url1 = JSON.parse(request("" + input)).url; + + function isEncrypted(url) { + return url.includes('baidu.con/') && url.length > 16; + } + + let url; + if (isEncrypted(url1)) { + console.log(""); + var withoutDomain = url1.replace(/^https:\/\/baidu\.con\//, ''); + var first16Chars = withoutDomain.substring(0, 16); + var remainingString = withoutDomain.substring(16); + var key = CryptoJS.enc.Utf8.parse(first16Chars); + var iv = key; + + function AES_Decrypt(word) { + var srcs = word; + var decrypt = CryptoJS.AES.decrypt(srcs, key, { + iv: iv, + mode: CryptoJS.mode.CBC, + padding: CryptoJS.pad.Pkcs7 + }); + return decrypt.toString(CryptoJS.enc.Utf8); + }; + + url = AES_Decrypt(remainingString); + } else { + console.log(""); + url = url1; + } + + input = { + url: url, + parse: 0, + header: rule.headers + } + setResult(d); + }), + + 推荐: '.list_item;img&&alt;img&&src;a&&Text;a&&data-float', + 一级: '.list_item;img&&alt;img&&src;a&&Text;a&&data-float', + 二级: $js.toString(() => { + VOD = {}; + let d = []; + let video_list = []; + let video_lists = []; + let QZOutputJson; + let html = fetch(input, fetch_params); + let sourceId = /get_playsource/.test(input) ? input.match(/id=(\d*?)&/)[1] : input.split("cid=")[1]; + let cid = sourceId; + let detailUrl = "https://v.qq.com/detail/m/" + cid + ".html"; + try { + let json = JSON.parse(html); + VOD = { + vod_url: input, + vod_name: json.c.title, + type_name: json.typ.join(","), + vod_actor: json.nam.join(","), + vod_year: json.c.year, + vod_content: json.c.description, + vod_remarks: json.rec, + vod_pic: urljoin2(input, json.c.pic) + } + } catch (e) {} + if (/get_playsource/.test(input)) { + eval(html); + let indexList = QZOutputJson.PlaylistItem.indexList; + indexList.forEach(function(it) { + let dataUrl = "https://s.video.qq.com/get_playsource?id=" + sourceId + "&plat=2&type=4&data_type=3&range=" + it + "&video_type=10&plname=qq&otype=json"; + eval(fetch(dataUrl, fetch_params)); + let vdata = QZOutputJson.PlaylistItem.videoPlayList; + vdata.forEach(function(item) { + d.push({ + title: item.title, + pic_url: item.pic, + url: item.playUrl + }) + }); + video_lists = video_lists.concat(vdata) + }) + } else { + let json = JSON.parse(html); + video_lists = json.c.video_ids; + let url = "https://v.qq.com/x/cover/" + sourceId + ".html"; + if (video_lists.length === 1) { + let vid = video_lists[0]; + let o_url = "https://union.video.qq.com/fcgi-bin/data?otype=json&tid=1804&appid=20001238&appkey=6c03bbe9658448a4&union_platform=1&idlist=" + vid; + let o_html = fetch(o_url, fetch_params); + eval(o_html); + if (QZOutputJson.results && QZOutputJson.results.length > 0) { + let it1 = QZOutputJson.results[0].fields; + url = "https://v.qq.com/x/cover/" + cid + "/" + vid + ".html"; + d.push({ + title: it1.title, + url: url + }) + } else { + url = "https://v.qq.com/x/cover/" + cid + "/" + vid + ".html"; + d.push({ + title: "正片播放", + url: url + }) + } + } else if (video_lists.length > 1) { + for (let i = 0; i < video_lists.length; i += 30) { + video_list.push(video_lists.slice(i, i + 30)) + } + video_list.forEach(function(it, idex) { + let o_url = "https://union.video.qq.com/fcgi-bin/data?otype=json&tid=1804&appid=20001238&appkey=6c03bbe9658448a4&union_platform=1&idlist=" + it.join(","); + let o_html = fetch(o_url, fetch_params); + eval(o_html); + QZOutputJson.results.forEach(function(it1) { + it1 = it1.fields; + let url = "https://v.qq.com/x/cover/" + cid + "/" + it1.vid + ".html"; + d.push({ + title: it1.title, + pic_url: it1.pic160x90.replace("/160", ""), + desc: it1.video_checkup_time, + url: url, + type: it1.category_map && it1.category_map.length > 1 ? it1.category_map[1] : "" + }) + }) + }) + } + } + + let playFrom = []; + let playUrl = []; + + let ygKeywords = ["预告", "花絮", "片花", "特辑", "幕后", "采访", "制作", "MV", "主题曲"]; + + let yg = d.filter(function(it) { + return it.type && ygKeywords.some(keyword => it.type.includes(keyword)); + }); + let zp = d.filter(function(it) { + return !(it.type && ygKeywords.some(keyword => it.type.includes(keyword))); + }); + + if (zp.length > 0) { + playFrom.push("正片"); + playUrl.push(zp.map(it => it.title + "$" + it.url).join("#")); + } + + if (yg.length > 0) { + let 预告 = yg.filter(it => it.type && it.type.includes("预告")); + let 花絮片花 = yg.filter(it => it.type && (it.type.includes("花絮") || it.type.includes("片花"))); + let 特辑 = yg.filter(it => it.type && (it.type.includes("特辑") || it.type.includes("幕后"))); + + if (预告.length > 0) { + playFrom.push("预告"); + playUrl.push(预告.map(it => it.title + "$" + it.url).join("#")); + } + if (花絮片花.length > 0) { + playFrom.push("花絮片花"); + playUrl.push(花絮片花.map(it => it.title + "$" + it.url).join("#")); + } + if (特辑.length > 0) { + playFrom.push("特辑"); + playUrl.push(特辑.map(it => it.title + "$" + it.url).join("#")); + } + } + + VOD.vod_play_from = playFrom.join("$$$"); + VOD.vod_play_url = playUrl.join("$$$"); + }), + 搜索: $js.toString(() => { + let d = [], + keyword = input.split("/")[3]; + let seenIds = new Set(); + + function vodSearch(keyword, page = 0) { + return request('https://pbaccess.video.qq.com/trpc.videosearch.mobile_search.MultiTerminalSearch/MbSearch?vplatform=2', { + body: JSON.stringify({ + version: "25042201", + clientType: 1, + filterValue: "", + uuid: "B1E50847-D25F-4C4B-BBA0-36F0093487F6", + retry: 0, + query: keyword, + pagenum: page, + isPrefetch: true, + pagesize: 30, + queryFrom: 0, + isneedQc: true, + extraInfo: { + isNewMarkLabel: "1", + multi_terminal_pc: "1", + themeType: "1" + } + }), + headers: { + 'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/98.0.4758.139 Safari/537.36', + 'Content-Type': 'application/json', + 'Origin': 'https://v.qq.com', + 'Referer': 'https://v.qq.com/' + }, + method: 'POST' + }); + } + + const nonMainContentKeywords = [ + ':', '#', '特辑', '“', '剪辑', '片花', '独家', '专访', '纯享', + '制作', '幕后', '宣传', '看点', '主题曲', '插曲', '彩蛋', + '精彩', '集锦', '盘点', '回顾', '解说', '评测', '反应', 'reaction' + ]; + + function isMainContent(title) { + if (!title) return false; + if (title.includes('') || title.includes('')) return false; + return !nonMainContentKeywords.some(keyword => title.includes(keyword)); + } + + try { + let html = vodSearch(keyword, 0); + let json = JSON.parse(html); + + function processItemList(itemList) { + if (!itemList) return; + + itemList.forEach(it => { + if (it.doc && it.doc.id && it.videoInfo && isMainContent(it.videoInfo.title)) { + const itemId = it.doc.id; + if (!seenIds.has(itemId)) { + seenIds.add(itemId); + d.push({ + title: it.videoInfo.title, + img: it.videoInfo.imgUrl || "", + url: itemId, + desc: it.videoInfo.secondLine || "" + }); + } + } + }); + } + + if (json.data && json.data.normalList) { + processItemList(json.data.normalList.itemList); + } + + if (json.data && json.data.areaBoxList) { + json.data.areaBoxList.forEach(box => { + processItemList(box.itemList); + }); + } + + } catch (e) { + log("搜索出错: " + e.message); + } + + setResult(d); + }) +}; \ No newline at end of file diff --git a/Ye-11X115490_PsyDuck4k/lib/芒果视频.js b/Ye-11X115490_PsyDuck4k/lib/芒果视频.js new file mode 100644 index 00000000..5cc67201 --- /dev/null +++ b/Ye-11X115490_PsyDuck4k/lib/芒果视频.js @@ -0,0 +1,850 @@ +var rule = { + title: '百忙无果[官]', + host: 'https://pianku.api.%6d%67%74%76.com', + homeUrl: '', + + searchUrl: 'https://mobileso.bz.%6d%67%74%76.com/msite/search/v2?q=**&pn=fypage&pc=10', + detailUrl: 'https://pcweb.api.mgtv.com/episode/list?page=1&size=50&video_id=fyid', + searchable: 2, + quickSearch: 0, + filterable: 1, + multi: 1, + + url: '/rider/list/pcweb/v3?platform=pcweb&channelId=fyclass&pn=fypage&pc=80&hudong=1&_support=10000000&kind=a1&area=a1', + filter_url: 'year={{fl.year or "all"}}&sort={{fl.sort or "all"}}&chargeInfo={{fl.chargeInfo or "all"}}', + headers: { + 'User-Agent': 'PC_UA' + }, + timeout: 5000, + class_name: '电影&电视剧&综艺&动漫&纪录片&教育&少儿', + class_url: '3&2&1&50&51&115&10', + filter: { + "1": [{ + "key": "chargeInfo", + "name": "付费类型", + "value": [{ + "n": "全部", + "v": "all" + }, { + "n": "免费", + "v": "b1" + }, { + "n": "vip", + "v": "b2" + }, { + "n": "VIP用券", + "v": "b3" + }, { + "n": "付费点播", + "v": "b4" + }] + }, { + "key": "sort", + "name": "排序", + "value": [{ + "n": "最新", + "v": "c1" + }, { + "n": "最热", + "v": "c2" + }, { + "n": "知乎高分", + "v": "c4" + }] + }, { + "key": "year", + "name": "年代", + "value": [{ + "n": "全部", + "v": "all" + }, { + "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" + }] + }], + "2": [{ + "key": "chargeInfo", + "name": "付费类型", + "value": [{ + "n": "全部", + "v": "all" + }, { + "n": "免费", + "v": "b1" + }, { + "n": "vip", + "v": "b2" + }, { + "n": "VIP用券", + "v": "b3" + }, { + "n": "付费点播", + "v": "b4" + }] + }, { + "key": "sort", + "name": "排序", + "value": [{ + "n": "最新", + "v": "c1" + }, { + "n": "最热", + "v": "c2" + }, { + "n": "知乎高分", + "v": "c4" + }] + }, { + "key": "year", + "name": "年代", + "value": [{ + "n": "全部", + "v": "all" + }, { + "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" + }] + }], + "3": [{ + "key": "chargeInfo", + "name": "付费类型", + "value": [{ + "n": "全部", + "v": "all" + }, { + "n": "免费", + "v": "b1" + }, { + "n": "vip", + "v": "b2" + }, { + "n": "VIP用券", + "v": "b3" + }, { + "n": "付费点播", + "v": "b4" + }] + }, { + "key": "sort", + "name": "排序", + "value": [{ + "n": "最新", + "v": "c1" + }, { + "n": "最热", + "v": "c2" + }, { + "n": "知乎高分", + "v": "c4" + }] + }, { + "key": "year", + "name": "年代", + "value": [{ + "n": "全部", + "v": "all" + }, { + "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" + }] + }], + "50": [{ + "key": "chargeInfo", + "name": "付费类型", + "value": [{ + "n": "全部", + "v": "all" + }, { + "n": "免费", + "v": "b1" + }, { + "n": "vip", + "v": "b2" + }, { + "n": "VIP用券", + "v": "b3" + }, { + "n": "付费点播", + "v": "b4" + }] + }, { + "key": "sort", + "name": "排序", + "value": [{ + "n": "最新", + "v": "c1" + }, { + "n": "最热", + "v": "c2" + }, { + "n": "知乎高分", + "v": "c4" + }] + }, { + "key": "year", + "name": "年代", + "value": [{ + "n": "全部", + "v": "all" + }, { + "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" + }] + }], + "51": [{ + "key": "chargeInfo", + "name": "付费类型", + "value": [{ + "n": "全部", + "v": "all" + }, { + "n": "免费", + "v": "b1" + }, { + "n": "vip", + "v": "b2" + }, { + "n": "VIP用券", + "v": "b3" + }, { + "n": "付费点播", + "v": "b4" + }] + }, { + "key": "sort", + "name": "排序", + "value": [{ + "n": "最新", + "v": "c1" + }, { + "n": "最热", + "v": "c2" + }, { + "n": "知乎高分", + "v": "c4" + }] + }, { + "key": "year", + "name": "年代", + "value": [{ + "n": "全部", + "v": "all" + }, { + "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" + }] + }], + "115": [{ + "key": "chargeInfo", + "name": "付费类型", + "value": [{ + "n": "全部", + "v": "all" + }, { + "n": "免费", + "v": "b1" + }, { + "n": "vip", + "v": "b2" + }, { + "n": "VIP用券", + "v": "b3" + }, { + "n": "付费点播", + "v": "b4" + }] + }, { + "key": "sort", + "name": "排序", + "value": [{ + "n": "最新", + "v": "c1" + }, { + "n": "最热", + "v": "c2" + }, { + "n": "知乎高分", + "v": "c4" + }] + }, { + "key": "year", + "name": "年代", + "value": [{ + "n": "全部", + "v": "all" + }, { + "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" + }] + }] + }, + limit: 20, + play_parse: true, + lazy: $js.toString(() => { + try { + let api = "" + input.split("?")[0]; + console.log(api); + let response = fetch(api, { + method: 'get', + headers: { + 'User-Agent': 'okhttp/3.14.9', + 'Content-Type': 'application/x-www-form-urlencoded' + } + }); + + let bata = JSON.parse(response); + log(bata) + if (bata.url.includes("http")) { + input = { + header: { + 'User-Agent': "" + }, + parse: 0, + url: bata.url, + jx: 0, + danmaku: 'http://127.0.0.1:9978/proxy?do=danmu&url='+input.split("?")[0] + }; + } else { + input = { + header: { + 'User-Agent': '' + }, + parse: 0, + url: input.split("?")[0], + jx: 1, + danmaku: 'http://127.0.0.1:9978/proxy?do=danmu&url='+input.split("?")[0] + }; + } + } catch { + input = { + header: { + 'User-Agent': '' + }, + parse: 0, + url: input.split("?")[0], + jx: 1, + danmaku: 'http://127.0.0.1:9978/proxy?do=danmu&url='+input.split("?")[0] + }; + } + }), + // 手动调用解析请求json的url,此lazy不方便 + // lazy:'js:print(input);fetch_params.headers["user-agent"]=MOBILE_UA;let html=request(input);let rurl=html.match(/window\\.open\\(\'(.*?)\',/)[1];rurl=urlDeal(rurl);input={parse:1,url:rurl};', + // 推荐:'.list_item;img&&alt;img&&src;a&&Text;a&&data-float', + 一级: 'json:data.hitDocs;title;img;updateInfo||rightCorner.text;playPartId', + // 一级:'json:data.hitDocs;title;img;updateInfo;playPartId', + 二级: $js.toString(() => { + fetch_params.headers.Referer = "https://www.mgtv.com"; + fetch_params.headers["User-Agent"] = MOBILE_UA; + pdfh = jsp.pdfh; + pdfa = jsp.pdfa; + pd = jsp.pd; + VOD = {}; + let d = []; + let html = request(input); + let json = JSON.parse(html); + let host = "https://www.mgtv.com"; + let ourl = json.data.list.length > 0 ? json.data.list[0].url : json.data.series[0].url; + if (!/^http/.test(ourl)) { + ourl = host + ourl + } + fetch_params.headers["User-Agent"] = MOBILE_UA; + html = request(ourl); + if (html.includes("window.location =")) { + print("开始获取ourl"); + ourl = pdfh(html, "meta[http-equiv=refresh]&&content").split("url=")[1]; + print("获取到ourl:" + ourl); + html = request(ourl) + } + try { + let details = pdfh(html, ".m-details&&Html").replace(/h1>/, "h6>").replace(/div/g, "br"); + print(details); + let actor = "", + director = "", + time = ""; + if (/播出时间/.test(details)) { + actor = pdfh(html, "p:eq(5)&&Text").substr(0, 25); + director = pdfh(html, "p:eq(4)&&Text"); + time = pdfh(html, "p:eq(3)&&Text") + } else { + actor = pdfh(html, "p:eq(4)&&Text").substr(0, 25); + director = pdfh(html, "p:eq(3)&&Text"); + time = "已完结" + } + let _img = pd(html, ".video-img&&img&&src"); + let JJ = pdfh(html, ".desc&&Text").split("简介:")[1]; + let _desc = time; + VOD.vod_name = pdfh(html, ".vt-txt&&Text"); + VOD.type_name = pdfh(html, "p:eq(0)&&Text").substr(0, 6); + VOD.vod_area = pdfh(html, "p:eq(1)&&Text"); + VOD.vod_actor = actor; + VOD.vod_director = director; + VOD.vod_remarks = _desc; + VOD.vod_pic = _img; + VOD.vod_content = JJ; + if (!VOD.vod_name) { + VOD.vod_name = VOD.type_name; + } + } catch (e) { + log("获取影片信息发生错误:" + e.message) + } + + function getRjpg(imgUrl, xs) { + xs = xs || 3; + let picSize = /jpg_/.test(imgUrl) ? imgUrl.split("jpg_")[1].split(".")[0] : false; + let rjpg = false; + if (picSize) { + let a = parseInt(picSize.split("x")[0]) * xs; + let b = parseInt(picSize.split("x")[1]) * xs; + rjpg = a + "x" + b + ".jpg" + } + let img = /jpg_/.test(imgUrl) && rjpg ? imgUrl.replace(imgUrl.split("jpg_")[1], rjpg) : imgUrl; + return img + } + + if (json.data.total === 1 && json.data.list.length === 1) { + let data = json.data.list[0]; + let url = "https://www.mgtv.com" + data.url; + d.push({ + title: data.t4, + desc: data.t2, + pic_url: getRjpg(data.img), + url: url + }) + } else if (json.data.list.length > 1) { + for (let i = 1; i <= json.data.total_page; i++) { + if (i > 1) { + json = JSON.parse(fetch(input.replace("page=1", "page=" + i), {})) + } + json.data.list.forEach(function(data) { + let url = "https://www.mgtv.com" + data.url; + if (data.isIntact == "1") { + d.push({ + title: data.t4, + desc: data.t2, + pic_url: getRjpg(data.img), + url: url + }) + } + }) + } + } else { + print(input + "暂无片源") + } + VOD.vod_play_from = "mgtv"; + VOD.vod_play_url = d.map(function(it) { + return it.title + "$" + it.url + }).join("#"); + setResult(d); + }), + + 搜索: $js.toString(() => { + fetch_params.headers.Referer = "https://www.mgtv.com"; + fetch_params.headers["User-Agent"] = MOBILE_UA; + let d = []; + let html = request(input); + let json = JSON.parse(html); + json.data.contents.forEach(function(data) { + if (data.type && data.type == 'media') { + let item = data.data[0]; + let desc = item.desc.join(','); + let fyclass = ''; + if (item.source === "imgo") { + let img = item.img ? item.img : ''; + try { + fyclass = item.rpt.match(/idx=(.*?)&/)[1] + '$'; + } catch (e) { + log(e.message); + fyclass = ''; + } + log(fyclass); + d.push({ + title: item.title.replace(/|<\/B>/g, ''), + img: img, + content: '', + desc: desc, + url: fyclass + item.url.match(/.*\/(.*?)\.html/)[1] + }) + } + } + }); + setResult(d); + }), +} \ No newline at end of file diff --git a/Ye-11X115490_PsyDuck4k/lib/虫虫影视.js b/Ye-11X115490_PsyDuck4k/lib/虫虫影视.js new file mode 100644 index 00000000..c029f295 --- /dev/null +++ b/Ye-11X115490_PsyDuck4k/lib/虫虫影视.js @@ -0,0 +1,533 @@ +import cheerio from 'assets://js/lib/cheerio.min.js'; + +const appConfig = { + siteName: "虫虫影视", + siteUrl: "https://www.chongliski.net" +} +const UA = "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/91.0.4472.124 Safari/537.36"; +const Headers = { + "User-Agent": UA, + "Referer": appConfig.siteUrl + "/", +} + +const parseApi4k = "https://fgsrg.hzqingshan.com/player/?url="; +const parseApi2k = "https://zzrs.mfdyvip.com/player/?url="; + +async function init(ext) { + console.log("初始化爬虫:", appConfig.siteName); +} + +function getYearFilter() { + let years = [{ "n": "全部", "v": "" }]; + const currentYear = new Date().getFullYear().toString(); + for (let y = currentYear; y >= currentYear - 22; y--) { + years.push({ "n": String(y), "v": String(y) }); + } + return { "key": "year", "name": "年份", "value": years }; +} + +function getLetterFilter() { + return { + "key": "letter", "name": "字母", "value": [ + { "n": "全部", "v": "" }, + { "n": "A", "v": "A" }, { "n": "B", "v": "B" }, { "n": "C", "v": "C" }, { "n": "D", "v": "D" }, + { "n": "E", "v": "E" }, { "n": "F", "v": "F" }, { "n": "G", "v": "G" }, { "n": "H", "v": "H" }, + { "n": "I", "v": "I" }, { "n": "J", "v": "J" }, { "n": "K", "v": "K" }, { "n": "L", "v": "L" }, + { "n": "M", "v": "M" }, { "n": "N", "v": "N" }, { "n": "O", "v": "O" }, { "n": "P", "v": "P" }, + { "n": "Q", "v": "Q" }, { "n": "R", "v": "R" }, { "n": "S", "v": "S" }, { "n": "T", "v": "T" }, + { "n": "U", "v": "U" }, { "n": "V", "v": "V" }, { "n": "W", "v": "W" }, { "n": "X", "v": "X" }, + { "n": "Y", "v": "Y" }, { "n": "Z", "v": "Z" }, { "n": "0-9", "v": "0-9" } + ] + } +} + +function getOrderFilter() { + return { + "key": "orderBy", "name": "排序", "value": [ + { "n": "时间", "v": "time" }, + { "n": "人气", "v": "hits" }, + { "n": "评分", "v": "score" } + ] + } +} + +const CommonFilters = [ + { + "key": "area", "name": "地区", "value": [ + { "n": "全部", "v": "" }, { "n": "大陆", "v": "大陆" }, { "n": "香港", "v": "香港" }, + { "n": "台湾", "v": "台湾" }, { "n": "美国", "v": "美国" }, { "n": "韩国", "v": "韩国" }, + { "n": "日本", "v": "日本" }, { "n": "泰国", "v": "泰国" }, { "n": "新加坡", "v": "新加坡" }, + { "n": "马来西亚", "v": "马来西亚" }, { "n": "印度", "v": "印度" }, { "n": "英国", "v": "英国" }, + { "n": "法国", "v": "法国" }, { "n": "加拿大", "v": "加拿大" }, { "n": "西班牙", "v": "西班牙" }, + { "n": "俄罗斯", "v": "俄罗斯" }, { "n": "其它", "v": "其它" } + ] + }, + { + "key": "lang", "name": "语言", "value": [ + { "n": "全部", "v": "" }, { "n": "国语", "v": "国语" }, { "n": "英语", "v": "英语" }, + { "n": "粤语", "v": "粤语" }, { "n": "闽南语", "v": "闽南语" }, { "n": "韩语", "v": "韩语" }, + { "n": "日语", "v": "日语" }, { "n": "其它", "v": "其它" } + ] + }, + getYearFilter(), + getLetterFilter(), + getOrderFilter() +]; + +const myFilters = { + "2": [ + { + key: "type", "name": "类型", value: [ + { "n": "全部", "v": "2" }, + { "n": "国产剧", "v": "13" }, + { "n": "日韩剧", "v": "15" }, + { "n": "海外剧", "v": "16" }, + ] + }, + { + "key": "class", "name": "剧情", "value": [ + { "n": "全部", "v": "" }, { "n": "古装", "v": "古装" }, { "n": "战争", "v": "战争" }, + { "n": "青春偶像", "v": "青春偶像" }, { "n": "喜剧", "v": "喜剧" }, { "n": "家庭", "v": "家庭" }, + { "n": "犯罪", "v": "犯罪" }, { "n": "动作", "v": "动作" }, { "n": "奇幻", "v": "奇幻" }, + { "n": "剧情", "v": "剧情" }, { "n": "历史", "v": "历史" }, { "n": "经典", "v": "经典" }, + { "n": "乡村", "v": "乡村" }, { "n": "情景", "v": "情景" }, { "n": "商战", "v": "商战" }, + { "n": "网剧", "v": "网剧" }, { "n": "其他", "v": "其他" } + ] + }, + ...CommonFilters + ], + "1": [ + { + "key": "type", "name": "类型", value: [ + { "n": "全部", "v": "1" }, + { "n": "动作片", "v": "6" }, + { "n": "喜剧片", "v": "7" }, + { "n": "恐怖片", "v": "8" }, + { "n": "科幻片", "v": "9" }, + { "n": "爱情片", "v": "10" }, + { "n": "剧情片", "v": "11" }, + { "n": "战争片", "v": "12" }, + { "n": "纪录片", "v": "20" } + ] + }, + { + "key": "class", "name": "剧情", "value": [ + { "n": "全部", "v": "" }, + { "n": "喜剧", "v": "喜剧" }, + { "n": "爱情", "v": "爱情" }, + { "n": "恐怖", "v": "恐怖" }, + { "n": "动作", "v": "动作" }, + { "n": "科幻", "v": "科幻" }, + { "n": "剧情", "v": "剧情" }, + { "n": "战争", "v": "战争" }, + { "n": "警匪", "v": "警匪" }, + { "n": "犯罪", "v": "犯罪" }, + { "n": "动画", "v": "动画" }, + { "n": "奇幻", "v": "奇幻" }, + { "n": "武侠", "v": "武侠" }, + { "n": "冒险", "v": "冒险" }, + { "n": "枪战", "v": "枪战" }, + { "n": "悬疑", "v": "悬疑" }, + { "n": "惊悚", "v": "惊悚" }, + { "n": "经典", "v": "经典" }, + { "n": "青春", "v": "青春" }, + { "n": "文艺", "v": "文艺" }, + { "n": "微电影", "v": "微电影" }, + { "n": "古装", "v": "古装" }, + { "n": "历史", "v": "历史" }, + { "n": "运动", "v": "运动" }, + { "n": "农村", "v": "农村" }, + { "n": "儿童", "v": "儿童" }, + { "n": "网络电影", "v": "网络电影" } + ] + }, + ...CommonFilters + ], + "4": [ + { + "key": "type", "name": "类型", value: [ + { "n": "全部", "v": "4" }, + { "n": "国产动漫", "v": "25" }, + { "n": "日韩动漫", "v": "26" }, + { "n": "欧美动漫", "v": "27" }, + { "n": "港台动漫", "v": "28" } + ] + }, + { + "key": "class", "name": "剧情", "value": [ + { "n": "全部", "v": "" }, + { "n": "情感", "v": "情感" }, + { "n": "科幻", "v": "科幻" }, + { "n": "热血", "v": "热血" }, + { "n": "推理", "v": "推理" }, + { "n": "搞笑", "v": "搞笑" }, + { "n": "冒险", "v": "冒险" }, + { "n": "萝莉", "v": "萝莉" }, + { "n": "校园", "v": "校园" }, + { "n": "动作", "v": "动作" }, + { "n": "机战", "v": "机战" }, + { "n": "运动", "v": "运动" }, + { "n": "战争", "v": "战争" }, + { "n": "少年", "v": "少年" }, + { "n": "少女", "v": "少女" }, + { "n": "社会", "v": "社会" }, + { "n": "原创", "v": "原创" }, + { "n": "亲子", "v": "亲子" }, + { "n": "益智", "v": "益智" }, + { "n": "励志", "v": "励志" }, + { "n": "其他", "v": "其他" } + ] + }, + ...CommonFilters + ], + "3": [ + { + "key": "type", "name": "类型", value: [ + { "n": "全部", "v": "3" }, + { "n": "大陆综艺", "v": "21" }, + { "n": "日韩综艺", "v": "22" }, + { "n": "欧美综艺", "v": "23" }, + { "n": "港台综艺", "v": "24" } + ] + }, + { + "key": "class", "name": "剧情", "value": [ + { "n": "全部", "v": "" }, + { "n": "选秀", "v": "选秀" }, + { "n": "情感", "v": "情感" }, + { "n": "访谈", "v": "访谈" }, + { "n": "播报", "v": "播报" }, + { "n": "旅游", "v": "旅游" }, + { "n": "音乐", "v": "音乐" }, + { "n": "美食", "v": "美食" }, + { "n": "纪实", "v": "纪实" }, + { "n": "曲艺", "v": "曲艺" }, + { "n": "生活", "v": "生活" }, + { "n": "游戏互动", "v": "游戏互动" }, + { "n": "财经", "v": "财经" }, + { "n": "求职", "v": "求职" } + ] + }, + ...CommonFilters + ], + "5": [ + getYearFilter(), + getLetterFilter(), + getOrderFilter() + ], +}; + +async function home(filter) { + return JSON.stringify({ + class: [ + { type_id: "2", type_name: "电视剧" }, + { type_id: "1", type_name: "电影" }, + { type_id: "4", type_name: "动漫" }, + { type_id: "3", type_name: "综艺" }, + { type_id: "5", type_name: "短剧" } + ], + filters: myFilters + }); +} + +async function category(tid, pg, filter, extend) { + pg = pg || 1; + let type = extend.type || tid; + const isLabel = tid.startsWith("/label"); + let url = ""; + + if (isLabel) { + url = appConfig.siteUrl + tid + `/page/${pg}.html`; + } else { + let classVal = extend.class || ''; + let areaVal = extend.area || ''; + let langVal = extend.lang || ''; + let letterVal = extend.letter || ''; + let orderVal = extend.orderBy || ''; + let yearVal = extend.year || ''; + + url = `${appConfig.siteUrl}/cupfox-list/${type}-${areaVal}-${''}-${classVal}-${langVal}-${letterVal}-${orderVal}-${''}-${pg}-${''}-${''}-${yearVal}.html`; + } + + try { + const html = (await req(url)).content; + const $ = cheerio.load(html); + let list = []; + + $(".module-poster-item.module-item").each(function (index, el) { + let vod_id = $(el).attr("href"); + let vod_name = $(el).attr("title"); + if (vod_name) vod_name = vod_name.trim(); + let vod_pic = $(el).find(".module-item-pic img").attr("data-src"); + let tag = $(el).find(".module-item-version-right").text().trim(); + let note = $(el).find(".module-item-note").text().trim(); + let vod_remarks = tag + (tag && note ? ' ' : '') + note; + + list.push({ + vod_id, + vod_name, + vod_pic, + vod_remarks + }); + }); + + let pagecount = 1; + const lastPageLink = $("#page a[title='尾页']").attr("href"); + if (lastPageLink) { + const parts = lastPageLink.replace('.html', '').split('-'); + for (let i = parts.length - 1; i >= 0; i--) { + const num = parseInt(parts[i]); + if (num > 0) { + pagecount = num; + break; + } + } + } + + return JSON.stringify({ + list, + pagecount + }); + } catch (e) { + console.error("分类列表获取失败:", e.message); + return JSON.stringify({ list: [], pagecount: 0 }); + } +} + +async function search(wd, quick, page) { + if (page >= 2) { + return JSON.stringify({ list: [], pagecount: 1 }); + } + + try { + const url = `${appConfig.siteUrl}/cupfox-search/-------------.html?wd=${wd}&submit=`; + const html = (await req(url)).content; + const $ = cheerio.load(html); + let list = []; + + $('.module-card-item.module-item').each((i, el) => { + const vod_id = $(el).find(".module-card-item-poster").attr('href') || ''; + const vod_name = $(el).find(".module-card-item-title a strong").text().trim(); + const vod_pic = $(el).find('.module-item-pic img').attr('data-src') || ''; + const vod_remarks = $(el).find('.module-item-note').text().trim(); + + list.push({ + vod_id, + vod_name, + vod_pic, + vod_remarks + }); + }); + + return JSON.stringify({ + list: list, + pagecount: 1 + }); + } catch (e) { + console.error("搜索失败:", e.message); + return JSON.stringify({ list: [] }); + } +} + +async function detail(id) { + try { + const videoId = id; + const url = appConfig.siteUrl + videoId; + const response = await req(url); + const html = response ? response.content : ''; + const $ = cheerio.load(html); + + const vod_name = $('.module-info-heading h1').text().trim(); + const imgSrc = $('.module-item-pic img').attr("data-src") || ''; + const vod_pic = imgSrc ? (imgSrc.startsWith('http') ? imgSrc : appConfig.siteUrl + imgSrc) : ''; + + let vod_actor = ''; + let vod_remarks = ''; + + $('.module-info-item').each((i, el) => { + const title = $(el).find('.module-info-item-title').text().trim(); + const content = $(el).find('.module-info-item-content').text().trim(); + if (title.includes('主演')) { + vod_actor = content; + } else if (title.includes('更新') || title.includes('状态') || title.includes('连载')) { + vod_remarks = content; + } + }); + + const vod_content = $('.module-info-introduction-content p').text().trim(); + + let rawLines = []; + let rawPlaylists = []; + + $('.mx-anthology-tab-label').each((i, el) => { + const lineName = $(el).text().trim(); + rawLines.push(lineName); + }); + + $('.mx-anthology-grid').each((lineIndex, poolEl) => { + const episodes = []; + $(poolEl).find('.mx-anthology-link').each((episodeIndex, epEl) => { + const name = $(epEl).text().trim(); + const href = $(epEl).attr('href') || ''; + if (name && href) { + episodes.push(`${name}$${href}`); + } + }); + rawPlaylists.push(episodes); + }); + + let finalLines = []; + let finalPlaylists = []; + for (let i = 0; i < rawLines.length; i++) { + if (rawPlaylists[i] && rawPlaylists[i].length > 0) { + finalLines.push(rawLines[i]); + finalPlaylists.push(rawPlaylists[i]); + } + } + + const { vod_play_from, vod_play_url } = buildVodPlayData(finalLines, finalPlaylists, true); + + const vod = { + vod_id: videoId, + vod_name, + vod_pic, + vod_actor, + vod_remarks, + vod_content, + vod_play_from, + vod_play_url + }; + + return JSON.stringify({ list: [vod] }); + } catch (error) { + console.error(`解析详情页异常 [ID: ${id}]:`, error); + return JSON.stringify({ list: [] }); + } +} + +function buildVodPlayData(lines, playlists, shouldReverse = true) { + const processedPlaylists = playlists.map(eps => { + if (shouldReverse) { + eps.reverse(); + } + return eps.join('#'); + }); + return { + vod_play_from: lines.filter(Boolean).join('$$$'), + vod_play_url: processedPlaylists.join('$$$') + }; +} + +function isDirectUrl(url) { + return url.startsWith('http') || url.endsWith(".m3u8") || url.endsWith(".mp4"); +} + +function getPlayFrom(html) { + const match = html.match(/var\s+player_aaaa[\s\S]*?"from"\s*:\s*"([^"]+)"/); + return match ? match[1].replace(/\\/g, '') : ''; +} + +function getPlayUrl(html) { + const match = html.match(/var\s+player_aaaa[\s\S]*?"url"\s*:\s*"([^"]+)"/); + let url = match ? match[1] : ''; + url = url.replace(/\\/g, ''); + return url; +} + +async function parsePlayUrl(parseApi, rawUrl) { + try { + const html = (await req(`${parseApi}${rawUrl}`, { + method: 'GET', + headers: Headers + })).content; + const $ = cheerio.load(html); + const token = $('#player-data').attr('data-te'); + if (!token) { + const urlMatch = html.match(/"url"\s*:\s*"([^"]+)"/); + if (urlMatch) { + return urlMatch[1].replace(/\\/g, ''); + } + return ''; + } + let playData = (await req(`${parseApi.replace('?url=', '')}/mplayer.php`, { + method: 'POST', + headers: { + 'Content-Type': 'application/x-www-form-urlencoded', + }, + data: { + url: rawUrl, + token: token, + } + })).content; + playData = JSON.parse(playData); + return playData.url || ''; + } catch (e) { + console.error("解析播放地址失败:", e.message); + return ""; + } +} + +function needParse(from) { + const parseLines = ['JD4K', 'YYNB', 'JD2K', 'qiyi', 'bilibili', 'qq', 'youku']; + return parseLines.indexOf(from) !== -1; +} + +function getParseApi(from) { + if (from === 'JD4K' || from === 'JD2K') { + return parseApi4k; + } + return parseApi2k; +} + +async function play(flag, id, flags) { + try { + const html = (await req(`${appConfig.siteUrl}${id}`)).content; + const url = getPlayUrl(html); + const from = getPlayFrom(html); + + if (isDirectUrl(url)) { + return JSON.stringify({ + parse: 0, + Header: { + "User-Agent": UA + }, + url, + }); + } + + if (needParse(from) && url) { + const parseApi = getParseApi(from); + const realUrl = await parsePlayUrl(parseApi, url); + if (realUrl) { + return JSON.stringify({ + parse: 0, + Header: { + "User-Agent": UA, + "Referer": parseApi + }, + url: realUrl + }); + } + } + + return JSON.stringify({ + parse: 0, + Header: { + "User-Agent": UA + }, + url: url + }); + } catch (e) { + console.error("播放失败:", e); + return JSON.stringify({ parse: 0, url: "" }); + } +} + +export default { + init, + home, + category, + detail, + search, + play +}; diff --git a/Ye-11X115490_PsyDuck4k/ʕ•͈⚇•͈ʔ b/Ye-11X115490_PsyDuck4k/ʕ•͈⚇•͈ʔ new file mode 100644 index 00000000..3eac43d5 --- /dev/null +++ b/Ye-11X115490_PsyDuck4k/ʕ•͈⚇•͈ʔ @@ -0,0 +1,279 @@ +{ + "sites": [ + { + "key": "枫叶", + "name": "枫叶影院", + "type": 3, + "api": "https://gitee.com/Ye-11X115490/PsyDuck/raw/master/lib/枫叶.js", + "searchable": 1, + "quickSearch": 1, + "filterable": 1, + "changeable": 1, + "playable": 1 + }, + { + "key": "追光", + "name": "追光影视", + "type": 4, + "api": "http://8.134.205.252:39466/shenma/zg.php", + "searchable": 1, + "quickSearch": 1, + "filterable": 1 + }, + { + "key": "CO4K", + "name": "C O 影视", + "type": 4, + "api": "http://8.134.205.252:39466/pz/co4k.php/api.php/provide/vod/?ac=list", + "searchable": 1, + "quickSearch": 1, + "filterable": 1 + }, + { + "key": "歪比巴卜", + "name": "歪比巴卜", + "type": 3, + "changeable": 0, + "api": "https://gitee.com/Ye-11X115490/PsyDuck/raw/master/lib/歪比巴卜.js", + "searchable": 1, + "quickSearch": 1, + "filterable": 1 + }, + {"key":"咕噜","name":"咕噜咕噜","type":4,"api":"http://211.101.247.26:99/proxy.php?code=9999&target=f5eb11c746869fd90c06","searchable":1,"quickSearch":1,"filterable":1,"changeable":0,"ext":""}, + { + "key": "布布", + "name": "布布影视", + "type": 3, + "api": "https://gitee.com/Ye-11X115490/PsyDuck/raw/master/lib/布布影视.js" + }, + { + "key": "腾讯", + "name": "腾讯视频", + "type": 3, + "jar": "http://125.208.22.184:6019/uploads/tvbox/jar/xywp.jar;md5;8ad5c036e8ab4df4f3873780c586e7c1", + "api": "csp_Tencent", + "ext": "/ZE6FY7TFUnOGwjVo+fPIyHKqEMai+KWYLN9iLjSSSh4S0FKDSvRwwG8mr+TGYcPbokCBkpT7Mke6Tf4wJ41mg==", + "searchable": 1, + "quickSearch": 1, + "filterable": 1 + }, + { + "key": "芒果", + "name": "芒果视频", + "type": 3, + "jar": "http://125.208.22.184:6019/uploads/tvbox/jar/xywp.jar;md5;8ad5c036e8ab4df4f3873780c586e7c1", + "api": "csp_Mango", + "ext": "/ZE6FY7TFUnOGwjVo+fPI5QppjJcram+LYJBroPBjA3nbrRjT1GVNGOxBDpHR4wkiZ0fAyB4s01lJYdFHOZtGA==", + "searchable": 1, + "quickSearch": 1, + "filterable": 1 + }, +{"key":"bili","name":"哔哩哔哩","type":4,"api":"http://211.101.247.26:99/proxy.php?code=9999&target=f064a77443204ab4568d","searchable":1,"quickSearch":1,"changeable":0}, + { + "key": "爱奇艺", + "name": "奇艺视频", + "type": 3, + "searchable": 1, + "quickSearch": 1, + "changeable": 1, + "api": "https://gitee.com/monosodium-glutamate/wjwj/raw/master/lib/drpy2.min.js", + "ext": "https://gitee.com/Ye-11X115490/PsyDuck/raw/master/lib/爱奇艺.js" + }, + { + "key": "优酷", + "name": "优酷视频", + "type": 3, + "searchable": 1, + "quickSearch": 1, + "changeable": 1, + "api": "https://gitee.com/monosodium-glutamate/wjwj/raw/master/lib/drpy2.min.js", + "ext": "https://gitee.com/Ye-11X115490/PsyDuck/raw/master/lib/优酷视频.js" + }, + { + "key": "山楂影视", + "name": "山楂影视", + "type": 3, + "api": "https://gitee.com/Ye-11X115490/PsyDuck/raw/master/lib/山楂影视.py", + "searchable": 1, + "quickSearch": 1, + "filterable": 1 + }, + { + "key": "虫虫", + "name": "虫虫影视", + "type": 3, + "api": "https://gitee.com/Ye-11X115490/PsyDuck/raw/master/lib/虫虫影视.js", + "searchable": 1, + "quickSearch": 1, + "filterable": 1 + }, + { + "key": "星空", + "name": "星空影视", + "type": 3, + "jar": "https://gitee.com/Ye-11X115490/PsyDuck/raw/master/lib/潇洒.jar", + "searchable": 1, + "changeable": 1, + "api": "csp_AppGet", + "ext": { + "url": "http://23.148.228.37:6090", + "dataKey": "106jkcdnkldzckjk", + "dataIv": "106jkcdnkldzckjk" + } + }, + { + "key": "四叶草", + "name": "叶草影视", + "type": 3, + "api": "https://gitee.com/Ye-11X115490/PsyDuck/raw/master/lib/PsyDuck-Qiji.py", + "searchable": 1, + "changeable": 1, + "ext": { + "site": "https://yzysap.oss-cn-hangzhou.aliyuncs.com/kkk.txt", + "dataKey": "8eeObuwrmS3lRDEs", + "dataIv": "8eeObuwrmS3lRDEs", + "ua": "okhttp/3.10.0", + "api": 2 + } + }, + { + "key": "秒看", + "name": "秒看视频", + "type": 3, + "api": "https://10402.kstore.vip/ycsk/qf.py", + "ext": { + "site": "https://mk1080.top", + "dataKey": "c60d88b2eep53za8", + "dataIv": "c60d88b2eep53za8", + "token": "b008fad37a80ead49addf97984b154387fddd3fe42a81a79671281b6082bcd80", + "ua": "okhttp/3.14.9" + } + }, + { + "key": "魔方", + "name": "魔方视频", + "type": 3, + "jar": "https://gitee.com/Ye-11X115490/PsyDuck/raw/master/lib/潇洒.jar", + "searchable": 1, + "changeable": 1, + "api": "csp_AppGet", + "ext": { + "url": "https://www.alibaba31casaq.top", + "dataKey": "1234567887654321", + "dataIv": "1234567887654321" + } + }, + { + "key": "快映", + "name": "快映视频", + "type": 3, + "changeable": 0, + "api": "https://gitee.com/Ye-11X115490/PsyDuck/raw/master/lib/AppFox.js", + "ext": { + "host": "https://www.kanzurm65ak.top/", + "ver": 3 + } + }, + { + "key": "hohai", + "name": " E M B Y ", + "type": 4, + "api": "http://8.134.205.252:39466/mmcb/zc1.php/api.php/provide/vod/?ac=list", + "searchable": 1, + "quickSearch": 1, + "filterable": 1 + }, + {"key":"wanou_sites","name":"网盘聚合","type":4,"api":"http://211.101.247.26:99/proxy.php?code=9999&target=5657e709a4c79e8b5e4b","searchable":1,"quickSearch":1,"filterable":1}, + { + "key": "mihdr", + "name": "小米网盘", + "type": 3, + "jar": "https://gitee.com/Ye-11X115490/PsyDuck/raw/master/lib/PsyDuck-wp.jar", + "api": "csp_ZC4K", + "ext": "YUhSMGNEb3ZMekUyTUM0eU1ESXVNak00TGpNNU9qTTNNekU1TDJGd2FTNXdhSEEvYzJsMFpUMXRhV2hrY2lNakkyMXBhR1J5" + }, + { + "key": "ouge", + "name": "讴歌网盘", + "type": 3, + "jar": "https://gitee.com/Ye-11X115490/PsyDuck/raw/master/lib/PsyDuck-wp.jar", + "api": "csp_ZC4K", + "ext": "YUhSMGNEb3ZMekUyTUM0eU1ESXVNak00TGpNNU9qTTNNekU1TDJGd2FTNXdhSEEvYzJsMFpUMXZkV2RsSXlNamIzVm5aUT09" + }, + { + "key": "mogg", + "name": "木偶网盘", + "type": 3, + "jar": "https://gitee.com/Ye-11X115490/PsyDuck/raw/master/lib/PsyDuck-wp.jar", + "api": "csp_ZC4K", + "ext": "YUhSMGNEb3ZMekUyTUM0eU1ESXVNak00TGpNNU9qTTNNekU1TDJGd2FTNXdhSEEvYzJsMFpUMXRiMmRuSXlNamJXOW5adz09" + }, + { + "key": "wogg", + "name": "玩偶网盘", + "type": 3, + "jar": "https://gitee.com/Ye-11X115490/PsyDuck/raw/master/lib/PsyDuck-wp.jar", + "api": "csp_ZC4K", + "ext": "YUhSMGNEb3ZMekUyTUM0eU1ESXVNak00TGpNNU9qTTNNekU1TDJGd2FTNXdhSEEvYzJsMFpUMTNiMmRuSXlNamQyOW5adz09" + }, + { + "key": "huban", + "name": "虎斑网盘", + "type": 3, + "jar": "https://gitee.com/Ye-11X115490/PsyDuck/raw/master/lib/PsyDuck-wp.jar", + "api": "csp_ZC4K", + "ext": "YUhSMGNEb3ZMekUyTUM0eU1ESXVNak00TGpNNU9qTTNNekU1TDJGd2FTNXdhSEEvYzJsMFpUMW9kV0poYmlNakkyaDFZbUZ1" + }, + { + "key": "erxiao", + "name": "小二网盘", + "type": 3, + "jar": "https://gitee.com/Ye-11X115490/PsyDuck/raw/master/lib/PsyDuck-wp.jar", + "api": "csp_ZC4K", + "ext": "YUhSMGNEb3ZMekUyTUM0eU1ESXVNak00TGpNNU9qTTNNekU1TDJGd2FTNXdhSEEvYzJsMFpUMWxjbmhwWVc4akl5TmxjbmhwWVc4PQ==" + } + ], + "parses": [ + { + "name": "4K", + "type": 1, + "url": "http://8.134.205.252:39466/ceshi/cs.php?key=udk&url=", + "ext": { + "flag": [ + "1080P+", + "超清4K", + "qiyi", + "爱奇艺", + "奇艺", + "youku", + "优酷", + "mgtv", + "芒果", + "bilibili" + ] + } + }, + { + "name": "网盘", + "type": 1, + "url": "http://8.134.205.252:39466/ceshi/ss.php?key=ysj&url=", + "ext": { + "flag": [ + "baidu", + "baidu2", + "abaidu", + "a123", + "a189", + "a115", + "ali", + "臻彩", + "臻彩2", + "原彩", + "真彩", + "清秋", + "明月" + ] + } + } + ] +} \ No newline at end of file diff --git a/cluntop_tvbox/lib/iptv.m3u b/cluntop_tvbox/lib/iptv.m3u index 95d001b9..3dcddabb 100755 --- a/cluntop_tvbox/lib/iptv.m3u +++ b/cluntop_tvbox/lib/iptv.m3u @@ -1,6 +1,6 @@ #EXTM3U #EXTINF:-1 tvg-id="东方卫视4K" tvg-name="东方卫视4K" group-title="4K",东方卫视4K -http://bp-resource-dfl.bestv.cn/148/3/video.m3u8$LR•IPV4•2『线路1』 +https://bp-resource-dfl.bestv.cn/148/3/video.m3u8$LR•IPV4•2『线路1』 #EXTINF:-1 tvg-id="东方卫视4K" tvg-name="东方卫视4K" group-title="4K",东方卫视4K http://43.251.226.89:8080/play/926.m3u8$LR•IPV4•2『线路2』 #EXTINF:-1 tvg-id="湖南卫视4K" tvg-name="湖南卫视4K" group-title="4K",湖南卫视4K @@ -62,17 +62,19 @@ http://101.35.240.114:88/live.php?id=北京卫视$LR•IPV4•5『线路4』 #EXTINF:-1 tvg-id="北京卫视4K" tvg-name="北京卫视4K" group-title="4K",北京卫视4K http://106.53.99.30/tv/api.php?id=bjws4k$LR•IPV4•5『线路5』 #EXTINF:-1 tvg-id="CCTV4K" tvg-name="CCTV4K" group-title="4K",CCTV4K -http://101.43.145.141:12002/gaoma/cctv4k.m3u8$LR•IPV4•6『线路1』 +http://vip1.xinketongxun.fun:8082/tsfile/live/1026_1.m3u8$LR•IPV4•7『线路1』 #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=1784329200-1-b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c-81ad4aefc95ce528b3da1112f0bc9ff2&yid=b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c$LR•IPV4•6『线路2』 +http://101.43.145.141:12002/gaoma/cctv4k.m3u8$LR•IPV4•7『线路2』 #EXTINF:-1 tvg-id="CCTV4K" tvg-name="CCTV4K" group-title="4K",CCTV4K -https://live-play-hls.cctvnews.cctv.com/CCTVChannel/channel_cctv4k_mbd.m3u8?auth_key=1784322000-1-b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c-aa68fb06c12f53b71a4d170807f32df5&yid=b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c$LR•IPV4•6『线路3』 +https://live-play-hls.cctvnews.cctv.com/CCTVChannel/channel_cctv4k_mbd.m3u8?auth_key=1784332800-1-b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c-0240f422767495f3b4be3b54c6f0496a&yid=b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c$LR•IPV4•7『线路3』 #EXTINF:-1 tvg-id="CCTV4K" tvg-name="CCTV4K" group-title="4K",CCTV4K -http://198.204.240.250:82/live/cctv4k.m3u8$LR•IPV4•6『线路4』 +https://live-play-hls.cctvnews.cctv.com/CCTVChannel/channel_cctv4k_mbd.m3u8?auth_key=1784336400-1-b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c-c68beb1a091dd48540f9056f3e86c7c2&yid=b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c$LR•IPV4•7『线路4』 #EXTINF:-1 tvg-id="CCTV4K" tvg-name="CCTV4K" group-title="4K",CCTV4K -http://fn.tmde.top:35455/nptv/cctv4k.m3u8$LR•IPV4•6『线路5』 +http://198.204.240.250:82/live/cctv4k.m3u8$LR•IPV4•7『线路5』 #EXTINF:-1 tvg-id="CCTV4K" tvg-name="CCTV4K" group-title="4K",CCTV4K -http://xc.mfykeke.top:35455/nptv/cctv4k.m3u8$LR•IPV4•6『线路6』 +http://fn.tmde.top:35455/nptv/cctv4k.m3u8$LR•IPV4•7『线路6』 +#EXTINF:-1 tvg-id="CCTV4K" tvg-name="CCTV4K" group-title="4K",CCTV4K +http://xc.mfykeke.top:35455/nptv/cctv4k.m3u8$LR•IPV4•7『线路7』 #EXTINF:-1 tvg-id="北京纪实8K" tvg-name="北京纪实8K" group-title="8K",北京纪实8K https://gdcucc.v1.mk/gdcucc/brtv8k.m3u8$LR•IPV4•2『线路1』 #EXTINF:-1 tvg-id="北京纪实8K" tvg-name="北京纪实8K" group-title="8K",北京纪实8K @@ -144,37 +146,43 @@ http://63.141.230.178:82/gslb/zbdq5.m3u8?id=cctv3hd$LR•IPV4•12『线路11』 #EXTINF:-1 tvg-id="CCTV3" tvg-name="CCTV3" group-title="央视",CCTV3 http://207.56.13.146:81/cdnlive/cctv3.m3u8$LR•IPV4•12『线路12』 #EXTINF:-1 tvg-id="CCTV4" tvg-name="CCTV4" group-title="央视",CCTV4 -http://112.123.243.37:50085/tsfile/live/0004_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•16『线路1』 +http://112.123.243.37:50085/tsfile/live/0004_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•19『线路1』 #EXTINF:-1 tvg-id="CCTV4" tvg-name="CCTV4" group-title="央视",CCTV4 -http://222.223.41.27:8888/hls/4/index.m3u8$LR•IPV4•16『线路2』 +http://222.223.41.27:8888/hls/4/index.m3u8$LR•IPV4•19『线路2』 #EXTINF:-1 tvg-id="CCTV4" tvg-name="CCTV4" group-title="央视",CCTV4 -http://221.226.51.220:50081/newlive/live/hls/4/live.m3u8$LR•IPV4•16『线路3』 +http://221.226.51.220:50081/newlive/live/hls/4/live.m3u8$LR•IPV4•19『线路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•16『线路4』 +http://153.0.171.163:9901/tsfile/live/0004_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•19『线路4』 #EXTINF:-1 tvg-id="CCTV4" tvg-name="CCTV4" group-title="央视",CCTV4 -https://dash2.antik.sk/live/test_cctv_tizen/playlist.m3u8$LR•IPV4•16『线路5』 +http://t.061899.xyz/tl/tl.php?id=cctv4$LR•IPV4•19『线路5』 #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•16『线路6』 +http://t.061899.xyz/tl/tl.php?id=cctv4o$LR•IPV4•19『线路6』 #EXTINF:-1 tvg-id="CCTV4" tvg-name="CCTV4" group-title="央视",CCTV4 -http://112.46.105.20:8009/hls/4/index.m3u8$LR•IPV4•16『线路7』 +http://t.061899.xyz/tl/tl.php?id=cctv4m$LR•IPV4•19『线路7』 #EXTINF:-1 tvg-id="CCTV4" tvg-name="CCTV4" group-title="央视",CCTV4 -http://74.91.26.218:82/live/cctv4hd.m3u8$LR•IPV4•16『线路8』 +http://38.75.136.137:98/gslb/dsdqbv/cctv4hd.m3u8?auth=test20251009$LR•IPV4•19『线路8』 #EXTINF:-1 tvg-id="CCTV4" tvg-name="CCTV4" group-title="央视",CCTV4 -p3p://167.114.175.6:55331/61244d9c0006885d64b1b7591f6c12a0$LR•IPV4•16『线路9』 +http://112.46.105.20:8009/hls/4/index.m3u8$LR•IPV4•19『线路9』 #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=1784329200-1-b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c-2245971645866ed95972e22af68cc8d1&yid=b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c$LR•IPV4•16『线路10』 +http://74.91.26.218:82/live/cctv4hd.m3u8$LR•IPV4•19『线路10』 #EXTINF:-1 tvg-id="CCTV4" tvg-name="CCTV4" group-title="央视",CCTV4 -https://live-play-hls.cctvnews.cctv.com/CCTVChannel/channel_cctv4_mbd.m3u8?auth_key=1784271600-1-b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c-6aec44040ec72def77e22587fc404005&yid=b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c$LR•IPV4•16『线路11』 +p3p://167.114.175.6:55331/61244d9c0006885d64b1b7591f6c12a0$LR•IPV4•19『线路11』 #EXTINF:-1 tvg-id="CCTV4" tvg-name="CCTV4" group-title="央视",CCTV4 -https://live-play-hls.cctvnews.cctv.com/CCTVChannel/channel_cctv4_mbd.m3u8?auth_key=1784322000-1-b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c-25fe408e6545f49f3d4eb7f92e97c764&yid=b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c$LR•IPV4•16『线路12』 +https://live-play-hls.cctvnews.cctv.com/CCTVChannel/channel_cctv4_mbd.m3u8?auth_key=1784332800-1-b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c-1f6c18588a391e749b10db985cd21620&yid=b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c$LR•IPV4•19『线路12』 #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•16『线路13』 +https://live-play-hls.cctvnews.cctv.com/CCTVChannel/channel_cctv4_mbd.m3u8?auth_key=1784336400-1-b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c-49830e80d2c0d40fea8492a5581b9b73&yid=b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c$LR•IPV4•19『线路13』 #EXTINF:-1 tvg-id="CCTV4" tvg-name="CCTV4" group-title="央视",CCTV4 -http://63.141.230.178:82/gslb/zbdq5.m3u8?id=cctv4hd$LR•IPV4•16『线路14』 +https://live-play-hls.cctvnews.cctv.com/CCTVChannel/channel_cctv4_mbd.m3u8?auth_key=1784271600-1-b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c-6aec44040ec72def77e22587fc404005&yid=b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c$LR•IPV4•19『线路14』 #EXTINF:-1 tvg-id="CCTV4" tvg-name="CCTV4" group-title="央视",CCTV4 -http://207.56.13.146:81/cdnlive/cctv4.m3u8$LR•IPV4•16『线路15』 +http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226335/1.m3u8?$LR•IPV6•19『线路15』 #EXTINF:-1 tvg-id="CCTV4" tvg-name="CCTV4" group-title="央视",CCTV4 -https://global.cgtn.cicc.media.caton.cloud/master/cgtn-america.m3u8$LR•IPV4•16『线路16』 +http://63.141.230.178:82/gslb/zbdq5.m3u8?id=cctv4hd$LR•IPV4•19『线路16』 +#EXTINF:-1 tvg-id="CCTV4" tvg-name="CCTV4" group-title="央视",CCTV4 +http://207.56.13.146:81/cdnlive/cctv4.m3u8$LR•IPV4•19『线路17』 +#EXTINF:-1 tvg-id="CCTV4" tvg-name="CCTV4" group-title="央视",CCTV4 +https://global.cgtn.cicc.media.caton.cloud/master/cgtn-america.m3u8$LR•IPV4•19『线路18』 +#EXTINF:-1 tvg-id="CCTV4" tvg-name="CCTV4" group-title="央视",CCTV4 +https://dash2.antik.sk/live/test_cctv_tizen/playlist.m3u8$LR•IPV4•19『线路19』 #EXTINF:-1 tvg-id="CCTV5" tvg-name="CCTV5" group-title="央视",CCTV5 http://222.223.41.27:8888/hls/5/index.m3u8$LR•IPV4•14『线路1』 #EXTINF:-1 tvg-id="CCTV5" tvg-name="CCTV5" group-title="央视",CCTV5 @@ -182,7 +190,7 @@ http://183.223.157.33:9901/tsfile/live/0005_1.m3u8?key=txiptv&playlive=1&authid= #EXTINF:-1 tvg-id="CCTV5" tvg-name="CCTV5" group-title="央视",CCTV5 http://221.226.51.220:50081/newlive/live/hls/5/live.m3u8$LR•IPV4•14『线路3』 #EXTINF:-1 tvg-id="CCTV5" tvg-name="CCTV5" group-title="央视",CCTV5 -http://112.27.235.94:8000/hls/5/index.m3u8$LR•IPV4•14『线路4』 +http://t.061899.xyz/tl/tl.php?id=cctv5$LR•IPV4•14『线路4』 #EXTINF:-1 tvg-id="CCTV5" tvg-name="CCTV5" group-title="央视",CCTV5 http://101.66.199.247:9901/tsfile/live/0005_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•14『线路5』 #EXTINF:-1 tvg-id="CCTV5" tvg-name="CCTV5" group-title="央视",CCTV5 @@ -196,7 +204,7 @@ 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://183.129.255.66:8480/hls/6/index.m3u8$LR•IPV4•14『线路10』 #EXTINF:-1 tvg-id="CCTV5" tvg-name="CCTV5" group-title="央视",CCTV5 -http://112.27.235.94:8000/hls/6/index.m3u8$LR•IPV4•14『线路11』 +http://t.061899.xyz/tl/tl.php?id=cctv5p$LR•IPV4•14『线路11』 #EXTINF:-1 tvg-id="CCTV5" tvg-name="CCTV5" group-title="央视",CCTV5 http://112.123.243.37:50085/tsfile/live/0006_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•14『线路12』 #EXTINF:-1 tvg-id="CCTV5" tvg-name="CCTV5" group-title="央视",CCTV5 @@ -214,7 +222,7 @@ http://38.75.136.137:98/gslb/dsdqbv/cctv6hd.m3u8?auth=test20251009$LR•IPV4•1 #EXTINF:-1 tvg-id="CCTV6" tvg-name="CCTV6" group-title="央视",CCTV6 http://221.226.51.220:50081/newlive/live/hls/6/live.m3u8$LR•IPV4•13『线路5』 #EXTINF:-1 tvg-id="CCTV6" tvg-name="CCTV6" group-title="央视",CCTV6 -http://112.27.235.94:8000/hls/7/index.m3u8$LR•IPV4•13『线路6』 +http://t.061899.xyz/tl/tl.php?id=cctv6$LR•IPV4•13『线路6』 #EXTINF:-1 tvg-id="CCTV6" tvg-name="CCTV6" group-title="央视",CCTV6 http://112.46.105.20:8009/hls/6/index.m3u8$LR•IPV4•13『线路7』 #EXTINF:-1 tvg-id="CCTV6" tvg-name="CCTV6" group-title="央视",CCTV6 @@ -240,7 +248,7 @@ http://183.129.255.66:8480/hls/8/index.m3u8$LR•IPV4•10『线路4』 #EXTINF:-1 tvg-id="CCTV7" tvg-name="CCTV7" group-title="央视",CCTV7 http://153.0.171.163:9901/tsfile/live/0007_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•10『线路5』 #EXTINF:-1 tvg-id="CCTV7" tvg-name="CCTV7" group-title="央视",CCTV7 -http://112.27.235.94:8000/hls/8/index.m3u8$LR•IPV4•10『线路6』 +http://t.061899.xyz/tl/tl.php?id=cctv7$LR•IPV4•10『线路6』 #EXTINF:-1 tvg-id="CCTV7" tvg-name="CCTV7" group-title="央视",CCTV7 http://38.75.136.137:98/gslb/dsdqbv/cctv7hd.m3u8?auth=test20251009$LR•IPV4•10『线路7』 #EXTINF:-1 tvg-id="CCTV7" tvg-name="CCTV7" group-title="央视",CCTV7 @@ -266,7 +274,7 @@ http://120.198.95.220:9901/tsfile/live/1023_1.m3u8?key=txiptv&playlive=1&down=1$ #EXTINF:-1 tvg-id="CCTV8" tvg-name="CCTV8" group-title="央视",CCTV8 https://ldocctvwbcdtxy.liveplay.myqcloud.com/ldocctvwbcd/cdrmldcctv8_1_hd.m3u8$LR•IPV4•19『线路8』 #EXTINF:-1 tvg-id="CCTV8" tvg-name="CCTV8" group-title="央视",CCTV8 -http://112.27.235.94:8000/hls/9/index.m3u8$LR•IPV4•19『线路9』 +http://t.061899.xyz/tl/tl.php?id=cctv8$LR•IPV4•19『线路9』 #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•19『线路10』 #EXTINF:-1 tvg-id="CCTV8" tvg-name="CCTV8" group-title="央视",CCTV8 @@ -302,9 +310,9 @@ http://112.46.105.20:8009/hls/509/index.m3u8$LR•IPV4•12『线路6』 #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•12『线路7』 #EXTINF:-1 tvg-id="CCTV9" tvg-name="CCTV9" group-title="央视",CCTV9 -https://v4-e6b1c5baf4e240fe63adbf68dda23435.livehwc4.com/play.kankanlive.com/live/1698423397390920.m3u8?sub_m3u8=true&edge_slice=true&user_session_id=8a921813ee3b23c82763145c9f291a3b$LR•IPV4•12『线路8』 +https://v4-702cae17a28d6e4f0c0002bba021d934.livehwc4.com/play.kankanlive.com/live/1698423397390920.m3u8?sub_m3u8=true&edge_slice=true&user_session_id=7b0844b76d8c951adb5f87864280aa1c$LR•IPV4•12『线路8』 #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=f3fb3ddaca05941087114cf6481e1c23$LR•IPV4•12『线路9』 +https://v4-e6b1c5baf4e240fe63adbf68dda23435.livehwc4.com/play.kankanlive.com/live/1698423397390920.m3u8?sub_m3u8=true&edge_slice=true&user_session_id=1c7b8d97d045399d92a9b9016e62d86b$LR•IPV4•12『线路9』 #EXTINF:-1 tvg-id="CCTV9" tvg-name="CCTV9" group-title="央视",CCTV9 http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226944/1.m3u8?$LR•IPV6•12『线路10』 #EXTINF:-1 tvg-id="CCTV9" tvg-name="CCTV9" group-title="央视",CCTV9 @@ -312,27 +320,25 @@ http://222.223.41.27:8888/hls/9/index.m3u8$LR•IPV4•12『线路11』 #EXTINF:-1 tvg-id="CCTV9" tvg-name="CCTV9" group-title="央视",CCTV9 https://xykt-fix.github.io/Y77.m3u8$LR•IPV4•12『线路12』 #EXTINF:-1 tvg-id="CCTV10" tvg-name="CCTV10" group-title="央视",CCTV10 -http://222.223.41.27:8888/hls/10/index.m3u8$LR•IPV4•11『线路1』 +http://222.223.41.27:8888/hls/10/index.m3u8$LR•IPV4•10『线路1』 #EXTINF:-1 tvg-id="CCTV10" tvg-name="CCTV10" group-title="央视",CCTV10 -http://183.129.255.66:8480/hls/11/index.m3u8$LR•IPV4•11『线路2』 +http://183.129.255.66:8480/hls/11/index.m3u8$LR•IPV4•10『线路2』 #EXTINF:-1 tvg-id="CCTV10" tvg-name="CCTV10" group-title="央视",CCTV10 -http://107.150.60.122/live/cctv10hd.m3u8$LR•IPV4•11『线路3』 +http://107.150.60.122/live/cctv10hd.m3u8$LR•IPV4•10『线路3』 #EXTINF:-1 tvg-id="CCTV10" tvg-name="CCTV10" group-title="央视",CCTV10 -http://153.0.171.163:9901/tsfile/live/1009_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•11『线路4』 +http://153.0.171.163:9901/tsfile/live/1009_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•10『线路4』 #EXTINF:-1 tvg-id="CCTV10" tvg-name="CCTV10" group-title="央视",CCTV10 -http://112.27.235.94:8000/hls/11/index.m3u8$LR•IPV4•11『线路5』 +http://t.061899.xyz/tl/tl.php?id=cctv10$LR•IPV4•10『线路5』 #EXTINF:-1 tvg-id="CCTV10" tvg-name="CCTV10" group-title="央视",CCTV10 -http://38.75.136.137:98/gslb/dsdqbv/cctv10hd.m3u8?auth=test20251009$LR•IPV4•11『线路6』 +http://38.75.136.137:98/gslb/dsdqbv/cctv10hd.m3u8?auth=test20251009$LR•IPV4•10『线路6』 #EXTINF:-1 tvg-id="CCTV10" tvg-name="CCTV10" group-title="央视",CCTV10 -http://112.46.105.20:8009/hls/506/index.m3u8$LR•IPV4•11『线路7』 +http://112.46.105.20:8009/hls/506/index.m3u8$LR•IPV4•10『线路7』 #EXTINF:-1 tvg-id="CCTV10" tvg-name="CCTV10" group-title="央视",CCTV10 -http://74.91.26.218:82/live/cctv10hd.m3u8$LR•IPV4•11『线路8』 +http://74.91.26.218:82/live/cctv10hd.m3u8$LR•IPV4•10『线路8』 #EXTINF:-1 tvg-id="CCTV10" tvg-name="CCTV10" group-title="央视",CCTV10 -https://jsv-live-play.sfccn.com/live/jsv_3920_fhd.m3u8$LR•IPV4•11『线路9』 +http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226937/1.m3u8?$LR•IPV6•10『线路9』 #EXTINF:-1 tvg-id="CCTV10" tvg-name="CCTV10" group-title="央视",CCTV10 -http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226937/1.m3u8?$LR•IPV6•11『线路10』 -#EXTINF:-1 tvg-id="CCTV10" tvg-name="CCTV10" group-title="央视",CCTV10 -https://hwapi.yntv.net/ew265l/z1z6s5.m3u8$LR•IPV4•11『线路11』 +https://hwapi.yntv.net/ew265l/z1z6s5.m3u8$LR•IPV4•10『线路10』 #EXTINF:-1 tvg-id="CCTV11" tvg-name="CCTV11" group-title="央视",CCTV11 http://183.129.255.66:8480/hls/12/index.m3u8$LR•IPV4•8『线路1』 #EXTINF:-1 tvg-id="CCTV11" tvg-name="CCTV11" group-title="央视",CCTV11 @@ -340,15 +346,15 @@ http://cd-live-stream.news.cctvplus.com/live/smil:CHANNEL1.smil/chunklist_w74403 #EXTINF:-1 tvg-id="CCTV11" tvg-name="CCTV11" group-title="央视",CCTV11 http://153.0.171.163:9901/tsfile/live/1010_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•8『线路3』 #EXTINF:-1 tvg-id="CCTV11" tvg-name="CCTV11" group-title="央视",CCTV11 -http://112.27.235.94:8000/hls/12/index.m3u8$LR•IPV4•8『线路4』 +http://t.061899.xyz/tl/tl.php?id=cctv11$LR•IPV4•8『线路4』 #EXTINF:-1 tvg-id="CCTV11" tvg-name="CCTV11" group-title="央视",CCTV11 http://38.75.136.137:98/gslb/dsdqbv/cctv11hd.m3u8?auth=test20251009$LR•IPV4•8『线路5』 #EXTINF:-1 tvg-id="CCTV11" tvg-name="CCTV11" group-title="央视",CCTV11 http://74.91.26.218:82/live/cctv11hd.m3u8$LR•IPV4•8『线路6』 #EXTINF:-1 tvg-id="CCTV11" tvg-name="CCTV11" group-title="央视",CCTV11 -http://183.196.25.171:808/hls/11/index.m3u8$LR•IPV4•8『线路7』 +http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226334/1.m3u8?$LR•IPV6•8『线路7』 #EXTINF:-1 tvg-id="CCTV11" tvg-name="CCTV11" group-title="央视",CCTV11 -http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226334/1.m3u8?$LR•IPV6•8『线路8』 +http://183.196.25.171:808/hls/11/index.m3u8$LR•IPV4•8『线路8』 #EXTINF:-1 tvg-id="CCTV12" tvg-name="CCTV12" group-title="央视",CCTV12 http://112.123.243.37:50085/tsfile/live/0013_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•9『线路1』 #EXTINF:-1 tvg-id="CCTV12" tvg-name="CCTV12" group-title="央视",CCTV12 @@ -380,7 +386,7 @@ http://38.75.136.137:98/gslb/dsdqbv/cctv13hd.m3u8?auth=test20251009$LR•IPV4• #EXTINF:-1 tvg-id="CCTV13" tvg-name="CCTV13" group-title="央视",CCTV13 http://153.0.171.163:9901/tsfile/live/1012_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•15『线路6』 #EXTINF:-1 tvg-id="CCTV13" tvg-name="CCTV13" group-title="央视",CCTV13 -http://112.27.235.94:8000/hls/14/index.m3u8$LR•IPV4•15『线路7』 +http://t.061899.xyz/tl/tl.php?id=cctv13$LR•IPV4•15『线路7』 #EXTINF:-1 tvg-id="CCTV13" tvg-name="CCTV13" group-title="央视",CCTV13 http://74.91.26.218:82/live/cctv13hd.m3u8$LR•IPV4•15『线路8』 #EXTINF:-1 tvg-id="CCTV13" tvg-name="CCTV13" group-title="央视",CCTV13 @@ -406,7 +412,7 @@ http://183.129.255.66:8480/hls/15/index.m3u8$LR•IPV4•9『线路3』 #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•9『线路4』 #EXTINF:-1 tvg-id="CCTV14" tvg-name="CCTV14" group-title="央视",CCTV14 -http://112.27.235.94:8000/hls/15/index.m3u8$LR•IPV4•9『线路5』 +http://t.061899.xyz/tl/tl.php?id=cctv14$LR•IPV4•9『线路5』 #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•9『线路6』 #EXTINF:-1 tvg-id="CCTV14" tvg-name="CCTV14" group-title="央视",CCTV14 @@ -428,7 +434,7 @@ http://204.12.221.218:8181/3m1080p/cctv15.m3u8$LR•IPV4•11『线路5』 #EXTINF:-1 tvg-id="CCTV15" tvg-name="CCTV15" group-title="央视",CCTV15 http://153.0.171.163:9901/tsfile/live/1014_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•11『线路6』 #EXTINF:-1 tvg-id="CCTV15" tvg-name="CCTV15" group-title="央视",CCTV15 -http://112.27.235.94:8000/hls/16/index.m3u8$LR•IPV4•11『线路7』 +http://t.061899.xyz/tl/tl.php?id=cctv15$LR•IPV4•11『线路7』 #EXTINF:-1 tvg-id="CCTV15" tvg-name="CCTV15" group-title="央视",CCTV15 http://38.75.136.137:98/gslb/dsdqbv/cctv15hd.m3u8?auth=test20251009$LR•IPV4•11『线路8』 #EXTINF:-1 tvg-id="CCTV15" tvg-name="CCTV15" group-title="央视",CCTV15 @@ -438,7 +444,7 @@ http://38.75.136.137:98/gslb/dsdqpub/cctv15hd.m3u8?auth=testpub$LR•IPV4•11 #EXTINF:-1 tvg-id="CCTV15" tvg-name="CCTV15" group-title="央视",CCTV15 https://xykt-fix.github.io/play/a02e/index.m3u8$LR•IPV4•11『线路11』 #EXTINF:-1 tvg-id="CCTV16" tvg-name="CCTV16" group-title="央视",CCTV16 -http://drive.mxmy.net:8888/udp/239.3.1.184:8001$LR•IPV4•4『线路1』 +http://t.061899.xyz/tl/tl.php?id=cctv16$LR•IPV4•4『线路1』 #EXTINF:-1 tvg-id="CCTV16" tvg-name="CCTV16" group-title="央视",CCTV16 http://38.75.136.137:98/gslb/dsdqbv/cctv16hd.m3u8?auth=test20251009$LR•IPV4•4『线路2』 #EXTINF:-1 tvg-id="CCTV16" tvg-name="CCTV16" group-title="央视",CCTV16 @@ -452,17 +458,17 @@ http://107.150.60.122/live/cctv17hd.m3u8$LR•IPV4•9『线路2』 #EXTINF:-1 tvg-id="CCTV17" tvg-name="CCTV17" group-title="央视",CCTV17 http://59.39.89.130:60901/tsfile/live/0017_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•9『线路3』 #EXTINF:-1 tvg-id="CCTV17" tvg-name="CCTV17" group-title="央视",CCTV17 -http://123.130.84.106:8154/tsfile/live/0019_1.m3u8$LR•IPV4•9『线路4』 +http://t.061899.xyz/tl/tl.php?id=cctv17$LR•IPV4•9『线路4』 #EXTINF:-1 tvg-id="CCTV17" tvg-name="CCTV17" group-title="央视",CCTV17 http://38.75.136.137:98/gslb/dsdqbv/cctv17hd.m3u8?auth=test20251009$LR•IPV4•9『线路5』 #EXTINF:-1 tvg-id="CCTV17" tvg-name="CCTV17" group-title="央视",CCTV17 http://74.91.26.218:82/live/cctv17hd.m3u8$LR•IPV4•9『线路6』 #EXTINF:-1 tvg-id="CCTV17" tvg-name="CCTV17" group-title="央视",CCTV17 -http://183.196.25.171:808/hls/93/index.m3u8$LR•IPV4•9『线路7』 +http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226318/1.m3u8?$LR•IPV6•9『线路7』 #EXTINF:-1 tvg-id="CCTV17" tvg-name="CCTV17" group-title="央视",CCTV17 -http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226318/1.m3u8?$LR•IPV6•9『线路8』 +http://38.75.136.137:98/gslb/dsdqpub/cctv17hd.m3u8?auth=testpub$LR•IPV4•9『线路8』 #EXTINF:-1 tvg-id="CCTV17" tvg-name="CCTV17" group-title="央视",CCTV17 -http://38.75.136.137:98/gslb/dsdqpub/cctv17hd.m3u8?auth=testpub$LR•IPV4•9『线路9』 +http://183.196.25.171:808/hls/93/index.m3u8$LR•IPV4•9『线路9』 #EXTINF:-1 tvg-id="CCTV第一剧场" tvg-name="CCTV第一剧场" group-title="央视",CCTV第一剧场 http://38.75.136.137:98/gslb/dsdqpub/dyjc.m3u8?auth=testpub$LR•IPV4 #EXTINF:-1 tvg-id="CCTV怀旧剧场" tvg-name="CCTV怀旧剧场" group-title="央视",CCTV怀旧剧场 @@ -592,7 +598,7 @@ http://171.213.140.54:8123/udp/239.93.1.10:2193$LR•IPV4•7『线路6』 #EXTINF:-1 tvg-id="星空卫视" tvg-name="星空卫视" group-title="卫视",星空卫视 https://stream1.freetv.fun/xing-kong-wei-shi-4.ctv$LR•IPV4•7『线路7』 #EXTINF:-1 tvg-id="湖南卫视" tvg-name="湖南卫视" group-title="卫视",湖南卫视 -http://120.196.232.43:8088/rrs03.hw.gmcc.net/PLTV/651/224/3221226698/1.m3u8$LR•IPV4•16『线路1』 +http://t.061899.xyz/tl/tl.php?id=hunws$LR•IPV4•16『线路1』 #EXTINF:-1 tvg-id="湖南卫视" tvg-name="湖南卫视" group-title="卫视",湖南卫视 http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226509/1.m3u8?zoneoffset=480&servicetype=1&icpid=&limitflux=-1&limitdur=-1&tenantId=8601&accountinfo=%7E%7EV2.0%7EIGb_ib7rnBX9_sANRKq9sg%7EpK8OKM5JoJWWbLRyLfPcUMkwWZ90MzSI9S9PDltJsYzd0ZGcS3Tkh7syciNKJa-w60mDOdwtDyoNwCx9aRgzHNH9AUREV_qvNJtXHRPzYw0%7EExtInfo9bj61dxzlMXrsixrqcFYPg%3D%3D%3A20221022013542%2C915973%2C119.123.71.209%2C20221022013542%2C10000100000000050000000003873458%2C915973%2C-1%2C0%2C1%2C%2C%2C2%2C%2C%2C%2C2%2C%2C10000100000000060000000007253514_0%2CEND&GuardEncType=2$LR•IPV6•16『线路2』 #EXTINF:-1 tvg-id="湖南卫视" tvg-name="湖南卫视" group-title="卫视",湖南卫视 @@ -604,7 +610,7 @@ http://173.208.212.130:8181/720p/hnws.m3u8$LR•IPV4•16『线路5』 #EXTINF:-1 tvg-id="湖南卫视" tvg-name="湖南卫视" group-title="卫视",湖南卫视 http://153.0.171.163:9901/tsfile/live/0128_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•16『线路6』 #EXTINF:-1 tvg-id="湖南卫视" tvg-name="湖南卫视" group-title="卫视",湖南卫视 -http://112.27.235.94:8000/hls/31/index.m3u8$LR•IPV4•16『线路7』 +http://120.196.232.43:8088/rrs03.hw.gmcc.net/PLTV/651/224/3221226698/1.m3u8$LR•IPV4•16『线路7』 #EXTINF:-1 tvg-id="湖南卫视" tvg-name="湖南卫视" group-title="卫视",湖南卫视 http://38.75.136.137:98/gslb/dsdqpub/hnwshd.m3u8?auth=testpub$LR•IPV4•16『线路8』 #EXTINF:-1 tvg-id="湖南卫视" tvg-name="湖南卫视" group-title="卫视",湖南卫视 @@ -624,73 +630,71 @@ https://httop.top/ysp-湖南卫视$LR•IPV4•16『线路15』 #EXTINF:-1 tvg-id="湖南卫视" tvg-name="湖南卫视" group-title="卫视",湖南卫视 http://iptv.huuc.edu.cn/hls/hunanhd.m3u8$LR•IPV4•16『线路16』 #EXTINF:-1 tvg-id="浙江卫视" tvg-name="浙江卫视" group-title="卫视",浙江卫视 -http://zwebl02.cztv.com/live/channel01720Pnew.m3u8?auth_key=1784123883-f178167128c55cd66b7eca004ccca015-0-69f388bdaa594feb900510d687566182$LR•IPV4•17『线路1』 +http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226899/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7ETYfTgTra_pUx2cPrgZ_BDw%7EtP4-l0lmSfjwLWEfK_el1vH_mv-s1zo4AQJwdedaVwG9xkuFTDg8J26cwOrNJzn20BErrHdLhuZ9EzLUCD3PMW-OMx4MGteHV2vLeW6BqoY%2CEND$LR•IPV6•16『线路1』 #EXTINF:-1 tvg-id="浙江卫视" tvg-name="浙江卫视" group-title="卫视",浙江卫视 -http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226899/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7ETYfTgTra_pUx2cPrgZ_BDw%7EtP4-l0lmSfjwLWEfK_el1vH_mv-s1zo4AQJwdedaVwG9xkuFTDg8J26cwOrNJzn20BErrHdLhuZ9EzLUCD3PMW-OMx4MGteHV2vLeW6BqoY%2CEND$LR•IPV6•17『线路2』 +http://112.123.243.37:50085/tsfile/live/0019_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•16『线路2』 #EXTINF:-1 tvg-id="浙江卫视" tvg-name="浙江卫视" group-title="卫视",浙江卫视 -http://112.123.243.37:50085/tsfile/live/0019_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•17『线路3』 +http://ali-xwl.cztv.com/live/channel011080Plxw.m3u8$LR•IPV4•16『线路3』 #EXTINF:-1 tvg-id="浙江卫视" tvg-name="浙江卫视" group-title="卫视",浙江卫视 -http://ali-xwl.cztv.com/live/channel011080Plxw.m3u8$LR•IPV4•17『线路4』 +http://204.12.221.218:8181/3m1080p/zjws.m3u8$LR•IPV4•16『线路4』 #EXTINF:-1 tvg-id="浙江卫视" tvg-name="浙江卫视" group-title="卫视",浙江卫视 -http://204.12.221.218:8181/3m1080p/zjws.m3u8$LR•IPV4•17『线路5』 +http://173.208.212.130:8181/720p/zjws.m3u8$LR•IPV4•16『线路5』 #EXTINF:-1 tvg-id="浙江卫视" tvg-name="浙江卫视" group-title="卫视",浙江卫视 -http://173.208.212.130:8181/720p/zjws.m3u8$LR•IPV4•17『线路6』 +http://ali-xwl.cztv.com/live/channel01720Plxw.m3u8$LR•IPV4•16『线路6』 #EXTINF:-1 tvg-id="浙江卫视" tvg-name="浙江卫视" group-title="卫视",浙江卫视 -http://ali-xwl.cztv.com/live/channel01720Plxw.m3u8$LR•IPV4•17『线路7』 +http://ali-m-l.cztv.com:80/channels/lantian/channel001/1080p.m3u8$LR•IPV4•16『线路7』 #EXTINF:-1 tvg-id="浙江卫视" tvg-name="浙江卫视" group-title="卫视",浙江卫视 -http://112.27.235.94:8000/hls/29/index.m3u8$LR•IPV4•17『线路8』 +http://39.134.115.163:8080/PLTV/88888910/224/3221225703/index.m3u8$LR•IPV4•16『线路8』 #EXTINF:-1 tvg-id="浙江卫视" tvg-name="浙江卫视" group-title="卫视",浙江卫视 -http://38.75.136.137:98/gslb/dsdqpub/zjwshd.m3u8?auth=testpub$LR•IPV4•17『线路9』 +http://38.75.136.137:98/gslb/dsdqpub/zjwshd.m3u8?auth=testpub$LR•IPV4•16『线路9』 #EXTINF:-1 tvg-id="浙江卫视" tvg-name="浙江卫视" group-title="卫视",浙江卫视 -http://23.237.228.134/live6/zhejiang.m3u8$LR•IPV4•17『线路10』 +http://23.237.228.134/live6/zhejiang.m3u8$LR•IPV4•16『线路10』 #EXTINF:-1 tvg-id="浙江卫视" tvg-name="浙江卫视" group-title="卫视",浙江卫视 -http://gfr.x3322.net:9901/tsfile/live/1087_1.m3u8$LR•IPV4•17『线路11』 +http://gfr.x3322.net:9901/tsfile/live/1087_1.m3u8$LR•IPV4•16『线路11』 #EXTINF:-1 tvg-id="浙江卫视" tvg-name="浙江卫视" group-title="卫视",浙江卫视 -http://api.kkitv.itv888.cn:8080/hls/urjqjvyf41q/index.m3u8$LR•IPV4•17『线路12』 +http://api.kkitv.itv888.cn:8080/hls/urjqjvyf41q/index.m3u8$LR•IPV4•16『线路12』 #EXTINF:-1 tvg-id="浙江卫视" tvg-name="浙江卫视" group-title="卫视",浙江卫视 -https://iptv.catvod.com/catvod.php?id=zjws$LR•IPV4•17『线路13』 +https://iptv.catvod.com/catvod.php?id=zjws$LR•IPV4•16『线路13』 #EXTINF:-1 tvg-id="浙江卫视" tvg-name="浙江卫视" group-title="卫视",浙江卫视 -https://httop.top/ysp-浙江卫视$LR•IPV4•17『线路14』 +https://httop.top/ysp-浙江卫视$LR•IPV4•16『线路14』 #EXTINF:-1 tvg-id="浙江卫视" tvg-name="浙江卫视" group-title="卫视",浙江卫视 -http://iptv.huuc.edu.cn/hls/zjhd.m3u8$LR•IPV4•17『线路15』 +http://iptv.huuc.edu.cn/hls/zjhd.m3u8$LR•IPV4•16『线路15』 #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•17『线路16』 -#EXTINF:-1 tvg-id="浙江卫视" tvg-name="浙江卫视" group-title="卫视",浙江卫视 -http://39.134.115.163:8080/PLTV/88888910/224/3221225703/index.m3u8$LR•IPV4•17『线路17』 +http://153.0.171.163:9901/tsfile/live/0124_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•16『线路16』 #EXTINF:-1 tvg-id="东方卫视" tvg-name="东方卫视" group-title="卫视",东方卫视 -http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226898/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7E0uh4lyjjBCCN7TCq21vSIQ%7EtP4-l0lmSfjwLWEfK_el1vH_mv-s1zo4AQJwdedaVwG9xkuFTDg8J26cwOrNJzn20BErrHdLhuZ9EzLUCD3PMW-OMx4MGteHV2vLeW6BqoY%2CEND$LR•IPV6•17『线路1』 +http://t.061899.xyz/tl/tl.php?id=dfws$LR•IPV4•17『线路1』 #EXTINF:-1 tvg-id="东方卫视" tvg-name="东方卫视" group-title="卫视",东方卫视 -http://101.66.194.82:9901/tsfile/live/0018_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•17『线路2』 +http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226898/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7E0uh4lyjjBCCN7TCq21vSIQ%7EtP4-l0lmSfjwLWEfK_el1vH_mv-s1zo4AQJwdedaVwG9xkuFTDg8J26cwOrNJzn20BErrHdLhuZ9EzLUCD3PMW-OMx4MGteHV2vLeW6BqoY%2CEND$LR•IPV6•17『线路2』 #EXTINF:-1 tvg-id="东方卫视" tvg-name="东方卫视" group-title="卫视",东方卫视 -http://38.75.136.137:98/gslb/dsdqpub/dfwshd.m3u8?auth=testpub$LR•IPV4•17『线路3』 +http://101.66.194.82:9901/tsfile/live/0018_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•17『线路3』 #EXTINF:-1 tvg-id="东方卫视" tvg-name="东方卫视" group-title="卫视",东方卫视 -http://173.208.212.130:8181/720p/dfws.m3u8$LR•IPV4•17『线路4』 +http://38.75.136.137:98/gslb/dsdqpub/dfwshd.m3u8?auth=testpub$LR•IPV4•17『线路4』 #EXTINF:-1 tvg-id="东方卫视" tvg-name="东方卫视" group-title="卫视",东方卫视 -https://txmov2.a.kwimgs.com/bs3/video-hls/5219953535631090825_hlsb.m3u8$LR•IPV4•17『线路5』 +http://173.208.212.130:8181/720p/dfws.m3u8$LR•IPV4•17『线路5』 #EXTINF:-1 tvg-id="东方卫视" tvg-name="东方卫视" group-title="卫视",东方卫视 -http://38.75.136.137:98/gslb/dsdqbv/dfwshd.m3u8?auth=test20251009$LR•IPV4•17『线路6』 +http://118.81.195.79:9003/hls/23/index.m3u8$LR•IPV4•17『线路6』 #EXTINF:-1 tvg-id="东方卫视" tvg-name="东方卫视" group-title="卫视",东方卫视 -http://23.237.228.134/live3/dongfang.m3u8$LR•IPV4•17『线路7』 +http://38.75.136.137:98/gslb/dsdqbv/dfwshd.m3u8?auth=test20251009$LR•IPV4•17『线路7』 #EXTINF:-1 tvg-id="东方卫视" tvg-name="东方卫视" group-title="卫视",东方卫视 -http://43.251.226.89:8080/play/36.m3u8$LR•IPV4•17『线路8』 +http://23.237.228.134/live3/dongfang.m3u8$LR•IPV4•17『线路8』 #EXTINF:-1 tvg-id="东方卫视" tvg-name="东方卫视" group-title="卫视",东方卫视 -http://gfr.x3322.net:9901/tsfile/live/1085_1.m3u8$LR•IPV4•17『线路9』 +http://43.251.226.89:8080/play/36.m3u8$LR•IPV4•17『线路9』 #EXTINF:-1 tvg-id="东方卫视" tvg-name="东方卫视" group-title="卫视",东方卫视 -http://api.kkitv.itv888.cn:8080/hls/p269fvbehye/index.m3u8$LR•IPV4•17『线路10』 +http://gfr.x3322.net:9901/tsfile/live/1085_1.m3u8$LR•IPV4•17『线路10』 #EXTINF:-1 tvg-id="东方卫视" tvg-name="东方卫视" group-title="卫视",东方卫视 -https://iptv.catvod.com/catvod.php?id=dfws$LR•IPV4•17『线路11』 +http://api.kkitv.itv888.cn:8080/hls/p269fvbehye/index.m3u8$LR•IPV4•17『线路11』 #EXTINF:-1 tvg-id="东方卫视" tvg-name="东方卫视" group-title="卫视",东方卫视 -https://httop.top/ysp-东方卫视$LR•IPV4•17『线路12』 +https://iptv.catvod.com/catvod.php?id=dfws$LR•IPV4•17『线路12』 #EXTINF:-1 tvg-id="东方卫视" tvg-name="东方卫视" group-title="卫视",东方卫视 -http://iptv.huuc.edu.cn/hls/dfhd.m3u8$LR•IPV4•17『线路13』 +https://httop.top/ysp-东方卫视$LR•IPV4•17『线路13』 #EXTINF:-1 tvg-id="东方卫视" tvg-name="东方卫视" group-title="卫视",东方卫视 -http://mg.hmysapp.cn:177/ckmg/zb.php?id=dfws$LR•IPV4•17『线路14』 +http://iptv.huuc.edu.cn/hls/dfhd.m3u8$LR•IPV4•17『线路14』 #EXTINF:-1 tvg-id="东方卫视" tvg-name="东方卫视" group-title="卫视",东方卫视 -http://153.0.171.163:9901/tsfile/live/0107_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•17『线路15』 +http://mg.hmysapp.cn:177/ckmg/zb.php?id=dfws$LR•IPV4•17『线路15』 #EXTINF:-1 tvg-id="东方卫视" tvg-name="东方卫视" group-title="卫视",东方卫视 -http://omnix.cn:4000/udp/225.1.8.45:8032$LR•IPV4•17『线路16』 +http://153.0.171.163:9901/tsfile/live/0107_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•17『线路16』 #EXTINF:-1 tvg-id="东方卫视" tvg-name="东方卫视" group-title="卫视",东方卫视 -http://118.81.195.79:9003/hls/23/index.m3u8$LR•IPV4•17『线路17』 +http://omnix.cn:4000/udp/225.1.8.45:8032$LR•IPV4•17『线路17』 #EXTINF:-1 tvg-id="北京卫视" tvg-name="北京卫视" group-title="卫视",北京卫视 http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226900/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7EcYPi33WFyhvd6SjmqUKhJg%7EtP4-l0lmSfjwLWEfK_el1vH_mv-s1zo4AQJwdedaVwG9xkuFTDg8J26cwOrNJzn20BErrHdLhuZ9EzLUCD3PMW-OMx4MGteHV2vLeW6BqoY%2CEND$LR•IPV6•13『线路1』 #EXTINF:-1 tvg-id="北京卫视" tvg-name="北京卫视" group-title="卫视",北京卫视 @@ -700,77 +704,75 @@ http://153.0.171.163:9901/tsfile/live/0122_1.m3u8?key=txiptv&playlive=1&authid=0 #EXTINF:-1 tvg-id="北京卫视" tvg-name="北京卫视" group-title="卫视",北京卫视 http://112.27.235.94:8000/hls/27/index.m3u8$LR•IPV4•13『线路4』 #EXTINF:-1 tvg-id="北京卫视" tvg-name="北京卫视" group-title="卫视",北京卫视 -http://38.75.136.137:98/gslb/dsdqpub/bjwshd.m3u8?auth=testpub$LR•IPV4•13『线路5』 +http://go.bkpcp.top/mg/bjws$LR•IPV4•13『线路5』 #EXTINF:-1 tvg-id="北京卫视" tvg-name="北京卫视" group-title="卫视",北京卫视 -http://23.237.228.134/live3/beijing.m3u8$LR•IPV4•13『线路6』 +http://38.75.136.137:98/gslb/dsdqpub/bjwshd.m3u8?auth=testpub$LR•IPV4•13『线路6』 #EXTINF:-1 tvg-id="北京卫视" tvg-name="北京卫视" group-title="卫视",北京卫视 -http://43.251.226.89:8080/play/40.m3u8$LR•IPV4•13『线路7』 +http://23.237.228.134/live3/beijing.m3u8$LR•IPV4•13『线路7』 #EXTINF:-1 tvg-id="北京卫视" tvg-name="北京卫视" group-title="卫视",北京卫视 -http://gfr.x3322.net:9901/tsfile/live/1089_1.m3u8$LR•IPV4•13『线路8』 +http://43.251.226.89:8080/play/40.m3u8$LR•IPV4•13『线路8』 #EXTINF:-1 tvg-id="北京卫视" tvg-name="北京卫视" group-title="卫视",北京卫视 -http://api.kkitv.itv888.cn:8080/hls/h5uud1z84gn/index.m3u8$LR•IPV4•13『线路9』 +http://gfr.x3322.net:9901/tsfile/live/1089_1.m3u8$LR•IPV4•13『线路9』 #EXTINF:-1 tvg-id="北京卫视" tvg-name="北京卫视" group-title="卫视",北京卫视 -https://iptv.catvod.com/catvod.php?id=bjws$LR•IPV4•13『线路10』 +http://api.kkitv.itv888.cn:8080/hls/h5uud1z84gn/index.m3u8$LR•IPV4•13『线路10』 #EXTINF:-1 tvg-id="北京卫视" tvg-name="北京卫视" group-title="卫视",北京卫视 -https://httop.top/ysp-北京卫视$LR•IPV4•13『线路11』 +https://iptv.catvod.com/catvod.php?id=bjws$LR•IPV4•13『线路11』 #EXTINF:-1 tvg-id="北京卫视" tvg-name="北京卫视" group-title="卫视",北京卫视 -http://iptv.huuc.edu.cn/hls/btv1hd.m3u8$LR•IPV4•13『线路12』 +https://httop.top/ysp-北京卫视$LR•IPV4•13『线路12』 #EXTINF:-1 tvg-id="北京卫视" tvg-name="北京卫视" group-title="卫视",北京卫视 -http://go.bkpcp.top/mg/bjws$LR•IPV4•13『线路13』 +http://iptv.huuc.edu.cn/hls/btv1hd.m3u8$LR•IPV4•13『线路13』 #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•15『线路1』 +http://t.061899.xyz/tl/tl.php?id=jsws$LR•IPV4•15『线路1』 #EXTINF:-1 tvg-id="江苏卫视" tvg-name="江苏卫视" group-title="卫视",江苏卫视 -http://120.198.95.220:9901/tsfile/live/1046_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•15『线路2』 +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•15『线路2』 #EXTINF:-1 tvg-id="江苏卫视" tvg-name="江苏卫视" group-title="卫视",江苏卫视 -http://173.208.212.130:8181/720p/jsws.m3u8$LR•IPV4•15『线路3』 +http://120.198.95.220:9901/tsfile/live/1046_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•15『线路3』 #EXTINF:-1 tvg-id="江苏卫视" tvg-name="江苏卫视" group-title="卫视",江苏卫视 -http://198.204.228.26/live/jswshd.m3u8$LR•IPV4•15『线路4』 +http://173.208.212.130:8181/720p/jsws.m3u8$LR•IPV4•15『线路4』 #EXTINF:-1 tvg-id="江苏卫视" tvg-name="江苏卫视" group-title="卫视",江苏卫视 -http://112.27.235.94:8000/hls/32/index.m3u8$LR•IPV4•15『线路5』 +http://198.204.228.26/live/jswshd.m3u8$LR•IPV4•15『线路5』 #EXTINF:-1 tvg-id="江苏卫视" tvg-name="江苏卫视" group-title="卫视",江苏卫视 -http://38.75.136.137:98/gslb/dsdqbv/jswshd.m3u8?auth=test20251009$LR•IPV4•15『线路6』 +http://39.134.24.166/dbiptv.sn.chinamobile.com/PLTV/88888890/224/3221226200/index.m3u8$LR•IPV4•15『线路6』 #EXTINF:-1 tvg-id="江苏卫视" tvg-name="江苏卫视" group-title="卫视",江苏卫视 -https://hlsbkmgsplive.miguvideo.com/migu/kailu/jswshd265/55/20200407/01.m3u8?&HlsSubType=&encrypt=$LR•IPV4•15『线路7』 +http://38.75.136.137:98/gslb/dsdqbv/jswshd.m3u8?auth=test20251009$LR•IPV4•15『线路7』 #EXTINF:-1 tvg-id="江苏卫视" tvg-name="江苏卫视" group-title="卫视",江苏卫视 -http://23.237.228.134/live3/jiangsu.m3u8$LR•IPV4•15『线路8』 +https://hlsbkmgsplive.miguvideo.com/migu/kailu/jswshd265/55/20200407/01.m3u8?&HlsSubType=&encrypt=$LR•IPV4•15『线路8』 #EXTINF:-1 tvg-id="江苏卫视" tvg-name="江苏卫视" group-title="卫视",江苏卫视 -http://43.251.226.89:8080/play/37.m3u8$LR•IPV4•15『线路9』 +http://23.237.228.134/live3/jiangsu.m3u8$LR•IPV4•15『线路9』 #EXTINF:-1 tvg-id="江苏卫视" tvg-name="江苏卫视" group-title="卫视",江苏卫视 -http://gfr.x3322.net:9901/tsfile/live/1086_1.m3u8$LR•IPV4•15『线路10』 +http://43.251.226.89:8080/play/37.m3u8$LR•IPV4•15『线路10』 #EXTINF:-1 tvg-id="江苏卫视" tvg-name="江苏卫视" group-title="卫视",江苏卫视 -http://api.kkitv.itv888.cn:8080/hls/g1upm1u239/index.m3u8$LR•IPV4•15『线路11』 +http://gfr.x3322.net:9901/tsfile/live/1086_1.m3u8$LR•IPV4•15『线路11』 #EXTINF:-1 tvg-id="江苏卫视" tvg-name="江苏卫视" group-title="卫视",江苏卫视 -https://httop.top/ysp-江苏卫视$LR•IPV4•15『线路12』 +http://api.kkitv.itv888.cn:8080/hls/g1upm1u239/index.m3u8$LR•IPV4•15『线路12』 #EXTINF:-1 tvg-id="江苏卫视" tvg-name="江苏卫视" group-title="卫视",江苏卫视 -http://iptv.huuc.edu.cn/hls/jshd.m3u8$LR•IPV4•15『线路13』 +https://httop.top/ysp-江苏卫视$LR•IPV4•15『线路13』 #EXTINF:-1 tvg-id="江苏卫视" tvg-name="江苏卫视" group-title="卫视",江苏卫视 -http://mg.hmysapp.cn:177/ckmg/zb.php?id=jsws$LR•IPV4•15『线路14』 +http://iptv.huuc.edu.cn/hls/jshd.m3u8$LR•IPV4•15『线路14』 #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•15『线路15』 +http://mg.hmysapp.cn:177/ckmg/zb.php?id=jsws$LR•IPV4•15『线路15』 #EXTINF:-1 tvg-id="安徽卫视" tvg-name="安徽卫视" group-title="卫视",安徽卫视 -https://piccpndks.v.kcdnvip.com/audio/anhui_2/index.m3u8$LR•IPV4•11『线路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•10『线路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•11『线路2』 +http://101.66.194.63:9901/tsfile/live/0130_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•10『线路2』 #EXTINF:-1 tvg-id="安徽卫视" tvg-name="安徽卫视" group-title="卫视",安徽卫视 -http://101.66.194.63:9901/tsfile/live/0130_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•11『线路3』 +http://112.27.235.94:8000/hls/26/index.m3u8$LR•IPV4•10『线路3』 #EXTINF:-1 tvg-id="安徽卫视" tvg-name="安徽卫视" group-title="卫视",安徽卫视 -http://112.27.235.94:8000/hls/26/index.m3u8$LR•IPV4•11『线路4』 +http://23.237.228.134/live8/anhui.m3u8$LR•IPV4•10『线路4』 #EXTINF:-1 tvg-id="安徽卫视" tvg-name="安徽卫视" group-title="卫视",安徽卫视 -http://23.237.228.134/live8/anhui.m3u8$LR•IPV4•11『线路5』 +http://gfr.x3322.net:9901/tsfile/live/1092_1.m3u8$LR•IPV4•10『线路5』 #EXTINF:-1 tvg-id="安徽卫视" tvg-name="安徽卫视" group-title="卫视",安徽卫视 -http://gfr.x3322.net:9901/tsfile/live/1092_1.m3u8$LR•IPV4•11『线路6』 +http://api.kkitv.itv888.cn:8080/hls/m8hvytneunk/index.m3u8$LR•IPV4•10『线路6』 #EXTINF:-1 tvg-id="安徽卫视" tvg-name="安徽卫视" group-title="卫视",安徽卫视 -http://api.kkitv.itv888.cn:8080/hls/m8hvytneunk/index.m3u8$LR•IPV4•11『线路7』 +https://iptv.catvod.com/catvod.php?id=ahws$LR•IPV4•10『线路7』 #EXTINF:-1 tvg-id="安徽卫视" tvg-name="安徽卫视" group-title="卫视",安徽卫视 -https://iptv.catvod.com/catvod.php?id=ahws$LR•IPV4•11『线路8』 +https://httop.top/ysp-安徽卫视$LR•IPV4•10『线路8』 #EXTINF:-1 tvg-id="安徽卫视" tvg-name="安徽卫视" group-title="卫视",安徽卫视 -https://httop.top/ysp-安徽卫视$LR•IPV4•11『线路9』 +http://iptv.huuc.edu.cn/hls/ahhd.m3u8$LR•IPV4•10『线路9』 #EXTINF:-1 tvg-id="安徽卫视" tvg-name="安徽卫视" group-title="卫视",安徽卫视 -http://iptv.huuc.edu.cn/hls/ahhd.m3u8$LR•IPV4•11『线路10』 -#EXTINF:-1 tvg-id="安徽卫视" tvg-name="安徽卫视" group-title="卫视",安徽卫视 -http://153.0.171.163:9901/tsfile/live/0130_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•11『线路11』 +http://153.0.171.163:9901/tsfile/live/0130_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•10『线路10』 #EXTINF:-1 tvg-id="重庆卫视" tvg-name="重庆卫视" group-title="卫视",重庆卫视 -http://live2.plus.jinhua.com.cn/dsnc/playlist.m3u8$LR•IPV4•16『线路1』 +http://t.061899.xyz/tl/tl.php?id=cqws$LR•IPV4•16『线路1』 #EXTINF:-1 tvg-id="重庆卫视" tvg-name="重庆卫视" group-title="卫视",重庆卫视 http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226963/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7EjTXsJprEx2nE38tdvu5lhA%7EtP4-l0lmSfjwLWEfK_el1vH_mv-s1zo4AQJwdedaVwG9xkuFTDg8J26cwOrNJzn20BErrHdLhuZ9EzLUCD3PMW-OMx4MGteHV2vLeW6BqoY%2CEND$LR•IPV6•16『线路2』 #EXTINF:-1 tvg-id="重庆卫视" tvg-name="重庆卫视" group-title="卫视",重庆卫视 @@ -782,25 +784,25 @@ http://112.123.243.37:50085/tsfile/live/0131_1.m3u8?key=txiptv&playlive=0&authid #EXTINF:-1 tvg-id="重庆卫视" tvg-name="重庆卫视" group-title="卫视",重庆卫视 http://120.198.95.220:9901/tsfile/live/1066_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•16『线路6』 #EXTINF:-1 tvg-id="重庆卫视" tvg-name="重庆卫视" group-title="卫视",重庆卫视 -http://112.27.235.94:8000/hls/36/index.m3u8$LR•IPV4•16『线路7』 +http://live2.plus.jinhua.com.cn/dsnc/playlist.m3u8$LR•IPV4•16『线路7』 #EXTINF:-1 tvg-id="重庆卫视" tvg-name="重庆卫视" group-title="卫视",重庆卫视 -http://23.237.228.134/live6/chongqing.m3u8$LR•IPV4•16『线路8』 +http://118.81.195.79:9003/hls/22/index.m3u8$LR•IPV4•16『线路8』 #EXTINF:-1 tvg-id="重庆卫视" tvg-name="重庆卫视" group-title="卫视",重庆卫视 -http://43.251.226.89:8080/play/55.m3u8$LR•IPV4•16『线路9』 +http://23.237.228.134/live6/chongqing.m3u8$LR•IPV4•16『线路9』 #EXTINF:-1 tvg-id="重庆卫视" tvg-name="重庆卫视" group-title="卫视",重庆卫视 -http://gfr.x3322.net:9901/tsfile/live/1093_1.m3u8$LR•IPV4•16『线路10』 +http://43.251.226.89:8080/play/55.m3u8$LR•IPV4•16『线路10』 #EXTINF:-1 tvg-id="重庆卫视" tvg-name="重庆卫视" group-title="卫视",重庆卫视 -http://api.kkitv.itv888.cn:8080/hls/ogh3s6tbw6/index.m3u8$LR•IPV4•16『线路11』 +http://gfr.x3322.net:9901/tsfile/live/1093_1.m3u8$LR•IPV4•16『线路11』 #EXTINF:-1 tvg-id="重庆卫视" tvg-name="重庆卫视" group-title="卫视",重庆卫视 -https://iptv.catvod.com/catvod.php?id=cqws$LR•IPV4•16『线路12』 +http://api.kkitv.itv888.cn:8080/hls/ogh3s6tbw6/index.m3u8$LR•IPV4•16『线路12』 #EXTINF:-1 tvg-id="重庆卫视" tvg-name="重庆卫视" group-title="卫视",重庆卫视 -https://httop.top/ysp-重庆卫视$LR•IPV4•16『线路13』 +https://iptv.catvod.com/catvod.php?id=cqws$LR•IPV4•16『线路13』 #EXTINF:-1 tvg-id="重庆卫视" tvg-name="重庆卫视" group-title="卫视",重庆卫视 -http://iptv.huuc.edu.cn/hls/cqhd.m3u8$LR•IPV4•16『线路14』 +https://httop.top/ysp-重庆卫视$LR•IPV4•16『线路14』 #EXTINF:-1 tvg-id="重庆卫视" tvg-name="重庆卫视" group-title="卫视",重庆卫视 -http://153.0.171.163:9901/tsfile/live/0142_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•16『线路15』 +http://iptv.huuc.edu.cn/hls/cqhd.m3u8$LR•IPV4•16『线路15』 #EXTINF:-1 tvg-id="重庆卫视" tvg-name="重庆卫视" group-title="卫视",重庆卫视 -http://118.81.195.79:9003/hls/22/index.m3u8$LR•IPV4•16『线路16』 +http://153.0.171.163:9901/tsfile/live/0142_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•16『线路16』 #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•15『线路1』 #EXTINF:-1 tvg-id="四川卫视" tvg-name="四川卫视" group-title="卫视",四川卫视 @@ -820,53 +822,53 @@ http://153.0.171.163:85/tsfile/live/0123_1.m3u8?key=txiptv&playlive=1&authid=0$L #EXTINF:-1 tvg-id="四川卫视" tvg-name="四川卫视" group-title="卫视",四川卫视 http://112.27.235.94:8000/hls/35/index.m3u8$LR•IPV4•15『线路9』 #EXTINF:-1 tvg-id="四川卫视" tvg-name="四川卫视" group-title="卫视",四川卫视 -http://38.75.136.137:98/gslb/dsdqpub/scwshd.m3u8?auth=testpub$LR•IPV4•15『线路10』 +http://39.134.115.163:8080/PLTV/88888910/224/3221225733/index.m3u8$LR•IPV4•15『线路10』 #EXTINF:-1 tvg-id="四川卫视" tvg-name="四川卫视" group-title="卫视",四川卫视 -http://api.kkitv.itv888.cn:8080/hls/p2npnppn96p/index.m3u8$LR•IPV4•15『线路11』 +http://38.75.136.137:98/gslb/dsdqpub/scwshd.m3u8?auth=testpub$LR•IPV4•15『线路11』 #EXTINF:-1 tvg-id="四川卫视" tvg-name="四川卫视" group-title="卫视",四川卫视 -https://iptv.catvod.com/catvod.php?id=scws$LR•IPV4•15『线路12』 +http://api.kkitv.itv888.cn:8080/hls/p2npnppn96p/index.m3u8$LR•IPV4•15『线路12』 #EXTINF:-1 tvg-id="四川卫视" tvg-name="四川卫视" group-title="卫视",四川卫视 -https://httop.top/ysp-四川卫视$LR•IPV4•15『线路13』 +https://iptv.catvod.com/catvod.php?id=scws$LR•IPV4•15『线路13』 #EXTINF:-1 tvg-id="四川卫视" tvg-name="四川卫视" group-title="卫视",四川卫视 -http://iptv.huuc.edu.cn/hls/schd.m3u8$LR•IPV4•15『线路14』 +https://httop.top/ysp-四川卫视$LR•IPV4•15『线路14』 #EXTINF:-1 tvg-id="四川卫视" tvg-name="四川卫视" group-title="卫视",四川卫视 -http://39.134.115.163:8080/PLTV/88888910/224/3221225733/index.m3u8$LR•IPV4•15『线路15』 +http://iptv.huuc.edu.cn/hls/schd.m3u8$LR•IPV4•15『线路15』 #EXTINF:-1 tvg-id="东南卫视" tvg-name="东南卫视" group-title="卫视",东南卫视 -http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226991/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7EQ6F5Mjgs0tJyEArWFL3vQA%7EtP4-l0lmSfjwLWEfK_el1vH_mv-s1zo4AQJwdedaVwG9xkuFTDg8J26cwOrNJzn20BErrHdLhuZ9EzLUCD3PMW-OMx4MGteHV2vLeW6BqoY%2CEND$LR•IPV6•18『线路1』 +http://t.061899.xyz/tl/tl.php?id=dnws$LR•IPV4•18『线路1』 #EXTINF:-1 tvg-id="东南卫视" tvg-name="东南卫视" group-title="卫视",东南卫视 -http://live.zohi.tv/video/s10001-fztv-3/index.m3u8$LR•IPV4•18『线路2』 +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•18『线路2』 #EXTINF:-1 tvg-id="东南卫视" tvg-name="东南卫视" group-title="卫视",东南卫视 -http://198.204.228.26/live/dnwshd.m3u8$LR•IPV4•18『线路3』 +http://live.zohi.tv/video/s10001-fztv-3/index.m3u8$LR•IPV4•18『线路3』 #EXTINF:-1 tvg-id="东南卫视" tvg-name="东南卫视" group-title="卫视",东南卫视 -http://204.12.221.218:8181/3m1080p/dnws.m3u8$LR•IPV4•18『线路4』 +http://198.204.228.26/live/dnwshd.m3u8$LR•IPV4•18『线路4』 #EXTINF:-1 tvg-id="东南卫视" tvg-name="东南卫视" group-title="卫视",东南卫视 -http://112.123.243.37:50085/tsfile/live/0113_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•18『线路5』 +http://204.12.221.218:8181/3m1080p/dnws.m3u8$LR•IPV4•18『线路5』 #EXTINF:-1 tvg-id="东南卫视" tvg-name="东南卫视" group-title="卫视",东南卫视 -http://112.27.235.94:8000/hls/38/index.m3u8$LR•IPV4•18『线路6』 +http://112.123.243.37:50085/tsfile/live/0113_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•18『线路6』 #EXTINF:-1 tvg-id="东南卫视" tvg-name="东南卫视" group-title="卫视",东南卫视 -http://38.75.136.137:98/gslb/dsdqpub/dnwshd.m3u8?auth=testpub$LR•IPV4•18『线路7』 +http://118.81.195.79:9003/hls/24/index.m3u8$LR•IPV4•18『线路7』 #EXTINF:-1 tvg-id="东南卫视" tvg-name="东南卫视" group-title="卫视",东南卫视 -https://hlsbkmgsplive.miguvideo.com/migu/kailu/dongnanws/51/20230724/01.m3u8?&HlsSubType=&encrypt=$LR•IPV4•18『线路8』 +http://38.75.136.137:98/gslb/dsdqpub/dnwshd.m3u8?auth=testpub$LR•IPV4•18『线路8』 #EXTINF:-1 tvg-id="东南卫视" tvg-name="东南卫视" group-title="卫视",东南卫视 -http://23.237.228.134/live6/dongnan.m3u8$LR•IPV4•18『线路9』 +https://hlsbkmgsplive.miguvideo.com/migu/kailu/dongnanws/51/20230724/01.m3u8?&HlsSubType=&encrypt=$LR•IPV4•18『线路9』 #EXTINF:-1 tvg-id="东南卫视" tvg-name="东南卫视" group-title="卫视",东南卫视 -http://23.237.228.134/live8/gansu.m3u8$LR•IPV4•18『线路10』 +http://23.237.228.134/live6/dongnan.m3u8$LR•IPV4•18『线路10』 #EXTINF:-1 tvg-id="东南卫视" tvg-name="东南卫视" group-title="卫视",东南卫视 -http://43.251.226.89:8080/play/49.m3u8$LR•IPV4•18『线路11』 +http://23.237.228.134/live8/gansu.m3u8$LR•IPV4•18『线路11』 #EXTINF:-1 tvg-id="东南卫视" tvg-name="东南卫视" group-title="卫视",东南卫视 -http://gfr.x3322.net:9901/tsfile/live/1099_1.m3u8$LR•IPV4•18『线路12』 +http://43.251.226.89:8080/play/49.m3u8$LR•IPV4•18『线路12』 #EXTINF:-1 tvg-id="东南卫视" tvg-name="东南卫视" group-title="卫视",东南卫视 -http://api.kkitv.itv888.cn:8080/hls/jjt15bvbl7a/index.m3u8$LR•IPV4•18『线路13』 +http://gfr.x3322.net:9901/tsfile/live/1099_1.m3u8$LR•IPV4•18『线路13』 #EXTINF:-1 tvg-id="东南卫视" tvg-name="东南卫视" group-title="卫视",东南卫视 -https://iptv.catvod.com/catvod.php?id=dnws$LR•IPV4•18『线路14』 +http://api.kkitv.itv888.cn:8080/hls/jjt15bvbl7a/index.m3u8$LR•IPV4•18『线路14』 #EXTINF:-1 tvg-id="东南卫视" tvg-name="东南卫视" group-title="卫视",东南卫视 -https://httop.top/ysp-东南卫视$LR•IPV4•18『线路15』 +https://iptv.catvod.com/catvod.php?id=dnws$LR•IPV4•18『线路15』 #EXTINF:-1 tvg-id="东南卫视" tvg-name="东南卫视" group-title="卫视",东南卫视 -http://iptv.huuc.edu.cn/hls/dnhd.m3u8$LR•IPV4•18『线路16』 +https://httop.top/ysp-东南卫视$LR•IPV4•18『线路16』 #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•18『线路17』 +http://iptv.huuc.edu.cn/hls/dnhd.m3u8$LR•IPV4•18『线路17』 #EXTINF:-1 tvg-id="东南卫视" tvg-name="东南卫视" group-title="卫视",东南卫视 -http://118.81.195.79:9003/hls/24/index.m3u8$LR•IPV4•18『线路18』 +http://153.0.171.163:9901/tsfile/live/0137_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•18『线路18』 #EXTINF:-1 tvg-id="深圳卫视" tvg-name="深圳卫视" group-title="卫视",深圳卫视 http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226959/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7EGrVNEZREjuNVKiTJo2mtwg%7EtP4-l0lmSfjwLWEfK_el1vH_mv-s1zo4AQJwdedaVwG9xkuFTDg8J26cwOrNJzn20BErrHdLhuZ9EzLUCD3PMW-OMx4MGteHV2vLeW6BqoY%2CEND$LR•IPV6•17『线路1』 #EXTINF:-1 tvg-id="深圳卫视" tvg-name="深圳卫视" group-title="卫视",深圳卫视 @@ -902,111 +904,113 @@ http://153.0.171.163:9901/tsfile/live/0126_1.m3u8?key=txiptv&playlive=1&authid=0 #EXTINF:-1 tvg-id="深圳卫视" tvg-name="深圳卫视" group-title="卫视",深圳卫视 http://38.64.72.148:80/hls/modn/list/4007/playlist.m3u8$LR•IPV4•17『线路17』 #EXTINF:-1 tvg-id="广东卫视" tvg-name="广东卫视" group-title="卫视",广东卫视 -http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226961/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7E2MGyx659D_aaDPP0qt3NgA%7EtP4-l0lmSfjwLWEfK_el1vH_mv-s1zo4AQJwdedaVwG9xkuFTDg8J26cwOrNJzn20BErrHdLhuZ9EzLUCD3PMW-OMx4MGteHV2vLeW6BqoY%2CEND$LR•IPV6•12『线路1』 +http://t.061899.xyz/tl/tl.php?id=gdws$LR•IPV4•12『线路1』 #EXTINF:-1 tvg-id="广东卫视" tvg-name="广东卫视" group-title="卫视",广东卫视 -http://112.27.235.94:8000/hls/30/index.m3u8$LR•IPV4•12『线路2』 +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•12『线路2』 #EXTINF:-1 tvg-id="广东卫视" tvg-name="广东卫视" group-title="卫视",广东卫视 -http://38.75.136.137:98/gslb/dsdqpub/gdwshd.m3u8?auth=testpub$LR•IPV4•12『线路3』 +http://118.81.195.79:9003/hls/26/index.m3u8$LR•IPV4•12『线路3』 #EXTINF:-1 tvg-id="广东卫视" tvg-name="广东卫视" group-title="卫视",广东卫视 -http://23.237.228.134/live6/guangdong.m3u8$LR•IPV4•12『线路4』 +http://38.75.136.137:98/gslb/dsdqpub/gdwshd.m3u8?auth=testpub$LR•IPV4•12『线路4』 #EXTINF:-1 tvg-id="广东卫视" tvg-name="广东卫视" group-title="卫视",广东卫视 -http://43.251.226.89:8080/play/38.m3u8$LR•IPV4•12『线路5』 +http://23.237.228.134/live6/guangdong.m3u8$LR•IPV4•12『线路5』 #EXTINF:-1 tvg-id="广东卫视" tvg-name="广东卫视" group-title="卫视",广东卫视 -http://gfr.x3322.net:9901/tsfile/live/1096_1.m3u8$LR•IPV4•12『线路6』 +http://43.251.226.89:8080/play/38.m3u8$LR•IPV4•12『线路6』 #EXTINF:-1 tvg-id="广东卫视" tvg-name="广东卫视" group-title="卫视",广东卫视 -http://api.kkitv.itv888.cn:8080/hls/qr6872071g/index.m3u8$LR•IPV4•12『线路7』 +http://gfr.x3322.net:9901/tsfile/live/1096_1.m3u8$LR•IPV4•12『线路7』 #EXTINF:-1 tvg-id="广东卫视" tvg-name="广东卫视" group-title="卫视",广东卫视 -https://iptv.catvod.com/catvod.php?id=gdws$LR•IPV4•12『线路8』 +http://api.kkitv.itv888.cn:8080/hls/qr6872071g/index.m3u8$LR•IPV4•12『线路8』 #EXTINF:-1 tvg-id="广东卫视" tvg-name="广东卫视" group-title="卫视",广东卫视 -https://httop.top/ysp-广东卫视$LR•IPV4•12『线路9』 +https://iptv.catvod.com/catvod.php?id=gdws$LR•IPV4•12『线路9』 #EXTINF:-1 tvg-id="广东卫视" tvg-name="广东卫视" group-title="卫视",广东卫视 -http://iptv.huuc.edu.cn/hls/gdhd.m3u8$LR•IPV4•12『线路10』 +https://httop.top/ysp-广东卫视$LR•IPV4•12『线路10』 #EXTINF:-1 tvg-id="广东卫视" tvg-name="广东卫视" group-title="卫视",广东卫视 -http://mg.hmysapp.cn:177/ckmg/zb.php?id=gdws$LR•IPV4•12『线路11』 +http://iptv.huuc.edu.cn/hls/gdhd.m3u8$LR•IPV4•12『线路11』 #EXTINF:-1 tvg-id="广东卫视" tvg-name="广东卫视" group-title="卫视",广东卫视 -http://118.81.195.79:9003/hls/26/index.m3u8$LR•IPV4•12『线路12』 +http://mg.hmysapp.cn:177/ckmg/zb.php?id=gdws$LR•IPV4•12『线路12』 #EXTINF:-1 tvg-id="广西卫视" tvg-name="广西卫视" group-title="卫视",广西卫视 -http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221227010/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7EkAhb-89sxdm9fz6-heXCuw%7EtP4-l0lmSfjwLWEfK_el1vH_mv-s1zo4AQJwdedaVwG9xkuFTDg8J26cwOrNJzn20BErrHdLhuZ9EzLUCD3PMW-OMx4MGteHV2vLeW6BqoY%2CEND$LR•IPV6•16『线路1』 +http://t.061899.xyz/tl/tl.php?id=gxws$LR•IPV4•16『线路1』 #EXTINF:-1 tvg-id="广西卫视" tvg-name="广西卫视" group-title="卫视",广西卫视 -http://113.15.109.216:59901/tsfile/live/0113_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•16『线路2』 +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•16『线路2』 #EXTINF:-1 tvg-id="广西卫视" tvg-name="广西卫视" group-title="卫视",广西卫视 -https://gd202.tv1288.xyz/tsfile/live/1028_1.m3u8$LR•IPV4•16『线路3』 +http://113.15.109.216:59901/tsfile/live/0113_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•16『线路3』 #EXTINF:-1 tvg-id="广西卫视" tvg-name="广西卫视" group-title="卫视",广西卫视 -http://112.123.243.37:50085/tsfile/live/0137_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•16『线路4』 +https://gd202.tv1288.xyz/tsfile/live/1028_1.m3u8$LR•IPV4•16『线路4』 #EXTINF:-1 tvg-id="广西卫视" tvg-name="广西卫视" group-title="卫视",广西卫视 -http://101.66.194.63:9901/tsfile/live/0113_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•16『线路5』 +http://112.123.243.37:50085/tsfile/live/0137_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•16『线路5』 #EXTINF:-1 tvg-id="广西卫视" tvg-name="广西卫视" group-title="卫视",广西卫视 -http://101.66.194.82:9901/tsfile/live/0113_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•16『线路6』 +http://101.66.194.63:9901/tsfile/live/0113_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•16『线路6』 #EXTINF:-1 tvg-id="广西卫视" tvg-name="广西卫视" group-title="卫视",广西卫视 -http://36.136.38.87:9901/tsfile/live/0113_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•16『线路7』 +http://101.66.194.82:9901/tsfile/live/0113_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•16『线路7』 #EXTINF:-1 tvg-id="广西卫视" tvg-name="广西卫视" group-title="卫视",广西卫视 -https://hlscdn.liangtv.cn/live/de0f97348eb84f62aa6b7d8cf0430770/dd505d87880c478f901f38560ca4d4e6.m3u8$LR•IPV4•16『线路8』 +http://36.136.38.87:9901/tsfile/live/0113_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•16『线路8』 #EXTINF:-1 tvg-id="广西卫视" tvg-name="广西卫视" group-title="卫视",广西卫视 -http://38.75.136.137:98/gslb/dsdqpub/gxwshd.m3u8?auth=testpub$LR•IPV4•16『线路9』 +http://118.81.195.79:9003/hls/27/index.m3u8$LR•IPV4•16『线路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•16『线路10』 +http://38.75.136.137:98/gslb/dsdqpub/gxwshd.m3u8?auth=testpub$LR•IPV4•16『线路10』 #EXTINF:-1 tvg-id="广西卫视" tvg-name="广西卫视" group-title="卫视",广西卫视 -http://23.237.228.134/live6/guangxi.m3u8$LR•IPV4•16『线路11』 +http://pull-hls-f11.douyincdn.com/media/stream-695314078702240428.m3u8?arch_hrchy=w1&exp_hrchy=w1&expire=1771760950&major_anchor_level=common&sign=d9c21ca1151fa649e68dc18c13ac2e23&t_id=037-2026021519491078C5C8D15B8DDFD19426-OM31JH$LR•IPV4•16『线路11』 #EXTINF:-1 tvg-id="广西卫视" tvg-name="广西卫视" group-title="卫视",广西卫视 -http://23.237.228.134/live6/guizhou.m3u8$LR•IPV4•16『线路12』 +http://23.237.228.134/live6/guangxi.m3u8$LR•IPV4•16『线路12』 #EXTINF:-1 tvg-id="广西卫视" tvg-name="广西卫视" group-title="卫视",广西卫视 -http://api.kkitv.itv888.cn:8080/hls/yvz4ndj9dqb/index.m3u8$LR•IPV4•16『线路13』 +http://23.237.228.134/live6/guizhou.m3u8$LR•IPV4•16『线路13』 #EXTINF:-1 tvg-id="广西卫视" tvg-name="广西卫视" group-title="卫视",广西卫视 -https://iptv.catvod.com/catvod.php?id=gxws$LR•IPV4•16『线路14』 +http://api.kkitv.itv888.cn:8080/hls/yvz4ndj9dqb/index.m3u8$LR•IPV4•16『线路14』 #EXTINF:-1 tvg-id="广西卫视" tvg-name="广西卫视" group-title="卫视",广西卫视 -https://httop.top/ysp-广西卫视$LR•IPV4•16『线路15』 +https://iptv.catvod.com/catvod.php?id=gxws$LR•IPV4•16『线路15』 #EXTINF:-1 tvg-id="广西卫视" tvg-name="广西卫视" group-title="卫视",广西卫视 -http://118.81.195.79:9003/hls/27/index.m3u8$LR•IPV4•16『线路16』 +https://httop.top/ysp-广西卫视$LR•IPV4•16『线路16』 #EXTINF:-1 tvg-id="厦门卫视" tvg-name="厦门卫视" group-title="卫视",厦门卫视 http://183.11.239.36:808/hls/17/index.m3u8$LR•IPV4•4『线路1』 #EXTINF:-1 tvg-id="厦门卫视" tvg-name="厦门卫视" group-title="卫视",厦门卫视 -https://iptv.catvod.com/catvod.php?id=xmws$LR•IPV4•4『线路2』 +http://223.110.245.159/ott.js.chinamobile.com/PLTV/3/224/3221226996/index.m3u8$LR•IPV4•4『线路2』 #EXTINF:-1 tvg-id="厦门卫视" tvg-name="厦门卫视" group-title="卫视",厦门卫视 -http://223.110.245.159/ott.js.chinamobile.com/PLTV/3/224/3221226996/index.m3u8$LR•IPV4•4『线路3』 +http://112.25.48.68/live/program/live/xmws/1300000/mnf.m3u8$LR•IPV4•4『线路3』 #EXTINF:-1 tvg-id="厦门卫视" tvg-name="厦门卫视" group-title="卫视",厦门卫视 -http://112.25.48.68/live/program/live/xmws/1300000/mnf.m3u8$LR•IPV4•4『线路4』 +https://iptv.catvod.com/catvod.php?id=xmws$LR•IPV4•4『线路4』 #EXTINF:-1 tvg-id="甘肃卫视" tvg-name="甘肃卫视" group-title="卫视",甘肃卫视 -http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221227020/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7Err-CLugPnTcUinEM8JeySg%7EtP4-l0lmSfjwLWEfK_el1vH_mv-s1zo4AQJwdedaVwG9xkuFTDg8J26cwOrNJzn20BErrHdLhuZ9EzLUCD3PMW-OMx4MGteHV2vLeW6BqoY%2CEND$LR•IPV6•5『线路1』 +http://t.061899.xyz/tl/tl.php?id=gsws$LR•IPV4•6『线路1』 #EXTINF:-1 tvg-id="甘肃卫视" tvg-name="甘肃卫视" group-title="卫视",甘肃卫视 -http://112.123.243.37:50085/tsfile/live/0123_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•5『线路2』 +http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221227020/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7Err-CLugPnTcUinEM8JeySg%7EtP4-l0lmSfjwLWEfK_el1vH_mv-s1zo4AQJwdedaVwG9xkuFTDg8J26cwOrNJzn20BErrHdLhuZ9EzLUCD3PMW-OMx4MGteHV2vLeW6BqoY%2CEND$LR•IPV6•6『线路2』 #EXTINF:-1 tvg-id="甘肃卫视" tvg-name="甘肃卫视" group-title="卫视",甘肃卫视 -https://iptv.catvod.com/catvod.php?id=gsws$LR•IPV4•5『线路3』 +http://112.123.243.37:50085/tsfile/live/0123_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•6『线路3』 #EXTINF:-1 tvg-id="甘肃卫视" tvg-name="甘肃卫视" group-title="卫视",甘肃卫视 -https://httop.top/ysp-甘肃卫视$LR•IPV4•5『线路4』 +http://118.81.195.79:9003/hls/25/index.m3u8$LR•IPV4•6『线路4』 #EXTINF:-1 tvg-id="甘肃卫视" tvg-name="甘肃卫视" group-title="卫视",甘肃卫视 -http://118.81.195.79:9003/hls/25/index.m3u8$LR•IPV4•5『线路5』 +https://iptv.catvod.com/catvod.php?id=gsws$LR•IPV4•6『线路5』 +#EXTINF:-1 tvg-id="甘肃卫视" tvg-name="甘肃卫视" group-title="卫视",甘肃卫视 +https://httop.top/ysp-甘肃卫视$LR•IPV4•6『线路6』 #EXTINF:-1 tvg-id="贵州卫视" tvg-name="贵州卫视" group-title="卫视",贵州卫视 -http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221227012/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7EnqBF03rFwPucF8ODtWxLQQ%7EtP4-l0lmSfjwLWEfK_el1vH_mv-s1zo4AQJwdedaVwG9xkuFTDg8J26cwOrNJzn20BErrHdLhuZ9EzLUCD3PMW-OMx4MGteHV2vLeW6BqoY%2CEND$LR•IPV6•16『线路1』 +http://t.061899.xyz/tl/tl.php?id=gzws$LR•IPV4•16『线路1』 #EXTINF:-1 tvg-id="贵州卫视" tvg-name="贵州卫视" group-title="卫视",贵州卫视 -http://112.123.243.37:50085/tsfile/live/0130_2.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•16『线路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•16『线路2』 #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•16『线路3』 +http://112.123.243.37:50085/tsfile/live/0130_2.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•16『线路3』 #EXTINF:-1 tvg-id="贵州卫视" tvg-name="贵州卫视" group-title="卫视",贵州卫视 -http://222.214.208.34:59901/tsfile/live/0120_1.m3u8$LR•IPV4•16『线路4』 +http://120.198.95.220:9901/tsfile/live/1052_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•16『线路4』 #EXTINF:-1 tvg-id="贵州卫视" tvg-name="贵州卫视" group-title="卫视",贵州卫视 -http://198.204.228.26/live/gzwshd.m3u8$LR•IPV4•16『线路5』 +http://222.214.208.34:59901/tsfile/live/0120_1.m3u8$LR•IPV4•16『线路5』 #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•16『线路6』 +http://198.204.228.26/live/gzwshd.m3u8$LR•IPV4•16『线路6』 #EXTINF:-1 tvg-id="贵州卫视" tvg-name="贵州卫视" group-title="卫视",贵州卫视 -http://112.27.235.94:8000/hls/46/index.m3u8$LR•IPV4•16『线路7』 +http://36.136.38.87:9901/tsfile/live/0120_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•16『线路7』 #EXTINF:-1 tvg-id="贵州卫视" tvg-name="贵州卫视" group-title="卫视",贵州卫视 -http://38.75.136.137:98/gslb/dsdqpub/gzwshd.m3u8?auth=testpub$LR•IPV4•16『线路8』 +http://183.207.248.71/gitv/live1/G_GUIZHOU/G_GUIZHOU$LR•IPV4•16『线路8』 #EXTINF:-1 tvg-id="贵州卫视" tvg-name="贵州卫视" group-title="卫视",贵州卫视 -http://23.237.228.134/live6/hainan.m3u8$LR•IPV4•16『线路9』 +http://39.134.115.163:8080/PLTV/88888910/224/3221225728/index.m3u8$LR•IPV4•16『线路9』 #EXTINF:-1 tvg-id="贵州卫视" tvg-name="贵州卫视" group-title="卫视",贵州卫视 -http://gfr.x3322.net:9901/tsfile/live/1100_1.m3u8$LR•IPV4•16『线路10』 +http://38.75.136.137:98/gslb/dsdqpub/gzwshd.m3u8?auth=testpub$LR•IPV4•16『线路10』 #EXTINF:-1 tvg-id="贵州卫视" tvg-name="贵州卫视" group-title="卫视",贵州卫视 -http://api.kkitv.itv888.cn:8080/hls/5dqtpf3arun/index.m3u8$LR•IPV4•16『线路11』 +http://23.237.228.134/live6/hainan.m3u8$LR•IPV4•16『线路11』 #EXTINF:-1 tvg-id="贵州卫视" tvg-name="贵州卫视" group-title="卫视",贵州卫视 -https://iptv.catvod.com/catvod.php?id=gzws$LR•IPV4•16『线路12』 +http://gfr.x3322.net:9901/tsfile/live/1100_1.m3u8$LR•IPV4•16『线路12』 #EXTINF:-1 tvg-id="贵州卫视" tvg-name="贵州卫视" group-title="卫视",贵州卫视 -https://httop.top/ysp-贵州卫视$LR•IPV4•16『线路13』 +http://api.kkitv.itv888.cn:8080/hls/5dqtpf3arun/index.m3u8$LR•IPV4•16『线路13』 #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•16『线路14』 +https://iptv.catvod.com/catvod.php?id=gzws$LR•IPV4•16『线路14』 #EXTINF:-1 tvg-id="贵州卫视" tvg-name="贵州卫视" group-title="卫视",贵州卫视 -http://183.207.248.71/gitv/live1/G_GUIZHOU/G_GUIZHOU$LR•IPV4•16『线路15』 +https://httop.top/ysp-贵州卫视$LR•IPV4•16『线路15』 #EXTINF:-1 tvg-id="贵州卫视" tvg-name="贵州卫视" group-title="卫视",贵州卫视 -http://39.134.115.163:8080/PLTV/88888910/224/3221225728/index.m3u8$LR•IPV4•16『线路16』 +http://153.0.171.163:9901/tsfile/live/0120_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•16『线路16』 #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•13『线路1』 #EXTINF:-1 tvg-id="河北卫视" tvg-name="河北卫视" group-title="卫视",河北卫视 @@ -1018,7 +1022,7 @@ http://204.12.221.218:8181/3m1080p/hews.m3u8$LR•IPV4•13『线路4』 #EXTINF:-1 tvg-id="河北卫视" tvg-name="河北卫视" group-title="卫视",河北卫视 http://event.pull.hebtv.com/jishi/weishi_tingyun.m3u8$LR•IPV4•13『线路5』 #EXTINF:-1 tvg-id="河北卫视" tvg-name="河北卫视" group-title="卫视",河北卫视 -http://120.76.248.139/live/bfgd/4200000108.m3u8$LR•IPV4•13『线路6』 +http://112.27.235.94:8000/hls/39/index.m3u8$LR•IPV4•13『线路6』 #EXTINF:-1 tvg-id="河北卫视" tvg-name="河北卫视" group-title="卫视",河北卫视 http://23.237.228.134/live8/hebei.m3u8$LR•IPV4•13『线路7』 #EXTINF:-1 tvg-id="河北卫视" tvg-name="河北卫视" group-title="卫视",河北卫视 @@ -1034,7 +1038,7 @@ http://iptv.huuc.edu.cn/hls/hebhd.m3u8$LR•IPV4•13『线路12』 #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•13『线路13』 #EXTINF:-1 tvg-id="河南卫视" tvg-name="河南卫视" group-title="卫视",河南卫视 -http://tvcdn.stream3.hndt.com/tv/65bd329b017e1000648cd2ed00000000_transios/playlist.m3u8?wsSecret=ca9a9194ec9a95ed2539e69d07b645d5&wsTime=1784134111$LR•IPV4•12『线路1』 +http://t.061899.xyz/tl/tl.php?id=hnws$LR•IPV4•12『线路1』 #EXTINF:-1 tvg-id="河南卫视" tvg-name="河南卫视" group-title="卫视",河南卫视 http://101.66.195.138:9901/tsfile/live/0139_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•12『线路2』 #EXTINF:-1 tvg-id="河南卫视" tvg-name="河南卫视" group-title="卫视",河南卫视 @@ -1046,17 +1050,17 @@ http://221.226.51.220:50081/newlive/live/hls/37/live.m3u8$LR•IPV4•12『线 #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•12『线路6』 #EXTINF:-1 tvg-id="河南卫视" tvg-name="河南卫视" group-title="卫视",河南卫视 -http://112.27.235.94:8000/hls/37/index.m3u8$LR•IPV4•12『线路7』 +http://tvcdn.stream3.hndt.com/tv/65bd329b017e1000648cd2ed00000000_transios/playlist.m3u8?wsSecret=ca9a9194ec9a95ed2539e69d07b645d5&wsTime=1784134111$LR•IPV4•12『线路7』 #EXTINF:-1 tvg-id="河南卫视" tvg-name="河南卫视" group-title="卫视",河南卫视 -http://23.237.228.134/live6/henan.m3u8$LR•IPV4•12『线路8』 +http://118.81.195.79:9003/hls/30/index.m3u8$LR•IPV4•12『线路8』 #EXTINF:-1 tvg-id="河南卫视" tvg-name="河南卫视" group-title="卫视",河南卫视 -http://43.251.226.89:8080/play/44.m3u8$LR•IPV4•12『线路9』 +http://23.237.228.134/live6/henan.m3u8$LR•IPV4•12『线路9』 #EXTINF:-1 tvg-id="河南卫视" tvg-name="河南卫视" group-title="卫视",河南卫视 -https://iptv.catvod.com/catvod.php?id=hnws$LR•IPV4•12『线路10』 +http://43.251.226.89:8080/play/44.m3u8$LR•IPV4•12『线路10』 #EXTINF:-1 tvg-id="河南卫视" tvg-name="河南卫视" group-title="卫视",河南卫视 -https://httop.top/ysp-河南卫视$LR•IPV4•12『线路11』 +https://iptv.catvod.com/catvod.php?id=hnws$LR•IPV4•12『线路11』 #EXTINF:-1 tvg-id="河南卫视" tvg-name="河南卫视" group-title="卫视",河南卫视 -http://118.81.195.79:9003/hls/30/index.m3u8$LR•IPV4•12『线路12』 +https://httop.top/ysp-河南卫视$LR•IPV4•12『线路12』 #EXTINF:-1 tvg-id="黑龙江卫视" tvg-name="黑龙江卫视" group-title="卫视",黑龙江卫视 http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226965/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7E7UiKL56-L86ihmTWaZ6csw%7EtP4-l0lmSfjwLWEfK_el1vH_mv-s1zo4AQJwdedaVwG9xkuFTDg8J26cwOrNJzn20BErrHdLhuZ9EzLUCD3PMW-OMx4MGteHV2vLeW6BqoY%2CEND$LR•IPV6•12『线路1』 #EXTINF:-1 tvg-id="黑龙江卫视" tvg-name="黑龙江卫视" group-title="卫视",黑龙江卫视 @@ -1068,381 +1072,383 @@ http://198.204.228.26/live/hljwshd.m3u8$LR•IPV4•12『线路4』 #EXTINF:-1 tvg-id="黑龙江卫视" tvg-name="黑龙江卫视" group-title="卫视",黑龙江卫视 http://112.27.235.94:8000/hls/48/index.m3u8$LR•IPV4•12『线路5』 #EXTINF:-1 tvg-id="黑龙江卫视" tvg-name="黑龙江卫视" group-title="卫视",黑龙江卫视 -http://23.237.228.134/live6/heilongjiang.m3u8$LR•IPV4•12『线路6』 +http://118.81.195.79:9003/hls/31/index.m3u8$LR•IPV4•12『线路6』 #EXTINF:-1 tvg-id="黑龙江卫视" tvg-name="黑龙江卫视" group-title="卫视",黑龙江卫视 -http://gfr.x3322.net:9901/tsfile/live/1094_1.m3u8$LR•IPV4•12『线路7』 +http://23.237.228.134/live6/heilongjiang.m3u8$LR•IPV4•12『线路7』 #EXTINF:-1 tvg-id="黑龙江卫视" tvg-name="黑龙江卫视" group-title="卫视",黑龙江卫视 -http://api.kkitv.itv888.cn:8080/hls/2a24lcvser/index.m3u8$LR•IPV4•12『线路8』 +http://gfr.x3322.net:9901/tsfile/live/1094_1.m3u8$LR•IPV4•12『线路8』 #EXTINF:-1 tvg-id="黑龙江卫视" tvg-name="黑龙江卫视" group-title="卫视",黑龙江卫视 -https://iptv.catvod.com/catvod.php?id=hljws$LR•IPV4•12『线路9』 +http://api.kkitv.itv888.cn:8080/hls/2a24lcvser/index.m3u8$LR•IPV4•12『线路9』 #EXTINF:-1 tvg-id="黑龙江卫视" tvg-name="黑龙江卫视" group-title="卫视",黑龙江卫视 -https://httop.top/ysp-黑龙江卫视$LR•IPV4•12『线路10』 +https://iptv.catvod.com/catvod.php?id=hljws$LR•IPV4•12『线路10』 #EXTINF:-1 tvg-id="黑龙江卫视" tvg-name="黑龙江卫视" group-title="卫视",黑龙江卫视 -http://iptv.huuc.edu.cn/hls/hljhd.m3u8$LR•IPV4•12『线路11』 +https://httop.top/ysp-黑龙江卫视$LR•IPV4•12『线路11』 #EXTINF:-1 tvg-id="黑龙江卫视" tvg-name="黑龙江卫视" group-title="卫视",黑龙江卫视 -http://118.81.195.79:9003/hls/31/index.m3u8$LR•IPV4•12『线路12』 +http://iptv.huuc.edu.cn/hls/hljhd.m3u8$LR•IPV4•12『线路12』 #EXTINF:-1 tvg-id="湖北卫视" tvg-name="湖北卫视" group-title="卫视",湖北卫视 -http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226952/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7EREB40lnZnCEwjRy7LZuhIQ%7EtP4-l0lmSfjwLWEfK_el1vH_mv-s1zo4AQJwdedaVwG9xkuFTDg8J26cwOrNJzn20BErrHdLhuZ9EzLUCD3PMW-OMx4MGteHV2vLeW6BqoY%2CEND$LR•IPV6•14『线路1』 +http://t.061899.xyz/tl/tl.php?id=hubws$LR•IPV4•14『线路1』 #EXTINF:-1 tvg-id="湖北卫视" tvg-name="湖北卫视" group-title="卫视",湖北卫视 -http://112.27.235.94:8000/hls/41/index.m3u8$LR•IPV4•14『线路2』 +http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226952/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7EREB40lnZnCEwjRy7LZuhIQ%7EtP4-l0lmSfjwLWEfK_el1vH_mv-s1zo4AQJwdedaVwG9xkuFTDg8J26cwOrNJzn20BErrHdLhuZ9EzLUCD3PMW-OMx4MGteHV2vLeW6BqoY%2CEND$LR•IPV6•14『线路2』 #EXTINF:-1 tvg-id="湖北卫视" tvg-name="湖北卫视" group-title="卫视",湖北卫视 -http://38.75.136.137:98/gslb/dsdqpub/hbwshd.m3u8?auth=testpub$LR•IPV4•14『线路3』 +http://118.81.195.79:9003/hls/32/index.m3u8$LR•IPV4•14『线路3』 #EXTINF:-1 tvg-id="湖北卫视" tvg-name="湖北卫视" group-title="卫视",湖北卫视 -http://23.237.228.134/live6/hubei.m3u8$LR•IPV4•14『线路4』 +http://38.75.136.137:98/gslb/dsdqpub/hbwshd.m3u8?auth=testpub$LR•IPV4•14『线路4』 #EXTINF:-1 tvg-id="湖北卫视" tvg-name="湖北卫视" group-title="卫视",湖北卫视 -http://43.251.226.89:8080/play/46.m3u8$LR•IPV4•14『线路5』 +http://23.237.228.134/live6/hubei.m3u8$LR•IPV4•14『线路5』 #EXTINF:-1 tvg-id="湖北卫视" tvg-name="湖北卫视" group-title="卫视",湖北卫视 -http://gfr.x3322.net:9901/tsfile/live/1088_1.m3u8$LR•IPV4•14『线路6』 +http://43.251.226.89:8080/play/46.m3u8$LR•IPV4•14『线路6』 #EXTINF:-1 tvg-id="湖北卫视" tvg-name="湖北卫视" group-title="卫视",湖北卫视 -http://api.kkitv.itv888.cn:8080/hls/qwummpaoaq/index.m3u8$LR•IPV4•14『线路7』 +http://gfr.x3322.net:9901/tsfile/live/1088_1.m3u8$LR•IPV4•14『线路7』 #EXTINF:-1 tvg-id="湖北卫视" tvg-name="湖北卫视" group-title="卫视",湖北卫视 -https://iptv.catvod.com/catvod.php?id=hubws$LR•IPV4•14『线路8』 +http://api.kkitv.itv888.cn:8080/hls/qwummpaoaq/index.m3u8$LR•IPV4•14『线路8』 #EXTINF:-1 tvg-id="湖北卫视" tvg-name="湖北卫视" group-title="卫视",湖北卫视 -https://httop.top/ysp-湖北卫视$LR•IPV4•14『线路9』 +https://iptv.catvod.com/catvod.php?id=hubws$LR•IPV4•14『线路9』 #EXTINF:-1 tvg-id="湖北卫视" tvg-name="湖北卫视" group-title="卫视",湖北卫视 -http://iptv.huuc.edu.cn/hls/hbhd.m3u8$LR•IPV4•14『线路10』 +https://httop.top/ysp-湖北卫视$LR•IPV4•14『线路10』 #EXTINF:-1 tvg-id="湖北卫视" tvg-name="湖北卫视" group-title="卫视",湖北卫视 -http://mg.hmysapp.cn:177/ckmg/zb.php?id=hubws$LR•IPV4•14『线路11』 +http://iptv.huuc.edu.cn/hls/hbhd.m3u8$LR•IPV4•14『线路11』 #EXTINF:-1 tvg-id="湖北卫视" tvg-name="湖北卫视" group-title="卫视",湖北卫视 -http://153.0.171.163:9901/tsfile/live/0132_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•14『线路12』 +http://mg.hmysapp.cn:177/ckmg/zb.php?id=hubws$LR•IPV4•14『线路12』 #EXTINF:-1 tvg-id="湖北卫视" tvg-name="湖北卫视" group-title="卫视",湖北卫视 -http://www.745612.xyz:7788/rtp/235.254.198.72:1564$LR•IPV4•14『线路13』 +http://153.0.171.163:9901/tsfile/live/0132_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•14『线路13』 #EXTINF:-1 tvg-id="湖北卫视" tvg-name="湖北卫视" group-title="卫视",湖北卫视 -http://118.81.195.79:9003/hls/32/index.m3u8$LR•IPV4•14『线路14』 +http://www.745612.xyz:7788/rtp/235.254.198.72:1564$LR•IPV4•14『线路14』 #EXTINF:-1 tvg-id="江西卫视" tvg-name="江西卫视" group-title="卫视",江西卫视 -https://jsp-tv-live.jxtvcn.com.cn/live-jsp/tv_jxtv6.m3u8?t=1784004704&token=67a59c29-de6e-4407-90c8-39f7e099b3db&d=0a7a8c487c454bc7bb02a60298283c5e$LR•IPV4•16『线路1』 +http://t.061899.xyz/tl/tl.php?id=jxws$LR•IPV4•15『线路1』 #EXTINF:-1 tvg-id="江西卫视" tvg-name="江西卫视" group-title="卫视",江西卫视 -http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226956/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7Ei6ZIpVizXlewg-YfGvH8dA%7EtP4-l0lmSfjwLWEfK_el1vH_mv-s1zo4AQJwdedaVwG9xkuFTDg8J26cwOrNJzn20BErrHdLhuZ9EzLUCD3PMW-OMx4MGteHV2vLeW6BqoY%2CEND$LR•IPV6•16『线路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•15『线路2』 #EXTINF:-1 tvg-id="江西卫视" tvg-name="江西卫视" group-title="卫视",江西卫视 -http://101.66.199.247:9901/tsfile/live/0138_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•16『线路3』 +http://101.66.199.247:9901/tsfile/live/0138_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•15『线路3』 #EXTINF:-1 tvg-id="江西卫视" tvg-name="江西卫视" group-title="卫视",江西卫视 -http://112.123.243.37:50085/tsfile/live/0132_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•16『线路4』 +http://112.123.243.37:50085/tsfile/live/0132_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•15『线路4』 #EXTINF:-1 tvg-id="江西卫视" tvg-name="江西卫视" group-title="卫视",江西卫视 -http://124.228.160.210:9901/tsfile/live/0138_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•16『线路5』 +http://124.228.160.210:9901/tsfile/live/0138_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•15『线路5』 #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•16『线路6』 +http://153.0.171.163:9901/tsfile/live/0138_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•15『线路6』 #EXTINF:-1 tvg-id="江西卫视" tvg-name="江西卫视" group-title="卫视",江西卫视 -http://112.27.235.94:8000/hls/44/index.m3u8$LR•IPV4•16『线路7』 +http://39.134.115.163:8080/PLTV/88888910/224/3221225705/index.m3u8$LR•IPV4•15『线路7』 #EXTINF:-1 tvg-id="江西卫视" tvg-name="江西卫视" group-title="卫视",江西卫视 -http://38.75.136.137:98/gslb/dsdqpub/jxwshd.m3u8?auth=testpub$LR•IPV4•16『线路8』 +http://38.75.136.137:98/gslb/dsdqpub/jxwshd.m3u8?auth=testpub$LR•IPV4•15『线路8』 #EXTINF:-1 tvg-id="江西卫视" tvg-name="江西卫视" group-title="卫视",江西卫视 -http://23.237.228.134/live8/jiangxi.m3u8$LR•IPV4•16『线路9』 +http://23.237.228.134/live8/jiangxi.m3u8$LR•IPV4•15『线路9』 #EXTINF:-1 tvg-id="江西卫视" tvg-name="江西卫视" group-title="卫视",江西卫视 -http://43.251.226.89:8080/play/43.m3u8$LR•IPV4•16『线路10』 +http://43.251.226.89:8080/play/43.m3u8$LR•IPV4•15『线路10』 #EXTINF:-1 tvg-id="江西卫视" tvg-name="江西卫视" group-title="卫视",江西卫视 -http://api.kkitv.itv888.cn:8080/hls/pv0np60bpin/index.m3u8$LR•IPV4•16『线路11』 +http://api.kkitv.itv888.cn:8080/hls/pv0np60bpin/index.m3u8$LR•IPV4•15『线路11』 #EXTINF:-1 tvg-id="江西卫视" tvg-name="江西卫视" group-title="卫视",江西卫视 -https://iptv.catvod.com/catvod.php?id=jxws$LR•IPV4•16『线路12』 +https://iptv.catvod.com/catvod.php?id=jxws$LR•IPV4•15『线路12』 #EXTINF:-1 tvg-id="江西卫视" tvg-name="江西卫视" group-title="卫视",江西卫视 -https://httop.top/ysp-江西卫视$LR•IPV4•16『线路13』 +https://httop.top/ysp-江西卫视$LR•IPV4•15『线路13』 #EXTINF:-1 tvg-id="江西卫视" tvg-name="江西卫视" group-title="卫视",江西卫视 -http://iptv.huuc.edu.cn/hls/jxhd.m3u8$LR•IPV4•16『线路14』 +http://iptv.huuc.edu.cn/hls/jxhd.m3u8$LR•IPV4•15『线路14』 #EXTINF:-1 tvg-id="江西卫视" tvg-name="江西卫视" group-title="卫视",江西卫视 -http://mg.hmysapp.cn:177/ckmg/zb.php?id=jxws$LR•IPV4•16『线路15』 -#EXTINF:-1 tvg-id="江西卫视" tvg-name="江西卫视" group-title="卫视",江西卫视 -http://39.134.115.163:8080/PLTV/88888910/224/3221225705/index.m3u8$LR•IPV4•16『线路16』 +http://mg.hmysapp.cn:177/ckmg/zb.php?id=jxws$LR•IPV4•15『线路15』 #EXTINF:-1 tvg-id="吉林卫视" tvg-name="吉林卫视" group-title="卫视",吉林卫视 -http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221227015/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7EW5-3AVdwD5KlUpuA4mz7Cg%7EtP4-l0lmSfjwLWEfK_el1vH_mv-s1zo4AQJwdedaVwG9xkuFTDg8J26cwOrNJzn20BErrHdLhuZ9EzLUCD3PMW-OMx4MGteHV2vLeW6BqoY%2CEND$LR•IPV6•17『线路1』 +http://t.061899.xyz/tl/tl.php?id=jlws$LR•IPV4•17『线路1』 #EXTINF:-1 tvg-id="吉林卫视" tvg-name="吉林卫视" group-title="卫视",吉林卫视 -http://204.12.221.218:8181/3m1080p/jlws.m3u8$LR•IPV4•17『线路2』 +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•17『线路2』 #EXTINF:-1 tvg-id="吉林卫视" tvg-name="吉林卫视" group-title="卫视",吉林卫视 -http://38.75.136.137:98/gslb/dsdqpub/jlwshd.m3u8?auth=testpub$LR•IPV4•17『线路3』 +http://204.12.221.218:8181/3m1080p/jlws.m3u8$LR•IPV4•17『线路3』 #EXTINF:-1 tvg-id="吉林卫视" tvg-name="吉林卫视" group-title="卫视",吉林卫视 -http://112.123.243.37:50085/tsfile/live/0116_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•17『线路4』 +http://38.75.136.137:98/gslb/dsdqpub/jlwshd.m3u8?auth=testpub$LR•IPV4•17『线路4』 #EXTINF:-1 tvg-id="吉林卫视" tvg-name="吉林卫视" group-title="卫视",吉林卫视 -http://101.66.199.247:9901/tsfile/live/0116_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•17『线路5』 +http://112.123.243.37:50085/tsfile/live/0116_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•17『线路5』 #EXTINF:-1 tvg-id="吉林卫视" tvg-name="吉林卫视" group-title="卫视",吉林卫视 -http://101.66.194.82:9901/tsfile/live/0116_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•17『线路6』 +http://101.66.199.247:9901/tsfile/live/0116_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•17『线路6』 #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•17『线路7』 +http://101.66.194.82:9901/tsfile/live/0116_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•17『线路7』 #EXTINF:-1 tvg-id="吉林卫视" tvg-name="吉林卫视" group-title="卫视",吉林卫视 -http://101.66.194.63:9901/tsfile/live/0116_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•17『线路8』 +http://36.136.38.87:9901/tsfile/live/0116_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•17『线路8』 #EXTINF:-1 tvg-id="吉林卫视" tvg-name="吉林卫视" group-title="卫视",吉林卫视 -http://101.66.195.138:9901/tsfile/live/0116_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•17『线路9』 +http://101.66.194.63:9901/tsfile/live/0116_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•17『线路9』 #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•17『线路10』 +http://101.66.195.138:9901/tsfile/live/0116_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•17『线路10』 #EXTINF:-1 tvg-id="吉林卫视" tvg-name="吉林卫视" group-title="卫视",吉林卫视 -http://123.130.84.106:8154/tsfile/live/0116_1.m3u8$LR•IPV4•17『线路11』 +http://153.0.171.163:9901/tsfile/live/0116_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•17『线路11』 #EXTINF:-1 tvg-id="吉林卫视" tvg-name="吉林卫视" group-title="卫视",吉林卫视 -http://23.237.228.134/live8/jilin.m3u8$LR•IPV4•17『线路12』 +http://118.81.195.79:9003/hls/34/index.m3u8$LR•IPV4•17『线路12』 #EXTINF:-1 tvg-id="吉林卫视" tvg-name="吉林卫视" group-title="卫视",吉林卫视 -http://43.251.226.89:8080/play/47.m3u8$LR•IPV4•17『线路13』 +http://23.237.228.134/live8/jilin.m3u8$LR•IPV4•17『线路13』 #EXTINF:-1 tvg-id="吉林卫视" tvg-name="吉林卫视" group-title="卫视",吉林卫视 -http://api.kkitv.itv888.cn:8080/hls/b6dl8yuvu/index.m3u$LR•IPV4•17『线路14』 +http://43.251.226.89:8080/play/47.m3u8$LR•IPV4•17『线路14』 #EXTINF:-1 tvg-id="吉林卫视" tvg-name="吉林卫视" group-title="卫视",吉林卫视 -https://iptv.catvod.com/catvod.php?id=jlws$LR•IPV4•17『线路15』 +http://api.kkitv.itv888.cn:8080/hls/b6dl8yuvu/index.m3u$LR•IPV4•17『线路15』 #EXTINF:-1 tvg-id="吉林卫视" tvg-name="吉林卫视" group-title="卫视",吉林卫视 -https://httop.top/ysp-吉林卫视$LR•IPV4•17『线路16』 +https://iptv.catvod.com/catvod.php?id=jlws$LR•IPV4•17『线路16』 #EXTINF:-1 tvg-id="吉林卫视" tvg-name="吉林卫视" group-title="卫视",吉林卫视 -http://118.81.195.79:9003/hls/34/index.m3u8$LR•IPV4•17『线路17』 +https://httop.top/ysp-吉林卫视$LR•IPV4•17『线路17』 #EXTINF:-1 tvg-id="内蒙古卫视" tvg-name="内蒙古卫视" group-title="卫视",内蒙古卫视 -http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221227018/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7ErN_hoRDwApMKnJqiNHvn9w%7EtP4-l0lmSfjwLWEfK_el1vH_mv-s1zo4AQJwdedaVwG9xkuFTDg8J26cwOrNJzn20BErrHdLhuZ9EzLUCD3PMW-OMx4MGteHV2vLeW6BqoY%2CEND$LR•IPV6•14『线路1』 +http://t.061899.xyz/tl/tl.php?id=nmws$LR•IPV4•14『线路1』 #EXTINF:-1 tvg-id="内蒙古卫视" tvg-name="内蒙古卫视" group-title="卫视",内蒙古卫视 -http://198.204.228.26/live/nmgws.m3u8$LR•IPV4•14『线路2』 +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•14『线路2』 #EXTINF:-1 tvg-id="内蒙古卫视" tvg-name="内蒙古卫视" group-title="卫视",内蒙古卫视 -http://192.151.150.154/live/nmgws.m3u8$LR•IPV4•14『线路3』 +http://198.204.228.26/live/nmgws.m3u8$LR•IPV4•14『线路3』 #EXTINF:-1 tvg-id="内蒙古卫视" tvg-name="内蒙古卫视" group-title="卫视",内蒙古卫视 -http://112.123.243.37:50085/tsfile/live/0118_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•14『线路4』 +http://192.151.150.154/live/nmgws.m3u8$LR•IPV4•14『线路4』 #EXTINF:-1 tvg-id="内蒙古卫视" tvg-name="内蒙古卫视" group-title="卫视",内蒙古卫视 -http://59.39.89.130:60901/tsfile/live/0125_21.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•14『线路5』 +http://112.123.243.37:50085/tsfile/live/0118_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•14『线路5』 #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•14『线路6』 +http://59.39.89.130:60901/tsfile/live/0125_21.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•14『线路6』 #EXTINF:-1 tvg-id="内蒙古卫视" tvg-name="内蒙古卫视" group-title="卫视",内蒙古卫视 -http://112.27.235.94:8000/hls/49/index.m3u8$LR•IPV4•14『线路7』 +http://153.0.171.163:9901/tsfile/live/0109_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•14『线路7』 #EXTINF:-1 tvg-id="内蒙古卫视" tvg-name="内蒙古卫视" group-title="卫视",内蒙古卫视 -http://23.237.228.134/live8/neimenggu.m3u8$LR•IPV4•14『线路8』 +http://39.134.115.163:8080/PLTV/88888910/224/3221225667/index.m3u8$LR•IPV4•14『线路8』 #EXTINF:-1 tvg-id="内蒙古卫视" tvg-name="内蒙古卫视" group-title="卫视",内蒙古卫视 -https://iptv.catvod.com/catvod.php?id=nmws$LR•IPV4•14『线路9』 +http://117.169.120.140:8080/live/neimenggustv/.m3u8$LR•IPV4•14『线路9』 #EXTINF:-1 tvg-id="内蒙古卫视" tvg-name="内蒙古卫视" group-title="卫视",内蒙古卫视 -https://httop.top/ysp-内蒙古卫视$LR•IPV4•14『线路10』 +http://183.207.248.71/gitv/live1/G_NEIMENGGU/G_NEIMENGGU$LR•IPV4•14『线路10』 #EXTINF:-1 tvg-id="内蒙古卫视" tvg-name="内蒙古卫视" group-title="卫视",内蒙古卫视 -http://39.134.115.163:8080/PLTV/88888910/224/3221225667/index.m3u8$LR•IPV4•14『线路11』 +http://223.110.245.173/PLTV/4/224/3221225836/index.m3u8$LR•IPV4•14『线路11』 #EXTINF:-1 tvg-id="内蒙古卫视" tvg-name="内蒙古卫视" group-title="卫视",内蒙古卫视 -http://117.169.120.140:8080/live/neimenggustv/.m3u8$LR•IPV4•14『线路12』 +http://23.237.228.134/live8/neimenggu.m3u8$LR•IPV4•14『线路12』 #EXTINF:-1 tvg-id="内蒙古卫视" tvg-name="内蒙古卫视" group-title="卫视",内蒙古卫视 -http://183.207.248.71/gitv/live1/G_NEIMENGGU/G_NEIMENGGU$LR•IPV4•14『线路13』 +https://iptv.catvod.com/catvod.php?id=nmws$LR•IPV4•14『线路13』 #EXTINF:-1 tvg-id="内蒙古卫视" tvg-name="内蒙古卫视" group-title="卫视",内蒙古卫视 -http://223.110.245.173/PLTV/4/224/3221225836/index.m3u8$LR•IPV4•14『线路14』 +https://httop.top/ysp-内蒙古卫视$LR•IPV4•14『线路14』 #EXTINF:-1 tvg-id="辽宁卫视" tvg-name="辽宁卫视" group-title="卫视",辽宁卫视 -http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226966/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7E6qJH8Fd-zgCGx3P-Ce86cA%7EtP4-l0lmSfjwLWEfK_el1vH_mv-s1zo4AQJwdedaVwG9xkuFTDg8J26cwOrNJzn20BErrHdLhuZ9EzLUCD3PMW-OMx4MGteHV2vLeW6BqoY%2CEND$LR•IPV6•16『线路1』 +http://t.061899.xyz/tl/tl.php?id=lnws$LR•IPV4•16『线路1』 #EXTINF:-1 tvg-id="辽宁卫视" tvg-name="辽宁卫视" group-title="卫视",辽宁卫视 -http://101.66.195.138:9901/tsfile/live/0121_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•16『线路2』 +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•16『线路2』 #EXTINF:-1 tvg-id="辽宁卫视" tvg-name="辽宁卫视" group-title="卫视",辽宁卫视 -http://107.150.60.122/live/lnwshd.m3u8$LR•IPV4•16『线路3』 +http://101.66.195.138:9901/tsfile/live/0121_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•16『线路3』 #EXTINF:-1 tvg-id="辽宁卫视" tvg-name="辽宁卫视" group-title="卫视",辽宁卫视 -http://204.12.221.218:8181/3m1080p/lnws.m3u8$LR•IPV4•16『线路4』 +http://107.150.60.122/live/lnwshd.m3u8$LR•IPV4•16『线路4』 #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•16『线路5』 +http://204.12.221.218:8181/3m1080p/lnws.m3u8$LR•IPV4•16『线路5』 #EXTINF:-1 tvg-id="辽宁卫视" tvg-name="辽宁卫视" group-title="卫视",辽宁卫视 -http://112.27.235.94:8000/hls/47/index.m3u8$LR•IPV4•16『线路6』 +http://153.0.171.163:9901/tsfile/live/0121_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•16『线路6』 #EXTINF:-1 tvg-id="辽宁卫视" tvg-name="辽宁卫视" group-title="卫视",辽宁卫视 -http://38.75.136.137:98/gslb/dsdqpub/lnwshd.m3u8?auth=testpub$LR•IPV4•16『线路7』 +http://39.134.39.37/PLTV/88888888/224/3221226209/index.m3u8$LR•IPV4•16『线路7』 #EXTINF:-1 tvg-id="辽宁卫视" tvg-name="辽宁卫视" group-title="卫视",辽宁卫视 -https://hlsbkmgsplive.miguvideo.com/migu/kailu/lnwshd265/54/20200407/01.m3u8?&HlsSubType=&encrypt=$LR•IPV4•16『线路8』 +http://38.75.136.137:98/gslb/dsdqpub/lnwshd.m3u8?auth=testpub$LR•IPV4•16『线路8』 #EXTINF:-1 tvg-id="辽宁卫视" tvg-name="辽宁卫视" group-title="卫视",辽宁卫视 -http://23.237.228.134/live8/liaoning.m3u8$LR•IPV4•16『线路9』 +https://hlsbkmgsplive.miguvideo.com/migu/kailu/lnwshd265/54/20200407/01.m3u8?&HlsSubType=&encrypt=$LR•IPV4•16『线路9』 #EXTINF:-1 tvg-id="辽宁卫视" tvg-name="辽宁卫视" group-title="卫视",辽宁卫视 -http://43.251.226.89:8080/play/41.m3u8$LR•IPV4•16『线路10』 +http://23.237.228.134/live8/liaoning.m3u8$LR•IPV4•16『线路10』 #EXTINF:-1 tvg-id="辽宁卫视" tvg-name="辽宁卫视" group-title="卫视",辽宁卫视 -http://gfr.x3322.net:9901/tsfile/live/1097_1.m3u8$LR•IPV4•16『线路11』 +http://43.251.226.89:8080/play/41.m3u8$LR•IPV4•16『线路11』 #EXTINF:-1 tvg-id="辽宁卫视" tvg-name="辽宁卫视" group-title="卫视",辽宁卫视 -http://api.kkitv.itv888.cn:8080/hls/iibq0absdjr/index.m3u8$LR•IPV4•16『线路12』 +http://gfr.x3322.net:9901/tsfile/live/1097_1.m3u8$LR•IPV4•16『线路12』 #EXTINF:-1 tvg-id="辽宁卫视" tvg-name="辽宁卫视" group-title="卫视",辽宁卫视 -https://iptv.catvod.com/catvod.php?id=lnws$LR•IPV4•16『线路13』 +http://api.kkitv.itv888.cn:8080/hls/iibq0absdjr/index.m3u8$LR•IPV4•16『线路13』 #EXTINF:-1 tvg-id="辽宁卫视" tvg-name="辽宁卫视" group-title="卫视",辽宁卫视 -https://httop.top/ysp-辽宁卫视$LR•IPV4•16『线路14』 +https://iptv.catvod.com/catvod.php?id=lnws$LR•IPV4•16『线路14』 #EXTINF:-1 tvg-id="辽宁卫视" tvg-name="辽宁卫视" group-title="卫视",辽宁卫视 -http://iptv.huuc.edu.cn/hls/lnhd.m3u8$LR•IPV4•16『线路15』 +https://httop.top/ysp-辽宁卫视$LR•IPV4•16『线路15』 #EXTINF:-1 tvg-id="辽宁卫视" tvg-name="辽宁卫视" group-title="卫视",辽宁卫视 -http://39.134.39.37/PLTV/88888888/224/3221226209/index.m3u8$LR•IPV4•16『线路16』 +http://iptv.huuc.edu.cn/hls/lnhd.m3u8$LR•IPV4•16『线路16』 #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•10『线路1』 +http://t.061899.xyz/tl/tl.php?id=nxws$LR•IPV4•10『线路1』 #EXTINF:-1 tvg-id="宁夏卫视" tvg-name="宁夏卫视" group-title="卫视",宁夏卫视 -http://107.150.60.122/live/nxws.m3u8$LR•IPV4•10『线路2』 +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•10『线路2』 #EXTINF:-1 tvg-id="宁夏卫视" tvg-name="宁夏卫视" group-title="卫视",宁夏卫视 -http://198.204.228.26/live/nxws.m3u8$LR•IPV4•10『线路3』 +http://107.150.60.122/live/nxws.m3u8$LR•IPV4•10『线路3』 #EXTINF:-1 tvg-id="宁夏卫视" tvg-name="宁夏卫视" group-title="卫视",宁夏卫视 -http://112.123.243.37:50085/tsfile/live/0125_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•10『线路4』 +http://198.204.228.26/live/nxws.m3u8$LR•IPV4•10『线路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•10『线路5』 +http://112.123.243.37:50085/tsfile/live/0125_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•10『线路5』 #EXTINF:-1 tvg-id="宁夏卫视" tvg-name="宁夏卫视" group-title="卫视",宁夏卫视 -http://120.76.248.139/live/bfgd/4200000118.m3u8$LR•IPV4•10『线路6』 +http://153.0.171.163:9901/tsfile/live/0112_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•10『线路6』 #EXTINF:-1 tvg-id="宁夏卫视" tvg-name="宁夏卫视" group-title="卫视",宁夏卫视 -http://43.251.226.89:8080/play/54.m3u8$LR•IPV4•10『线路7』 +http://39.134.115.163:8080/PLTV/88888910/224/3221225726/index.m3u8$LR•IPV4•10『线路7』 #EXTINF:-1 tvg-id="宁夏卫视" tvg-name="宁夏卫视" group-title="卫视",宁夏卫视 -https://iptv.catvod.com/catvod.php?id=nxws$LR•IPV4•10『线路8』 +http://43.251.226.89:8080/play/54.m3u8$LR•IPV4•10『线路8』 #EXTINF:-1 tvg-id="宁夏卫视" tvg-name="宁夏卫视" group-title="卫视",宁夏卫视 -https://httop.top/ysp-宁夏卫视$LR•IPV4•10『线路9』 +https://iptv.catvod.com/catvod.php?id=nxws$LR•IPV4•10『线路9』 #EXTINF:-1 tvg-id="宁夏卫视" tvg-name="宁夏卫视" group-title="卫视",宁夏卫视 -http://39.134.115.163:8080/PLTV/88888910/224/3221225726/index.m3u8$LR•IPV4•10『线路10』 +https://httop.top/ysp-宁夏卫视$LR•IPV4•10『线路10』 #EXTINF:-1 tvg-id="青海卫视" tvg-name="青海卫视" group-title="卫视",青海卫视 -http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221227017/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7EacviHy_ucMT27Ymf2iLtZA%7EtP4-l0lmSfjwLWEfK_el1vH_mv-s1zo4AQJwdedaVwG9xkuFTDg8J26cwOrNJzn20BErrHdLhuZ9EzLUCD3PMW-OMx4MGteHV2vLeW6BqoY%2CEND$LR•IPV6•10『线路1』 +http://t.061899.xyz/tl/tl.php?id=qhws$LR•IPV4•10『线路1』 #EXTINF:-1 tvg-id="青海卫视" tvg-name="青海卫视" group-title="卫视",青海卫视 -http://63.141.230.178:82/gslb/zbdq5.m3u8?id=qhws$LR•IPV4•10『线路2』 +http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221227017/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7EacviHy_ucMT27Ymf2iLtZA%7EtP4-l0lmSfjwLWEfK_el1vH_mv-s1zo4AQJwdedaVwG9xkuFTDg8J26cwOrNJzn20BErrHdLhuZ9EzLUCD3PMW-OMx4MGteHV2vLeW6BqoY%2CEND$LR•IPV6•10『线路2』 #EXTINF:-1 tvg-id="青海卫视" tvg-name="青海卫视" group-title="卫视",青海卫视 -http://107.150.60.122/live/qhws.m3u8$LR•IPV4•10『线路3』 +http://63.141.230.178:82/gslb/zbdq5.m3u8?id=qhws$LR•IPV4•10『线路3』 #EXTINF:-1 tvg-id="青海卫视" tvg-name="青海卫视" group-title="卫视",青海卫视 -http://153.0.171.163:9901/tsfile/live/0140_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•10『线路4』 +http://107.150.60.122/live/qhws.m3u8$LR•IPV4•10『线路4』 #EXTINF:-1 tvg-id="青海卫视" tvg-name="青海卫视" group-title="卫视",青海卫视 -http://123.130.84.106:8154/tsfile/live/0140_1.m3u8$LR•IPV4•10『线路5』 +http://153.0.171.163:9901/tsfile/live/0140_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•10『线路5』 #EXTINF:-1 tvg-id="青海卫视" tvg-name="青海卫视" group-title="卫视",青海卫视 -http://23.237.228.134/live8/qinghai.m3u8$LR•IPV4•10『线路6』 +http://live.geermurmt.com/qhws/sd/live.m3u8$LR•IPV4•10『线路6』 #EXTINF:-1 tvg-id="青海卫视" tvg-name="青海卫视" group-title="卫视",青海卫视 -http://43.251.226.89:8080/play/48.m3u8$LR•IPV4•10『线路7』 +http://23.237.228.134/live8/qinghai.m3u8$LR•IPV4•10『线路7』 #EXTINF:-1 tvg-id="青海卫视" tvg-name="青海卫视" group-title="卫视",青海卫视 -https://iptv.catvod.com/catvod.php?id=qhws$LR•IPV4•10『线路8』 +http://43.251.226.89:8080/play/48.m3u8$LR•IPV4•10『线路8』 #EXTINF:-1 tvg-id="青海卫视" tvg-name="青海卫视" group-title="卫视",青海卫视 -https://httop.top/ysp-青海卫视$LR•IPV4•10『线路9』 +https://iptv.catvod.com/catvod.php?id=qhws$LR•IPV4•10『线路9』 #EXTINF:-1 tvg-id="青海卫视" tvg-name="青海卫视" group-title="卫视",青海卫视 -http://live.geermurmt.com/qhws/sd/live.m3u8$LR•IPV4•10『线路10』 +https://httop.top/ysp-青海卫视$LR•IPV4•10『线路10』 #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•17『线路1』 +http://t.061899.xyz/tl/tl.php?id=sdws$LR•IPV4•17『线路1』 #EXTINF:-1 tvg-id="山东卫视" tvg-name="山东卫视" group-title="卫视",山东卫视 -http://207.56.13.146:81/cdnlive/sdws.m3u8$LR•IPV4•17『线路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•17『线路2』 #EXTINF:-1 tvg-id="山东卫视" tvg-name="山东卫视" group-title="卫视",山东卫视 -http://63.141.230.178:82/gslb/zbdq5.m3u8?id=sdwshd$LR•IPV4•17『线路3』 +http://207.56.13.146:81/cdnlive/sdws.m3u8$LR•IPV4•17『线路3』 #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•17『线路4』 +http://63.141.230.178:82/gslb/zbdq5.m3u8?id=sdwshd$LR•IPV4•17『线路4』 #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•17『线路5』 +http://120.198.95.220:9901/tsfile/live/1063_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•17『线路5』 #EXTINF:-1 tvg-id="山东卫视" tvg-name="山东卫视" group-title="卫视",山东卫视 -http://112.27.235.94:8000/hls/34/index.m3u8$LR•IPV4•17『线路6』 +http://153.0.171.163:9901/tsfile/live/0131_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•17『线路6』 #EXTINF:-1 tvg-id="山东卫视" tvg-name="山东卫视" group-title="卫视",山东卫视 -http://38.75.136.137:98/gslb/dsdqpub/sdwshd.m3u8?auth=testpub$LR•IPV4•17『线路7』 +http://125.210.152.18:9090/live/SDWSHD_H265.m3u8$LR•IPV4•17『线路7』 #EXTINF:-1 tvg-id="山东卫视" tvg-name="山东卫视" group-title="卫视",山东卫视 -https://hlsbkmgsplive.miguvideo.com/wd_r4/yg/shandongwshd/3000/01.m3u8?&HlsSubType=&encrypt=$LR•IPV4•17『线路8』 +http://39.134.115.163:8080/PLTV/88888910/224/3221225697/index.m3u8$LR•IPV4•17『线路8』 #EXTINF:-1 tvg-id="山东卫视" tvg-name="山东卫视" group-title="卫视",山东卫视 -https://hlsbkmgsplive.miguvideo.com/wd-shandonghd-1200/01.m3u8?&HlsSubType=&encrypt=$LR•IPV4•17『线路9』 +http://38.75.136.137:98/gslb/dsdqpub/sdwshd.m3u8?auth=testpub$LR•IPV4•17『线路9』 #EXTINF:-1 tvg-id="山东卫视" tvg-name="山东卫视" group-title="卫视",山东卫视 -http://23.237.228.134/live8/shandong.m3u8$LR•IPV4•17『线路10』 +https://hlsbkmgsplive.miguvideo.com/wd_r4/yg/shandongwshd/3000/01.m3u8?&HlsSubType=&encrypt=$LR•IPV4•17『线路10』 #EXTINF:-1 tvg-id="山东卫视" tvg-name="山东卫视" group-title="卫视",山东卫视 -http://gfr.x3322.net:9901/tsfile/live/1098_1.m3u8$LR•IPV4•17『线路11』 +https://hlsbkmgsplive.miguvideo.com/wd-shandonghd-1200/01.m3u8?&HlsSubType=&encrypt=$LR•IPV4•17『线路11』 #EXTINF:-1 tvg-id="山东卫视" tvg-name="山东卫视" group-title="卫视",山东卫视 -http://api.kkitv.itv888.cn:8080/hls/6gcdai13om5/index.m3u8$LR•IPV4•17『线路12』 +http://23.237.228.134/live8/shandong.m3u8$LR•IPV4•17『线路12』 #EXTINF:-1 tvg-id="山东卫视" tvg-name="山东卫视" group-title="卫视",山东卫视 -https://iptv.catvod.com/catvod.php?id=sdws$LR•IPV4•17『线路13』 +http://gfr.x3322.net:9901/tsfile/live/1098_1.m3u8$LR•IPV4•17『线路13』 #EXTINF:-1 tvg-id="山东卫视" tvg-name="山东卫视" group-title="卫视",山东卫视 -https://httop.top/ysp-山东卫视$LR•IPV4•17『线路14』 +http://api.kkitv.itv888.cn:8080/hls/6gcdai13om5/index.m3u8$LR•IPV4•17『线路14』 #EXTINF:-1 tvg-id="山东卫视" tvg-name="山东卫视" group-title="卫视",山东卫视 -http://iptv.huuc.edu.cn/hls/sdhd.m3u8$LR•IPV4•17『线路15』 +https://iptv.catvod.com/catvod.php?id=sdws$LR•IPV4•17『线路15』 #EXTINF:-1 tvg-id="山东卫视" tvg-name="山东卫视" group-title="卫视",山东卫视 -http://125.210.152.18:9090/live/SDWSHD_H265.m3u8$LR•IPV4•17『线路16』 +https://httop.top/ysp-山东卫视$LR•IPV4•17『线路16』 #EXTINF:-1 tvg-id="山东卫视" tvg-name="山东卫视" group-title="卫视",山东卫视 -http://39.134.115.163:8080/PLTV/88888910/224/3221225697/index.m3u8$LR•IPV4•17『线路17』 +http://iptv.huuc.edu.cn/hls/sdhd.m3u8$LR•IPV4•17『线路17』 #EXTINF:-1 tvg-id="天津卫视" tvg-name="天津卫视" group-title="卫视",天津卫视 -https://piccpndks.v.kcdnvip.com/audio/tianjin_2/index.m3u8$LR•IPV4•18『线路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•18『线路1』 #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•18『线路2』 +http://204.12.221.218:8181/3m1080p/tjws.m3u8$LR•IPV4•18『线路2』 #EXTINF:-1 tvg-id="天津卫视" tvg-name="天津卫视" group-title="卫视",天津卫视 -http://204.12.221.218:8181/3m1080p/tjws.m3u8$LR•IPV4•18『线路3』 +http://107.150.60.122/live/tjwshd.m3u8$LR•IPV4•18『线路3』 #EXTINF:-1 tvg-id="天津卫视" tvg-name="天津卫视" group-title="卫视",天津卫视 -http://107.150.60.122/live/tjwshd.m3u8$LR•IPV4•18『线路4』 +http://192.151.150.154/live/tjwshd.m3u8$LR•IPV4•18『线路4』 #EXTINF:-1 tvg-id="天津卫视" tvg-name="天津卫视" group-title="卫视",天津卫视 -http://192.151.150.154/live/tjwshd.m3u8$LR•IPV4•18『线路5』 +http://38.75.136.137:98/gslb/dsdqpub/tjwshd.m3u8?auth=testpub$LR•IPV4•18『线路5』 #EXTINF:-1 tvg-id="天津卫视" tvg-name="天津卫视" group-title="卫视",天津卫视 -http://38.75.136.137:98/gslb/dsdqpub/tjwshd.m3u8?auth=testpub$LR•IPV4•18『线路6』 +http://63.141.230.178:82/gslb/zbdq5.m3u8?id=tjwshd$LR•IPV4•18『线路6』 #EXTINF:-1 tvg-id="天津卫视" tvg-name="天津卫视" group-title="卫视",天津卫视 -http://63.141.230.178:82/gslb/zbdq5.m3u8?id=tjwshd$LR•IPV4•18『线路7』 +http://207.56.13.146:81/cdnlive/tjws.m3u8$LR•IPV4•18『线路7』 #EXTINF:-1 tvg-id="天津卫视" tvg-name="天津卫视" group-title="卫视",天津卫视 -http://207.56.13.146:81/cdnlive/tjws.m3u8$LR•IPV4•18『线路8』 +http://120.198.95.220:9901/tsfile/live/1067_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•18『线路8』 #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•18『线路9』 +http://112.27.235.94:8000/hls/42/index.m3u8$LR•IPV4•18『线路9』 #EXTINF:-1 tvg-id="天津卫视" tvg-name="天津卫视" group-title="卫视",天津卫视 -http://112.27.235.94:8000/hls/42/index.m3u8$LR•IPV4•18『线路10』 +https://piccpndks.v.kcdnvip.com/audio/tianjin_2/index.m3u8$LR•IPV4•18『线路10』 #EXTINF:-1 tvg-id="天津卫视" tvg-name="天津卫视" group-title="卫视",天津卫视 -http://23.237.228.134/live8/tianjing.m3u8$LR•IPV4•18『线路11』 +http://39.134.115.163:8080/PLTV/88888910/224/3221225698/index.m3u8$LR•IPV4•18『线路11』 #EXTINF:-1 tvg-id="天津卫视" tvg-name="天津卫视" group-title="卫视",天津卫视 -http://gfr.x3322.net:9901/tsfile/live/1090_1.m3u8$LR•IPV4•18『线路12』 +http://23.237.228.134/live8/tianjing.m3u8$LR•IPV4•18『线路12』 #EXTINF:-1 tvg-id="天津卫视" tvg-name="天津卫视" group-title="卫视",天津卫视 -http://api.kkitv.itv888.cn:8080/hls/z2lkdkrb4w/index.m3u8$LR•IPV4•18『线路13』 +http://gfr.x3322.net:9901/tsfile/live/1090_1.m3u8$LR•IPV4•18『线路13』 #EXTINF:-1 tvg-id="天津卫视" tvg-name="天津卫视" group-title="卫视",天津卫视 -https://iptv.catvod.com/catvod.php?id=tjws$LR•IPV4•18『线路14』 +http://api.kkitv.itv888.cn:8080/hls/z2lkdkrb4w/index.m3u8$LR•IPV4•18『线路14』 #EXTINF:-1 tvg-id="天津卫视" tvg-name="天津卫视" group-title="卫视",天津卫视 -https://httop.top/ysp-天津卫视$LR•IPV4•18『线路15』 +https://iptv.catvod.com/catvod.php?id=tjws$LR•IPV4•18『线路15』 #EXTINF:-1 tvg-id="天津卫视" tvg-name="天津卫视" group-title="卫视",天津卫视 -http://iptv.huuc.edu.cn/hls/tjhd.m3u8$LR•IPV4•18『线路16』 +https://httop.top/ysp-天津卫视$LR•IPV4•18『线路16』 #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•18『线路17』 +http://iptv.huuc.edu.cn/hls/tjhd.m3u8$LR•IPV4•18『线路17』 #EXTINF:-1 tvg-id="天津卫视" tvg-name="天津卫视" group-title="卫视",天津卫视 -http://39.134.115.163:8080/PLTV/88888910/224/3221225698/index.m3u8$LR•IPV4•18『线路18』 +http://153.0.171.163:9901/tsfile/live/0135_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•18『线路18』 #EXTINF:-1 tvg-id="海南卫视" tvg-name="海南卫视" group-title="卫视",海南卫视 -https://livelyws.chinamcache.com/lyws/zb03.m3u8$LR•IPV4•8『线路1』 +http://t.061899.xyz/tl/tl.php?id=hinws$LR•IPV4•8『线路1』 #EXTINF:-1 tvg-id="海南卫视" tvg-name="海南卫视" group-title="卫视",海南卫视 http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221227029/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7EEuBMjt2kLMD8fAO7QYER7Q%7EtP4-l0lmSfjwLWEfK_el1vH_mv-s1zo4AQJwdedaVwG9xkuFTDg8J26cwOrNJzn20BErrHdLhuZ9EzLUCD3PMW-OMx4MGteHV2vLeW6BqoY%2CEND$LR•IPV6•8『线路2』 #EXTINF:-1 tvg-id="海南卫视" tvg-name="海南卫视" group-title="卫视",海南卫视 -http://120.76.248.139/live/bfgd/4200000473.m3u8$LR•IPV4•8『线路3』 +https://livelyws.chinamcache.com/lyws/zb03.m3u8$LR•IPV4•8『线路3』 #EXTINF:-1 tvg-id="海南卫视" tvg-name="海南卫视" group-title="卫视",海南卫视 -http://43.251.226.89:8080/play/50.m3u8$LR•IPV4•8『线路4』 +http://118.81.195.79:9003/hls/28/index.m3u8$LR•IPV4•8『线路4』 #EXTINF:-1 tvg-id="海南卫视" tvg-name="海南卫视" group-title="卫视",海南卫视 -http://api.kkitv.itv888.cn:8080/hls/c1cajhsgba8/index.m3u8$LR•IPV4•8『线路5』 +http://43.251.226.89:8080/play/50.m3u8$LR•IPV4•8『线路5』 #EXTINF:-1 tvg-id="海南卫视" tvg-name="海南卫视" group-title="卫视",海南卫视 -https://iptv.catvod.com/catvod.php?id=hinws$LR•IPV4•8『线路6』 +http://api.kkitv.itv888.cn:8080/hls/c1cajhsgba8/index.m3u8$LR•IPV4•8『线路6』 #EXTINF:-1 tvg-id="海南卫视" tvg-name="海南卫视" group-title="卫视",海南卫视 -https://httop.top/ysp-海南卫视$LR•IPV4•8『线路7』 +https://iptv.catvod.com/catvod.php?id=hinws$LR•IPV4•8『线路7』 #EXTINF:-1 tvg-id="海南卫视" tvg-name="海南卫视" group-title="卫视",海南卫视 -http://118.81.195.79:9003/hls/28/index.m3u8$LR•IPV4•8『线路8』 +https://httop.top/ysp-海南卫视$LR•IPV4•8『线路8』 #EXTINF:-1 tvg-id="新疆卫视" tvg-name="新疆卫视" group-title="卫视",新疆卫视 -http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221227011/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7ExAUu61iVvo_xYbANWJhgXw%7EtP4-l0lmSfjwLWEfK_el1vH_mv-s1zo4AQJwdedaVwG9xkuFTDg8J26cwOrNJzn20BErrHdLhuZ9EzLUCD3PMW-OMx4MGteHV2vLeW6BqoY%2CEND$LR•IPV6•13『线路1』 +http://t.061899.xyz/tl/tl.php?id=xjws$LR•IPV4•14『线路1』 #EXTINF:-1 tvg-id="新疆卫视" tvg-name="新疆卫视" group-title="卫视",新疆卫视 -http://218.84.12.186:8001/hls/main/playlist.m3u8?zxinjd;http://218.84.12.186:8001/hls/main/playlist.m3u8zxinjd$LR•IPV4•13『线路2』 +http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221227011/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7ExAUu61iVvo_xYbANWJhgXw%7EtP4-l0lmSfjwLWEfK_el1vH_mv-s1zo4AQJwdedaVwG9xkuFTDg8J26cwOrNJzn20BErrHdLhuZ9EzLUCD3PMW-OMx4MGteHV2vLeW6BqoY%2CEND$LR•IPV6•14『线路2』 #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•13『线路3』 +http://218.84.12.186:8001/hls/main/playlist.m3u8?zxinjd;http://218.84.12.186:8001/hls/main/playlist.m3u8zxinjd$LR•IPV4•14『线路3』 #EXTINF:-1 tvg-id="新疆卫视" tvg-name="新疆卫视" group-title="卫视",新疆卫视 -http://59.39.89.130:60901/tsfile/live/0125_17.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•13『线路4』 +http://112.123.243.37:50085/tsfile/live/0143_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•14『线路4』 #EXTINF:-1 tvg-id="新疆卫视" tvg-name="新疆卫视" group-title="卫视",新疆卫视 -http://live.wjyanghu.com/live/CH1.m3u8$LR•IPV4•13『线路5』 +http://59.39.89.130:60901/tsfile/live/0125_17.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•14『线路5』 #EXTINF:-1 tvg-id="新疆卫视" tvg-name="新疆卫视" group-title="卫视",新疆卫视 -https://iptv.catvod.com/catvod.php?id=xjws$LR•IPV4•13『线路6』 +http://live.wjyanghu.com/live/CH1.m3u8$LR•IPV4•14『线路6』 #EXTINF:-1 tvg-id="新疆卫视" tvg-name="新疆卫视" group-title="卫视",新疆卫视 -https://httop.top/ysp-新疆卫视$LR•IPV4•13『线路7』 +http://39.134.115.163:8080/PLTV/88888910/224/3221225725/index.m3u8$LR•IPV4•14『线路7』 #EXTINF:-1 tvg-id="新疆卫视" tvg-name="新疆卫视" group-title="卫视",新疆卫视 -http://39.134.115.163:8080/PLTV/88888910/224/3221225725/index.m3u8$LR•IPV4•13『线路8』 +http://183.207.248.71/cntv/live1/xinjiangstv/xinjiangstv$LR•IPV4•14『线路8』 #EXTINF:-1 tvg-id="新疆卫视" tvg-name="新疆卫视" group-title="卫视",新疆卫视 -http://183.207.248.71/cntv/live1/xinjiangstv/xinjiangstv$LR•IPV4•13『线路9』 +http://183.207.248.71/gitv/live1/G_XINJIANG/G_XINJIANG$LR•IPV4•14『线路9』 #EXTINF:-1 tvg-id="新疆卫视" tvg-name="新疆卫视" group-title="卫视",新疆卫视 -http://183.207.248.71/gitv/live1/G_XINJIANG/G_XINJIANG$LR•IPV4•13『线路10』 +http://183.207.249.15/PLTV/3/224/3221225523/index.m3u8$LR•IPV4•14『线路10』 #EXTINF:-1 tvg-id="新疆卫视" tvg-name="新疆卫视" group-title="卫视",新疆卫视 -http://183.207.249.15/PLTV/3/224/3221225523/index.m3u8$LR•IPV4•13『线路11』 +http://223.110.243.136/PLTV/3/224/3221225523/index.m3u8$LR•IPV4•14『线路11』 #EXTINF:-1 tvg-id="新疆卫视" tvg-name="新疆卫视" group-title="卫视",新疆卫视 -http://223.110.243.136/PLTV/3/224/3221225523/index.m3u8$LR•IPV4•13『线路12』 +http://112.25.48.68/live/program/live/xjws/1300000/mnf.m3u8$LR•IPV4•14『线路12』 #EXTINF:-1 tvg-id="新疆卫视" tvg-name="新疆卫视" group-title="卫视",新疆卫视 -http://112.25.48.68/live/program/live/xjws/1300000/mnf.m3u8$LR•IPV4•13『线路13』 +https://iptv.catvod.com/catvod.php?id=xjws$LR•IPV4•14『线路13』 +#EXTINF:-1 tvg-id="新疆卫视" tvg-name="新疆卫视" group-title="卫视",新疆卫视 +https://httop.top/ysp-新疆卫视$LR•IPV4•14『线路14』 #EXTINF:-1 tvg-id="云南卫视" tvg-name="云南卫视" group-title="卫视",云南卫视 -http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221227028/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7EGfQPqRNVeBjTMsZ48qu0SA%7EtP4-l0lmSfjwLWEfK_el1vH_mv-s1zo4AQJwdedaVwG9xkuFTDg8J26cwOrNJzn20BErrHdLhuZ9EzLUCD3PMW-OMx4MGteHV2vLeW6BqoY%2CEND$LR•IPV6•16『线路1』 +http://t.061899.xyz/tl/tl.php?id=ynws$LR•IPV4•17『线路1』 #EXTINF:-1 tvg-id="云南卫视" tvg-name="云南卫视" group-title="卫视",云南卫视 -http://120.198.95.220:9901/tsfile/live/1056_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•16『线路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•17『线路2』 #EXTINF:-1 tvg-id="云南卫视" tvg-name="云南卫视" group-title="卫视",云南卫视 -http://38.75.136.137:98/gslb/dsdqpub/ynwshd.m3u8?auth=testpub$LR•IPV4•16『线路3』 +http://120.198.95.220:9901/tsfile/live/1056_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•17『线路3』 #EXTINF:-1 tvg-id="云南卫视" tvg-name="云南卫视" group-title="卫视",云南卫视 -http://204.12.221.218:8181/3m1080p/ynws.m3u8$LR•IPV4•16『线路4』 +http://38.75.136.137:98/gslb/dsdqpub/ynwshd.m3u8?auth=testpub$LR•IPV4•17『线路4』 #EXTINF:-1 tvg-id="云南卫视" tvg-name="云南卫视" group-title="卫视",云南卫视 -http://112.123.243.37:50085/tsfile/live/0117_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•16『线路5』 +http://204.12.221.218:8181/3m1080p/ynws.m3u8$LR•IPV4•17『线路5』 #EXTINF:-1 tvg-id="云南卫视" tvg-name="云南卫视" group-title="卫视",云南卫视 -http://101.66.194.82:9901/tsfile/live/0119_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•16『线路6』 +http://112.123.243.37:50085/tsfile/live/0117_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•17『线路6』 #EXTINF:-1 tvg-id="云南卫视" tvg-name="云南卫视" group-title="卫视",云南卫视 -http://101.66.194.63:9901/tsfile/live/0119_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•16『线路7』 +http://101.66.194.82:9901/tsfile/live/0119_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•17『线路7』 #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•16『线路8』 +http://101.66.194.63:9901/tsfile/live/0119_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•17『线路8』 #EXTINF:-1 tvg-id="云南卫视" tvg-name="云南卫视" group-title="卫视",云南卫视 -http://101.66.195.138:9901/tsfile/live/0119_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•16『线路9』 +http://36.136.38.87:9901/tsfile/live/0119_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•17『线路9』 #EXTINF:-1 tvg-id="云南卫视" tvg-name="云南卫视" group-title="卫视",云南卫视 -http://101.66.199.247:9901/tsfile/live/0119_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•16『线路10』 +http://101.66.195.138:9901/tsfile/live/0119_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•17『线路10』 #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•16『线路11』 +http://101.66.199.247:9901/tsfile/live/0119_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•17『线路11』 #EXTINF:-1 tvg-id="云南卫视" tvg-name="云南卫视" group-title="卫视",云南卫视 -http://123.130.84.106:8154/tsfile/live/0119_1.m3u8$LR•IPV4•16『线路12』 +http://153.0.171.163:9901/tsfile/live/0119_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•17『线路12』 #EXTINF:-1 tvg-id="云南卫视" tvg-name="云南卫视" group-title="卫视",云南卫视 -http://23.237.228.134/live8/yunnan.m3u8$LR•IPV4•16『线路13』 +https://jsv-live-play.sfccn.com/live/jsv_3920_fhd.m3u8$LR•IPV4•17『线路13』 #EXTINF:-1 tvg-id="云南卫视" tvg-name="云南卫视" group-title="卫视",云南卫视 -https://iptv.catvod.com/catvod.php?id=ynws$LR•IPV4•16『线路14』 +https://hwapi.yunshicloud.com/8xughf/e0bx15.m3u8$LR•IPV4•17『线路14』 #EXTINF:-1 tvg-id="云南卫视" tvg-name="云南卫视" group-title="卫视",云南卫视 -https://httop.top/ysp-云南卫视$LR•IPV4•16『线路15』 +http://23.237.228.134/live8/yunnan.m3u8$LR•IPV4•17『线路15』 #EXTINF:-1 tvg-id="云南卫视" tvg-name="云南卫视" group-title="卫视",云南卫视 -https://hwapi.yunshicloud.com/8xughf/e0bx15.m3u8$LR•IPV4•16『线路16』 +https://iptv.catvod.com/catvod.php?id=ynws$LR•IPV4•17『线路16』 +#EXTINF:-1 tvg-id="云南卫视" tvg-name="云南卫视" group-title="卫视",云南卫视 +https://httop.top/ysp-云南卫视$LR•IPV4•17『线路17』 #EXTINF:-1 tvg-id="西藏卫视" tvg-name="西藏卫视" group-title="卫视",西藏卫视 -http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221227033/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7EdeTB7OZ9G_VNJk5C3t96fQ%7EtP4-l0lmSfjwLWEfK_el1vH_mv-s1zo4AQJwdedaVwG9xkuFTDg8J26cwOrNJzn20BErrHdLhuZ9EzLUCD3PMW-OMx4MGteHV2vLeW6BqoY%2CEND$LR•IPV6•12『线路1』 +http://t.061899.xyz/tl/tl.php?id=xzws$LR•IPV4•12『线路1』 #EXTINF:-1 tvg-id="西藏卫视" tvg-name="西藏卫视" group-title="卫视",西藏卫视 -http://59.39.89.130:60901/tsfile/live/0125_3.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•12『线路2』 +http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221227033/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7EdeTB7OZ9G_VNJk5C3t96fQ%7EtP4-l0lmSfjwLWEfK_el1vH_mv-s1zo4AQJwdedaVwG9xkuFTDg8J26cwOrNJzn20BErrHdLhuZ9EzLUCD3PMW-OMx4MGteHV2vLeW6BqoY%2CEND$LR•IPV6•12『线路2』 #EXTINF:-1 tvg-id="西藏卫视" tvg-name="西藏卫视" group-title="卫视",西藏卫视 -http://198.204.228.26/live/xzws.m3u8$LR•IPV4•12『线路3』 +http://59.39.89.130:60901/tsfile/live/0125_3.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•12『线路3』 #EXTINF:-1 tvg-id="西藏卫视" tvg-name="西藏卫视" group-title="卫视",西藏卫视 -http://63.141.230.178:82/gslb/zbdq5.m3u8?id=xzws$LR•IPV4•12『线路4』 +http://198.204.228.26/live/xzws.m3u8$LR•IPV4•12『线路4』 #EXTINF:-1 tvg-id="西藏卫视" tvg-name="西藏卫视" group-title="卫视",西藏卫视 -http://107.150.60.122/live/xzws.m3u8$LR•IPV4•12『线路5』 +http://63.141.230.178:82/gslb/zbdq5.m3u8?id=xzws$LR•IPV4•12『线路5』 #EXTINF:-1 tvg-id="西藏卫视" tvg-name="西藏卫视" group-title="卫视",西藏卫视 -http://112.123.243.37:50085/tsfile/live/0141_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•12『线路6』 +http://107.150.60.122/live/xzws.m3u8$LR•IPV4•12『线路6』 #EXTINF:-1 tvg-id="西藏卫视" tvg-name="西藏卫视" group-title="卫视",西藏卫视 -http://59.39.89.130:60901/tsfile/live/0125_4.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•12『线路7』 +http://112.123.243.37:50085/tsfile/live/0141_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•12『线路7』 #EXTINF:-1 tvg-id="西藏卫视" tvg-name="西藏卫视" group-title="卫视",西藏卫视 -http://cssbyd.imwork.net:8082/hls/46/index.m3u8$LR•IPV4•12『线路8』 +http://59.39.89.130:60901/tsfile/live/0125_4.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•12『线路8』 #EXTINF:-1 tvg-id="西藏卫视" tvg-name="西藏卫视" group-title="卫视",西藏卫视 -https://iptv.catvod.com/catvod.php?id=xzws$LR•IPV4•12『线路9』 +http://39.134.115.163:8080/PLTV/88888910/224/3221225723/index.m3u8$LR•IPV4•12『线路9』 #EXTINF:-1 tvg-id="西藏卫视" tvg-name="西藏卫视" group-title="卫视",西藏卫视 -http://39.134.115.163:8080/PLTV/88888910/224/3221225723/index.m3u8$LR•IPV4•12『线路10』 +http://117.169.120.140:8080/live/xizangstv/.m3u8$LR•IPV4•12『线路10』 #EXTINF:-1 tvg-id="西藏卫视" tvg-name="西藏卫视" group-title="卫视",西藏卫视 -http://117.169.120.140:8080/live/xizangstv/.m3u8$LR•IPV4•12『线路11』 +http://183.207.249.16/PLTV/3/224/3221225523/index.m3u8$LR•IPV4•12『线路11』 #EXTINF:-1 tvg-id="西藏卫视" tvg-name="西藏卫视" group-title="卫视",西藏卫视 -http://183.207.249.16/PLTV/3/224/3221225523/index.m3u8$LR•IPV4•12『线路12』 +https://iptv.catvod.com/catvod.php?id=xzws$LR•IPV4•12『线路12』 #EXTINF:-1 tvg-id="海峡卫视" tvg-name="海峡卫视" group-title="卫视",海峡卫视 http://38.64.72.148:80/hls/modn/list/4009/chunklist0.m3u8$LR•IPV4•3『线路1』 #EXTINF:-1 tvg-id="海峡卫视" tvg-name="海峡卫视" group-title="卫视",海峡卫视 @@ -1462,13 +1468,13 @@ http://192.151.150.154/live/btws.m3u8$LR•IPV4•10『线路5』 #EXTINF:-1 tvg-id="兵团卫视" tvg-name="兵团卫视" group-title="卫视",兵团卫视 http://218.13.170.98:9901/tsfile/live/0115_1.m3u8$LR•IPV4•10『线路6』 #EXTINF:-1 tvg-id="兵团卫视" tvg-name="兵团卫视" group-title="卫视",兵团卫视 -http://43.251.226.89:8080/play/53.m3u8$LR•IPV4•10『线路7』 +http://112.25.48.68/live/program/live/btws/1300000/mnf.m3u8$LR•IPV4•10『线路7』 #EXTINF:-1 tvg-id="兵团卫视" tvg-name="兵团卫视" group-title="卫视",兵团卫视 -https://iptv.catvod.com/catvod.php?id=btws$LR•IPV4•10『线路8』 +http://43.251.226.89:8080/play/53.m3u8$LR•IPV4•10『线路8』 #EXTINF:-1 tvg-id="兵团卫视" tvg-name="兵团卫视" group-title="卫视",兵团卫视 -https://httop.top/ysp-兵团卫视$LR•IPV4•10『线路9』 +https://iptv.catvod.com/catvod.php?id=btws$LR•IPV4•10『线路9』 #EXTINF:-1 tvg-id="兵团卫视" tvg-name="兵团卫视" group-title="卫视",兵团卫视 -http://112.25.48.68/live/program/live/btws/1300000/mnf.m3u8$LR•IPV4•10『线路10』 +https://httop.top/ysp-兵团卫视$LR•IPV4•10『线路10』 #EXTINF:-1 tvg-id="安多卫视" tvg-name="安多卫视" group-title="卫视",安多卫视 https://liveout.xntv.tv/a65jur/96iln2.m3u8$LR•IPV4 #EXTINF:-1 tvg-id="康巴卫视" tvg-name="康巴卫视" group-title="卫视",康巴卫视 @@ -1480,13 +1486,13 @@ http://120.76.248.139/live/bfgd/4200000122.m3u8$LR•IPV4•2『线路1』 #EXTINF:-1 tvg-id="农林卫视" tvg-name="农林卫视" group-title="卫视",农林卫视 http://43.251.226.89:8080/play/52.m3u8$LR•IPV4•2『线路2』 #EXTINF:-1 tvg-id="三沙卫视" tvg-name="三沙卫视" group-title="卫视",三沙卫视 -https://srs.ssws.tv/video/sstv-10/index.m3u8$LR•IPV4•6『线路1』 +http://107.150.60.122/live/ssws.m3u8$LR•IPV4•6『线路1』 #EXTINF:-1 tvg-id="三沙卫视" tvg-name="三沙卫视" group-title="卫视",三沙卫视 -http://107.150.60.122/live/ssws.m3u8$LR•IPV4•6『线路2』 +http://38.75.136.137:98/gslb/dsdqpub/ssws.m3u8?auth=testpub$LR•IPV4•6『线路2』 #EXTINF:-1 tvg-id="三沙卫视" tvg-name="三沙卫视" group-title="卫视",三沙卫视 -http://38.75.136.137:98/gslb/dsdqpub/ssws.m3u8?auth=testpub$LR•IPV4•6『线路3』 +http://221.226.51.220:50081/newlive/live/hls/38/live.m3u8$LR•IPV4•6『线路3』 #EXTINF:-1 tvg-id="三沙卫视" tvg-name="三沙卫视" group-title="卫视",三沙卫视 -http://221.226.51.220:50081/newlive/live/hls/38/live.m3u8$LR•IPV4•6『线路4』 +https://srs.ssws.tv/video/sstv-10/index.m3u8$LR•IPV4•6『线路4』 #EXTINF:-1 tvg-id="三沙卫视" tvg-name="三沙卫视" group-title="卫视",三沙卫视 http://43.251.226.89:8080/play/56.m3u8$LR•IPV4•6『线路5』 #EXTINF:-1 tvg-id="三沙卫视" tvg-name="三沙卫视" group-title="卫视",三沙卫视 @@ -1510,7 +1516,7 @@ https://dxtx.hntv.tv/live/lypd.m3u8?txSecret=10c771842a0be59e8b575d765173ec96&tx #EXTINF:-1 tvg-id="梨园" tvg-name="梨园" group-title="卫视",梨园 http://1.94.31.214/php/hntv.php?id=hnly$LR•IPV4•2『线路2』 #EXTINF:-1 tvg-id="辽宁公共" tvg-name="辽宁公共" group-title="卫视",辽宁公共 -http://120.76.248.139/live/bfgd/4200000077.m3u8$LR•IPV4 +http://120.76.248.139/live/bfgd/4200000481.m3u8$LR•IPV4 #EXTINF:-1 tvg-id="中华特产" tvg-name="中华特产" group-title="卫视",中华特产 http://120.76.248.139/live/bfgd/4200000158.m3u8$LR•IPV4 #EXTINF:-1 tvg-id="河北4K" tvg-name="河北4K" group-title="卫视",河北4K @@ -1544,15 +1550,15 @@ http://153.0.171.163:9901/tsfile/live/0118_1.m3u8?key=txiptv&playlive=1&authid=0 #EXTINF:-1 tvg-id="山西卫视" tvg-name="山西卫视" group-title="卫视",山西卫视 http://112.27.235.94:8000/hls/45/index.m3u8$LR•IPV4•15『线路11』 #EXTINF:-1 tvg-id="山西卫视" tvg-name="山西卫视" group-title="卫视",山西卫视 -http://23.237.228.134/live8/shanxi.m3u8$LR•IPV4•15『线路12』 +http://118.81.195.79:9003/hls/19/index.m3u8$LR•IPV4•15『线路12』 #EXTINF:-1 tvg-id="山西卫视" tvg-name="山西卫视" group-title="卫视",山西卫视 -https://iptv.catvod.com/catvod.php?id=sxiws$LR•IPV4•15『线路13』 +http://23.237.228.134/live8/shanxi.m3u8$LR•IPV4•15『线路13』 #EXTINF:-1 tvg-id="山西卫视" tvg-name="山西卫视" group-title="卫视",山西卫视 -https://httop.top/ysp-山西卫视$LR•IPV4•15『线路14』 +https://iptv.catvod.com/catvod.php?id=sxiws$LR•IPV4•15『线路14』 #EXTINF:-1 tvg-id="山西卫视" tvg-name="山西卫视" group-title="卫视",山西卫视 -http://118.81.195.79:9003/hls/19/index.m3u8$LR•IPV4•15『线路15』 +https://httop.top/ysp-山西卫视$LR•IPV4•15『线路15』 #EXTINF:-1 tvg-id="陕西卫视" tvg-name="陕西卫视" group-title="卫视",陕西卫视 -http://stream.snrtv.com/sxbc-star-BLMOU4.m3u8$LR•IPV4•20『线路1』 +http://t.061899.xyz/tl/tl.php?id=sxws$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/3221226999/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7EsGLKaSqf0wDZMbAjeQtfyw%7EtP4-l0lmSfjwLWEfK_el1vH_mv-s1zo4AQJwdedaVwG9xkuFTDg8J26cwOrNJzn20BErrHdLhuZ9EzLUCD3PMW-OMx4MGteHV2vLeW6BqoY%2CEND$LR•IPV6•20『线路2』 #EXTINF:-1 tvg-id="陕西卫视" tvg-name="陕西卫视" group-title="卫视",陕西卫视 @@ -1572,27 +1578,29 @@ http://36.136.38.87:9901/tsfile/live/0136_1.m3u8?key=txiptv&playlive=1&authid=0$ #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•20『线路10』 #EXTINF:-1 tvg-id="陕西卫视" tvg-name="陕西卫视" group-title="卫视",陕西卫视 -http://112.27.235.94:8000/hls/43/index.m3u8$LR•IPV4•20『线路11』 +http://stream.snrtv.com/sxbc-star-BLMOU4.m3u8$LR•IPV4•20『线路11』 #EXTINF:-1 tvg-id="陕西卫视" tvg-name="陕西卫视" group-title="卫视",陕西卫视 -http://38.75.136.137:98/gslb/dsdqpub/sxwshd.m3u8?auth=testpub$LR•IPV4•20『线路12』 +http://39.134.115.163:8080/PLTV/88888910/224/3221225729/index.m3u8$LR•IPV4•20『线路12』 #EXTINF:-1 tvg-id="陕西卫视" tvg-name="陕西卫视" group-title="卫视",陕西卫视 -http://23.237.228.134/live6/sichuan.m3u8$LR•IPV4•20『线路13』 +http://223.110.245.139/PLTV/4/224/3221227022/index.m3u8$LR•IPV4•20『线路13』 #EXTINF:-1 tvg-id="陕西卫视" tvg-name="陕西卫视" group-title="卫视",陕西卫视 -http://43.251.226.89:8080/play/45.m3u8$LR•IPV4•20『线路14』 +http://112.25.48.68/live/program/live/sxws/1300000/mnf.m3u8$LR•IPV4•20『线路14』 #EXTINF:-1 tvg-id="陕西卫视" tvg-name="陕西卫视" group-title="卫视",陕西卫视 -https://iptv.catvod.com/catvod.php?id=sxws$LR•IPV4•20『线路15』 +http://38.75.136.137:98/gslb/dsdqpub/sxwshd.m3u8?auth=testpub$LR•IPV4•20『线路15』 #EXTINF:-1 tvg-id="陕西卫视" tvg-name="陕西卫视" group-title="卫视",陕西卫视 -https://httop.top/ysp-陕西卫视$LR•IPV4•20『线路16』 +http://23.237.228.134/live6/sichuan.m3u8$LR•IPV4•20『线路16』 #EXTINF:-1 tvg-id="陕西卫视" tvg-name="陕西卫视" group-title="卫视",陕西卫视 -http://mg.hmysapp.cn:177/ckmg/zb.php?id=sxws$LR•IPV4•20『线路17』 +http://43.251.226.89:8080/play/45.m3u8$LR•IPV4•20『线路17』 #EXTINF:-1 tvg-id="陕西卫视" tvg-name="陕西卫视" group-title="卫视",陕西卫视 -http://39.134.115.163:8080/PLTV/88888910/224/3221225729/index.m3u8$LR•IPV4•20『线路18』 +https://iptv.catvod.com/catvod.php?id=sxws$LR•IPV4•20『线路18』 #EXTINF:-1 tvg-id="陕西卫视" tvg-name="陕西卫视" group-title="卫视",陕西卫视 -http://223.110.245.139/PLTV/4/224/3221227022/index.m3u8$LR•IPV4•20『线路19』 +https://httop.top/ysp-陕西卫视$LR•IPV4•20『线路19』 #EXTINF:-1 tvg-id="陕西卫视" tvg-name="陕西卫视" group-title="卫视",陕西卫视 -http://112.25.48.68/live/program/live/sxws/1300000/mnf.m3u8$LR•IPV4•20『线路20』 +http://mg.hmysapp.cn:177/ckmg/zb.php?id=sxws$LR•IPV4•20『线路20』 #EXTINF:-1 tvg-id="CHC影迷电影" tvg-name="CHC影迷电影" group-title="数字",CHC影迷电影 p3p://167.114.175.6:55331/63ec4caf00020428e445513c2d902fdb$LR•IPV4 +#EXTINF:-1 tvg-id="CHC动作电影" tvg-name="CHC动作电影" group-title="数字",CHC动作电影 +http://t.061899.xyz/tl/tl.php?id=chcdzdy$LR•IPV4 #EXTINF:-1 tvg-id="CHC家庭影院" tvg-name="CHC家庭影院" group-title="数字",CHC家庭影院 http://61.162.52.6:8088/newlive/live/hls/60/live.m3u8$LR•IPV4 #EXTINF:-1 tvg-id="睛彩竞技" tvg-name="睛彩竞技" group-title="数字",睛彩竞技 @@ -1678,9 +1686,9 @@ http://drive.mxmy.net:8888/udp/239.3.1.126:8001$LR•IPV4•24『线路23』 #EXTINF:-1 tvg-id="睛彩篮球" tvg-name="睛彩篮球" group-title="数字",睛彩篮球 http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=8104&tk=b53028476470$LR•IPV4•24『线路24』 #EXTINF:-1 tvg-id="SiTV 魅力足球" tvg-name="SiTV 魅力足球" group-title="数字",SiTV 魅力足球 -http://111.22.153.159:35455/itv/5000000011000031207.m3u8?cdn=bestzb$LR•IPV4•28『线路1』 +http://t.061899.xyz/tl/tl.php?id=mlzq$LR•IPV4•28『线路1』 #EXTINF:-1 tvg-id="SiTV 魅力足球" tvg-name="SiTV 魅力足球" group-title="数字",SiTV 魅力足球 -http://t.061899.xyz/tl/tl.php?id=mlzq$LR•IPV4•28『线路2』 +http://111.22.153.159:35455/itv/5000000011000031207.m3u8?cdn=bestzb$LR•IPV4•28『线路2』 #EXTINF:-1 tvg-id="SiTV 魅力足球" tvg-name="SiTV 魅力足球" group-title="数字",SiTV 魅力足球 https://www.freetv.top/migu/796070308.m3u8?migutoken=f4f71100ed3cd756f336e1f3b6d522c1338ee1ffd14316eea89e461d4e31e29395a265a9f1ec26b947fb0e7dc16296db47ae3bfea73caaee6901d17bfede63775878c0ab44c872939ba5b53baf$LR•IPV4•28『线路3』 #EXTINF:-1 tvg-id="SiTV 魅力足球" tvg-name="SiTV 魅力足球" group-title="数字",SiTV 魅力足球 @@ -1734,21 +1742,21 @@ https://stream1.freetv.fun/ipv6-mei-li-zu-qiu-5.m3u8$LR•IPV4•28『线路27 #EXTINF:-1 tvg-id="SiTV 魅力足球" tvg-name="SiTV 魅力足球" group-title="数字",SiTV 魅力足球 http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=0934&tk=e640d0a1bf70$LR•IPV4•28『线路28』 #EXTINF:-1 tvg-id="SiTV 劲爆体育" tvg-name="SiTV 劲爆体育" group-title="数字",SiTV 劲爆体育 -http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=6808&tk=a0c4f6cfaba3$LR•IPV4•25『线路1』 +http://t.061899.xyz/tl/tl.php?id=jbty$LR•IPV4•25『线路1』 #EXTINF:-1 tvg-id="SiTV 劲爆体育" tvg-name="SiTV 劲爆体育" group-title="数字",SiTV 劲爆体育 -http://120.238.94.82:9901/tsfile/live/1086_1.m3u8$LR•IPV4•25『线路2』 +http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=6808&tk=a0c4f6cfaba3$LR•IPV4•25『线路2』 #EXTINF:-1 tvg-id="SiTV 劲爆体育" tvg-name="SiTV 劲爆体育" group-title="数字",SiTV 劲爆体育 -http://111.22.153.159:35455/itv/5000000002000029972.m3u8?cdn=bestzb$LR•IPV4•25『线路3』 +http://120.238.94.82:9901/tsfile/live/1086_1.m3u8$LR•IPV4•25『线路3』 #EXTINF:-1 tvg-id="SiTV 劲爆体育" tvg-name="SiTV 劲爆体育" group-title="数字",SiTV 劲爆体育 -http://183.237.95.108:9901/tsfile/live/1074_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•25『线路4』 +http://111.22.153.159:35455/itv/5000000002000029972.m3u8?cdn=bestzb$LR•IPV4•25『线路4』 #EXTINF:-1 tvg-id="SiTV 劲爆体育" tvg-name="SiTV 劲爆体育" group-title="数字",SiTV 劲爆体育 -http://119.32.12.32:2901/udp/224.1.100.129:11111$LR•IPV4•25『线路5』 +http://183.237.95.108:9901/tsfile/live/1074_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•25『线路5』 #EXTINF:-1 tvg-id="SiTV 劲爆体育" tvg-name="SiTV 劲爆体育" group-title="数字",SiTV 劲爆体育 -http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=3011&tk=a0c4f6cfaba3$LR•IPV4•25『线路6』 +http://119.32.12.32:2901/udp/224.1.100.129:11111$LR•IPV4•25『线路6』 #EXTINF:-1 tvg-id="SiTV 劲爆体育" tvg-name="SiTV 劲爆体育" group-title="数字",SiTV 劲爆体育 -http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=4995&tk=e503191f8e20$LR•IPV4•25『线路7』 +http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=3011&tk=a0c4f6cfaba3$LR•IPV4•25『线路7』 #EXTINF:-1 tvg-id="SiTV 劲爆体育" tvg-name="SiTV 劲爆体育" group-title="数字",SiTV 劲爆体育 -http://t.061899.xyz/tl/tl.php?id=jbty$LR•IPV4•25『线路8』 +http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=4995&tk=e503191f8e20$LR•IPV4•25『线路8』 #EXTINF:-1 tvg-id="SiTV 劲爆体育" tvg-name="SiTV 劲爆体育" group-title="数字",SiTV 劲爆体育 http://146.56.165.66:7788/TVOD/5000000002000029972/bestzb/index.m3u8$LR•IPV4•25『线路9』 #EXTINF:-1 tvg-id="SiTV 劲爆体育" tvg-name="SiTV 劲爆体育" group-title="数字",SiTV 劲爆体育 @@ -1870,9 +1878,9 @@ http://feiyang.ak47s.top:35455/itv/1000000001000009601.m3u8?cdn=ystenlive$LR•I #EXTINF:-1 tvg-id="NewTV超级体育" tvg-name="NewTV超级体育" group-title="数字",NewTV超级体育 http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=3188&tk=23a9aca1f79f$LR•IPV4•5『线路5』 #EXTINF:-1 tvg-id="NewTV动作电影" tvg-name="NewTV动作电影" group-title="数字",NewTV动作电影 -http://live.metshop.top/huya/11602077?cdn=alicdn$LR•IPV4•2『线路1』 +http://39.134.19.68/dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221226465/index.m3u8$LR•IPV4•2『线路1』 #EXTINF:-1 tvg-id="NewTV动作电影" tvg-name="NewTV动作电影" group-title="数字",NewTV动作电影 -http://39.134.19.68/dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221226465/index.m3u8$LR•IPV4•2『线路2』 +http://live.metshop.top/huya/11602077?cdn=alicdn$LR•IPV4•2『线路2』 #EXTINF:-1 tvg-id="NewTV精品体育" tvg-name="NewTV精品体育" group-title="数字",NewTV精品体育 https://epg.pw/stream/f7556eccd4ae06b0c2991fdc7a4f8388496559f728cc82459a8e50346040e226.m3u8$LR•IPV4•6『线路1』 #EXTINF:-1 tvg-id="NewTV精品体育" tvg-name="NewTV精品体育" group-title="数字",NewTV精品体育 @@ -1888,7 +1896,9 @@ http://dl.wifi942.com:66/jsyd/jsyd.php?id=GITV-JS-65$LR•IPV4•6『线路6』 #EXTINF:-1 tvg-id="卡酷少儿" tvg-name="卡酷少儿" group-title="数字",卡酷少儿 http://218.13.170.98:9901/tsfile/live/1021_1.m3u8$LR•IPV4 #EXTINF:-1 tvg-id="优漫卡通" tvg-name="优漫卡通" group-title="数字",优漫卡通 -http://183.207.249.15/PLTV/4/224/3221225933/index.m3u8$LR•IPV4 +http://t.061899.xyz/tl/tl.php?id=ymkt$LR•IPV4•2『线路1』 +#EXTINF:-1 tvg-id="优漫卡通" tvg-name="优漫卡通" group-title="数字",优漫卡通 +http://183.207.249.15/PLTV/4/224/3221225933/index.m3u8$LR•IPV4•2『线路2』 #EXTINF:-1 tvg-id="哈哈炫动" tvg-name="哈哈炫动" group-title="数字",哈哈炫动 http://223.110.245.139/PLTV/4/224/3221226388/index.m3u8$LR•IPV4 #EXTINF:-1 tvg-id="嘉佳卡通" tvg-name="嘉佳卡通" group-title="数字",嘉佳卡通 @@ -1896,19 +1906,19 @@ http://223.110.245.139/PLTV/4/224/3221227009/index.m3u8$LR•IPV4•2『线路1 #EXTINF:-1 tvg-id="嘉佳卡通" tvg-name="嘉佳卡通" group-title="数字",嘉佳卡通 http://112.25.48.68/live/program/live/jjkt/1300000/mnf.m3u8$LR•IPV4•2『线路2』 #EXTINF:-1 tvg-id="金鹰卡通" tvg-name="金鹰卡通" group-title="数字",金鹰卡通 -http://phoneal.qing.mgtv.com/nn_live/nn_x64/Y2hzPSZkZWY9MSZ1aXA9MTA2LjE0LjM4LjU1JnRlcm09NSZtYWNpZD02ODZlOGNmOGM4OGU3N2VjOWEwNzkzMjg5ZjUzNDg0MmFiZWM0ZjNjJnFpZD0mcmF1dGhfZW5hYmxlPW9mZiZjZG5leF9pZD1hbF9waG9uZTMmZXM9MTc4Mzk3OTAxNiZ1dWlkPTU2NjdhZjJmOGNjNjM4MjMwZjFlYzVmY2RiMWIxNThmLTZhMGUyNjM3JnM9ZDg2NTFkYzBlZjdjOTcxMjUyMjMxMTYyOGQ5ODM4YjgmdWlkPSZuZHY9aW9zLTYuNS4wJnY9MiZhcz0wJl9jYXJDb2RlPTA,/JYKTMPP360.m3u8$LR•IPV4•7『线路1』 +http://183.11.239.36:808/hls/69/index.m3u8$LR•IPV4•7『线路1』 #EXTINF:-1 tvg-id="金鹰卡通" tvg-name="金鹰卡通" group-title="数字",金鹰卡通 -http://183.11.239.36:808/hls/69/index.m3u8$LR•IPV4•7『线路2』 +http://phoneqq.qing.mgtv.com/nn_live/nn_x64/Y2hzPSZkZWY9MSZ1aXA9MTA2LjE0LjM4LjU1JnRlcm09NSZtYWNpZD02ODZlOGNmOGM4OGU3N2VjOWEwNzkzMjg5ZjUzNDg0MmFiZWM0ZjNjJnFpZD0mcmF1dGhfZW5hYmxlPW9mZiZjZG5leF9pZD1xcV9waG9uZV9saXZlJmVzPTE3ODQyNDYwMjImdXVpZD1kOGE5NDdhY2I3OGNhOWUxZWM1MzIwZTMxNTYxZmU5NS02YTBlMjYzNyZzPThlNWFhM2FhOGI5YzUwYzNmZjVhODk2NjBiODg3NjUyJnVpZD0mbmR2PWlvcy02LjUuMCZ2PTImYXM9MCZfY2FyQ29kZT0w/HNGGMPP360.m3u8$LR•IPV4•7『线路2』 #EXTINF:-1 tvg-id="金鹰卡通" tvg-name="金鹰卡通" group-title="数字",金鹰卡通 -http://101.66.194.82:9901/tsfile/live/1000_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•7『线路3』 +http://223.110.245.145/ott.js.chinamobile.com/PLTV/3/224/3221226303/index.m3u8$LR•IPV4•7『线路3』 #EXTINF:-1 tvg-id="金鹰卡通" tvg-name="金鹰卡通" group-title="数字",金鹰卡通 -http://101.66.194.63:9901/tsfile/live/1000_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•7『线路4』 +http://101.66.194.82:9901/tsfile/live/1000_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•7『线路4』 #EXTINF:-1 tvg-id="金鹰卡通" tvg-name="金鹰卡通" group-title="数字",金鹰卡通 -http://101.66.199.247:9901/tsfile/live/1000_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•7『线路5』 +http://101.66.194.63:9901/tsfile/live/1000_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•7『线路5』 #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•7『线路6』 +http://101.66.199.247:9901/tsfile/live/1000_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•7『线路6』 #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•7『线路7』 +http://120.198.95.220:9901/tsfile/live/1033_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•7『线路7』 #EXTINF:-1 tvg-id="金鹰纪实" tvg-name="金鹰纪实" group-title="数字",金鹰纪实 http://iptv.huuc.edu.cn/hls/gedocu.m3u8$LR•IPV4•83『线路1』 #EXTINF:-1 tvg-id="金鹰纪实" tvg-name="金鹰纪实" group-title="数字",金鹰纪实 @@ -2144,9 +2154,11 @@ http://27.12.12.183:1234/961930263$LR•IPV4•34『线路33』 #EXTINF:-1 tvg-id="快乐垂钓" tvg-name="快乐垂钓" group-title="数字",快乐垂钓 http://8.153.110.51:3020/961930263$LR•IPV4•34『线路34』 #EXTINF:-1 tvg-id="纪实人文" tvg-name="纪实人文" group-title="数字",纪实人文 -http://8.138.7.223/tv/shtv.php?id=xjs$LR•IPV4•2『线路1』 +http://t.061899.xyz/tl/tl.php?id=shjsrw$LR•IPV4•3『线路1』 #EXTINF:-1 tvg-id="纪实人文" tvg-name="纪实人文" group-title="数字",纪实人文 -http://39.135.138.59:18890/PLTV/88888910/224/3221225655/index.m3u8$LR•IPV4•2『线路2』 +http://39.135.138.59:18890/PLTV/88888910/224/3221225655/index.m3u8$LR•IPV4•3『线路2』 +#EXTINF:-1 tvg-id="纪实人文" tvg-name="纪实人文" group-title="数字",纪实人文 +http://8.138.7.223/tv/shtv.php?id=xjs$LR•IPV4•3『线路3』 #EXTINF:-1 tvg-id="天元围棋" tvg-name="天元围棋" group-title="数字",天元围棋 http://120.76.248.139/live/bfgd/4200000633.m3u8$LR•IPV4•6『线路1』 #EXTINF:-1 tvg-id="天元围棋" tvg-name="天元围棋" group-title="数字",天元围棋 @@ -2166,15 +2178,15 @@ http://111.22.153.159:35455/itv/2000000004000000014.m3u8?cdn=hnbblive$LR•IPV4 #EXTINF:-1 tvg-id="华数4K" tvg-name="华数4K" group-title="数字",华数4K http://home.wwang.pw:35455/itv/2000000004000000014.m3u8?cdn=hnbblive$LR•IPV4•2『线路2』 #EXTINF:-1 tvg-id="纯享4K" tvg-name="纯享4K" group-title="数字",纯享4K -http://101.43.145.141:12002/itv/1000000004000011651.m3u8?cdn=ystenlive$LR•IPV4•5『线路1』 +http://39.134.115.163:8080/PLTV/88888910/224/3221225786/index.m3u8$LR•IPV4•5『线路1』 #EXTINF:-1 tvg-id="纯享4K" tvg-name="纯享4K" group-title="数字",纯享4K -https://live.264788.xyz/channel/chunxiang4k?streamid=c162e99191441b46592808f7f1afe8b0&livekey=01WgOR41rriMmMkzNsd0UoaxJRwetZdxIvtVk$LR•IPV4•5『线路2』 +http://101.43.145.141:12002/itv/1000000004000011651.m3u8?cdn=ystenlive$LR•IPV4•5『线路2』 #EXTINF:-1 tvg-id="纯享4K" tvg-name="纯享4K" group-title="数字",纯享4K -https://live.264788.xyz/channel/chunxiang4k?streamid=a12e69928ae928860407d7ec7bfe4ac8&livekey=01WgOR41rriMmMkzNsd0UoaxJRwetZdxIvtVk$LR•IPV4•5『线路3』 +https://live.264788.xyz/channel/chunxiang4k?streamid=c162e99191441b46592808f7f1afe8b0&livekey=01WgOR41rriMmMkzNsd0UoaxJRwetZdxIvtVk$LR•IPV4•5『线路3』 #EXTINF:-1 tvg-id="纯享4K" tvg-name="纯享4K" group-title="数字",纯享4K -http://home.wwang.pw:35455/itv/1000000004000011651.m3u8?cdn=ystenlive$LR•IPV4•5『线路4』 +https://live.264788.xyz/channel/chunxiang4k?streamid=a12e69928ae928860407d7ec7bfe4ac8&livekey=01WgOR41rriMmMkzNsd0UoaxJRwetZdxIvtVk$LR•IPV4•5『线路4』 #EXTINF:-1 tvg-id="纯享4K" tvg-name="纯享4K" group-title="数字",纯享4K -http://39.134.115.163:8080/PLTV/88888910/224/3221225786/index.m3u8$LR•IPV4•5『线路5』 +http://home.wwang.pw:35455/itv/1000000004000011651.m3u8?cdn=ystenlive$LR•IPV4•5『线路5』 #EXTINF:-1 tvg-id="滁州新闻综合频道" tvg-name="滁州新闻综合频道" group-title="安徽",滁州新闻综合频道 http://183.167.193.45:1935/live/cztvzh/playlist.m3u8$LR•IPV4 #EXTINF:-1 tvg-id="滁州科教频道" tvg-name="滁州科教频道" group-title="安徽",滁州科教频道 @@ -2206,31 +2218,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="河北",邢台综合 -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『线路1』 #EXTINF:-1 tvg-id="邢台综合" tvg-name="邢台综合" group-title="河北",邢台综合 -http://222.223.119.21:8888/newlive/live/hls/54/live.m3u8$LR•IPV4•2『线路2』 +https://jwplay.hebyun.com.cn:443/live/xtsrmtzs/1500k/tzwj_video.m3u8$LR•IPV4•2『线路2』 #EXTINF:-1 tvg-id="河北都市" tvg-name="河北都市" group-title="河北",河北都市 -https://radio.pull.hebtv.com/live/hebnczx.m3u8$LR•IPV4•2『线路1』 +http://121.19.134.246:808/hls/21/index.m3u8$LR•IPV4•2『线路1』 #EXTINF:-1 tvg-id="河北都市" tvg-name="河北都市" group-title="河北",河北都市 -http://121.19.134.246:808/hls/21/index.m3u8$LR•IPV4•2『线路2』 +http://1.94.31.214/php/hebei.php?id=hbds$LR•IPV4•2『线路2』 #EXTINF:-1 tvg-id="河北农民" tvg-name="河北农民" group-title="河北",河北农民 -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『线路1』 #EXTINF:-1 tvg-id="河北农民" tvg-name="河北农民" group-title="河北",河北农民 -http://121.19.134.246:808/hls/25/index.m3u8$LR•IPV4•2『线路2』 +https://ls.qingting.fm/live/1650/64k.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://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『线路1』 #EXTINF:-1 tvg-id="河北经济" tvg-name="河北经济" group-title="河北",河北经济 -http://121.19.134.246:808/hls/20/index.m3u8$LR•IPV4•2『线路2』 +http://1.94.31.214/php/hebei.php?id=jjsh$LR•IPV4•2『线路2』 #EXTINF:-1 tvg-id="河北影视" tvg-name="河北影视" group-title="河北",河北影视 -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『线路1』 #EXTINF:-1 tvg-id="河北影视" tvg-name="河北影视" group-title="河北",河北影视 -http://121.19.134.246:808/hls/22/index.m3u8$LR•IPV4•2『线路2』 +http://1.94.31.214/php/hebei.php?id=hbys$LR•IPV4•2『线路2』 #EXTINF:-1 tvg-id="河北公共" tvg-name="河北公共" group-title="河北",河北公共 -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『线路1』 #EXTINF:-1 tvg-id="河北公共" tvg-name="河北公共" group-title="河北",河北公共 -http://121.19.134.246:808/hls/24/index.m3u8$LR•IPV4•2『线路2』 +http://1.94.31.214/php/hebei.php?id=hbgg$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="内蒙古",内蒙新闻 @@ -2272,13 +2284,13 @@ 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="江苏",南京教科 -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『线路1』 #EXTINF:-1 tvg-id="南京教科" tvg-name="南京教科" group-title="江苏",南京教科 -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『线路2』 #EXTINF:-1 tvg-id="南京教科" tvg-name="南京教科" group-title="江苏",南京教科 -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『线路3』 #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『线路4』 +http://nklive.nbs.cn/hls/75b3c462-b831-4de7-a34b-5d3221db2069/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 #EXTINF:-1 tvg-id="苏州4k" tvg-name="苏州4k" group-title="江苏",苏州4k @@ -2464,37 +2476,37 @@ https://stream1.freetv.fun/zhe-jiang-min-sheng-xiu-xian-5.m3u8$LR•IPV4•37『 #EXTINF:-1 tvg-id="浙江新闻" tvg-name="浙江新闻" group-title="浙江",浙江新闻 https://ali-m-l.cztv.com/channels/lantian/channel007/1080p.m3u8$LR•IPV4•34『线路1』 #EXTINF:-1 tvg-id="浙江新闻" tvg-name="浙江新闻" group-title="浙江",浙江新闻 -https://ali-m-l.cztv.com/channels/lantian/channel007/1080p.m3u8?$LR•IPV4•34『线路2』 +http://ali-m-l.cztv.com/channels/lantian/channel007/720p.m3u8$LR•IPV4•34『线路2』 #EXTINF:-1 tvg-id="浙江新闻" tvg-name="浙江新闻" group-title="浙江",浙江新闻 -http://ali-m-l.cztv.com/channels/lantian/channel007/720p.m3u8$LR•IPV4•34『线路3』 +https://stream1.freetv.fun/zhe-jiang-xin-wen-11.m3u8$LR•IPV4•34『线路3』 #EXTINF:-1 tvg-id="浙江新闻" tvg-name="浙江新闻" group-title="浙江",浙江新闻 -https://stream1.freetv.fun/zhe-jiang-xin-wen-11.m3u8$LR•IPV4•34『线路4』 +http://ali-xwl.cztv.com/live/channel07720Plxw.m3u8$LR•IPV4•34『线路4』 #EXTINF:-1 tvg-id="浙江新闻" tvg-name="浙江新闻" group-title="浙江",浙江新闻 -http://ali-xwl.cztv.com/live/channel07720Plxw.m3u8$LR•IPV4•34『线路5』 +https://stream1.freetv.fun/zhe-jiang-xin-wen-6.m3u8$LR•IPV4•34『线路5』 #EXTINF:-1 tvg-id="浙江新闻" tvg-name="浙江新闻" group-title="浙江",浙江新闻 -https://stream1.freetv.fun/zhe-jiang-xin-wen-6.m3u8$LR•IPV4•34『线路6』 +https://stream1.freetv.fun/zhe-jiang-xin-wen-4.m3u8$LR•IPV4•34『线路6』 #EXTINF:-1 tvg-id="浙江新闻" tvg-name="浙江新闻" group-title="浙江",浙江新闻 -https://stream1.freetv.fun/zhe-jiang-xin-wen-4.m3u8$LR•IPV4•34『线路7』 +https://stream1.freetv.fun/zhe-jiang-xin-wen-3.m3u8$LR•IPV4•34『线路7』 #EXTINF:-1 tvg-id="浙江新闻" tvg-name="浙江新闻" group-title="浙江",浙江新闻 -https://stream1.freetv.fun/zhe-jiang-xin-wen-3.m3u8$LR•IPV4•34『线路8』 +https://stream1.freetv.fun/zhe-jiang-xin-wen-1.m3u8$LR•IPV4•34『线路8』 #EXTINF:-1 tvg-id="浙江新闻" tvg-name="浙江新闻" group-title="浙江",浙江新闻 -https://stream1.freetv.fun/zhe-jiang-xin-wen-1.m3u8$LR•IPV4•34『线路9』 +https://t.freetv.fun/live/zhe-jiang-xin-wen-2.m3u8$LR•IPV4•34『线路9』 #EXTINF:-1 tvg-id="浙江新闻" tvg-name="浙江新闻" group-title="浙江",浙江新闻 -https://t.freetv.fun/live/zhe-jiang-xin-wen-2.m3u8$LR•IPV4•34『线路10』 +https://stream1.freetv.fun/zhe-jiang-xin-wen-2.m3u8$LR•IPV4•34『线路10』 #EXTINF:-1 tvg-id="浙江新闻" tvg-name="浙江新闻" group-title="浙江",浙江新闻 -https://stream1.freetv.fun/zhe-jiang-xin-wen-2.m3u8$LR•IPV4•34『线路11』 +https://t.freetv.fun/live/zhe-jiang-xin-wen-3.m3u8$LR•IPV4•34『线路11』 #EXTINF:-1 tvg-id="浙江新闻" tvg-name="浙江新闻" group-title="浙江",浙江新闻 -https://t.freetv.fun/live/zhe-jiang-xin-wen-3.m3u8$LR•IPV4•34『线路12』 +http://ali-xwl.cztv.com/live/channel071080Plxw.m3u8$LR•IPV4•34『线路12』 #EXTINF:-1 tvg-id="浙江新闻" tvg-name="浙江新闻" group-title="浙江",浙江新闻 -http://ali-xwl.cztv.com/live/channel071080Plxw.m3u8$LR•IPV4•34『线路13』 +https://ali-m-l.cztv.com/channels/lantian/channel07/720p.m3u8$LR•IPV4•34『线路13』 #EXTINF:-1 tvg-id="浙江新闻" tvg-name="浙江新闻" group-title="浙江",浙江新闻 -https://ali-m-l.cztv.com/channels/lantian/channel07/720p.m3u8$LR•IPV4•34『线路14』 +https://stream1.freetv.fun/7fa07158e038a9bae3747a0cb9f8e8ff1aaba32669d28d99a498716f16569c1d.m3u8$LR•IPV4•34『线路14』 #EXTINF:-1 tvg-id="浙江新闻" tvg-name="浙江新闻" group-title="浙江",浙江新闻 -https://stream1.freetv.fun/7fa07158e038a9bae3747a0cb9f8e8ff1aaba32669d28d99a498716f16569c1d.m3u8$LR•IPV4•34『线路15』 +https://stream1.freetv.fun/zhe-jiang-xin-wen-9.m3u8$LR•IPV4•34『线路15』 #EXTINF:-1 tvg-id="浙江新闻" tvg-name="浙江新闻" group-title="浙江",浙江新闻 -https://stream1.freetv.fun/zhe-jiang-xin-wen-9.m3u8$LR•IPV4•34『线路16』 +https://stream1.freetv.fun/zhe-jiang-xin-wen-7.m3u8$LR•IPV4•34『线路16』 #EXTINF:-1 tvg-id="浙江新闻" tvg-name="浙江新闻" group-title="浙江",浙江新闻 -https://stream1.freetv.fun/zhe-jiang-xin-wen-7.m3u8$LR•IPV4•34『线路17』 +https://ali-m-l.cztv.com/channels/lantian/channel007/1080p.m3u8?$LR•IPV4•34『线路17』 #EXTINF:-1 tvg-id="浙江新闻" tvg-name="浙江新闻" group-title="浙江",浙江新闻 http://ali-m-l.cztv.com/channels/lantian/channel007/1080p.m3u8?zzhed$LR•IPV4•34『线路18』 #EXTINF:-1 tvg-id="浙江新闻" tvg-name="浙江新闻" group-title="浙江",浙江新闻 @@ -2656,11 +2668,11 @@ http://ali-xwl.cztv.com/live/channel04720Plxw.m3u8$LR•IPV4•10『线路9』 #EXTINF:-1 tvg-id="浙江教科" tvg-name="浙江教科" group-title="浙江",浙江教科 http://ali-m-l.cztv.com/channels/lantian/channel04/1080p.m3u8$LR•IPV4•10『线路10』 #EXTINF:-1 tvg-id="浙江经济" tvg-name="浙江经济" group-title="浙江",浙江经济 -http://live.hznet.tv:1935/live/live2/500K/tzwj_video.m3u8?shandd$LR•IPV4•3『线路1』 +http://222.179.155.21:1935/ch0.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://222.179.155.21:1935/ch0.m3u8$LR•IPV4•3『线路3』 +http://live.hznet.tv:1935/live/live2/500k/tzwj_video.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="浙江",之江纪录 @@ -3166,11 +3178,11 @@ http://l.cztvcloud.com/channels/lantian/SXyuyao1/720p.m3u8?cWlkPSZzPTg3OWMwYmMyZ #EXTINF:-1 tvg-id="余姚综合" tvg-name="余姚综合" group-title="浙江",余姚综合 http://l.cztvcloud.com/channels/lantian/SXyuyao1/720p.m3u8?%E5%85%B3%E6%B3%A8%E5%BE%AE%E4%BF%A1%E5%85%AC%E4%BC%97%E5%8F%B7[%E6%99%B4%E5%9B%AD]$LR•IPV4•6『线路6』 #EXTINF:-1 tvg-id="余姚姚江文化" tvg-name="余姚姚江文化" group-title="浙江",余姚姚江文化 -http://l.cztvcloud.com/channels/lantian/SXyuyao3/720p.m3u8?zzhed$LR•IPV4•4『线路1』 +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.m3u8zzhed$LR•IPV4•4『线路2』 #EXTINF:-1 tvg-id="余姚姚江文化" tvg-name="余姚姚江文化" group-title="浙江",余姚姚江文化 -https://l.cztvcloud.com/channels/lantian/SXyuyao3/720p.m3u8$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="浙江",云和新闻综合 @@ -3546,9 +3558,9 @@ http://phonetx.qing.mgtv.com/nn_live/nn_x64/8.8&/CSXWMPP360.m3u8$LR•IPV4•2 #EXTINF:-1 tvg-id="长沙新闻" tvg-name="长沙新闻" group-title="湖南",长沙新闻 http://35848.hlsplay.aodianyun.com/guangdianyun_35848/tv_channel_346.m3u8$LR•IPV4 #EXTINF:-1 tvg-id="长沙政法" tvg-name="长沙政法" group-title="湖南",长沙政法 -http://phonetx.qing.mgtv.com/nn_live/nn_x64/8.8&/CSZFMPP360.m3u8$LR•IPV4•2『线路1』 +http://35848.hlsplay.aodianyun.com/guangdianyun_35848/tv_channel_348.m3u8$LR•IPV4•2『线路1』 #EXTINF:-1 tvg-id="长沙政法" tvg-name="长沙政法" group-title="湖南",长沙政法 -http://35848.hlsplay.aodianyun.com/guangdianyun_35848/tv_channel_348.m3u8$LR•IPV4•2『线路2』 +http://phonetx.qing.mgtv.com/nn_live/nn_x64/8.8&/CSZFMPP360.m3u8$LR•IPV4•2『线路2』 #EXTINF:-1 tvg-id="长沙女性" tvg-name="长沙女性" group-title="湖南",长沙女性 http://35848.hlsplay.aodianyun.com/guangdianyun_35848/tv_channel_349.m3u8$LR•IPV4 #EXTINF:-1 tvg-id="衡阳新闻综合" tvg-name="衡阳新闻综合" group-title="湖南",衡阳新闻综合 @@ -5042,17 +5054,17 @@ http://125.89.163.44:8888/udp/239.77.0.202:5146$LR•IPV4•4『线路3』 #EXTINF:-1 tvg-id="江门侨乡生活" tvg-name="江门侨乡生活" group-title="广东",江门侨乡生活 http://120.77.205.62:8087/rtp/239.77.0.202:5146$LR•IPV4•4『线路4』 #EXTINF:-1 tvg-id="河源综合" tvg-name="河源综合" group-title="广东",河源综合 -http://125.89.163.44:8888/udp/239.253.43.213:5146$LR•IPV4•6『线路1』 +https://tmpstream.hyrtv.cn/xwzh/sd/live.m3u8$LR•IPV4•6『线路1』 #EXTINF:-1 tvg-id="河源综合" tvg-name="河源综合" group-title="广东",河源综合 -http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=8947&tk=a0c4f6cfaba3$LR•IPV4•6『线路2』 +http://125.89.163.44:8888/udp/239.253.43.213:5146$LR•IPV4•6『线路2』 #EXTINF:-1 tvg-id="河源综合" tvg-name="河源综合" group-title="广东",河源综合 -http://120.234.5.28:6000/udp/239.21.0.48:3532$LR•IPV4•6『线路3』 +http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=8947&tk=a0c4f6cfaba3$LR•IPV4•6『线路3』 #EXTINF:-1 tvg-id="河源综合" tvg-name="河源综合" group-title="广东",河源综合 -https://tmpstream.hyrtv.cn/xwzh/sd/live.m3u8?_upt=f767206b1671099007$LR•IPV4•6『线路4』 +http://120.234.5.28:6000/udp/239.21.0.48:3532$LR•IPV4•6『线路4』 #EXTINF:-1 tvg-id="河源综合" tvg-name="河源综合" group-title="广东",河源综合 -http://tmpstream.hyrtv.cn/xwzh/sd/live.m3u8$LR•IPV4•6『线路5』 +https://tmpstream.hyrtv.cn/xwzh/sd/live.m3u8?_upt=f767206b1671099007$LR•IPV4•6『线路5』 #EXTINF:-1 tvg-id="河源综合" tvg-name="河源综合" group-title="广东",河源综合 -https://tmpstream.hyrtv.cn/xwzh/sd/live.m3u8$LR•IPV4•6『线路6』 +http://tmpstream.hyrtv.cn/xwzh/sd/live.m3u8$LR•IPV4•6『线路6』 #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』 #EXTINF:-1 tvg-id="河源公共" tvg-name="河源公共" group-title="广东",河源公共 @@ -5409,6 +5421,8 @@ https://tencentplaygsm.gztv.com/live/nanguodushi.m3u8?txTime=6594e9d5&txSecret=e http://r.jdshipin.com/nWaZO$LR•IPV4•8『线路7』 #EXTINF:-1 tvg-id="南国都市" tvg-name="南国都市" group-title="广东",南国都市 http://tencentplay.gztv.com/live/nanguodushi.m3u8?txSecret=140110ae3d6c936a77f94c4f4d85b0d3&txTime=18d57929bd4$LR•IPV4•8『线路8』 +#EXTINF:-1 tvg-id="上海新闻" tvg-name="上海新闻" group-title="上海",上海新闻 +http://t.061899.xyz/tl/tl.php?id=shxwzh$LR•IPV4 #EXTINF:-1 tvg-id="上海都市" tvg-name="上海都市" group-title="上海",上海都市 http://api3.52tb.xyz/info?id=372&token=20221127jxwhhemby$LR•IPV4•25『线路1』 #EXTINF:-1 tvg-id="上海都市" tvg-name="上海都市" group-title="上海",上海都市 @@ -5460,161 +5474,163 @@ https://stream1.freetv.fun/shang-hai-du-shi-7.m3u8$LR•IPV4•25『线路24』 #EXTINF:-1 tvg-id="上海都市" tvg-name="上海都市" group-title="上海",上海都市 https://stream1.freetv.fun/ipv6-shang-hai-du-shi-6.m3u8$LR•IPV4•25『线路25』 #EXTINF:-1 tvg-id="上海外语" tvg-name="上海外语" group-title="上海",上海外语 -http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=2446&tk=e640d0a1bf70$LR•IPV4•7『线路1』 +http://t.061899.xyz/tl/tl.php?id=shics$LR•IPV4•7『线路1』 #EXTINF:-1 tvg-id="上海外语" tvg-name="上海外语" group-title="上海",上海外语 -http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=1734&tk=b53028476470$LR•IPV4•7『线路2』 +http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=2446&tk=e640d0a1bf70$LR•IPV4•7『线路2』 #EXTINF:-1 tvg-id="上海外语" tvg-name="上海外语" group-title="上海",上海外语 -http://111.22.153.159:35455/itv/2000000002000000001.m3u8?cdn=hnbblive$LR•IPV4•7『线路3』 +http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=1734&tk=b53028476470$LR•IPV4•7『线路3』 #EXTINF:-1 tvg-id="上海外语" tvg-name="上海外语" group-title="上海",上海外语 -http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=6608&tk=e503191f8e20$LR•IPV4•7『线路4』 +http://111.22.153.159:35455/itv/2000000002000000001.m3u8?cdn=hnbblive$LR•IPV4•7『线路4』 #EXTINF:-1 tvg-id="上海外语" tvg-name="上海外语" group-title="上海",上海外语 -http://150.158.112.123/公众号~玉玉软件库/mg.php?id=shics$LR•IPV4•7『线路5』 +http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=6608&tk=e503191f8e20$LR•IPV4•7『线路5』 #EXTINF:-1 tvg-id="上海外语" tvg-name="上海外语" group-title="上海",上海外语 -http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=0017&tk=a0c4f6cfaba3$LR•IPV4•7『线路6』 +http://150.158.112.123/公众号~玉玉软件库/mg.php?id=shics$LR•IPV4•7『线路6』 #EXTINF:-1 tvg-id="上海外语" tvg-name="上海外语" group-title="上海",上海外语 -http://t.061899.xyz/tl/tl.php?id=shics$LR•IPV4•7『线路7』 +http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=0017&tk=a0c4f6cfaba3$LR•IPV4•7『线路7』 +#EXTINF:-1 tvg-id="七彩戏剧" tvg-name="七彩戏剧" group-title="上海",七彩戏剧 +http://t.061899.xyz/tl/tl.php?id=qcxj$LR•IPV4 #EXTINF:-1 tvg-id="五星体育" tvg-name="五星体育" group-title="上海",五星体育 -http://101.35.240.114:88/live.php?id=五星体育$LR•IPV4•41『线路1』 +http://223.110.245.147/ott.js.chinamobile.com/PLTV/3/224/3221226799/index.m3u8$LR•IPV4•41『线路1』 #EXTINF:-1 tvg-id="五星体育" tvg-name="五星体育" group-title="上海",五星体育 -https://stream1.freetv.fun/wu-xing-ti-yu-5.m3u8$LR•IPV4•41『线路2』 +http://101.35.240.114:88/live.php?id=五星体育$LR•IPV4•41『线路2』 #EXTINF:-1 tvg-id="五星体育" tvg-name="五星体育" group-title="上海",五星体育 -https://stream1.freetv.fun/wu-xing-ti-yu-3.m3u8$LR•IPV4•41『线路3』 +https://stream1.freetv.fun/wu-xing-ti-yu-5.m3u8$LR•IPV4•41『线路3』 #EXTINF:-1 tvg-id="五星体育" tvg-name="五星体育" group-title="上海",五星体育 -https://stream1.freetv.fun/ipv6-wu-xing-ti-yu-6.m3u8$LR•IPV4•41『线路4』 +https://stream1.freetv.fun/wu-xing-ti-yu-3.m3u8$LR•IPV4•41『线路4』 #EXTINF:-1 tvg-id="五星体育" tvg-name="五星体育" group-title="上海",五星体育 -https://stream1.freetv.fun/wu-xing-ti-yu-14.m3u8$LR•IPV4•41『线路5』 +https://stream1.freetv.fun/ipv6-wu-xing-ti-yu-6.m3u8$LR•IPV4•41『线路5』 #EXTINF:-1 tvg-id="五星体育" tvg-name="五星体育" group-title="上海",五星体育 -https://other.ottiptv.cc/wxty.m3u8$LR•IPV4•41『线路6』 +https://stream1.freetv.fun/wu-xing-ti-yu-14.m3u8$LR•IPV4•41『线路6』 #EXTINF:-1 tvg-id="五星体育" tvg-name="五星体育" group-title="上海",五星体育 -https://stream1.freetv.fun/ipv6-wu-xing-ti-yu-2.m3u8$LR•IPV4•41『线路7』 +https://other.ottiptv.cc/wxty.m3u8$LR•IPV4•41『线路7』 #EXTINF:-1 tvg-id="五星体育" tvg-name="五星体育" group-title="上海",五星体育 -https://stream1.freetv.fun/ipv6-wu-xing-ti-yu-1.m3u8$LR•IPV4•41『线路8』 +https://stream1.freetv.fun/ipv6-wu-xing-ti-yu-2.m3u8$LR•IPV4•41『线路8』 #EXTINF:-1 tvg-id="五星体育" tvg-name="五星体育" group-title="上海",五星体育 -https://stream1.freetv.fun/ipv6-wu-xing-ti-yu-3.m3u8$LR•IPV4•41『线路9』 +https://stream1.freetv.fun/ipv6-wu-xing-ti-yu-1.m3u8$LR•IPV4•41『线路9』 #EXTINF:-1 tvg-id="五星体育" tvg-name="五星体育" group-title="上海",五星体育 -https://stream1.freetv.fun/wu-xing-ti-yu-9.m3u8$LR•IPV4•41『线路10』 +https://stream1.freetv.fun/ipv6-wu-xing-ti-yu-3.m3u8$LR•IPV4•41『线路10』 #EXTINF:-1 tvg-id="五星体育" tvg-name="五星体育" group-title="上海",五星体育 -https://stream1.freetv.fun/wu-xing-ti-yu-4.m3u8$LR•IPV4•41『线路11』 +https://stream1.freetv.fun/wu-xing-ti-yu-9.m3u8$LR•IPV4•41『线路11』 #EXTINF:-1 tvg-id="五星体育" tvg-name="五星体育" group-title="上海",五星体育 -https://stream1.freetv.fun/wu-xing-ti-yu-7.m3u8$LR•IPV4•41『线路12』 +https://stream1.freetv.fun/wu-xing-ti-yu-4.m3u8$LR•IPV4•41『线路12』 #EXTINF:-1 tvg-id="五星体育" tvg-name="五星体育" group-title="上海",五星体育 -http://home.wwang.pw:35455/itv/5000000010000017540.m3u8?cdn=bestzb$LR•IPV4•41『线路13』 +https://stream1.freetv.fun/wu-xing-ti-yu-7.m3u8$LR•IPV4•41『线路13』 #EXTINF:-1 tvg-id="五星体育" tvg-name="五星体育" group-title="上海",五星体育 -https://stream1.freetv.fun/wu-xing-ti-yu-1.m3u8$LR•IPV4•41『线路14』 +http://home.wwang.pw:35455/itv/5000000010000017540.m3u8?cdn=bestzb$LR•IPV4•41『线路14』 #EXTINF:-1 tvg-id="五星体育" tvg-name="五星体育" group-title="上海",五星体育 -http://bp-livetytv.bestv.cn/ch/bestvwxty.m3u8$LR•IPV4•41『线路15』 +https://stream1.freetv.fun/wu-xing-ti-yu-1.m3u8$LR•IPV4•41『线路15』 #EXTINF:-1 tvg-id="五星体育" tvg-name="五星体育" group-title="上海",五星体育 -https://hls-gateway.vpstv.net/streams/636980.m3u8$LR•IPV4•41『线路16』 +http://bp-livetytv.bestv.cn/ch/bestvwxty.m3u8$LR•IPV4•41『线路16』 #EXTINF:-1 tvg-id="五星体育" tvg-name="五星体育" group-title="上海",五星体育 -https://stream1.freetv.fun/ipv6-wu-xing-ti-yu-14.m3u8$LR•IPV4•41『线路17』 +https://hls-gateway.vpstv.net/streams/636980.m3u8$LR•IPV4•41『线路17』 #EXTINF:-1 tvg-id="五星体育" tvg-name="五星体育" group-title="上海",五星体育 -http://36.105.100.208:35455/itv/5000000010000017540.m3u8?cdn=bestzb$LR•IPV4•41『线路18』 +https://stream1.freetv.fun/ipv6-wu-xing-ti-yu-14.m3u8$LR•IPV4•41『线路18』 #EXTINF:-1 tvg-id="五星体育" tvg-name="五星体育" group-title="上海",五星体育 -https://t.freetv.fun/live/wu-xing-ti-yu-4.m3u8$LR•IPV4•41『线路19』 +http://36.105.100.208:35455/itv/5000000010000017540.m3u8?cdn=bestzb$LR•IPV4•41『线路19』 #EXTINF:-1 tvg-id="五星体育" tvg-name="五星体育" group-title="上海",五星体育 -https://stream1.freetv.fun/wu-xing-ti-yu-6.m3u8$LR•IPV4•41『线路20』 +https://t.freetv.fun/live/wu-xing-ti-yu-4.m3u8$LR•IPV4•41『线路20』 #EXTINF:-1 tvg-id="五星体育" tvg-name="五星体育" group-title="上海",五星体育 -https://stream1.freetv.fun/wu-xing-ti-yu-13.m3u8$LR•IPV4•41『线路21』 +https://stream1.freetv.fun/wu-xing-ti-yu-6.m3u8$LR•IPV4•41『线路21』 #EXTINF:-1 tvg-id="五星体育" tvg-name="五星体育" group-title="上海",五星体育 -https://stream1.freetv.fun/ipv6-wu-xing-ti-yu-7.m3u8$LR•IPV4•41『线路22』 +https://stream1.freetv.fun/wu-xing-ti-yu-13.m3u8$LR•IPV4•41『线路22』 #EXTINF:-1 tvg-id="五星体育" tvg-name="五星体育" group-title="上海",五星体育 -https://stream1.freetv.fun/wu-xing-ti-yu-12.m3u8$LR•IPV4•41『线路23』 +https://stream1.freetv.fun/ipv6-wu-xing-ti-yu-7.m3u8$LR•IPV4•41『线路23』 #EXTINF:-1 tvg-id="五星体育" tvg-name="五星体育" group-title="上海",五星体育 -https://stream1.freetv.fun/wu-xing-ti-yu-15.m3u8$LR•IPV4•41『线路24』 +https://stream1.freetv.fun/wu-xing-ti-yu-12.m3u8$LR•IPV4•41『线路24』 #EXTINF:-1 tvg-id="五星体育" tvg-name="五星体育" group-title="上海",五星体育 -http://63.141.230.178:82/gslb/zbdq5.m3u8?id=wxtyhd$LR•IPV4•41『线路25』 +https://stream1.freetv.fun/wu-xing-ti-yu-15.m3u8$LR•IPV4•41『线路25』 #EXTINF:-1 tvg-id="五星体育" tvg-name="五星体育" group-title="上海",五星体育 -http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=4759&tk=7d4ad8f156e3$LR•IPV4•41『线路26』 +http://63.141.230.178:82/gslb/zbdq5.m3u8?id=wxtyhd$LR•IPV4•41『线路26』 #EXTINF:-1 tvg-id="五星体育" tvg-name="五星体育" group-title="上海",五星体育 -https://stream1.freetv.fun/wu-xing-ti-yu-10.m3u8$LR•IPV4•41『线路27』 +http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=4759&tk=7d4ad8f156e3$LR•IPV4•41『线路27』 #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•41『线路28』 +https://stream1.freetv.fun/wu-xing-ti-yu-10.m3u8$LR•IPV4•41『线路28』 #EXTINF:-1 tvg-id="五星体育" tvg-name="五星体育" group-title="上海",五星体育 -http://3501776.xyz:35455/itv/5000000010000017540.m3u8?cdn=bestzb$LR•IPV4•41『线路29』 +https://migu.188766.xyz/?migutoken=ed5a02a3b87f3dcc808d4b733daf5cf9&id=%E4%BA%94%E6%98%9F%E4%BD%93%E8%82%B2&pp=1$LR•IPV4•41『线路29』 #EXTINF:-1 tvg-id="五星体育" tvg-name="五星体育" group-title="上海",五星体育 -https://stream1.freetv.fun/wu-xing-ti-yu-2.m3u8$LR•IPV4•41『线路30』 +http://3501776.xyz:35455/itv/5000000010000017540.m3u8?cdn=bestzb$LR•IPV4•41『线路30』 #EXTINF:-1 tvg-id="五星体育" tvg-name="五星体育" group-title="上海",五星体育 -https://t.freetv.fun/live/wu-xing-ti-yu-1.m3u8$LR•IPV4•41『线路31』 +https://stream1.freetv.fun/wu-xing-ti-yu-2.m3u8$LR•IPV4•41『线路31』 #EXTINF:-1 tvg-id="五星体育" tvg-name="五星体育" group-title="上海",五星体育 -https://stream1.freetv.fun/wu-xing-ti-yu-8.m3u8$LR•IPV4•41『线路32』 +https://t.freetv.fun/live/wu-xing-ti-yu-1.m3u8$LR•IPV4•41『线路32』 #EXTINF:-1 tvg-id="五星体育" tvg-name="五星体育" group-title="上海",五星体育 -https://zby.130519.xyz/PLTV/11/224/3221225732/index.m3u8$LR•IPV4•41『线路33』 +https://stream1.freetv.fun/wu-xing-ti-yu-8.m3u8$LR•IPV4•41『线路33』 #EXTINF:-1 tvg-id="五星体育" tvg-name="五星体育" group-title="上海",五星体育 -http://live.xmcdn.com/live/57/64.m3u8$LR•IPV4•41『线路34』 +https://zby.130519.xyz/PLTV/11/224/3221225732/index.m3u8$LR•IPV4•41『线路34』 #EXTINF:-1 tvg-id="五星体育" tvg-name="五星体育" group-title="上海",五星体育 -https://stream1.freetv.fun/wu-xing-ti-yu-11.m3u8$LR•IPV4•41『线路35』 +http://live.xmcdn.com/live/57/64.m3u8$LR•IPV4•41『线路35』 #EXTINF:-1 tvg-id="五星体育" tvg-name="五星体育" group-title="上海",五星体育 -http://8.138.7.223/tv/shtv.php?id=wxty$LR•IPV4•41『线路36』 +https://stream1.freetv.fun/wu-xing-ti-yu-11.m3u8$LR•IPV4•41『线路36』 #EXTINF:-1 tvg-id="五星体育" tvg-name="五星体育" group-title="上海",五星体育 -https://stream1.freetv.fun/ipv6-wu-xing-ti-yu-10.m3u8$LR•IPV4•41『线路37』 +http://8.138.7.223/tv/shtv.php?id=wxty$LR•IPV4•41『线路37』 #EXTINF:-1 tvg-id="五星体育" tvg-name="五星体育" group-title="上海",五星体育 -https://stream1.freetv.fun/wu-xing-ti-yu-13.ctv$LR•IPV4•41『线路38』 +https://stream1.freetv.fun/ipv6-wu-xing-ti-yu-10.m3u8$LR•IPV4•41『线路38』 #EXTINF:-1 tvg-id="五星体育" tvg-name="五星体育" group-title="上海",五星体育 -http://api2.52tb.xyz/info?id=375&token=20230120rdbtgv$LR•IPV4•41『线路39』 +https://stream1.freetv.fun/wu-xing-ti-yu-13.ctv$LR•IPV4•41『线路39』 #EXTINF:-1 tvg-id="五星体育" tvg-name="五星体育" group-title="上海",五星体育 -https://stream1.freetv.fun/ipv6-wu-xing-ti-yu-8.m3u8$LR•IPV4•41『线路40』 +http://api2.52tb.xyz/info?id=375&token=20230120rdbtgv$LR•IPV4•41『线路40』 #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•41『线路41』 +https://stream1.freetv.fun/ipv6-wu-xing-ti-yu-8.m3u8$LR•IPV4•41『线路41』 #EXTINF:-1 tvg-id="东方影视" tvg-name="东方影视" group-title="上海",东方影视 -https://www.freetv.top/migu/617290047.m3u8?migutoken=86c02ad0875d5cc49d77bcc8bdb628f2c9d508ffc323b964a03c8f92dde4afafa0345cf5a8fefbdf915c748e3d11c6c18e27ae1e21a609cec31a45e6c437db26a7a243625f9cf35c271171a22c$LR•IPV4•31『线路1』 +http://t.061899.xyz/tl/tl.php?id=dfys$LR•IPV4•31『线路1』 #EXTINF:-1 tvg-id="东方影视" tvg-name="东方影视" group-title="上海",东方影视 -https://zby.130519.xyz/PLTV/11/224/3221225744/index.m3u8$LR•IPV4•31『线路2』 +https://www.freetv.top/migu/617290047.m3u8?migutoken=86c02ad0875d5cc49d77bcc8bdb628f2c9d508ffc323b964a03c8f92dde4afafa0345cf5a8fefbdf915c748e3d11c6c18e27ae1e21a609cec31a45e6c437db26a7a243625f9cf35c271171a22c$LR•IPV4•31『线路2』 #EXTINF:-1 tvg-id="东方影视" tvg-name="东方影视" group-title="上海",东方影视 -https://stream1.freetv.fun/dong-fang-ying-shi-4.ctv$LR•IPV4•31『线路3』 +https://zby.130519.xyz/PLTV/11/224/3221225744/index.m3u8$LR•IPV4•31『线路3』 #EXTINF:-1 tvg-id="东方影视" tvg-name="东方影视" group-title="上海",东方影视 -https://stream1.freetv.fun/dong-fang-ying-shi-6.ctv$LR•IPV4•31『线路4』 +https://stream1.freetv.fun/dong-fang-ying-shi-4.ctv$LR•IPV4•31『线路4』 #EXTINF:-1 tvg-id="东方影视" tvg-name="东方影视" group-title="上海",东方影视 -https://stream1.freetv.fun/dong-fang-ying-shi-2.m3u8$LR•IPV4•31『线路5』 +https://stream1.freetv.fun/dong-fang-ying-shi-6.ctv$LR•IPV4•31『线路5』 #EXTINF:-1 tvg-id="东方影视" tvg-name="东方影视" group-title="上海",东方影视 -https://stream1.freetv.fun/dong-fang-ying-shi-1.m3u8$LR•IPV4•31『线路6』 +https://stream1.freetv.fun/dong-fang-ying-shi-2.m3u8$LR•IPV4•31『线路6』 #EXTINF:-1 tvg-id="东方影视" tvg-name="东方影视" group-title="上海",东方影视 -https://stream1.freetv.fun/dong-fang-ying-shi-6.m3u8$LR•IPV4•31『线路7』 +https://stream1.freetv.fun/dong-fang-ying-shi-1.m3u8$LR•IPV4•31『线路7』 #EXTINF:-1 tvg-id="东方影视" tvg-name="东方影视" group-title="上海",东方影视 -https://stream1.freetv.fun/ipv6-dong-fang-ying-shi-13.m3u8$LR•IPV4•31『线路8』 +https://stream1.freetv.fun/dong-fang-ying-shi-6.m3u8$LR•IPV4•31『线路8』 #EXTINF:-1 tvg-id="东方影视" tvg-name="东方影视" group-title="上海",东方影视 -http://111.228.4.117:6789/migu720p.php?id=617290047$LR•IPV4•31『线路9』 +https://stream1.freetv.fun/ipv6-dong-fang-ying-shi-13.m3u8$LR•IPV4•31『线路9』 #EXTINF:-1 tvg-id="东方影视" tvg-name="东方影视" group-title="上海",东方影视 -https://stream1.freetv.fun/dong-fang-ying-shi-10.m3u8$LR•IPV4•31『线路10』 +http://111.228.4.117:6789/migu720p.php?id=617290047$LR•IPV4•31『线路10』 #EXTINF:-1 tvg-id="东方影视" tvg-name="东方影视" group-title="上海",东方影视 -https://stream1.freetv.fun/dong-fang-ying-shi-7.m3u8$LR•IPV4•31『线路11』 +https://stream1.freetv.fun/dong-fang-ying-shi-10.m3u8$LR•IPV4•31『线路11』 #EXTINF:-1 tvg-id="东方影视" tvg-name="东方影视" group-title="上海",东方影视 -http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=2690&tk=e640d0a1bf70$LR•IPV4•31『线路12』 +https://stream1.freetv.fun/dong-fang-ying-shi-7.m3u8$LR•IPV4•31『线路12』 #EXTINF:-1 tvg-id="东方影视" tvg-name="东方影视" group-title="上海",东方影视 -https://stream1.freetv.fun/dong-fang-ying-shi-13.m3u8$LR•IPV4•31『线路13』 +http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=2690&tk=e640d0a1bf70$LR•IPV4•31『线路13』 #EXTINF:-1 tvg-id="东方影视" tvg-name="东方影视" group-title="上海",东方影视 -https://stream1.freetv.fun/ipv6-dong-fang-ying-shi-5.m3u8$LR•IPV4•31『线路14』 +https://stream1.freetv.fun/dong-fang-ying-shi-13.m3u8$LR•IPV4•31『线路14』 #EXTINF:-1 tvg-id="东方影视" tvg-name="东方影视" group-title="上海",东方影视 -http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=1407&tk=e503191f8e20$LR•IPV4•31『线路15』 +https://stream1.freetv.fun/ipv6-dong-fang-ying-shi-5.m3u8$LR•IPV4•31『线路15』 #EXTINF:-1 tvg-id="东方影视" tvg-name="东方影视" group-title="上海",东方影视 -https://stream1.freetv.fun/ipv6-dong-fang-ying-shi-6.m3u8$LR•IPV4•31『线路16』 +http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=1407&tk=e503191f8e20$LR•IPV4•31『线路16』 #EXTINF:-1 tvg-id="东方影视" tvg-name="东方影视" group-title="上海",东方影视 -https://stream1.freetv.fun/dong-fang-ying-shi-12.m3u8$LR•IPV4•31『线路17』 +https://stream1.freetv.fun/ipv6-dong-fang-ying-shi-6.m3u8$LR•IPV4•31『线路17』 #EXTINF:-1 tvg-id="东方影视" tvg-name="东方影视" group-title="上海",东方影视 -https://stream1.freetv.fun/ipv6-dong-fang-ying-shi-4.m3u8$LR•IPV4•31『线路18』 +https://stream1.freetv.fun/dong-fang-ying-shi-12.m3u8$LR•IPV4•31『线路18』 #EXTINF:-1 tvg-id="东方影视" tvg-name="东方影视" group-title="上海",东方影视 -https://stream1.freetv.fun/ipv6-dong-fang-ying-shi-9.m3u8$LR•IPV4•31『线路19』 +https://stream1.freetv.fun/ipv6-dong-fang-ying-shi-4.m3u8$LR•IPV4•31『线路19』 #EXTINF:-1 tvg-id="东方影视" tvg-name="东方影视" group-title="上海",东方影视 -http://111.22.153.159:35455/itv/5000000010000032212.m3u8?cdn=bestzb$LR•IPV4•31『线路20』 +https://stream1.freetv.fun/ipv6-dong-fang-ying-shi-9.m3u8$LR•IPV4•31『线路20』 #EXTINF:-1 tvg-id="东方影视" tvg-name="东方影视" group-title="上海",东方影视 -https://stream1.freetv.fun/ipv6-dong-fang-ying-shi-7.m3u8$LR•IPV4•31『线路21』 +http://111.22.153.159:35455/itv/5000000010000032212.m3u8?cdn=bestzb$LR•IPV4•31『线路21』 #EXTINF:-1 tvg-id="东方影视" tvg-name="东方影视" group-title="上海",东方影视 -http://150.158.112.123/公众号~玉玉软件库/mg.php?id=dfys$LR•IPV4•31『线路22』 +https://stream1.freetv.fun/ipv6-dong-fang-ying-shi-7.m3u8$LR•IPV4•31『线路22』 #EXTINF:-1 tvg-id="东方影视" tvg-name="东方影视" group-title="上海",东方影视 -http://hlsztemgsplive.miguvideo.com:8080/wd_r4/dfl/dianshijuhd/1200/index.m3u8?msisdn=2be6b2ec9fcf10d2c2457e2c710e172c&mdspid=&spid=699212&netType=0&sid=5500002274&pid=2028597139×tamp=20260717060205&Channel_ID=0116_2600034600-99000-201600010010028&ProgramID=617290047&ParentNodeID=-99&assertID=5500002274&client_ip=171.8.79.254&SecurityKey=20260717060205&promotionId=&mvid=5100001715&mcid=500020&playurlVersion=WX-A1-9.6.1.6-SNAPSHOT&userid=&jmhm=&videocodec=h264&appCode=miguvideo_android&bean=mgspad&tid=android&conFee=0&encrypt=c4b980e210525d128eccf975001aa253&sv=10004&ct=android$LR•IPV4•31『线路23』 +http://150.158.112.123/公众号~玉玉软件库/mg.php?id=dfys$LR•IPV4•31『线路23』 #EXTINF:-1 tvg-id="东方影视" tvg-name="东方影视" group-title="上海",东方影视 -http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=6090&tk=b53028476470$LR•IPV4•31『线路24』 +http://hlsztemgsplive.miguvideo.com:8080/wd_r4/dfl/dianshijuhd/1200/index.m3u8?msisdn=2be6b2ec9fcf10d2c2457e2c710e172c&mdspid=&spid=699212&netType=0&sid=5500002274&pid=2028597139×tamp=20260717060205&Channel_ID=0116_2600034600-99000-201600010010028&ProgramID=617290047&ParentNodeID=-99&assertID=5500002274&client_ip=171.8.79.254&SecurityKey=20260717060205&promotionId=&mvid=5100001715&mcid=500020&playurlVersion=WX-A1-9.6.1.6-SNAPSHOT&userid=&jmhm=&videocodec=h264&appCode=miguvideo_android&bean=mgspad&tid=android&conFee=0&encrypt=c4b980e210525d128eccf975001aa253&sv=10004&ct=android$LR•IPV4•31『线路24』 #EXTINF:-1 tvg-id="东方影视" tvg-name="东方影视" group-title="上海",东方影视 -https://stream1.freetv.fun/ipv6-dong-fang-ying-shi-3.m3u8$LR•IPV4•31『线路25』 +http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=6090&tk=b53028476470$LR•IPV4•31『线路25』 #EXTINF:-1 tvg-id="东方影视" tvg-name="东方影视" group-title="上海",东方影视 -https://stream1.freetv.fun/ipv6-dong-fang-ying-shi-2.m3u8$LR•IPV4•31『线路26』 +https://stream1.freetv.fun/ipv6-dong-fang-ying-shi-3.m3u8$LR•IPV4•31『线路26』 #EXTINF:-1 tvg-id="东方影视" tvg-name="东方影视" group-title="上海",东方影视 -http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=1285&tk=2aca1ad9a849$LR•IPV4•31『线路27』 +https://stream1.freetv.fun/ipv6-dong-fang-ying-shi-2.m3u8$LR•IPV4•31『线路27』 #EXTINF:-1 tvg-id="东方影视" tvg-name="东方影视" group-title="上海",东方影视 -https://stream1.freetv.fun/dong-fang-ying-shi-8.m3u8$LR•IPV4•31『线路28』 +http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=1285&tk=2aca1ad9a849$LR•IPV4•31『线路28』 #EXTINF:-1 tvg-id="东方影视" tvg-name="东方影视" group-title="上海",东方影视 -https://stream1.freetv.fun/ipv6-dong-fang-ying-shi-8.m3u8$LR•IPV4•31『线路29』 +https://stream1.freetv.fun/dong-fang-ying-shi-8.m3u8$LR•IPV4•31『线路29』 #EXTINF:-1 tvg-id="东方影视" tvg-name="东方影视" group-title="上海",东方影视 -http://t.061899.xyz/tl/tl.php?id=dfys$LR•IPV4•31『线路30』 +https://stream1.freetv.fun/ipv6-dong-fang-ying-shi-8.m3u8$LR•IPV4•31『线路30』 #EXTINF:-1 tvg-id="东方影视" tvg-name="东方影视" group-title="上海",东方影视 http://43.251.226.89:8080/play/58.m3u8$LR•IPV4•31『线路31』 #EXTINF:-1 tvg-id="东方财经" tvg-name="东方财经" group-title="上海",东方财经 @@ -5637,76 +5653,78 @@ http://111.22.153.159:35455/itv/5000000007000010003.m3u8?cdn=bestzb$LR•IPV4• http://61.133.118.228:5001/douyu/9548279$LR•IPV4•10『线路9』 #EXTINF:-1 tvg-id="东方财经" tvg-name="东方财经" group-title="上海",东方财经 https://live.264788.xyz/channel/dongfangcaijing?streamid=a031f2386ada4bc1264edce79c80dd18&livekey=01WgOR41rriMmMkzNsd0UoaxJRwetZdxIvtVk$LR•IPV4•10『线路10』 +#EXTINF:-1 tvg-id="法治天地" tvg-name="法治天地" group-title="上海",法治天地 +http://t.061899.xyz/tl/tl.php?id=fztd$LR•IPV4 #EXTINF:-1 tvg-id="第一财经" tvg-name="第一财经" group-title="上海",第一财经 -https://migu.188766.xyz/?migutoken=20bb1a06124bd6ea328162fe9605882d&id=dycj&type=sz$LR•IPV4•49『线路1』 +http://t.061899.xyz/tl/tl.php?id=dycj$LR•IPV4•49『线路1』 #EXTINF:-1 tvg-id="第一财经" tvg-name="第一财经" group-title="上海",第一财经 -https://stream1.freetv.fun/ipv6-di-yi-cai-jing-6.m3u8$LR•IPV4•49『线路2』 +https://migu.188766.xyz/?migutoken=20bb1a06124bd6ea328162fe9605882d&id=dycj&type=sz$LR•IPV4•49『线路2』 #EXTINF:-1 tvg-id="第一财经" tvg-name="第一财经" group-title="上海",第一财经 -http://a1live.livecdn.yicai.com/live/radio_tv.m3u8$LR•IPV4•49『线路3』 +https://stream1.freetv.fun/ipv6-di-yi-cai-jing-6.m3u8$LR•IPV4•49『线路3』 #EXTINF:-1 tvg-id="第一财经" tvg-name="第一财经" group-title="上海",第一财经 -http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=4663&tk=f6cc1e0a0e1a$LR•IPV4•49『线路4』 +http://a1live.livecdn.yicai.com/live/radio_tv.m3u8$LR•IPV4•49『线路4』 #EXTINF:-1 tvg-id="第一财经" tvg-name="第一财经" group-title="上海",第一财经 -http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=4640&tk=e503191f8e20$LR•IPV4•49『线路5』 +http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=4663&tk=f6cc1e0a0e1a$LR•IPV4•49『线路5』 #EXTINF:-1 tvg-id="第一财经" tvg-name="第一财经" group-title="上海",第一财经 -http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=7436&tk=b53028476470$LR•IPV4•49『线路6』 +http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=4640&tk=e503191f8e20$LR•IPV4•49『线路6』 #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•49『线路7』 +http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=7436&tk=b53028476470$LR•IPV4•49『线路7』 #EXTINF:-1 tvg-id="第一财经" tvg-name="第一财经" group-title="上海",第一财经 -https://stream1.freetv.fun/di-yi-cai-jing-3.m3u8$LR•IPV4•49『线路8』 +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•49『线路8』 #EXTINF:-1 tvg-id="第一财经" tvg-name="第一财经" group-title="上海",第一财经 -http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=4810&tk=23a9aca1f79f$LR•IPV4•49『线路9』 +https://stream1.freetv.fun/di-yi-cai-jing-3.m3u8$LR•IPV4•49『线路9』 #EXTINF:-1 tvg-id="第一财经" tvg-name="第一财经" group-title="上海",第一财经 -http://43.251.226.89:8080/play/59.m3u8$LR•IPV4•49『线路10』 +http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=4810&tk=23a9aca1f79f$LR•IPV4•49『线路10』 #EXTINF:-1 tvg-id="第一财经" tvg-name="第一财经" group-title="上海",第一财经 -https://www.freetv.top/migu/608780988.m3u8?migutoken=62e21890acbd9928d0be0b4eae9f5e32e1879604b785ee7ce8751d5001a9ff431d7714025aa03d48a2b190ff214e5115dcb6ba455c3d26b1db0f5b3cb49c5967429ff3b1fe8e96e87cc6146543$LR•IPV4•49『线路11』 +http://43.251.226.89:8080/play/59.m3u8$LR•IPV4•49『线路11』 #EXTINF:-1 tvg-id="第一财经" tvg-name="第一财经" group-title="上海",第一财经 -https://stream1.freetv.fun/di-yi-cai-jing-6.ctv$LR•IPV4•49『线路12』 +https://www.freetv.top/migu/608780988.m3u8?migutoken=62e21890acbd9928d0be0b4eae9f5e32e1879604b785ee7ce8751d5001a9ff431d7714025aa03d48a2b190ff214e5115dcb6ba455c3d26b1db0f5b3cb49c5967429ff3b1fe8e96e87cc6146543$LR•IPV4•49『线路12』 #EXTINF:-1 tvg-id="第一财经" tvg-name="第一财经" group-title="上海",第一财经 -https://satellitepull.cnr.cn/live/wx32dycjgb/playlist.m3u8$LR•IPV4•49『线路13』 +https://stream1.freetv.fun/di-yi-cai-jing-6.ctv$LR•IPV4•49『线路13』 #EXTINF:-1 tvg-id="第一财经" tvg-name="第一财经" group-title="上海",第一财经 -https://stream1.freetv.fun/di-yi-cai-jing-10.m3u8$LR•IPV4•49『线路14』 +https://satellitepull.cnr.cn/live/wx32dycjgb/playlist.m3u8$LR•IPV4•49『线路14』 #EXTINF:-1 tvg-id="第一财经" tvg-name="第一财经" group-title="上海",第一财经 -https://stream1.freetv.fun/ipv6-di-yi-cai-jing-3.m3u8$LR•IPV4•49『线路15』 +https://stream1.freetv.fun/di-yi-cai-jing-10.m3u8$LR•IPV4•49『线路15』 #EXTINF:-1 tvg-id="第一财经" tvg-name="第一财经" group-title="上海",第一财经 -https://hls-gateway.vpstv.net/streams/708851.m3u8$LR•IPV4•49『线路16』 +https://stream1.freetv.fun/ipv6-di-yi-cai-jing-3.m3u8$LR•IPV4•49『线路16』 #EXTINF:-1 tvg-id="第一财经" tvg-name="第一财经" group-title="上海",第一财经 -https://stream1.freetv.fun/di-yi-cai-jing-9.m3u8$LR•IPV4•49『线路17』 +https://hls-gateway.vpstv.net/streams/708851.m3u8$LR•IPV4•49『线路17』 #EXTINF:-1 tvg-id="第一财经" tvg-name="第一财经" group-title="上海",第一财经 -http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=8321&tk=e640d0a1bf70$LR•IPV4•49『线路18』 +https://stream1.freetv.fun/di-yi-cai-jing-9.m3u8$LR•IPV4•49『线路18』 #EXTINF:-1 tvg-id="第一财经" tvg-name="第一财经" group-title="上海",第一财经 -http://47.104.178.59:3566/608780988$LR•IPV4•49『线路19』 +http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=8321&tk=e640d0a1bf70$LR•IPV4•49『线路19』 #EXTINF:-1 tvg-id="第一财经" tvg-name="第一财经" group-title="上海",第一财经 -http://satellitepull.cnr.cn/live/wx32dycjgb/playlist.m3u8$LR•IPV4•49『线路20』 +http://47.104.178.59:3566/608780988$LR•IPV4•49『线路20』 #EXTINF:-1 tvg-id="第一财经" tvg-name="第一财经" group-title="上海",第一财经 -https://stream1.freetv.fun/ipv6-di-yi-cai-jing-11.m3u8$LR•IPV4•49『线路21』 +http://satellitepull.cnr.cn/live/wx32dycjgb/playlist.m3u8$LR•IPV4•49『线路21』 #EXTINF:-1 tvg-id="第一财经" tvg-name="第一财经" group-title="上海",第一财经 -https://mgtv.ottiptv.cc/migu/608780988.m3u8?migutoken=0c7df30d952e5d120406d3eb259cd5e26ec6aa86037008719de147cc6fbc34e877c3e3d7b9617267f35521bdddc4c5995e6fc0583816a5df1bfe19814868525e736733676761a4b2d4db618e84$LR•IPV4•49『线路22』 +https://stream1.freetv.fun/ipv6-di-yi-cai-jing-11.m3u8$LR•IPV4•49『线路22』 #EXTINF:-1 tvg-id="第一财经" tvg-name="第一财经" group-title="上海",第一财经 -http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=0917&tk=2aca1ad9a849$LR•IPV4•49『线路23』 +https://mgtv.ottiptv.cc/migu/608780988.m3u8?migutoken=0c7df30d952e5d120406d3eb259cd5e26ec6aa86037008719de147cc6fbc34e877c3e3d7b9617267f35521bdddc4c5995e6fc0583816a5df1bfe19814868525e736733676761a4b2d4db618e84$LR•IPV4•49『线路23』 #EXTINF:-1 tvg-id="第一财经" tvg-name="第一财经" group-title="上海",第一财经 -http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=6806&tk=a0c4f6cfaba3$LR•IPV4•49『线路24』 +http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=0917&tk=2aca1ad9a849$LR•IPV4•49『线路24』 #EXTINF:-1 tvg-id="第一财经" tvg-name="第一财经" group-title="上海",第一财经 -https://stream1.freetv.fun/di-yi-cai-jing-7.m3u8$LR•IPV4•49『线路25』 +http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=6806&tk=a0c4f6cfaba3$LR•IPV4•49『线路25』 #EXTINF:-1 tvg-id="第一财经" tvg-name="第一财经" group-title="上海",第一财经 -https://stream1.freetv.fun/di-yi-cai-jing-13.m3u8$LR•IPV4•49『线路26』 +https://stream1.freetv.fun/di-yi-cai-jing-7.m3u8$LR•IPV4•49『线路26』 #EXTINF:-1 tvg-id="第一财经" tvg-name="第一财经" group-title="上海",第一财经 -http://101.43.145.141:12002/itv/5000000010000027146.m3u8?cdn=bestzb$LR•IPV4•49『线路27』 +https://stream1.freetv.fun/di-yi-cai-jing-13.m3u8$LR•IPV4•49『线路27』 #EXTINF:-1 tvg-id="第一财经" tvg-name="第一财经" group-title="上海",第一财经 -http://123.113.205.253:3000/608780988$LR•IPV4•49『线路28』 +http://101.43.145.141:12002/itv/5000000010000027146.m3u8?cdn=bestzb$LR•IPV4•49『线路28』 #EXTINF:-1 tvg-id="第一财经" tvg-name="第一财经" group-title="上海",第一财经 -https://zby.130519.xyz/PLTV/11/224/3221225737/index.m3u8$LR•IPV4•49『线路29』 +http://123.113.205.253:3000/608780988$LR•IPV4•49『线路29』 #EXTINF:-1 tvg-id="第一财经" tvg-name="第一财经" group-title="上海",第一财经 -http://111.228.4.117:6789/migu720p.php?id=608780988$LR•IPV4•49『线路30』 +https://zby.130519.xyz/PLTV/11/224/3221225737/index.m3u8$LR•IPV4•49『线路30』 #EXTINF:-1 tvg-id="第一财经" tvg-name="第一财经" group-title="上海",第一财经 -http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=0771&tk=a0c4f6cfaba3$LR•IPV4•49『线路31』 +http://111.228.4.117:6789/migu720p.php?id=608780988$LR•IPV4•49『线路31』 #EXTINF:-1 tvg-id="第一财经" tvg-name="第一财经" group-title="上海",第一财经 -http://bp-livetytv.bestv.cn/ch/bestvdycj.m3u8$LR•IPV4•49『线路32』 +http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=0771&tk=a0c4f6cfaba3$LR•IPV4•49『线路32』 #EXTINF:-1 tvg-id="第一财经" tvg-name="第一财经" group-title="上海",第一财经 -https://stream1.freetv.fun/di-yi-cai-jing-2.m3u8$LR•IPV4•49『线路33』 +http://bp-livetytv.bestv.cn/ch/bestvdycj.m3u8$LR•IPV4•49『线路33』 #EXTINF:-1 tvg-id="第一财经" tvg-name="第一财经" group-title="上海",第一财经 -https://www.freetv.top/migu/608780988.m3u8?migutoken=94882e783c75b9369ca6a018f97fe3a3c0018f9da123958e316bb810ef22e907f0672a7d63496e5cb5041eb125b1f1ee6996ac856b0c0c9828348878b8a4101384b9a851fb1dea60a7fafeea35$LR•IPV4•49『线路34』 +https://stream1.freetv.fun/di-yi-cai-jing-2.m3u8$LR•IPV4•49『线路34』 #EXTINF:-1 tvg-id="第一财经" tvg-name="第一财经" group-title="上海",第一财经 -http://t.061899.xyz/tl/tl.php?id=dycj$LR•IPV4•49『线路35』 +https://www.freetv.top/migu/608780988.m3u8?migutoken=94882e783c75b9369ca6a018f97fe3a3c0018f9da123958e316bb810ef22e907f0672a7d63496e5cb5041eb125b1f1ee6996ac856b0c0c9828348878b8a4101384b9a851fb1dea60a7fafeea35$LR•IPV4•49『线路35』 #EXTINF:-1 tvg-id="第一财经" tvg-name="第一财经" group-title="上海",第一财经 https://stream1.freetv.fun/ipv6-di-yi-cai-jing-5.m3u8$LR•IPV4•49『线路36』 #EXTINF:-1 tvg-id="第一财经" tvg-name="第一财经" group-title="上海",第一财经 @@ -5758,293 +5776,293 @@ http://wouu.net:9977/udp/239.93.1.137:5140$LR•IPV4•10『线路10』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 http://l.cztvcloud.com/channels/lantian/SXshengzhou1/720p.m3u8?zzhed#http://l.cztvcloud.com/channels/lantian/SXshengzhou1/720p.m3u8$LR•IPV4•115『线路1』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -https://stream1.freetv.fun/ipv6-ji-nan-xin-wen-zong-he-8.m3u8$LR•IPV4•115『线路2』 +https://stream2.jlntv.cn/baicheng1/sd/live.m3u8$LR•IPV4•115『线路2』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -https://stream1.freetv.fun/ji-nan-xin-wen-zong-he-7.m3u8$LR•IPV4•115『线路3』 +http://live.cztv.cc:85/live/xwpd.m3u8$LR•IPV4•115『线路3』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -http://stream.zztvzd.com/1/sd/live.m3u8$LR•IPV4•115『线路4』 +http://117.156.28.119/270000001111/1110000001/index.m3u8$LR•IPV4•115『线路4』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -http://stream.zztvzd.com/1/sd/live.m3u8?shandd$LR•IPV4•115『线路5』 +http://pili-live-hls.hebitv.com/hebi/hebi.m3u8$LR•IPV4•115『线路5』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -https://stream1.freetv.fun/ipv6-wei-fang-xin-wen-zong-he-1.m3u8$LR•IPV4•115『线路6』 +https://stream2.jlntv.cn/naxw/sd/live.m3u8$LR•IPV4•115『线路6』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -https://stream1.freetv.fun/ipv6-wei-fang-xin-wen-zong-he-2.m3u8$LR•IPV4•115『线路7』 +http://uni6rtmp.tulix.tv:1935/vbstv/vbsabr.smil/chunklist_w439903609_b1228800.m3u8$LR•IPV4•115『线路7』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -http://live.yantaitv.cn/live/3e81a8879da44c5dadf3bd9c10468e1c/9b776d420ee4438199b7657c8eb88f07-1.m3u8$LR•IPV4•115『线路8』 +http://221.5.213.4:30000/1111.m3u8$LR•IPV4•115『线路8』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -http://live.hznet.tv:1935/live/live1/500k/tzwj_video.m3u8$LR•IPV4•115『线路9』 +https://stream2.jlntv.cn/jilin1/sd/live.m3u8$LR•IPV4•115『线路9』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -http://live.hznet.tv:1935/live/live1/500K/tzwj_video.m3u8?shandd$LR•IPV4•115『线路10』 +http://30515.hlsplay.aodianyun.com/lms_30515/tv_channel_239.m3u8$LR•IPV4•115『线路10』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -http://live.wanyuannews.com/wytv/hd/live.m3u8?zsicd$LR•IPV4•115『线路11』 +https://stream2.jlntv.cn/sptv/sd/live.m3u8$LR•IPV4•115『线路11』 #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•115『线路12』 +http://live.ahsz.tv/video/s10001-szzh/index.m3u8$LR•IPV4•115『线路12』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -https://stream1.freetv.fun/xin-wen-zong-he-9.m3u8$LR•IPV4•115『线路13』 +http://guangshui.live.tempsource.cjyun.org/videotmp/s10146-GSXW.m3u8$LR•IPV4•115『线路13』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -http://150.158.112.123/公众号~玉玉软件库/mg.php?id=shxwzh$LR•IPV4•115『线路14』 +https://stream2.jlntv.cn/jlyb/sd/live.m3u8$LR•IPV4•115『线路14』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -https://stream1.freetv.fun/shang-hai-xin-wen-zong-he-3.m3u8$LR•IPV4•115『线路15』 +https://stream2.jlntv.cn/sytv/sd/live.m3u8$LR•IPV4•115『线路15』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -https://stream1.freetv.fun/xin-wen-zong-he-13.m3u8$LR•IPV4•115『线路16』 +http://222.179.155.21:1935/ch1.m3u8$LR•IPV4•115『线路16』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -http://43.251.226.89:8080/play/57.m3u8$LR•IPV4•115『线路17』 +http://117.172.215.250:8083/videos/live/35/39/GQVbrgob5CGJM/GQVbrgob5CGJM.m3u8$LR•IPV4•115『线路17』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -http://t.061899.xyz/tl/tl.php?id=shxwzh$LR•IPV4•115『线路18』 +http://220.180.110.101:8083/videos/live/36/57/hwEHU4UVQ1Iv5/hwEHU4UVQ1Iv5.m3u8$LR•IPV4•115『线路18』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=2810&tk=a0c4f6cfaba3$LR•IPV4•115『线路19』 +http://live.hnxttv.com:9601/live/xwzh/800K/tzwj_video.m3u8$LR•IPV4•115『线路19』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -http://123.113.205.253:3000/651632657$LR•IPV4•115『线路20』 +http://stream.bzcm.net/2/sd/live.m3u8$LR•IPV4•115『线路20』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -https://live.pzhkai.com/xwzhtl/sd/live.m3u8$LR•IPV4•115『线路21』 +http://117.156.28.119/270000001111/1110000145/index.m3u8$LR•IPV4•115『线路21』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -https://stream1.freetv.fun/xin-wen-zong-he-14.m3u8$LR•IPV4•115『线路22』 +https://stream2.jlntv.cn/baishan1/sd/live.m3u8$LR•IPV4•115『线路22』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -https://stream1.freetv.fun/ipv6-xin-wen-zong-he-14.m3u8$LR•IPV4•115『线路23』 +http://live1.wuhubtv.com/channel1/sd/live.m3u8$LR•IPV4•115『线路23』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -http://tvpull.dxhmt.cn:9081/tv/10326-1.m3u8$LR•IPV4•115『线路24』 +http://palive.patv123.com:8091/live/xwpd_800K.m3u8$LR•IPV4•115『线路24』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -https://stream1.freetv.fun/shang-hai-xin-wen-zong-he-10.m3u8$LR•IPV4•115『线路25』 +https://stream2.jlntv.cn/liaoyuan1/sd/live.m3u8$LR•IPV4•115『线路25』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -https://stream1.freetv.fun/shang-hai-xin-wen-zong-he-1.m3u8$LR•IPV4•115『线路26』 +https://stream1.freetv.fun/ipv6-ji-nan-xin-wen-zong-he-8.m3u8$LR•IPV4•115『线路26』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -http://api2.52tb.xyz/info?id=371&token=20230218qkyjia$LR•IPV4•115『线路27』 +https://stream1.freetv.fun/ji-nan-xin-wen-zong-he-7.m3u8$LR•IPV4•115『线路27』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -https://zby.130519.xyz/PLTV/11/224/3221226136/index.m3u8$LR•IPV4•115『线路28』 +http://stream.zztvzd.com/1/sd/live.m3u8$LR•IPV4•115『线路28』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -https://m3u8-channel.lytv.tv/nmip-media/channellive/channel111841/playlist.m3u8$LR•IPV4•115『线路29』 +http://stream.zztvzd.com/1/sd/live.m3u8?shandd$LR•IPV4•115『线路29』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -https://stream1.freetv.fun/shang-hai-xin-wen-zong-he-12.m3u8$LR•IPV4•115『线路30』 +https://stream1.freetv.fun/ipv6-wei-fang-xin-wen-zong-he-1.m3u8$LR•IPV4•115『线路30』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=2394&tk=e503191f8e20$LR•IPV4•115『线路31』 +https://stream1.freetv.fun/ipv6-wei-fang-xin-wen-zong-he-2.m3u8$LR•IPV4•115『线路31』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -https://stream1.freetv.fun/xin-wen-zong-he-11.ctv$LR•IPV4•115『线路32』 +http://live.yantaitv.cn/live/3e81a8879da44c5dadf3bd9c10468e1c/9b776d420ee4438199b7657c8eb88f07-1.m3u8$LR•IPV4•115『线路32』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=0708&tk=23a9aca1f79f$LR•IPV4•115『线路33』 +http://live.hznet.tv:1935/live/live1/500k/tzwj_video.m3u8$LR•IPV4•115『线路33』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=5985&tk=e640d0a1bf70$LR•IPV4•115『线路34』 +http://live.hznet.tv:1935/live/live1/500K/tzwj_video.m3u8?shandd$LR•IPV4•115『线路34』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -https://stream1.freetv.fun/xin-wen-zong-he-5.m3u8$LR•IPV4•115『线路35』 +http://live.wanyuannews.com/wytv/hd/live.m3u8?zsicd$LR•IPV4•115『线路35』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=5014&tk=a0c4f6cfaba3$LR•IPV4•115『线路36』 +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•115『线路36』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -https://mgtv.ottiptv.cc/migu/651632657.m3u8?migutoken=348c9164063c2b1df215dd2fa7cd92cb119d8a335ae0edfb5d615a6c714e71b669eee2f5ff1730afa92af7ca41d0aa96e3a280d7e5f2069eb8a3b852f3ebc270147489d7c8bfb08a7c4b9c4d80$LR•IPV4•115『线路37』 +https://stream1.freetv.fun/xin-wen-zong-he-9.m3u8$LR•IPV4•115『线路37』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -https://stream1.freetv.fun/shang-hai-xin-wen-zong-he-2.m3u8$LR•IPV4•115『线路38』 +http://150.158.112.123/公众号~玉玉软件库/mg.php?id=shxwzh$LR•IPV4•115『线路38』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -http://p2.vzan.com/slowlive/596867413819827251/live.m3u8$LR•IPV4•115『线路39』 +https://stream1.freetv.fun/shang-hai-xin-wen-zong-he-3.m3u8$LR•IPV4•115『线路39』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -https://www.freetv.top/migu/651632657.m3u8?migutoken=5ae42e8fda034ab7bf5171dafa0043e70cd12bcd716940c4572fde52ea92b0785f16f1bdbce4c83f5e075b250fe95668f19f8527dda57c27db24f95d412614d99c86a3a2d9341d88b5224b7068$LR•IPV4•115『线路40』 +https://stream1.freetv.fun/xin-wen-zong-he-13.m3u8$LR•IPV4•115『线路40』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -https://qcfile.qcrmt.com/nmip-media/channellive/channel100933/playlist.m3u8$LR•IPV4•115『线路41』 +http://43.251.226.89:8080/play/57.m3u8$LR•IPV4•115『线路41』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -https://stream1.freetv.fun/xin-wen-zong-he-2.m3u8$LR•IPV4•115『线路42』 +http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=2810&tk=a0c4f6cfaba3$LR•IPV4•115『线路42』 #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•115『线路43』 +http://123.113.205.253:3000/651632657$LR•IPV4•115『线路43』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -https://stream1.freetv.fun/ipv6-shang-hai-xin-wen-zong-he-7.m3u8$LR•IPV4•115『线路44』 +https://live.pzhkai.com/xwzhtl/sd/live.m3u8$LR•IPV4•115『线路44』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -https://hls-gateway.vpstv.net/streams/708847.m3u8$LR•IPV4•115『线路45』 +https://stream1.freetv.fun/xin-wen-zong-he-14.m3u8$LR•IPV4•115『线路45』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -http://api3.52tb.xyz/info?id=371&token=20221127jxwhhemby$LR•IPV4•115『线路46』 +https://stream1.freetv.fun/ipv6-xin-wen-zong-he-14.m3u8$LR•IPV4•115『线路46』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -https://stream1.freetv.fun/xin-wen-zong-he-1.ctv$LR•IPV4•115『线路47』 +http://tvpull.dxhmt.cn:9081/tv/10326-1.m3u8$LR•IPV4•115『线路47』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -http://115.190.247.176:1111/651632657$LR•IPV4•115『线路48』 +https://stream1.freetv.fun/shang-hai-xin-wen-zong-he-10.m3u8$LR•IPV4•115『线路48』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -https://stream1.freetv.fun/ipv6-shang-hai-xin-wen-zong-he-2.m3u8$LR•IPV4•115『线路49』 +https://stream1.freetv.fun/shang-hai-xin-wen-zong-he-1.m3u8$LR•IPV4•115『线路49』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -https://xatv-yt.xiancity.cn/live/1/index.m3u8$LR•IPV4•115『线路50』 +http://api2.52tb.xyz/info?id=371&token=20230218qkyjia$LR•IPV4•115『线路50』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -https://stream1.freetv.fun/ipv6-xin-wen-zong-he-7.m3u8$LR•IPV4•115『线路51』 +https://zby.130519.xyz/PLTV/11/224/3221226136/index.m3u8$LR•IPV4•115『线路51』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=5599&tk=2aca1ad9a849$LR•IPV4•115『线路52』 +https://m3u8-channel.lytv.tv/nmip-media/channellive/channel111841/playlist.m3u8$LR•IPV4•115『线路52』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -https://stream1.freetv.fun/xin-wen-zong-he-3.m3u8$LR•IPV4•115『线路53』 +https://stream1.freetv.fun/shang-hai-xin-wen-zong-he-12.m3u8$LR•IPV4•115『线路53』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -http://hlsztemgsplive.miguvideo.com:8080/migu/kailu/xwzhhd265/54/20200407/index.m3u8?msisdn=2be6b2ec9fcf10d2c2457e2c710e172c&mdspid=&spid=600697&netType=0&sid=5910022325&pid=2028597139×tamp=20260717080210&Channel_ID=0116_2600034600-99000-201600010010028&ProgramID=651632657&ParentNodeID=-99&assertID=5910022325&client_ip=171.8.79.254&SecurityKey=20260717080210&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=40d27e561dfff2850c5ba421b1844775&sv=10004&ct=android$LR•IPV4•115『线路54』 +http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=2394&tk=e503191f8e20$LR•IPV4•115『线路54』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -https://stream1.freetv.fun/ipv6-shang-hai-xin-wen-zong-he-6.m3u8$LR•IPV4•115『线路55』 +https://stream1.freetv.fun/xin-wen-zong-he-11.ctv$LR•IPV4•115『线路55』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -https://cm-live.ntjoy.com/live/4f1.m3u8$LR•IPV4•115『线路56』 +http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=0708&tk=23a9aca1f79f$LR•IPV4•115『线路56』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -https://stream1.freetv.fun/ipv6-shang-hai-xin-wen-zong-he-3.m3u8$LR•IPV4•115『线路57』 +http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=5985&tk=e640d0a1bf70$LR•IPV4•115『线路57』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -http://bp-livetytv.bestv.cn/ch/bestvxwzh.m3u8$LR•IPV4•115『线路58』 +https://stream1.freetv.fun/xin-wen-zong-he-5.m3u8$LR•IPV4•115『线路58』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=2441&tk=e640d0a1bf70$LR•IPV4•115『线路59』 +http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=5014&tk=a0c4f6cfaba3$LR•IPV4•115『线路59』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=2865&tk=f6cc1e0a0e1a$LR•IPV4•115『线路60』 +https://mgtv.ottiptv.cc/migu/651632657.m3u8?migutoken=348c9164063c2b1df215dd2fa7cd92cb119d8a335ae0edfb5d615a6c714e71b669eee2f5ff1730afa92af7ca41d0aa96e3a280d7e5f2069eb8a3b852f3ebc270147489d7c8bfb08a7c4b9c4d80$LR•IPV4•115『线路60』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -http://47.104.178.59:3566/651632657$LR•IPV4•115『线路61』 +https://stream1.freetv.fun/shang-hai-xin-wen-zong-he-2.m3u8$LR•IPV4•115『线路61』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -https://tvfile.scjgtv.cn:443/nmip-media/channellive/channel104126/playlist.m3u8"$LR•IPV4•115『线路62』 +http://p2.vzan.com/slowlive/596867413819827251/live.m3u8$LR•IPV4•115『线路62』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -https://www.freetv.top/migu/651632657.m3u8?migutoken=b4a3e55048f55ec1c8fc5b509fbdf32f2dc5d255f5f218e79e84ca9a87fb9f2239927cb11b448f18285b50b81b4cd50a1354e9be5a3283375e85372798c3f3eb3ad60adf45eb5615f68eb4825f$LR•IPV4•115『线路63』 +https://www.freetv.top/migu/651632657.m3u8?migutoken=5ae42e8fda034ab7bf5171dafa0043e70cd12bcd716940c4572fde52ea92b0785f16f1bdbce4c83f5e075b250fe95668f19f8527dda57c27db24f95d412614d99c86a3a2d9341d88b5224b7068$LR•IPV4•115『线路63』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=0610&tk=b53028476470$LR•IPV4•115『线路64』 +https://qcfile.qcrmt.com/nmip-media/channellive/channel100933/playlist.m3u8$LR•IPV4•115『线路64』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -https://m3u8channel.yunxya.com/nmip-media/channellive/channel100028/playlist.m3u8$LR•IPV4•115『线路65』 +https://stream1.freetv.fun/xin-wen-zong-he-2.m3u8$LR•IPV4•115『线路65』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -https://stream1.freetv.fun/xin-wen-zong-he-15.m3u8$LR•IPV4•115『线路66』 +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•115『线路66』 #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•115『线路67』 +https://stream1.freetv.fun/ipv6-shang-hai-xin-wen-zong-he-7.m3u8$LR•IPV4•115『线路67』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -http://111.228.4.117:6789/migu720p.php?id=651632657$LR•IPV4•115『线路68』 +https://hls-gateway.vpstv.net/streams/708847.m3u8$LR•IPV4•115『线路68』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -https://stream1.freetv.fun/shang-hai-xin-wen-zong-he-8.m3u8$LR•IPV4•115『线路69』 +http://api3.52tb.xyz/info?id=371&token=20221127jxwhhemby$LR•IPV4•115『线路69』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -https://stream1.freetv.fun/ipv6-xin-wen-zong-he-10.m3u8$LR•IPV4•115『线路70』 +https://stream1.freetv.fun/xin-wen-zong-he-1.ctv$LR•IPV4•115『线路70』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -http://stream8.jlntv.cn/shulan/sd/live.m3u8?_upt=332db6421699196585$LR•IPV4•115『线路71』 +http://115.190.247.176:1111/651632657$LR•IPV4•115『线路71』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -http://stream5.jlntv.cn/hn/sd/live.m3u8$LR•IPV4•115『线路72』 +https://stream1.freetv.fun/ipv6-shang-hai-xin-wen-zong-he-2.m3u8$LR•IPV4•115『线路72』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -http://pili-live-hls.ybcxjd.com/jdh-live/2108111201035597.m3u8?zsicd$LR•IPV4•115『线路73』 +https://xatv-yt.xiancity.cn/live/1/index.m3u8$LR•IPV4•115『线路73』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -http://live.spccmc.com:90/live/spxwzh.m3u8$LR•IPV4•115『线路74』 +https://stream1.freetv.fun/ipv6-xin-wen-zong-he-7.m3u8$LR•IPV4•115『线路74』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -http://live.iwcmt.cn:90/live/zhxw.m3u8$LR•IPV4•115『线路75』 +http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=5599&tk=2aca1ad9a849$LR•IPV4•115『线路75』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -http://live.jinchuanrmt.com:90/live/zhxw.m3u8?zsicd$LR•IPV4•115『线路76』 +https://stream1.freetv.fun/xin-wen-zong-he-3.m3u8$LR•IPV4•115『线路76』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -https://play.yunxya.com/channellive/xinwen.m3u8$LR•IPV4•115『线路77』 +http://hlsztemgsplive.miguvideo.com:8080/migu/kailu/xwzhhd265/54/20200407/index.m3u8?msisdn=2be6b2ec9fcf10d2c2457e2c710e172c&mdspid=&spid=600697&netType=0&sid=5910022325&pid=2028597139×tamp=20260717080210&Channel_ID=0116_2600034600-99000-201600010010028&ProgramID=651632657&ParentNodeID=-99&assertID=5910022325&client_ip=171.8.79.254&SecurityKey=20260717080210&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=40d27e561dfff2850c5ba421b1844775&sv=10004&ct=android$LR•IPV4•115『线路77』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -http://ls.qingting.fm/live/267.m3u8$LR•IPV4•115『线路78』 +https://stream1.freetv.fun/ipv6-shang-hai-xin-wen-zong-he-6.m3u8$LR•IPV4•115『线路78』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -http://hslive.hsnewsnet.com/lsdream/hve9Wjs/1000/live.m3u8$LR•IPV4•115『线路79』 +https://cm-live.ntjoy.com/live/4f1.m3u8$LR•IPV4•115『线路79』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -https://p2.vzan.com/slowlive/596867413819827251/live.m3u8?zbid=1725814272&amp;tpid=1516989100&amp;type=0$LR•IPV4•115『线路80』 +https://stream1.freetv.fun/ipv6-shang-hai-xin-wen-zong-he-3.m3u8$LR•IPV4•115『线路80』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -https://tntgjhjb.live.sxmty.com/live/hls/3a4585ac11ec4e1bb07b419101b370c3/baf63e2b313440c2a25d7859f9b73b05-1.m3u8?zshanxd$LR•IPV4•115『线路81』 +http://bp-livetytv.bestv.cn/ch/bestvxwzh.m3u8$LR•IPV4•115『线路81』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -http://uzoiczhh.live.sxmty.com/live/hls/0d41f1480c4042d49927858f01fde707/53130407737b417b9a6259b57246bae3.m3u8?zshanxd$LR•IPV4•115『线路82』 +http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=2441&tk=e640d0a1bf70$LR•IPV4•115『线路82』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -https://ls.qingting.fm/live/5043/64k.m3u8$LR•IPV4•115『线路83』 +http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=2865&tk=f6cc1e0a0e1a$LR•IPV4•115『线路83』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -http://liveout.btzx.com.cn/62ds9e/4nxdih.m3u8?fbl=$LR•IPV4•115『线路84』 +http://47.104.178.59:3566/651632657$LR•IPV4•115『线路84』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -http://nklive.nbs.cn/hls/d511bc9d-a694-4453-b3a2-4fc842cc97a1/index.m3u8$LR•IPV4•115『线路85』 +https://tvfile.scjgtv.cn:443/nmip-media/channellive/channel104126/playlist.m3u8"$LR•IPV4•115『线路85』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -http://ls.qingting.fm/live/23797.m3u8$LR•IPV4•115『线路86』 +https://www.freetv.top/migu/651632657.m3u8?migutoken=b4a3e55048f55ec1c8fc5b509fbdf32f2dc5d255f5f218e79e84ca9a87fb9f2239927cb11b448f18285b50b81b4cd50a1354e9be5a3283375e85372798c3f3eb3ad60adf45eb5615f68eb4825f$LR•IPV4•115『线路86』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -https://play.kankanlive.com/live/1720583434627241.m3u8$LR•IPV4•115『线路87』 +http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=0610&tk=b53028476470$LR•IPV4•115『线路87』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -https://ls.qingting.fm/live/5022100/64k.m3u8$LR•IPV4•115『线路88』 +https://m3u8channel.yunxya.com/nmip-media/channellive/channel100028/playlist.m3u8$LR•IPV4•115『线路88』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -https://liveout.xntv.tv/a65jur/96iln2.m3u8?zqinghd$LR•IPV4•115『线路89』 +https://stream1.freetv.fun/xin-wen-zong-he-15.m3u8$LR•IPV4•115『线路89』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -http://live.qthnews.org.cn:1935/live/live1/800k/tzwj_video.m3u8$LR•IPV4•115『线路90』 +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•115『线路90』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -http://stream.hrbtv.net/xwzh/sd/live.m3u8?zheild$LR•IPV4•115『线路91』 +http://111.228.4.117:6789/migu720p.php?id=651632657$LR•IPV4•115『线路91』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -https://stream2.jlntv.cn/baicheng1/sd/live.m3u8$LR•IPV4•115『线路92』 +https://stream1.freetv.fun/shang-hai-xin-wen-zong-he-8.m3u8$LR•IPV4•115『线路92』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -http://live.cztv.cc:85/live/xwpd.m3u8$LR•IPV4•115『线路93』 +https://stream1.freetv.fun/ipv6-xin-wen-zong-he-10.m3u8$LR•IPV4•115『线路93』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -http://117.156.28.119/270000001111/1110000001/index.m3u8$LR•IPV4•115『线路94』 +http://stream8.jlntv.cn/shulan/sd/live.m3u8?_upt=332db6421699196585$LR•IPV4•115『线路94』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -http://pili-live-hls.hebitv.com/hebi/hebi.m3u8$LR•IPV4•115『线路95』 +http://stream5.jlntv.cn/hn/sd/live.m3u8$LR•IPV4•115『线路95』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -https://stream2.jlntv.cn/naxw/sd/live.m3u8$LR•IPV4•115『线路96』 +http://pili-live-hls.ybcxjd.com/jdh-live/2108111201035597.m3u8?zsicd$LR•IPV4•115『线路96』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -http://uni6rtmp.tulix.tv:1935/vbstv/vbsabr.smil/chunklist_w439903609_b1228800.m3u8$LR•IPV4•115『线路97』 +http://live.spccmc.com:90/live/spxwzh.m3u8$LR•IPV4•115『线路97』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -http://221.5.213.4:30000/1111.m3u8$LR•IPV4•115『线路98』 +http://live.iwcmt.cn:90/live/zhxw.m3u8$LR•IPV4•115『线路98』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -https://stream2.jlntv.cn/jilin1/sd/live.m3u8$LR•IPV4•115『线路99』 +http://live.jinchuanrmt.com:90/live/zhxw.m3u8?zsicd$LR•IPV4•115『线路99』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -http://30515.hlsplay.aodianyun.com/lms_30515/tv_channel_239.m3u8$LR•IPV4•115『线路100』 +https://play.yunxya.com/channellive/xinwen.m3u8$LR•IPV4•115『线路100』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -https://stream2.jlntv.cn/sptv/sd/live.m3u8$LR•IPV4•115『线路101』 +http://traffic.jbh.tjbh.com/live/bhtv10/playlist.m3u8$LR•IPV4•115『线路101』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -http://live.ahsz.tv/video/s10001-szzh/index.m3u8$LR•IPV4•115『线路102』 +http://ls.qingting.fm/live/267.m3u8$LR•IPV4•115『线路102』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -http://guangshui.live.tempsource.cjyun.org/videotmp/s10146-GSXW.m3u8$LR•IPV4•115『线路103』 +http://hslive.hsnewsnet.com/lsdream/hve9Wjs/1000/live.m3u8$LR•IPV4•115『线路103』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -https://stream2.jlntv.cn/jlyb/sd/live.m3u8$LR•IPV4•115『线路104』 +https://p2.vzan.com/slowlive/596867413819827251/live.m3u8?zbid=1725814272&amp;tpid=1516989100&amp;type=0$LR•IPV4•115『线路104』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -https://stream2.jlntv.cn/sytv/sd/live.m3u8$LR•IPV4•115『线路105』 +https://tntgjhjb.live.sxmty.com/live/hls/3a4585ac11ec4e1bb07b419101b370c3/baf63e2b313440c2a25d7859f9b73b05-1.m3u8?zshanxd$LR•IPV4•115『线路105』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -http://222.179.155.21:1935/ch1.m3u8$LR•IPV4•115『线路106』 +http://uzoiczhh.live.sxmty.com/live/hls/0d41f1480c4042d49927858f01fde707/53130407737b417b9a6259b57246bae3.m3u8?zshanxd$LR•IPV4•115『线路106』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -http://117.172.215.250:8083/videos/live/35/39/GQVbrgob5CGJM/GQVbrgob5CGJM.m3u8$LR•IPV4•115『线路107』 +https://ls.qingting.fm/live/5043/64k.m3u8$LR•IPV4•115『线路107』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -http://220.180.110.101:8083/videos/live/36/57/hwEHU4UVQ1Iv5/hwEHU4UVQ1Iv5.m3u8$LR•IPV4•115『线路108』 +http://liveout.btzx.com.cn/62ds9e/4nxdih.m3u8?fbl=$LR•IPV4•115『线路108』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -http://live.hnxttv.com:9601/live/xwzh/800K/tzwj_video.m3u8$LR•IPV4•115『线路109』 +http://nklive.nbs.cn/hls/d511bc9d-a694-4453-b3a2-4fc842cc97a1/index.m3u8$LR•IPV4•115『线路109』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -http://stream.bzcm.net/2/sd/live.m3u8$LR•IPV4•115『线路110』 +http://ls.qingting.fm/live/23797.m3u8$LR•IPV4•115『线路110』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -http://117.156.28.119/270000001111/1110000145/index.m3u8$LR•IPV4•115『线路111』 +https://play.kankanlive.com/live/1720583434627241.m3u8$LR•IPV4•115『线路111』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -https://stream2.jlntv.cn/baishan1/sd/live.m3u8$LR•IPV4•115『线路112』 +https://ls.qingting.fm/live/5022100/64k.m3u8$LR•IPV4•115『线路112』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -http://live1.wuhubtv.com/channel1/sd/live.m3u8$LR•IPV4•115『线路113』 +https://liveout.xntv.tv/a65jur/96iln2.m3u8?zqinghd$LR•IPV4•115『线路113』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -http://palive.patv123.com:8091/live/xwpd_800K.m3u8$LR•IPV4•115『线路114』 +http://live.qthnews.org.cn:1935/live/live1/800k/tzwj_video.m3u8$LR•IPV4•115『线路114』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -https://stream2.jlntv.cn/liaoyuan1/sd/live.m3u8$LR•IPV4•115『线路115』 +http://stream.hrbtv.net/xwzh/sd/live.m3u8?zheild$LR•IPV4•115『线路115』 #EXTINF:-1 tvg-id="西安新闻" tvg-name="西安新闻" group-title="陕西",西安新闻 -http://112.46.105.20:8009/hls/28/index.m3u8$LR•IPV4•2『线路1』 +http://stream2.xiancity.cn/xatv1/playlist.m3u8$LR•IPV4•2『线路1』 #EXTINF:-1 tvg-id="西安新闻" tvg-name="西安新闻" group-title="陕西",西安新闻 -http://stream2.xiancity.cn/xatv1/playlist.m3u8$LR•IPV4•2『线路2』 +http://112.46.105.20:8009/hls/28/index.m3u8$LR•IPV4•2『线路2』 #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『线路1』 +http://livealone302.iqilu.com/iqilu/sepd.m3u8$LR•IPV4•16『线路1』 #EXTINF:-1 tvg-id="山东少儿" tvg-name="山东少儿" group-title="山东",山东少儿 -https://stream1.freetv.fun/shan-dong-shao-er-7.m3u8$LR•IPV4•16『线路2』 +http://123.129.70.178:9901/tsfile/live/1004_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•16『线路2』 #EXTINF:-1 tvg-id="山东少儿" tvg-name="山东少儿" group-title="山东",山东少儿 -http://58.57.40.22:9901/tsfile/live/1024_1.m3u8$LR•IPV4•16『线路3』 +https://stream1.freetv.fun/shan-dong-shao-er-7.m3u8$LR•IPV4•16『线路3』 #EXTINF:-1 tvg-id="山东少儿" tvg-name="山东少儿" group-title="山东",山东少儿 -https://stream1.freetv.fun/shan-dong-shao-er-2.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="山东",山东少儿 -https://stream1.freetv.fun/shan-dong-shao-er-9.m3u8$LR•IPV4•16『线路5』 +https://stream1.freetv.fun/shan-dong-shao-er-2.m3u8$LR•IPV4•16『线路5』 #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『线路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-10.m3u8$LR•IPV4•16『线路7』 +http://221.2.148.205:8154/tsfile/live/1007_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•16『线路7』 #EXTINF:-1 tvg-id="山东少儿" tvg-name="山东少儿" group-title="山东",山东少儿 -http://111.14.181.15:9901/tsfile/live/1005_1.m3u8?key=tvbox6_com&playlive=1&authid=0$LR•IPV4•16『线路8』 +https://stream1.freetv.fun/shan-dong-shao-er-10.m3u8$LR•IPV4•16『线路8』 #EXTINF:-1 tvg-id="山东少儿" tvg-name="山东少儿" group-title="山东",山东少儿 -https://stream1.freetv.fun/shan-dong-shao-er-1.m3u8$LR•IPV4•16『线路9』 +http://111.14.181.15:9901/tsfile/live/1005_1.m3u8?key=tvbox6_com&playlive=1&authid=0$LR•IPV4•16『线路9』 #EXTINF:-1 tvg-id="山东少儿" tvg-name="山东少儿" group-title="山东",山东少儿 -http://111.14.181.15:9901/tsfile/live/1005_1.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-5.m3u8$LR•IPV4•16『线路11』 +http://111.14.181.15:9901/tsfile/live/1005_1.m3u8$LR•IPV4•16『线路11』 #EXTINF:-1 tvg-id="山东少儿" tvg-name="山东少儿" group-title="山东",山东少儿 -https://stream1.freetv.fun/shan-dong-shao-er-4.m3u8$LR•IPV4•16『线路12』 +https://stream1.freetv.fun/shan-dong-shao-er-5.m3u8$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-6.m3u8$LR•IPV4•16『线路14』 +http://123.132.233.194:352/tsfile/live/1002_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•16『线路14』 #EXTINF:-1 tvg-id="山东少儿" tvg-name="山东少儿" group-title="山东",山东少儿 -https://stream1.freetv.fun/shan-dong-shao-er-8.m3u8$LR•IPV4•16『线路15』 +https://stream1.freetv.fun/shan-dong-shao-er-6.m3u8$LR•IPV4•16『线路15』 #EXTINF:-1 tvg-id="山东少儿" tvg-name="山东少儿" group-title="山东",山东少儿 -http://livealone302.iqilu.com/iqilu/sepd.m3u8$LR•IPV4•16『线路16』 +https://stream1.freetv.fun/shan-dong-shao-er-8.m3u8$LR•IPV4•16『线路16』 #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『线路1』 +http://livealone302.iqilu.com/iqilu/ggpd.m3u8$LR•IPV4•12『线路1』 #EXTINF:-1 tvg-id="山东新闻" tvg-name="山东新闻" group-title="山东",山东新闻 -https://stream1.freetv.fun/shan-dong-xin-wen-1.m3u8$LR•IPV4•12『线路2』 +http://123.129.70.178:9901/tsfile/live/1000_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•12『线路2』 #EXTINF:-1 tvg-id="山东新闻" tvg-name="山东新闻" group-title="山东",山东新闻 -http://ls.qingting.fm/live/60180.m3u8$LR•IPV4•12『线路3』 +https://stream1.freetv.fun/shan-dong-xin-wen-1.m3u8$LR•IPV4•12『线路3』 #EXTINF:-1 tvg-id="山东新闻" tvg-name="山东新闻" group-title="山东",山东新闻 -https://stream1.freetv.fun/shan-dong-xin-wen-2.m3u8$LR•IPV4•12『线路4』 +http://ls.qingting.fm/live/60180.m3u8$LR•IPV4•12『线路4』 #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『线路5』 +https://stream1.freetv.fun/shan-dong-xin-wen-2.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』 +http://221.2.148.205:8154/tsfile/live/1002_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•12『线路6』 #EXTINF:-1 tvg-id="山东新闻" tvg-name="山东新闻" group-title="山东",山东新闻 -https://stream1.freetv.fun/shan-dong-xin-wen-3.m3u8$LR•IPV4•12『线路7』 +https://stream1.freetv.fun/shan-dong-xin-wen-4.m3u8$LR•IPV4•12『线路7』 #EXTINF:-1 tvg-id="山东新闻" tvg-name="山东新闻" group-title="山东",山东新闻 -http://live.xmcdn.com/live/1440/64.m3u8$LR•IPV4•12『线路8』 +https://stream1.freetv.fun/shan-dong-xin-wen-3.m3u8$LR•IPV4•12『线路8』 #EXTINF:-1 tvg-id="山东新闻" tvg-name="山东新闻" group-title="山东",山东新闻 -https://stream1.freetv.fun/shan-dong-xin-wen-10.m3u8$LR•IPV4•12『线路9』 +http://live.xmcdn.com/live/1440/64.m3u8$LR•IPV4•12『线路9』 #EXTINF:-1 tvg-id="山东新闻" tvg-name="山东新闻" group-title="山东",山东新闻 -https://stream1.freetv.fun/shan-dong-xin-wen-7.m3u8$LR•IPV4•12『线路10』 +https://stream1.freetv.fun/shan-dong-xin-wen-10.m3u8$LR•IPV4•12『线路10』 #EXTINF:-1 tvg-id="山东新闻" tvg-name="山东新闻" group-title="山东",山东新闻 -https://stream1.freetv.fun/shan-dong-xin-wen-6.m3u8$LR•IPV4•12『线路11』 +https://stream1.freetv.fun/shan-dong-xin-wen-7.m3u8$LR•IPV4•12『线路11』 #EXTINF:-1 tvg-id="山东新闻" tvg-name="山东新闻" group-title="山东",山东新闻 -http://livealone302.iqilu.com/iqilu/ggpd.m3u8$LR•IPV4•12『线路12』 +https://stream1.freetv.fun/shan-dong-xin-wen-6.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•20『线路1』 #EXTINF:-1 tvg-id="山东教育" tvg-name="山东教育" group-title="山东",山东教育 @@ -6086,43 +6104,43 @@ http://112.132.10.54:9901/tsfile/live/1018_1.m3u8?key=txiptv&playlive=1&authid=0 #EXTINF:-1 tvg-id="山东教育" tvg-name="山东教育" group-title="山东",山东教育 http://hlsztemgsplive.miguvideo.com:8080/migu/kailu/sdjyws/51/20250915/index.m3u8?msisdn=2be6b2ec9fcf10d2c2457e2c710e172c&mdspid=&spid=600697&netType=0&sid=5910022199&pid=2028597139×tamp=20260717080217&Channel_ID=0116_2600034600-99000-201600010010028&ProgramID=609154353&ParentNodeID=-99&assertID=5910022199&client_ip=171.8.79.254&SecurityKey=20260717080217&promotionId=&mvid=2200208305&mcid=500020&playurlVersion=WX-A1-9.6.1.6-SNAPSHOT&userid=&jmhm=&videocodec=h264&appCode=miguvideo_android&bean=mgspad&tid=android&conFee=0&encrypt=7f8e7f82426d223c045795841359c106&sv=10004&ct=android$LR•IPV4•20『线路20』 #EXTINF:-1 tvg-id="山东农科" tvg-name="山东农科" group-title="山东",山东农科 -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『线路1』 #EXTINF:-1 tvg-id="山东农科" tvg-name="山东农科" group-title="山东",山东农科 -http://livealone302.iqilu.com/iqilu/nkpd.m3u8$LR•IPV4•2『线路2』 +http://58.57.40.22:9901/tsfile/live/1022_1.m3u8$LR•IPV4•2『线路2』 #EXTINF:-1 tvg-id="山东齐鲁" tvg-name="山东齐鲁" group-title="山东",山东齐鲁 -http://123.132.233.194:352/tsfile/live/1019_1.m3u8$LR•IPV4•10『线路1』 +http://livealone302.iqilu.com/iqilu/qlpd.m3u8$LR•IPV4•10『线路1』 #EXTINF:-1 tvg-id="山东齐鲁" tvg-name="山东齐鲁" group-title="山东",山东齐鲁 -http://111.14.181.15:9901/tsfile/live/1000_1.m3u8?key=tvbox6_com&playlive=1&authid=0$LR•IPV4•10『线路2』 +http://123.132.233.194:352/tsfile/live/1019_1.m3u8$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://111.14.181.15:9901/tsfile/live/1000_1.m3u8?key=tvbox6_com&playlive=1&authid=0$LR•IPV4•10『线路3』 #EXTINF:-1 tvg-id="山东齐鲁" tvg-name="山东齐鲁" group-title="山东",山东齐鲁 -http://123.130.84.106:8154/tsfile/live/1001_1.m3u8$LR•IPV4•10『线路4』 +http://123.129.70.178:9901/tsfile/live/0019_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•10『线路4』 #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『线路5』 +http://123.130.84.106:8154/tsfile/live/1001_1.m3u8$LR•IPV4•10『线路5』 #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『线路6』 +http://221.2.148.205:8154/tsfile/live/1001_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•10『线路6』 #EXTINF:-1 tvg-id="山东齐鲁" tvg-name="山东齐鲁" group-title="山东",山东齐鲁 -http://61.156.228.12:8154/tsfile/live/1001_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•10『线路7』 +http://123.130.84.106:8154/tsfile/live/1001_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•10『线路7』 #EXTINF:-1 tvg-id="山东齐鲁" tvg-name="山东齐鲁" group-title="山东",山东齐鲁 -http://111.14.181.15:9901/tsfile/live/1000_1.m3u8$LR•IPV4•10『线路8』 +http://61.156.228.12:8154/tsfile/live/1001_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•10『线路8』 #EXTINF:-1 tvg-id="山东齐鲁" tvg-name="山东齐鲁" group-title="山东",山东齐鲁 -http://61.156.228.12: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://livealone302.iqilu.com/iqilu/qlpd.m3u8$LR•IPV4•10『线路10』 +http://61.156.228.12:8154/tsfile/live/1001_1.m3u8$LR•IPV4•10『线路10』 #EXTINF:-1 tvg-id="山东生活" tvg-name="山东生活" group-title="山东",山东生活 -http://api3.52tb.xyz/info?id=527&token=20221127jxwhhemby$LR•IPV4•7『线路1』 +http://livealone302.iqilu.com/iqilu/shpd.m3u8$LR•IPV4•7『线路1』 #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『线路2』 +http://api3.52tb.xyz/info?id=527&token=20221127jxwhhemby$LR•IPV4•7『线路2』 #EXTINF:-1 tvg-id="山东生活" tvg-name="山东生活" group-title="山东",山东生活 -http://live.xmcdn.com/live/802/64.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『线路3』 #EXTINF:-1 tvg-id="山东生活" tvg-name="山东生活" group-title="山东",山东生活 -http://ls.qingting.fm/live/60260.m3u8$LR•IPV4•7『线路4』 +http://live.xmcdn.com/live/802/64.m3u8$LR•IPV4•7『线路4』 #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『线路5』 +http://ls.qingting.fm/live/60260.m3u8$LR•IPV4•7『线路5』 #EXTINF:-1 tvg-id="山东生活" tvg-name="山东生活" group-title="山东",山东生活 -http://58.57.40.22:9901/tsfile/live/1018_1.m3u8$LR•IPV4•7『线路6』 +http://221.2.148.205:8154/tsfile/live/1005_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•7『线路6』 #EXTINF:-1 tvg-id="山东生活" tvg-name="山东生活" group-title="山东",山东生活 -http://livealone302.iqilu.com/iqilu/shpd.m3u8$LR•IPV4•7『线路7』 +http://58.57.40.22:9901/tsfile/live/1018_1.m3u8$LR•IPV4•7『线路7』 #EXTINF:-1 tvg-id="山东体育" tvg-name="山东体育" group-title="山东",山东体育 http://livealone302.iqilu.com/iqilu/typd.m3u8$LR•IPV4•37『线路1』 #EXTINF:-1 tvg-id="山东体育" tvg-name="山东体育" group-title="山东",山东体育 @@ -6198,17 +6216,17 @@ https://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-5.m3u8$LR•IPV4•37『线路37』 #EXTINF:-1 tvg-id="山东综艺" tvg-name="山东综艺" group-title="山东",山东综艺 -http://123.129.70.178:9901/tsfile/live/1001_1.m3u8$LR•IPV4•6『线路1』 +http://livealone302.iqilu.com/iqilu/zypd.m3u8$LR•IPV4•6『线路1』 #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『线路2』 +http://123.129.70.178:9901/tsfile/live/1001_1.m3u8$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://111.14.181.15:9901/tsfile/live/1004_1.m3u8?key=tvbox6_com&playlive=1&authid=0$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://221.2.148.205:8154/tsfile/live/1003_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•6『线路4』 #EXTINF:-1 tvg-id="山东综艺" tvg-name="山东综艺" group-title="山东",山东综艺 -http://123.132.233.194:352/tsfile/live/1000_1.m3u8$LR•IPV4•6『线路5』 +http://58.57.40.22:9901/tsfile/live/1021_1.m3u8$LR•IPV4•6『线路5』 #EXTINF:-1 tvg-id="山东综艺" tvg-name="山东综艺" group-title="山东",山东综艺 -http://livealone302.iqilu.com/iqilu/zypd.m3u8$LR•IPV4•6『线路6』 +http://123.132.233.194:352/tsfile/live/1000_1.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="山东",山东文旅 @@ -6238,51 +6256,51 @@ 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•8『线路1』 #EXTINF:-1 tvg-id="凤凰中文" tvg-name="凤凰中文" group-title="港澳台",凤凰中文 -http://zmgd.zyrnet.com:8888/hls/110/index.m3u8$LR•IPV4•8『线路2』 +http://223.110.245.139/ott.js.chinamobile.com/PLTV/3/224/3221226922/index.m3u8$LR•IPV4•8『线路2』 #EXTINF:-1 tvg-id="凤凰中文" tvg-name="凤凰中文" group-title="港澳台",凤凰中文 -http://120.198.95.220:9901/tsfile/live/1036_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•8『线路3』 +http://zmgd.zyrnet.com:8888/hls/110/index.m3u8$LR•IPV4•8『线路3』 #EXTINF:-1 tvg-id="凤凰中文" tvg-name="凤凰中文" group-title="港澳台",凤凰中文 -http://218.206.193.218:8888/hls/66/index.m3u8$LR•IPV4•8『线路4』 +http://120.198.95.220:9901/tsfile/live/1036_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•8『线路4』 #EXTINF:-1 tvg-id="凤凰中文" tvg-name="凤凰中文" group-title="港澳台",凤凰中文 -http://120.198.95.220:9901/tsfile/live/1036_1.m3u8?key=txiptv$LR•IPV4•8『线路5』 +http://218.206.193.218:8888/hls/66/index.m3u8$LR•IPV4•8『线路5』 #EXTINF:-1 tvg-id="凤凰中文" tvg-name="凤凰中文" group-title="港澳台",凤凰中文 -http://r.jdshipin.com/cCCzW$LR•IPV4•8『线路6』 +http://120.198.95.220:9901/tsfile/live/1036_1.m3u8?key=txiptv$LR•IPV4•8『线路6』 #EXTINF:-1 tvg-id="凤凰中文" tvg-name="凤凰中文" group-title="港澳台",凤凰中文 -http://cdn6.163189.xyz/163189/fhzw$LR•IPV4•8『线路7』 +http://r.jdshipin.com/cCCzW$LR•IPV4•8『线路7』 #EXTINF:-1 tvg-id="凤凰中文" tvg-name="凤凰中文" group-title="港澳台",凤凰中文 -http://223.110.245.139/ott.js.chinamobile.com/PLTV/3/224/3221226922/index.m3u8$LR•IPV4•8『线路8』 +http://cdn6.163189.xyz/163189/fhzw$LR•IPV4•8『线路8』 #EXTINF:-1 tvg-id="凤凰资讯" tvg-name="凤凰资讯" group-title="港澳台",凤凰资讯 http://api.mg.itv888.cn:8080/hls/11ef1dc70d8/index.m3u8$LR•IPV4•10『线路1』 #EXTINF:-1 tvg-id="凤凰资讯" tvg-name="凤凰资讯" group-title="港澳台",凤凰资讯 -http://zmgd.zyrnet.com:8888/hls/109/index.m3u8$LR•IPV4•10『线路2』 +http://223.110.245.167/ott.js.chinamobile.com/PLTV/3/224/3221226923/index.m3u8$LR•IPV4•10『线路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•10『线路3』 +http://zmgd.zyrnet.com:8888/hls/109/index.m3u8$LR•IPV4•10『线路3』 #EXTINF:-1 tvg-id="凤凰资讯" tvg-name="凤凰资讯" group-title="港澳台",凤凰资讯 -http://120.198.95.220:9901/tsfile/live/1037_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•10『线路4』 +http://221.7.175.154:8445/tsfile/live/1021_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•10『线路4』 #EXTINF:-1 tvg-id="凤凰资讯" tvg-name="凤凰资讯" group-title="港澳台",凤凰资讯 -http://120.198.95.220:9901/tsfile/live/1037_1.m3u8?key=txiptv$LR•IPV4•10『线路5』 +http://120.198.95.220:9901/tsfile/live/1037_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•10『线路5』 #EXTINF:-1 tvg-id="凤凰资讯" tvg-name="凤凰资讯" group-title="港澳台",凤凰资讯 -p3p://167.114.175.6:55331/5fffbf860003807cedf4e1016c3c3ed2$LR•IPV4•10『线路6』 +http://120.198.95.220:9901/tsfile/live/1037_1.m3u8?key=txiptv$LR•IPV4•10『线路6』 #EXTINF:-1 tvg-id="凤凰资讯" tvg-name="凤凰资讯" group-title="港澳台",凤凰资讯 -http://r.jdshipin.com/0Rp07$LR•IPV4•10『线路7』 +p3p://167.114.175.6:55331/5fffbf860003807cedf4e1016c3c3ed2$LR•IPV4•10『线路7』 #EXTINF:-1 tvg-id="凤凰资讯" tvg-name="凤凰资讯" group-title="港澳台",凤凰资讯 -http://php.jdshipin.com/TVOD/iptv.php?id=fhzx$LR•IPV4•10『线路8』 +http://r.jdshipin.com/0Rp07$LR•IPV4•10『线路8』 #EXTINF:-1 tvg-id="凤凰资讯" tvg-name="凤凰资讯" group-title="港澳台",凤凰资讯 -http://cdn6.163189.xyz/163189/fhzx$LR•IPV4•10『线路9』 +http://php.jdshipin.com/TVOD/iptv.php?id=fhzx$LR•IPV4•10『线路9』 #EXTINF:-1 tvg-id="凤凰资讯" tvg-name="凤凰资讯" group-title="港澳台",凤凰资讯 -http://223.110.245.167/ott.js.chinamobile.com/PLTV/3/224/3221226923/index.m3u8$LR•IPV4•10『线路10』 +http://cdn6.163189.xyz/163189/fhzx$LR•IPV4•10『线路10』 #EXTINF:-1 tvg-id="凤凰香港" tvg-name="凤凰香港" group-title="港澳台",凤凰香港 -http://122.152.202.33/s/81a8a44f/index.m3u8?id=fhhk$LR•IPV4•6『线路1』 +http://223.110.245.136/PLTV/3/224/3221226975/index.m3u8$LR•IPV4•6『线路1』 #EXTINF:-1 tvg-id="凤凰香港" tvg-name="凤凰香港" group-title="港澳台",凤凰香港 -p3p://167.114.175.6:55331/5fe0b82c000cac9774c17f262e43314d$LR•IPV4•6『线路2』 +http://122.152.202.33/s/81a8a44f/index.m3u8?id=fhhk$LR•IPV4•6『线路2』 #EXTINF:-1 tvg-id="凤凰香港" tvg-name="凤凰香港" group-title="港澳台",凤凰香港 -http://r.jdshipin.com/yDoTN$LR•IPV4•6『线路3』 +p3p://167.114.175.6:55331/5fe0b82c000cac9774c17f262e43314d$LR•IPV4•6『线路3』 #EXTINF:-1 tvg-id="凤凰香港" tvg-name="凤凰香港" group-title="港澳台",凤凰香港 -http://php.jdshipin.com/TVOD/iptv.php?id=fhhk$LR•IPV4•6『线路4』 +http://r.jdshipin.com/yDoTN$LR•IPV4•6『线路4』 #EXTINF:-1 tvg-id="凤凰香港" tvg-name="凤凰香港" group-title="港澳台",凤凰香港 -http://cdn6.163189.xyz/163189/fhhk$LR•IPV4•6『线路5』 +http://php.jdshipin.com/TVOD/iptv.php?id=fhhk$LR•IPV4•6『线路5』 #EXTINF:-1 tvg-id="凤凰香港" tvg-name="凤凰香港" group-title="港澳台",凤凰香港 -http://223.110.245.136/PLTV/3/224/3221226975/index.m3u8$LR•IPV4•6『线路6』 +http://cdn6.163189.xyz/163189/fhhk$LR•IPV4•6『线路6』 #EXTINF:-1 tvg-id="TVB翡翠台" tvg-name="TVB翡翠台" group-title="港澳台",TVB翡翠台 p3p://167.114.175.6:55331/653e4c02000ea0440c8c63fd3e5d709d$LR•IPV4•12『线路1』 #EXTINF:-1 tvg-id="TVB翡翠台" tvg-name="TVB翡翠台" group-title="港澳台",TVB翡翠台 @@ -6332,61 +6350,59 @@ http://r.jdshipin.com/CkuBd$LR•IPV4•7『线路6』 #EXTINF:-1 tvg-id="TVB无线新闻" tvg-name="TVB无线新闻" group-title="港澳台",TVB无线新闻 http://php.jdshipin.com/TVOD/iptv.php?id=wxxw$LR•IPV4•7『线路7』 #EXTINF:-1 tvg-id="TVB星河" tvg-name="TVB星河" group-title="港澳台",TVB星河 -p3p://167.114.175.6:55331/5fdee23d000b670a6d96428e4c334643$LR•IPV4•5『线路1』 +p3p://167.114.175.6:55331/5fdee23d000b670a6d96428e4c334643$LR•IPV4•4『线路1』 #EXTINF:-1 tvg-id="TVB星河" tvg-name="TVB星河" group-title="港澳台",TVB星河 -p3p://167.114.175.6:55331/6563174f0002ffaf9c45dd927c7d6df1$LR•IPV4•5『线路2』 +p3p://167.114.175.6:55331/6563174f0002ffaf9c45dd927c7d6df1$LR•IPV4•4『线路2』 #EXTINF:-1 tvg-id="TVB星河" tvg-name="TVB星河" group-title="港澳台",TVB星河 -http://php.jdshipin.com/TVOD/iptv.php?id=xinghe$LR•IPV4•5『线路3』 +http://php.jdshipin.com/TVOD/iptv.php?id=xinghe$LR•IPV4•4『线路3』 #EXTINF:-1 tvg-id="TVB星河" tvg-name="TVB星河" group-title="港澳台",TVB星河 -https://hls-gateway.vpstv.net/streams/709489.m3u8$LR•IPV4•5『线路4』 -#EXTINF:-1 tvg-id="TVB星河" tvg-name="TVB星河" group-title="港澳台",TVB星河 -https://live.ottiptv.cc/huya/23734169$LR•IPV4•5『线路5』 +https://hls-gateway.vpstv.net/streams/709489.m3u8$LR•IPV4•4『线路4』 #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://61.221.215.25:8800/hls/9/index.m3u8$LR•IPV4•13『线路2』 +http://seb.sason.top/sc/tvbsxw_fhd.m3u8$LR•IPV4•13『线路2』 #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『线路3』 +http://61.221.215.25:8800/hls/9/index.m3u8$LR•IPV4•13『线路3』 #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『线路4』 +http://38.64.72.148/hls/modn/list/4005/chunklist0.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/playlist.m3u8$LR•IPV4•13『线路5』 +http://38.64.72.148:80/hls/modn/list/4005/chunklist1.m3u8$LR•IPV4•13『线路5』 #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『线路6』 +http://38.64.72.148:80/hls/modn/list/4005/playlist.m3u8$LR•IPV4•13『线路6』 #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『线路7』 +http://38.64.72.148/hls/modn/list/4005/chunklist1.m3u8$LR•IPV4•13『线路7』 #EXTINF:-1 tvg-id="TVBS" tvg-name="TVBS" group-title="港澳台",TVBS -http://125.227.210.55:8188/VideoInput/play.ts$LR•IPV4•13『线路8』 +http://38.64.72.148:80/hls/modn/list/4005/chunklist0.m3u8$LR•IPV4•13『线路8』 #EXTINF:-1 tvg-id="TVBS" tvg-name="TVBS" group-title="港澳台",TVBS -http://125.227.210.55:8186/VideoInput/play.ts$LR•IPV4•13『线路9』 +http://125.227.210.55:8188/VideoInput/play.ts$LR•IPV4•13『线路9』 #EXTINF:-1 tvg-id="TVBS" tvg-name="TVBS" group-title="港澳台",TVBS -http://125.227.210.55:8187/VideoInput/play.ts$LR•IPV4•13『线路10』 +http://125.227.210.55:8186/VideoInput/play.ts$LR•IPV4•13『线路10』 #EXTINF:-1 tvg-id="TVBS" tvg-name="TVBS" group-title="港澳台",TVBS -p3p://167.114.175.6:55331/612ee5ef000f06f58e144b6727ec3efb$LR•IPV4•13『线路11』 +http://125.227.210.55:8187/VideoInput/play.ts$LR•IPV4•13『线路11』 #EXTINF:-1 tvg-id="TVBS" tvg-name="TVBS" group-title="港澳台",TVBS -p3p://167.114.175.6:55331/61efd0a100047e1a7f9fa38d29f5746d$LR•IPV4•13『线路12』 +p3p://167.114.175.6:55331/612ee5ef000f06f58e144b6727ec3efb$LR•IPV4•13『线路12』 #EXTINF:-1 tvg-id="TVBS" tvg-name="TVBS" group-title="港澳台",TVBS -http://seb.sason.top/sc/tvbsxw_fhd.m3u8$LR•IPV4•13『线路13』 +p3p://167.114.175.6:55331/61efd0a100047e1a7f9fa38d29f5746d$LR•IPV4•13『线路13』 #EXTINF:-1 tvg-id="台视" tvg-name="台视" group-title="港澳台",台视 -http://74.91.26.218:82/live/ttvcj.m3u8$LR•IPV4•10『线路1』 +http://162.19.247.76:22222/live/taishi/index.m3u8$LR•IPV4•10『线路1』 #EXTINF:-1 tvg-id="台视" tvg-name="台视" group-title="港澳台",台视 -http://74.91.26.218:82/live/ttvzh.m3u8$LR•IPV4•10『线路2』 +http://74.91.26.218:82/live/ttvcj.m3u8$LR•IPV4•10『线路2』 #EXTINF:-1 tvg-id="台视" tvg-name="台视" group-title="港澳台",台视 -http://38.64.72.148:80/hls/modn/list/4013/chunklist0.m3u8$LR•IPV4•10『线路3』 +http://74.91.26.218:82/live/ttvzh.m3u8$LR•IPV4•10『线路3』 #EXTINF:-1 tvg-id="台视" tvg-name="台视" group-title="港澳台",台视 -http://38.64.72.148:80/hls/modn/list/4013/chunklist1.m3u8$LR•IPV4•10『线路4』 +http://38.64.72.148:80/hls/modn/list/4013/chunklist0.m3u8$LR•IPV4•10『线路4』 #EXTINF:-1 tvg-id="台视" tvg-name="台视" group-title="港澳台",台视 -http://38.64.72.148/hls/modn/list/4013/chunklist0.m3u8$LR•IPV4•10『线路5』 +http://38.64.72.148:80/hls/modn/list/4013/chunklist1.m3u8$LR•IPV4•10『线路5』 #EXTINF:-1 tvg-id="台视" tvg-name="台视" group-title="港澳台",台视 -rtmp://f13h.mine.nu/sat/tv071$LR•IPV4•10『线路6』 +http://38.64.72.148/hls/modn/list/4013/chunklist0.m3u8$LR•IPV4•10『线路6』 #EXTINF:-1 tvg-id="台视" tvg-name="台视" group-title="港澳台",台视 -p3p://167.114.175.6:55331/612ee2240008f3db8e0578dc59406f9e$LR•IPV4•10『线路7』 +rtmp://f13h.mine.nu/sat/tv071$LR•IPV4•10『线路7』 #EXTINF:-1 tvg-id="台视" tvg-name="台视" group-title="港澳台",台视 -p3p://167.114.175.6:55331/6223b571000a13023e78ece5030b5b05$LR•IPV4•10『线路8』 +p3p://167.114.175.6:55331/612ee2240008f3db8e0578dc59406f9e$LR•IPV4•10『线路8』 #EXTINF:-1 tvg-id="台视" tvg-name="台视" group-title="港澳台",台视 -http://38.64.72.148/hls/modn/list/4013/chunklist1.m3u8$LR•IPV4•10『线路9』 +p3p://167.114.175.6:55331/6223b571000a13023e78ece5030b5b05$LR•IPV4•10『线路9』 #EXTINF:-1 tvg-id="台视" tvg-name="台视" group-title="港澳台",台视 -http://162.19.247.76:22222/live/taishi/index.m3u8$LR•IPV4•10『线路10』 +http://38.64.72.148/hls/modn/list/4013/chunklist1.m3u8$LR•IPV4•10『线路10』 #EXTINF:-1 tvg-id="民视新闻" tvg-name="民视新闻" group-title="港澳台",民视新闻 http://38.64.72.148:80/hls/modn/list/4012/chunklist0.m3u8$LR•IPV4•4『线路1』 #EXTINF:-1 tvg-id="民视新闻" tvg-name="民视新闻" group-title="港澳台",民视新闻 @@ -6396,11 +6412,11 @@ http://38.64.72.148/hls/modn/list/4012/chunklist0.m3u8$LR•IPV4•4『线路3 #EXTINF:-1 tvg-id="民视新闻" tvg-name="民视新闻" group-title="港澳台",民视新闻 http://38.64.72.148/hls/modn/list/4012/chunklist1.m3u8$LR•IPV4•4『线路4』 #EXTINF:-1 tvg-id="耀才财经" tvg-name="耀才财经" group-title="港澳台",耀才财经 -https://v3.mediacast.hk/webcast/bshdlive-pc/playlist.m3u8$LR•IPV4•3『线路1』 +http://202.69.67.66:443/webcast/bshdlive-mobile/playlist.m3u8$LR•IPV4•3『线路1』 #EXTINF:-1 tvg-id="耀才财经" tvg-name="耀才财经" group-title="港澳台",耀才财经 -https://v3.mediacast.hk/webcast/bshdlive-pc/chunklist_w99771165.m3u8$LR•IPV4•3『线路2』 +https://v3.mediacast.hk/webcast/bshdlive-pc/playlist.m3u8$LR•IPV4•3『线路2』 #EXTINF:-1 tvg-id="耀才财经" tvg-name="耀才财经" group-title="港澳台",耀才财经 -http://202.69.67.66:443/webcast/bshdlive-mobile/playlist.m3u8$LR•IPV4•3『线路3』 +https://v3.mediacast.hk/webcast/bshdlive-pc/chunklist_w99771165.m3u8$LR•IPV4•3『线路3』 #EXTINF:-1 tvg-id="美亚C+" tvg-name="美亚C+" group-title="港澳台",美亚C+ http://ottproxy2.ist.ooo/livehls/MOB-U1-NO/03.m3u8$LR•IPV4•3『线路1』 #EXTINF:-1 tvg-id="美亚C+" tvg-name="美亚C+" group-title="港澳台",美亚C+ @@ -6496,33 +6512,33 @@ p3p://167.114.175.6:55331/663e9212000a54b4285005cd59217563$LR•IPV4 #EXTINF:-1 tvg-id="tvN" tvg-name="tvN" group-title="港澳台",tvN http://210.210.155.37/dr9445/h/h21/index.m3u8$LR•IPV4•6『线路1』 #EXTINF:-1 tvg-id="tvN" tvg-name="tvN" group-title="港澳台",tvN -https://stream1.freetv.fun/tvn-3.m3u8$LR•IPV4•6『线路2』 +http://45.162.193.35/TVN/index.m3u8$LR•IPV4•6『线路2』 #EXTINF:-1 tvg-id="tvN" tvg-name="tvN" group-title="港澳台",tvN -p3p://167.114.175.6:55331/6506c6930009ab3233ac2cd3018a6125$LR•IPV4•6『线路3』 +https://bcovlive-a.akamaihd.net/628aecb4fccb4c52b4f9c8d5cc57fb73/us-west-2/6058004209001/playlist_dvr.m3u8$LR•IPV4•6『线路3』 #EXTINF:-1 tvg-id="tvN" tvg-name="tvN" group-title="港澳台",tvN -p3p://167.114.175.6:55331/644f9623000a4051681a72d66bfc0191$LR•IPV4•6『线路4』 +https://stream1.freetv.fun/tvn-3.m3u8$LR•IPV4•6『线路4』 #EXTINF:-1 tvg-id="tvN" tvg-name="tvN" group-title="港澳台",tvN -http://45.162.193.35/TVN/index.m3u8$LR•IPV4•6『线路5』 +p3p://167.114.175.6:55331/6506c6930009ab3233ac2cd3018a6125$LR•IPV4•6『线路5』 #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『线路6』 +p3p://167.114.175.6:55331/644f9623000a4051681a72d66bfc0191$LR•IPV4•6『线路6』 #EXTINF:-1 tvg-id="華視" tvg-name="華視" group-title="港澳台",華視 http://seb.sason.top/sc/hsxw_fhd.m3u8$LR•IPV4 #EXTINF:-1 tvg-id="DW" tvg-name="DW" group-title="港澳台",DW https://raw.githubusercontent.com/ChiSheng9/iptv/master/TV08.m3u8$LR•IPV4•8『线路1』 #EXTINF:-1 tvg-id="DW" tvg-name="DW" group-title="港澳台",DW -https://dwamdstream102.akamaized.net/hls/live/2015525/dwstream102/stream05/streamPlaylist.m3u8$LR•IPV4•8『线路2』 +https://dwamdstream103.akamaized.net/hls/live/2015526/dwstream103/master.m3u8$LR•IPV4•8『线路2』 #EXTINF:-1 tvg-id="DW" tvg-name="DW" group-title="港澳台",DW -http://aktv.top/AKTV/live/aktv3/dw/AKTV.m3u8$LR•IPV4•8『线路3』 +https://amg01644-amg01644c1-amgplt0343.playout.now3.amagi.tv/ts-eu-w1-n2/playlist/amg01644-amg01644c1-amgplt0343/playlist.m3u8$LR•IPV4•8『线路3』 #EXTINF:-1 tvg-id="DW" tvg-name="DW" group-title="港澳台",DW -http://37.27.111.214:8080/live/46/hls.m3u8$LR•IPV4•8『线路4』 +http://177.234.249.178:8888/DW/index.m3u8$LR•IPV4•8『线路4』 #EXTINF:-1 tvg-id="DW" tvg-name="DW" group-title="港澳台",DW -https://dwamdstream103.akamaized.net/hls/live/2015526/dwstream103/master.m3u8$LR•IPV4•8『线路5』 +https://dwamdstream110.akamaized.net/hls/live/2017971/dwstream110/master.m3u8$LR•IPV4•8『线路5』 #EXTINF:-1 tvg-id="DW" tvg-name="DW" group-title="港澳台",DW -https://amg01644-amg01644c1-amgplt0343.playout.now3.amagi.tv/ts-eu-w1-n2/playlist/amg01644-amg01644c1-amgplt0343/playlist.m3u8$LR•IPV4•8『线路6』 +https://dwamdstream102.akamaized.net/hls/live/2015525/dwstream102/stream05/streamPlaylist.m3u8$LR•IPV4•8『线路6』 #EXTINF:-1 tvg-id="DW" tvg-name="DW" group-title="港澳台",DW -http://177.234.249.178:8888/DW/index.m3u8$LR•IPV4•8『线路7』 +http://aktv.top/AKTV/live/aktv3/dw/AKTV.m3u8$LR•IPV4•8『线路7』 #EXTINF:-1 tvg-id="DW" tvg-name="DW" group-title="港澳台",DW -https://dwamdstream110.akamaized.net/hls/live/2017971/dwstream110/master.m3u8$LR•IPV4•8『线路8』 +http://37.27.111.214:8080/live/46/hls.m3u8$LR•IPV4•8『线路8』 #EXTINF:-1 tvg-id="France 24" tvg-name="France 24" group-title="港澳台",France 24 https://live.france24.com/hls/live/2037222-b/F24_AR_HI_HLS/master_5000.m3u8$LR•IPV4•5『线路1』 #EXTINF:-1 tvg-id="France 24" tvg-name="France 24" group-title="港澳台",France 24 @@ -6536,93 +6552,93 @@ https://amg00106-amg00106c1-rakuten-uk-4654.playouts.now.amagi.tv/playlist/amg00 #EXTINF:-1 tvg-id="KIX" tvg-name="KIX" group-title="港澳台",KIX http://210.210.155.37/dr9445/h/h07/index.m3u8$LR•IPV4•3『线路1』 #EXTINF:-1 tvg-id="KIX" tvg-name="KIX" group-title="港澳台",KIX -p3p://167.114.175.6:55331/6444e9940006c03f3e688dba67767ffd$LR•IPV4•3『线路2』 +https://liveh34.vtvprime.vn/hls/KIX/04.m3u8$LR•IPV4•3『线路2』 #EXTINF:-1 tvg-id="KIX" tvg-name="KIX" group-title="港澳台",KIX -https://liveh34.vtvprime.vn/hls/KIX/04.m3u8$LR•IPV4•3『线路3』 +p3p://167.114.175.6:55331/6444e9940006c03f3e688dba67767ffd$LR•IPV4•3『线路3』 #EXTINF:-1 tvg-id="NHK WorldJapan" tvg-name="NHK WorldJapan" group-title="港澳台",NHK World-Japan -http://aktv.top/AKTV/live/aktv3/nhkworldjapan/AKTV.m3u8$LR•IPV4•3『线路1』 +https://masterpl.hls.nhkworld.jp/hls/w/live/smarttv.m3u8$LR•IPV4•3『线路1』 #EXTINF:-1 tvg-id="NHK WorldJapan" tvg-name="NHK WorldJapan" group-title="港澳台",NHK World-Japan -https://masterpl.hls.nhkworld.jp/hls/w/live/smarttv.m3u8$LR•IPV4•3『线路2』 +https://nhk.lls.pbs.org/index.m3u8$LR•IPV4•3『线路2』 #EXTINF:-1 tvg-id="NHK WorldJapan" tvg-name="NHK WorldJapan" group-title="港澳台",NHK World-Japan -https://nhk.lls.pbs.org/index.m3u8$LR•IPV4•3『线路3』 +http://aktv.top/AKTV/live/aktv3/nhkworldjapan/AKTV.m3u8$LR•IPV4•3『线路3』 #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•12『线路1』 +http://bethoven.af-stream.com:1600/s/kwtlxswl/nick-jr-il/video.m3u8$LR•IPV4•12『线路1』 #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•12『线路2』 +https://stream8.cinerama.uz/1501/playlist.m3u8$LR•IPV4•12『线路2』 #EXTINF:-1 tvg-id="Nick Jr" tvg-name="Nick Jr" group-title="港澳台",Nick Jr -https://stream8.cinerama.uz/1501/playlist.m3u8$LR•IPV4•12『线路3』 +http://40.160.24.55/NICK_JR/index.m3u8$LR•IPV4•12『线路3』 #EXTINF:-1 tvg-id="Nick Jr" tvg-name="Nick Jr" group-title="港澳台",Nick Jr -http://40.160.24.55/NICK_JR/index.m3u8$LR•IPV4•12『线路4』 +https://phcornerultralast.qzz.io/hls/laslo-serverless/dr_nickjr/index.m3u8$LR•IPV4•12『线路4』 #EXTINF:-1 tvg-id="Nick Jr" tvg-name="Nick Jr" group-title="港澳台",Nick Jr -https://phcornerultralast.qzz.io/hls/laslo-serverless/dr_nickjr/index.m3u8$LR•IPV4•12『线路5』 +https://jmp2.uk/plu-67f3eb1c443f0671bc03ece8.m3u8$LR•IPV4•12『线路5』 #EXTINF:-1 tvg-id="Nick Jr" tvg-name="Nick Jr" group-title="港澳台",Nick Jr -https://jmp2.uk/plu-67f3eb1c443f0671bc03ece8.m3u8$LR•IPV4•12『线路6』 +https://jmp2.uk/plu-6824ce95f09106f4b18f4114.m3u8$LR•IPV4•12『线路6』 #EXTINF:-1 tvg-id="Nick Jr" tvg-name="Nick Jr" group-title="港澳台",Nick Jr -https://jmp2.uk/plu-6824ce95f09106f4b18f4114.m3u8$LR•IPV4•12『线路7』 +https://jmp2.uk/plu-5ddd7cb2cbb9010009b4fe32.m3u8$LR•IPV4•12『线路7』 #EXTINF:-1 tvg-id="Nick Jr" tvg-name="Nick Jr" group-title="港澳台",Nick Jr -https://jmp2.uk/plu-5ddd7cb2cbb9010009b4fe32.m3u8$LR•IPV4•12『线路8』 +http://138.186.23.7:8082/NICKJR/index.m3u8$LR•IPV4•12『线路8』 #EXTINF:-1 tvg-id="Nick Jr" tvg-name="Nick Jr" group-title="港澳台",Nick Jr -http://138.186.23.7:8082/NICKJR/index.m3u8$LR•IPV4•12『线路9』 +https://jmp2.uk/plu-62bdb75c3afd1200079146a6.m3u8$LR•IPV4•12『线路9』 #EXTINF:-1 tvg-id="Nick Jr" tvg-name="Nick Jr" group-title="港澳台",Nick Jr -https://jmp2.uk/plu-62bdb75c3afd1200079146a6.m3u8$LR•IPV4•12『线路10』 +https://jmp2.uk/plu-5ca6748a37b88b269472dad9.m3u8$LR•IPV4•12『线路10』 #EXTINF:-1 tvg-id="Nick Jr" tvg-name="Nick Jr" group-title="港澳台",Nick Jr -https://jmp2.uk/plu-5ca6748a37b88b269472dad9.m3u8$LR•IPV4•12『线路11』 +http://103.137.83.62:9090/play/27/index.m3u8$LR•IPV4•12『线路11』 #EXTINF:-1 tvg-id="Nick Jr" tvg-name="Nick Jr" group-title="港澳台",Nick Jr -http://103.137.83.62:9090/play/27/index.m3u8$LR•IPV4•12『线路12』 +http://free.cnlive.club/channel/n75fc9ff7/index.m3u8?q=1752629214236$LR•IPV4•12『线路12』 #EXTINF:-1 tvg-id="Nickelodeon" tvg-name="Nickelodeon" group-title="港澳台",Nickelodeon -http://free.cnlive.club/channel/n6a165737/index.m3u8?q=1752629214236$LR•IPV4•27『线路1』 +http://213.91.179.28:8000/play/a056$LR•IPV4•27『线路1』 #EXTINF:-1 tvg-id="Nickelodeon" tvg-name="Nickelodeon" group-title="港澳台",Nickelodeon -http://213.91.179.28:8000/play/a056$LR•IPV4•27『线路2』 +https://ma.anixa.tv/clips/stream/nickelodeon/playlist.php$LR•IPV4•27『线路2』 #EXTINF:-1 tvg-id="Nickelodeon" tvg-name="Nickelodeon" group-title="港澳台",Nickelodeon -https://ma.anixa.tv/clips/stream/nickelodeon/playlist.php$LR•IPV4•27『线路3』 +http://151.80.18.177:86/Nickelodeon_FR/index.m3u8$LR•IPV4•27『线路3』 #EXTINF:-1 tvg-id="Nickelodeon" tvg-name="Nickelodeon" group-title="港澳台",Nickelodeon -http://151.80.18.177:86/Nickelodeon_FR/index.m3u8$LR•IPV4•27『线路4』 +http://bethoven.af-stream.com:1600/s/kwtlxswl/yes-nickelodeon-il/video.m3u8$LR•IPV4•27『线路4』 #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『线路5』 +http://193.239.186.231/NICK/index.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://82.78.243.219:45739/play/a00o/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://23.237.104.106:8080/USA_NICKELODEON/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://103.137.83.62:9090/play/28/index.m3u8$LR•IPV4•27『线路8』 #EXTINF:-1 tvg-id="Nickelodeon" tvg-name="Nickelodeon" group-title="港澳台",Nickelodeon -http://103.137.83.62:9090/play/28/index.m3u8$LR•IPV4•27『线路9』 +https://stream8.cinerama.uz/1500/playlist.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』 +https://jmp2.uk/plu-6824cda00101510f9eeaa011.m3u8$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://jmp2.uk/plu-6824ce10c5d53e1351ceb8d1.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-67f3eb800a1beb98767ca748.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-5d8d08395f39465da6fb3ec4.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』 +http://46.149.191.217:9011/play/a018$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』 +http://151.80.18.177:86/Nickelodeon_Junior/index.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://138.186.23.7:8082/NICK/index.m3u8$LR•IPV4•27『线路16』 #EXTINF:-1 tvg-id="Nickelodeon" tvg-name="Nickelodeon" group-title="港澳台",Nickelodeon -http://138.186.23.7:8082/NICK/index.m3u8$LR•IPV4•27『线路17』 +https://jmp2.uk/plu-5f0d668b872e4400073acc68.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』 +https://jmp2.uk/plu-60f5fabf0721880007cd50e3.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-5fab09a8749b1a00077d35d2.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-5ede448d3d50590007a4419e.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-645951c0e94c38000802d2cb.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-645952687cb4b100084ed52e.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』 +http://108.181.20.255:27347/livehttpplay?channel_id=23019$LR•IPV4•27『线路23』 #EXTINF:-1 tvg-id="Nickelodeon" tvg-name="Nickelodeon" group-title="港澳台",Nickelodeon -http://108.181.20.255:27347/livehttpplay?channel_id=23019$LR•IPV4•27『线路24』 +https://jmp2.uk/plu-620ff46e0a576e0007dc2f89.m3u8$LR•IPV4•27『线路24』 #EXTINF:-1 tvg-id="Nickelodeon" tvg-name="Nickelodeon" group-title="港澳台",Nickelodeon -https://jmp2.uk/plu-620ff46e0a576e0007dc2f89.m3u8$LR•IPV4•27『线路25』 +https://jmp2.uk/plu-620ff0a01f9e8700076c6f9d.m3u8$LR•IPV4•27『线路25』 #EXTINF:-1 tvg-id="Nickelodeon" tvg-name="Nickelodeon" group-title="港澳台",Nickelodeon -https://jmp2.uk/plu-620ff0a01f9e8700076c6f9d.m3u8$LR•IPV4•27『线路26』 +https://jmp2.uk/plu-5ca673e0d0bd6c2689c94ce3.m3u8$LR•IPV4•27『线路26』 #EXTINF:-1 tvg-id="Nickelodeon" tvg-name="Nickelodeon" group-title="港澳台",Nickelodeon -https://jmp2.uk/plu-5ca673e0d0bd6c2689c94ce3.m3u8$LR•IPV4•27『线路27』 +http://free.cnlive.club/channel/n6a165737/index.m3u8?q=1752629214236$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 #EXTINF:-1 tvg-id="ZooMoo" tvg-name="ZooMoo" group-title="港澳台",ZooMoo @@ -6768,9 +6784,9 @@ 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 -p3p://167.114.175.6:55331/65ad274400000b46bd92da681fce74f2$LR•IPV4•2『线路1』 +http://nmk.ioapk.com:5050/4gtv-live138/index.m3u8$LR•IPV4•2『线路1』 #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『线路2』 +p3p://167.114.175.6:55331/65ad274400000b46bd92da681fce74f2$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•4『线路1』 #EXTINF:-1 tvg-id="TVB Plus" tvg-name="TVB Plus" group-title="港澳台",TVB Plus @@ -6780,59 +6796,59 @@ p3p://167.114.175.6:55331/6649bce20008d56453eeebfc022701f1$LR•IPV4•4『线 #EXTINF:-1 tvg-id="TVB Plus" tvg-name="TVB Plus" group-title="港澳台",TVB Plus p3p://167.114.175.6:55331/653e4d3e000b344f0c91357e73163f82$LR•IPV4•4『线路4』 #EXTINF:-1 tvg-id="AXN" tvg-name="AXN" group-title="港澳台",AXN -p3p://167.114.175.6:55331/66d23a53000d25d573c606e3274f26c5$LR•IPV4•24『线路1』 +http://45.190.28.50/AXN_HD/index.m3u8$LR•IPV4•24『线路1』 #EXTINF:-1 tvg-id="AXN" tvg-name="AXN" group-title="港澳台",AXN -p3p://167.114.175.6:55331/6258ddc5000ee8a40e1bc8f50dec545c$LR•IPV4•24『线路2』 +http://cdn.haititivi.com/AXN/index.m3u8$LR•IPV4•24『线路2』 #EXTINF:-1 tvg-id="AXN" tvg-name="AXN" group-title="港澳台",AXN -http://45.190.28.50/AXN_HD/index.m3u8$LR•IPV4•24『线路3』 +http://znty.dyndns.org:5010/hls/axn.m3u8$LR•IPV4•24『线路3』 #EXTINF:-1 tvg-id="AXN" tvg-name="AXN" group-title="港澳台",AXN -http://cdn.haititivi.com/AXN/index.m3u8$LR•IPV4•24『线路4』 +http://5.57.74.130:8000/play/a0at/index.m3u8$LR•IPV4•24『线路4』 #EXTINF:-1 tvg-id="AXN" tvg-name="AXN" group-title="港澳台",AXN -http://znty.dyndns.org:5010/hls/axn.m3u8$LR•IPV4•24『线路5』 +http://85.14.32.26:8800/udp/239.100.10.17:5000$LR•IPV4•24『线路5』 #EXTINF:-1 tvg-id="AXN" tvg-name="AXN" group-title="港澳台",AXN -http://5.57.74.130:8000/play/a0at/index.m3u8$LR•IPV4•24『线路6』 +http://88.212.15.19/live/test_black/playlist.m3u8$LR•IPV4•24『线路6』 #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•24『线路7』 +http://82.78.243.219:45739/play/a00e/index.m3u8$LR•IPV4•24『线路7』 #EXTINF:-1 tvg-id="AXN" tvg-name="AXN" group-title="港澳台",AXN -http://88.212.15.19/live/test_black/playlist.m3u8$LR•IPV4•24『线路8』 +http://46.149.191.217:9009/play/a02d$LR•IPV4•24『线路8』 #EXTINF:-1 tvg-id="AXN" tvg-name="AXN" group-title="港澳台",AXN -http://82.78.243.219:45739/play/a00e/index.m3u8$LR•IPV4•24『线路9』 +http://85.11.144.9:4222/AXN$LR•IPV4•24『线路9』 #EXTINF:-1 tvg-id="AXN" tvg-name="AXN" group-title="港澳台",AXN -http://46.149.191.217:9009/play/a02d$LR•IPV4•24『线路10』 +http://88.212.15.19/live/test_axn/playlist.m3u8$LR•IPV4•24『线路10』 #EXTINF:-1 tvg-id="AXN" tvg-name="AXN" group-title="港澳台",AXN -http://85.11.144.9:4222/AXN$LR•IPV4•24『线路11』 +http://82.78.243.219:45739/play/a01n/index.m3u8$LR•IPV4•24『线路11』 #EXTINF:-1 tvg-id="AXN" tvg-name="AXN" group-title="港澳台",AXN -http://88.212.15.19/live/test_axn/playlist.m3u8$LR•IPV4•24『线路12』 +http://138.121.15.230:9002/AXN/index.m3u8$LR•IPV4•24『线路12』 #EXTINF:-1 tvg-id="AXN" tvg-name="AXN" group-title="港澳台",AXN -http://82.78.243.219:45739/play/a01n/index.m3u8$LR•IPV4•24『线路13』 +http://138.186.23.7:8082/AXN/index.m3u8$LR•IPV4•24『线路13』 #EXTINF:-1 tvg-id="AXN" tvg-name="AXN" group-title="港澳台",AXN -http://138.121.15.230:9002/AXN/index.m3u8$LR•IPV4•24『线路14』 +http://177.245.131.133:8080/AXN/index.m3u8$LR•IPV4•24『线路14』 #EXTINF:-1 tvg-id="AXN" tvg-name="AXN" group-title="港澳台",AXN -http://138.186.23.7:8082/AXN/index.m3u8$LR•IPV4•24『线路15』 +http://45.228.235.116:8000/play/a0iy/index.m3u8$LR•IPV4•24『线路15』 #EXTINF:-1 tvg-id="AXN" tvg-name="AXN" group-title="港澳台",AXN -http://177.245.131.133:8080/AXN/index.m3u8$LR•IPV4•24『线路16』 +http://50.7.120.34:8080/AXN_BLACK/index.m3u8$LR•IPV4•24『线路16』 #EXTINF:-1 tvg-id="AXN" tvg-name="AXN" group-title="港澳台",AXN -http://45.228.235.116:8000/play/a0iy/index.m3u8$LR•IPV4•24『线路17』 +https://lb.dstvmultimedia.com/AXNSpin/index.m3u8$LR•IPV4•24『线路17』 #EXTINF:-1 tvg-id="AXN" tvg-name="AXN" group-title="港澳台",AXN -http://50.7.120.34:8080/AXN_BLACK/index.m3u8$LR•IPV4•24『线路18』 +http://82.78.243.219:45739/play/a00n/index.m3u8$LR•IPV4•24『线路18』 #EXTINF:-1 tvg-id="AXN" tvg-name="AXN" group-title="港澳台",AXN -https://lb.dstvmultimedia.com/AXNSpin/index.m3u8$LR•IPV4•24『线路19』 +http://85.14.32.26:8800/udp/239.100.10.18:5000$LR•IPV4•24『线路19』 #EXTINF:-1 tvg-id="AXN" tvg-name="AXN" group-title="港澳台",AXN -http://82.78.243.219:45739/play/a00n/index.m3u8$LR•IPV4•24『线路20』 +http://88.212.15.19/live/test_white/playlist.m3u8$LR•IPV4•24『线路20』 #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•24『线路21』 +http://50.7.120.34:8080/AXN_WHITE/index.m3u8$LR•IPV4•24『线路21』 #EXTINF:-1 tvg-id="AXN" tvg-name="AXN" group-title="港澳台",AXN -http://88.212.15.19/live/test_white/playlist.m3u8$LR•IPV4•24『线路22』 +http://103.137.83.62:9090/play/21/index.m3u8$LR•IPV4•24『线路22』 #EXTINF:-1 tvg-id="AXN" tvg-name="AXN" group-title="港澳台",AXN -http://50.7.120.34:8080/AXN_WHITE/index.m3u8$LR•IPV4•24『线路23』 +p3p://167.114.175.6:55331/66d23a53000d25d573c606e3274f26c5$LR•IPV4•24『线路23』 #EXTINF:-1 tvg-id="AXN" tvg-name="AXN" group-title="港澳台",AXN -http://103.137.83.62:9090/play/21/index.m3u8$LR•IPV4•24『线路24』 +p3p://167.114.175.6:55331/6258ddc5000ee8a40e1bc8f50dec545c$LR•IPV4•24『线路24』 #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="港澳台",澳门卫视 -http://61.244.22.4/ch1/ch1.live/playlist.m3u8$LR•IPV4•2『线路1』 +http://php.jdshipin.com:8880/TVOD/iptv.php?id=as$LR•IPV4•2『线路1』 #EXTINF:-1 tvg-id="澳门卫视" tvg-name="澳门卫视" group-title="港澳台",澳门卫视 -http://php.jdshipin.com:8880/TVOD/iptv.php?id=as$LR•IPV4•2『线路2』 +http://61.244.22.4/ch1/ch1.live/playlist.m3u8$LR•IPV4•2『线路2』 #EXTINF:-1 tvg-id="Pet Club TV" tvg-name="Pet Club TV" group-title="港澳台",Pet Club TV https://cdn-apse1-prod.tsv2.amagi.tv/linear/amg01076-lightningintern-petclub-samsungnz/playlist.m3u8$LR•IPV4•2『线路1』 #EXTINF:-1 tvg-id="Pet Club TV" tvg-name="Pet Club TV" group-title="港澳台",Pet Club TV @@ -6856,77 +6872,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 -http://live.streamingfast.net/hls-live/goodtv/_definst_/liveevent/live-ch1-3.m3u8$LR•IPV4•38『线路3』 +https://aajtaklive.vgcdn.net/v1/master/611d79b11b77e2f571934fd80ca1413453772ac7/3196cced-ce29-4219-9809-f07ccdaa02b9/vglive-sk-848805/master.m3u8$LR•IPV4•38『线路3』 #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『线路4』 +http://stream1.ai-net.net:1935/gtv1/_definst_/smil:gtv.smil/playlist.m3u8$LR•IPV4•38『线路4』 #EXTINF:-1 tvg-id="Good" tvg-name="Good" group-title="港澳台",Good -p3p://167.114.175.6:55331/63ed9f4900046160e96ffb5b44333476$LR•IPV4•38『线路5』 +https://58c04fb1d143f.streamlock.net/feel_good_radio_1/feel_good_radio_1/playlist.m3u8$LR•IPV4•38『线路5』 #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『线路6』 +https://live.streamingfast.net/osmflivech3.m3u8$LR•IPV4•38『线路6』 #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『线路7』 +https://live.streamingfast.net/osmflivech5.m3u8$LR•IPV4•38『线路7』 #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『线路8』 +https://live.streamingfast.net/osmflivech6.m3u8$LR•IPV4•38『线路8』 #EXTINF:-1 tvg-id="Good" tvg-name="Good" group-title="港澳台",Good -https://live.streamingfast.net/osmflivech3.m3u8$LR•IPV4•38『线路9』 +https://live.streamingfast.net/osmflivech7.m3u8$LR•IPV4•38『线路9』 #EXTINF:-1 tvg-id="Good" tvg-name="Good" group-title="港澳台",Good -https://live.streamingfast.net/osmflivech5.m3u8$LR•IPV4•38『线路10』 +https://live.streamingfast.net/osmflivech9.m3u8$LR•IPV4•38『线路10』 #EXTINF:-1 tvg-id="Good" tvg-name="Good" group-title="港澳台",Good -https://live.streamingfast.net/osmflivech6.m3u8$LR•IPV4•38『线路11』 +https://live.streamingfast.net/osmflivech12.m3u8$LR•IPV4•38『线路11』 #EXTINF:-1 tvg-id="Good" tvg-name="Good" group-title="港澳台",Good -https://live.streamingfast.net/osmflivech7.m3u8$LR•IPV4•38『线路12』 +https://live.streamingfast.net/osmflivech14.m3u8$LR•IPV4•38『线路12』 #EXTINF:-1 tvg-id="Good" tvg-name="Good" group-title="港澳台",Good -https://live.streamingfast.net/osmflivech9.m3u8$LR•IPV4•38『线路13』 +https://live.streamingfast.net/osmflivech15.m3u8$LR•IPV4•38『线路13』 #EXTINF:-1 tvg-id="Good" tvg-name="Good" group-title="港澳台",Good -https://live.streamingfast.net/osmflivech12.m3u8$LR•IPV4•38『线路14』 +https://live.streamingfast.net/osmflivech16.m3u8$LR•IPV4•38『线路14』 #EXTINF:-1 tvg-id="Good" tvg-name="Good" group-title="港澳台",Good -https://live.streamingfast.net/osmflivech14.m3u8$LR•IPV4•38『线路15』 +https://live.streamingfast.net/osmflivech17.m3u8$LR•IPV4•38『线路15』 #EXTINF:-1 tvg-id="Good" tvg-name="Good" group-title="港澳台",Good -https://live.streamingfast.net/osmflivech15.m3u8$LR•IPV4•38『线路16』 +https://live.streamingfast.net/osmflivech18.m3u8$LR•IPV4•38『线路16』 #EXTINF:-1 tvg-id="Good" tvg-name="Good" group-title="港澳台",Good -https://live.streamingfast.net/osmflivech16.m3u8$LR•IPV4•38『线路17』 +https://live.streamingfast.net/osmflivech20.m3u8$LR•IPV4•38『线路17』 #EXTINF:-1 tvg-id="Good" tvg-name="Good" group-title="港澳台",Good -https://live.streamingfast.net/osmflivech17.m3u8$LR•IPV4•38『线路18』 +https://live.streamingfast.net/osmflivech21.m3u8$LR•IPV4•38『线路18』 #EXTINF:-1 tvg-id="Good" tvg-name="Good" group-title="港澳台",Good -https://live.streamingfast.net/osmflivech18.m3u8$LR•IPV4•38『线路19』 +https://live.streamingfast.net/osmflivech24.m3u8$LR•IPV4•38『线路19』 #EXTINF:-1 tvg-id="Good" tvg-name="Good" group-title="港澳台",Good -https://live.streamingfast.net/osmflivech20.m3u8$LR•IPV4•38『线路20』 +https://live.streamingfast.net/osmflivech27.m3u8$LR•IPV4•38『线路20』 #EXTINF:-1 tvg-id="Good" tvg-name="Good" group-title="港澳台",Good -https://live.streamingfast.net/osmflivech21.m3u8$LR•IPV4•38『线路21』 +https://live.streamingfast.net/osmflivech28.m3u8$LR•IPV4•38『线路21』 #EXTINF:-1 tvg-id="Good" tvg-name="Good" group-title="港澳台",Good -https://live.streamingfast.net/osmflivech24.m3u8$LR•IPV4•38『线路22』 +https://live.streamingfast.net/osmflivech29.m3u8$LR•IPV4•38『线路22』 #EXTINF:-1 tvg-id="Good" tvg-name="Good" group-title="港澳台",Good -https://live.streamingfast.net/osmflivech27.m3u8$LR•IPV4•38『线路23』 +https://live.streamingfast.net/osmflivech30.m3u8$LR•IPV4•38『线路23』 #EXTINF:-1 tvg-id="Good" tvg-name="Good" group-title="港澳台",Good -https://live.streamingfast.net/osmflivech28.m3u8$LR•IPV4•38『线路24』 +https://live.streamingfast.net/osmflivech31.m3u8$LR•IPV4•38『线路24』 #EXTINF:-1 tvg-id="Good" tvg-name="Good" group-title="港澳台",Good -https://live.streamingfast.net/osmflivech29.m3u8$LR•IPV4•38『线路25』 +https://live.streamingfast.net/osmflivech32.m3u8$LR•IPV4•38『线路25』 #EXTINF:-1 tvg-id="Good" tvg-name="Good" group-title="港澳台",Good -https://live.streamingfast.net/osmflivech30.m3u8$LR•IPV4•38『线路26』 +https://live.streamingfast.net/osmflivech33.m3u8$LR•IPV4•38『线路26』 #EXTINF:-1 tvg-id="Good" tvg-name="Good" group-title="港澳台",Good -https://live.streamingfast.net/osmflivech31.m3u8$LR•IPV4•38『线路27』 +https://live.streamingfast.net/osmflivech38.m3u8$LR•IPV4•38『线路27』 #EXTINF:-1 tvg-id="Good" tvg-name="Good" group-title="港澳台",Good -https://live.streamingfast.net/osmflivech32.m3u8$LR•IPV4•38『线路28』 +https://live.streamingfast.net/osmflivech40.m3u8$LR•IPV4•38『线路28』 #EXTINF:-1 tvg-id="Good" tvg-name="Good" group-title="港澳台",Good -https://live.streamingfast.net/osmflivech33.m3u8$LR•IPV4•38『线路29』 +https://live.streamingfast.net/osmflivech45.m3u8$LR•IPV4•38『线路29』 #EXTINF:-1 tvg-id="Good" tvg-name="Good" group-title="港澳台",Good -https://live.streamingfast.net/osmflivech38.m3u8$LR•IPV4•38『线路30』 +https://live.streamingfast.net/osmflivech47.m3u8$LR•IPV4•38『线路30』 #EXTINF:-1 tvg-id="Good" tvg-name="Good" group-title="港澳台",Good -https://live.streamingfast.net/osmflivech40.m3u8$LR•IPV4•38『线路31』 +https://live.streamingfast.net/osmflivech49.m3u8$LR•IPV4•38『线路31』 #EXTINF:-1 tvg-id="Good" tvg-name="Good" group-title="港澳台",Good -https://live.streamingfast.net/osmflivech45.m3u8$LR•IPV4•38『线路32』 +https://live.streamingfast.net/osmflivech50.m3u8$LR•IPV4•38『线路32』 #EXTINF:-1 tvg-id="Good" tvg-name="Good" group-title="港澳台",Good -https://live.streamingfast.net/osmflivech47.m3u8$LR•IPV4•38『线路33』 +https://jmp2.uk/plu-65775af3b3801200084a3aa4.m3u8$LR•IPV4•38『线路33』 #EXTINF:-1 tvg-id="Good" tvg-name="Good" group-title="港澳台",Good -https://live.streamingfast.net/osmflivech49.m3u8$LR•IPV4•38『线路34』 +https://jmp2.uk/plu-685a995b460ac82fa504342c.m3u8$LR•IPV4•38『线路34』 #EXTINF:-1 tvg-id="Good" tvg-name="Good" group-title="港澳台",Good -https://live.streamingfast.net/osmflivech50.m3u8$LR•IPV4•38『线路35』 +https://amg01448-samsungin-ndtvgoodtimes-samsungin-ad-gp.amagi.tv/playlist/amg01448-samsungin-ndtvgoodtimes-samsungin/playlist.m3u8$LR•IPV4•38『线路35』 #EXTINF:-1 tvg-id="Good" tvg-name="Good" group-title="港澳台",Good -https://jmp2.uk/plu-65775af3b3801200084a3aa4.m3u8$LR•IPV4•38『线路36』 +http://live.streamingfast.net/hls-live/goodtv/_definst_/liveevent/live-ch1-3.m3u8$LR•IPV4•38『线路36』 #EXTINF:-1 tvg-id="Good" tvg-name="Good" group-title="港澳台",Good -https://jmp2.uk/plu-685a995b460ac82fa504342c.m3u8$LR•IPV4•38『线路37』 +http://live.streamingfast.net/hls-live/goodtv/_definst_/liveevent/live-ch2-3.m3u8$LR•IPV4•38『线路37』 #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『线路38』 +p3p://167.114.175.6:55331/63ed9f4900046160e96ffb5b44333476$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 @@ -6950,35 +6966,35 @@ https://raw.githubusercontent.com/ChiSheng9/iptv/master/TV28.m3u8$LR•IPV4 #EXTINF:-1 tvg-id="FTV News" tvg-name="FTV News" group-title="港澳台",FTV News 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•15『线路1』 +https://jmp2.uk/plu-62cbf063257170000724590c.m3u8$LR•IPV4•15『线路1』 #EXTINF:-1 tvg-id="Global News" tvg-name="Global News" group-title="港澳台",Global News -https://jmp2.uk/plu-62cbf063257170000724590c.m3u8$LR•IPV4•15『线路2』 +https://jmp2.uk/plu-62cbf23dcfb48300077f8348.m3u8$LR•IPV4•15『线路2』 #EXTINF:-1 tvg-id="Global News" tvg-name="Global News" group-title="港澳台",Global News -https://jmp2.uk/plu-62cbf23dcfb48300077f8348.m3u8$LR•IPV4•15『线路3』 +https://jmp2.uk/plu-62cbf2de1fba5f0007e47d9c.m3u8$LR•IPV4•15『线路3』 #EXTINF:-1 tvg-id="Global News" tvg-name="Global News" group-title="港澳台",Global News -https://jmp2.uk/plu-62cbf2de1fba5f0007e47d9c.m3u8$LR•IPV4•15『线路4』 +https://jmp2.uk/plu-62cbf398b8e02600071deda5.m3u8$LR•IPV4•15『线路4』 #EXTINF:-1 tvg-id="Global News" tvg-name="Global News" group-title="港澳台",Global News -https://jmp2.uk/plu-62cbf398b8e02600071deda5.m3u8$LR•IPV4•15『线路5』 +https://jmp2.uk/plu-62cbf4964446e2000742073e.m3u8$LR•IPV4•15『线路5』 #EXTINF:-1 tvg-id="Global News" tvg-name="Global News" group-title="港澳台",Global News -https://jmp2.uk/plu-62cbf4964446e2000742073e.m3u8$LR•IPV4•15『线路6』 +https://jmp2.uk/plu-62cbf7439cb58900088dc77b.m3u8$LR•IPV4•15『线路6』 #EXTINF:-1 tvg-id="Global News" tvg-name="Global News" group-title="港澳台",Global News -https://jmp2.uk/plu-62cbf7439cb58900088dc77b.m3u8$LR•IPV4•15『线路7』 +https://jmp2.uk/plu-62cbfbd6ad95670007f567af.m3u8$LR•IPV4•15『线路7』 #EXTINF:-1 tvg-id="Global News" tvg-name="Global News" group-title="港澳台",Global News -https://jmp2.uk/plu-62cbfbd6ad95670007f567af.m3u8$LR•IPV4•15『线路8』 +https://jmp2.uk/plu-62cbef9ebb857100072fc187.m3u8$LR•IPV4•15『线路8』 #EXTINF:-1 tvg-id="Global News" tvg-name="Global News" group-title="港澳台",Global News -https://jmp2.uk/plu-62cbef9ebb857100072fc187.m3u8$LR•IPV4•15『线路9』 +https://jmp2.uk/plu-62cbfc572dc3750007a493ce.m3u8$LR•IPV4•15『线路9』 #EXTINF:-1 tvg-id="Global News" tvg-name="Global News" group-title="港澳台",Global News -https://jmp2.uk/plu-62cbfc572dc3750007a493ce.m3u8$LR•IPV4•15『线路10』 +https://jmp2.uk/plu-62cbfcd8c2db990007861e43.m3u8$LR•IPV4•15『线路10』 #EXTINF:-1 tvg-id="Global News" tvg-name="Global News" group-title="港澳台",Global News -https://jmp2.uk/plu-62cbfcd8c2db990007861e43.m3u8$LR•IPV4•15『线路11』 +https://jmp2.uk/plu-62cbff53ca8f2200080253b5.m3u8$LR•IPV4•15『线路11』 #EXTINF:-1 tvg-id="Global News" tvg-name="Global News" group-title="港澳台",Global News -https://jmp2.uk/plu-62cbff53ca8f2200080253b5.m3u8$LR•IPV4•15『线路12』 +https://jmp2.uk/plu-62cc00359cb58900088dc840.m3u8$LR•IPV4•15『线路12』 #EXTINF:-1 tvg-id="Global News" tvg-name="Global News" group-title="港澳台",Global News -https://jmp2.uk/plu-62cc00359cb58900088dc840.m3u8$LR•IPV4•15『线路13』 +https://jmp2.uk/plu-62cc00b3b821cf00070f82c3.m3u8$LR•IPV4•15『线路13』 #EXTINF:-1 tvg-id="Global News" tvg-name="Global News" group-title="港澳台",Global News -https://jmp2.uk/plu-62cc00b3b821cf00070f82c3.m3u8$LR•IPV4•15『线路14』 +https://jmp2.uk/plu-62cc0120880c890007191016.m3u8$LR•IPV4•15『线路14』 #EXTINF:-1 tvg-id="Global News" tvg-name="Global News" group-title="港澳台",Global News -https://jmp2.uk/plu-62cc0120880c890007191016.m3u8$LR•IPV4•15『线路15』 +https://live.corusdigitaldev.com/groupb/live/3062d0e3-ed4c-4f47-8482-95648250f4b8/live.isml/.m3u8$LR•IPV4•15『线路15』 #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 @@ -7008,11 +7024,11 @@ 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 -p3p://167.114.175.6:55331/62184bc3000cd48f11e47b06202b7e18$LR•IPV4•3『线路1』 +https://hoytv-live-stream.hoy.tv/ch77/index.m3u8$LR•IPV4•3『线路1』 #EXTINF:-1 tvg-id="HOY TV" tvg-name="HOY TV" group-title="港澳台",HOY TV -http://php.jdshipin.com/TVOD/iptv.php?id=hoytv$LR•IPV4•3『线路2』 +p3p://167.114.175.6:55331/62184bc3000cd48f11e47b06202b7e18$LR•IPV4•3『线路2』 #EXTINF:-1 tvg-id="HOY TV" tvg-name="HOY TV" group-title="港澳台",HOY TV -https://hoytv-live-stream.hoy.tv/ch77/index.m3u8$LR•IPV4•3『线路3』 +http://php.jdshipin.com/TVOD/iptv.php?id=hoytv$LR•IPV4•3『线路3』 #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 @@ -7022,51 +7038,51 @@ p3p://167.114.175.6:55331/63eda04a0001f6fae973e6a334696980$LR•IPV4 #EXTINF:-1 tvg-id="大立" tvg-name="大立" group-title="港澳台",大立 p3p://167.114.175.6:55331/64c4d2ba00051d1d320d17d218503f93$LR•IPV4 #EXTINF:-1 tvg-id="National Geographic" tvg-name="National Geographic" group-title="港澳台",National Geographic -http://23.237.104.106:8080/USA_NAT_GEO/index.m3u8$LR•IPV4•23『线路1』 +http://213.91.179.28:8000/play/a0ct$LR•IPV4•23『线路1』 #EXTINF:-1 tvg-id="National Geographic" tvg-name="National Geographic" group-title="港澳台",National Geographic -http://213.91.179.28:8000/play/a0ct$LR•IPV4•23『线路2』 +http://167.250.126.140:7777/NATGEO-HD/index.m3u8$LR•IPV4•23『线路2』 #EXTINF:-1 tvg-id="National Geographic" tvg-name="National Geographic" group-title="港澳台",National Geographic -http://167.250.126.140:7777/NATGEO-HD/index.m3u8$LR•IPV4•23『线路3』 +http://185.102.171.218/NatGeo/index.m3u8$LR•IPV4•23『线路3』 #EXTINF:-1 tvg-id="National Geographic" tvg-name="National Geographic" group-title="港澳台",National Geographic -http://185.102.171.218/NatGeo/index.m3u8$LR•IPV4•23『线路4』 +http://138.121.15.230:9002/NAT-GEO/index.m3u8$LR•IPV4•23『线路4』 #EXTINF:-1 tvg-id="National Geographic" tvg-name="National Geographic" group-title="港澳台",National Geographic -http://138.121.15.230:9002/NAT-GEO/index.m3u8$LR•IPV4•23『线路5』 +https://saran-live.ercdn.net/natgeohd/index.m3u8$LR•IPV4•23『线路5』 #EXTINF:-1 tvg-id="National Geographic" tvg-name="National Geographic" group-title="港澳台",National Geographic -https://saran-live.ercdn.net/natgeohd/index.m3u8$LR•IPV4•23『线路6』 +http://40.160.24.53/NAT_GEO/index.m3u8$LR•IPV4•23『线路6』 #EXTINF:-1 tvg-id="National Geographic" tvg-name="National Geographic" group-title="港澳台",National Geographic -http://40.160.24.53/NAT_GEO/index.m3u8$LR•IPV4•23『线路7』 +https://live-fi.tvkaista.net/national-geographic/live.m3u8?hd=true$LR•IPV4•23『线路7』 #EXTINF:-1 tvg-id="National Geographic" tvg-name="National Geographic" group-title="港澳台",National Geographic -https://live-fi.tvkaista.net/national-geographic/live.m3u8?hd=true$LR•IPV4•23『线路8』 +http://149.71.34.166:8002/play/a013/index.m3u8$LR•IPV4•23『线路8』 #EXTINF:-1 tvg-id="National Geographic" tvg-name="National Geographic" group-title="港澳台",National Geographic -http://149.71.34.166:8002/play/a013/index.m3u8$LR•IPV4•23『线路9』 +http://46.32.176.50/NationalGeographicHD/index.m3u8$LR•IPV4•23『线路9』 #EXTINF:-1 tvg-id="National Geographic" tvg-name="National Geographic" group-title="港澳台",National Geographic -http://46.32.176.50/NationalGeographicHD/index.m3u8$LR•IPV4•23『线路10』 +http://198.58.104.90:8989/natgeo/index.m3u8$LR•IPV4•23『线路10』 #EXTINF:-1 tvg-id="National Geographic" tvg-name="National Geographic" group-title="港澳台",National Geographic -http://198.58.104.90:8989/natgeo/index.m3u8$LR•IPV4•23『线路11』 +http://45.162.193.35/NATGEO/index.m3u8$LR•IPV4•23『线路11』 #EXTINF:-1 tvg-id="National Geographic" tvg-name="National Geographic" group-title="港澳台",National Geographic -http://45.162.193.35/NATGEO/index.m3u8$LR•IPV4•23『线路12』 +http://bantel-cdn1.iptvperu.tv:1935/btnscrtn/NatGeo.stream/playlist.m3u8$LR•IPV4•23『线路12』 #EXTINF:-1 tvg-id="National Geographic" tvg-name="National Geographic" group-title="港澳台",National Geographic -http://bantel-cdn1.iptvperu.tv:1935/btnscrtn/NatGeo.stream/playlist.m3u8$LR•IPV4•23『线路13』 +http://206.212.244.63/122/index.m3u8$LR•IPV4•23『线路13』 #EXTINF:-1 tvg-id="National Geographic" tvg-name="National Geographic" group-title="港澳台",National Geographic -http://206.212.244.63/122/index.m3u8$LR•IPV4•23『线路14』 +http://213.91.179.28:8000/play/a0cu$LR•IPV4•23『线路14』 #EXTINF:-1 tvg-id="National Geographic" tvg-name="National Geographic" group-title="港澳台",National Geographic -http://213.91.179.28:8000/play/a0cu$LR•IPV4•23『线路15』 +http://41.205.77.102/NATGEO-WILD/index.m3u8$LR•IPV4•23『线路15』 #EXTINF:-1 tvg-id="National Geographic" tvg-name="National Geographic" group-title="港澳台",National Geographic -http://41.205.77.102/NATGEO-WILD/index.m3u8$LR•IPV4•23『线路16』 +http://185.102.171.218/NatGeoWild/index.m3u8$LR•IPV4•23『线路16』 #EXTINF:-1 tvg-id="National Geographic" tvg-name="National Geographic" group-title="港澳台",National Geographic -http://185.102.171.218/NatGeoWild/index.m3u8$LR•IPV4•23『线路17』 +http://hls127.freeott.top:8080/Nat_Geo_Wild_SD/video.m3u8$LR•IPV4•23『线路17』 #EXTINF:-1 tvg-id="National Geographic" tvg-name="National Geographic" group-title="港澳台",National Geographic -http://hls127.freeott.top:8080/Nat_Geo_Wild_SD/video.m3u8$LR•IPV4•23『线路18』 +https://saran-live.ercdn.net/natgeowild/index.m3u8$LR•IPV4•23『线路18』 #EXTINF:-1 tvg-id="National Geographic" tvg-name="National Geographic" group-title="港澳台",National Geographic -https://saran-live.ercdn.net/natgeowild/index.m3u8$LR•IPV4•23『线路19』 +http://46.32.176.50/natgeowild/index.m3u8$LR•IPV4•23『线路19』 #EXTINF:-1 tvg-id="National Geographic" tvg-name="National Geographic" group-title="港澳台",National Geographic -http://46.32.176.50/natgeowild/index.m3u8$LR•IPV4•23『线路20』 +http://40.160.24.53/NAT_GEO_WILD/index.m3u8$LR•IPV4•23『线路20』 #EXTINF:-1 tvg-id="National Geographic" tvg-name="National Geographic" group-title="港澳台",National Geographic -http://40.160.24.53/NAT_GEO_WILD/index.m3u8$LR•IPV4•23『线路21』 +http://149.71.34.166:8002/play/a012/index.m3u8$LR•IPV4•23『线路21』 #EXTINF:-1 tvg-id="National Geographic" tvg-name="National Geographic" group-title="港澳台",National Geographic -http://149.71.34.166:8002/play/a012/index.m3u8$LR•IPV4•23『线路22』 +http://198.58.104.90:8989/natgeowild/index.m3u8$LR•IPV4•23『线路22』 #EXTINF:-1 tvg-id="National Geographic" tvg-name="National Geographic" group-title="港澳台",National Geographic -http://198.58.104.90:8989/natgeowild/index.m3u8$LR•IPV4•23『线路23』 +http://23.237.104.106:8080/USA_NAT_GEO/index.m3u8$LR•IPV4•23『线路23』 #EXTINF:-1 tvg-id="東森新聞" tvg-name="東森新聞" group-title="港澳台",東森新聞 http://seb.sason.top/sc/dsxw_fhd.m3u8$LR•IPV4 #EXTINF:-1 tvg-id="Xite Hits" tvg-name="Xite Hits" group-title="港澳台",Xite Hits @@ -7080,17 +7096,17 @@ https://d198ro05q94rc4.cloudfront.net/XITE_Rock_On.m3u8$LR•IPV4 #EXTINF:-1 tvg-id="FIGHT SPORTS" tvg-name="FIGHT SPORTS" group-title="港澳台",FIGHT SPORTS p3p://167.114.175.6:55331/65a4480e000eb9449aeb1d5a33663b73$LR•IPV4 #EXTINF:-1 tvg-id="NBA TV" tvg-name="NBA TV" group-title="港澳台",NBA TV -https://stream1.freetv.fun/nba-tv-7.m3u8$LR•IPV4•6『线路1』 +https://amg00556-amg00556c3-firetv-us-6060.playouts.now.amagi.tv/playlist.m3u8$LR•IPV4•6『线路1』 #EXTINF:-1 tvg-id="NBA TV" tvg-name="NBA TV" group-title="港澳台",NBA TV -https://stream1.freetv.fun/nba-tv-5.m3u8$LR•IPV4•6『线路2』 +http://user.scalecdn.co:8080/live/54706135/09221986/3092.m3u8$LR•IPV4•6『线路2』 #EXTINF:-1 tvg-id="NBA TV" tvg-name="NBA TV" group-title="港澳台",NBA TV -http://170.yfvodcdn.com:19980/live/nbaTV2/hls.m3u8$LR•IPV4•6『线路3』 +https://stream1.freetv.fun/nba-tv-7.m3u8$LR•IPV4•6『线路3』 #EXTINF:-1 tvg-id="NBA TV" tvg-name="NBA TV" group-title="港澳台",NBA TV -p3p://167.114.175.6:55331/65a587500007bc039fca3566638e69af$LR•IPV4•6『线路4』 +https://stream1.freetv.fun/nba-tv-5.m3u8$LR•IPV4•6『线路4』 #EXTINF:-1 tvg-id="NBA TV" tvg-name="NBA TV" group-title="港澳台",NBA TV -https://amg00556-amg00556c3-firetv-us-6060.playouts.now.amagi.tv/playlist.m3u8$LR•IPV4•6『线路5』 +http://170.yfvodcdn.com:19980/live/nbaTV2/hls.m3u8$LR•IPV4•6『线路5』 #EXTINF:-1 tvg-id="NBA TV" tvg-name="NBA TV" group-title="港澳台",NBA TV -http://user.scalecdn.co:8080/live/54706135/09221986/3092.m3u8$LR•IPV4•6『线路6』 +p3p://167.114.175.6:55331/65a587500007bc039fca3566638e69af$LR•IPV4•6『线路6』 #EXTINF:-1 tvg-id="Sukan" tvg-name="Sukan" group-title="港澳台",Sukan https://d25tgymtnqzu8s.cloudfront.net/smil:sukan/manifest.mpd$LR•IPV4 #EXTINF:-1 tvg-id="TV9" tvg-name="TV9" group-title="港澳台",TV9 @@ -7116,303 +7132,303 @@ https://dash4.antik.sk/live/test_tv9/playlist.m3u8$LR•IPV4•11『线路10』 #EXTINF:-1 tvg-id="TV9" tvg-name="TV9" group-title="港澳台",TV9 https://5bf7b725107e5.streamlock.net/tv9/tv9/playlist.m3u8$LR•IPV4•11『线路11』 #EXTINF:-1 tvg-id="BBC" tvg-name="BBC" group-title="港澳台",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•97『线路1』 +https://vs-cmaf-pushb-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:bbc_alba/hevc_iptv_mse_v0.mpd$LR•IPV4•97『线路1』 #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•97『线路2』 +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•97『线路2』 #EXTINF:-1 tvg-id="BBC" tvg-name="BBC" group-title="港澳台",BBC -http://free.cnlive.club/channel/356e7ac6/index.m3u8?q=1752629214236$LR•IPV4•97『线路3』 +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•97『线路3』 #EXTINF:-1 tvg-id="BBC" tvg-name="BBC" group-title="港澳台",BBC -http://free.cnlive.club/channel/359a630b/index.m3u8?q=1752629214236$LR•IPV4•97『线路4』 +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•97『线路4』 #EXTINF:-1 tvg-id="BBC" tvg-name="BBC" group-title="港澳台",BBC -p3p://167.114.175.6:55331/64026f590000e9663abc652f25176282$LR•IPV4•97『线路5』 +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•97『线路5』 #EXTINF:-1 tvg-id="BBC" tvg-name="BBC" group-title="港澳台",BBC -p3p://167.114.175.6:55331/6444eb2e000921503e6ecfe873cd10b1$LR•IPV4•97『线路6』 +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•97『线路6』 #EXTINF:-1 tvg-id="BBC" tvg-name="BBC" group-title="港澳台",BBC -http://125.227.210.55:8165/VideoInput/play.ts$LR•IPV4•97『线路7』 +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•97『线路7』 #EXTINF:-1 tvg-id="BBC" tvg-name="BBC" group-title="港澳台",BBC -https://d2vnbkvjbims7j.cloudfront.net/containerA/LTN/playlist.m3u8$LR•IPV4•97『线路8』 +http://193.46.58.239:8080/BBCOneHD/index.m3u8$LR•IPV4•97『线路8』 #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•97『线路9』 +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•97『线路9』 #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•97『线路10』 +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•97『线路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_east/pc_hd_abr_v2.mpd$LR•IPV4•97『线路11』 +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•97『线路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_east_yorkshire/pc_hd_abr_v2.mpd$LR•IPV4•97『线路12』 +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•97『线路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_east_midlands/pc_hd_abr_v2.mpd$LR•IPV4•97『线路13』 +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•97『线路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_east_midlands/hevc_iptv_mse_v0.mpd$LR•IPV4•97『线路14』 +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•97『线路14』 #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•97『线路15』 +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•97『线路15』 #EXTINF:-1 tvg-id="BBC" tvg-name="BBC" group-title="港澳台",BBC -http://193.46.58.239:8080/BBCOneHD/index.m3u8$LR•IPV4•97『线路16』 +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•97『线路16』 #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•97『线路17』 +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•97『线路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_north_east/hevc_iptv_mse_v0.mpd$LR•IPV4•97『线路18』 +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•97『线路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_north_west/pc_hd_abr_v2.mpd$LR•IPV4•97『线路19』 +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•97『线路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_north_west/hevc_iptv_mse_v0.mpd$LR•IPV4•97『线路20』 +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•97『线路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_northern_ireland_hd/pc_hd_abr_v2.mpd$LR•IPV4•97『线路21』 +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•97『线路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_northern_ireland_hd/hevc_iptv_mse_v0.mpd$LR•IPV4•97『线路22』 +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•97『线路22』 #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•97『线路23』 +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•97『线路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_scotland_hd/pc_hd_abr_v2.mpd$LR•IPV4•97『线路24』 +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•97『线路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_south/pc_hd_abr_v2.mpd$LR•IPV4•97『线路25』 +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•97『线路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_one_south_east/pc_hd_abr_v2.mpd$LR•IPV4•97『线路26』 +http://193.46.58.239:8080/BBCTwoHD/index.m3u8$LR•IPV4•97『线路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_one_south_west/pc_hd_abr_v2.mpd$LR•IPV4•97『线路27』 +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•97『线路27』 #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•97『线路28』 +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•97『线路28』 #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•97『线路29』 +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•97『线路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_one_west_midlands/pc_hd_abr_v2.mpd$LR•IPV4•97『线路30』 +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•97『线路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_one_yorks/pc_hd_abr_v2.mpd$LR•IPV4•97『线路31』 +https://pb-iiczlgfysam0q.akamaized.net/v1/amcnetworks_bbcnews_1/samsungheadend_us/latest/main/hls/playlist.m3u8$LR•IPV4•97『线路31』 #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•97『线路32』 +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•97『线路32』 #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•97『线路33』 +http://138.121.15.230:9002/BBC-NEWS/index.m3u8$LR•IPV4•97『线路33』 #EXTINF:-1 tvg-id="BBC" tvg-name="BBC" group-title="港澳台",BBC -http://193.46.58.239:8080/BBCTwoHD/index.m3u8$LR•IPV4•97『线路34』 +http://23.237.104.106:8080/USA_BBC_NEWS/index.m3u8$LR•IPV4•97『线路34』 #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•97『线路35』 +http://45.153.96.44:8001$LR•IPV4•97『线路35』 #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•97『线路36』 +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•97『线路36』 #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•97『线路37』 +http://23.239.31.26:8989/bbcamerica/index.m3u8$LR•IPV4•97『线路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_arabic_tv/pc_hd_abr_v2.mpd$LR•IPV4•97『线路38』 +http://40.160.24.52/BBC_AMERICA/index.m3u8$LR•IPV4•97『线路38』 #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•97『线路39』 +http://91.146.94.234:10001/play/a087$LR•IPV4•97『线路39』 #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•97『线路40』 +https://d1em2hga7sgumq.cloudfront.net/playlist.m3u8$LR•IPV4•97『线路40』 #EXTINF:-1 tvg-id="BBC" tvg-name="BBC" group-title="港澳台",BBC -http://138.121.15.230:9002/BBC-NEWS/index.m3u8$LR•IPV4•97『线路41』 +https://pb-0ix3l1oxmg1fj.akamaized.net/playlist.m3u8$LR•IPV4•97『线路41』 #EXTINF:-1 tvg-id="BBC" tvg-name="BBC" group-title="港澳台",BBC -http://23.237.104.106:8080/USA_BBC_NEWS/index.m3u8$LR•IPV4•97『线路42』 +https://amg00793-amg00793c41-rakuten-it-5445.playouts.now.amagi.tv/playlist.m3u8$LR•IPV4•97『线路42』 #EXTINF:-1 tvg-id="BBC" tvg-name="BBC" group-title="港澳台",BBC -http://45.153.96.44:8001$LR•IPV4•97『线路43』 +https://bbc-impossible-1-us.xumo.wurl.tv/playlist.m3u8$LR•IPV4•97『线路43』 #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•97『线路44』 +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•97『线路44』 #EXTINF:-1 tvg-id="BBC" tvg-name="BBC" group-title="港澳台",BBC -http://23.239.31.26:8989/bbcamerica/index.m3u8$LR•IPV4•97『线路45』 +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•97『线路45』 #EXTINF:-1 tvg-id="BBC" tvg-name="BBC" group-title="港澳台",BBC -http://40.160.24.52/BBC_AMERICA/index.m3u8$LR•IPV4•97『线路46』 +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•97『线路46』 #EXTINF:-1 tvg-id="BBC" tvg-name="BBC" group-title="港澳台",BBC -http://91.146.94.234:10001/play/a087$LR•IPV4•97『线路47』 +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•97『线路47』 #EXTINF:-1 tvg-id="BBC" tvg-name="BBC" group-title="港澳台",BBC -https://d1em2hga7sgumq.cloudfront.net/playlist.m3u8$LR•IPV4•97『线路48』 +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•97『线路48』 #EXTINF:-1 tvg-id="BBC" tvg-name="BBC" group-title="港澳台",BBC -https://pb-0ix3l1oxmg1fj.akamaized.net/playlist.m3u8$LR•IPV4•97『线路49』 +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•97『线路49』 #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•97『线路50』 +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•97『线路50』 #EXTINF:-1 tvg-id="BBC" tvg-name="BBC" group-title="港澳台",BBC -https://bbc-impossible-1-us.xumo.wurl.tv/playlist.m3u8$LR•IPV4•97『线路51』 +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•97『线路51』 #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•97『线路52』 +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•97『线路52』 #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•97『线路53』 +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•97『线路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_002/iptv_hd_abr_v1.mpd$LR•IPV4•97『线路54』 +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•97『线路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_003/iptv_hd_abr_v1.mpd$LR•IPV4•97『线路55』 +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•97『线路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_004/iptv_hd_abr_v1.mpd$LR•IPV4•97『线路56』 +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•97『线路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_005/iptv_hd_abr_v1.mpd$LR•IPV4•97『线路57』 +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•97『线路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_006/iptv_hd_abr_v1.mpd$LR•IPV4•97『线路58』 +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•97『线路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_007/iptv_hd_abr_v1.mpd$LR•IPV4•97『线路59』 +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•97『线路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_008/iptv_hd_abr_v1.mpd$LR•IPV4•97『线路60』 +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•97『线路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_009/iptv_hd_abr_v1.mpd$LR•IPV4•97『线路61』 +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•97『线路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_010/iptv_hd_abr_v1.mpd$LR•IPV4•97『线路62』 +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•97『线路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_011/iptv_hd_abr_v1.mpd$LR•IPV4•97『线路63』 +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•97『线路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_012/iptv_hd_abr_v1.mpd$LR•IPV4•97『线路64』 +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•97『线路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_013/iptv_hd_abr_v1.mpd$LR•IPV4•97『线路65』 +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•97『线路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_014/iptv_hd_abr_v1.mpd$LR•IPV4•97『线路66』 +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•97『线路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_015/iptv_hd_abr_v1.mpd$LR•IPV4•97『线路67』 +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•97『线路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_016/iptv_hd_abr_v1.mpd$LR•IPV4•97『线路68』 +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•97『线路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_017/iptv_hd_abr_v1.mpd$LR•IPV4•97『线路69』 +https://jmp2.uk/plu-60dafb9a0df1ba000758d37b.m3u8$LR•IPV4•97『线路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_018/iptv_hd_abr_v1.mpd$LR•IPV4•97『线路70』 +https://jmp2.uk/plu-62e7fa5ab5062e0007dcf97d.m3u8$LR•IPV4•97『线路70』 #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•97『线路71』 +https://amg00793-amg00793c5-xumo-us-2664.playouts.now.amagi.tv/bbcstudios-bbctopgear8min-all/playlist.m3u8$LR•IPV4•97『线路71』 #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•97『线路72』 +https://amg00793-amg00793c5-firetv-us-4068.playouts.now.amagi.tv/playlist.m3u8$LR•IPV4•97『线路72』 #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•97『线路73』 +https://amg00793-amg00793c49-rakuten-fi-5848.playouts.now.amagi.tv/playlist.m3u8$LR•IPV4•97『线路73』 #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•97『线路74』 +https://amg00793-amg00793c45-rakuten-fr-5539.playouts.now.amagi.tv/playlist.m3u8$LR•IPV4•97『线路74』 #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•97『线路75』 +https://amg00793-amg00793c44-rakuten-de-5538.playouts.now.amagi.tv/playlist.m3u8$LR•IPV4•97『线路75』 #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•97『线路76』 +https://amg00793-amg00793c43-rakuten-it-5537.playouts.now.amagi.tv/playlist.m3u8$LR•IPV4•97『线路76』 #EXTINF:-1 tvg-id="BBC" tvg-name="BBC" group-title="港澳台",BBC -https://jmp2.uk/plu-60dafb9a0df1ba000758d37b.m3u8$LR•IPV4•97『线路77』 +https://dmr1h4skdal9h.cloudfront.net/playlist.m3u8$LR•IPV4•97『线路77』 #EXTINF:-1 tvg-id="BBC" tvg-name="BBC" group-title="港澳台",BBC -https://jmp2.uk/plu-62e7fa5ab5062e0007dcf97d.m3u8$LR•IPV4•97『线路78』 +https://bbc-classicdrwho-1-us.roku.wurl.tv/playlist.m3u8$LR•IPV4•97『线路78』 #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•97『线路79』 +https://amg00793-amg00793c40-rakuten-es-5444.playouts.now.amagi.tv/playlist.m3u8$LR•IPV4•97『线路79』 #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•97『线路80』 +https://d11r33s5i066xh.cloudfront.net/playlist.m3u8$LR•IPV4•97『线路80』 #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•97『线路81』 +https://cdn4.skygo.mn/live/disk1/BBC_lifestyle/HLSv3-FTA/BBC_lifestyle.m3u8$LR•IPV4•97『线路81』 #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•97『线路82』 +https://jmp2.uk/plu-60e4519e6873180007d3cddb.m3u8$LR•IPV4•97『线路82』 #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•97『线路83』 +https://amg00793-amg00793c6-xumo-us-2669.playouts.now.amagi.tv/BBCStudios-BBCEarthA-hls/playlist.m3u8$LR•IPV4•97『线路83』 #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•97『线路84』 +http://185.102.171.218/BBCEarth/index.m3u8$LR•IPV4•97『线路84』 #EXTINF:-1 tvg-id="BBC" tvg-name="BBC" group-title="港澳台",BBC -https://dmr1h4skdal9h.cloudfront.net/playlist.m3u8$LR•IPV4•97『线路85』 +https://vs-cmaf-pushb-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:bbc_parliament/iptv_hd_abr_v1.mpd$LR•IPV4•97『线路85』 #EXTINF:-1 tvg-id="BBC" tvg-name="BBC" group-title="港澳台",BBC -https://bbc-classicdrwho-1-us.roku.wurl.tv/playlist.m3u8$LR•IPV4•97『线路86』 +https://d1e9r0b71zfwk7.cloudfront.net/playlist.m3u8$LR•IPV4•97『线路86』 #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•97『线路87』 +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•97『线路87』 #EXTINF:-1 tvg-id="BBC" tvg-name="BBC" group-title="港澳台",BBC -https://d11r33s5i066xh.cloudfront.net/playlist.m3u8$LR•IPV4•97『线路88』 +http://193.46.58.239:8080/CbeebiesHD/index.m3u8$LR•IPV4•97『线路88』 #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•97『线路89』 +http://41.205.77.102/BBC-THREE/index.m3u8$LR•IPV4•97『线路89』 #EXTINF:-1 tvg-id="BBC" tvg-name="BBC" group-title="港澳台",BBC -https://jmp2.uk/plu-60e4519e6873180007d3cddb.m3u8$LR•IPV4•97『线路90』 +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•97『线路90』 #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•97『线路91』 +https://aegis-cloudfront-1.tubi.video/bb1fc6ad-9948-42ea-aaf3-20acfcdeecac/playlist.m3u8$LR•IPV4•97『线路91』 #EXTINF:-1 tvg-id="BBC" tvg-name="BBC" group-title="港澳台",BBC -http://185.102.171.218/BBCEarth/index.m3u8$LR•IPV4•97『线路92』 +http://free.cnlive.club/channel/356e7ac6/index.m3u8?q=1752629214236$LR•IPV4•97『线路92』 #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•97『线路93』 +http://free.cnlive.club/channel/359a630b/index.m3u8?q=1752629214236$LR•IPV4•97『线路93』 #EXTINF:-1 tvg-id="BBC" tvg-name="BBC" group-title="港澳台",BBC -https://d1e9r0b71zfwk7.cloudfront.net/playlist.m3u8$LR•IPV4•97『线路94』 +p3p://167.114.175.6:55331/64026f590000e9663abc652f25176282$LR•IPV4•97『线路94』 #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•97『线路95』 +p3p://167.114.175.6:55331/6444eb2e000921503e6ecfe873cd10b1$LR•IPV4•97『线路95』 #EXTINF:-1 tvg-id="BBC" tvg-name="BBC" group-title="港澳台",BBC -http://193.46.58.239:8080/CbeebiesHD/index.m3u8$LR•IPV4•97『线路96』 +http://125.227.210.55:8165/VideoInput/play.ts$LR•IPV4•97『线路96』 #EXTINF:-1 tvg-id="BBC" tvg-name="BBC" group-title="港澳台",BBC -http://41.205.77.102/BBC-THREE/index.m3u8$LR•IPV4•97『线路97』 +https://d2vnbkvjbims7j.cloudfront.net/containerA/LTN/playlist.m3u8$LR•IPV4•97『线路97』 #EXTINF:-1 tvg-id="CNA" tvg-name="CNA" group-title="港澳台",CNA -https://d2e1asnsl7br7b.cloudfront.net/7782e205e72f43aeb4a48ec97f66ebbe/index_5.m3u8$LR•IPV4•6『线路1』 +https://live1.mediadesk.al/cnatvlive.m3u8$LR•IPV4•6『线路1』 #EXTINF:-1 tvg-id="CNA" tvg-name="CNA" group-title="港澳台",CNA -http://d2e1asnsl7br7b.cloudfront.net/7782e205e72f43aeb4a48ec97f66ebbe/index_5.m3u8?zshijd$LR•IPV4•6『线路2』 +https://d2e1asnsl7br7b.cloudfront.net/7782e205e72f43aeb4a48ec97f66ebbe/index.m3u8$LR•IPV4•6『线路2』 #EXTINF:-1 tvg-id="CNA" tvg-name="CNA" group-title="港澳台",CNA -https://live1.mediadesk.al/cnatvlive.m3u8$LR•IPV4•6『线路3』 +https://live.creacast.com/cna/stream/playlist.m3u8$LR•IPV4•6『线路3』 #EXTINF:-1 tvg-id="CNA" tvg-name="CNA" group-title="港澳台",CNA -https://d2e1asnsl7br7b.cloudfront.net/7782e205e72f43aeb4a48ec97f66ebbe/index.m3u8$LR•IPV4•6『线路4』 +https://amg01082-cna-amg01082c1-rlaxx-us-11304.playouts.now.amagi.tv/playlist.m3u8$LR•IPV4•6『线路4』 #EXTINF:-1 tvg-id="CNA" tvg-name="CNA" group-title="港澳台",CNA -https://live.creacast.com/cna/stream/playlist.m3u8$LR•IPV4•6『线路5』 +https://d2e1asnsl7br7b.cloudfront.net/7782e205e72f43aeb4a48ec97f66ebbe/index_5.m3u8$LR•IPV4•6『线路5』 #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『线路6』 +http://d2e1asnsl7br7b.cloudfront.net/7782e205e72f43aeb4a48ec97f66ebbe/index_5.m3u8?zshijd$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•11『线路1』 +http://88.212.15.19/live/test_cnn_pirma_news/playlist.m3u8$LR•IPV4•11『线路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•11『线路2』 +https://jmp2.uk/plu-66c45c274f25dd00092739ee.m3u8$LR•IPV4•11『线路2』 #EXTINF:-1 tvg-id="CNN" tvg-name="CNN" group-title="港澳台",CNN -https://jmp2.uk/plu-66c45c274f25dd00092739ee.m3u8$LR•IPV4•11『线路3』 +https://jmp2.uk/plu-5421f71da6af422839419cb3.m3u8$LR•IPV4•11『线路3』 #EXTINF:-1 tvg-id="CNN" tvg-name="CNN" group-title="港澳台",CNN -https://jmp2.uk/plu-5421f71da6af422839419cb3.m3u8$LR•IPV4•11『线路4』 +https://jmp2.uk/plu-66337e365a402e00087eccaf.m3u8$LR•IPV4•11『线路4』 #EXTINF:-1 tvg-id="CNN" tvg-name="CNN" group-title="港澳台",CNN -https://jmp2.uk/plu-66337e365a402e00087eccaf.m3u8$LR•IPV4•11『线路5』 +https://jmp2.uk/plu-66c45c0de7f5e80008b82005.m3u8$LR•IPV4•11『线路5』 #EXTINF:-1 tvg-id="CNN" tvg-name="CNN" group-title="港澳台",CNN -https://jmp2.uk/plu-66c45c0de7f5e80008b82005.m3u8$LR•IPV4•11『线路6』 +https://jmp2.uk/plu-66c45b36a72e7b0008a2b291.m3u8$LR•IPV4•11『线路6』 #EXTINF:-1 tvg-id="CNN" tvg-name="CNN" group-title="港澳台",CNN -https://jmp2.uk/plu-66c45b36a72e7b0008a2b291.m3u8$LR•IPV4•11『线路7』 +https://jmp2.uk/plu-66c45ba803e3b20008d8c294.m3u8$LR•IPV4•11『线路7』 #EXTINF:-1 tvg-id="CNN" tvg-name="CNN" group-title="港澳台",CNN -https://jmp2.uk/plu-66c45ba803e3b20008d8c294.m3u8$LR•IPV4•11『线路8』 +https://jmp2.uk/plu-66dff9d46ad04d0008fda4de.m3u8$LR•IPV4•11『线路8』 #EXTINF:-1 tvg-id="CNN" tvg-name="CNN" group-title="港澳台",CNN -https://jmp2.uk/plu-66dff9d46ad04d0008fda4de.m3u8$LR•IPV4•11『线路9』 +https://jmp2.uk/plu-673248f9030a2c0008033af8.m3u8$LR•IPV4•11『线路9』 #EXTINF:-1 tvg-id="CNN" tvg-name="CNN" group-title="港澳台",CNN -https://jmp2.uk/plu-673248f9030a2c0008033af8.m3u8$LR•IPV4•11『线路10』 +https://jmp2.uk/plu-66e0b4536ad04d0008fff4b2.m3u8$LR•IPV4•11『线路10』 #EXTINF:-1 tvg-id="CNN" tvg-name="CNN" group-title="港澳台",CNN -https://jmp2.uk/plu-66e0b4536ad04d0008fff4b2.m3u8$LR•IPV4•11『线路11』 +https://ds2c506obo7m8.cloudfront.net/v1/master/3722c60a815c199d9c0ef36c5b73da68a62b09d1/cc-7zjq3tdqasbg8/index.m3u8$LR•IPV4•11『线路11』 #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『线路1』 +https://d2ny9lo79ujali.cloudfront.net/CBC_News_International.m3u8$LR•IPV4•8『线路1』 #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『线路2』 +https://jmp2.uk/plu-6536725167bd1a00084481bc.m3u8$LR•IPV4•8『线路2』 #EXTINF:-1 tvg-id="CBC News" tvg-name="CBC News" group-title="港澳台",CBC News -https://jmp2.uk/plu-6536725167bd1a00084481bc.m3u8$LR•IPV4•8『线路3』 +https://amagi-streams.akamaized.net/hls/live/2110960/cbcnewsbc/master.m3u8$LR•IPV4•8『线路3』 #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『线路4』 +https://jmp2.uk/plu-66a8f01914a2bb00084dd86c.m3u8$LR•IPV4•8『线路4』 #EXTINF:-1 tvg-id="CBC News" tvg-name="CBC News" group-title="港澳台",CBC News -https://jmp2.uk/plu-66a8f01914a2bb00084dd86c.m3u8$LR•IPV4•8『线路5』 +https://amagi-streams.akamaized.net/hls/live/2110962/cbcexplore/master.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/2110962/cbcexplore/master.m3u8$LR•IPV4•8『线路6』 +https://amagi-streams.akamaized.net/hls/live/2110961/cbctoronto/master.m3u8$LR•IPV4•8『线路6』 #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『线路7』 +https://jmp2.uk/plu-6536721dbfbaec00088687c0.m3u8$LR•IPV4•8『线路7』 #EXTINF:-1 tvg-id="CBC News" tvg-name="CBC News" group-title="港澳台",CBC News -https://jmp2.uk/plu-6536721dbfbaec00088687c0.m3u8$LR•IPV4•8『线路8』 +https://dbrb49pjoymg4.cloudfront.net/v1/master/3fec3e5cac39a52b2132f9c66c83dae043dc17d4/prod_default_xumo-ams-aws/master.m3u8?ads.xumo_channelId=99991276$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•11『线路1』 +http://41.205.77.102/SKYNEWS/index.m3u8$LR•IPV4•11『线路1』 #EXTINF:-1 tvg-id="Sky News" tvg-name="Sky News" group-title="港澳台",Sky News -http://41.205.77.102/SKYNEWS/index.m3u8$LR•IPV4•11『线路2』 +https://live-stream.skynewsarabia.com/c-horizontal-channel/horizontal-stream/index.m3u8$LR•IPV4•11『线路2』 #EXTINF:-1 tvg-id="Sky News" tvg-name="Sky News" group-title="港澳台",Sky News -https://live-stream.skynewsarabia.com/c-horizontal-channel/horizontal-stream/index.m3u8$LR•IPV4•11『线路3』 +https://stream.skynewsarabia.com/ott/ott.m3u8$LR•IPV4•11『线路3』 #EXTINF:-1 tvg-id="Sky News" tvg-name="Sky News" group-title="港澳台",Sky News -https://stream.skynewsarabia.com/ott/ott.m3u8$LR•IPV4•11『线路4』 +https://stream.skynewsarabia.com/vertical/vertical.m3u8$LR•IPV4•11『线路4』 #EXTINF:-1 tvg-id="Sky News" tvg-name="Sky News" group-title="港澳台",Sky News -https://stream.skynewsarabia.com/vertical/vertical.m3u8$LR•IPV4•11『线路5』 +https://live-stream.skynewsarabia.com/c-vertical-channel/vertical-stream/index.m3u8$LR•IPV4•11『线路5』 #EXTINF:-1 tvg-id="Sky News" tvg-name="Sky News" group-title="港澳台",Sky News -https://live-stream.skynewsarabia.com/c-vertical-channel/vertical-stream/index.m3u8$LR•IPV4•11『线路6』 +https://skynewsau-live.akamaized.net/hls/live/2002689/skynewsau-extra1/master.m3u8$LR•IPV4•11『线路6』 #EXTINF:-1 tvg-id="Sky News" tvg-name="Sky News" group-title="港澳台",Sky News -https://skynewsau-live.akamaized.net/hls/live/2002689/skynewsau-extra1/master.m3u8$LR•IPV4•11『线路7』 +https://skynewsau-live.akamaized.net/hls/live/2002690/skynewsau-extra2/master.m3u8$LR•IPV4•11『线路7』 #EXTINF:-1 tvg-id="Sky News" tvg-name="Sky News" group-title="港澳台",Sky News -https://skynewsau-live.akamaized.net/hls/live/2002690/skynewsau-extra2/master.m3u8$LR•IPV4•11『线路8』 +https://skynewsau-live.akamaized.net/hls/live/2002691/skynewsau-extra3/master.m3u8$LR•IPV4•11『线路8』 #EXTINF:-1 tvg-id="Sky News" tvg-name="Sky News" group-title="港澳台",Sky News -https://skynewsau-live.akamaized.net/hls/live/2002691/skynewsau-extra3/master.m3u8$LR•IPV4•11『线路9』 +https://lbgo.bozztv.com/ssh101/ssh101/skynews/playlist.m3u8$LR•IPV4•11『线路9』 #EXTINF:-1 tvg-id="Sky News" tvg-name="Sky News" group-title="港澳台",Sky News -https://lbgo.bozztv.com/ssh101/ssh101/skynews/playlist.m3u8$LR•IPV4•11『线路10』 +https://distro001-gb-hls1-prd.delivery.skycdp.com/easel_cdn/ngrp:weather_loop.stream_all/playlist.m3u8$LR•IPV4•11『线路10』 #EXTINF:-1 tvg-id="Sky News" tvg-name="Sky News" group-title="港澳台",Sky News -https://distro001-gb-hls1-prd.delivery.skycdp.com/easel_cdn/ngrp:weather_loop.stream_all/playlist.m3u8$LR•IPV4•11『线路11』 +https://d39chvnxm26pgp.cloudfront.net/v1/master/72588bff830dec7b26d7cbbf5f3c24928aec5c03/cc-sthen6ms4vxgv-stage/WNSFO/ABR.m3u8$LR•IPV4•11『线路11』 #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•8『线路1』 +https://live-hls-apps-aja-fa.getaj.net/AJA/01.m3u8$LR•IPV4•8『线路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•8『线路2』 +https://live-hls-web-aja2-gcp.thehlive.com/AJA2/index.m3u8$LR•IPV4•8『线路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•8『线路3』 +https://live-hls-apps-aje-fa.getaj.net/AJE/index.m3u8$LR•IPV4•8『线路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•8『线路4』 +https://live-hls-apps-ajm-fa.getaj.net/AJM/index.m3u8$LR•IPV4•8『线路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•8『线路5』 +https://live-hls-apps-ajm24-fa.getaj.net/AJM24/index.m3u8$LR•IPV4•8『线路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•8『线路6』 +https://live-hls-apps-ajm2-fa.getaj.net/AJM2/index.m3u8$LR•IPV4•8『线路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•8『线路7』 +https://live-hls-apps-ajd-fa.getaj.net/AJD/index.m3u8$LR•IPV4•8『线路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•8『线路8』 +https://live-hls-aje-ak.getaj.net/AJE/01.m3u8$LR•IPV4•8『线路8』 #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』 +http://amdlive-ch01.ctnd.com.edgesuite.net/arirang_3ch/smil:arirang_3ch.smil/playlist.m3u8$LR•IPV4•5『线路1』 #EXTINF:-1 tvg-id="Arirang" tvg-name="Arirang" group-title="港澳台",Arirang -http://amdlive-ch01.ctnd.com.edgesuite.net/arirang_3ch/smil:arirang_3ch.smil/playlist.m3u8$LR•IPV4•5『线路2』 +https://amdlive-ch02-ctnd-com.akamaized.net/arirang_2ch/smil:arirang_2ch.smil/playlist.m3u8$LR•IPV4•5『线路2』 #EXTINF:-1 tvg-id="Arirang" tvg-name="Arirang" group-title="港澳台",Arirang -https://amdlive-ch02-ctnd-com.akamaized.net/arirang_2ch/smil:arirang_2ch.smil/playlist.m3u8$LR•IPV4•5『线路3』 +http://amdlive-ch01.ctnd.com.edgesuite.net/arirang_1ch/smil:arirang_1ch.smil/playlist.m3u8$LR•IPV4•5『线路3』 #EXTINF:-1 tvg-id="Arirang" tvg-name="Arirang" group-title="港澳台",Arirang -http://amdlive-ch01.ctnd.com.edgesuite.net/arirang_1ch/smil:arirang_1ch.smil/playlist.m3u8$LR•IPV4•5『线路4』 +http://45.162.64.114/ARIRANG/index.m3u8$LR•IPV4•5『线路4』 #EXTINF:-1 tvg-id="Arirang" tvg-name="Arirang" group-title="港澳台",Arirang -http://45.162.64.114/ARIRANG/index.m3u8$LR•IPV4•5『线路5』 +https://amdlive-ch01-ctnd-com.akamaized.net/arirang_1ch/smil:arirang_1ch.smil/chunklist_b3256000_sleng.m3u8$LR•IPV4•5『线路5』 #EXTINF:-1 tvg-id="TRT World" tvg-name="TRT World" group-title="港澳台",TRT World -https://tv-trtworld.medya.trt.com.tr/master_1080.m3u8$LR•IPV4•3『线路1』 +https://tv-trtworld.medya.trt.com.tr/master.m3u8$LR•IPV4•3『线路1』 #EXTINF:-1 tvg-id="TRT World" tvg-name="TRT World" group-title="港澳台",TRT World -https://tv-trtworld.medya.trt.com.tr/master.m3u8$LR•IPV4•3『线路2』 +https://dash2.antik.sk/live/test_trt_world_atktv/playlist.m3u8$LR•IPV4•3『线路2』 #EXTINF:-1 tvg-id="TRT World" tvg-name="TRT World" group-title="港澳台",TRT World -https://dash2.antik.sk/live/test_trt_world_atktv/playlist.m3u8$LR•IPV4•3『线路3』 +https://tv-trtworld.medya.trt.com.tr/master_1080.m3u8$LR•IPV4•3『线路3』 #EXTINF:-1 tvg-id="Bloomberg Originals" tvg-name="Bloomberg Originals" group-title="港澳台",Bloomberg Originals https://e96a7526.wurl.com/master/f36d25e7e52f1ba8d7e56eb859c636563214f541/UmFrdXRlblRWLWV1X0Jsb29tYmVyZ09yaWdpbmFsc19ITFM/playlist.m3u8$LR•IPV4•3『线路1』 #EXTINF:-1 tvg-id="Bloomberg Originals" tvg-name="Bloomberg Originals" group-title="港澳台",Bloomberg Originals @@ -7420,61 +7436,61 @@ https://86fdc85a.wurl.com/master/f36d25e7e52f1ba8d7e56eb859c636563214f541/TEctZ2 #EXTINF:-1 tvg-id="Bloomberg Originals" tvg-name="Bloomberg Originals" group-title="港澳台",Bloomberg Originals https://bloomberg.com/media-manifest/streams/qt.m3u8$LR•IPV4•3『线路3』 #EXTINF:-1 tvg-id="Fashion TV" tvg-name="Fashion TV" group-title="港澳台",Fashion TV -http://free.cnlive.club/channel/n7852a99f/index.m3u8?q=1752629214236$LR•IPV4•2『线路1』 +https://cdn2.invivo.bg/Codefashion_5500/index.m3u8$LR•IPV4•2『线路1』 #EXTINF:-1 tvg-id="Fashion TV" tvg-name="Fashion TV" group-title="港澳台",Fashion TV -https://cdn2.invivo.bg/Codefashion_5500/index.m3u8$LR•IPV4•2『线路2』 +http://free.cnlive.club/channel/n7852a99f/index.m3u8?q=1752629214236$LR•IPV4•2『线路2』 #EXTINF:-1 tvg-id="SKY" tvg-name="SKY" group-title="港澳台",SKY -http://s.rocketdns.info:8080/live/monstercable/Dq6jjknxCr/2188.ts$LR•IPV4•26『线路1』 +https://cdn5.smart-tv-data.com/bluesky/bluesky-live/playlist.m3u8$LR•IPV4•26『线路1』 #EXTINF:-1 tvg-id="SKY" tvg-name="SKY" group-title="港澳台",SKY -http://s.rocketdns.info:8080/live/monstercable/Dq6jjknxCr/2179.ts$LR•IPV4•26『线路2』 +http://80.194.62.172:50002/stream/channelid/1848745953$LR•IPV4•26『线路2』 #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』 +https://primetv-prod.akamaized.net/v1/prime-freeview-aes128.m3u8$LR•IPV4•26『线路3』 #EXTINF:-1 tvg-id="SKY" tvg-name="SKY" group-title="港澳台",SKY -http://nocable.cc:8080//OURTV/OURTV@4806/35241$LR•IPV4•26『线路4』 +https://linear-p.media.skyone.co.nz/primeplus1.clear.m3u8$LR•IPV4•26『线路4』 #EXTINF:-1 tvg-id="SKY" tvg-name="SKY" group-title="港澳台",SKY -http://nocable.cc:8080//OURTV/OURTV@4806/35244$LR•IPV4•26『线路5』 +https://eu.live.skyfolk.mk/live.m3u8$LR•IPV4•26『线路5』 #EXTINF:-1 tvg-id="SKY" tvg-name="SKY" group-title="港澳台",SKY -http://ua-iptv.com:8080//zerubassman@yahoo.com/2MR879Z9PL/1001373$LR•IPV4•26『线路6』 +https://636ffd31f0e12.streamlock.net/RacingStream1/RacingStream1/playlist.m3u8$LR•IPV4•26『线路6』 #EXTINF:-1 tvg-id="SKY" tvg-name="SKY" group-title="港澳台",SKY -http://nocable.cc:8080//OURTV/OURTV@4806/35240$LR•IPV4•26『线路7』 +https://636ffd31f0e12.streamlock.net/RacingStream2/RacingStream2/playlist.m3u8$LR•IPV4•26『线路7』 #EXTINF:-1 tvg-id="SKY" tvg-name="SKY" group-title="港澳台",SKY -http://nocable.cc:8080//OURTV/OURTV@4806/137720$LR•IPV4•26『线路8』 +https://skylivetab-new.akamaized.net/hls/live/2038782/stcsd/index.m3u8$LR•IPV4•26『线路8』 #EXTINF:-1 tvg-id="SKY" tvg-name="SKY" group-title="港澳台",SKY -http://ua-iptv.com:8080//zerubassman@yahoo.com/2MR879Z9PL/1001376$LR•IPV4•26『线路9』 +http://s.rocketdns.info:8080/live/monstercable/Dq6jjknxCr/2188.ts$LR•IPV4•26『线路9』 #EXTINF:-1 tvg-id="SKY" tvg-name="SKY" group-title="港澳台",SKY -http://ua-iptv.com:8080//zerubassman@yahoo.com/2MR879Z9PL/1001378$LR•IPV4•26『线路10』 +http://s.rocketdns.info:8080/live/monstercable/Dq6jjknxCr/2179.ts$LR•IPV4•26『线路10』 #EXTINF:-1 tvg-id="SKY" tvg-name="SKY" group-title="港澳台",SKY -http://ua-iptv.com:8080//zerubassman@yahoo.com/2MR879Z9PL/1001379$LR•IPV4•26『线路11』 +http://s.rocketdns.info:8080/live/monstercable/Dq6jjknxCr/2182.ts$LR•IPV4•26『线路11』 #EXTINF:-1 tvg-id="SKY" tvg-name="SKY" group-title="港澳台",SKY -http://nocable.cc:8080//OURTV/OURTV@4806/53705$LR•IPV4•26『线路12』 +http://nocable.cc:8080//OURTV/OURTV@4806/35241$LR•IPV4•26『线路12』 #EXTINF:-1 tvg-id="SKY" tvg-name="SKY" group-title="港澳台",SKY -http://nocable.cc:8080//OURTV/OURTV@4806/35238$LR•IPV4•26『线路13』 +http://nocable.cc:8080//OURTV/OURTV@4806/35244$LR•IPV4•26『线路13』 #EXTINF:-1 tvg-id="SKY" tvg-name="SKY" group-title="港澳台",SKY -http://nocable.cc:8080//OURTV/OURTV@4806/53663$LR•IPV4•26『线路14』 +http://ua-iptv.com:8080//zerubassman@yahoo.com/2MR879Z9PL/1001373$LR•IPV4•26『线路14』 #EXTINF:-1 tvg-id="SKY" tvg-name="SKY" group-title="港澳台",SKY -http://nocable.cc:8080//OURTV/OURTV@4806/45940$LR•IPV4•26『线路15』 +http://nocable.cc:8080//OURTV/OURTV@4806/35240$LR•IPV4•26『线路15』 #EXTINF:-1 tvg-id="SKY" tvg-name="SKY" group-title="港澳台",SKY -http://vocotv.pro//revol/revol/276918$LR•IPV4•26『线路16』 +http://nocable.cc:8080//OURTV/OURTV@4806/137720$LR•IPV4•26『线路16』 #EXTINF:-1 tvg-id="SKY" tvg-name="SKY" group-title="港澳台",SKY -http://vocotv.pro//revol/revol/276924$LR•IPV4•26『线路17』 +http://ua-iptv.com:8080//zerubassman@yahoo.com/2MR879Z9PL/1001376$LR•IPV4•26『线路17』 #EXTINF:-1 tvg-id="SKY" tvg-name="SKY" group-title="港澳台",SKY -http://vocotv.pro//revol/revol/276906$LR•IPV4•26『线路18』 +http://ua-iptv.com:8080//zerubassman@yahoo.com/2MR879Z9PL/1001378$LR•IPV4•26『线路18』 #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『线路19』 +http://ua-iptv.com:8080//zerubassman@yahoo.com/2MR879Z9PL/1001379$LR•IPV4•26『线路19』 #EXTINF:-1 tvg-id="SKY" tvg-name="SKY" group-title="港澳台",SKY -http://80.194.62.172:50002/stream/channelid/1848745953$LR•IPV4•26『线路20』 +http://nocable.cc:8080//OURTV/OURTV@4806/53705$LR•IPV4•26『线路20』 #EXTINF:-1 tvg-id="SKY" tvg-name="SKY" group-title="港澳台",SKY -https://primetv-prod.akamaized.net/v1/prime-freeview-aes128.m3u8$LR•IPV4•26『线路21』 +http://nocable.cc:8080//OURTV/OURTV@4806/35238$LR•IPV4•26『线路21』 #EXTINF:-1 tvg-id="SKY" tvg-name="SKY" group-title="港澳台",SKY -https://linear-p.media.skyone.co.nz/primeplus1.clear.m3u8$LR•IPV4•26『线路22』 +http://nocable.cc:8080//OURTV/OURTV@4806/53663$LR•IPV4•26『线路22』 #EXTINF:-1 tvg-id="SKY" tvg-name="SKY" group-title="港澳台",SKY -https://eu.live.skyfolk.mk/live.m3u8$LR•IPV4•26『线路23』 +http://nocable.cc:8080//OURTV/OURTV@4806/45940$LR•IPV4•26『线路23』 #EXTINF:-1 tvg-id="SKY" tvg-name="SKY" group-title="港澳台",SKY -https://636ffd31f0e12.streamlock.net/RacingStream1/RacingStream1/playlist.m3u8$LR•IPV4•26『线路24』 +http://vocotv.pro//revol/revol/276918$LR•IPV4•26『线路24』 #EXTINF:-1 tvg-id="SKY" tvg-name="SKY" group-title="港澳台",SKY -https://636ffd31f0e12.streamlock.net/RacingStream2/RacingStream2/playlist.m3u8$LR•IPV4•26『线路25』 +http://vocotv.pro//revol/revol/276924$LR•IPV4•26『线路25』 #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『线路26』 +http://vocotv.pro//revol/revol/276906$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+ @@ -7496,27 +7512,27 @@ https://d2w9q46ikgrcwx.cloudfront.net/v1/master/3722c60a815c199d9c0ef36c5b73da68 #EXTINF:-1 tvg-id="FIFA+" tvg-name="FIFA+" group-title="港澳台",FIFA+ https://cffda8ff.wurl.com/master/f36d25e7e52f1ba8d7e56eb859c636563214f541/U2Ftc3VuZy1nYl9GSUZBUGx1c3dvbWVuX0hMUw/playlist.m3u8$LR•IPV4•9『线路9』 #EXTINF:-1 tvg-id="Newsmax" tvg-name="Newsmax" group-title="港澳台",Newsmax -https://nmx1ota.akamaized.net/hls/live/2107010/Live_1/3.m3u8$LR•IPV4•8『线路1』 +https://2-fss-2.streamhoster.com/pl_120/206858-4404556-1/playlist.m3u8$LR•IPV4•8『线路1』 #EXTINF:-1 tvg-id="Newsmax" tvg-name="Newsmax" group-title="港澳台",Newsmax -http://nmxlive.akamaized.net/hls/live/529965/Live_1/index.m3u8$LR•IPV4•8『线路2』 +https://amg00217-newsmax-newsmax-zeasn-022k9.amagi.tv/playlist.m3u8$LR•IPV4•8『线路2』 #EXTINF:-1 tvg-id="Newsmax" tvg-name="Newsmax" group-title="港澳台",Newsmax -https://nmxlive.akamaized.net/hls/live/529965/Live_1/index.m3u8$LR•IPV4•8『线路3』 +https://newsmaxadria.mts-si.tv/newsmaxadria/index.m3u8$LR•IPV4•8『线路3』 #EXTINF:-1 tvg-id="Newsmax" tvg-name="Newsmax" group-title="港澳台",Newsmax -https://2-fss-2.streamhoster.com/pl_120/206858-4404556-1/playlist.m3u8$LR•IPV4•8『线路4』 +https://n1ottesorkatv.akamaized.net/hls/live/2113795/Live_1/index.m3u8$LR•IPV4•8『线路4』 #EXTINF:-1 tvg-id="Newsmax" tvg-name="Newsmax" group-title="港澳台",Newsmax -https://amg00217-newsmax-newsmax-zeasn-022k9.amagi.tv/playlist.m3u8$LR•IPV4•8『线路5』 +http://40.160.24.53/NEWSMAX/index.m3u8$LR•IPV4•8『线路5』 #EXTINF:-1 tvg-id="Newsmax" tvg-name="Newsmax" group-title="港澳台",Newsmax -https://newsmaxadria.mts-si.tv/newsmaxadria/index.m3u8$LR•IPV4•8『线路6』 +https://nmx1ota.akamaized.net/hls/live/2107010/Live_1/3.m3u8$LR•IPV4•8『线路6』 #EXTINF:-1 tvg-id="Newsmax" tvg-name="Newsmax" group-title="港澳台",Newsmax -https://n1ottesorkatv.akamaized.net/hls/live/2113795/Live_1/index.m3u8$LR•IPV4•8『线路7』 +http://nmxlive.akamaized.net/hls/live/529965/Live_1/index.m3u8$LR•IPV4•8『线路7』 #EXTINF:-1 tvg-id="Newsmax" tvg-name="Newsmax" group-title="港澳台",Newsmax -http://40.160.24.53/NEWSMAX/index.m3u8$LR•IPV4•8『线路8』 +https://nmxlive.akamaized.net/hls/live/529965/Live_1/index.m3u8$LR•IPV4•8『线路8』 #EXTINF:-1 tvg-id="CBN News" tvg-name="CBN News" group-title="港澳台",CBN News https://fastly.live.brightcove.com/6380396819112/us-east-1/734546207001/eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJob3N0IjoiczFpM3ZpLmVncmVzcy50N2M3emwiLCJhY2NvdW50X2lkIjoiNzM0NTQ2MjA3MDAxIiwiZWhuIjoiZmFzdGx5LmxpdmUuYnJpZ2h0Y292ZS5jb20iLCJpc3MiOiJibGl2ZS1wbGF5YmFjay1zb3VyY2UtYXBpIiwic3ViIjoicGF0aG1hcHRva2VuIiwiYXVkIjpbIjczNDU0NjIwNzAwMSJdLCJqdGkiOiI2MzgwMzk2ODE5MTEyIn0.GDYp4IWtzwPkupEWeeOavnioVknO-Ev3UGlHvM1rE6I/playlist-hls.m3u8$LR•IPV4 #EXTINF:-1 tvg-id="GB News" tvg-name="GB News" group-title="港澳台",GB News -https://rakutenaa-lightning-gbnews-rakuten-ccoa9.amagi.tv/playlist/rakutenAA-lightning-gbnews-rakuten/playlist.m3u8$LR•IPV4•2『线路1』 +https://amg01076-lightningintern-gbnewsau-samsungau-et7fz.amagi.tv/playlist/amg01076-lightningintern-gbnewsau-samsungau/playlist.m3u8$LR•IPV4•2『线路1』 #EXTINF:-1 tvg-id="GB News" tvg-name="GB News" group-title="港澳台",GB News -https://amg01076-lightningintern-gbnewsau-samsungau-et7fz.amagi.tv/playlist/amg01076-lightningintern-gbnewsau-samsungau/playlist.m3u8$LR•IPV4•2『线路2』 +https://rakutenaa-lightning-gbnews-rakuten-ccoa9.amagi.tv/playlist/rakutenAA-lightning-gbnews-rakuten/playlist.m3u8$LR•IPV4•2『线路2』 #EXTINF:-1 tvg-id="TBS" tvg-name="TBS" group-title="港澳台",TBS https://cdntv.tbs.seoul.kr/tbs/tbs_tv_web.smil/playlist.m3u8$LR•IPV4 #EXTINF:-1 tvg-id="ION Plus" tvg-name="ION Plus" group-title="港澳台",ION Plus @@ -7532,19 +7548,19 @@ https://aegis-cloudfront-1.tubi.video/3b6afc3b-97f7-4f22-99f4-7bcff60fc39d/playl #EXTINF:-1 tvg-id="ION" tvg-name="ION" group-title="港澳台",ION https://pb-usmbvsgwcg8pc.akamaized.net/Ion_Mystery_US.m3u8$LR•IPV4•5『线路5』 #EXTINF:-1 tvg-id="Love Nature" tvg-name="Love Nature" group-title="港澳台",Love Nature -p3p://167.114.175.6:55331/655fa9280009c6278edfc1176731425f$LR•IPV4•7『线路1』 +https://amg01515-amg01515c17-xumo-us-2489.playouts.now.amagi.tv/bamus-lovenaturespanish-roku/playlist.m3u8$LR•IPV4•7『线路1』 #EXTINF:-1 tvg-id="Love Nature" tvg-name="Love Nature" group-title="港澳台",Love Nature -https://d18dyiwu97wm6q.cloudfront.net/playlist2160p.m3u8$LR•IPV4•7『线路2』 +https://aegis-cloudfront-1.tubi.video/6d6d0f24-8445-4b4c-bdf6-44f9e38beaa4/playlist.m3u8$LR•IPV4•7『线路2』 #EXTINF:-1 tvg-id="Love Nature" tvg-name="Love Nature" group-title="港澳台",Love Nature -http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=1761&tk=f6cc1e0a0e1a$LR•IPV4•7『线路3』 +https://pb-ehs1glsha1juy.akamaized.net/Love_Nature_4K.m3u8$LR•IPV4•7『线路3』 #EXTINF:-1 tvg-id="Love Nature" tvg-name="Love Nature" group-title="港澳台",Love Nature -https://amg01515-amg01515c17-xumo-us-2489.playouts.now.amagi.tv/bamus-lovenaturespanish-roku/playlist.m3u8$LR•IPV4•7『线路4』 +http://185.246.209.113/LOVENATUREHD/index.m3u8$LR•IPV4•7『线路4』 #EXTINF:-1 tvg-id="Love Nature" tvg-name="Love Nature" group-title="港澳台",Love Nature -https://aegis-cloudfront-1.tubi.video/6d6d0f24-8445-4b4c-bdf6-44f9e38beaa4/playlist.m3u8$LR•IPV4•7『线路5』 +p3p://167.114.175.6:55331/655fa9280009c6278edfc1176731425f$LR•IPV4•7『线路5』 #EXTINF:-1 tvg-id="Love Nature" tvg-name="Love Nature" group-title="港澳台",Love Nature -https://pb-ehs1glsha1juy.akamaized.net/Love_Nature_4K.m3u8$LR•IPV4•7『线路6』 +https://d18dyiwu97wm6q.cloudfront.net/playlist2160p.m3u8$LR•IPV4•7『线路6』 #EXTINF:-1 tvg-id="Love Nature" tvg-name="Love Nature" group-title="港澳台",Love Nature -http://185.246.209.113/LOVENATUREHD/index.m3u8$LR•IPV4•7『线路7』 +http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=1761&tk=f6cc1e0a0e1a$LR•IPV4•7『线路7』 #EXTINF:-1 tvg-id="Fight Network" tvg-name="Fight Network" group-title="港澳台",Fight Network https://d12a2vxqkkh1bo.cloudfront.net/hls/main.m3u8$LR•IPV4 #EXTINF:-1 tvg-id="Wild Earth" tvg-name="Wild Earth" group-title="港澳台",Wild Earth @@ -7632,81 +7648,81 @@ https://tastemadees16us-xumo.amagi.tv/playlist.m3u8$LR•IPV4•15『线路14』 #EXTINF:-1 tvg-id="Tastemade" tvg-name="Tastemade" group-title="港澳台",Tastemade https://d6ef3usc6d9cl.cloudfront.net/Tastemade_Travel.m3u8$LR•IPV4•15『线路15』 #EXTINF:-1 tvg-id="MovieSphere" tvg-name="MovieSphere" group-title="港澳台",MovieSphere -https://moviesphereuk-samsunguk.amagi.tv/playlist.m3u8$LR•IPV4•5『线路1』 +https://jmp2.uk/plu-6401d85a49839300087b116c.m3u8$LR•IPV4•5『线路1』 #EXTINF:-1 tvg-id="MovieSphere" tvg-name="MovieSphere" group-title="港澳台",MovieSphere -https://jmp2.uk/plu-6401d85a49839300087b116c.m3u8$LR•IPV4•5『线路2』 +https://amg00353-lionsgatestudio-moviesphere-xumo-zh5u0.amagi.tv/playlist.m3u8$LR•IPV4•5『线路2』 #EXTINF:-1 tvg-id="MovieSphere" tvg-name="MovieSphere" group-title="港澳台",MovieSphere -https://amg00353-lionsgatestudio-moviesphere-xumo-zh5u0.amagi.tv/playlist.m3u8$LR•IPV4•5『线路3』 +https://amg00353-lionsgatefilmsi-moviesphereaus-samsungau-7qzhf.amagi.tv/playlist/amg00353-lionsgatefilmsi-moviesphereaus-samsungau/playlist.m3u8$LR•IPV4•5『线路3』 #EXTINF:-1 tvg-id="MovieSphere" tvg-name="MovieSphere" group-title="港澳台",MovieSphere -https://amg00353-lionsgatefilmsi-moviesphereaus-samsungau-7qzhf.amagi.tv/playlist/amg00353-lionsgatefilmsi-moviesphereaus-samsungau/playlist.m3u8$LR•IPV4•5『线路4』 +https://jmp2.uk/plu-64a3d96f060e830008af6745.m3u8$LR•IPV4•5『线路4』 #EXTINF:-1 tvg-id="MovieSphere" tvg-name="MovieSphere" group-title="港澳台",MovieSphere -https://jmp2.uk/plu-64a3d96f060e830008af6745.m3u8$LR•IPV4•5『线路5』 +https://moviesphereuk-samsunguk.amagi.tv/playlist.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://epg.pw/stream/d2edf469b9079064a283f4b0811cbf6f2597ebbb3d08dcf77036a4b5a791b7cf.m3u8$LR•IPV4•16『线路1』 +https://ciner.daioncdn.net/bloomberght/bloomberght.m3u8$LR•IPV4•16『线路1』 #EXTINF:-1 tvg-id="Bloomberg" tvg-name="Bloomberg" group-title="港澳台",Bloomberg -https://bloomberg-bloombergtv-3-nl.samsung.wurl.tv/playlist.m3u8$LR•IPV4•16『线路2』 +http://23.237.104.106:8080/USA_BLOOMBERG/index.m3u8$LR•IPV4•16『线路2』 #EXTINF:-1 tvg-id="Bloomberg" tvg-name="Bloomberg" group-title="港澳台",Bloomberg -https://bloomberg-bloombergtv-5-eu.plex.wurl.tv/3ea2c48ba0034cc276591c94a5b439c0.m3u8$LR•IPV4•16『线路3』 +https://bloomberg.com/media-manifest/streams/aus.m3u8$LR•IPV4•16『线路3』 #EXTINF:-1 tvg-id="Bloomberg" tvg-name="Bloomberg" group-title="港澳台",Bloomberg -https://liveprodusphoenixeast.akamaized.net/USPhx-HD/Channel-TX-USPhx-AWS-virginia-1/Source-USPhx-16k-1-s6lk2-BP-07-02-81ykIWnsMsg_live.m3u8$LR•IPV4•16『线路4』 +http://213.91.179.28:8000/play/a04m$LR•IPV4•16『线路4』 #EXTINF:-1 tvg-id="Bloomberg" tvg-name="Bloomberg" group-title="港澳台",Bloomberg -https://ciner.daioncdn.net/bloomberght/bloomberght.m3u8$LR•IPV4•16『线路5』 +https://bloomberg.com/media-manifest/streams/eu-event.m3u8$LR•IPV4•16『线路5』 #EXTINF:-1 tvg-id="Bloomberg" tvg-name="Bloomberg" group-title="港澳台",Bloomberg -http://23.237.104.106:8080/USA_BLOOMBERG/index.m3u8$LR•IPV4•16『线路6』 +https://bloomberg.com/media-manifest/streams/eu.m3u8$LR•IPV4•16『线路6』 #EXTINF:-1 tvg-id="Bloomberg" tvg-name="Bloomberg" group-title="港澳台",Bloomberg -https://bloomberg.com/media-manifest/streams/aus.m3u8$LR•IPV4•16『线路7』 +https://cdn4.skygo.mn/live/disk1/BloombergMon/DASH-FTA/BloombergMon.mpd$LR•IPV4•16『线路7』 #EXTINF:-1 tvg-id="Bloomberg" tvg-name="Bloomberg" group-title="港澳台",Bloomberg -http://213.91.179.28:8000/play/a04m$LR•IPV4•16『线路8』 +https://bloomberg.com/media-manifest/streams/us-event.m3u8$LR•IPV4•16『线路8』 #EXTINF:-1 tvg-id="Bloomberg" tvg-name="Bloomberg" group-title="港澳台",Bloomberg -https://bloomberg.com/media-manifest/streams/eu-event.m3u8$LR•IPV4•16『线路9』 +https://bloomberg.com/media-manifest/streams/politics.m3u8$LR•IPV4•16『线路9』 #EXTINF:-1 tvg-id="Bloomberg" tvg-name="Bloomberg" group-title="港澳台",Bloomberg -https://bloomberg.com/media-manifest/streams/eu.m3u8$LR•IPV4•16『线路10』 +https://d8975dc3.wurl.com/master/f36d25e7e52f1ba8d7e56eb859c636563214f541/U2Ftc3VuZy1nYl9CbG9vbWJlcmdUVlBsdXNfSExT/playlist.m3u8$LR•IPV4•16『线路10』 #EXTINF:-1 tvg-id="Bloomberg" tvg-name="Bloomberg" group-title="港澳台",Bloomberg -https://cdn4.skygo.mn/live/disk1/BloombergMon/DASH-FTA/BloombergMon.mpd$LR•IPV4•16『线路11』 +https://86ebec83.wurl.com/master/f36d25e7e52f1ba8d7e56eb859c636563214f541/UmFrdXRlblRWLWV1X0Jsb29tYmVyZ1RWUGx1c19ITFM/playlist.m3u8$LR•IPV4•16『线路11』 #EXTINF:-1 tvg-id="Bloomberg" tvg-name="Bloomberg" group-title="港澳台",Bloomberg -https://bloomberg.com/media-manifest/streams/us-event.m3u8$LR•IPV4•16『线路12』 +https://pe-ak-lp01a-9c9media.akamaized.net/live/News1BNNDigi/p/dash/00000001/1bba52dc66e4c68e/manifest.mpd$LR•IPV4•16『线路12』 #EXTINF:-1 tvg-id="Bloomberg" tvg-name="Bloomberg" group-title="港澳台",Bloomberg -https://bloomberg.com/media-manifest/streams/politics.m3u8$LR•IPV4•16『线路13』 +https://epg.pw/stream/d2edf469b9079064a283f4b0811cbf6f2597ebbb3d08dcf77036a4b5a791b7cf.m3u8$LR•IPV4•16『线路13』 #EXTINF:-1 tvg-id="Bloomberg" tvg-name="Bloomberg" group-title="港澳台",Bloomberg -https://d8975dc3.wurl.com/master/f36d25e7e52f1ba8d7e56eb859c636563214f541/U2Ftc3VuZy1nYl9CbG9vbWJlcmdUVlBsdXNfSExT/playlist.m3u8$LR•IPV4•16『线路14』 +https://bloomberg-bloombergtv-3-nl.samsung.wurl.tv/playlist.m3u8$LR•IPV4•16『线路14』 #EXTINF:-1 tvg-id="Bloomberg" tvg-name="Bloomberg" group-title="港澳台",Bloomberg -https://86ebec83.wurl.com/master/f36d25e7e52f1ba8d7e56eb859c636563214f541/UmFrdXRlblRWLWV1X0Jsb29tYmVyZ1RWUGx1c19ITFM/playlist.m3u8$LR•IPV4•16『线路15』 +https://bloomberg-bloombergtv-5-eu.plex.wurl.tv/3ea2c48ba0034cc276591c94a5b439c0.m3u8$LR•IPV4•16『线路15』 #EXTINF:-1 tvg-id="Bloomberg" tvg-name="Bloomberg" group-title="港澳台",Bloomberg -https://pe-ak-lp01a-9c9media.akamaized.net/live/News1BNNDigi/p/dash/00000001/1bba52dc66e4c68e/manifest.mpd$LR•IPV4•16『线路16』 +https://liveprodusphoenixeast.akamaized.net/USPhx-HD/Channel-TX-USPhx-AWS-virginia-1/Source-USPhx-16k-1-s6lk2-BP-07-02-81ykIWnsMsg_live.m3u8$LR•IPV4•16『线路16』 #EXTINF:-1 tvg-id="CNBC" tvg-name="CNBC" group-title="港澳台",CNBC -http://fl2.moveonjoy.com/CNBC/index.m3u8$LR•IPV4•16『线路1』 +https://cdn4.skygo.mn/live/disk1/CNBC/DASH-FTA/CNBC.mpd$LR•IPV4•16『线路1』 #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『线路2』 +https://jmp2.uk/plu-679a973a97782f0008ff4bb6.m3u8$LR•IPV4•16『线路2』 #EXTINF:-1 tvg-id="CNBC" tvg-name="CNBC" group-title="港澳台",CNBC -https://jmp2.uk/plu-679a973a97782f0008ff4bb6.m3u8$LR•IPV4•16『线路3』 +https://amg14891-amg14891c5-amgplt0020.playout.now3.amagi.tv/playlist.m3u8$LR•IPV4•16『线路3』 #EXTINF:-1 tvg-id="CNBC" tvg-name="CNBC" group-title="港澳台",CNBC -https://amg14891-amg14891c5-amgplt0020.playout.now3.amagi.tv/playlist.m3u8$LR•IPV4•16『线路4』 +http://40.160.24.52/CNBC/index.m3u8$LR•IPV4•16『线路4』 #EXTINF:-1 tvg-id="CNBC" tvg-name="CNBC" group-title="港澳台",CNBC -http://40.160.24.52/CNBC/index.m3u8$LR•IPV4•16『线路5』 +https://cnbc-live.akamaized.net/cnbc/master.m3u8$LR•IPV4•16『线路5』 #EXTINF:-1 tvg-id="CNBC" tvg-name="CNBC" group-title="港澳台",CNBC -https://cnbc-live.akamaized.net/cnbc/master.m3u8$LR•IPV4•16『线路6』 +https://liveh34.vtvprime.vn/hls/CNBC/03.m3u8$LR•IPV4•16『线路6』 #EXTINF:-1 tvg-id="CNBC" tvg-name="CNBC" group-title="港澳台",CNBC -https://liveh34.vtvprime.vn/hls/CNBC/03.m3u8$LR•IPV4•16『线路7』 +https://n18syndication.akamaized.net/bpk-tv/CNBC_Awaaz_NW18_MOB/output01/master.m3u8$LR•IPV4•16『线路7』 #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『线路8』 +https://n18syndication.akamaized.net/bpk-tv/CNBC_Bazaar_NW18_MOB/output01/master.m3u8$LR•IPV4•16『线路8』 #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『线路9』 +https://live.cnbcindonesia.com/livecnbc/smil:cnbctv.smil/master.m3u8$LR•IPV4•16『线路9』 #EXTINF:-1 tvg-id="CNBC" tvg-name="CNBC" group-title="港澳台",CNBC -https://live.cnbcindonesia.com/livecnbc/smil:cnbctv.smil/master.m3u8$LR•IPV4•16『线路10』 +https://n18syndication.akamaized.net/bpk-tv/CNBC_TV18_NW18_MOB/output01/index.m3u8$LR•IPV4•16『线路10』 #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『线路11』 +https://n18syndication.akamaized.net/bpk-tv/CNBC_Tv18_Prime_HD_NW18_MOB/output01/index.m3u8$LR•IPV4•16『线路11』 #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『线路12』 +http://108.181.20.255:27347/livehttpplay?channel_id=23117$LR•IPV4•16『线路12』 #EXTINF:-1 tvg-id="CNBC" tvg-name="CNBC" group-title="港澳台",CNBC -http://108.181.20.255:27347/livehttpplay?channel_id=23117$LR•IPV4•16『线路13』 +https://amg01079-nbcuuk-amg01079c2-samsung-gb-1258.playouts.now.amagi.tv/playlist.m3u8$LR•IPV4•16『线路13』 #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『线路14』 +https://cdn4.skygo.mn/live/disk1/CNBC/HLSv3-FTA/CNBC.m3u8$LR•IPV4•16『线路14』 #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『线路15』 +https://hnpsechtsc.turknet.ercdn.net/xpnvudnlsv/cnbc-e/cnbc-e.m3u8$LR•IPV4•16『线路15』 #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『线路16』 +http://fl2.moveonjoy.com/CNBC/index.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•6『线路1』 #EXTINF:-1 tvg-id="TV8" tvg-name="TV8" group-title="港澳台",TV8 @@ -7766,44 +7782,44 @@ p3p://167.114.175.6:55331/644f81c10003ba2367cad2610d3a2ab5$LR•IPV4•2『线 #EXTINF:-1 tvg-id="三立INEWS" tvg-name="三立INEWS" group-title="YouTube",三立INEWS p3p://167.114.175.6:55331/643a6b71000a47fb156c2a403510409b$LR•IPV4•2『线路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』 +https://abc-news-dmd-streams-1.akamaized.net/out/v1/701126012d044971b3fa89406a440133/index.m3u8$LR•IPV4•15『线路1』 #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『线路2』 +https://pb-0n3n2ej0w8pl9.akamaized.net/ABCNewsLive_Disney.m3u8$LR•IPV4•15『线路2』 #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『线路3』 +https://abcnews-streams.akamaized.net/hls/live/2023560/abcnewshudson1/master.m3u8$LR•IPV4•15『线路3』 #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『线路4』 +https://abcnews-streams.akamaized.net/hls/live/2023561/abcnewshudson2/master.m3u8$LR•IPV4•15『线路4』 #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『线路5』 +https://abcnews-streams.akamaized.net/hls/live/2023562/abcnewshudson3/master.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/2023560/abcnewshudson1/master.m3u8$LR•IPV4•15『线路6』 +https://abcnews-streams.akamaized.net/hls/live/2023563/abcnewshudson4/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/2023561/abcnewshudson2/master.m3u8$LR•IPV4•15『线路7』 +https://abcnews-streams.akamaized.net/hls/live/2023564/abcnewshudson5/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/2023562/abcnewshudson3/master.m3u8$LR•IPV4•15『线路8』 +https://abcnews-streams.akamaized.net/hls/live/2023565/abcnewshudson6/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/2023563/abcnewshudson4/master.m3u8$LR•IPV4•15『线路9』 +https://abcnews-streams.akamaized.net/hls/live/2023566/abcnewshudson7/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/2023564/abcnewshudson5/master.m3u8$LR•IPV4•15『线路10』 +https://abcnews-streams.akamaized.net/hls/live/2023567/abcnewshudson8/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/2023565/abcnewshudson6/master.m3u8$LR•IPV4•15『线路11』 +https://abcnews-streams.akamaized.net/hls/live/2023568/abcnewshudson9/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/2023566/abcnewshudson7/master.m3u8$LR•IPV4•15『线路12』 +https://abcnews-streams.akamaized.net/hls/live/2023569/abcnewshudson10/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/2023567/abcnewshudson8/master.m3u8$LR•IPV4•15『线路13』 +https://d4ybyqrhce41r.cloudfront.net/v1/master/3fec3e5cac39a52b2132f9c66c83dae043dc17d4/prod-xumo-linear-nbcu-hlsv3/master.m3u8?ads.channelId=99991626$LR•IPV4•15『线路13』 #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『线路14』 +https://stream1.freetv.fun/abc-news-australia-1.m3u8$LR•IPV4•15『线路14』 #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『线路15』 +https://stream1.freetv.fun/abc-news-australia-2.ctv$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 https://d1rc86nwwc9fag.cloudfront.net/vglive-sk-293160/master.m3u8$LR•IPV4 #EXTINF:-1 tvg-id="NBC NEWS" tvg-name="NBC NEWS" group-title="YouTube",NBC NEWS -https://livehub-voidnet.onrender.com/cluster/streamcore/us/NBC_REDIS.m3u8$LR•IPV4•3『线路1』 +https://d1si3n1st4nkgb.cloudfront.net/10502/88896001/hls/master.m3u8?ads.xumo_channelId=88896001$LR•IPV4•3『线路1』 #EXTINF:-1 tvg-id="NBC NEWS" tvg-name="NBC NEWS" group-title="YouTube",NBC NEWS -https://d1si3n1st4nkgb.cloudfront.net/10502/88896001/hls/master.m3u8?ads.xumo_channelId=88896001$LR•IPV4•3『线路2』 +http://206.212.244.63/127/index.m3u8$LR•IPV4•3『线路2』 #EXTINF:-1 tvg-id="NBC NEWS" tvg-name="NBC NEWS" group-title="YouTube",NBC NEWS -http://206.212.244.63/127/index.m3u8$LR•IPV4•3『线路3』 +https://livehub-voidnet.onrender.com/cluster/streamcore/us/NBC_REDIS.m3u8$LR•IPV4•3『线路3』 #EXTINF:-1 tvg-id="iHOT爱体育" tvg-name="iHOT爱体育" group-title="IHOT",iHOT爱体育 http://146.56.165.66:7788/TVOD/2000000004000000060/hnbblive/index.m3u8$LR•IPV4 diff --git a/cluntop_tvbox/lib/iptv.txt b/cluntop_tvbox/lib/iptv.txt index 052bea00..1b7c27ff 100755 --- a/cluntop_tvbox/lib/iptv.txt +++ b/cluntop_tvbox/lib/iptv.txt @@ -1,6 +1,6 @@ 4K,#genre# -东方卫视4K,http://bp-resource-dfl.bestv.cn/148/3/video.m3u8$LR•IPV4•2『线路1』 +东方卫视4K,https://bp-resource-dfl.bestv.cn/148/3/video.m3u8$LR•IPV4•2『线路1』 东方卫视4K,http://43.251.226.89:8080/play/926.m3u8$LR•IPV4•2『线路2』 湖南卫视4K,http://8.138.7.223/tv/api.php?id=hnws4k$LR•IPV4•3『线路1』 湖南卫视4K,http://43.251.226.89:8080/play/920.m3u8$LR•IPV4•3『线路2』 @@ -31,12 +31,13 @@ 北京卫视4K,http://8.138.7.223/tv/btime.php?id=bjws4k$LR•IPV4•5『线路3』 北京卫视4K,http://101.35.240.114:88/live.php?id=北京卫视$LR•IPV4•5『线路4』 北京卫视4K,http://106.53.99.30/tv/api.php?id=bjws4k$LR•IPV4•5『线路5』 -CCTV4K,http://101.43.145.141:12002/gaoma/cctv4k.m3u8$LR•IPV4•6『线路1』 -CCTV4K,https://live-play-hls.cctvnews.cctv.com/CCTVChannel/channel_cctv4k_mbd.m3u8?auth_key=1784329200-1-b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c-81ad4aefc95ce528b3da1112f0bc9ff2&yid=b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c$LR•IPV4•6『线路2』 -CCTV4K,https://live-play-hls.cctvnews.cctv.com/CCTVChannel/channel_cctv4k_mbd.m3u8?auth_key=1784322000-1-b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c-aa68fb06c12f53b71a4d170807f32df5&yid=b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c$LR•IPV4•6『线路3』 -CCTV4K,http://198.204.240.250:82/live/cctv4k.m3u8$LR•IPV4•6『线路4』 -CCTV4K,http://fn.tmde.top:35455/nptv/cctv4k.m3u8$LR•IPV4•6『线路5』 -CCTV4K,http://xc.mfykeke.top:35455/nptv/cctv4k.m3u8$LR•IPV4•6『线路6』 +CCTV4K,http://vip1.xinketongxun.fun:8082/tsfile/live/1026_1.m3u8$LR•IPV4•7『线路1』 +CCTV4K,http://101.43.145.141:12002/gaoma/cctv4k.m3u8$LR•IPV4•7『线路2』 +CCTV4K,https://live-play-hls.cctvnews.cctv.com/CCTVChannel/channel_cctv4k_mbd.m3u8?auth_key=1784332800-1-b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c-0240f422767495f3b4be3b54c6f0496a&yid=b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c$LR•IPV4•7『线路3』 +CCTV4K,https://live-play-hls.cctvnews.cctv.com/CCTVChannel/channel_cctv4k_mbd.m3u8?auth_key=1784336400-1-b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c-c68beb1a091dd48540f9056f3e86c7c2&yid=b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c$LR•IPV4•7『线路4』 +CCTV4K,http://198.204.240.250:82/live/cctv4k.m3u8$LR•IPV4•7『线路5』 +CCTV4K,http://fn.tmde.top:35455/nptv/cctv4k.m3u8$LR•IPV4•7『线路6』 +CCTV4K,http://xc.mfykeke.top:35455/nptv/cctv4k.m3u8$LR•IPV4•7『线路7』 8K,#genre# 北京纪实8K,https://gdcucc.v1.mk/gdcucc/brtv8k.m3u8$LR•IPV4•2『线路1』 @@ -76,33 +77,36 @@ CCTV3,http://112.46.105.20:8009/hls/3/index.m3u8$LR•IPV4•12『线路9』 CCTV3,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226471/1.m3u8?$LR•IPV6•12『线路10』 CCTV3,http://63.141.230.178:82/gslb/zbdq5.m3u8?id=cctv3hd$LR•IPV4•12『线路11』 CCTV3,http://207.56.13.146:81/cdnlive/cctv3.m3u8$LR•IPV4•12『线路12』 -CCTV4,http://112.123.243.37:50085/tsfile/live/0004_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•16『线路1』 -CCTV4,http://222.223.41.27:8888/hls/4/index.m3u8$LR•IPV4•16『线路2』 -CCTV4,http://221.226.51.220:50081/newlive/live/hls/4/live.m3u8$LR•IPV4•16『线路3』 -CCTV4,http://153.0.171.163:9901/tsfile/live/0004_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•16『线路4』 -CCTV4,https://dash2.antik.sk/live/test_cctv_tizen/playlist.m3u8$LR•IPV4•16『线路5』 -CCTV4,http://38.75.136.137:98/gslb/dsdqbv/cctv4hd.m3u8?auth=test20251009$LR•IPV4•16『线路6』 -CCTV4,http://112.46.105.20:8009/hls/4/index.m3u8$LR•IPV4•16『线路7』 -CCTV4,http://74.91.26.218:82/live/cctv4hd.m3u8$LR•IPV4•16『线路8』 -CCTV4,p3p://167.114.175.6:55331/61244d9c0006885d64b1b7591f6c12a0$LR•IPV4•16『线路9』 -CCTV4,https://live-play-hls.cctvnews.cctv.com/CCTVChannel/channel_cctv4_mbd.m3u8?auth_key=1784329200-1-b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c-2245971645866ed95972e22af68cc8d1&yid=b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c$LR•IPV4•16『线路10』 -CCTV4,https://live-play-hls.cctvnews.cctv.com/CCTVChannel/channel_cctv4_mbd.m3u8?auth_key=1784271600-1-b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c-6aec44040ec72def77e22587fc404005&yid=b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c$LR•IPV4•16『线路11』 -CCTV4,https://live-play-hls.cctvnews.cctv.com/CCTVChannel/channel_cctv4_mbd.m3u8?auth_key=1784322000-1-b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c-25fe408e6545f49f3d4eb7f92e97c764&yid=b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c$LR•IPV4•16『线路12』 -CCTV4,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226335/1.m3u8?$LR•IPV6•16『线路13』 -CCTV4,http://63.141.230.178:82/gslb/zbdq5.m3u8?id=cctv4hd$LR•IPV4•16『线路14』 -CCTV4,http://207.56.13.146:81/cdnlive/cctv4.m3u8$LR•IPV4•16『线路15』 -CCTV4,https://global.cgtn.cicc.media.caton.cloud/master/cgtn-america.m3u8$LR•IPV4•16『线路16』 +CCTV4,http://112.123.243.37:50085/tsfile/live/0004_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•19『线路1』 +CCTV4,http://222.223.41.27:8888/hls/4/index.m3u8$LR•IPV4•19『线路2』 +CCTV4,http://221.226.51.220:50081/newlive/live/hls/4/live.m3u8$LR•IPV4•19『线路3』 +CCTV4,http://153.0.171.163:9901/tsfile/live/0004_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•19『线路4』 +CCTV4,http://t.061899.xyz/tl/tl.php?id=cctv4$LR•IPV4•19『线路5』 +CCTV4,http://t.061899.xyz/tl/tl.php?id=cctv4o$LR•IPV4•19『线路6』 +CCTV4,http://t.061899.xyz/tl/tl.php?id=cctv4m$LR•IPV4•19『线路7』 +CCTV4,http://38.75.136.137:98/gslb/dsdqbv/cctv4hd.m3u8?auth=test20251009$LR•IPV4•19『线路8』 +CCTV4,http://112.46.105.20:8009/hls/4/index.m3u8$LR•IPV4•19『线路9』 +CCTV4,http://74.91.26.218:82/live/cctv4hd.m3u8$LR•IPV4•19『线路10』 +CCTV4,p3p://167.114.175.6:55331/61244d9c0006885d64b1b7591f6c12a0$LR•IPV4•19『线路11』 +CCTV4,https://live-play-hls.cctvnews.cctv.com/CCTVChannel/channel_cctv4_mbd.m3u8?auth_key=1784332800-1-b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c-1f6c18588a391e749b10db985cd21620&yid=b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c$LR•IPV4•19『线路12』 +CCTV4,https://live-play-hls.cctvnews.cctv.com/CCTVChannel/channel_cctv4_mbd.m3u8?auth_key=1784336400-1-b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c-49830e80d2c0d40fea8492a5581b9b73&yid=b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c$LR•IPV4•19『线路13』 +CCTV4,https://live-play-hls.cctvnews.cctv.com/CCTVChannel/channel_cctv4_mbd.m3u8?auth_key=1784271600-1-b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c-6aec44040ec72def77e22587fc404005&yid=b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c$LR•IPV4•19『线路14』 +CCTV4,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226335/1.m3u8?$LR•IPV6•19『线路15』 +CCTV4,http://63.141.230.178:82/gslb/zbdq5.m3u8?id=cctv4hd$LR•IPV4•19『线路16』 +CCTV4,http://207.56.13.146:81/cdnlive/cctv4.m3u8$LR•IPV4•19『线路17』 +CCTV4,https://global.cgtn.cicc.media.caton.cloud/master/cgtn-america.m3u8$LR•IPV4•19『线路18』 +CCTV4,https://dash2.antik.sk/live/test_cctv_tizen/playlist.m3u8$LR•IPV4•19『线路19』 CCTV5,http://222.223.41.27:8888/hls/5/index.m3u8$LR•IPV4•14『线路1』 CCTV5,http://183.223.157.33:9901/tsfile/live/0005_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•14『线路2』 CCTV5,http://221.226.51.220:50081/newlive/live/hls/5/live.m3u8$LR•IPV4•14『线路3』 -CCTV5,http://112.27.235.94:8000/hls/5/index.m3u8$LR•IPV4•14『线路4』 +CCTV5,http://t.061899.xyz/tl/tl.php?id=cctv5$LR•IPV4•14『线路4』 CCTV5,http://101.66.199.247:9901/tsfile/live/0005_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•14『线路5』 CCTV5,http://38.75.136.137:98/gslb/dsdqbv/cctv5hd.m3u8?auth=test20251009$LR•IPV4•14『线路6』 CCTV5,http://112.46.105.20:8009/hls/503/index.m3u8$LR•IPV4•14『线路7』 CCTV5,http://153.0.171.163:9901/tsfile/live/0005_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•14『线路8』 CCTV5,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226469/1.m3u8?$LR•IPV6•14『线路9』 CCTV5,http://183.129.255.66:8480/hls/6/index.m3u8$LR•IPV4•14『线路10』 -CCTV5,http://112.27.235.94:8000/hls/6/index.m3u8$LR•IPV4•14『线路11』 +CCTV5,http://t.061899.xyz/tl/tl.php?id=cctv5p$LR•IPV4•14『线路11』 CCTV5,http://112.123.243.37:50085/tsfile/live/0006_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•14『线路12』 CCTV5,http://38.75.136.137:98/gslb/dsdqbv/cctv5p.m3u8?auth=test20251009$LR•IPV4•14『线路13』 CCTV5,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226894/1.m3u8?$LR•IPV6•14『线路14』 @@ -111,7 +115,7 @@ CCTV6,http://183.129.255.66:8480/hls/7/index.m3u8$LR•IPV4•13『线路2』 CCTV6,http://107.150.60.122/live/cctv6hd.m3u8$LR•IPV4•13『线路3』 CCTV6,http://38.75.136.137:98/gslb/dsdqbv/cctv6hd.m3u8?auth=test20251009$LR•IPV4•13『线路4』 CCTV6,http://221.226.51.220:50081/newlive/live/hls/6/live.m3u8$LR•IPV4•13『线路5』 -CCTV6,http://112.27.235.94:8000/hls/7/index.m3u8$LR•IPV4•13『线路6』 +CCTV6,http://t.061899.xyz/tl/tl.php?id=cctv6$LR•IPV4•13『线路6』 CCTV6,http://112.46.105.20:8009/hls/6/index.m3u8$LR•IPV4•13『线路7』 CCTV6,http://153.0.171.163:9901/tsfile/live/0006_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•13『线路8』 CCTV6,http://74.91.26.218:82/live/cctv6hd.m3u8$LR•IPV4•13『线路9』 @@ -124,7 +128,7 @@ CCTV7,http://222.223.41.27:8888/hls/7/index.m3u8$LR•IPV4•10『线路2』 CCTV7,http://222.214.208.34:59901/tsfile/live/0007_1.m3u8$LR•IPV4•10『线路3』 CCTV7,http://183.129.255.66:8480/hls/8/index.m3u8$LR•IPV4•10『线路4』 CCTV7,http://153.0.171.163:9901/tsfile/live/0007_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•10『线路5』 -CCTV7,http://112.27.235.94:8000/hls/8/index.m3u8$LR•IPV4•10『线路6』 +CCTV7,http://t.061899.xyz/tl/tl.php?id=cctv7$LR•IPV4•10『线路6』 CCTV7,http://38.75.136.137:98/gslb/dsdqbv/cctv7hd.m3u8?auth=test20251009$LR•IPV4•10『线路7』 CCTV7,http://112.46.105.20:8009/hls/504/index.m3u8$LR•IPV4•10『线路8』 CCTV7,http://74.91.26.218:82/live/cctv7hd.m3u8$LR•IPV4•10『线路9』 @@ -137,7 +141,7 @@ CCTV8,http://120.202.94.181:9446/tsfile/live/0008_1.m3u8?key=txiptv$LR•IPV4• CCTV8,http://38.75.136.137:98/gslb/dsdqpub/cctv8hd.m3u8?auth=testpub$LR•IPV4•19『线路6』 CCTV8,http://120.198.95.220:9901/tsfile/live/1023_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•19『线路7』 CCTV8,https://ldocctvwbcdtxy.liveplay.myqcloud.com/ldocctvwbcd/cdrmldcctv8_1_hd.m3u8$LR•IPV4•19『线路8』 -CCTV8,http://112.27.235.94:8000/hls/9/index.m3u8$LR•IPV4•19『线路9』 +CCTV8,http://t.061899.xyz/tl/tl.php?id=cctv8$LR•IPV4•19『线路9』 CCTV8,http://38.75.136.137:98/gslb/dsdqbv/cctv8hd.m3u8?auth=test20251009$LR•IPV4•19『线路10』 CCTV8,http://112.46.105.20:8009/hls/8/index.m3u8$LR•IPV4•19『线路11』 CCTV8,http://153.0.171.163:9901/tsfile/live/1007_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•19『线路12』 @@ -155,30 +159,29 @@ CCTV9,http://38.75.136.137:98/gslb/dsdqbv/cctv9hd.m3u8?auth=test20251009$LR•IP CCTV9,http://74.91.26.218:82/live/cctv9hd.m3u8$LR•IPV4•12『线路5』 CCTV9,http://112.46.105.20:8009/hls/509/index.m3u8$LR•IPV4•12『线路6』 CCTV9,http://153.0.171.163:9901/tsfile/live/1008_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•12『线路7』 -CCTV9,https://v4-e6b1c5baf4e240fe63adbf68dda23435.livehwc4.com/play.kankanlive.com/live/1698423397390920.m3u8?sub_m3u8=true&edge_slice=true&user_session_id=8a921813ee3b23c82763145c9f291a3b$LR•IPV4•12『线路8』 -CCTV9,https://v4-e6b1c5baf4e240fe63adbf68dda23435.livehwc4.com/play.kankanlive.com/live/1698423397390920.m3u8?sub_m3u8=true&edge_slice=true&user_session_id=f3fb3ddaca05941087114cf6481e1c23$LR•IPV4•12『线路9』 +CCTV9,https://v4-702cae17a28d6e4f0c0002bba021d934.livehwc4.com/play.kankanlive.com/live/1698423397390920.m3u8?sub_m3u8=true&edge_slice=true&user_session_id=7b0844b76d8c951adb5f87864280aa1c$LR•IPV4•12『线路8』 +CCTV9,https://v4-e6b1c5baf4e240fe63adbf68dda23435.livehwc4.com/play.kankanlive.com/live/1698423397390920.m3u8?sub_m3u8=true&edge_slice=true&user_session_id=1c7b8d97d045399d92a9b9016e62d86b$LR•IPV4•12『线路9』 CCTV9,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226944/1.m3u8?$LR•IPV6•12『线路10』 CCTV9,http://222.223.41.27:8888/hls/9/index.m3u8$LR•IPV4•12『线路11』 CCTV9,https://xykt-fix.github.io/Y77.m3u8$LR•IPV4•12『线路12』 -CCTV10,http://222.223.41.27:8888/hls/10/index.m3u8$LR•IPV4•11『线路1』 -CCTV10,http://183.129.255.66:8480/hls/11/index.m3u8$LR•IPV4•11『线路2』 -CCTV10,http://107.150.60.122/live/cctv10hd.m3u8$LR•IPV4•11『线路3』 -CCTV10,http://153.0.171.163:9901/tsfile/live/1009_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•11『线路4』 -CCTV10,http://112.27.235.94:8000/hls/11/index.m3u8$LR•IPV4•11『线路5』 -CCTV10,http://38.75.136.137:98/gslb/dsdqbv/cctv10hd.m3u8?auth=test20251009$LR•IPV4•11『线路6』 -CCTV10,http://112.46.105.20:8009/hls/506/index.m3u8$LR•IPV4•11『线路7』 -CCTV10,http://74.91.26.218:82/live/cctv10hd.m3u8$LR•IPV4•11『线路8』 -CCTV10,https://jsv-live-play.sfccn.com/live/jsv_3920_fhd.m3u8$LR•IPV4•11『线路9』 -CCTV10,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226937/1.m3u8?$LR•IPV6•11『线路10』 -CCTV10,https://hwapi.yntv.net/ew265l/z1z6s5.m3u8$LR•IPV4•11『线路11』 +CCTV10,http://222.223.41.27:8888/hls/10/index.m3u8$LR•IPV4•10『线路1』 +CCTV10,http://183.129.255.66:8480/hls/11/index.m3u8$LR•IPV4•10『线路2』 +CCTV10,http://107.150.60.122/live/cctv10hd.m3u8$LR•IPV4•10『线路3』 +CCTV10,http://153.0.171.163:9901/tsfile/live/1009_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•10『线路4』 +CCTV10,http://t.061899.xyz/tl/tl.php?id=cctv10$LR•IPV4•10『线路5』 +CCTV10,http://38.75.136.137:98/gslb/dsdqbv/cctv10hd.m3u8?auth=test20251009$LR•IPV4•10『线路6』 +CCTV10,http://112.46.105.20:8009/hls/506/index.m3u8$LR•IPV4•10『线路7』 +CCTV10,http://74.91.26.218:82/live/cctv10hd.m3u8$LR•IPV4•10『线路8』 +CCTV10,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226937/1.m3u8?$LR•IPV6•10『线路9』 +CCTV10,https://hwapi.yntv.net/ew265l/z1z6s5.m3u8$LR•IPV4•10『线路10』 CCTV11,http://183.129.255.66:8480/hls/12/index.m3u8$LR•IPV4•8『线路1』 CCTV11,http://cd-live-stream.news.cctvplus.com/live/smil:CHANNEL1.smil/chunklist_w744036192_b1000000.m3u8$LR•IPV4•8『线路2』 CCTV11,http://153.0.171.163:9901/tsfile/live/1010_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•8『线路3』 -CCTV11,http://112.27.235.94:8000/hls/12/index.m3u8$LR•IPV4•8『线路4』 +CCTV11,http://t.061899.xyz/tl/tl.php?id=cctv11$LR•IPV4•8『线路4』 CCTV11,http://38.75.136.137:98/gslb/dsdqbv/cctv11hd.m3u8?auth=test20251009$LR•IPV4•8『线路5』 CCTV11,http://74.91.26.218:82/live/cctv11hd.m3u8$LR•IPV4•8『线路6』 -CCTV11,http://183.196.25.171:808/hls/11/index.m3u8$LR•IPV4•8『线路7』 -CCTV11,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226334/1.m3u8?$LR•IPV6•8『线路8』 +CCTV11,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226334/1.m3u8?$LR•IPV6•8『线路7』 +CCTV11,http://183.196.25.171:808/hls/11/index.m3u8$LR•IPV4•8『线路8』 CCTV12,http://112.123.243.37:50085/tsfile/live/0013_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•9『线路1』 CCTV12,http://183.223.157.33:9901/tsfile/live/0012_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•9『线路2』 CCTV12,http://183.129.255.66:8480/hls/13/index.m3u8$LR•IPV4•9『线路3』 @@ -194,7 +197,7 @@ CCTV13,http://183.129.255.66:8480/hls/14/index.m3u8$LR•IPV4•15『线路3』 CCTV13,http://183.223.157.33:9901/tsfile/live/0013_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•15『线路4』 CCTV13,http://38.75.136.137:98/gslb/dsdqbv/cctv13hd.m3u8?auth=test20251009$LR•IPV4•15『线路5』 CCTV13,http://153.0.171.163:9901/tsfile/live/1012_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•15『线路6』 -CCTV13,http://112.27.235.94:8000/hls/14/index.m3u8$LR•IPV4•15『线路7』 +CCTV13,http://t.061899.xyz/tl/tl.php?id=cctv13$LR•IPV4•15『线路7』 CCTV13,http://74.91.26.218:82/live/cctv13hd.m3u8$LR•IPV4•15『线路8』 CCTV13,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226316/1.m3u8?$LR•IPV6•15『线路9』 CCTV13,https://event.pull.hebtv.com/jishi/cp1.m3u8$LR•IPV4•15『线路10』 @@ -207,7 +210,7 @@ CCTV14,http://74.91.26.218:82/live/cctv14hd.m3u8$LR•IPV4•9『线路1』 CCTV14,http://222.223.41.27:8888/hls/14/index.m3u8$LR•IPV4•9『线路2』 CCTV14,http://183.129.255.66:8480/hls/15/index.m3u8$LR•IPV4•9『线路3』 CCTV14,http://153.0.171.163:9901/tsfile/live/1013_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•9『线路4』 -CCTV14,http://112.27.235.94:8000/hls/15/index.m3u8$LR•IPV4•9『线路5』 +CCTV14,http://t.061899.xyz/tl/tl.php?id=cctv14$LR•IPV4•9『线路5』 CCTV14,http://112.123.243.37:50085/tsfile/live/0015_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•9『线路6』 CCTV14,http://38.75.136.137:98/gslb/dsdqbv/cctv14hd.m3u8?auth=test20251009$LR•IPV4•9『线路7』 CCTV14,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226947/1.m3u8?$LR•IPV6•9『线路8』 @@ -218,24 +221,24 @@ CCTV15,http://74.91.26.218:82/live/cctv15hd.m3u8$LR•IPV4•11『线路3』 CCTV15,http://183.223.157.33:9901/tsfile/live/0015_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•11『线路4』 CCTV15,http://204.12.221.218:8181/3m1080p/cctv15.m3u8$LR•IPV4•11『线路5』 CCTV15,http://153.0.171.163:9901/tsfile/live/1014_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•11『线路6』 -CCTV15,http://112.27.235.94:8000/hls/16/index.m3u8$LR•IPV4•11『线路7』 +CCTV15,http://t.061899.xyz/tl/tl.php?id=cctv15$LR•IPV4•11『线路7』 CCTV15,http://38.75.136.137:98/gslb/dsdqbv/cctv15hd.m3u8?auth=test20251009$LR•IPV4•11『线路8』 CCTV15,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226333/1.m3u8?$LR•IPV6•11『线路9』 CCTV15,http://38.75.136.137:98/gslb/dsdqpub/cctv15hd.m3u8?auth=testpub$LR•IPV4•11『线路10』 CCTV15,https://xykt-fix.github.io/play/a02e/index.m3u8$LR•IPV4•11『线路11』 -CCTV16,http://drive.mxmy.net:8888/udp/239.3.1.184:8001$LR•IPV4•4『线路1』 +CCTV16,http://t.061899.xyz/tl/tl.php?id=cctv16$LR•IPV4•4『线路1』 CCTV16,http://38.75.136.137:98/gslb/dsdqbv/cctv16hd.m3u8?auth=test20251009$LR•IPV4•4『线路2』 CCTV16,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221227002/1.m3u8?$LR•IPV6•4『线路3』 CCTV16,http://74.91.26.218:82/live/cctv16hd.m3u8$LR•IPV4•4『线路4』 CCTV17,http://183.129.255.66:8480/hls/18/index.m3u8$LR•IPV4•9『线路1』 CCTV17,http://107.150.60.122/live/cctv17hd.m3u8$LR•IPV4•9『线路2』 CCTV17,http://59.39.89.130:60901/tsfile/live/0017_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•9『线路3』 -CCTV17,http://123.130.84.106:8154/tsfile/live/0019_1.m3u8$LR•IPV4•9『线路4』 +CCTV17,http://t.061899.xyz/tl/tl.php?id=cctv17$LR•IPV4•9『线路4』 CCTV17,http://38.75.136.137:98/gslb/dsdqbv/cctv17hd.m3u8?auth=test20251009$LR•IPV4•9『线路5』 CCTV17,http://74.91.26.218:82/live/cctv17hd.m3u8$LR•IPV4•9『线路6』 -CCTV17,http://183.196.25.171:808/hls/93/index.m3u8$LR•IPV4•9『线路7』 -CCTV17,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226318/1.m3u8?$LR•IPV6•9『线路8』 -CCTV17,http://38.75.136.137:98/gslb/dsdqpub/cctv17hd.m3u8?auth=testpub$LR•IPV4•9『线路9』 +CCTV17,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226318/1.m3u8?$LR•IPV6•9『线路7』 +CCTV17,http://38.75.136.137:98/gslb/dsdqpub/cctv17hd.m3u8?auth=testpub$LR•IPV4•9『线路8』 +CCTV17,http://183.196.25.171:808/hls/93/index.m3u8$LR•IPV4•9『线路9』 CCTV第一剧场,http://38.75.136.137:98/gslb/dsdqpub/dyjc.m3u8?auth=testpub$LR•IPV4 CCTV怀旧剧场,http://38.75.136.137:98/gslb/dsdqpub/hjjc.m3u8?auth=testpub$LR•IPV4 CCTV风云剧场,http://38.75.136.137:98/gslb/dsdqpub/fyjc.m3u8?auth=testpub$LR•IPV4 @@ -302,13 +305,13 @@ CGTN阿语,https://0472.org/hls/cgtna.m3u8$LR•IPV4 星空卫视,http://wouu.net:9977/udp/239.93.0.156:2193$LR•IPV4•7『线路5』 星空卫视,http://171.213.140.54:8123/udp/239.93.1.10:2193$LR•IPV4•7『线路6』 星空卫视,https://stream1.freetv.fun/xing-kong-wei-shi-4.ctv$LR•IPV4•7『线路7』 -湖南卫视,http://120.196.232.43:8088/rrs03.hw.gmcc.net/PLTV/651/224/3221226698/1.m3u8$LR•IPV4•16『线路1』 +湖南卫视,http://t.061899.xyz/tl/tl.php?id=hunws$LR•IPV4•16『线路1』 湖南卫视,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226509/1.m3u8?zoneoffset=480&servicetype=1&icpid=&limitflux=-1&limitdur=-1&tenantId=8601&accountinfo=%7E%7EV2.0%7EIGb_ib7rnBX9_sANRKq9sg%7EpK8OKM5JoJWWbLRyLfPcUMkwWZ90MzSI9S9PDltJsYzd0ZGcS3Tkh7syciNKJa-w60mDOdwtDyoNwCx9aRgzHNH9AUREV_qvNJtXHRPzYw0%7EExtInfo9bj61dxzlMXrsixrqcFYPg%3D%3D%3A20221022013542%2C915973%2C119.123.71.209%2C20221022013542%2C10000100000000050000000003873458%2C915973%2C-1%2C0%2C1%2C%2C%2C2%2C%2C%2C%2C2%2C%2C10000100000000060000000007253514_0%2CEND&GuardEncType=2$LR•IPV6•16『线路2』 湖南卫视,http://74.91.26.218:82/live/hnwshd.m3u8$LR•IPV4•16『线路3』 湖南卫视,http://204.12.221.218:8181/3m1080p/hnws.m3u8$LR•IPV4•16『线路4』 湖南卫视,http://173.208.212.130:8181/720p/hnws.m3u8$LR•IPV4•16『线路5』 湖南卫视,http://153.0.171.163:9901/tsfile/live/0128_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•16『线路6』 -湖南卫视,http://112.27.235.94:8000/hls/31/index.m3u8$LR•IPV4•16『线路7』 +湖南卫视,http://120.196.232.43:8088/rrs03.hw.gmcc.net/PLTV/651/224/3221226698/1.m3u8$LR•IPV4•16『线路7』 湖南卫视,http://38.75.136.137:98/gslb/dsdqpub/hnwshd.m3u8?auth=testpub$LR•IPV4•16『线路8』 湖南卫视,https://hlsbkmgsplive.miguvideo.com/wd-hunanhd-2500/01.m3u8?&HlsSubType=&encrypt=$LR•IPV4•16『线路9』 湖南卫视,https://hlsbkmgsplive.miguvideo.com/wd-hunanhd-1200/01.m3u8?&HlsSubType=&encrypt=$LR•IPV4•16『线路10』 @@ -318,95 +321,93 @@ CGTN阿语,https://0472.org/hls/cgtna.m3u8$LR•IPV4 湖南卫视,https://iptv.catvod.com/catvod.php?id=hunws$LR•IPV4•16『线路14』 湖南卫视,https://httop.top/ysp-湖南卫视$LR•IPV4•16『线路15』 湖南卫视,http://iptv.huuc.edu.cn/hls/hunanhd.m3u8$LR•IPV4•16『线路16』 -浙江卫视,http://zwebl02.cztv.com/live/channel01720Pnew.m3u8?auth_key=1784123883-f178167128c55cd66b7eca004ccca015-0-69f388bdaa594feb900510d687566182$LR•IPV4•17『线路1』 -浙江卫视,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226899/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7ETYfTgTra_pUx2cPrgZ_BDw%7EtP4-l0lmSfjwLWEfK_el1vH_mv-s1zo4AQJwdedaVwG9xkuFTDg8J26cwOrNJzn20BErrHdLhuZ9EzLUCD3PMW-OMx4MGteHV2vLeW6BqoY%2CEND$LR•IPV6•17『线路2』 -浙江卫视,http://112.123.243.37:50085/tsfile/live/0019_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•17『线路3』 -浙江卫视,http://ali-xwl.cztv.com/live/channel011080Plxw.m3u8$LR•IPV4•17『线路4』 -浙江卫视,http://204.12.221.218:8181/3m1080p/zjws.m3u8$LR•IPV4•17『线路5』 -浙江卫视,http://173.208.212.130:8181/720p/zjws.m3u8$LR•IPV4•17『线路6』 -浙江卫视,http://ali-xwl.cztv.com/live/channel01720Plxw.m3u8$LR•IPV4•17『线路7』 -浙江卫视,http://112.27.235.94:8000/hls/29/index.m3u8$LR•IPV4•17『线路8』 -浙江卫视,http://38.75.136.137:98/gslb/dsdqpub/zjwshd.m3u8?auth=testpub$LR•IPV4•17『线路9』 -浙江卫视,http://23.237.228.134/live6/zhejiang.m3u8$LR•IPV4•17『线路10』 -浙江卫视,http://gfr.x3322.net:9901/tsfile/live/1087_1.m3u8$LR•IPV4•17『线路11』 -浙江卫视,http://api.kkitv.itv888.cn:8080/hls/urjqjvyf41q/index.m3u8$LR•IPV4•17『线路12』 -浙江卫视,https://iptv.catvod.com/catvod.php?id=zjws$LR•IPV4•17『线路13』 -浙江卫视,https://httop.top/ysp-浙江卫视$LR•IPV4•17『线路14』 -浙江卫视,http://iptv.huuc.edu.cn/hls/zjhd.m3u8$LR•IPV4•17『线路15』 -浙江卫视,http://153.0.171.163:9901/tsfile/live/0124_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•17『线路16』 -浙江卫视,http://39.134.115.163:8080/PLTV/88888910/224/3221225703/index.m3u8$LR•IPV4•17『线路17』 -东方卫视,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226898/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7E0uh4lyjjBCCN7TCq21vSIQ%7EtP4-l0lmSfjwLWEfK_el1vH_mv-s1zo4AQJwdedaVwG9xkuFTDg8J26cwOrNJzn20BErrHdLhuZ9EzLUCD3PMW-OMx4MGteHV2vLeW6BqoY%2CEND$LR•IPV6•17『线路1』 -东方卫视,http://101.66.194.82:9901/tsfile/live/0018_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•17『线路2』 -东方卫视,http://38.75.136.137:98/gslb/dsdqpub/dfwshd.m3u8?auth=testpub$LR•IPV4•17『线路3』 -东方卫视,http://173.208.212.130:8181/720p/dfws.m3u8$LR•IPV4•17『线路4』 -东方卫视,https://txmov2.a.kwimgs.com/bs3/video-hls/5219953535631090825_hlsb.m3u8$LR•IPV4•17『线路5』 -东方卫视,http://38.75.136.137:98/gslb/dsdqbv/dfwshd.m3u8?auth=test20251009$LR•IPV4•17『线路6』 -东方卫视,http://23.237.228.134/live3/dongfang.m3u8$LR•IPV4•17『线路7』 -东方卫视,http://43.251.226.89:8080/play/36.m3u8$LR•IPV4•17『线路8』 -东方卫视,http://gfr.x3322.net:9901/tsfile/live/1085_1.m3u8$LR•IPV4•17『线路9』 -东方卫视,http://api.kkitv.itv888.cn:8080/hls/p269fvbehye/index.m3u8$LR•IPV4•17『线路10』 -东方卫视,https://iptv.catvod.com/catvod.php?id=dfws$LR•IPV4•17『线路11』 -东方卫视,https://httop.top/ysp-东方卫视$LR•IPV4•17『线路12』 -东方卫视,http://iptv.huuc.edu.cn/hls/dfhd.m3u8$LR•IPV4•17『线路13』 -东方卫视,http://mg.hmysapp.cn:177/ckmg/zb.php?id=dfws$LR•IPV4•17『线路14』 -东方卫视,http://153.0.171.163:9901/tsfile/live/0107_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•17『线路15』 -东方卫视,http://omnix.cn:4000/udp/225.1.8.45:8032$LR•IPV4•17『线路16』 -东方卫视,http://118.81.195.79:9003/hls/23/index.m3u8$LR•IPV4•17『线路17』 +浙江卫视,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•16『线路1』 +浙江卫视,http://112.123.243.37:50085/tsfile/live/0019_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•16『线路2』 +浙江卫视,http://ali-xwl.cztv.com/live/channel011080Plxw.m3u8$LR•IPV4•16『线路3』 +浙江卫视,http://204.12.221.218:8181/3m1080p/zjws.m3u8$LR•IPV4•16『线路4』 +浙江卫视,http://173.208.212.130:8181/720p/zjws.m3u8$LR•IPV4•16『线路5』 +浙江卫视,http://ali-xwl.cztv.com/live/channel01720Plxw.m3u8$LR•IPV4•16『线路6』 +浙江卫视,http://ali-m-l.cztv.com:80/channels/lantian/channel001/1080p.m3u8$LR•IPV4•16『线路7』 +浙江卫视,http://39.134.115.163:8080/PLTV/88888910/224/3221225703/index.m3u8$LR•IPV4•16『线路8』 +浙江卫视,http://38.75.136.137:98/gslb/dsdqpub/zjwshd.m3u8?auth=testpub$LR•IPV4•16『线路9』 +浙江卫视,http://23.237.228.134/live6/zhejiang.m3u8$LR•IPV4•16『线路10』 +浙江卫视,http://gfr.x3322.net:9901/tsfile/live/1087_1.m3u8$LR•IPV4•16『线路11』 +浙江卫视,http://api.kkitv.itv888.cn:8080/hls/urjqjvyf41q/index.m3u8$LR•IPV4•16『线路12』 +浙江卫视,https://iptv.catvod.com/catvod.php?id=zjws$LR•IPV4•16『线路13』 +浙江卫视,https://httop.top/ysp-浙江卫视$LR•IPV4•16『线路14』 +浙江卫视,http://iptv.huuc.edu.cn/hls/zjhd.m3u8$LR•IPV4•16『线路15』 +浙江卫视,http://153.0.171.163:9901/tsfile/live/0124_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•16『线路16』 +东方卫视,http://t.061899.xyz/tl/tl.php?id=dfws$LR•IPV4•17『线路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•17『线路2』 +东方卫视,http://101.66.194.82:9901/tsfile/live/0018_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•17『线路3』 +东方卫视,http://38.75.136.137:98/gslb/dsdqpub/dfwshd.m3u8?auth=testpub$LR•IPV4•17『线路4』 +东方卫视,http://173.208.212.130:8181/720p/dfws.m3u8$LR•IPV4•17『线路5』 +东方卫视,http://118.81.195.79:9003/hls/23/index.m3u8$LR•IPV4•17『线路6』 +东方卫视,http://38.75.136.137:98/gslb/dsdqbv/dfwshd.m3u8?auth=test20251009$LR•IPV4•17『线路7』 +东方卫视,http://23.237.228.134/live3/dongfang.m3u8$LR•IPV4•17『线路8』 +东方卫视,http://43.251.226.89:8080/play/36.m3u8$LR•IPV4•17『线路9』 +东方卫视,http://gfr.x3322.net:9901/tsfile/live/1085_1.m3u8$LR•IPV4•17『线路10』 +东方卫视,http://api.kkitv.itv888.cn:8080/hls/p269fvbehye/index.m3u8$LR•IPV4•17『线路11』 +东方卫视,https://iptv.catvod.com/catvod.php?id=dfws$LR•IPV4•17『线路12』 +东方卫视,https://httop.top/ysp-东方卫视$LR•IPV4•17『线路13』 +东方卫视,http://iptv.huuc.edu.cn/hls/dfhd.m3u8$LR•IPV4•17『线路14』 +东方卫视,http://mg.hmysapp.cn:177/ckmg/zb.php?id=dfws$LR•IPV4•17『线路15』 +东方卫视,http://153.0.171.163:9901/tsfile/live/0107_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•17『线路16』 +东方卫视,http://omnix.cn:4000/udp/225.1.8.45:8032$LR•IPV4•17『线路17』 北京卫视,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226900/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7EcYPi33WFyhvd6SjmqUKhJg%7EtP4-l0lmSfjwLWEfK_el1vH_mv-s1zo4AQJwdedaVwG9xkuFTDg8J26cwOrNJzn20BErrHdLhuZ9EzLUCD3PMW-OMx4MGteHV2vLeW6BqoY%2CEND$LR•IPV6•13『线路1』 北京卫视,http://101.66.194.63:9901/tsfile/live/0016_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•13『线路2』 北京卫视,http://153.0.171.163:9901/tsfile/live/0122_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•13『线路3』 北京卫视,http://112.27.235.94:8000/hls/27/index.m3u8$LR•IPV4•13『线路4』 -北京卫视,http://38.75.136.137:98/gslb/dsdqpub/bjwshd.m3u8?auth=testpub$LR•IPV4•13『线路5』 -北京卫视,http://23.237.228.134/live3/beijing.m3u8$LR•IPV4•13『线路6』 -北京卫视,http://43.251.226.89:8080/play/40.m3u8$LR•IPV4•13『线路7』 -北京卫视,http://gfr.x3322.net:9901/tsfile/live/1089_1.m3u8$LR•IPV4•13『线路8』 -北京卫视,http://api.kkitv.itv888.cn:8080/hls/h5uud1z84gn/index.m3u8$LR•IPV4•13『线路9』 -北京卫视,https://iptv.catvod.com/catvod.php?id=bjws$LR•IPV4•13『线路10』 -北京卫视,https://httop.top/ysp-北京卫视$LR•IPV4•13『线路11』 -北京卫视,http://iptv.huuc.edu.cn/hls/btv1hd.m3u8$LR•IPV4•13『线路12』 -北京卫视,http://go.bkpcp.top/mg/bjws$LR•IPV4•13『线路13』 -江苏卫视,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•15『线路1』 -江苏卫视,http://120.198.95.220:9901/tsfile/live/1046_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•15『线路2』 -江苏卫视,http://173.208.212.130:8181/720p/jsws.m3u8$LR•IPV4•15『线路3』 -江苏卫视,http://198.204.228.26/live/jswshd.m3u8$LR•IPV4•15『线路4』 -江苏卫视,http://112.27.235.94:8000/hls/32/index.m3u8$LR•IPV4•15『线路5』 -江苏卫视,http://38.75.136.137:98/gslb/dsdqbv/jswshd.m3u8?auth=test20251009$LR•IPV4•15『线路6』 -江苏卫视,https://hlsbkmgsplive.miguvideo.com/migu/kailu/jswshd265/55/20200407/01.m3u8?&HlsSubType=&encrypt=$LR•IPV4•15『线路7』 -江苏卫视,http://23.237.228.134/live3/jiangsu.m3u8$LR•IPV4•15『线路8』 -江苏卫视,http://43.251.226.89:8080/play/37.m3u8$LR•IPV4•15『线路9』 -江苏卫视,http://gfr.x3322.net:9901/tsfile/live/1086_1.m3u8$LR•IPV4•15『线路10』 -江苏卫视,http://api.kkitv.itv888.cn:8080/hls/g1upm1u239/index.m3u8$LR•IPV4•15『线路11』 -江苏卫视,https://httop.top/ysp-江苏卫视$LR•IPV4•15『线路12』 -江苏卫视,http://iptv.huuc.edu.cn/hls/jshd.m3u8$LR•IPV4•15『线路13』 -江苏卫视,http://mg.hmysapp.cn:177/ckmg/zb.php?id=jsws$LR•IPV4•15『线路14』 -江苏卫视,http://39.134.24.166/dbiptv.sn.chinamobile.com/PLTV/88888890/224/3221226200/index.m3u8$LR•IPV4•15『线路15』 -安徽卫视,https://piccpndks.v.kcdnvip.com/audio/anhui_2/index.m3u8$LR•IPV4•11『线路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•11『线路2』 -安徽卫视,http://101.66.194.63:9901/tsfile/live/0130_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•11『线路3』 -安徽卫视,http://112.27.235.94:8000/hls/26/index.m3u8$LR•IPV4•11『线路4』 -安徽卫视,http://23.237.228.134/live8/anhui.m3u8$LR•IPV4•11『线路5』 -安徽卫视,http://gfr.x3322.net:9901/tsfile/live/1092_1.m3u8$LR•IPV4•11『线路6』 -安徽卫视,http://api.kkitv.itv888.cn:8080/hls/m8hvytneunk/index.m3u8$LR•IPV4•11『线路7』 -安徽卫视,https://iptv.catvod.com/catvod.php?id=ahws$LR•IPV4•11『线路8』 -安徽卫视,https://httop.top/ysp-安徽卫视$LR•IPV4•11『线路9』 -安徽卫视,http://iptv.huuc.edu.cn/hls/ahhd.m3u8$LR•IPV4•11『线路10』 -安徽卫视,http://153.0.171.163:9901/tsfile/live/0130_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•11『线路11』 -重庆卫视,http://live2.plus.jinhua.com.cn/dsnc/playlist.m3u8$LR•IPV4•16『线路1』 +北京卫视,http://go.bkpcp.top/mg/bjws$LR•IPV4•13『线路5』 +北京卫视,http://38.75.136.137:98/gslb/dsdqpub/bjwshd.m3u8?auth=testpub$LR•IPV4•13『线路6』 +北京卫视,http://23.237.228.134/live3/beijing.m3u8$LR•IPV4•13『线路7』 +北京卫视,http://43.251.226.89:8080/play/40.m3u8$LR•IPV4•13『线路8』 +北京卫视,http://gfr.x3322.net:9901/tsfile/live/1089_1.m3u8$LR•IPV4•13『线路9』 +北京卫视,http://api.kkitv.itv888.cn:8080/hls/h5uud1z84gn/index.m3u8$LR•IPV4•13『线路10』 +北京卫视,https://iptv.catvod.com/catvod.php?id=bjws$LR•IPV4•13『线路11』 +北京卫视,https://httop.top/ysp-北京卫视$LR•IPV4•13『线路12』 +北京卫视,http://iptv.huuc.edu.cn/hls/btv1hd.m3u8$LR•IPV4•13『线路13』 +江苏卫视,http://t.061899.xyz/tl/tl.php?id=jsws$LR•IPV4•15『线路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•15『线路2』 +江苏卫视,http://120.198.95.220:9901/tsfile/live/1046_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•15『线路3』 +江苏卫视,http://173.208.212.130:8181/720p/jsws.m3u8$LR•IPV4•15『线路4』 +江苏卫视,http://198.204.228.26/live/jswshd.m3u8$LR•IPV4•15『线路5』 +江苏卫视,http://39.134.24.166/dbiptv.sn.chinamobile.com/PLTV/88888890/224/3221226200/index.m3u8$LR•IPV4•15『线路6』 +江苏卫视,http://38.75.136.137:98/gslb/dsdqbv/jswshd.m3u8?auth=test20251009$LR•IPV4•15『线路7』 +江苏卫视,https://hlsbkmgsplive.miguvideo.com/migu/kailu/jswshd265/55/20200407/01.m3u8?&HlsSubType=&encrypt=$LR•IPV4•15『线路8』 +江苏卫视,http://23.237.228.134/live3/jiangsu.m3u8$LR•IPV4•15『线路9』 +江苏卫视,http://43.251.226.89:8080/play/37.m3u8$LR•IPV4•15『线路10』 +江苏卫视,http://gfr.x3322.net:9901/tsfile/live/1086_1.m3u8$LR•IPV4•15『线路11』 +江苏卫视,http://api.kkitv.itv888.cn:8080/hls/g1upm1u239/index.m3u8$LR•IPV4•15『线路12』 +江苏卫视,https://httop.top/ysp-江苏卫视$LR•IPV4•15『线路13』 +江苏卫视,http://iptv.huuc.edu.cn/hls/jshd.m3u8$LR•IPV4•15『线路14』 +江苏卫视,http://mg.hmysapp.cn:177/ckmg/zb.php?id=jsws$LR•IPV4•15『线路15』 +安徽卫视,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•10『线路1』 +安徽卫视,http://101.66.194.63:9901/tsfile/live/0130_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•10『线路2』 +安徽卫视,http://112.27.235.94:8000/hls/26/index.m3u8$LR•IPV4•10『线路3』 +安徽卫视,http://23.237.228.134/live8/anhui.m3u8$LR•IPV4•10『线路4』 +安徽卫视,http://gfr.x3322.net:9901/tsfile/live/1092_1.m3u8$LR•IPV4•10『线路5』 +安徽卫视,http://api.kkitv.itv888.cn:8080/hls/m8hvytneunk/index.m3u8$LR•IPV4•10『线路6』 +安徽卫视,https://iptv.catvod.com/catvod.php?id=ahws$LR•IPV4•10『线路7』 +安徽卫视,https://httop.top/ysp-安徽卫视$LR•IPV4•10『线路8』 +安徽卫视,http://iptv.huuc.edu.cn/hls/ahhd.m3u8$LR•IPV4•10『线路9』 +安徽卫视,http://153.0.171.163:9901/tsfile/live/0130_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•10『线路10』 +重庆卫视,http://t.061899.xyz/tl/tl.php?id=cqws$LR•IPV4•16『线路1』 重庆卫视,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226963/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7EjTXsJprEx2nE38tdvu5lhA%7EtP4-l0lmSfjwLWEfK_el1vH_mv-s1zo4AQJwdedaVwG9xkuFTDg8J26cwOrNJzn20BErrHdLhuZ9EzLUCD3PMW-OMx4MGteHV2vLeW6BqoY%2CEND$LR•IPV6•16『线路2』 重庆卫视,http://192.151.150.154/live/cqwshd.m3u8$LR•IPV4•16『线路3』 重庆卫视,http://107.150.60.122/live/cqwshd.m3u8$LR•IPV4•16『线路4』 重庆卫视,http://112.123.243.37:50085/tsfile/live/0131_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•16『线路5』 重庆卫视,http://120.198.95.220:9901/tsfile/live/1066_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•16『线路6』 -重庆卫视,http://112.27.235.94:8000/hls/36/index.m3u8$LR•IPV4•16『线路7』 -重庆卫视,http://23.237.228.134/live6/chongqing.m3u8$LR•IPV4•16『线路8』 -重庆卫视,http://43.251.226.89:8080/play/55.m3u8$LR•IPV4•16『线路9』 -重庆卫视,http://gfr.x3322.net:9901/tsfile/live/1093_1.m3u8$LR•IPV4•16『线路10』 -重庆卫视,http://api.kkitv.itv888.cn:8080/hls/ogh3s6tbw6/index.m3u8$LR•IPV4•16『线路11』 -重庆卫视,https://iptv.catvod.com/catvod.php?id=cqws$LR•IPV4•16『线路12』 -重庆卫视,https://httop.top/ysp-重庆卫视$LR•IPV4•16『线路13』 -重庆卫视,http://iptv.huuc.edu.cn/hls/cqhd.m3u8$LR•IPV4•16『线路14』 -重庆卫视,http://153.0.171.163:9901/tsfile/live/0142_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•16『线路15』 -重庆卫视,http://118.81.195.79:9003/hls/22/index.m3u8$LR•IPV4•16『线路16』 +重庆卫视,http://live2.plus.jinhua.com.cn/dsnc/playlist.m3u8$LR•IPV4•16『线路7』 +重庆卫视,http://118.81.195.79:9003/hls/22/index.m3u8$LR•IPV4•16『线路8』 +重庆卫视,http://23.237.228.134/live6/chongqing.m3u8$LR•IPV4•16『线路9』 +重庆卫视,http://43.251.226.89:8080/play/55.m3u8$LR•IPV4•16『线路10』 +重庆卫视,http://gfr.x3322.net:9901/tsfile/live/1093_1.m3u8$LR•IPV4•16『线路11』 +重庆卫视,http://api.kkitv.itv888.cn:8080/hls/ogh3s6tbw6/index.m3u8$LR•IPV4•16『线路12』 +重庆卫视,https://iptv.catvod.com/catvod.php?id=cqws$LR•IPV4•16『线路13』 +重庆卫视,https://httop.top/ysp-重庆卫视$LR•IPV4•16『线路14』 +重庆卫视,http://iptv.huuc.edu.cn/hls/cqhd.m3u8$LR•IPV4•16『线路15』 +重庆卫视,http://153.0.171.163:9901/tsfile/live/0142_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•16『线路16』 四川卫视,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•15『线路1』 四川卫视,http://204.12.221.218:8181/3m1080p/scws.m3u8$LR•IPV4•15『线路2』 四川卫视,http://63.141.230.178:82/gslb/zbdq5.m3u8?id=scwshd$LR•IPV4•15『线路3』 @@ -416,30 +417,30 @@ CGTN阿语,https://0472.org/hls/cgtna.m3u8$LR•IPV4 四川卫视,http://153.0.171.163:9901/tsfile/live/0123_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•15『线路7』 四川卫视,http://153.0.171.163:85/tsfile/live/0123_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•15『线路8』 四川卫视,http://112.27.235.94:8000/hls/35/index.m3u8$LR•IPV4•15『线路9』 -四川卫视,http://38.75.136.137:98/gslb/dsdqpub/scwshd.m3u8?auth=testpub$LR•IPV4•15『线路10』 -四川卫视,http://api.kkitv.itv888.cn:8080/hls/p2npnppn96p/index.m3u8$LR•IPV4•15『线路11』 -四川卫视,https://iptv.catvod.com/catvod.php?id=scws$LR•IPV4•15『线路12』 -四川卫视,https://httop.top/ysp-四川卫视$LR•IPV4•15『线路13』 -四川卫视,http://iptv.huuc.edu.cn/hls/schd.m3u8$LR•IPV4•15『线路14』 -四川卫视,http://39.134.115.163:8080/PLTV/88888910/224/3221225733/index.m3u8$LR•IPV4•15『线路15』 -东南卫视,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•18『线路1』 -东南卫视,http://live.zohi.tv/video/s10001-fztv-3/index.m3u8$LR•IPV4•18『线路2』 -东南卫视,http://198.204.228.26/live/dnwshd.m3u8$LR•IPV4•18『线路3』 -东南卫视,http://204.12.221.218:8181/3m1080p/dnws.m3u8$LR•IPV4•18『线路4』 -东南卫视,http://112.123.243.37:50085/tsfile/live/0113_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•18『线路5』 -东南卫视,http://112.27.235.94:8000/hls/38/index.m3u8$LR•IPV4•18『线路6』 -东南卫视,http://38.75.136.137:98/gslb/dsdqpub/dnwshd.m3u8?auth=testpub$LR•IPV4•18『线路7』 -东南卫视,https://hlsbkmgsplive.miguvideo.com/migu/kailu/dongnanws/51/20230724/01.m3u8?&HlsSubType=&encrypt=$LR•IPV4•18『线路8』 -东南卫视,http://23.237.228.134/live6/dongnan.m3u8$LR•IPV4•18『线路9』 -东南卫视,http://23.237.228.134/live8/gansu.m3u8$LR•IPV4•18『线路10』 -东南卫视,http://43.251.226.89:8080/play/49.m3u8$LR•IPV4•18『线路11』 -东南卫视,http://gfr.x3322.net:9901/tsfile/live/1099_1.m3u8$LR•IPV4•18『线路12』 -东南卫视,http://api.kkitv.itv888.cn:8080/hls/jjt15bvbl7a/index.m3u8$LR•IPV4•18『线路13』 -东南卫视,https://iptv.catvod.com/catvod.php?id=dnws$LR•IPV4•18『线路14』 -东南卫视,https://httop.top/ysp-东南卫视$LR•IPV4•18『线路15』 -东南卫视,http://iptv.huuc.edu.cn/hls/dnhd.m3u8$LR•IPV4•18『线路16』 -东南卫视,http://153.0.171.163:9901/tsfile/live/0137_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•18『线路17』 -东南卫视,http://118.81.195.79:9003/hls/24/index.m3u8$LR•IPV4•18『线路18』 +四川卫视,http://39.134.115.163:8080/PLTV/88888910/224/3221225733/index.m3u8$LR•IPV4•15『线路10』 +四川卫视,http://38.75.136.137:98/gslb/dsdqpub/scwshd.m3u8?auth=testpub$LR•IPV4•15『线路11』 +四川卫视,http://api.kkitv.itv888.cn:8080/hls/p2npnppn96p/index.m3u8$LR•IPV4•15『线路12』 +四川卫视,https://iptv.catvod.com/catvod.php?id=scws$LR•IPV4•15『线路13』 +四川卫视,https://httop.top/ysp-四川卫视$LR•IPV4•15『线路14』 +四川卫视,http://iptv.huuc.edu.cn/hls/schd.m3u8$LR•IPV4•15『线路15』 +东南卫视,http://t.061899.xyz/tl/tl.php?id=dnws$LR•IPV4•18『线路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•18『线路2』 +东南卫视,http://live.zohi.tv/video/s10001-fztv-3/index.m3u8$LR•IPV4•18『线路3』 +东南卫视,http://198.204.228.26/live/dnwshd.m3u8$LR•IPV4•18『线路4』 +东南卫视,http://204.12.221.218:8181/3m1080p/dnws.m3u8$LR•IPV4•18『线路5』 +东南卫视,http://112.123.243.37:50085/tsfile/live/0113_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•18『线路6』 +东南卫视,http://118.81.195.79:9003/hls/24/index.m3u8$LR•IPV4•18『线路7』 +东南卫视,http://38.75.136.137:98/gslb/dsdqpub/dnwshd.m3u8?auth=testpub$LR•IPV4•18『线路8』 +东南卫视,https://hlsbkmgsplive.miguvideo.com/migu/kailu/dongnanws/51/20230724/01.m3u8?&HlsSubType=&encrypt=$LR•IPV4•18『线路9』 +东南卫视,http://23.237.228.134/live6/dongnan.m3u8$LR•IPV4•18『线路10』 +东南卫视,http://23.237.228.134/live8/gansu.m3u8$LR•IPV4•18『线路11』 +东南卫视,http://43.251.226.89:8080/play/49.m3u8$LR•IPV4•18『线路12』 +东南卫视,http://gfr.x3322.net:9901/tsfile/live/1099_1.m3u8$LR•IPV4•18『线路13』 +东南卫视,http://api.kkitv.itv888.cn:8080/hls/jjt15bvbl7a/index.m3u8$LR•IPV4•18『线路14』 +东南卫视,https://iptv.catvod.com/catvod.php?id=dnws$LR•IPV4•18『线路15』 +东南卫视,https://httop.top/ysp-东南卫视$LR•IPV4•18『线路16』 +东南卫视,http://iptv.huuc.edu.cn/hls/dnhd.m3u8$LR•IPV4•18『线路17』 +东南卫视,http://153.0.171.163:9901/tsfile/live/0137_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•18『线路18』 深圳卫视,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226959/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7EGrVNEZREjuNVKiTJo2mtwg%7EtP4-l0lmSfjwLWEfK_el1vH_mv-s1zo4AQJwdedaVwG9xkuFTDg8J26cwOrNJzn20BErrHdLhuZ9EzLUCD3PMW-OMx4MGteHV2vLeW6BqoY%2CEND$LR•IPV6•17『线路1』 深圳卫视,http://120.198.95.220:9901/tsfile/live/1048_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•17『线路2』 深圳卫视,http://120.198.95.220:9901/tsfile/live/1048_1.m3u8?key=txiptv$LR•IPV4•17『线路3』 @@ -457,65 +458,66 @@ CGTN阿语,https://0472.org/hls/cgtna.m3u8$LR•IPV4 深圳卫视,http://iptv.huuc.edu.cn/hls/szhd.m3u8$LR•IPV4•17『线路15』 深圳卫视,http://153.0.171.163:9901/tsfile/live/0126_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•17『线路16』 深圳卫视,http://38.64.72.148:80/hls/modn/list/4007/playlist.m3u8$LR•IPV4•17『线路17』 -广东卫视,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•12『线路1』 -广东卫视,http://112.27.235.94:8000/hls/30/index.m3u8$LR•IPV4•12『线路2』 -广东卫视,http://38.75.136.137:98/gslb/dsdqpub/gdwshd.m3u8?auth=testpub$LR•IPV4•12『线路3』 -广东卫视,http://23.237.228.134/live6/guangdong.m3u8$LR•IPV4•12『线路4』 -广东卫视,http://43.251.226.89:8080/play/38.m3u8$LR•IPV4•12『线路5』 -广东卫视,http://gfr.x3322.net:9901/tsfile/live/1096_1.m3u8$LR•IPV4•12『线路6』 -广东卫视,http://api.kkitv.itv888.cn:8080/hls/qr6872071g/index.m3u8$LR•IPV4•12『线路7』 -广东卫视,https://iptv.catvod.com/catvod.php?id=gdws$LR•IPV4•12『线路8』 -广东卫视,https://httop.top/ysp-广东卫视$LR•IPV4•12『线路9』 -广东卫视,http://iptv.huuc.edu.cn/hls/gdhd.m3u8$LR•IPV4•12『线路10』 -广东卫视,http://mg.hmysapp.cn:177/ckmg/zb.php?id=gdws$LR•IPV4•12『线路11』 -广东卫视,http://118.81.195.79:9003/hls/26/index.m3u8$LR•IPV4•12『线路12』 -广西卫视,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•16『线路1』 -广西卫视,http://113.15.109.216:59901/tsfile/live/0113_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•16『线路2』 -广西卫视,https://gd202.tv1288.xyz/tsfile/live/1028_1.m3u8$LR•IPV4•16『线路3』 -广西卫视,http://112.123.243.37:50085/tsfile/live/0137_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•16『线路4』 -广西卫视,http://101.66.194.63:9901/tsfile/live/0113_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•16『线路5』 -广西卫视,http://101.66.194.82:9901/tsfile/live/0113_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•16『线路6』 -广西卫视,http://36.136.38.87:9901/tsfile/live/0113_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•16『线路7』 -广西卫视,https://hlscdn.liangtv.cn/live/de0f97348eb84f62aa6b7d8cf0430770/dd505d87880c478f901f38560ca4d4e6.m3u8$LR•IPV4•16『线路8』 -广西卫视,http://38.75.136.137:98/gslb/dsdqpub/gxwshd.m3u8?auth=testpub$LR•IPV4•16『线路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•16『线路10』 -广西卫视,http://23.237.228.134/live6/guangxi.m3u8$LR•IPV4•16『线路11』 -广西卫视,http://23.237.228.134/live6/guizhou.m3u8$LR•IPV4•16『线路12』 -广西卫视,http://api.kkitv.itv888.cn:8080/hls/yvz4ndj9dqb/index.m3u8$LR•IPV4•16『线路13』 -广西卫视,https://iptv.catvod.com/catvod.php?id=gxws$LR•IPV4•16『线路14』 -广西卫视,https://httop.top/ysp-广西卫视$LR•IPV4•16『线路15』 -广西卫视,http://118.81.195.79:9003/hls/27/index.m3u8$LR•IPV4•16『线路16』 +广东卫视,http://t.061899.xyz/tl/tl.php?id=gdws$LR•IPV4•12『线路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•12『线路2』 +广东卫视,http://118.81.195.79:9003/hls/26/index.m3u8$LR•IPV4•12『线路3』 +广东卫视,http://38.75.136.137:98/gslb/dsdqpub/gdwshd.m3u8?auth=testpub$LR•IPV4•12『线路4』 +广东卫视,http://23.237.228.134/live6/guangdong.m3u8$LR•IPV4•12『线路5』 +广东卫视,http://43.251.226.89:8080/play/38.m3u8$LR•IPV4•12『线路6』 +广东卫视,http://gfr.x3322.net:9901/tsfile/live/1096_1.m3u8$LR•IPV4•12『线路7』 +广东卫视,http://api.kkitv.itv888.cn:8080/hls/qr6872071g/index.m3u8$LR•IPV4•12『线路8』 +广东卫视,https://iptv.catvod.com/catvod.php?id=gdws$LR•IPV4•12『线路9』 +广东卫视,https://httop.top/ysp-广东卫视$LR•IPV4•12『线路10』 +广东卫视,http://iptv.huuc.edu.cn/hls/gdhd.m3u8$LR•IPV4•12『线路11』 +广东卫视,http://mg.hmysapp.cn:177/ckmg/zb.php?id=gdws$LR•IPV4•12『线路12』 +广西卫视,http://t.061899.xyz/tl/tl.php?id=gxws$LR•IPV4•16『线路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•16『线路2』 +广西卫视,http://113.15.109.216:59901/tsfile/live/0113_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•16『线路3』 +广西卫视,https://gd202.tv1288.xyz/tsfile/live/1028_1.m3u8$LR•IPV4•16『线路4』 +广西卫视,http://112.123.243.37:50085/tsfile/live/0137_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•16『线路5』 +广西卫视,http://101.66.194.63:9901/tsfile/live/0113_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•16『线路6』 +广西卫视,http://101.66.194.82:9901/tsfile/live/0113_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•16『线路7』 +广西卫视,http://36.136.38.87:9901/tsfile/live/0113_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•16『线路8』 +广西卫视,http://118.81.195.79:9003/hls/27/index.m3u8$LR•IPV4•16『线路9』 +广西卫视,http://38.75.136.137:98/gslb/dsdqpub/gxwshd.m3u8?auth=testpub$LR•IPV4•16『线路10』 +广西卫视,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•16『线路11』 +广西卫视,http://23.237.228.134/live6/guangxi.m3u8$LR•IPV4•16『线路12』 +广西卫视,http://23.237.228.134/live6/guizhou.m3u8$LR•IPV4•16『线路13』 +广西卫视,http://api.kkitv.itv888.cn:8080/hls/yvz4ndj9dqb/index.m3u8$LR•IPV4•16『线路14』 +广西卫视,https://iptv.catvod.com/catvod.php?id=gxws$LR•IPV4•16『线路15』 +广西卫视,https://httop.top/ysp-广西卫视$LR•IPV4•16『线路16』 厦门卫视,http://183.11.239.36:808/hls/17/index.m3u8$LR•IPV4•4『线路1』 -厦门卫视,https://iptv.catvod.com/catvod.php?id=xmws$LR•IPV4•4『线路2』 -厦门卫视,http://223.110.245.159/ott.js.chinamobile.com/PLTV/3/224/3221226996/index.m3u8$LR•IPV4•4『线路3』 -厦门卫视,http://112.25.48.68/live/program/live/xmws/1300000/mnf.m3u8$LR•IPV4•4『线路4』 -甘肃卫视,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•5『线路1』 -甘肃卫视,http://112.123.243.37:50085/tsfile/live/0123_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•5『线路2』 -甘肃卫视,https://iptv.catvod.com/catvod.php?id=gsws$LR•IPV4•5『线路3』 -甘肃卫视,https://httop.top/ysp-甘肃卫视$LR•IPV4•5『线路4』 -甘肃卫视,http://118.81.195.79:9003/hls/25/index.m3u8$LR•IPV4•5『线路5』 -贵州卫视,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•16『线路1』 -贵州卫视,http://112.123.243.37:50085/tsfile/live/0130_2.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•16『线路2』 -贵州卫视,http://120.198.95.220:9901/tsfile/live/1052_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•16『线路3』 -贵州卫视,http://222.214.208.34:59901/tsfile/live/0120_1.m3u8$LR•IPV4•16『线路4』 -贵州卫视,http://198.204.228.26/live/gzwshd.m3u8$LR•IPV4•16『线路5』 -贵州卫视,http://36.136.38.87:9901/tsfile/live/0120_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•16『线路6』 -贵州卫视,http://112.27.235.94:8000/hls/46/index.m3u8$LR•IPV4•16『线路7』 -贵州卫视,http://38.75.136.137:98/gslb/dsdqpub/gzwshd.m3u8?auth=testpub$LR•IPV4•16『线路8』 -贵州卫视,http://23.237.228.134/live6/hainan.m3u8$LR•IPV4•16『线路9』 -贵州卫视,http://gfr.x3322.net:9901/tsfile/live/1100_1.m3u8$LR•IPV4•16『线路10』 -贵州卫视,http://api.kkitv.itv888.cn:8080/hls/5dqtpf3arun/index.m3u8$LR•IPV4•16『线路11』 -贵州卫视,https://iptv.catvod.com/catvod.php?id=gzws$LR•IPV4•16『线路12』 -贵州卫视,https://httop.top/ysp-贵州卫视$LR•IPV4•16『线路13』 -贵州卫视,http://153.0.171.163:9901/tsfile/live/0120_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•16『线路14』 -贵州卫视,http://183.207.248.71/gitv/live1/G_GUIZHOU/G_GUIZHOU$LR•IPV4•16『线路15』 -贵州卫视,http://39.134.115.163:8080/PLTV/88888910/224/3221225728/index.m3u8$LR•IPV4•16『线路16』 +厦门卫视,http://223.110.245.159/ott.js.chinamobile.com/PLTV/3/224/3221226996/index.m3u8$LR•IPV4•4『线路2』 +厦门卫视,http://112.25.48.68/live/program/live/xmws/1300000/mnf.m3u8$LR•IPV4•4『线路3』 +厦门卫视,https://iptv.catvod.com/catvod.php?id=xmws$LR•IPV4•4『线路4』 +甘肃卫视,http://t.061899.xyz/tl/tl.php?id=gsws$LR•IPV4•6『线路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•6『线路2』 +甘肃卫视,http://112.123.243.37:50085/tsfile/live/0123_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•6『线路3』 +甘肃卫视,http://118.81.195.79:9003/hls/25/index.m3u8$LR•IPV4•6『线路4』 +甘肃卫视,https://iptv.catvod.com/catvod.php?id=gsws$LR•IPV4•6『线路5』 +甘肃卫视,https://httop.top/ysp-甘肃卫视$LR•IPV4•6『线路6』 +贵州卫视,http://t.061899.xyz/tl/tl.php?id=gzws$LR•IPV4•16『线路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•16『线路2』 +贵州卫视,http://112.123.243.37:50085/tsfile/live/0130_2.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•16『线路3』 +贵州卫视,http://120.198.95.220:9901/tsfile/live/1052_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•16『线路4』 +贵州卫视,http://222.214.208.34:59901/tsfile/live/0120_1.m3u8$LR•IPV4•16『线路5』 +贵州卫视,http://198.204.228.26/live/gzwshd.m3u8$LR•IPV4•16『线路6』 +贵州卫视,http://36.136.38.87:9901/tsfile/live/0120_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•16『线路7』 +贵州卫视,http://183.207.248.71/gitv/live1/G_GUIZHOU/G_GUIZHOU$LR•IPV4•16『线路8』 +贵州卫视,http://39.134.115.163:8080/PLTV/88888910/224/3221225728/index.m3u8$LR•IPV4•16『线路9』 +贵州卫视,http://38.75.136.137:98/gslb/dsdqpub/gzwshd.m3u8?auth=testpub$LR•IPV4•16『线路10』 +贵州卫视,http://23.237.228.134/live6/hainan.m3u8$LR•IPV4•16『线路11』 +贵州卫视,http://gfr.x3322.net:9901/tsfile/live/1100_1.m3u8$LR•IPV4•16『线路12』 +贵州卫视,http://api.kkitv.itv888.cn:8080/hls/5dqtpf3arun/index.m3u8$LR•IPV4•16『线路13』 +贵州卫视,https://iptv.catvod.com/catvod.php?id=gzws$LR•IPV4•16『线路14』 +贵州卫视,https://httop.top/ysp-贵州卫视$LR•IPV4•16『线路15』 +贵州卫视,http://153.0.171.163:9901/tsfile/live/0120_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•16『线路16』 河北卫视,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•13『线路1』 河北卫视,http://101.66.194.63:9901/tsfile/live/0117_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•13『线路2』 河北卫视,http://101.66.199.247:9901/tsfile/live/0117_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•13『线路3』 河北卫视,http://204.12.221.218:8181/3m1080p/hews.m3u8$LR•IPV4•13『线路4』 河北卫视,http://event.pull.hebtv.com/jishi/weishi_tingyun.m3u8$LR•IPV4•13『线路5』 -河北卫视,http://120.76.248.139/live/bfgd/4200000108.m3u8$LR•IPV4•13『线路6』 +河北卫视,http://112.27.235.94:8000/hls/39/index.m3u8$LR•IPV4•13『线路6』 河北卫视,http://23.237.228.134/live8/hebei.m3u8$LR•IPV4•13『线路7』 河北卫视,http://43.251.226.89:8080/play/42.m3u8$LR•IPV4•13『线路8』 河北卫视,http://gfr.x3322.net:9901/tsfile/live/1091_1.m3u8$LR•IPV4•13『线路9』 @@ -523,211 +525,212 @@ CGTN阿语,https://0472.org/hls/cgtna.m3u8$LR•IPV4 河北卫视,https://httop.top/ysp-河北卫视$LR•IPV4•13『线路11』 河北卫视,http://iptv.huuc.edu.cn/hls/hebhd.m3u8$LR•IPV4•13『线路12』 河北卫视,http://153.0.171.163:9901/tsfile/live/0117_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•13『线路13』 -河南卫视,http://tvcdn.stream3.hndt.com/tv/65bd329b017e1000648cd2ed00000000_transios/playlist.m3u8?wsSecret=ca9a9194ec9a95ed2539e69d07b645d5&wsTime=1784134111$LR•IPV4•12『线路1』 +河南卫视,http://t.061899.xyz/tl/tl.php?id=hnws$LR•IPV4•12『线路1』 河南卫视,http://101.66.195.138:9901/tsfile/live/0139_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•12『线路2』 河南卫视,http://38.75.136.137:98/gslb/dsdqpub/hawshd.m3u8?auth=testpub$LR•IPV4•12『线路3』 河南卫视,http://63.141.230.178:82/gslb/zbdq5.m3u8?id=hawshd$LR•IPV4•12『线路4』 河南卫视,http://221.226.51.220:50081/newlive/live/hls/37/live.m3u8$LR•IPV4•12『线路5』 河南卫视,http://153.0.171.163:9901/tsfile/live/0139_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•12『线路6』 -河南卫视,http://112.27.235.94:8000/hls/37/index.m3u8$LR•IPV4•12『线路7』 -河南卫视,http://23.237.228.134/live6/henan.m3u8$LR•IPV4•12『线路8』 -河南卫视,http://43.251.226.89:8080/play/44.m3u8$LR•IPV4•12『线路9』 -河南卫视,https://iptv.catvod.com/catvod.php?id=hnws$LR•IPV4•12『线路10』 -河南卫视,https://httop.top/ysp-河南卫视$LR•IPV4•12『线路11』 -河南卫视,http://118.81.195.79:9003/hls/30/index.m3u8$LR•IPV4•12『线路12』 +河南卫视,http://tvcdn.stream3.hndt.com/tv/65bd329b017e1000648cd2ed00000000_transios/playlist.m3u8?wsSecret=ca9a9194ec9a95ed2539e69d07b645d5&wsTime=1784134111$LR•IPV4•12『线路7』 +河南卫视,http://118.81.195.79:9003/hls/30/index.m3u8$LR•IPV4•12『线路8』 +河南卫视,http://23.237.228.134/live6/henan.m3u8$LR•IPV4•12『线路9』 +河南卫视,http://43.251.226.89:8080/play/44.m3u8$LR•IPV4•12『线路10』 +河南卫视,https://iptv.catvod.com/catvod.php?id=hnws$LR•IPV4•12『线路11』 +河南卫视,https://httop.top/ysp-河南卫视$LR•IPV4•12『线路12』 黑龙江卫视,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226965/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7E7UiKL56-L86ihmTWaZ6csw%7EtP4-l0lmSfjwLWEfK_el1vH_mv-s1zo4AQJwdedaVwG9xkuFTDg8J26cwOrNJzn20BErrHdLhuZ9EzLUCD3PMW-OMx4MGteHV2vLeW6BqoY%2CEND$LR•IPV6•12『线路1』 黑龙江卫视,http://101.66.199.247:9901/tsfile/live/0143_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•12『线路2』 黑龙江卫视,http://38.75.136.137:98/gslb/dsdqpub/hljwshd.m3u8?auth=testpub$LR•IPV4•12『线路3』 黑龙江卫视,http://198.204.228.26/live/hljwshd.m3u8$LR•IPV4•12『线路4』 黑龙江卫视,http://112.27.235.94:8000/hls/48/index.m3u8$LR•IPV4•12『线路5』 -黑龙江卫视,http://23.237.228.134/live6/heilongjiang.m3u8$LR•IPV4•12『线路6』 -黑龙江卫视,http://gfr.x3322.net:9901/tsfile/live/1094_1.m3u8$LR•IPV4•12『线路7』 -黑龙江卫视,http://api.kkitv.itv888.cn:8080/hls/2a24lcvser/index.m3u8$LR•IPV4•12『线路8』 -黑龙江卫视,https://iptv.catvod.com/catvod.php?id=hljws$LR•IPV4•12『线路9』 -黑龙江卫视,https://httop.top/ysp-黑龙江卫视$LR•IPV4•12『线路10』 -黑龙江卫视,http://iptv.huuc.edu.cn/hls/hljhd.m3u8$LR•IPV4•12『线路11』 -黑龙江卫视,http://118.81.195.79:9003/hls/31/index.m3u8$LR•IPV4•12『线路12』 -湖北卫视,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226952/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7EREB40lnZnCEwjRy7LZuhIQ%7EtP4-l0lmSfjwLWEfK_el1vH_mv-s1zo4AQJwdedaVwG9xkuFTDg8J26cwOrNJzn20BErrHdLhuZ9EzLUCD3PMW-OMx4MGteHV2vLeW6BqoY%2CEND$LR•IPV6•14『线路1』 -湖北卫视,http://112.27.235.94:8000/hls/41/index.m3u8$LR•IPV4•14『线路2』 -湖北卫视,http://38.75.136.137:98/gslb/dsdqpub/hbwshd.m3u8?auth=testpub$LR•IPV4•14『线路3』 -湖北卫视,http://23.237.228.134/live6/hubei.m3u8$LR•IPV4•14『线路4』 -湖北卫视,http://43.251.226.89:8080/play/46.m3u8$LR•IPV4•14『线路5』 -湖北卫视,http://gfr.x3322.net:9901/tsfile/live/1088_1.m3u8$LR•IPV4•14『线路6』 -湖北卫视,http://api.kkitv.itv888.cn:8080/hls/qwummpaoaq/index.m3u8$LR•IPV4•14『线路7』 -湖北卫视,https://iptv.catvod.com/catvod.php?id=hubws$LR•IPV4•14『线路8』 -湖北卫视,https://httop.top/ysp-湖北卫视$LR•IPV4•14『线路9』 -湖北卫视,http://iptv.huuc.edu.cn/hls/hbhd.m3u8$LR•IPV4•14『线路10』 -湖北卫视,http://mg.hmysapp.cn:177/ckmg/zb.php?id=hubws$LR•IPV4•14『线路11』 -湖北卫视,http://153.0.171.163:9901/tsfile/live/0132_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•14『线路12』 -湖北卫视,http://www.745612.xyz:7788/rtp/235.254.198.72:1564$LR•IPV4•14『线路13』 -湖北卫视,http://118.81.195.79:9003/hls/32/index.m3u8$LR•IPV4•14『线路14』 -江西卫视,https://jsp-tv-live.jxtvcn.com.cn/live-jsp/tv_jxtv6.m3u8?t=1784004704&token=67a59c29-de6e-4407-90c8-39f7e099b3db&d=0a7a8c487c454bc7bb02a60298283c5e$LR•IPV4•16『线路1』 -江西卫视,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226956/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7Ei6ZIpVizXlewg-YfGvH8dA%7EtP4-l0lmSfjwLWEfK_el1vH_mv-s1zo4AQJwdedaVwG9xkuFTDg8J26cwOrNJzn20BErrHdLhuZ9EzLUCD3PMW-OMx4MGteHV2vLeW6BqoY%2CEND$LR•IPV6•16『线路2』 -江西卫视,http://101.66.199.247:9901/tsfile/live/0138_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•16『线路3』 -江西卫视,http://112.123.243.37:50085/tsfile/live/0132_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•16『线路4』 -江西卫视,http://124.228.160.210:9901/tsfile/live/0138_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•16『线路5』 -江西卫视,http://153.0.171.163:9901/tsfile/live/0138_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•16『线路6』 -江西卫视,http://112.27.235.94:8000/hls/44/index.m3u8$LR•IPV4•16『线路7』 -江西卫视,http://38.75.136.137:98/gslb/dsdqpub/jxwshd.m3u8?auth=testpub$LR•IPV4•16『线路8』 -江西卫视,http://23.237.228.134/live8/jiangxi.m3u8$LR•IPV4•16『线路9』 -江西卫视,http://43.251.226.89:8080/play/43.m3u8$LR•IPV4•16『线路10』 -江西卫视,http://api.kkitv.itv888.cn:8080/hls/pv0np60bpin/index.m3u8$LR•IPV4•16『线路11』 -江西卫视,https://iptv.catvod.com/catvod.php?id=jxws$LR•IPV4•16『线路12』 -江西卫视,https://httop.top/ysp-江西卫视$LR•IPV4•16『线路13』 -江西卫视,http://iptv.huuc.edu.cn/hls/jxhd.m3u8$LR•IPV4•16『线路14』 -江西卫视,http://mg.hmysapp.cn:177/ckmg/zb.php?id=jxws$LR•IPV4•16『线路15』 -江西卫视,http://39.134.115.163:8080/PLTV/88888910/224/3221225705/index.m3u8$LR•IPV4•16『线路16』 -吉林卫视,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•17『线路1』 -吉林卫视,http://204.12.221.218:8181/3m1080p/jlws.m3u8$LR•IPV4•17『线路2』 -吉林卫视,http://38.75.136.137:98/gslb/dsdqpub/jlwshd.m3u8?auth=testpub$LR•IPV4•17『线路3』 -吉林卫视,http://112.123.243.37:50085/tsfile/live/0116_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•17『线路4』 -吉林卫视,http://101.66.199.247:9901/tsfile/live/0116_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•17『线路5』 -吉林卫视,http://101.66.194.82:9901/tsfile/live/0116_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•17『线路6』 -吉林卫视,http://36.136.38.87:9901/tsfile/live/0116_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•17『线路7』 -吉林卫视,http://101.66.194.63:9901/tsfile/live/0116_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•17『线路8』 -吉林卫视,http://101.66.195.138:9901/tsfile/live/0116_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•17『线路9』 -吉林卫视,http://153.0.171.163:9901/tsfile/live/0116_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•17『线路10』 -吉林卫视,http://123.130.84.106:8154/tsfile/live/0116_1.m3u8$LR•IPV4•17『线路11』 -吉林卫视,http://23.237.228.134/live8/jilin.m3u8$LR•IPV4•17『线路12』 -吉林卫视,http://43.251.226.89:8080/play/47.m3u8$LR•IPV4•17『线路13』 -吉林卫视,http://api.kkitv.itv888.cn:8080/hls/b6dl8yuvu/index.m3u$LR•IPV4•17『线路14』 -吉林卫视,https://iptv.catvod.com/catvod.php?id=jlws$LR•IPV4•17『线路15』 -吉林卫视,https://httop.top/ysp-吉林卫视$LR•IPV4•17『线路16』 -吉林卫视,http://118.81.195.79:9003/hls/34/index.m3u8$LR•IPV4•17『线路17』 -内蒙古卫视,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•14『线路1』 -内蒙古卫视,http://198.204.228.26/live/nmgws.m3u8$LR•IPV4•14『线路2』 -内蒙古卫视,http://192.151.150.154/live/nmgws.m3u8$LR•IPV4•14『线路3』 -内蒙古卫视,http://112.123.243.37:50085/tsfile/live/0118_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•14『线路4』 -内蒙古卫视,http://59.39.89.130:60901/tsfile/live/0125_21.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•14『线路5』 -内蒙古卫视,http://153.0.171.163:9901/tsfile/live/0109_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•14『线路6』 -内蒙古卫视,http://112.27.235.94:8000/hls/49/index.m3u8$LR•IPV4•14『线路7』 -内蒙古卫视,http://23.237.228.134/live8/neimenggu.m3u8$LR•IPV4•14『线路8』 -内蒙古卫视,https://iptv.catvod.com/catvod.php?id=nmws$LR•IPV4•14『线路9』 -内蒙古卫视,https://httop.top/ysp-内蒙古卫视$LR•IPV4•14『线路10』 -内蒙古卫视,http://39.134.115.163:8080/PLTV/88888910/224/3221225667/index.m3u8$LR•IPV4•14『线路11』 -内蒙古卫视,http://117.169.120.140:8080/live/neimenggustv/.m3u8$LR•IPV4•14『线路12』 -内蒙古卫视,http://183.207.248.71/gitv/live1/G_NEIMENGGU/G_NEIMENGGU$LR•IPV4•14『线路13』 -内蒙古卫视,http://223.110.245.173/PLTV/4/224/3221225836/index.m3u8$LR•IPV4•14『线路14』 -辽宁卫视,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•16『线路1』 -辽宁卫视,http://101.66.195.138:9901/tsfile/live/0121_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•16『线路2』 -辽宁卫视,http://107.150.60.122/live/lnwshd.m3u8$LR•IPV4•16『线路3』 -辽宁卫视,http://204.12.221.218:8181/3m1080p/lnws.m3u8$LR•IPV4•16『线路4』 -辽宁卫视,http://153.0.171.163:9901/tsfile/live/0121_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•16『线路5』 -辽宁卫视,http://112.27.235.94:8000/hls/47/index.m3u8$LR•IPV4•16『线路6』 -辽宁卫视,http://38.75.136.137:98/gslb/dsdqpub/lnwshd.m3u8?auth=testpub$LR•IPV4•16『线路7』 -辽宁卫视,https://hlsbkmgsplive.miguvideo.com/migu/kailu/lnwshd265/54/20200407/01.m3u8?&HlsSubType=&encrypt=$LR•IPV4•16『线路8』 -辽宁卫视,http://23.237.228.134/live8/liaoning.m3u8$LR•IPV4•16『线路9』 -辽宁卫视,http://43.251.226.89:8080/play/41.m3u8$LR•IPV4•16『线路10』 -辽宁卫视,http://gfr.x3322.net:9901/tsfile/live/1097_1.m3u8$LR•IPV4•16『线路11』 -辽宁卫视,http://api.kkitv.itv888.cn:8080/hls/iibq0absdjr/index.m3u8$LR•IPV4•16『线路12』 -辽宁卫视,https://iptv.catvod.com/catvod.php?id=lnws$LR•IPV4•16『线路13』 -辽宁卫视,https://httop.top/ysp-辽宁卫视$LR•IPV4•16『线路14』 -辽宁卫视,http://iptv.huuc.edu.cn/hls/lnhd.m3u8$LR•IPV4•16『线路15』 -辽宁卫视,http://39.134.39.37/PLTV/88888888/224/3221226209/index.m3u8$LR•IPV4•16『线路16』 -宁夏卫视,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•10『线路1』 -宁夏卫视,http://107.150.60.122/live/nxws.m3u8$LR•IPV4•10『线路2』 -宁夏卫视,http://198.204.228.26/live/nxws.m3u8$LR•IPV4•10『线路3』 -宁夏卫视,http://112.123.243.37:50085/tsfile/live/0125_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•10『线路4』 -宁夏卫视,http://153.0.171.163:9901/tsfile/live/0112_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•10『线路5』 -宁夏卫视,http://120.76.248.139/live/bfgd/4200000118.m3u8$LR•IPV4•10『线路6』 -宁夏卫视,http://43.251.226.89:8080/play/54.m3u8$LR•IPV4•10『线路7』 -宁夏卫视,https://iptv.catvod.com/catvod.php?id=nxws$LR•IPV4•10『线路8』 -宁夏卫视,https://httop.top/ysp-宁夏卫视$LR•IPV4•10『线路9』 -宁夏卫视,http://39.134.115.163:8080/PLTV/88888910/224/3221225726/index.m3u8$LR•IPV4•10『线路10』 -青海卫视,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221227017/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7EacviHy_ucMT27Ymf2iLtZA%7EtP4-l0lmSfjwLWEfK_el1vH_mv-s1zo4AQJwdedaVwG9xkuFTDg8J26cwOrNJzn20BErrHdLhuZ9EzLUCD3PMW-OMx4MGteHV2vLeW6BqoY%2CEND$LR•IPV6•10『线路1』 -青海卫视,http://63.141.230.178:82/gslb/zbdq5.m3u8?id=qhws$LR•IPV4•10『线路2』 -青海卫视,http://107.150.60.122/live/qhws.m3u8$LR•IPV4•10『线路3』 -青海卫视,http://153.0.171.163:9901/tsfile/live/0140_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•10『线路4』 -青海卫视,http://123.130.84.106:8154/tsfile/live/0140_1.m3u8$LR•IPV4•10『线路5』 -青海卫视,http://23.237.228.134/live8/qinghai.m3u8$LR•IPV4•10『线路6』 -青海卫视,http://43.251.226.89:8080/play/48.m3u8$LR•IPV4•10『线路7』 -青海卫视,https://iptv.catvod.com/catvod.php?id=qhws$LR•IPV4•10『线路8』 -青海卫视,https://httop.top/ysp-青海卫视$LR•IPV4•10『线路9』 -青海卫视,http://live.geermurmt.com/qhws/sd/live.m3u8$LR•IPV4•10『线路10』 -山东卫视,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226957/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7EjW26v5VaHGy1jQuIA-4EbA%7EtP4-l0lmSfjwLWEfK_el1vH_mv-s1zo4AQJwdedaVwG9xkuFTDg8J26cwOrNJzn20BErrHdLhuZ9EzLUCD3PMW-OMx4MGteHV2vLeW6BqoY%2CEND$LR•IPV6•17『线路1』 -山东卫视,http://207.56.13.146:81/cdnlive/sdws.m3u8$LR•IPV4•17『线路2』 -山东卫视,http://63.141.230.178:82/gslb/zbdq5.m3u8?id=sdwshd$LR•IPV4•17『线路3』 -山东卫视,http://120.198.95.220:9901/tsfile/live/1063_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•17『线路4』 -山东卫视,http://153.0.171.163:9901/tsfile/live/0131_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•17『线路5』 -山东卫视,http://112.27.235.94:8000/hls/34/index.m3u8$LR•IPV4•17『线路6』 -山东卫视,http://38.75.136.137:98/gslb/dsdqpub/sdwshd.m3u8?auth=testpub$LR•IPV4•17『线路7』 -山东卫视,https://hlsbkmgsplive.miguvideo.com/wd_r4/yg/shandongwshd/3000/01.m3u8?&HlsSubType=&encrypt=$LR•IPV4•17『线路8』 -山东卫视,https://hlsbkmgsplive.miguvideo.com/wd-shandonghd-1200/01.m3u8?&HlsSubType=&encrypt=$LR•IPV4•17『线路9』 -山东卫视,http://23.237.228.134/live8/shandong.m3u8$LR•IPV4•17『线路10』 -山东卫视,http://gfr.x3322.net:9901/tsfile/live/1098_1.m3u8$LR•IPV4•17『线路11』 -山东卫视,http://api.kkitv.itv888.cn:8080/hls/6gcdai13om5/index.m3u8$LR•IPV4•17『线路12』 -山东卫视,https://iptv.catvod.com/catvod.php?id=sdws$LR•IPV4•17『线路13』 -山东卫视,https://httop.top/ysp-山东卫视$LR•IPV4•17『线路14』 -山东卫视,http://iptv.huuc.edu.cn/hls/sdhd.m3u8$LR•IPV4•17『线路15』 -山东卫视,http://125.210.152.18:9090/live/SDWSHD_H265.m3u8$LR•IPV4•17『线路16』 -山东卫视,http://39.134.115.163:8080/PLTV/88888910/224/3221225697/index.m3u8$LR•IPV4•17『线路17』 -天津卫视,https://piccpndks.v.kcdnvip.com/audio/tianjin_2/index.m3u8$LR•IPV4•18『线路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•18『线路2』 -天津卫视,http://204.12.221.218:8181/3m1080p/tjws.m3u8$LR•IPV4•18『线路3』 -天津卫视,http://107.150.60.122/live/tjwshd.m3u8$LR•IPV4•18『线路4』 -天津卫视,http://192.151.150.154/live/tjwshd.m3u8$LR•IPV4•18『线路5』 -天津卫视,http://38.75.136.137:98/gslb/dsdqpub/tjwshd.m3u8?auth=testpub$LR•IPV4•18『线路6』 -天津卫视,http://63.141.230.178:82/gslb/zbdq5.m3u8?id=tjwshd$LR•IPV4•18『线路7』 -天津卫视,http://207.56.13.146:81/cdnlive/tjws.m3u8$LR•IPV4•18『线路8』 -天津卫视,http://120.198.95.220:9901/tsfile/live/1067_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•18『线路9』 -天津卫视,http://112.27.235.94:8000/hls/42/index.m3u8$LR•IPV4•18『线路10』 -天津卫视,http://23.237.228.134/live8/tianjing.m3u8$LR•IPV4•18『线路11』 -天津卫视,http://gfr.x3322.net:9901/tsfile/live/1090_1.m3u8$LR•IPV4•18『线路12』 -天津卫视,http://api.kkitv.itv888.cn:8080/hls/z2lkdkrb4w/index.m3u8$LR•IPV4•18『线路13』 -天津卫视,https://iptv.catvod.com/catvod.php?id=tjws$LR•IPV4•18『线路14』 -天津卫视,https://httop.top/ysp-天津卫视$LR•IPV4•18『线路15』 -天津卫视,http://iptv.huuc.edu.cn/hls/tjhd.m3u8$LR•IPV4•18『线路16』 -天津卫视,http://153.0.171.163:9901/tsfile/live/0135_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•18『线路17』 -天津卫视,http://39.134.115.163:8080/PLTV/88888910/224/3221225698/index.m3u8$LR•IPV4•18『线路18』 -海南卫视,https://livelyws.chinamcache.com/lyws/zb03.m3u8$LR•IPV4•8『线路1』 +黑龙江卫视,http://118.81.195.79:9003/hls/31/index.m3u8$LR•IPV4•12『线路6』 +黑龙江卫视,http://23.237.228.134/live6/heilongjiang.m3u8$LR•IPV4•12『线路7』 +黑龙江卫视,http://gfr.x3322.net:9901/tsfile/live/1094_1.m3u8$LR•IPV4•12『线路8』 +黑龙江卫视,http://api.kkitv.itv888.cn:8080/hls/2a24lcvser/index.m3u8$LR•IPV4•12『线路9』 +黑龙江卫视,https://iptv.catvod.com/catvod.php?id=hljws$LR•IPV4•12『线路10』 +黑龙江卫视,https://httop.top/ysp-黑龙江卫视$LR•IPV4•12『线路11』 +黑龙江卫视,http://iptv.huuc.edu.cn/hls/hljhd.m3u8$LR•IPV4•12『线路12』 +湖北卫视,http://t.061899.xyz/tl/tl.php?id=hubws$LR•IPV4•14『线路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•14『线路2』 +湖北卫视,http://118.81.195.79:9003/hls/32/index.m3u8$LR•IPV4•14『线路3』 +湖北卫视,http://38.75.136.137:98/gslb/dsdqpub/hbwshd.m3u8?auth=testpub$LR•IPV4•14『线路4』 +湖北卫视,http://23.237.228.134/live6/hubei.m3u8$LR•IPV4•14『线路5』 +湖北卫视,http://43.251.226.89:8080/play/46.m3u8$LR•IPV4•14『线路6』 +湖北卫视,http://gfr.x3322.net:9901/tsfile/live/1088_1.m3u8$LR•IPV4•14『线路7』 +湖北卫视,http://api.kkitv.itv888.cn:8080/hls/qwummpaoaq/index.m3u8$LR•IPV4•14『线路8』 +湖北卫视,https://iptv.catvod.com/catvod.php?id=hubws$LR•IPV4•14『线路9』 +湖北卫视,https://httop.top/ysp-湖北卫视$LR•IPV4•14『线路10』 +湖北卫视,http://iptv.huuc.edu.cn/hls/hbhd.m3u8$LR•IPV4•14『线路11』 +湖北卫视,http://mg.hmysapp.cn:177/ckmg/zb.php?id=hubws$LR•IPV4•14『线路12』 +湖北卫视,http://153.0.171.163:9901/tsfile/live/0132_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•14『线路13』 +湖北卫视,http://www.745612.xyz:7788/rtp/235.254.198.72:1564$LR•IPV4•14『线路14』 +江西卫视,http://t.061899.xyz/tl/tl.php?id=jxws$LR•IPV4•15『线路1』 +江西卫视,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226956/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7Ei6ZIpVizXlewg-YfGvH8dA%7EtP4-l0lmSfjwLWEfK_el1vH_mv-s1zo4AQJwdedaVwG9xkuFTDg8J26cwOrNJzn20BErrHdLhuZ9EzLUCD3PMW-OMx4MGteHV2vLeW6BqoY%2CEND$LR•IPV6•15『线路2』 +江西卫视,http://101.66.199.247:9901/tsfile/live/0138_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•15『线路3』 +江西卫视,http://112.123.243.37:50085/tsfile/live/0132_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•15『线路4』 +江西卫视,http://124.228.160.210:9901/tsfile/live/0138_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•15『线路5』 +江西卫视,http://153.0.171.163:9901/tsfile/live/0138_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•15『线路6』 +江西卫视,http://39.134.115.163:8080/PLTV/88888910/224/3221225705/index.m3u8$LR•IPV4•15『线路7』 +江西卫视,http://38.75.136.137:98/gslb/dsdqpub/jxwshd.m3u8?auth=testpub$LR•IPV4•15『线路8』 +江西卫视,http://23.237.228.134/live8/jiangxi.m3u8$LR•IPV4•15『线路9』 +江西卫视,http://43.251.226.89:8080/play/43.m3u8$LR•IPV4•15『线路10』 +江西卫视,http://api.kkitv.itv888.cn:8080/hls/pv0np60bpin/index.m3u8$LR•IPV4•15『线路11』 +江西卫视,https://iptv.catvod.com/catvod.php?id=jxws$LR•IPV4•15『线路12』 +江西卫视,https://httop.top/ysp-江西卫视$LR•IPV4•15『线路13』 +江西卫视,http://iptv.huuc.edu.cn/hls/jxhd.m3u8$LR•IPV4•15『线路14』 +江西卫视,http://mg.hmysapp.cn:177/ckmg/zb.php?id=jxws$LR•IPV4•15『线路15』 +吉林卫视,http://t.061899.xyz/tl/tl.php?id=jlws$LR•IPV4•17『线路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•17『线路2』 +吉林卫视,http://204.12.221.218:8181/3m1080p/jlws.m3u8$LR•IPV4•17『线路3』 +吉林卫视,http://38.75.136.137:98/gslb/dsdqpub/jlwshd.m3u8?auth=testpub$LR•IPV4•17『线路4』 +吉林卫视,http://112.123.243.37:50085/tsfile/live/0116_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•17『线路5』 +吉林卫视,http://101.66.199.247:9901/tsfile/live/0116_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•17『线路6』 +吉林卫视,http://101.66.194.82:9901/tsfile/live/0116_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•17『线路7』 +吉林卫视,http://36.136.38.87:9901/tsfile/live/0116_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•17『线路8』 +吉林卫视,http://101.66.194.63:9901/tsfile/live/0116_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•17『线路9』 +吉林卫视,http://101.66.195.138:9901/tsfile/live/0116_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•17『线路10』 +吉林卫视,http://153.0.171.163:9901/tsfile/live/0116_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•17『线路11』 +吉林卫视,http://118.81.195.79:9003/hls/34/index.m3u8$LR•IPV4•17『线路12』 +吉林卫视,http://23.237.228.134/live8/jilin.m3u8$LR•IPV4•17『线路13』 +吉林卫视,http://43.251.226.89:8080/play/47.m3u8$LR•IPV4•17『线路14』 +吉林卫视,http://api.kkitv.itv888.cn:8080/hls/b6dl8yuvu/index.m3u$LR•IPV4•17『线路15』 +吉林卫视,https://iptv.catvod.com/catvod.php?id=jlws$LR•IPV4•17『线路16』 +吉林卫视,https://httop.top/ysp-吉林卫视$LR•IPV4•17『线路17』 +内蒙古卫视,http://t.061899.xyz/tl/tl.php?id=nmws$LR•IPV4•14『线路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•14『线路2』 +内蒙古卫视,http://198.204.228.26/live/nmgws.m3u8$LR•IPV4•14『线路3』 +内蒙古卫视,http://192.151.150.154/live/nmgws.m3u8$LR•IPV4•14『线路4』 +内蒙古卫视,http://112.123.243.37:50085/tsfile/live/0118_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•14『线路5』 +内蒙古卫视,http://59.39.89.130:60901/tsfile/live/0125_21.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•14『线路6』 +内蒙古卫视,http://153.0.171.163:9901/tsfile/live/0109_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•14『线路7』 +内蒙古卫视,http://39.134.115.163:8080/PLTV/88888910/224/3221225667/index.m3u8$LR•IPV4•14『线路8』 +内蒙古卫视,http://117.169.120.140:8080/live/neimenggustv/.m3u8$LR•IPV4•14『线路9』 +内蒙古卫视,http://183.207.248.71/gitv/live1/G_NEIMENGGU/G_NEIMENGGU$LR•IPV4•14『线路10』 +内蒙古卫视,http://223.110.245.173/PLTV/4/224/3221225836/index.m3u8$LR•IPV4•14『线路11』 +内蒙古卫视,http://23.237.228.134/live8/neimenggu.m3u8$LR•IPV4•14『线路12』 +内蒙古卫视,https://iptv.catvod.com/catvod.php?id=nmws$LR•IPV4•14『线路13』 +内蒙古卫视,https://httop.top/ysp-内蒙古卫视$LR•IPV4•14『线路14』 +辽宁卫视,http://t.061899.xyz/tl/tl.php?id=lnws$LR•IPV4•16『线路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•16『线路2』 +辽宁卫视,http://101.66.195.138:9901/tsfile/live/0121_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•16『线路3』 +辽宁卫视,http://107.150.60.122/live/lnwshd.m3u8$LR•IPV4•16『线路4』 +辽宁卫视,http://204.12.221.218:8181/3m1080p/lnws.m3u8$LR•IPV4•16『线路5』 +辽宁卫视,http://153.0.171.163:9901/tsfile/live/0121_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•16『线路6』 +辽宁卫视,http://39.134.39.37/PLTV/88888888/224/3221226209/index.m3u8$LR•IPV4•16『线路7』 +辽宁卫视,http://38.75.136.137:98/gslb/dsdqpub/lnwshd.m3u8?auth=testpub$LR•IPV4•16『线路8』 +辽宁卫视,https://hlsbkmgsplive.miguvideo.com/migu/kailu/lnwshd265/54/20200407/01.m3u8?&HlsSubType=&encrypt=$LR•IPV4•16『线路9』 +辽宁卫视,http://23.237.228.134/live8/liaoning.m3u8$LR•IPV4•16『线路10』 +辽宁卫视,http://43.251.226.89:8080/play/41.m3u8$LR•IPV4•16『线路11』 +辽宁卫视,http://gfr.x3322.net:9901/tsfile/live/1097_1.m3u8$LR•IPV4•16『线路12』 +辽宁卫视,http://api.kkitv.itv888.cn:8080/hls/iibq0absdjr/index.m3u8$LR•IPV4•16『线路13』 +辽宁卫视,https://iptv.catvod.com/catvod.php?id=lnws$LR•IPV4•16『线路14』 +辽宁卫视,https://httop.top/ysp-辽宁卫视$LR•IPV4•16『线路15』 +辽宁卫视,http://iptv.huuc.edu.cn/hls/lnhd.m3u8$LR•IPV4•16『线路16』 +宁夏卫视,http://t.061899.xyz/tl/tl.php?id=nxws$LR•IPV4•10『线路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•10『线路2』 +宁夏卫视,http://107.150.60.122/live/nxws.m3u8$LR•IPV4•10『线路3』 +宁夏卫视,http://198.204.228.26/live/nxws.m3u8$LR•IPV4•10『线路4』 +宁夏卫视,http://112.123.243.37:50085/tsfile/live/0125_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•10『线路5』 +宁夏卫视,http://153.0.171.163:9901/tsfile/live/0112_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•10『线路6』 +宁夏卫视,http://39.134.115.163:8080/PLTV/88888910/224/3221225726/index.m3u8$LR•IPV4•10『线路7』 +宁夏卫视,http://43.251.226.89:8080/play/54.m3u8$LR•IPV4•10『线路8』 +宁夏卫视,https://iptv.catvod.com/catvod.php?id=nxws$LR•IPV4•10『线路9』 +宁夏卫视,https://httop.top/ysp-宁夏卫视$LR•IPV4•10『线路10』 +青海卫视,http://t.061899.xyz/tl/tl.php?id=qhws$LR•IPV4•10『线路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•10『线路2』 +青海卫视,http://63.141.230.178:82/gslb/zbdq5.m3u8?id=qhws$LR•IPV4•10『线路3』 +青海卫视,http://107.150.60.122/live/qhws.m3u8$LR•IPV4•10『线路4』 +青海卫视,http://153.0.171.163:9901/tsfile/live/0140_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•10『线路5』 +青海卫视,http://live.geermurmt.com/qhws/sd/live.m3u8$LR•IPV4•10『线路6』 +青海卫视,http://23.237.228.134/live8/qinghai.m3u8$LR•IPV4•10『线路7』 +青海卫视,http://43.251.226.89:8080/play/48.m3u8$LR•IPV4•10『线路8』 +青海卫视,https://iptv.catvod.com/catvod.php?id=qhws$LR•IPV4•10『线路9』 +青海卫视,https://httop.top/ysp-青海卫视$LR•IPV4•10『线路10』 +山东卫视,http://t.061899.xyz/tl/tl.php?id=sdws$LR•IPV4•17『线路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•17『线路2』 +山东卫视,http://207.56.13.146:81/cdnlive/sdws.m3u8$LR•IPV4•17『线路3』 +山东卫视,http://63.141.230.178:82/gslb/zbdq5.m3u8?id=sdwshd$LR•IPV4•17『线路4』 +山东卫视,http://120.198.95.220:9901/tsfile/live/1063_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•17『线路5』 +山东卫视,http://153.0.171.163:9901/tsfile/live/0131_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•17『线路6』 +山东卫视,http://125.210.152.18:9090/live/SDWSHD_H265.m3u8$LR•IPV4•17『线路7』 +山东卫视,http://39.134.115.163:8080/PLTV/88888910/224/3221225697/index.m3u8$LR•IPV4•17『线路8』 +山东卫视,http://38.75.136.137:98/gslb/dsdqpub/sdwshd.m3u8?auth=testpub$LR•IPV4•17『线路9』 +山东卫视,https://hlsbkmgsplive.miguvideo.com/wd_r4/yg/shandongwshd/3000/01.m3u8?&HlsSubType=&encrypt=$LR•IPV4•17『线路10』 +山东卫视,https://hlsbkmgsplive.miguvideo.com/wd-shandonghd-1200/01.m3u8?&HlsSubType=&encrypt=$LR•IPV4•17『线路11』 +山东卫视,http://23.237.228.134/live8/shandong.m3u8$LR•IPV4•17『线路12』 +山东卫视,http://gfr.x3322.net:9901/tsfile/live/1098_1.m3u8$LR•IPV4•17『线路13』 +山东卫视,http://api.kkitv.itv888.cn:8080/hls/6gcdai13om5/index.m3u8$LR•IPV4•17『线路14』 +山东卫视,https://iptv.catvod.com/catvod.php?id=sdws$LR•IPV4•17『线路15』 +山东卫视,https://httop.top/ysp-山东卫视$LR•IPV4•17『线路16』 +山东卫视,http://iptv.huuc.edu.cn/hls/sdhd.m3u8$LR•IPV4•17『线路17』 +天津卫视,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•18『线路1』 +天津卫视,http://204.12.221.218:8181/3m1080p/tjws.m3u8$LR•IPV4•18『线路2』 +天津卫视,http://107.150.60.122/live/tjwshd.m3u8$LR•IPV4•18『线路3』 +天津卫视,http://192.151.150.154/live/tjwshd.m3u8$LR•IPV4•18『线路4』 +天津卫视,http://38.75.136.137:98/gslb/dsdqpub/tjwshd.m3u8?auth=testpub$LR•IPV4•18『线路5』 +天津卫视,http://63.141.230.178:82/gslb/zbdq5.m3u8?id=tjwshd$LR•IPV4•18『线路6』 +天津卫视,http://207.56.13.146:81/cdnlive/tjws.m3u8$LR•IPV4•18『线路7』 +天津卫视,http://120.198.95.220:9901/tsfile/live/1067_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•18『线路8』 +天津卫视,http://112.27.235.94:8000/hls/42/index.m3u8$LR•IPV4•18『线路9』 +天津卫视,https://piccpndks.v.kcdnvip.com/audio/tianjin_2/index.m3u8$LR•IPV4•18『线路10』 +天津卫视,http://39.134.115.163:8080/PLTV/88888910/224/3221225698/index.m3u8$LR•IPV4•18『线路11』 +天津卫视,http://23.237.228.134/live8/tianjing.m3u8$LR•IPV4•18『线路12』 +天津卫视,http://gfr.x3322.net:9901/tsfile/live/1090_1.m3u8$LR•IPV4•18『线路13』 +天津卫视,http://api.kkitv.itv888.cn:8080/hls/z2lkdkrb4w/index.m3u8$LR•IPV4•18『线路14』 +天津卫视,https://iptv.catvod.com/catvod.php?id=tjws$LR•IPV4•18『线路15』 +天津卫视,https://httop.top/ysp-天津卫视$LR•IPV4•18『线路16』 +天津卫视,http://iptv.huuc.edu.cn/hls/tjhd.m3u8$LR•IPV4•18『线路17』 +天津卫视,http://153.0.171.163:9901/tsfile/live/0135_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•18『线路18』 +海南卫视,http://t.061899.xyz/tl/tl.php?id=hinws$LR•IPV4•8『线路1』 海南卫视,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221227029/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7EEuBMjt2kLMD8fAO7QYER7Q%7EtP4-l0lmSfjwLWEfK_el1vH_mv-s1zo4AQJwdedaVwG9xkuFTDg8J26cwOrNJzn20BErrHdLhuZ9EzLUCD3PMW-OMx4MGteHV2vLeW6BqoY%2CEND$LR•IPV6•8『线路2』 -海南卫视,http://120.76.248.139/live/bfgd/4200000473.m3u8$LR•IPV4•8『线路3』 -海南卫视,http://43.251.226.89:8080/play/50.m3u8$LR•IPV4•8『线路4』 -海南卫视,http://api.kkitv.itv888.cn:8080/hls/c1cajhsgba8/index.m3u8$LR•IPV4•8『线路5』 -海南卫视,https://iptv.catvod.com/catvod.php?id=hinws$LR•IPV4•8『线路6』 -海南卫视,https://httop.top/ysp-海南卫视$LR•IPV4•8『线路7』 -海南卫视,http://118.81.195.79:9003/hls/28/index.m3u8$LR•IPV4•8『线路8』 -新疆卫视,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221227011/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7ExAUu61iVvo_xYbANWJhgXw%7EtP4-l0lmSfjwLWEfK_el1vH_mv-s1zo4AQJwdedaVwG9xkuFTDg8J26cwOrNJzn20BErrHdLhuZ9EzLUCD3PMW-OMx4MGteHV2vLeW6BqoY%2CEND$LR•IPV6•13『线路1』 -新疆卫视,http://218.84.12.186:8001/hls/main/playlist.m3u8?zxinjd;http://218.84.12.186:8001/hls/main/playlist.m3u8zxinjd$LR•IPV4•13『线路2』 -新疆卫视,http://112.123.243.37:50085/tsfile/live/0143_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•13『线路3』 -新疆卫视,http://59.39.89.130:60901/tsfile/live/0125_17.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•13『线路4』 -新疆卫视,http://live.wjyanghu.com/live/CH1.m3u8$LR•IPV4•13『线路5』 -新疆卫视,https://iptv.catvod.com/catvod.php?id=xjws$LR•IPV4•13『线路6』 -新疆卫视,https://httop.top/ysp-新疆卫视$LR•IPV4•13『线路7』 -新疆卫视,http://39.134.115.163:8080/PLTV/88888910/224/3221225725/index.m3u8$LR•IPV4•13『线路8』 -新疆卫视,http://183.207.248.71/cntv/live1/xinjiangstv/xinjiangstv$LR•IPV4•13『线路9』 -新疆卫视,http://183.207.248.71/gitv/live1/G_XINJIANG/G_XINJIANG$LR•IPV4•13『线路10』 -新疆卫视,http://183.207.249.15/PLTV/3/224/3221225523/index.m3u8$LR•IPV4•13『线路11』 -新疆卫视,http://223.110.243.136/PLTV/3/224/3221225523/index.m3u8$LR•IPV4•13『线路12』 -新疆卫视,http://112.25.48.68/live/program/live/xjws/1300000/mnf.m3u8$LR•IPV4•13『线路13』 -云南卫视,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•16『线路1』 -云南卫视,http://120.198.95.220:9901/tsfile/live/1056_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•16『线路2』 -云南卫视,http://38.75.136.137:98/gslb/dsdqpub/ynwshd.m3u8?auth=testpub$LR•IPV4•16『线路3』 -云南卫视,http://204.12.221.218:8181/3m1080p/ynws.m3u8$LR•IPV4•16『线路4』 -云南卫视,http://112.123.243.37:50085/tsfile/live/0117_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•16『线路5』 -云南卫视,http://101.66.194.82:9901/tsfile/live/0119_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•16『线路6』 -云南卫视,http://101.66.194.63:9901/tsfile/live/0119_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•16『线路7』 -云南卫视,http://36.136.38.87:9901/tsfile/live/0119_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•16『线路8』 -云南卫视,http://101.66.195.138:9901/tsfile/live/0119_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•16『线路9』 -云南卫视,http://101.66.199.247:9901/tsfile/live/0119_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•16『线路10』 -云南卫视,http://153.0.171.163:9901/tsfile/live/0119_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•16『线路11』 -云南卫视,http://123.130.84.106:8154/tsfile/live/0119_1.m3u8$LR•IPV4•16『线路12』 -云南卫视,http://23.237.228.134/live8/yunnan.m3u8$LR•IPV4•16『线路13』 -云南卫视,https://iptv.catvod.com/catvod.php?id=ynws$LR•IPV4•16『线路14』 -云南卫视,https://httop.top/ysp-云南卫视$LR•IPV4•16『线路15』 -云南卫视,https://hwapi.yunshicloud.com/8xughf/e0bx15.m3u8$LR•IPV4•16『线路16』 -西藏卫视,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•12『线路1』 -西藏卫视,http://59.39.89.130:60901/tsfile/live/0125_3.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•12『线路2』 -西藏卫视,http://198.204.228.26/live/xzws.m3u8$LR•IPV4•12『线路3』 -西藏卫视,http://63.141.230.178:82/gslb/zbdq5.m3u8?id=xzws$LR•IPV4•12『线路4』 -西藏卫视,http://107.150.60.122/live/xzws.m3u8$LR•IPV4•12『线路5』 -西藏卫视,http://112.123.243.37:50085/tsfile/live/0141_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•12『线路6』 -西藏卫视,http://59.39.89.130:60901/tsfile/live/0125_4.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•12『线路7』 -西藏卫视,http://cssbyd.imwork.net:8082/hls/46/index.m3u8$LR•IPV4•12『线路8』 -西藏卫视,https://iptv.catvod.com/catvod.php?id=xzws$LR•IPV4•12『线路9』 -西藏卫视,http://39.134.115.163:8080/PLTV/88888910/224/3221225723/index.m3u8$LR•IPV4•12『线路10』 -西藏卫视,http://117.169.120.140:8080/live/xizangstv/.m3u8$LR•IPV4•12『线路11』 -西藏卫视,http://183.207.249.16/PLTV/3/224/3221225523/index.m3u8$LR•IPV4•12『线路12』 +海南卫视,https://livelyws.chinamcache.com/lyws/zb03.m3u8$LR•IPV4•8『线路3』 +海南卫视,http://118.81.195.79:9003/hls/28/index.m3u8$LR•IPV4•8『线路4』 +海南卫视,http://43.251.226.89:8080/play/50.m3u8$LR•IPV4•8『线路5』 +海南卫视,http://api.kkitv.itv888.cn:8080/hls/c1cajhsgba8/index.m3u8$LR•IPV4•8『线路6』 +海南卫视,https://iptv.catvod.com/catvod.php?id=hinws$LR•IPV4•8『线路7』 +海南卫视,https://httop.top/ysp-海南卫视$LR•IPV4•8『线路8』 +新疆卫视,http://t.061899.xyz/tl/tl.php?id=xjws$LR•IPV4•14『线路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•14『线路2』 +新疆卫视,http://218.84.12.186:8001/hls/main/playlist.m3u8?zxinjd;http://218.84.12.186:8001/hls/main/playlist.m3u8zxinjd$LR•IPV4•14『线路3』 +新疆卫视,http://112.123.243.37:50085/tsfile/live/0143_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•14『线路4』 +新疆卫视,http://59.39.89.130:60901/tsfile/live/0125_17.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•14『线路5』 +新疆卫视,http://live.wjyanghu.com/live/CH1.m3u8$LR•IPV4•14『线路6』 +新疆卫视,http://39.134.115.163:8080/PLTV/88888910/224/3221225725/index.m3u8$LR•IPV4•14『线路7』 +新疆卫视,http://183.207.248.71/cntv/live1/xinjiangstv/xinjiangstv$LR•IPV4•14『线路8』 +新疆卫视,http://183.207.248.71/gitv/live1/G_XINJIANG/G_XINJIANG$LR•IPV4•14『线路9』 +新疆卫视,http://183.207.249.15/PLTV/3/224/3221225523/index.m3u8$LR•IPV4•14『线路10』 +新疆卫视,http://223.110.243.136/PLTV/3/224/3221225523/index.m3u8$LR•IPV4•14『线路11』 +新疆卫视,http://112.25.48.68/live/program/live/xjws/1300000/mnf.m3u8$LR•IPV4•14『线路12』 +新疆卫视,https://iptv.catvod.com/catvod.php?id=xjws$LR•IPV4•14『线路13』 +新疆卫视,https://httop.top/ysp-新疆卫视$LR•IPV4•14『线路14』 +云南卫视,http://t.061899.xyz/tl/tl.php?id=ynws$LR•IPV4•17『线路1』 +云南卫视,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•17『线路2』 +云南卫视,http://120.198.95.220:9901/tsfile/live/1056_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•17『线路3』 +云南卫视,http://38.75.136.137:98/gslb/dsdqpub/ynwshd.m3u8?auth=testpub$LR•IPV4•17『线路4』 +云南卫视,http://204.12.221.218:8181/3m1080p/ynws.m3u8$LR•IPV4•17『线路5』 +云南卫视,http://112.123.243.37:50085/tsfile/live/0117_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•17『线路6』 +云南卫视,http://101.66.194.82:9901/tsfile/live/0119_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•17『线路7』 +云南卫视,http://101.66.194.63:9901/tsfile/live/0119_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•17『线路8』 +云南卫视,http://36.136.38.87:9901/tsfile/live/0119_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•17『线路9』 +云南卫视,http://101.66.195.138:9901/tsfile/live/0119_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•17『线路10』 +云南卫视,http://101.66.199.247:9901/tsfile/live/0119_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•17『线路11』 +云南卫视,http://153.0.171.163:9901/tsfile/live/0119_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•17『线路12』 +云南卫视,https://jsv-live-play.sfccn.com/live/jsv_3920_fhd.m3u8$LR•IPV4•17『线路13』 +云南卫视,https://hwapi.yunshicloud.com/8xughf/e0bx15.m3u8$LR•IPV4•17『线路14』 +云南卫视,http://23.237.228.134/live8/yunnan.m3u8$LR•IPV4•17『线路15』 +云南卫视,https://iptv.catvod.com/catvod.php?id=ynws$LR•IPV4•17『线路16』 +云南卫视,https://httop.top/ysp-云南卫视$LR•IPV4•17『线路17』 +西藏卫视,http://t.061899.xyz/tl/tl.php?id=xzws$LR•IPV4•12『线路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•12『线路2』 +西藏卫视,http://59.39.89.130:60901/tsfile/live/0125_3.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•12『线路3』 +西藏卫视,http://198.204.228.26/live/xzws.m3u8$LR•IPV4•12『线路4』 +西藏卫视,http://63.141.230.178:82/gslb/zbdq5.m3u8?id=xzws$LR•IPV4•12『线路5』 +西藏卫视,http://107.150.60.122/live/xzws.m3u8$LR•IPV4•12『线路6』 +西藏卫视,http://112.123.243.37:50085/tsfile/live/0141_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•12『线路7』 +西藏卫视,http://59.39.89.130:60901/tsfile/live/0125_4.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•12『线路8』 +西藏卫视,http://39.134.115.163:8080/PLTV/88888910/224/3221225723/index.m3u8$LR•IPV4•12『线路9』 +西藏卫视,http://117.169.120.140:8080/live/xizangstv/.m3u8$LR•IPV4•12『线路10』 +西藏卫视,http://183.207.249.16/PLTV/3/224/3221225523/index.m3u8$LR•IPV4•12『线路11』 +西藏卫视,https://iptv.catvod.com/catvod.php?id=xzws$LR•IPV4•12『线路12』 海峡卫视,http://38.64.72.148:80/hls/modn/list/4009/chunklist0.m3u8$LR•IPV4•3『线路1』 海峡卫视,http://43.251.226.89:8080/play/51.m3u8$LR•IPV4•3『线路2』 海峡卫视,p3p://167.114.175.6:55331/63ec47390001586de42ffc1a7e1856a6$LR•IPV4•3『线路3』 @@ -737,19 +740,19 @@ CGTN阿语,https://0472.org/hls/cgtna.m3u8$LR•IPV4 兵团卫视,http://107.150.60.122/live/btws.m3u8$LR•IPV4•10『线路4』 兵团卫视,http://192.151.150.154/live/btws.m3u8$LR•IPV4•10『线路5』 兵团卫视,http://218.13.170.98:9901/tsfile/live/0115_1.m3u8$LR•IPV4•10『线路6』 -兵团卫视,http://43.251.226.89:8080/play/53.m3u8$LR•IPV4•10『线路7』 -兵团卫视,https://iptv.catvod.com/catvod.php?id=btws$LR•IPV4•10『线路8』 -兵团卫视,https://httop.top/ysp-兵团卫视$LR•IPV4•10『线路9』 -兵团卫视,http://112.25.48.68/live/program/live/btws/1300000/mnf.m3u8$LR•IPV4•10『线路10』 +兵团卫视,http://112.25.48.68/live/program/live/btws/1300000/mnf.m3u8$LR•IPV4•10『线路7』 +兵团卫视,http://43.251.226.89:8080/play/53.m3u8$LR•IPV4•10『线路8』 +兵团卫视,https://iptv.catvod.com/catvod.php?id=btws$LR•IPV4•10『线路9』 +兵团卫视,https://httop.top/ysp-兵团卫视$LR•IPV4•10『线路10』 安多卫视,https://liveout.xntv.tv/a65jur/96iln2.m3u8$LR•IPV4 康巴卫视,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221227027/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7EkHMvBpWz4rccMxNvSRekpQ%7EtP4-l0lmSfjwLWEfK_el1vH_mv-s1zo4AQJwdedaVwG9xkuFTDg8J26cwOrNJzn20BErrHdLhuZ9EzLUCD3PMW-OMx4MGteHV2vLeW6BqoY%2CEND$LR•IPV6•2『线路1』 康巴卫视,http://scgctvshow.sctv.com/hdlive/kangba/1.m3u8$LR•IPV4•2『线路2』 农林卫视,http://120.76.248.139/live/bfgd/4200000122.m3u8$LR•IPV4•2『线路1』 农林卫视,http://43.251.226.89:8080/play/52.m3u8$LR•IPV4•2『线路2』 -三沙卫视,https://srs.ssws.tv/video/sstv-10/index.m3u8$LR•IPV4•6『线路1』 -三沙卫视,http://107.150.60.122/live/ssws.m3u8$LR•IPV4•6『线路2』 -三沙卫视,http://38.75.136.137:98/gslb/dsdqpub/ssws.m3u8?auth=testpub$LR•IPV4•6『线路3』 -三沙卫视,http://221.226.51.220:50081/newlive/live/hls/38/live.m3u8$LR•IPV4•6『线路4』 +三沙卫视,http://107.150.60.122/live/ssws.m3u8$LR•IPV4•6『线路1』 +三沙卫视,http://38.75.136.137:98/gslb/dsdqpub/ssws.m3u8?auth=testpub$LR•IPV4•6『线路2』 +三沙卫视,http://221.226.51.220:50081/newlive/live/hls/38/live.m3u8$LR•IPV4•6『线路3』 +三沙卫视,https://srs.ssws.tv/video/sstv-10/index.m3u8$LR•IPV4•6『线路4』 三沙卫视,http://43.251.226.89:8080/play/56.m3u8$LR•IPV4•6『线路5』 三沙卫视,https://iptv.catvod.com/catvod.php?id=ssws$LR•IPV4•6『线路6』 延边卫视,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221227045/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7Eq0D3NdTUN7FuRzr8eJsbQA%7EtP4-l0lmSfjwLWEfK_el1vH_mv-s1zo4AQJwdedaVwG9xkuFTDg8J26cwOrNJzn20BErrHdLhuZ9EzLUCD3PMW-OMx4MGteHV2vLeW6BqoY%2CEND$LR•IPV6•4『线路1』 @@ -761,7 +764,7 @@ CGTN阿语,https://0472.org/hls/cgtna.m3u8$LR•IPV4 家庭理财,http://223.110.245.139/PLTV/4/224/3221227011/index.m3u8$LR•IPV4 梨园,https://dxtx.hntv.tv/live/lypd.m3u8?txSecret=10c771842a0be59e8b575d765173ec96&txTime=7B923E0A&wsSecret=41543190cdf375f1c73207222bb96542&wsTime=1769313549$LR•IPV4•2『线路1』 梨园,http://1.94.31.214/php/hntv.php?id=hnly$LR•IPV4•2『线路2』 -辽宁公共,http://120.76.248.139/live/bfgd/4200000077.m3u8$LR•IPV4 +辽宁公共,http://120.76.248.139/live/bfgd/4200000481.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』 @@ -778,11 +781,11 @@ CGTN阿语,https://0472.org/hls/cgtna.m3u8$LR•IPV4 山西卫视,http://101.66.199.247:9901/tsfile/live/0118_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•15『线路9』 山西卫视,http://153.0.171.163:9901/tsfile/live/0118_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•15『线路10』 山西卫视,http://112.27.235.94:8000/hls/45/index.m3u8$LR•IPV4•15『线路11』 -山西卫视,http://23.237.228.134/live8/shanxi.m3u8$LR•IPV4•15『线路12』 -山西卫视,https://iptv.catvod.com/catvod.php?id=sxiws$LR•IPV4•15『线路13』 -山西卫视,https://httop.top/ysp-山西卫视$LR•IPV4•15『线路14』 -山西卫视,http://118.81.195.79:9003/hls/19/index.m3u8$LR•IPV4•15『线路15』 -陕西卫视,http://stream.snrtv.com/sxbc-star-BLMOU4.m3u8$LR•IPV4•20『线路1』 +山西卫视,http://118.81.195.79:9003/hls/19/index.m3u8$LR•IPV4•15『线路12』 +山西卫视,http://23.237.228.134/live8/shanxi.m3u8$LR•IPV4•15『线路13』 +山西卫视,https://iptv.catvod.com/catvod.php?id=sxiws$LR•IPV4•15『线路14』 +山西卫视,https://httop.top/ysp-山西卫视$LR•IPV4•15『线路15』 +陕西卫视,http://t.061899.xyz/tl/tl.php?id=sxws$LR•IPV4•20『线路1』 陕西卫视,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226999/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7EsGLKaSqf0wDZMbAjeQtfyw%7EtP4-l0lmSfjwLWEfK_el1vH_mv-s1zo4AQJwdedaVwG9xkuFTDg8J26cwOrNJzn20BErrHdLhuZ9EzLUCD3PMW-OMx4MGteHV2vLeW6BqoY%2CEND$LR•IPV6•20『线路2』 陕西卫视,http://107.150.60.122/live/snwshd.m3u8$LR•IPV4•20『线路3』 陕西卫视,http://63.141.230.178:82/gslb/zbdq5.m3u8?id=snwshd$LR•IPV4•20『线路4』 @@ -792,19 +795,20 @@ CGTN阿语,https://0472.org/hls/cgtna.m3u8$LR•IPV4 陕西卫视,http://101.66.194.63:9901/tsfile/live/0136_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•20『线路8』 陕西卫视,http://36.136.38.87:9901/tsfile/live/0136_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•20『线路9』 陕西卫视,http://153.0.171.163:9901/tsfile/live/0136_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•20『线路10』 -陕西卫视,http://112.27.235.94:8000/hls/43/index.m3u8$LR•IPV4•20『线路11』 -陕西卫视,http://38.75.136.137:98/gslb/dsdqpub/sxwshd.m3u8?auth=testpub$LR•IPV4•20『线路12』 -陕西卫视,http://23.237.228.134/live6/sichuan.m3u8$LR•IPV4•20『线路13』 -陕西卫视,http://43.251.226.89:8080/play/45.m3u8$LR•IPV4•20『线路14』 -陕西卫视,https://iptv.catvod.com/catvod.php?id=sxws$LR•IPV4•20『线路15』 -陕西卫视,https://httop.top/ysp-陕西卫视$LR•IPV4•20『线路16』 -陕西卫视,http://mg.hmysapp.cn:177/ckmg/zb.php?id=sxws$LR•IPV4•20『线路17』 -陕西卫视,http://39.134.115.163:8080/PLTV/88888910/224/3221225729/index.m3u8$LR•IPV4•20『线路18』 -陕西卫视,http://223.110.245.139/PLTV/4/224/3221227022/index.m3u8$LR•IPV4•20『线路19』 -陕西卫视,http://112.25.48.68/live/program/live/sxws/1300000/mnf.m3u8$LR•IPV4•20『线路20』 +陕西卫视,http://stream.snrtv.com/sxbc-star-BLMOU4.m3u8$LR•IPV4•20『线路11』 +陕西卫视,http://39.134.115.163:8080/PLTV/88888910/224/3221225729/index.m3u8$LR•IPV4•20『线路12』 +陕西卫视,http://223.110.245.139/PLTV/4/224/3221227022/index.m3u8$LR•IPV4•20『线路13』 +陕西卫视,http://112.25.48.68/live/program/live/sxws/1300000/mnf.m3u8$LR•IPV4•20『线路14』 +陕西卫视,http://38.75.136.137:98/gslb/dsdqpub/sxwshd.m3u8?auth=testpub$LR•IPV4•20『线路15』 +陕西卫视,http://23.237.228.134/live6/sichuan.m3u8$LR•IPV4•20『线路16』 +陕西卫视,http://43.251.226.89:8080/play/45.m3u8$LR•IPV4•20『线路17』 +陕西卫视,https://iptv.catvod.com/catvod.php?id=sxws$LR•IPV4•20『线路18』 +陕西卫视,https://httop.top/ysp-陕西卫视$LR•IPV4•20『线路19』 +陕西卫视,http://mg.hmysapp.cn:177/ckmg/zb.php?id=sxws$LR•IPV4•20『线路20』 数字,#genre# CHC影迷电影,p3p://167.114.175.6:55331/63ec4caf00020428e445513c2d902fdb$LR•IPV4 +CHC动作电影,http://t.061899.xyz/tl/tl.php?id=chcdzdy$LR•IPV4 CHC家庭影院,http://61.162.52.6:8088/newlive/live/hls/60/live.m3u8$LR•IPV4 睛彩竞技,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=5735&tk=a0c4f6cfaba3$LR•IPV4•17『线路1』 睛彩竞技,http://dl.wifi942.com:66/jsyd/jsyd.php?id=HD-8000k-1080P-miguaoyun2$LR•IPV4•17『线路2』 @@ -847,8 +851,8 @@ CHC家庭影院,http://61.162.52.6:8088/newlive/live/hls/60/live.m3u8$LR•IPV4 睛彩篮球,http://dl.wifi942.com:66/jsyd/jsyd.php?id=HD-8000k-1080P-miguaoyun1$LR•IPV4•24『线路22』 睛彩篮球,http://drive.mxmy.net:8888/udp/239.3.1.126:8001$LR•IPV4•24『线路23』 睛彩篮球,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=8104&tk=b53028476470$LR•IPV4•24『线路24』 -SiTV 魅力足球,http://111.22.153.159:35455/itv/5000000011000031207.m3u8?cdn=bestzb$LR•IPV4•28『线路1』 -SiTV 魅力足球,http://t.061899.xyz/tl/tl.php?id=mlzq$LR•IPV4•28『线路2』 +SiTV 魅力足球,http://t.061899.xyz/tl/tl.php?id=mlzq$LR•IPV4•28『线路1』 +SiTV 魅力足球,http://111.22.153.159:35455/itv/5000000011000031207.m3u8?cdn=bestzb$LR•IPV4•28『线路2』 SiTV 魅力足球,https://www.freetv.top/migu/796070308.m3u8?migutoken=f4f71100ed3cd756f336e1f3b6d522c1338ee1ffd14316eea89e461d4e31e29395a265a9f1ec26b947fb0e7dc16296db47ae3bfea73caaee6901d17bfede63775878c0ab44c872939ba5b53baf$LR•IPV4•28『线路3』 SiTV 魅力足球,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=3624&tk=23a9aca1f79f$LR•IPV4•28『线路4』 SiTV 魅力足球,http://qjrhc.jydjd.top:2911/udp/224.1.100.133:11111$LR•IPV4•28『线路5』 @@ -875,14 +879,14 @@ SiTV 魅力足球,https://www.freetv.top/migu/796070308.m3u8?migutoken=aef1ffa94 SiTV 魅力足球,https://stream1.freetv.fun/ipv6-mei-li-zu-qiu-3.m3u8$LR•IPV4•28『线路26』 SiTV 魅力足球,https://stream1.freetv.fun/ipv6-mei-li-zu-qiu-5.m3u8$LR•IPV4•28『线路27』 SiTV 魅力足球,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=0934&tk=e640d0a1bf70$LR•IPV4•28『线路28』 -SiTV 劲爆体育,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=6808&tk=a0c4f6cfaba3$LR•IPV4•25『线路1』 -SiTV 劲爆体育,http://120.238.94.82:9901/tsfile/live/1086_1.m3u8$LR•IPV4•25『线路2』 -SiTV 劲爆体育,http://111.22.153.159:35455/itv/5000000002000029972.m3u8?cdn=bestzb$LR•IPV4•25『线路3』 -SiTV 劲爆体育,http://183.237.95.108:9901/tsfile/live/1074_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•25『线路4』 -SiTV 劲爆体育,http://119.32.12.32:2901/udp/224.1.100.129:11111$LR•IPV4•25『线路5』 -SiTV 劲爆体育,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=3011&tk=a0c4f6cfaba3$LR•IPV4•25『线路6』 -SiTV 劲爆体育,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=4995&tk=e503191f8e20$LR•IPV4•25『线路7』 -SiTV 劲爆体育,http://t.061899.xyz/tl/tl.php?id=jbty$LR•IPV4•25『线路8』 +SiTV 劲爆体育,http://t.061899.xyz/tl/tl.php?id=jbty$LR•IPV4•25『线路1』 +SiTV 劲爆体育,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=6808&tk=a0c4f6cfaba3$LR•IPV4•25『线路2』 +SiTV 劲爆体育,http://120.238.94.82:9901/tsfile/live/1086_1.m3u8$LR•IPV4•25『线路3』 +SiTV 劲爆体育,http://111.22.153.159:35455/itv/5000000002000029972.m3u8?cdn=bestzb$LR•IPV4•25『线路4』 +SiTV 劲爆体育,http://183.237.95.108:9901/tsfile/live/1074_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•25『线路5』 +SiTV 劲爆体育,http://119.32.12.32:2901/udp/224.1.100.129:11111$LR•IPV4•25『线路6』 +SiTV 劲爆体育,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=3011&tk=a0c4f6cfaba3$LR•IPV4•25『线路7』 +SiTV 劲爆体育,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=4995&tk=e503191f8e20$LR•IPV4•25『线路8』 SiTV 劲爆体育,http://146.56.165.66:7788/TVOD/5000000002000029972/bestzb/index.m3u8$LR•IPV4•25『线路9』 SiTV 劲爆体育,http://qjrhc.jydjd.top:2911/udp/224.1.100.130:11111$LR•IPV4•25『线路10』 SiTV 劲爆体育,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=9784&tk=b53028476470$LR•IPV4•25『线路11』 @@ -943,8 +947,8 @@ NewTV超级体育,http://[2409:8087:1a01:df::7005]:80/ottrrs.hl.chinamobile.com/ NewTV超级体育,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=0078&tk=a0c4f6cfaba3$LR•IPV4•5『线路3』 NewTV超级体育,http://feiyang.ak47s.top:35455/itv/1000000001000009601.m3u8?cdn=ystenlive$LR•IPV4•5『线路4』 NewTV超级体育,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=3188&tk=23a9aca1f79f$LR•IPV4•5『线路5』 -NewTV动作电影,http://live.metshop.top/huya/11602077?cdn=alicdn$LR•IPV4•2『线路1』 -NewTV动作电影,http://39.134.19.68/dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221226465/index.m3u8$LR•IPV4•2『线路2』 +NewTV动作电影,http://39.134.19.68/dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221226465/index.m3u8$LR•IPV4•2『线路1』 +NewTV动作电影,http://live.metshop.top/huya/11602077?cdn=alicdn$LR•IPV4•2『线路2』 NewTV精品体育,https://epg.pw/stream/f7556eccd4ae06b0c2991fdc7a4f8388496559f728cc82459a8e50346040e226.m3u8$LR•IPV4•6『线路1』 NewTV精品体育,https://epg.pw/stream/866a097a0907c9832440f8df38272dd555abf05200dfbafcc137e214c9b30ca7.m3u8$LR•IPV4•6『线路2』 NewTV精品体育,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=5739&tk=23a9aca1f79f$LR•IPV4•6『线路3』 @@ -952,17 +956,18 @@ NewTV精品体育,https://epg.pw/stream/94ed0232b61ce8d89883160a4cdfbfc8f3225cae NewTV精品体育,http://146.56.165.66:7788/TVOD/2000000003000000021/hnbblive/index.m3u8$LR•IPV4•6『线路5』 NewTV精品体育,http://dl.wifi942.com:66/jsyd/jsyd.php?id=GITV-JS-65$LR•IPV4•6『线路6』 卡酷少儿,http://218.13.170.98:9901/tsfile/live/1021_1.m3u8$LR•IPV4 -优漫卡通,http://183.207.249.15/PLTV/4/224/3221225933/index.m3u8$LR•IPV4 +优漫卡通,http://t.061899.xyz/tl/tl.php?id=ymkt$LR•IPV4•2『线路1』 +优漫卡通,http://183.207.249.15/PLTV/4/224/3221225933/index.m3u8$LR•IPV4•2『线路2』 哈哈炫动,http://223.110.245.139/PLTV/4/224/3221226388/index.m3u8$LR•IPV4 嘉佳卡通,http://223.110.245.139/PLTV/4/224/3221227009/index.m3u8$LR•IPV4•2『线路1』 嘉佳卡通,http://112.25.48.68/live/program/live/jjkt/1300000/mnf.m3u8$LR•IPV4•2『线路2』 -金鹰卡通,http://phoneal.qing.mgtv.com/nn_live/nn_x64/Y2hzPSZkZWY9MSZ1aXA9MTA2LjE0LjM4LjU1JnRlcm09NSZtYWNpZD02ODZlOGNmOGM4OGU3N2VjOWEwNzkzMjg5ZjUzNDg0MmFiZWM0ZjNjJnFpZD0mcmF1dGhfZW5hYmxlPW9mZiZjZG5leF9pZD1hbF9waG9uZTMmZXM9MTc4Mzk3OTAxNiZ1dWlkPTU2NjdhZjJmOGNjNjM4MjMwZjFlYzVmY2RiMWIxNThmLTZhMGUyNjM3JnM9ZDg2NTFkYzBlZjdjOTcxMjUyMjMxMTYyOGQ5ODM4YjgmdWlkPSZuZHY9aW9zLTYuNS4wJnY9MiZhcz0wJl9jYXJDb2RlPTA,/JYKTMPP360.m3u8$LR•IPV4•7『线路1』 -金鹰卡通,http://183.11.239.36:808/hls/69/index.m3u8$LR•IPV4•7『线路2』 -金鹰卡通,http://101.66.194.82:9901/tsfile/live/1000_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•7『线路3』 -金鹰卡通,http://101.66.194.63:9901/tsfile/live/1000_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•7『线路4』 -金鹰卡通,http://101.66.199.247:9901/tsfile/live/1000_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•7『线路5』 -金鹰卡通,http://120.198.95.220:9901/tsfile/live/1033_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•7『线路6』 -金鹰卡通,http://223.110.245.145/ott.js.chinamobile.com/PLTV/3/224/3221226303/index.m3u8$LR•IPV4•7『线路7』 +金鹰卡通,http://183.11.239.36:808/hls/69/index.m3u8$LR•IPV4•7『线路1』 +金鹰卡通,http://phoneqq.qing.mgtv.com/nn_live/nn_x64/Y2hzPSZkZWY9MSZ1aXA9MTA2LjE0LjM4LjU1JnRlcm09NSZtYWNpZD02ODZlOGNmOGM4OGU3N2VjOWEwNzkzMjg5ZjUzNDg0MmFiZWM0ZjNjJnFpZD0mcmF1dGhfZW5hYmxlPW9mZiZjZG5leF9pZD1xcV9waG9uZV9saXZlJmVzPTE3ODQyNDYwMjImdXVpZD1kOGE5NDdhY2I3OGNhOWUxZWM1MzIwZTMxNTYxZmU5NS02YTBlMjYzNyZzPThlNWFhM2FhOGI5YzUwYzNmZjVhODk2NjBiODg3NjUyJnVpZD0mbmR2PWlvcy02LjUuMCZ2PTImYXM9MCZfY2FyQ29kZT0w/HNGGMPP360.m3u8$LR•IPV4•7『线路2』 +金鹰卡通,http://223.110.245.145/ott.js.chinamobile.com/PLTV/3/224/3221226303/index.m3u8$LR•IPV4•7『线路3』 +金鹰卡通,http://101.66.194.82:9901/tsfile/live/1000_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•7『线路4』 +金鹰卡通,http://101.66.194.63:9901/tsfile/live/1000_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•7『线路5』 +金鹰卡通,http://101.66.199.247:9901/tsfile/live/1000_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•7『线路6』 +金鹰卡通,http://120.198.95.220:9901/tsfile/live/1033_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•7『线路7』 金鹰纪实,http://iptv.huuc.edu.cn/hls/gedocu.m3u8$LR•IPV4•83『线路1』 金鹰纪实,https://live.264788.xyz/channel/jinyingjishi?streamid=4e14722244f78fc9c49bf260b10b3cad&livekey=01WgOR41rriMmMkzNsd0UoaxJRwetZdxIvtVk$LR•IPV4•83『线路2』 金鹰纪实,https://stream1.freetv.fun/jin-ying-ji-shi-16.m3u8$LR•IPV4•83『线路3』 @@ -1080,8 +1085,9 @@ NewTV精品体育,http://dl.wifi942.com:66/jsyd/jsyd.php?id=GITV-JS-65$LR•IPV4 快乐垂钓,https://migu.188766.xyz/?migutoken=c6b17aba558cf29b13242b5ae063e5ed&id=%E5%BF%AB%E4%B9%90%E5%9E%82%E9%92%93&type=yy$LR•IPV4•34『线路32』 快乐垂钓,http://27.12.12.183:1234/961930263$LR•IPV4•34『线路33』 快乐垂钓,http://8.153.110.51:3020/961930263$LR•IPV4•34『线路34』 -纪实人文,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://t.061899.xyz/tl/tl.php?id=shjsrw$LR•IPV4•3『线路1』 +纪实人文,http://39.135.138.59:18890/PLTV/88888910/224/3221225655/index.m3u8$LR•IPV4•3『线路2』 +纪实人文,http://8.138.7.223/tv/shtv.php?id=xjs$LR•IPV4•3『线路3』 天元围棋,http://120.76.248.139/live/bfgd/4200000633.m3u8$LR•IPV4•6『线路1』 天元围棋,http://wouu.net:9977/udp/239.93.42.55:5140$LR•IPV4•6『线路2』 天元围棋,http://63.141.230.178:82/gslb/zbdq5.m3u8?id=gztywq$LR•IPV4•6『线路3』 @@ -1091,11 +1097,11 @@ NewTV精品体育,http://dl.wifi942.com:66/jsyd/jsyd.php?id=GITV-JS-65$LR•IPV4 弈坛春秋,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://101.43.145.141:12002/itv/1000000004000011651.m3u8?cdn=ystenlive$LR•IPV4•5『线路1』 -纯享4K,https://live.264788.xyz/channel/chunxiang4k?streamid=c162e99191441b46592808f7f1afe8b0&livekey=01WgOR41rriMmMkzNsd0UoaxJRwetZdxIvtVk$LR•IPV4•5『线路2』 -纯享4K,https://live.264788.xyz/channel/chunxiang4k?streamid=a12e69928ae928860407d7ec7bfe4ac8&livekey=01WgOR41rriMmMkzNsd0UoaxJRwetZdxIvtVk$LR•IPV4•5『线路3』 -纯享4K,http://home.wwang.pw:35455/itv/1000000004000011651.m3u8?cdn=ystenlive$LR•IPV4•5『线路4』 -纯享4K,http://39.134.115.163:8080/PLTV/88888910/224/3221225786/index.m3u8$LR•IPV4•5『线路5』 +纯享4K,http://39.134.115.163:8080/PLTV/88888910/224/3221225786/index.m3u8$LR•IPV4•5『线路1』 +纯享4K,http://101.43.145.141:12002/itv/1000000004000011651.m3u8?cdn=ystenlive$LR•IPV4•5『线路2』 +纯享4K,https://live.264788.xyz/channel/chunxiang4k?streamid=c162e99191441b46592808f7f1afe8b0&livekey=01WgOR41rriMmMkzNsd0UoaxJRwetZdxIvtVk$LR•IPV4•5『线路3』 +纯享4K,https://live.264788.xyz/channel/chunxiang4k?streamid=a12e69928ae928860407d7ec7bfe4ac8&livekey=01WgOR41rriMmMkzNsd0UoaxJRwetZdxIvtVk$LR•IPV4•5『线路4』 +纯享4K,http://home.wwang.pw:35455/itv/1000000004000011651.m3u8?cdn=ystenlive$LR•IPV4•5『线路5』 安徽,#genre# 滁州新闻综合频道,http://183.167.193.45:1935/live/cztvzh/playlist.m3u8$LR•IPV4 @@ -1123,19 +1129,19 @@ NewTV精品体育,http://dl.wifi942.com:66/jsyd/jsyd.php?id=GITV-JS-65$LR•IPV4 南宁影视娱乐,http://hls.nntv.cn/nnlive/YSYL_244.m3u8$LR•IPV4 河北,#genre# -邢台综合,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』 -河北都市,https://radio.pull.hebtv.com/live/hebnczx.m3u8$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://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』 +河北都市,http://1.94.31.214/php/hebei.php?id=hbds$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』 鹿泉一套,http://hblq.chinashadt.com:2036/live/stream:luquan1.stream/playlist.m3u8$LR•IPV4 -河北经济,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://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://hblq.chinashadt.com:2036/live/stream:luquan2.stream/playlist.m3u8$LR•IPV4 内蒙古,#genre# @@ -1160,10 +1166,10 @@ NewTV精品体育,http://dl.wifi942.com:66/jsyd/jsyd.php?id=GITV-JS-65$LR•IPV4 江苏教育,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 -南京教科,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』 +南京教科,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 苏州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』 @@ -1258,22 +1264,22 @@ NewTV精品体育,http://dl.wifi942.com:66/jsyd/jsyd.php?id=GITV-JS-65$LR•IPV4 浙江民生,https://t.freetv.fun/live/zhe-jiang-min-sheng-4.m3u8$LR•IPV4•37『线路36』 浙江民生,https://stream1.freetv.fun/zhe-jiang-min-sheng-xiu-xian-5.m3u8$LR•IPV4•37『线路37』 浙江新闻,https://ali-m-l.cztv.com/channels/lantian/channel007/1080p.m3u8$LR•IPV4•34『线路1』 -浙江新闻,https://ali-m-l.cztv.com/channels/lantian/channel007/1080p.m3u8?$LR•IPV4•34『线路2』 -浙江新闻,http://ali-m-l.cztv.com/channels/lantian/channel007/720p.m3u8$LR•IPV4•34『线路3』 -浙江新闻,https://stream1.freetv.fun/zhe-jiang-xin-wen-11.m3u8$LR•IPV4•34『线路4』 -浙江新闻,http://ali-xwl.cztv.com/live/channel07720Plxw.m3u8$LR•IPV4•34『线路5』 -浙江新闻,https://stream1.freetv.fun/zhe-jiang-xin-wen-6.m3u8$LR•IPV4•34『线路6』 -浙江新闻,https://stream1.freetv.fun/zhe-jiang-xin-wen-4.m3u8$LR•IPV4•34『线路7』 -浙江新闻,https://stream1.freetv.fun/zhe-jiang-xin-wen-3.m3u8$LR•IPV4•34『线路8』 -浙江新闻,https://stream1.freetv.fun/zhe-jiang-xin-wen-1.m3u8$LR•IPV4•34『线路9』 -浙江新闻,https://t.freetv.fun/live/zhe-jiang-xin-wen-2.m3u8$LR•IPV4•34『线路10』 -浙江新闻,https://stream1.freetv.fun/zhe-jiang-xin-wen-2.m3u8$LR•IPV4•34『线路11』 -浙江新闻,https://t.freetv.fun/live/zhe-jiang-xin-wen-3.m3u8$LR•IPV4•34『线路12』 -浙江新闻,http://ali-xwl.cztv.com/live/channel071080Plxw.m3u8$LR•IPV4•34『线路13』 -浙江新闻,https://ali-m-l.cztv.com/channels/lantian/channel07/720p.m3u8$LR•IPV4•34『线路14』 -浙江新闻,https://stream1.freetv.fun/7fa07158e038a9bae3747a0cb9f8e8ff1aaba32669d28d99a498716f16569c1d.m3u8$LR•IPV4•34『线路15』 -浙江新闻,https://stream1.freetv.fun/zhe-jiang-xin-wen-9.m3u8$LR•IPV4•34『线路16』 -浙江新闻,https://stream1.freetv.fun/zhe-jiang-xin-wen-7.m3u8$LR•IPV4•34『线路17』 +浙江新闻,http://ali-m-l.cztv.com/channels/lantian/channel007/720p.m3u8$LR•IPV4•34『线路2』 +浙江新闻,https://stream1.freetv.fun/zhe-jiang-xin-wen-11.m3u8$LR•IPV4•34『线路3』 +浙江新闻,http://ali-xwl.cztv.com/live/channel07720Plxw.m3u8$LR•IPV4•34『线路4』 +浙江新闻,https://stream1.freetv.fun/zhe-jiang-xin-wen-6.m3u8$LR•IPV4•34『线路5』 +浙江新闻,https://stream1.freetv.fun/zhe-jiang-xin-wen-4.m3u8$LR•IPV4•34『线路6』 +浙江新闻,https://stream1.freetv.fun/zhe-jiang-xin-wen-3.m3u8$LR•IPV4•34『线路7』 +浙江新闻,https://stream1.freetv.fun/zhe-jiang-xin-wen-1.m3u8$LR•IPV4•34『线路8』 +浙江新闻,https://t.freetv.fun/live/zhe-jiang-xin-wen-2.m3u8$LR•IPV4•34『线路9』 +浙江新闻,https://stream1.freetv.fun/zhe-jiang-xin-wen-2.m3u8$LR•IPV4•34『线路10』 +浙江新闻,https://t.freetv.fun/live/zhe-jiang-xin-wen-3.m3u8$LR•IPV4•34『线路11』 +浙江新闻,http://ali-xwl.cztv.com/live/channel071080Plxw.m3u8$LR•IPV4•34『线路12』 +浙江新闻,https://ali-m-l.cztv.com/channels/lantian/channel07/720p.m3u8$LR•IPV4•34『线路13』 +浙江新闻,https://stream1.freetv.fun/7fa07158e038a9bae3747a0cb9f8e8ff1aaba32669d28d99a498716f16569c1d.m3u8$LR•IPV4•34『线路14』 +浙江新闻,https://stream1.freetv.fun/zhe-jiang-xin-wen-9.m3u8$LR•IPV4•34『线路15』 +浙江新闻,https://stream1.freetv.fun/zhe-jiang-xin-wen-7.m3u8$LR•IPV4•34『线路16』 +浙江新闻,https://ali-m-l.cztv.com/channels/lantian/channel007/1080p.m3u8?$LR•IPV4•34『线路17』 浙江新闻,http://ali-m-l.cztv.com/channels/lantian/channel007/1080p.m3u8?zzhed$LR•IPV4•34『线路18』 浙江新闻,http://ali-m-l.cztv.com/channels/lantian/channel007/1080p.m3u8$LR•IPV4•34『线路19』 浙江新闻,https://t.freetv.fun/live/zhe-jiang-xin-wen-1.m3u8$LR•IPV4•34『线路20』 @@ -1354,9 +1360,9 @@ NewTV精品体育,http://dl.wifi942.com:66/jsyd/jsyd.php?id=GITV-JS-65$LR•IPV4 浙江教科,http://ali-xwl.cztv.com/live/channel041080Plxw.m3u8$LR•IPV4•10『线路8』 浙江教科,http://ali-xwl.cztv.com/live/channel04720Plxw.m3u8$LR•IPV4•10『线路9』 浙江教科,http://ali-m-l.cztv.com/channels/lantian/channel04/1080p.m3u8$LR•IPV4•10『线路10』 -浙江经济,http://live.hznet.tv:1935/live/live2/500K/tzwj_video.m3u8?shandd$LR•IPV4•3『线路1』 -浙江经济,http://live.hznet.tv:1935/live/live2/500k/tzwj_video.m3u8$LR•IPV4•3『线路2』 -浙江经济,http://222.179.155.21:1935/ch0.m3u8$LR•IPV4•3『线路3』 +浙江经济,http://222.179.155.21:1935/ch0.m3u8$LR•IPV4•3『线路1』 +浙江经济,http://live.hznet.tv:1935/live/live2/500K/tzwj_video.m3u8?shandd$LR•IPV4•3『线路2』 +浙江经济,http://live.hznet.tv:1935/live/live2/500k/tzwj_video.m3u8$LR•IPV4•3『线路3』 之江纪录,https://ali-m-l.cztv.com/channels/lantian/channel012/1080p.m3u8$LR•IPV4•6『线路1』 之江纪录,http://ali-m-l.cztv.com/channels/lantian/channel12/1080p.m3u8$LR•IPV4•6『线路2』 之江纪录,http://zwebl02.cztv.com/live/channel121080P.m3u8?auth_key=2524708799-0-0-c33efdd495bcdd2ddc42e7c408405037$LR•IPV4•6『线路3』 @@ -1609,9 +1615,9 @@ NewTV精品体育,http://dl.wifi942.com:66/jsyd/jsyd.php?id=GITV-JS-65$LR•IPV4 余姚综合,http://l.cztvcloud.com/channels/lantian/SXyuyao1/720p.m3u8?zzhed$LR•IPV4•6『线路4』 余姚综合,http://l.cztvcloud.com/channels/lantian/SXyuyao1/720p.m3u8?cWlkPSZzPTg3OWMwYmMyZDMzYTFhZGY3NDQxMjgyYTg1MmUzNTY0JmVzPTE3MDY2Nzc4NzMmdXVpZD0yMjdiY2MzNGNiNGY0MThlYjRiY2IxYzcwNmZjODNkMS02NzQ3NDY2NyZ2PTImYXM9MCZjZG5leF9pZD10eF9waG9uZV9saXZl$LR•IPV4•6『线路5』 余姚综合,http://l.cztvcloud.com/channels/lantian/SXyuyao1/720p.m3u8?%E5%85%B3%E6%B3%A8%E5%BE%AE%E4%BF%A1%E5%85%AC%E4%BC%97%E5%8F%B7[%E6%99%B4%E5%9B%AD]$LR•IPV4•6『线路6』 -余姚姚江文化,http://l.cztvcloud.com/channels/lantian/SXyuyao3/720p.m3u8?zzhed$LR•IPV4•4『线路1』 +余姚姚江文化,https://l.cztvcloud.com/channels/lantian/SXyuyao3/720p.m3u8$LR•IPV4•4『线路1』 余姚姚江文化,http://l.cztvcloud.com/channels/lantian/SXyuyao3/720p.m3u8zzhed$LR•IPV4•4『线路2』 -余姚姚江文化,https://l.cztvcloud.com/channels/lantian/SXyuyao3/720p.m3u8$LR•IPV4•4『线路3』 +余姚姚江文化,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』 @@ -1801,8 +1807,8 @@ NewTV精品体育,http://dl.wifi942.com:66/jsyd/jsyd.php?id=GITV-JS-65$LR•IPV4 长沙新闻综合,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 -长沙政法,http://phonetx.qing.mgtv.com/nn_live/nn_x64/8.8&/CSZFMPP360.m3u8$LR•IPV4•2『线路1』 -长沙政法,http://35848.hlsplay.aodianyun.com/guangdianyun_35848/tv_channel_348.m3u8$LR•IPV4•2『线路2』 +长沙政法,http://35848.hlsplay.aodianyun.com/guangdianyun_35848/tv_channel_348.m3u8$LR•IPV4•2『线路1』 +长沙政法,http://phonetx.qing.mgtv.com/nn_live/nn_x64/8.8&/CSZFMPP360.m3u8$LR•IPV4•2『线路2』 长沙女性,http://35848.hlsplay.aodianyun.com/guangdianyun_35848/tv_channel_349.m3u8$LR•IPV4 衡阳新闻综合,https://liveplay-srs.voc.com.cn/hls/tv/183_554704.m3u8$LR•IPV4 @@ -2557,12 +2563,12 @@ NewTV精品体育,http://dl.wifi942.com:66/jsyd/jsyd.php?id=GITV-JS-65$LR•IPV4 江门侨乡生活,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://125.89.163.44:8888/udp/239.77.0.202:5146$LR•IPV4•4『线路3』 江门侨乡生活,http://120.77.205.62:8087/rtp/239.77.0.202:5146$LR•IPV4•4『线路4』 -河源综合,http://125.89.163.44:8888/udp/239.253.43.213:5146$LR•IPV4•6『线路1』 -河源综合,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=8947&tk=a0c4f6cfaba3$LR•IPV4•6『线路2』 -河源综合,http://120.234.5.28:6000/udp/239.21.0.48:3532$LR•IPV4•6『线路3』 -河源综合,https://tmpstream.hyrtv.cn/xwzh/sd/live.m3u8?_upt=f767206b1671099007$LR•IPV4•6『线路4』 -河源综合,http://tmpstream.hyrtv.cn/xwzh/sd/live.m3u8$LR•IPV4•6『线路5』 -河源综合,https://tmpstream.hyrtv.cn/xwzh/sd/live.m3u8$LR•IPV4•6『线路6』 +河源综合,https://tmpstream.hyrtv.cn/xwzh/sd/live.m3u8$LR•IPV4•6『线路1』 +河源综合,http://125.89.163.44:8888/udp/239.253.43.213:5146$LR•IPV4•6『线路2』 +河源综合,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=8947&tk=a0c4f6cfaba3$LR•IPV4•6『线路3』 +河源综合,http://120.234.5.28:6000/udp/239.21.0.48:3532$LR•IPV4•6『线路4』 +河源综合,https://tmpstream.hyrtv.cn/xwzh/sd/live.m3u8?_upt=f767206b1671099007$LR•IPV4•6『线路5』 +河源综合,http://tmpstream.hyrtv.cn/xwzh/sd/live.m3u8$LR•IPV4•6『线路6』 河源公共,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=5263&tk=a0c4f6cfaba3$LR•IPV4•6『线路1』 河源公共,http://120.234.5.28:6000/udp/239.21.0.49:3536$LR•IPV4•6『线路2』 河源公共,http://1b6467f415.iok.la:9931/tsfile/live/1079_1.m3u8$LR•IPV4•6『线路3』 @@ -2743,6 +2749,7 @@ NewTV精品体育,http://dl.wifi942.com:66/jsyd/jsyd.php?id=GITV-JS-65$LR•IPV4 南国都市,http://tencentplay.gztv.com/live/nanguodushi.m3u8?txSecret=140110ae3d6c936a77f94c4f4d85b0d3&txTime=18d57929bd4$LR•IPV4•8『线路8』 上海,#genre# +上海新闻,http://t.061899.xyz/tl/tl.php?id=shxwzh$LR•IPV4 上海都市,http://api3.52tb.xyz/info?id=372&token=20221127jxwhhemby$LR•IPV4•25『线路1』 上海都市,https://hls-gateway.vpstv.net/streams/708849.m3u8$LR•IPV4•25『线路2』 上海都市,https://zby.130519.xyz/PLTV/11/224/3221225749/index.m3u8$LR•IPV4•25『线路3』 @@ -2768,84 +2775,85 @@ NewTV精品体育,http://dl.wifi942.com:66/jsyd/jsyd.php?id=GITV-JS-65$LR•IPV4 上海都市,https://stream1.freetv.fun/ipv6-shang-hai-du-shi-10.m3u8$LR•IPV4•25『线路23』 上海都市,https://stream1.freetv.fun/shang-hai-du-shi-7.m3u8$LR•IPV4•25『线路24』 上海都市,https://stream1.freetv.fun/ipv6-shang-hai-du-shi-6.m3u8$LR•IPV4•25『线路25』 -上海外语,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=2446&tk=e640d0a1bf70$LR•IPV4•7『线路1』 -上海外语,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=1734&tk=b53028476470$LR•IPV4•7『线路2』 -上海外语,http://111.22.153.159:35455/itv/2000000002000000001.m3u8?cdn=hnbblive$LR•IPV4•7『线路3』 -上海外语,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=6608&tk=e503191f8e20$LR•IPV4•7『线路4』 -上海外语,http://150.158.112.123/公众号~玉玉软件库/mg.php?id=shics$LR•IPV4•7『线路5』 -上海外语,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=0017&tk=a0c4f6cfaba3$LR•IPV4•7『线路6』 -上海外语,http://t.061899.xyz/tl/tl.php?id=shics$LR•IPV4•7『线路7』 -五星体育,http://101.35.240.114:88/live.php?id=五星体育$LR•IPV4•41『线路1』 -五星体育,https://stream1.freetv.fun/wu-xing-ti-yu-5.m3u8$LR•IPV4•41『线路2』 -五星体育,https://stream1.freetv.fun/wu-xing-ti-yu-3.m3u8$LR•IPV4•41『线路3』 -五星体育,https://stream1.freetv.fun/ipv6-wu-xing-ti-yu-6.m3u8$LR•IPV4•41『线路4』 -五星体育,https://stream1.freetv.fun/wu-xing-ti-yu-14.m3u8$LR•IPV4•41『线路5』 -五星体育,https://other.ottiptv.cc/wxty.m3u8$LR•IPV4•41『线路6』 -五星体育,https://stream1.freetv.fun/ipv6-wu-xing-ti-yu-2.m3u8$LR•IPV4•41『线路7』 -五星体育,https://stream1.freetv.fun/ipv6-wu-xing-ti-yu-1.m3u8$LR•IPV4•41『线路8』 -五星体育,https://stream1.freetv.fun/ipv6-wu-xing-ti-yu-3.m3u8$LR•IPV4•41『线路9』 -五星体育,https://stream1.freetv.fun/wu-xing-ti-yu-9.m3u8$LR•IPV4•41『线路10』 -五星体育,https://stream1.freetv.fun/wu-xing-ti-yu-4.m3u8$LR•IPV4•41『线路11』 -五星体育,https://stream1.freetv.fun/wu-xing-ti-yu-7.m3u8$LR•IPV4•41『线路12』 -五星体育,http://home.wwang.pw:35455/itv/5000000010000017540.m3u8?cdn=bestzb$LR•IPV4•41『线路13』 -五星体育,https://stream1.freetv.fun/wu-xing-ti-yu-1.m3u8$LR•IPV4•41『线路14』 -五星体育,http://bp-livetytv.bestv.cn/ch/bestvwxty.m3u8$LR•IPV4•41『线路15』 -五星体育,https://hls-gateway.vpstv.net/streams/636980.m3u8$LR•IPV4•41『线路16』 -五星体育,https://stream1.freetv.fun/ipv6-wu-xing-ti-yu-14.m3u8$LR•IPV4•41『线路17』 -五星体育,http://36.105.100.208:35455/itv/5000000010000017540.m3u8?cdn=bestzb$LR•IPV4•41『线路18』 -五星体育,https://t.freetv.fun/live/wu-xing-ti-yu-4.m3u8$LR•IPV4•41『线路19』 -五星体育,https://stream1.freetv.fun/wu-xing-ti-yu-6.m3u8$LR•IPV4•41『线路20』 -五星体育,https://stream1.freetv.fun/wu-xing-ti-yu-13.m3u8$LR•IPV4•41『线路21』 -五星体育,https://stream1.freetv.fun/ipv6-wu-xing-ti-yu-7.m3u8$LR•IPV4•41『线路22』 -五星体育,https://stream1.freetv.fun/wu-xing-ti-yu-12.m3u8$LR•IPV4•41『线路23』 -五星体育,https://stream1.freetv.fun/wu-xing-ti-yu-15.m3u8$LR•IPV4•41『线路24』 -五星体育,http://63.141.230.178:82/gslb/zbdq5.m3u8?id=wxtyhd$LR•IPV4•41『线路25』 -五星体育,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=4759&tk=7d4ad8f156e3$LR•IPV4•41『线路26』 -五星体育,https://stream1.freetv.fun/wu-xing-ti-yu-10.m3u8$LR•IPV4•41『线路27』 -五星体育,https://migu.188766.xyz/?migutoken=ed5a02a3b87f3dcc808d4b733daf5cf9&id=%E4%BA%94%E6%98%9F%E4%BD%93%E8%82%B2&pp=1$LR•IPV4•41『线路28』 -五星体育,http://3501776.xyz:35455/itv/5000000010000017540.m3u8?cdn=bestzb$LR•IPV4•41『线路29』 -五星体育,https://stream1.freetv.fun/wu-xing-ti-yu-2.m3u8$LR•IPV4•41『线路30』 -五星体育,https://t.freetv.fun/live/wu-xing-ti-yu-1.m3u8$LR•IPV4•41『线路31』 -五星体育,https://stream1.freetv.fun/wu-xing-ti-yu-8.m3u8$LR•IPV4•41『线路32』 -五星体育,https://zby.130519.xyz/PLTV/11/224/3221225732/index.m3u8$LR•IPV4•41『线路33』 -五星体育,http://live.xmcdn.com/live/57/64.m3u8$LR•IPV4•41『线路34』 -五星体育,https://stream1.freetv.fun/wu-xing-ti-yu-11.m3u8$LR•IPV4•41『线路35』 -五星体育,http://8.138.7.223/tv/shtv.php?id=wxty$LR•IPV4•41『线路36』 -五星体育,https://stream1.freetv.fun/ipv6-wu-xing-ti-yu-10.m3u8$LR•IPV4•41『线路37』 -五星体育,https://stream1.freetv.fun/wu-xing-ti-yu-13.ctv$LR•IPV4•41『线路38』 -五星体育,http://api2.52tb.xyz/info?id=375&token=20230120rdbtgv$LR•IPV4•41『线路39』 -五星体育,https://stream1.freetv.fun/ipv6-wu-xing-ti-yu-8.m3u8$LR•IPV4•41『线路40』 -五星体育,http://223.110.245.147/ott.js.chinamobile.com/PLTV/3/224/3221226799/index.m3u8$LR•IPV4•41『线路41』 -东方影视,https://www.freetv.top/migu/617290047.m3u8?migutoken=86c02ad0875d5cc49d77bcc8bdb628f2c9d508ffc323b964a03c8f92dde4afafa0345cf5a8fefbdf915c748e3d11c6c18e27ae1e21a609cec31a45e6c437db26a7a243625f9cf35c271171a22c$LR•IPV4•31『线路1』 -东方影视,https://zby.130519.xyz/PLTV/11/224/3221225744/index.m3u8$LR•IPV4•31『线路2』 -东方影视,https://stream1.freetv.fun/dong-fang-ying-shi-4.ctv$LR•IPV4•31『线路3』 -东方影视,https://stream1.freetv.fun/dong-fang-ying-shi-6.ctv$LR•IPV4•31『线路4』 -东方影视,https://stream1.freetv.fun/dong-fang-ying-shi-2.m3u8$LR•IPV4•31『线路5』 -东方影视,https://stream1.freetv.fun/dong-fang-ying-shi-1.m3u8$LR•IPV4•31『线路6』 -东方影视,https://stream1.freetv.fun/dong-fang-ying-shi-6.m3u8$LR•IPV4•31『线路7』 -东方影视,https://stream1.freetv.fun/ipv6-dong-fang-ying-shi-13.m3u8$LR•IPV4•31『线路8』 -东方影视,http://111.228.4.117:6789/migu720p.php?id=617290047$LR•IPV4•31『线路9』 -东方影视,https://stream1.freetv.fun/dong-fang-ying-shi-10.m3u8$LR•IPV4•31『线路10』 -东方影视,https://stream1.freetv.fun/dong-fang-ying-shi-7.m3u8$LR•IPV4•31『线路11』 -东方影视,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=2690&tk=e640d0a1bf70$LR•IPV4•31『线路12』 -东方影视,https://stream1.freetv.fun/dong-fang-ying-shi-13.m3u8$LR•IPV4•31『线路13』 -东方影视,https://stream1.freetv.fun/ipv6-dong-fang-ying-shi-5.m3u8$LR•IPV4•31『线路14』 -东方影视,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=1407&tk=e503191f8e20$LR•IPV4•31『线路15』 -东方影视,https://stream1.freetv.fun/ipv6-dong-fang-ying-shi-6.m3u8$LR•IPV4•31『线路16』 -东方影视,https://stream1.freetv.fun/dong-fang-ying-shi-12.m3u8$LR•IPV4•31『线路17』 -东方影视,https://stream1.freetv.fun/ipv6-dong-fang-ying-shi-4.m3u8$LR•IPV4•31『线路18』 -东方影视,https://stream1.freetv.fun/ipv6-dong-fang-ying-shi-9.m3u8$LR•IPV4•31『线路19』 -东方影视,http://111.22.153.159:35455/itv/5000000010000032212.m3u8?cdn=bestzb$LR•IPV4•31『线路20』 -东方影视,https://stream1.freetv.fun/ipv6-dong-fang-ying-shi-7.m3u8$LR•IPV4•31『线路21』 -东方影视,http://150.158.112.123/公众号~玉玉软件库/mg.php?id=dfys$LR•IPV4•31『线路22』 -东方影视,http://hlsztemgsplive.miguvideo.com:8080/wd_r4/dfl/dianshijuhd/1200/index.m3u8?msisdn=2be6b2ec9fcf10d2c2457e2c710e172c&mdspid=&spid=699212&netType=0&sid=5500002274&pid=2028597139×tamp=20260717060205&Channel_ID=0116_2600034600-99000-201600010010028&ProgramID=617290047&ParentNodeID=-99&assertID=5500002274&client_ip=171.8.79.254&SecurityKey=20260717060205&promotionId=&mvid=5100001715&mcid=500020&playurlVersion=WX-A1-9.6.1.6-SNAPSHOT&userid=&jmhm=&videocodec=h264&appCode=miguvideo_android&bean=mgspad&tid=android&conFee=0&encrypt=c4b980e210525d128eccf975001aa253&sv=10004&ct=android$LR•IPV4•31『线路23』 -东方影视,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=6090&tk=b53028476470$LR•IPV4•31『线路24』 -东方影视,https://stream1.freetv.fun/ipv6-dong-fang-ying-shi-3.m3u8$LR•IPV4•31『线路25』 -东方影视,https://stream1.freetv.fun/ipv6-dong-fang-ying-shi-2.m3u8$LR•IPV4•31『线路26』 -东方影视,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=1285&tk=2aca1ad9a849$LR•IPV4•31『线路27』 -东方影视,https://stream1.freetv.fun/dong-fang-ying-shi-8.m3u8$LR•IPV4•31『线路28』 -东方影视,https://stream1.freetv.fun/ipv6-dong-fang-ying-shi-8.m3u8$LR•IPV4•31『线路29』 -东方影视,http://t.061899.xyz/tl/tl.php?id=dfys$LR•IPV4•31『线路30』 +上海外语,http://t.061899.xyz/tl/tl.php?id=shics$LR•IPV4•7『线路1』 +上海外语,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=2446&tk=e640d0a1bf70$LR•IPV4•7『线路2』 +上海外语,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=1734&tk=b53028476470$LR•IPV4•7『线路3』 +上海外语,http://111.22.153.159:35455/itv/2000000002000000001.m3u8?cdn=hnbblive$LR•IPV4•7『线路4』 +上海外语,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=6608&tk=e503191f8e20$LR•IPV4•7『线路5』 +上海外语,http://150.158.112.123/公众号~玉玉软件库/mg.php?id=shics$LR•IPV4•7『线路6』 +上海外语,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=0017&tk=a0c4f6cfaba3$LR•IPV4•7『线路7』 +七彩戏剧,http://t.061899.xyz/tl/tl.php?id=qcxj$LR•IPV4 +五星体育,http://223.110.245.147/ott.js.chinamobile.com/PLTV/3/224/3221226799/index.m3u8$LR•IPV4•41『线路1』 +五星体育,http://101.35.240.114:88/live.php?id=五星体育$LR•IPV4•41『线路2』 +五星体育,https://stream1.freetv.fun/wu-xing-ti-yu-5.m3u8$LR•IPV4•41『线路3』 +五星体育,https://stream1.freetv.fun/wu-xing-ti-yu-3.m3u8$LR•IPV4•41『线路4』 +五星体育,https://stream1.freetv.fun/ipv6-wu-xing-ti-yu-6.m3u8$LR•IPV4•41『线路5』 +五星体育,https://stream1.freetv.fun/wu-xing-ti-yu-14.m3u8$LR•IPV4•41『线路6』 +五星体育,https://other.ottiptv.cc/wxty.m3u8$LR•IPV4•41『线路7』 +五星体育,https://stream1.freetv.fun/ipv6-wu-xing-ti-yu-2.m3u8$LR•IPV4•41『线路8』 +五星体育,https://stream1.freetv.fun/ipv6-wu-xing-ti-yu-1.m3u8$LR•IPV4•41『线路9』 +五星体育,https://stream1.freetv.fun/ipv6-wu-xing-ti-yu-3.m3u8$LR•IPV4•41『线路10』 +五星体育,https://stream1.freetv.fun/wu-xing-ti-yu-9.m3u8$LR•IPV4•41『线路11』 +五星体育,https://stream1.freetv.fun/wu-xing-ti-yu-4.m3u8$LR•IPV4•41『线路12』 +五星体育,https://stream1.freetv.fun/wu-xing-ti-yu-7.m3u8$LR•IPV4•41『线路13』 +五星体育,http://home.wwang.pw:35455/itv/5000000010000017540.m3u8?cdn=bestzb$LR•IPV4•41『线路14』 +五星体育,https://stream1.freetv.fun/wu-xing-ti-yu-1.m3u8$LR•IPV4•41『线路15』 +五星体育,http://bp-livetytv.bestv.cn/ch/bestvwxty.m3u8$LR•IPV4•41『线路16』 +五星体育,https://hls-gateway.vpstv.net/streams/636980.m3u8$LR•IPV4•41『线路17』 +五星体育,https://stream1.freetv.fun/ipv6-wu-xing-ti-yu-14.m3u8$LR•IPV4•41『线路18』 +五星体育,http://36.105.100.208:35455/itv/5000000010000017540.m3u8?cdn=bestzb$LR•IPV4•41『线路19』 +五星体育,https://t.freetv.fun/live/wu-xing-ti-yu-4.m3u8$LR•IPV4•41『线路20』 +五星体育,https://stream1.freetv.fun/wu-xing-ti-yu-6.m3u8$LR•IPV4•41『线路21』 +五星体育,https://stream1.freetv.fun/wu-xing-ti-yu-13.m3u8$LR•IPV4•41『线路22』 +五星体育,https://stream1.freetv.fun/ipv6-wu-xing-ti-yu-7.m3u8$LR•IPV4•41『线路23』 +五星体育,https://stream1.freetv.fun/wu-xing-ti-yu-12.m3u8$LR•IPV4•41『线路24』 +五星体育,https://stream1.freetv.fun/wu-xing-ti-yu-15.m3u8$LR•IPV4•41『线路25』 +五星体育,http://63.141.230.178:82/gslb/zbdq5.m3u8?id=wxtyhd$LR•IPV4•41『线路26』 +五星体育,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=4759&tk=7d4ad8f156e3$LR•IPV4•41『线路27』 +五星体育,https://stream1.freetv.fun/wu-xing-ti-yu-10.m3u8$LR•IPV4•41『线路28』 +五星体育,https://migu.188766.xyz/?migutoken=ed5a02a3b87f3dcc808d4b733daf5cf9&id=%E4%BA%94%E6%98%9F%E4%BD%93%E8%82%B2&pp=1$LR•IPV4•41『线路29』 +五星体育,http://3501776.xyz:35455/itv/5000000010000017540.m3u8?cdn=bestzb$LR•IPV4•41『线路30』 +五星体育,https://stream1.freetv.fun/wu-xing-ti-yu-2.m3u8$LR•IPV4•41『线路31』 +五星体育,https://t.freetv.fun/live/wu-xing-ti-yu-1.m3u8$LR•IPV4•41『线路32』 +五星体育,https://stream1.freetv.fun/wu-xing-ti-yu-8.m3u8$LR•IPV4•41『线路33』 +五星体育,https://zby.130519.xyz/PLTV/11/224/3221225732/index.m3u8$LR•IPV4•41『线路34』 +五星体育,http://live.xmcdn.com/live/57/64.m3u8$LR•IPV4•41『线路35』 +五星体育,https://stream1.freetv.fun/wu-xing-ti-yu-11.m3u8$LR•IPV4•41『线路36』 +五星体育,http://8.138.7.223/tv/shtv.php?id=wxty$LR•IPV4•41『线路37』 +五星体育,https://stream1.freetv.fun/ipv6-wu-xing-ti-yu-10.m3u8$LR•IPV4•41『线路38』 +五星体育,https://stream1.freetv.fun/wu-xing-ti-yu-13.ctv$LR•IPV4•41『线路39』 +五星体育,http://api2.52tb.xyz/info?id=375&token=20230120rdbtgv$LR•IPV4•41『线路40』 +五星体育,https://stream1.freetv.fun/ipv6-wu-xing-ti-yu-8.m3u8$LR•IPV4•41『线路41』 +东方影视,http://t.061899.xyz/tl/tl.php?id=dfys$LR•IPV4•31『线路1』 +东方影视,https://www.freetv.top/migu/617290047.m3u8?migutoken=86c02ad0875d5cc49d77bcc8bdb628f2c9d508ffc323b964a03c8f92dde4afafa0345cf5a8fefbdf915c748e3d11c6c18e27ae1e21a609cec31a45e6c437db26a7a243625f9cf35c271171a22c$LR•IPV4•31『线路2』 +东方影视,https://zby.130519.xyz/PLTV/11/224/3221225744/index.m3u8$LR•IPV4•31『线路3』 +东方影视,https://stream1.freetv.fun/dong-fang-ying-shi-4.ctv$LR•IPV4•31『线路4』 +东方影视,https://stream1.freetv.fun/dong-fang-ying-shi-6.ctv$LR•IPV4•31『线路5』 +东方影视,https://stream1.freetv.fun/dong-fang-ying-shi-2.m3u8$LR•IPV4•31『线路6』 +东方影视,https://stream1.freetv.fun/dong-fang-ying-shi-1.m3u8$LR•IPV4•31『线路7』 +东方影视,https://stream1.freetv.fun/dong-fang-ying-shi-6.m3u8$LR•IPV4•31『线路8』 +东方影视,https://stream1.freetv.fun/ipv6-dong-fang-ying-shi-13.m3u8$LR•IPV4•31『线路9』 +东方影视,http://111.228.4.117:6789/migu720p.php?id=617290047$LR•IPV4•31『线路10』 +东方影视,https://stream1.freetv.fun/dong-fang-ying-shi-10.m3u8$LR•IPV4•31『线路11』 +东方影视,https://stream1.freetv.fun/dong-fang-ying-shi-7.m3u8$LR•IPV4•31『线路12』 +东方影视,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=2690&tk=e640d0a1bf70$LR•IPV4•31『线路13』 +东方影视,https://stream1.freetv.fun/dong-fang-ying-shi-13.m3u8$LR•IPV4•31『线路14』 +东方影视,https://stream1.freetv.fun/ipv6-dong-fang-ying-shi-5.m3u8$LR•IPV4•31『线路15』 +东方影视,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=1407&tk=e503191f8e20$LR•IPV4•31『线路16』 +东方影视,https://stream1.freetv.fun/ipv6-dong-fang-ying-shi-6.m3u8$LR•IPV4•31『线路17』 +东方影视,https://stream1.freetv.fun/dong-fang-ying-shi-12.m3u8$LR•IPV4•31『线路18』 +东方影视,https://stream1.freetv.fun/ipv6-dong-fang-ying-shi-4.m3u8$LR•IPV4•31『线路19』 +东方影视,https://stream1.freetv.fun/ipv6-dong-fang-ying-shi-9.m3u8$LR•IPV4•31『线路20』 +东方影视,http://111.22.153.159:35455/itv/5000000010000032212.m3u8?cdn=bestzb$LR•IPV4•31『线路21』 +东方影视,https://stream1.freetv.fun/ipv6-dong-fang-ying-shi-7.m3u8$LR•IPV4•31『线路22』 +东方影视,http://150.158.112.123/公众号~玉玉软件库/mg.php?id=dfys$LR•IPV4•31『线路23』 +东方影视,http://hlsztemgsplive.miguvideo.com:8080/wd_r4/dfl/dianshijuhd/1200/index.m3u8?msisdn=2be6b2ec9fcf10d2c2457e2c710e172c&mdspid=&spid=699212&netType=0&sid=5500002274&pid=2028597139×tamp=20260717060205&Channel_ID=0116_2600034600-99000-201600010010028&ProgramID=617290047&ParentNodeID=-99&assertID=5500002274&client_ip=171.8.79.254&SecurityKey=20260717060205&promotionId=&mvid=5100001715&mcid=500020&playurlVersion=WX-A1-9.6.1.6-SNAPSHOT&userid=&jmhm=&videocodec=h264&appCode=miguvideo_android&bean=mgspad&tid=android&conFee=0&encrypt=c4b980e210525d128eccf975001aa253&sv=10004&ct=android$LR•IPV4•31『线路24』 +东方影视,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=6090&tk=b53028476470$LR•IPV4•31『线路25』 +东方影视,https://stream1.freetv.fun/ipv6-dong-fang-ying-shi-3.m3u8$LR•IPV4•31『线路26』 +东方影视,https://stream1.freetv.fun/ipv6-dong-fang-ying-shi-2.m3u8$LR•IPV4•31『线路27』 +东方影视,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=1285&tk=2aca1ad9a849$LR•IPV4•31『线路28』 +东方影视,https://stream1.freetv.fun/dong-fang-ying-shi-8.m3u8$LR•IPV4•31『线路29』 +东方影视,https://stream1.freetv.fun/ipv6-dong-fang-ying-shi-8.m3u8$LR•IPV4•31『线路30』 东方影视,http://43.251.226.89:8080/play/58.m3u8$LR•IPV4•31『线路31』 东方财经,http://124.248.69.76:26781/douyu/9548279$LR•IPV4•10『线路1』 东方财经,http://wouu.net:9977/udp/239.93.1.165:5140$LR•IPV4•10『线路2』 @@ -2857,41 +2865,42 @@ NewTV精品体育,http://dl.wifi942.com:66/jsyd/jsyd.php?id=GITV-JS-65$LR•IPV4 东方财经,http://111.22.153.159:35455/itv/5000000007000010003.m3u8?cdn=bestzb$LR•IPV4•10『线路8』 东方财经,http://61.133.118.228:5001/douyu/9548279$LR•IPV4•10『线路9』 东方财经,https://live.264788.xyz/channel/dongfangcaijing?streamid=a031f2386ada4bc1264edce79c80dd18&livekey=01WgOR41rriMmMkzNsd0UoaxJRwetZdxIvtVk$LR•IPV4•10『线路10』 -第一财经,https://migu.188766.xyz/?migutoken=20bb1a06124bd6ea328162fe9605882d&id=dycj&type=sz$LR•IPV4•49『线路1』 -第一财经,https://stream1.freetv.fun/ipv6-di-yi-cai-jing-6.m3u8$LR•IPV4•49『线路2』 -第一财经,http://a1live.livecdn.yicai.com/live/radio_tv.m3u8$LR•IPV4•49『线路3』 -第一财经,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=4663&tk=f6cc1e0a0e1a$LR•IPV4•49『线路4』 -第一财经,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=4640&tk=e503191f8e20$LR•IPV4•49『线路5』 -第一财经,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=7436&tk=b53028476470$LR•IPV4•49『线路6』 -第一财经,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•49『线路7』 -第一财经,https://stream1.freetv.fun/di-yi-cai-jing-3.m3u8$LR•IPV4•49『线路8』 -第一财经,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=4810&tk=23a9aca1f79f$LR•IPV4•49『线路9』 -第一财经,http://43.251.226.89:8080/play/59.m3u8$LR•IPV4•49『线路10』 -第一财经,https://www.freetv.top/migu/608780988.m3u8?migutoken=62e21890acbd9928d0be0b4eae9f5e32e1879604b785ee7ce8751d5001a9ff431d7714025aa03d48a2b190ff214e5115dcb6ba455c3d26b1db0f5b3cb49c5967429ff3b1fe8e96e87cc6146543$LR•IPV4•49『线路11』 -第一财经,https://stream1.freetv.fun/di-yi-cai-jing-6.ctv$LR•IPV4•49『线路12』 -第一财经,https://satellitepull.cnr.cn/live/wx32dycjgb/playlist.m3u8$LR•IPV4•49『线路13』 -第一财经,https://stream1.freetv.fun/di-yi-cai-jing-10.m3u8$LR•IPV4•49『线路14』 -第一财经,https://stream1.freetv.fun/ipv6-di-yi-cai-jing-3.m3u8$LR•IPV4•49『线路15』 -第一财经,https://hls-gateway.vpstv.net/streams/708851.m3u8$LR•IPV4•49『线路16』 -第一财经,https://stream1.freetv.fun/di-yi-cai-jing-9.m3u8$LR•IPV4•49『线路17』 -第一财经,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=8321&tk=e640d0a1bf70$LR•IPV4•49『线路18』 -第一财经,http://47.104.178.59:3566/608780988$LR•IPV4•49『线路19』 -第一财经,http://satellitepull.cnr.cn/live/wx32dycjgb/playlist.m3u8$LR•IPV4•49『线路20』 -第一财经,https://stream1.freetv.fun/ipv6-di-yi-cai-jing-11.m3u8$LR•IPV4•49『线路21』 -第一财经,https://mgtv.ottiptv.cc/migu/608780988.m3u8?migutoken=0c7df30d952e5d120406d3eb259cd5e26ec6aa86037008719de147cc6fbc34e877c3e3d7b9617267f35521bdddc4c5995e6fc0583816a5df1bfe19814868525e736733676761a4b2d4db618e84$LR•IPV4•49『线路22』 -第一财经,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=0917&tk=2aca1ad9a849$LR•IPV4•49『线路23』 -第一财经,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=6806&tk=a0c4f6cfaba3$LR•IPV4•49『线路24』 -第一财经,https://stream1.freetv.fun/di-yi-cai-jing-7.m3u8$LR•IPV4•49『线路25』 -第一财经,https://stream1.freetv.fun/di-yi-cai-jing-13.m3u8$LR•IPV4•49『线路26』 -第一财经,http://101.43.145.141:12002/itv/5000000010000027146.m3u8?cdn=bestzb$LR•IPV4•49『线路27』 -第一财经,http://123.113.205.253:3000/608780988$LR•IPV4•49『线路28』 -第一财经,https://zby.130519.xyz/PLTV/11/224/3221225737/index.m3u8$LR•IPV4•49『线路29』 -第一财经,http://111.228.4.117:6789/migu720p.php?id=608780988$LR•IPV4•49『线路30』 -第一财经,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=0771&tk=a0c4f6cfaba3$LR•IPV4•49『线路31』 -第一财经,http://bp-livetytv.bestv.cn/ch/bestvdycj.m3u8$LR•IPV4•49『线路32』 -第一财经,https://stream1.freetv.fun/di-yi-cai-jing-2.m3u8$LR•IPV4•49『线路33』 -第一财经,https://www.freetv.top/migu/608780988.m3u8?migutoken=94882e783c75b9369ca6a018f97fe3a3c0018f9da123958e316bb810ef22e907f0672a7d63496e5cb5041eb125b1f1ee6996ac856b0c0c9828348878b8a4101384b9a851fb1dea60a7fafeea35$LR•IPV4•49『线路34』 -第一财经,http://t.061899.xyz/tl/tl.php?id=dycj$LR•IPV4•49『线路35』 +法治天地,http://t.061899.xyz/tl/tl.php?id=fztd$LR•IPV4 +第一财经,http://t.061899.xyz/tl/tl.php?id=dycj$LR•IPV4•49『线路1』 +第一财经,https://migu.188766.xyz/?migutoken=20bb1a06124bd6ea328162fe9605882d&id=dycj&type=sz$LR•IPV4•49『线路2』 +第一财经,https://stream1.freetv.fun/ipv6-di-yi-cai-jing-6.m3u8$LR•IPV4•49『线路3』 +第一财经,http://a1live.livecdn.yicai.com/live/radio_tv.m3u8$LR•IPV4•49『线路4』 +第一财经,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=4663&tk=f6cc1e0a0e1a$LR•IPV4•49『线路5』 +第一财经,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=4640&tk=e503191f8e20$LR•IPV4•49『线路6』 +第一财经,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=7436&tk=b53028476470$LR•IPV4•49『线路7』 +第一财经,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•49『线路8』 +第一财经,https://stream1.freetv.fun/di-yi-cai-jing-3.m3u8$LR•IPV4•49『线路9』 +第一财经,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=4810&tk=23a9aca1f79f$LR•IPV4•49『线路10』 +第一财经,http://43.251.226.89:8080/play/59.m3u8$LR•IPV4•49『线路11』 +第一财经,https://www.freetv.top/migu/608780988.m3u8?migutoken=62e21890acbd9928d0be0b4eae9f5e32e1879604b785ee7ce8751d5001a9ff431d7714025aa03d48a2b190ff214e5115dcb6ba455c3d26b1db0f5b3cb49c5967429ff3b1fe8e96e87cc6146543$LR•IPV4•49『线路12』 +第一财经,https://stream1.freetv.fun/di-yi-cai-jing-6.ctv$LR•IPV4•49『线路13』 +第一财经,https://satellitepull.cnr.cn/live/wx32dycjgb/playlist.m3u8$LR•IPV4•49『线路14』 +第一财经,https://stream1.freetv.fun/di-yi-cai-jing-10.m3u8$LR•IPV4•49『线路15』 +第一财经,https://stream1.freetv.fun/ipv6-di-yi-cai-jing-3.m3u8$LR•IPV4•49『线路16』 +第一财经,https://hls-gateway.vpstv.net/streams/708851.m3u8$LR•IPV4•49『线路17』 +第一财经,https://stream1.freetv.fun/di-yi-cai-jing-9.m3u8$LR•IPV4•49『线路18』 +第一财经,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=8321&tk=e640d0a1bf70$LR•IPV4•49『线路19』 +第一财经,http://47.104.178.59:3566/608780988$LR•IPV4•49『线路20』 +第一财经,http://satellitepull.cnr.cn/live/wx32dycjgb/playlist.m3u8$LR•IPV4•49『线路21』 +第一财经,https://stream1.freetv.fun/ipv6-di-yi-cai-jing-11.m3u8$LR•IPV4•49『线路22』 +第一财经,https://mgtv.ottiptv.cc/migu/608780988.m3u8?migutoken=0c7df30d952e5d120406d3eb259cd5e26ec6aa86037008719de147cc6fbc34e877c3e3d7b9617267f35521bdddc4c5995e6fc0583816a5df1bfe19814868525e736733676761a4b2d4db618e84$LR•IPV4•49『线路23』 +第一财经,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=0917&tk=2aca1ad9a849$LR•IPV4•49『线路24』 +第一财经,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=6806&tk=a0c4f6cfaba3$LR•IPV4•49『线路25』 +第一财经,https://stream1.freetv.fun/di-yi-cai-jing-7.m3u8$LR•IPV4•49『线路26』 +第一财经,https://stream1.freetv.fun/di-yi-cai-jing-13.m3u8$LR•IPV4•49『线路27』 +第一财经,http://101.43.145.141:12002/itv/5000000010000027146.m3u8?cdn=bestzb$LR•IPV4•49『线路28』 +第一财经,http://123.113.205.253:3000/608780988$LR•IPV4•49『线路29』 +第一财经,https://zby.130519.xyz/PLTV/11/224/3221225737/index.m3u8$LR•IPV4•49『线路30』 +第一财经,http://111.228.4.117:6789/migu720p.php?id=608780988$LR•IPV4•49『线路31』 +第一财经,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=0771&tk=a0c4f6cfaba3$LR•IPV4•49『线路32』 +第一财经,http://bp-livetytv.bestv.cn/ch/bestvdycj.m3u8$LR•IPV4•49『线路33』 +第一财经,https://stream1.freetv.fun/di-yi-cai-jing-2.m3u8$LR•IPV4•49『线路34』 +第一财经,https://www.freetv.top/migu/608780988.m3u8?migutoken=94882e783c75b9369ca6a018f97fe3a3c0018f9da123958e316bb810ef22e907f0672a7d63496e5cb5041eb125b1f1ee6996ac856b0c0c9828348878b8a4101384b9a851fb1dea60a7fafeea35$LR•IPV4•49『线路35』 第一财经,https://stream1.freetv.fun/ipv6-di-yi-cai-jing-5.m3u8$LR•IPV4•49『线路36』 第一财经,http://mgsp-cty2.live.miguvideo.com:8088/wd_r1/2018/bestv/dycj/1000/index.m3u8?msisdn=2be6b2ec9fcf10d2c2457e2c710e172c&mdspid=&spid=699212&netType=0&sid=2201008312&pid=2028597139×tamp=20260717080210&Channel_ID=0116_2600034600-99000-201600010010028&ProgramID=608780988&ParentNodeID=-99&assertID=2201008312&client_ip=171.8.79.254&SecurityKey=20260717080210&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=b169350279c84ee287c0bfba0632efda&sv=10004&ct=android$LR•IPV4•49『线路37』 第一财经,http://115.190.247.176:1111/608780988$LR•IPV4•49『线路38』 @@ -2917,154 +2926,154 @@ NewTV精品体育,http://dl.wifi942.com:66/jsyd/jsyd.php?id=GITV-JS-65$LR•IPV4 上海纪实,https://stream1.freetv.fun/ipv6-shang-hai-ji-shi-ren-wen-2.m3u8$LR•IPV4•10『线路9』 上海纪实,http://wouu.net:9977/udp/239.93.1.137:5140$LR•IPV4•10『线路10』 新闻综合,http://l.cztvcloud.com/channels/lantian/SXshengzhou1/720p.m3u8?zzhed#http://l.cztvcloud.com/channels/lantian/SXshengzhou1/720p.m3u8$LR•IPV4•115『线路1』 -新闻综合,https://stream1.freetv.fun/ipv6-ji-nan-xin-wen-zong-he-8.m3u8$LR•IPV4•115『线路2』 -新闻综合,https://stream1.freetv.fun/ji-nan-xin-wen-zong-he-7.m3u8$LR•IPV4•115『线路3』 -新闻综合,http://stream.zztvzd.com/1/sd/live.m3u8$LR•IPV4•115『线路4』 -新闻综合,http://stream.zztvzd.com/1/sd/live.m3u8?shandd$LR•IPV4•115『线路5』 -新闻综合,https://stream1.freetv.fun/ipv6-wei-fang-xin-wen-zong-he-1.m3u8$LR•IPV4•115『线路6』 -新闻综合,https://stream1.freetv.fun/ipv6-wei-fang-xin-wen-zong-he-2.m3u8$LR•IPV4•115『线路7』 -新闻综合,http://live.yantaitv.cn/live/3e81a8879da44c5dadf3bd9c10468e1c/9b776d420ee4438199b7657c8eb88f07-1.m3u8$LR•IPV4•115『线路8』 -新闻综合,http://live.hznet.tv:1935/live/live1/500k/tzwj_video.m3u8$LR•IPV4•115『线路9』 -新闻综合,http://live.hznet.tv:1935/live/live1/500K/tzwj_video.m3u8?shandd$LR•IPV4•115『线路10』 -新闻综合,http://live.wanyuannews.com/wytv/hd/live.m3u8?zsicd$LR•IPV4•115『线路11』 -新闻综合,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•115『线路12』 -新闻综合,https://stream1.freetv.fun/xin-wen-zong-he-9.m3u8$LR•IPV4•115『线路13』 -新闻综合,http://150.158.112.123/公众号~玉玉软件库/mg.php?id=shxwzh$LR•IPV4•115『线路14』 -新闻综合,https://stream1.freetv.fun/shang-hai-xin-wen-zong-he-3.m3u8$LR•IPV4•115『线路15』 -新闻综合,https://stream1.freetv.fun/xin-wen-zong-he-13.m3u8$LR•IPV4•115『线路16』 -新闻综合,http://43.251.226.89:8080/play/57.m3u8$LR•IPV4•115『线路17』 -新闻综合,http://t.061899.xyz/tl/tl.php?id=shxwzh$LR•IPV4•115『线路18』 -新闻综合,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=2810&tk=a0c4f6cfaba3$LR•IPV4•115『线路19』 -新闻综合,http://123.113.205.253:3000/651632657$LR•IPV4•115『线路20』 -新闻综合,https://live.pzhkai.com/xwzhtl/sd/live.m3u8$LR•IPV4•115『线路21』 -新闻综合,https://stream1.freetv.fun/xin-wen-zong-he-14.m3u8$LR•IPV4•115『线路22』 -新闻综合,https://stream1.freetv.fun/ipv6-xin-wen-zong-he-14.m3u8$LR•IPV4•115『线路23』 -新闻综合,http://tvpull.dxhmt.cn:9081/tv/10326-1.m3u8$LR•IPV4•115『线路24』 -新闻综合,https://stream1.freetv.fun/shang-hai-xin-wen-zong-he-10.m3u8$LR•IPV4•115『线路25』 -新闻综合,https://stream1.freetv.fun/shang-hai-xin-wen-zong-he-1.m3u8$LR•IPV4•115『线路26』 -新闻综合,http://api2.52tb.xyz/info?id=371&token=20230218qkyjia$LR•IPV4•115『线路27』 -新闻综合,https://zby.130519.xyz/PLTV/11/224/3221226136/index.m3u8$LR•IPV4•115『线路28』 -新闻综合,https://m3u8-channel.lytv.tv/nmip-media/channellive/channel111841/playlist.m3u8$LR•IPV4•115『线路29』 -新闻综合,https://stream1.freetv.fun/shang-hai-xin-wen-zong-he-12.m3u8$LR•IPV4•115『线路30』 -新闻综合,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=2394&tk=e503191f8e20$LR•IPV4•115『线路31』 -新闻综合,https://stream1.freetv.fun/xin-wen-zong-he-11.ctv$LR•IPV4•115『线路32』 -新闻综合,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=0708&tk=23a9aca1f79f$LR•IPV4•115『线路33』 -新闻综合,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=5985&tk=e640d0a1bf70$LR•IPV4•115『线路34』 -新闻综合,https://stream1.freetv.fun/xin-wen-zong-he-5.m3u8$LR•IPV4•115『线路35』 -新闻综合,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=5014&tk=a0c4f6cfaba3$LR•IPV4•115『线路36』 -新闻综合,https://mgtv.ottiptv.cc/migu/651632657.m3u8?migutoken=348c9164063c2b1df215dd2fa7cd92cb119d8a335ae0edfb5d615a6c714e71b669eee2f5ff1730afa92af7ca41d0aa96e3a280d7e5f2069eb8a3b852f3ebc270147489d7c8bfb08a7c4b9c4d80$LR•IPV4•115『线路37』 -新闻综合,https://stream1.freetv.fun/shang-hai-xin-wen-zong-he-2.m3u8$LR•IPV4•115『线路38』 -新闻综合,http://p2.vzan.com/slowlive/596867413819827251/live.m3u8$LR•IPV4•115『线路39』 -新闻综合,https://www.freetv.top/migu/651632657.m3u8?migutoken=5ae42e8fda034ab7bf5171dafa0043e70cd12bcd716940c4572fde52ea92b0785f16f1bdbce4c83f5e075b250fe95668f19f8527dda57c27db24f95d412614d99c86a3a2d9341d88b5224b7068$LR•IPV4•115『线路40』 -新闻综合,https://qcfile.qcrmt.com/nmip-media/channellive/channel100933/playlist.m3u8$LR•IPV4•115『线路41』 -新闻综合,https://stream1.freetv.fun/xin-wen-zong-he-2.m3u8$LR•IPV4•115『线路42』 -新闻综合,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•115『线路43』 -新闻综合,https://stream1.freetv.fun/ipv6-shang-hai-xin-wen-zong-he-7.m3u8$LR•IPV4•115『线路44』 -新闻综合,https://hls-gateway.vpstv.net/streams/708847.m3u8$LR•IPV4•115『线路45』 -新闻综合,http://api3.52tb.xyz/info?id=371&token=20221127jxwhhemby$LR•IPV4•115『线路46』 -新闻综合,https://stream1.freetv.fun/xin-wen-zong-he-1.ctv$LR•IPV4•115『线路47』 -新闻综合,http://115.190.247.176:1111/651632657$LR•IPV4•115『线路48』 -新闻综合,https://stream1.freetv.fun/ipv6-shang-hai-xin-wen-zong-he-2.m3u8$LR•IPV4•115『线路49』 -新闻综合,https://xatv-yt.xiancity.cn/live/1/index.m3u8$LR•IPV4•115『线路50』 -新闻综合,https://stream1.freetv.fun/ipv6-xin-wen-zong-he-7.m3u8$LR•IPV4•115『线路51』 -新闻综合,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=5599&tk=2aca1ad9a849$LR•IPV4•115『线路52』 -新闻综合,https://stream1.freetv.fun/xin-wen-zong-he-3.m3u8$LR•IPV4•115『线路53』 -新闻综合,http://hlsztemgsplive.miguvideo.com:8080/migu/kailu/xwzhhd265/54/20200407/index.m3u8?msisdn=2be6b2ec9fcf10d2c2457e2c710e172c&mdspid=&spid=600697&netType=0&sid=5910022325&pid=2028597139×tamp=20260717080210&Channel_ID=0116_2600034600-99000-201600010010028&ProgramID=651632657&ParentNodeID=-99&assertID=5910022325&client_ip=171.8.79.254&SecurityKey=20260717080210&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=40d27e561dfff2850c5ba421b1844775&sv=10004&ct=android$LR•IPV4•115『线路54』 -新闻综合,https://stream1.freetv.fun/ipv6-shang-hai-xin-wen-zong-he-6.m3u8$LR•IPV4•115『线路55』 -新闻综合,https://cm-live.ntjoy.com/live/4f1.m3u8$LR•IPV4•115『线路56』 -新闻综合,https://stream1.freetv.fun/ipv6-shang-hai-xin-wen-zong-he-3.m3u8$LR•IPV4•115『线路57』 -新闻综合,http://bp-livetytv.bestv.cn/ch/bestvxwzh.m3u8$LR•IPV4•115『线路58』 -新闻综合,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=2441&tk=e640d0a1bf70$LR•IPV4•115『线路59』 -新闻综合,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=2865&tk=f6cc1e0a0e1a$LR•IPV4•115『线路60』 -新闻综合,http://47.104.178.59:3566/651632657$LR•IPV4•115『线路61』 -新闻综合,https://tvfile.scjgtv.cn:443/nmip-media/channellive/channel104126/playlist.m3u8"$LR•IPV4•115『线路62』 -新闻综合,https://www.freetv.top/migu/651632657.m3u8?migutoken=b4a3e55048f55ec1c8fc5b509fbdf32f2dc5d255f5f218e79e84ca9a87fb9f2239927cb11b448f18285b50b81b4cd50a1354e9be5a3283375e85372798c3f3eb3ad60adf45eb5615f68eb4825f$LR•IPV4•115『线路63』 -新闻综合,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=0610&tk=b53028476470$LR•IPV4•115『线路64』 -新闻综合,https://m3u8channel.yunxya.com/nmip-media/channellive/channel100028/playlist.m3u8$LR•IPV4•115『线路65』 -新闻综合,https://stream1.freetv.fun/xin-wen-zong-he-15.m3u8$LR•IPV4•115『线路66』 -新闻综合,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•115『线路67』 -新闻综合,http://111.228.4.117:6789/migu720p.php?id=651632657$LR•IPV4•115『线路68』 -新闻综合,https://stream1.freetv.fun/shang-hai-xin-wen-zong-he-8.m3u8$LR•IPV4•115『线路69』 -新闻综合,https://stream1.freetv.fun/ipv6-xin-wen-zong-he-10.m3u8$LR•IPV4•115『线路70』 -新闻综合,http://stream8.jlntv.cn/shulan/sd/live.m3u8?_upt=332db6421699196585$LR•IPV4•115『线路71』 -新闻综合,http://stream5.jlntv.cn/hn/sd/live.m3u8$LR•IPV4•115『线路72』 -新闻综合,http://pili-live-hls.ybcxjd.com/jdh-live/2108111201035597.m3u8?zsicd$LR•IPV4•115『线路73』 -新闻综合,http://live.spccmc.com:90/live/spxwzh.m3u8$LR•IPV4•115『线路74』 -新闻综合,http://live.iwcmt.cn:90/live/zhxw.m3u8$LR•IPV4•115『线路75』 -新闻综合,http://live.jinchuanrmt.com:90/live/zhxw.m3u8?zsicd$LR•IPV4•115『线路76』 -新闻综合,https://play.yunxya.com/channellive/xinwen.m3u8$LR•IPV4•115『线路77』 -新闻综合,http://ls.qingting.fm/live/267.m3u8$LR•IPV4•115『线路78』 -新闻综合,http://hslive.hsnewsnet.com/lsdream/hve9Wjs/1000/live.m3u8$LR•IPV4•115『线路79』 -新闻综合,https://p2.vzan.com/slowlive/596867413819827251/live.m3u8?zbid=1725814272&amp;tpid=1516989100&amp;type=0$LR•IPV4•115『线路80』 -新闻综合,https://tntgjhjb.live.sxmty.com/live/hls/3a4585ac11ec4e1bb07b419101b370c3/baf63e2b313440c2a25d7859f9b73b05-1.m3u8?zshanxd$LR•IPV4•115『线路81』 -新闻综合,http://uzoiczhh.live.sxmty.com/live/hls/0d41f1480c4042d49927858f01fde707/53130407737b417b9a6259b57246bae3.m3u8?zshanxd$LR•IPV4•115『线路82』 -新闻综合,https://ls.qingting.fm/live/5043/64k.m3u8$LR•IPV4•115『线路83』 -新闻综合,http://liveout.btzx.com.cn/62ds9e/4nxdih.m3u8?fbl=$LR•IPV4•115『线路84』 -新闻综合,http://nklive.nbs.cn/hls/d511bc9d-a694-4453-b3a2-4fc842cc97a1/index.m3u8$LR•IPV4•115『线路85』 -新闻综合,http://ls.qingting.fm/live/23797.m3u8$LR•IPV4•115『线路86』 -新闻综合,https://play.kankanlive.com/live/1720583434627241.m3u8$LR•IPV4•115『线路87』 -新闻综合,https://ls.qingting.fm/live/5022100/64k.m3u8$LR•IPV4•115『线路88』 -新闻综合,https://liveout.xntv.tv/a65jur/96iln2.m3u8?zqinghd$LR•IPV4•115『线路89』 -新闻综合,http://live.qthnews.org.cn:1935/live/live1/800k/tzwj_video.m3u8$LR•IPV4•115『线路90』 -新闻综合,http://stream.hrbtv.net/xwzh/sd/live.m3u8?zheild$LR•IPV4•115『线路91』 -新闻综合,https://stream2.jlntv.cn/baicheng1/sd/live.m3u8$LR•IPV4•115『线路92』 -新闻综合,http://live.cztv.cc:85/live/xwpd.m3u8$LR•IPV4•115『线路93』 -新闻综合,http://117.156.28.119/270000001111/1110000001/index.m3u8$LR•IPV4•115『线路94』 -新闻综合,http://pili-live-hls.hebitv.com/hebi/hebi.m3u8$LR•IPV4•115『线路95』 -新闻综合,https://stream2.jlntv.cn/naxw/sd/live.m3u8$LR•IPV4•115『线路96』 -新闻综合,http://uni6rtmp.tulix.tv:1935/vbstv/vbsabr.smil/chunklist_w439903609_b1228800.m3u8$LR•IPV4•115『线路97』 -新闻综合,http://221.5.213.4:30000/1111.m3u8$LR•IPV4•115『线路98』 -新闻综合,https://stream2.jlntv.cn/jilin1/sd/live.m3u8$LR•IPV4•115『线路99』 -新闻综合,http://30515.hlsplay.aodianyun.com/lms_30515/tv_channel_239.m3u8$LR•IPV4•115『线路100』 -新闻综合,https://stream2.jlntv.cn/sptv/sd/live.m3u8$LR•IPV4•115『线路101』 -新闻综合,http://live.ahsz.tv/video/s10001-szzh/index.m3u8$LR•IPV4•115『线路102』 -新闻综合,http://guangshui.live.tempsource.cjyun.org/videotmp/s10146-GSXW.m3u8$LR•IPV4•115『线路103』 -新闻综合,https://stream2.jlntv.cn/jlyb/sd/live.m3u8$LR•IPV4•115『线路104』 -新闻综合,https://stream2.jlntv.cn/sytv/sd/live.m3u8$LR•IPV4•115『线路105』 -新闻综合,http://222.179.155.21:1935/ch1.m3u8$LR•IPV4•115『线路106』 -新闻综合,http://117.172.215.250:8083/videos/live/35/39/GQVbrgob5CGJM/GQVbrgob5CGJM.m3u8$LR•IPV4•115『线路107』 -新闻综合,http://220.180.110.101:8083/videos/live/36/57/hwEHU4UVQ1Iv5/hwEHU4UVQ1Iv5.m3u8$LR•IPV4•115『线路108』 -新闻综合,http://live.hnxttv.com:9601/live/xwzh/800K/tzwj_video.m3u8$LR•IPV4•115『线路109』 -新闻综合,http://stream.bzcm.net/2/sd/live.m3u8$LR•IPV4•115『线路110』 -新闻综合,http://117.156.28.119/270000001111/1110000145/index.m3u8$LR•IPV4•115『线路111』 -新闻综合,https://stream2.jlntv.cn/baishan1/sd/live.m3u8$LR•IPV4•115『线路112』 -新闻综合,http://live1.wuhubtv.com/channel1/sd/live.m3u8$LR•IPV4•115『线路113』 -新闻综合,http://palive.patv123.com:8091/live/xwpd_800K.m3u8$LR•IPV4•115『线路114』 -新闻综合,https://stream2.jlntv.cn/liaoyuan1/sd/live.m3u8$LR•IPV4•115『线路115』 +新闻综合,https://stream2.jlntv.cn/baicheng1/sd/live.m3u8$LR•IPV4•115『线路2』 +新闻综合,http://live.cztv.cc:85/live/xwpd.m3u8$LR•IPV4•115『线路3』 +新闻综合,http://117.156.28.119/270000001111/1110000001/index.m3u8$LR•IPV4•115『线路4』 +新闻综合,http://pili-live-hls.hebitv.com/hebi/hebi.m3u8$LR•IPV4•115『线路5』 +新闻综合,https://stream2.jlntv.cn/naxw/sd/live.m3u8$LR•IPV4•115『线路6』 +新闻综合,http://uni6rtmp.tulix.tv:1935/vbstv/vbsabr.smil/chunklist_w439903609_b1228800.m3u8$LR•IPV4•115『线路7』 +新闻综合,http://221.5.213.4:30000/1111.m3u8$LR•IPV4•115『线路8』 +新闻综合,https://stream2.jlntv.cn/jilin1/sd/live.m3u8$LR•IPV4•115『线路9』 +新闻综合,http://30515.hlsplay.aodianyun.com/lms_30515/tv_channel_239.m3u8$LR•IPV4•115『线路10』 +新闻综合,https://stream2.jlntv.cn/sptv/sd/live.m3u8$LR•IPV4•115『线路11』 +新闻综合,http://live.ahsz.tv/video/s10001-szzh/index.m3u8$LR•IPV4•115『线路12』 +新闻综合,http://guangshui.live.tempsource.cjyun.org/videotmp/s10146-GSXW.m3u8$LR•IPV4•115『线路13』 +新闻综合,https://stream2.jlntv.cn/jlyb/sd/live.m3u8$LR•IPV4•115『线路14』 +新闻综合,https://stream2.jlntv.cn/sytv/sd/live.m3u8$LR•IPV4•115『线路15』 +新闻综合,http://222.179.155.21:1935/ch1.m3u8$LR•IPV4•115『线路16』 +新闻综合,http://117.172.215.250:8083/videos/live/35/39/GQVbrgob5CGJM/GQVbrgob5CGJM.m3u8$LR•IPV4•115『线路17』 +新闻综合,http://220.180.110.101:8083/videos/live/36/57/hwEHU4UVQ1Iv5/hwEHU4UVQ1Iv5.m3u8$LR•IPV4•115『线路18』 +新闻综合,http://live.hnxttv.com:9601/live/xwzh/800K/tzwj_video.m3u8$LR•IPV4•115『线路19』 +新闻综合,http://stream.bzcm.net/2/sd/live.m3u8$LR•IPV4•115『线路20』 +新闻综合,http://117.156.28.119/270000001111/1110000145/index.m3u8$LR•IPV4•115『线路21』 +新闻综合,https://stream2.jlntv.cn/baishan1/sd/live.m3u8$LR•IPV4•115『线路22』 +新闻综合,http://live1.wuhubtv.com/channel1/sd/live.m3u8$LR•IPV4•115『线路23』 +新闻综合,http://palive.patv123.com:8091/live/xwpd_800K.m3u8$LR•IPV4•115『线路24』 +新闻综合,https://stream2.jlntv.cn/liaoyuan1/sd/live.m3u8$LR•IPV4•115『线路25』 +新闻综合,https://stream1.freetv.fun/ipv6-ji-nan-xin-wen-zong-he-8.m3u8$LR•IPV4•115『线路26』 +新闻综合,https://stream1.freetv.fun/ji-nan-xin-wen-zong-he-7.m3u8$LR•IPV4•115『线路27』 +新闻综合,http://stream.zztvzd.com/1/sd/live.m3u8$LR•IPV4•115『线路28』 +新闻综合,http://stream.zztvzd.com/1/sd/live.m3u8?shandd$LR•IPV4•115『线路29』 +新闻综合,https://stream1.freetv.fun/ipv6-wei-fang-xin-wen-zong-he-1.m3u8$LR•IPV4•115『线路30』 +新闻综合,https://stream1.freetv.fun/ipv6-wei-fang-xin-wen-zong-he-2.m3u8$LR•IPV4•115『线路31』 +新闻综合,http://live.yantaitv.cn/live/3e81a8879da44c5dadf3bd9c10468e1c/9b776d420ee4438199b7657c8eb88f07-1.m3u8$LR•IPV4•115『线路32』 +新闻综合,http://live.hznet.tv:1935/live/live1/500k/tzwj_video.m3u8$LR•IPV4•115『线路33』 +新闻综合,http://live.hznet.tv:1935/live/live1/500K/tzwj_video.m3u8?shandd$LR•IPV4•115『线路34』 +新闻综合,http://live.wanyuannews.com/wytv/hd/live.m3u8?zsicd$LR•IPV4•115『线路35』 +新闻综合,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•115『线路36』 +新闻综合,https://stream1.freetv.fun/xin-wen-zong-he-9.m3u8$LR•IPV4•115『线路37』 +新闻综合,http://150.158.112.123/公众号~玉玉软件库/mg.php?id=shxwzh$LR•IPV4•115『线路38』 +新闻综合,https://stream1.freetv.fun/shang-hai-xin-wen-zong-he-3.m3u8$LR•IPV4•115『线路39』 +新闻综合,https://stream1.freetv.fun/xin-wen-zong-he-13.m3u8$LR•IPV4•115『线路40』 +新闻综合,http://43.251.226.89:8080/play/57.m3u8$LR•IPV4•115『线路41』 +新闻综合,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=2810&tk=a0c4f6cfaba3$LR•IPV4•115『线路42』 +新闻综合,http://123.113.205.253:3000/651632657$LR•IPV4•115『线路43』 +新闻综合,https://live.pzhkai.com/xwzhtl/sd/live.m3u8$LR•IPV4•115『线路44』 +新闻综合,https://stream1.freetv.fun/xin-wen-zong-he-14.m3u8$LR•IPV4•115『线路45』 +新闻综合,https://stream1.freetv.fun/ipv6-xin-wen-zong-he-14.m3u8$LR•IPV4•115『线路46』 +新闻综合,http://tvpull.dxhmt.cn:9081/tv/10326-1.m3u8$LR•IPV4•115『线路47』 +新闻综合,https://stream1.freetv.fun/shang-hai-xin-wen-zong-he-10.m3u8$LR•IPV4•115『线路48』 +新闻综合,https://stream1.freetv.fun/shang-hai-xin-wen-zong-he-1.m3u8$LR•IPV4•115『线路49』 +新闻综合,http://api2.52tb.xyz/info?id=371&token=20230218qkyjia$LR•IPV4•115『线路50』 +新闻综合,https://zby.130519.xyz/PLTV/11/224/3221226136/index.m3u8$LR•IPV4•115『线路51』 +新闻综合,https://m3u8-channel.lytv.tv/nmip-media/channellive/channel111841/playlist.m3u8$LR•IPV4•115『线路52』 +新闻综合,https://stream1.freetv.fun/shang-hai-xin-wen-zong-he-12.m3u8$LR•IPV4•115『线路53』 +新闻综合,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=2394&tk=e503191f8e20$LR•IPV4•115『线路54』 +新闻综合,https://stream1.freetv.fun/xin-wen-zong-he-11.ctv$LR•IPV4•115『线路55』 +新闻综合,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=0708&tk=23a9aca1f79f$LR•IPV4•115『线路56』 +新闻综合,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=5985&tk=e640d0a1bf70$LR•IPV4•115『线路57』 +新闻综合,https://stream1.freetv.fun/xin-wen-zong-he-5.m3u8$LR•IPV4•115『线路58』 +新闻综合,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=5014&tk=a0c4f6cfaba3$LR•IPV4•115『线路59』 +新闻综合,https://mgtv.ottiptv.cc/migu/651632657.m3u8?migutoken=348c9164063c2b1df215dd2fa7cd92cb119d8a335ae0edfb5d615a6c714e71b669eee2f5ff1730afa92af7ca41d0aa96e3a280d7e5f2069eb8a3b852f3ebc270147489d7c8bfb08a7c4b9c4d80$LR•IPV4•115『线路60』 +新闻综合,https://stream1.freetv.fun/shang-hai-xin-wen-zong-he-2.m3u8$LR•IPV4•115『线路61』 +新闻综合,http://p2.vzan.com/slowlive/596867413819827251/live.m3u8$LR•IPV4•115『线路62』 +新闻综合,https://www.freetv.top/migu/651632657.m3u8?migutoken=5ae42e8fda034ab7bf5171dafa0043e70cd12bcd716940c4572fde52ea92b0785f16f1bdbce4c83f5e075b250fe95668f19f8527dda57c27db24f95d412614d99c86a3a2d9341d88b5224b7068$LR•IPV4•115『线路63』 +新闻综合,https://qcfile.qcrmt.com/nmip-media/channellive/channel100933/playlist.m3u8$LR•IPV4•115『线路64』 +新闻综合,https://stream1.freetv.fun/xin-wen-zong-he-2.m3u8$LR•IPV4•115『线路65』 +新闻综合,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•115『线路66』 +新闻综合,https://stream1.freetv.fun/ipv6-shang-hai-xin-wen-zong-he-7.m3u8$LR•IPV4•115『线路67』 +新闻综合,https://hls-gateway.vpstv.net/streams/708847.m3u8$LR•IPV4•115『线路68』 +新闻综合,http://api3.52tb.xyz/info?id=371&token=20221127jxwhhemby$LR•IPV4•115『线路69』 +新闻综合,https://stream1.freetv.fun/xin-wen-zong-he-1.ctv$LR•IPV4•115『线路70』 +新闻综合,http://115.190.247.176:1111/651632657$LR•IPV4•115『线路71』 +新闻综合,https://stream1.freetv.fun/ipv6-shang-hai-xin-wen-zong-he-2.m3u8$LR•IPV4•115『线路72』 +新闻综合,https://xatv-yt.xiancity.cn/live/1/index.m3u8$LR•IPV4•115『线路73』 +新闻综合,https://stream1.freetv.fun/ipv6-xin-wen-zong-he-7.m3u8$LR•IPV4•115『线路74』 +新闻综合,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=5599&tk=2aca1ad9a849$LR•IPV4•115『线路75』 +新闻综合,https://stream1.freetv.fun/xin-wen-zong-he-3.m3u8$LR•IPV4•115『线路76』 +新闻综合,http://hlsztemgsplive.miguvideo.com:8080/migu/kailu/xwzhhd265/54/20200407/index.m3u8?msisdn=2be6b2ec9fcf10d2c2457e2c710e172c&mdspid=&spid=600697&netType=0&sid=5910022325&pid=2028597139×tamp=20260717080210&Channel_ID=0116_2600034600-99000-201600010010028&ProgramID=651632657&ParentNodeID=-99&assertID=5910022325&client_ip=171.8.79.254&SecurityKey=20260717080210&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=40d27e561dfff2850c5ba421b1844775&sv=10004&ct=android$LR•IPV4•115『线路77』 +新闻综合,https://stream1.freetv.fun/ipv6-shang-hai-xin-wen-zong-he-6.m3u8$LR•IPV4•115『线路78』 +新闻综合,https://cm-live.ntjoy.com/live/4f1.m3u8$LR•IPV4•115『线路79』 +新闻综合,https://stream1.freetv.fun/ipv6-shang-hai-xin-wen-zong-he-3.m3u8$LR•IPV4•115『线路80』 +新闻综合,http://bp-livetytv.bestv.cn/ch/bestvxwzh.m3u8$LR•IPV4•115『线路81』 +新闻综合,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=2441&tk=e640d0a1bf70$LR•IPV4•115『线路82』 +新闻综合,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=2865&tk=f6cc1e0a0e1a$LR•IPV4•115『线路83』 +新闻综合,http://47.104.178.59:3566/651632657$LR•IPV4•115『线路84』 +新闻综合,https://tvfile.scjgtv.cn:443/nmip-media/channellive/channel104126/playlist.m3u8"$LR•IPV4•115『线路85』 +新闻综合,https://www.freetv.top/migu/651632657.m3u8?migutoken=b4a3e55048f55ec1c8fc5b509fbdf32f2dc5d255f5f218e79e84ca9a87fb9f2239927cb11b448f18285b50b81b4cd50a1354e9be5a3283375e85372798c3f3eb3ad60adf45eb5615f68eb4825f$LR•IPV4•115『线路86』 +新闻综合,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=0610&tk=b53028476470$LR•IPV4•115『线路87』 +新闻综合,https://m3u8channel.yunxya.com/nmip-media/channellive/channel100028/playlist.m3u8$LR•IPV4•115『线路88』 +新闻综合,https://stream1.freetv.fun/xin-wen-zong-he-15.m3u8$LR•IPV4•115『线路89』 +新闻综合,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•115『线路90』 +新闻综合,http://111.228.4.117:6789/migu720p.php?id=651632657$LR•IPV4•115『线路91』 +新闻综合,https://stream1.freetv.fun/shang-hai-xin-wen-zong-he-8.m3u8$LR•IPV4•115『线路92』 +新闻综合,https://stream1.freetv.fun/ipv6-xin-wen-zong-he-10.m3u8$LR•IPV4•115『线路93』 +新闻综合,http://stream8.jlntv.cn/shulan/sd/live.m3u8?_upt=332db6421699196585$LR•IPV4•115『线路94』 +新闻综合,http://stream5.jlntv.cn/hn/sd/live.m3u8$LR•IPV4•115『线路95』 +新闻综合,http://pili-live-hls.ybcxjd.com/jdh-live/2108111201035597.m3u8?zsicd$LR•IPV4•115『线路96』 +新闻综合,http://live.spccmc.com:90/live/spxwzh.m3u8$LR•IPV4•115『线路97』 +新闻综合,http://live.iwcmt.cn:90/live/zhxw.m3u8$LR•IPV4•115『线路98』 +新闻综合,http://live.jinchuanrmt.com:90/live/zhxw.m3u8?zsicd$LR•IPV4•115『线路99』 +新闻综合,https://play.yunxya.com/channellive/xinwen.m3u8$LR•IPV4•115『线路100』 +新闻综合,http://traffic.jbh.tjbh.com/live/bhtv10/playlist.m3u8$LR•IPV4•115『线路101』 +新闻综合,http://ls.qingting.fm/live/267.m3u8$LR•IPV4•115『线路102』 +新闻综合,http://hslive.hsnewsnet.com/lsdream/hve9Wjs/1000/live.m3u8$LR•IPV4•115『线路103』 +新闻综合,https://p2.vzan.com/slowlive/596867413819827251/live.m3u8?zbid=1725814272&amp;tpid=1516989100&amp;type=0$LR•IPV4•115『线路104』 +新闻综合,https://tntgjhjb.live.sxmty.com/live/hls/3a4585ac11ec4e1bb07b419101b370c3/baf63e2b313440c2a25d7859f9b73b05-1.m3u8?zshanxd$LR•IPV4•115『线路105』 +新闻综合,http://uzoiczhh.live.sxmty.com/live/hls/0d41f1480c4042d49927858f01fde707/53130407737b417b9a6259b57246bae3.m3u8?zshanxd$LR•IPV4•115『线路106』 +新闻综合,https://ls.qingting.fm/live/5043/64k.m3u8$LR•IPV4•115『线路107』 +新闻综合,http://liveout.btzx.com.cn/62ds9e/4nxdih.m3u8?fbl=$LR•IPV4•115『线路108』 +新闻综合,http://nklive.nbs.cn/hls/d511bc9d-a694-4453-b3a2-4fc842cc97a1/index.m3u8$LR•IPV4•115『线路109』 +新闻综合,http://ls.qingting.fm/live/23797.m3u8$LR•IPV4•115『线路110』 +新闻综合,https://play.kankanlive.com/live/1720583434627241.m3u8$LR•IPV4•115『线路111』 +新闻综合,https://ls.qingting.fm/live/5022100/64k.m3u8$LR•IPV4•115『线路112』 +新闻综合,https://liveout.xntv.tv/a65jur/96iln2.m3u8?zqinghd$LR•IPV4•115『线路113』 +新闻综合,http://live.qthnews.org.cn:1935/live/live1/800k/tzwj_video.m3u8$LR•IPV4•115『线路114』 +新闻综合,http://stream.hrbtv.net/xwzh/sd/live.m3u8?zheild$LR•IPV4•115『线路115』 陕西,#genre# -西安新闻,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』 +西安新闻,http://stream2.xiancity.cn/xatv1/playlist.m3u8$LR•IPV4•2『线路1』 +西安新闻,http://112.46.105.20:8009/hls/28/index.m3u8$LR•IPV4•2『线路2』 山东,#genre# -山东少儿,http://123.129.70.178:9901/tsfile/live/1004_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•16『线路1』 -山东少儿,https://stream1.freetv.fun/shan-dong-shao-er-7.m3u8$LR•IPV4•16『线路2』 -山东少儿,http://58.57.40.22:9901/tsfile/live/1024_1.m3u8$LR•IPV4•16『线路3』 -山东少儿,https://stream1.freetv.fun/shan-dong-shao-er-2.m3u8$LR•IPV4•16『线路4』 -山东少儿,https://stream1.freetv.fun/shan-dong-shao-er-9.m3u8$LR•IPV4•16『线路5』 -山东少儿,http://221.2.148.205:8154/tsfile/live/1007_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•16『线路6』 -山东少儿,https://stream1.freetv.fun/shan-dong-shao-er-10.m3u8$LR•IPV4•16『线路7』 -山东少儿,http://111.14.181.15:9901/tsfile/live/1005_1.m3u8?key=tvbox6_com&playlive=1&authid=0$LR•IPV4•16『线路8』 -山东少儿,https://stream1.freetv.fun/shan-dong-shao-er-1.m3u8$LR•IPV4•16『线路9』 -山东少儿,http://111.14.181.15:9901/tsfile/live/1005_1.m3u8$LR•IPV4•16『线路10』 -山东少儿,https://stream1.freetv.fun/shan-dong-shao-er-5.m3u8$LR•IPV4•16『线路11』 -山东少儿,https://stream1.freetv.fun/shan-dong-shao-er-4.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-6.m3u8$LR•IPV4•16『线路14』 -山东少儿,https://stream1.freetv.fun/shan-dong-shao-er-8.m3u8$LR•IPV4•16『线路15』 -山东少儿,http://livealone302.iqilu.com/iqilu/sepd.m3u8$LR•IPV4•16『线路16』 -山东新闻,http://123.129.70.178:9901/tsfile/live/1000_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•12『线路1』 -山东新闻,https://stream1.freetv.fun/shan-dong-xin-wen-1.m3u8$LR•IPV4•12『线路2』 -山东新闻,http://ls.qingting.fm/live/60180.m3u8$LR•IPV4•12『线路3』 -山东新闻,https://stream1.freetv.fun/shan-dong-xin-wen-2.m3u8$LR•IPV4•12『线路4』 -山东新闻,http://221.2.148.205:8154/tsfile/live/1002_1.m3u8?key=txiptv&playlive=1&authid=0$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-3.m3u8$LR•IPV4•12『线路7』 -山东新闻,http://live.xmcdn.com/live/1440/64.m3u8$LR•IPV4•12『线路8』 -山东新闻,https://stream1.freetv.fun/shan-dong-xin-wen-10.m3u8$LR•IPV4•12『线路9』 -山东新闻,https://stream1.freetv.fun/shan-dong-xin-wen-7.m3u8$LR•IPV4•12『线路10』 -山东新闻,https://stream1.freetv.fun/shan-dong-xin-wen-6.m3u8$LR•IPV4•12『线路11』 -山东新闻,http://livealone302.iqilu.com/iqilu/ggpd.m3u8$LR•IPV4•12『线路12』 +山东少儿,http://livealone302.iqilu.com/iqilu/sepd.m3u8$LR•IPV4•16『线路1』 +山东少儿,http://123.129.70.178:9901/tsfile/live/1004_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•16『线路2』 +山东少儿,https://stream1.freetv.fun/shan-dong-shao-er-7.m3u8$LR•IPV4•16『线路3』 +山东少儿,http://58.57.40.22:9901/tsfile/live/1024_1.m3u8$LR•IPV4•16『线路4』 +山东少儿,https://stream1.freetv.fun/shan-dong-shao-er-2.m3u8$LR•IPV4•16『线路5』 +山东少儿,https://stream1.freetv.fun/shan-dong-shao-er-9.m3u8$LR•IPV4•16『线路6』 +山东少儿,http://221.2.148.205:8154/tsfile/live/1007_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•16『线路7』 +山东少儿,https://stream1.freetv.fun/shan-dong-shao-er-10.m3u8$LR•IPV4•16『线路8』 +山东少儿,http://111.14.181.15:9901/tsfile/live/1005_1.m3u8?key=tvbox6_com&playlive=1&authid=0$LR•IPV4•16『线路9』 +山东少儿,https://stream1.freetv.fun/shan-dong-shao-er-1.m3u8$LR•IPV4•16『线路10』 +山东少儿,http://111.14.181.15:9901/tsfile/live/1005_1.m3u8$LR•IPV4•16『线路11』 +山东少儿,https://stream1.freetv.fun/shan-dong-shao-er-5.m3u8$LR•IPV4•16『线路12』 +山东少儿,https://stream1.freetv.fun/shan-dong-shao-er-4.m3u8$LR•IPV4•16『线路13』 +山东少儿,http://123.132.233.194:352/tsfile/live/1002_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•16『线路14』 +山东少儿,https://stream1.freetv.fun/shan-dong-shao-er-6.m3u8$LR•IPV4•16『线路15』 +山东少儿,https://stream1.freetv.fun/shan-dong-shao-er-8.m3u8$LR•IPV4•16『线路16』 +山东新闻,http://livealone302.iqilu.com/iqilu/ggpd.m3u8$LR•IPV4•12『线路1』 +山东新闻,http://123.129.70.178:9901/tsfile/live/1000_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•12『线路2』 +山东新闻,https://stream1.freetv.fun/shan-dong-xin-wen-1.m3u8$LR•IPV4•12『线路3』 +山东新闻,http://ls.qingting.fm/live/60180.m3u8$LR•IPV4•12『线路4』 +山东新闻,https://stream1.freetv.fun/shan-dong-xin-wen-2.m3u8$LR•IPV4•12『线路5』 +山东新闻,http://221.2.148.205:8154/tsfile/live/1002_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•12『线路6』 +山东新闻,https://stream1.freetv.fun/shan-dong-xin-wen-4.m3u8$LR•IPV4•12『线路7』 +山东新闻,https://stream1.freetv.fun/shan-dong-xin-wen-3.m3u8$LR•IPV4•12『线路8』 +山东新闻,http://live.xmcdn.com/live/1440/64.m3u8$LR•IPV4•12『线路9』 +山东新闻,https://stream1.freetv.fun/shan-dong-xin-wen-10.m3u8$LR•IPV4•12『线路10』 +山东新闻,https://stream1.freetv.fun/shan-dong-xin-wen-7.m3u8$LR•IPV4•12『线路11』 +山东新闻,https://stream1.freetv.fun/shan-dong-xin-wen-6.m3u8$LR•IPV4•12『线路12』 山东教育,https://test1.live.sdetv.com.cn/live/dianshizhibo/playlist.m3u8$LR•IPV4•20『线路1』 山东教育,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=7973&tk=a0c4f6cfaba3$LR•IPV4•20『线路2』 山东教育,http://dassby.qqff.top:99/live/山东教育卫视/index.m3u8$LR•IPV4•20『线路3』 @@ -3085,25 +3094,25 @@ NewTV精品体育,http://dl.wifi942.com:66/jsyd/jsyd.php?id=GITV-JS-65$LR•IPV4 山东教育,http://123.113.205.253:3000/609154353$LR•IPV4•20『线路18』 山东教育,http://112.132.10.54:9901/tsfile/live/1018_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•20『线路19』 山东教育,http://hlsztemgsplive.miguvideo.com:8080/migu/kailu/sdjyws/51/20250915/index.m3u8?msisdn=2be6b2ec9fcf10d2c2457e2c710e172c&mdspid=&spid=600697&netType=0&sid=5910022199&pid=2028597139×tamp=20260717080217&Channel_ID=0116_2600034600-99000-201600010010028&ProgramID=609154353&ParentNodeID=-99&assertID=5910022199&client_ip=171.8.79.254&SecurityKey=20260717080217&promotionId=&mvid=2200208305&mcid=500020&playurlVersion=WX-A1-9.6.1.6-SNAPSHOT&userid=&jmhm=&videocodec=h264&appCode=miguvideo_android&bean=mgspad&tid=android&conFee=0&encrypt=7f8e7f82426d223c045795841359c106&sv=10004&ct=android$LR•IPV4•20『线路20』 -山东农科,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.132.233.194:352/tsfile/live/1019_1.m3u8$LR•IPV4•10『线路1』 -山东齐鲁,http://111.14.181.15:9901/tsfile/live/1000_1.m3u8?key=tvbox6_com&playlive=1&authid=0$LR•IPV4•10『线路2』 -山东齐鲁,http://123.129.70.178:9901/tsfile/live/0019_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•10『线路3』 -山东齐鲁,http://123.130.84.106:8154/tsfile/live/1001_1.m3u8$LR•IPV4•10『线路4』 -山东齐鲁,http://221.2.148.205:8154/tsfile/live/1001_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•10『线路5』 -山东齐鲁,http://123.130.84.106:8154/tsfile/live/1001_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•10『线路6』 -山东齐鲁,http://61.156.228.12:8154/tsfile/live/1001_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•10『线路7』 -山东齐鲁,http://111.14.181.15:9901/tsfile/live/1000_1.m3u8$LR•IPV4•10『线路8』 -山东齐鲁,http://61.156.228.12:8154/tsfile/live/1001_1.m3u8$LR•IPV4•10『线路9』 -山东齐鲁,http://livealone302.iqilu.com/iqilu/qlpd.m3u8$LR•IPV4•10『线路10』 -山东生活,http://api3.52tb.xyz/info?id=527&token=20221127jxwhhemby$LR•IPV4•7『线路1』 -山东生活,http://123.129.70.178:9901/tsfile/live/1002_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•7『线路2』 -山东生活,http://live.xmcdn.com/live/802/64.m3u8$LR•IPV4•7『线路3』 -山东生活,http://ls.qingting.fm/live/60260.m3u8$LR•IPV4•7『线路4』 -山东生活,http://221.2.148.205:8154/tsfile/live/1005_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•7『线路5』 -山东生活,http://58.57.40.22:9901/tsfile/live/1018_1.m3u8$LR•IPV4•7『线路6』 -山东生活,http://livealone302.iqilu.com/iqilu/shpd.m3u8$LR•IPV4•7『线路7』 +山东农科,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.132.233.194:352/tsfile/live/1019_1.m3u8$LR•IPV4•10『线路2』 +山东齐鲁,http://111.14.181.15:9901/tsfile/live/1000_1.m3u8?key=tvbox6_com&playlive=1&authid=0$LR•IPV4•10『线路3』 +山东齐鲁,http://123.129.70.178:9901/tsfile/live/0019_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•10『线路4』 +山东齐鲁,http://123.130.84.106:8154/tsfile/live/1001_1.m3u8$LR•IPV4•10『线路5』 +山东齐鲁,http://221.2.148.205:8154/tsfile/live/1001_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•10『线路6』 +山东齐鲁,http://123.130.84.106: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?key=txiptv&playlive=1&authid=0$LR•IPV4•10『线路8』 +山东齐鲁,http://111.14.181.15:9901/tsfile/live/1000_1.m3u8$LR•IPV4•10『线路9』 +山东齐鲁,http://61.156.228.12:8154/tsfile/live/1001_1.m3u8$LR•IPV4•10『线路10』 +山东生活,http://livealone302.iqilu.com/iqilu/shpd.m3u8$LR•IPV4•7『线路1』 +山东生活,http://api3.52tb.xyz/info?id=527&token=20221127jxwhhemby$LR•IPV4•7『线路2』 +山东生活,http://123.129.70.178:9901/tsfile/live/1002_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•7『线路3』 +山东生活,http://live.xmcdn.com/live/802/64.m3u8$LR•IPV4•7『线路4』 +山东生活,http://ls.qingting.fm/live/60260.m3u8$LR•IPV4•7『线路5』 +山东生活,http://221.2.148.205:8154/tsfile/live/1005_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•7『线路6』 +山东生活,http://58.57.40.22:9901/tsfile/live/1018_1.m3u8$LR•IPV4•7『线路7』 山东体育,http://livealone302.iqilu.com/iqilu/typd.m3u8$LR•IPV4•37『线路1』 山东体育,http://live.xmcdn.com/live/805/64.m3u8$LR•IPV4•37『线路2』 山东体育,http://123.130.84.106:8154/tsfile/live/1006_1.m3u8$LR•IPV4•37『线路3』 @@ -3141,12 +3150,12 @@ NewTV精品体育,http://dl.wifi942.com:66/jsyd/jsyd.php?id=GITV-JS-65$LR•IPV4 山东体育,https://stream1.freetv.fun/shan-dong-ti-yu-26.m3u8$LR•IPV4•37『线路35』 山东体育,https://satellitepull.cnr.cn/live/wxsdtyxxgb/playlist.m3u8$LR•IPV4•37『线路36』 山东体育,https://stream1.freetv.fun/shan-dong-ti-yu-5.m3u8$LR•IPV4•37『线路37』 -山东综艺,http://123.129.70.178:9901/tsfile/live/1001_1.m3u8$LR•IPV4•6『线路1』 -山东综艺,http://111.14.181.15:9901/tsfile/live/1004_1.m3u8?key=tvbox6_com&playlive=1&authid=0$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.132.233.194:352/tsfile/live/1000_1.m3u8$LR•IPV4•6『线路5』 -山东综艺,http://livealone302.iqilu.com/iqilu/zypd.m3u8$LR•IPV4•6『线路6』 +山东综艺,http://livealone302.iqilu.com/iqilu/zypd.m3u8$LR•IPV4•6『线路1』 +山东综艺,http://123.129.70.178:9901/tsfile/live/1001_1.m3u8$LR•IPV4•6『线路2』 +山东综艺,http://111.14.181.15:9901/tsfile/live/1004_1.m3u8?key=tvbox6_com&playlive=1&authid=0$LR•IPV4•6『线路3』 +山东综艺,http://221.2.148.205:8154/tsfile/live/1003_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•6『线路4』 +山东综艺,http://58.57.40.22:9901/tsfile/live/1021_1.m3u8$LR•IPV4•6『线路5』 +山东综艺,http://123.132.233.194:352/tsfile/live/1000_1.m3u8$LR•IPV4•6『线路6』 山东文旅,http://58.57.40.22:9901/tsfile/live/1023_1.m3u8$LR•IPV4•3『线路1』 山东文旅,http://221.2.148.205:8154/tsfile/live/1004_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•3『线路2』 山东文旅,http://60.209.125.254:352/tsfile/live/1004_1.m3u8?ace$LR•IPV4•3『线路3』 @@ -3167,29 +3176,29 @@ NewTV精品体育,http://dl.wifi942.com:66/jsyd/jsyd.php?id=GITV-JS-65$LR•IPV4 港澳台,#genre# 凤凰中文,http://api.mg.itv888.cn:8080/hls/2f80047f91e/index.m3u8$LR•IPV4•8『线路1』 -凤凰中文,http://zmgd.zyrnet.com:8888/hls/110/index.m3u8$LR•IPV4•8『线路2』 -凤凰中文,http://120.198.95.220:9901/tsfile/live/1036_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•8『线路3』 -凤凰中文,http://218.206.193.218:8888/hls/66/index.m3u8$LR•IPV4•8『线路4』 -凤凰中文,http://120.198.95.220:9901/tsfile/live/1036_1.m3u8?key=txiptv$LR•IPV4•8『线路5』 -凤凰中文,http://r.jdshipin.com/cCCzW$LR•IPV4•8『线路6』 -凤凰中文,http://cdn6.163189.xyz/163189/fhzw$LR•IPV4•8『线路7』 -凤凰中文,http://223.110.245.139/ott.js.chinamobile.com/PLTV/3/224/3221226922/index.m3u8$LR•IPV4•8『线路8』 +凤凰中文,http://223.110.245.139/ott.js.chinamobile.com/PLTV/3/224/3221226922/index.m3u8$LR•IPV4•8『线路2』 +凤凰中文,http://zmgd.zyrnet.com:8888/hls/110/index.m3u8$LR•IPV4•8『线路3』 +凤凰中文,http://120.198.95.220:9901/tsfile/live/1036_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•8『线路4』 +凤凰中文,http://218.206.193.218:8888/hls/66/index.m3u8$LR•IPV4•8『线路5』 +凤凰中文,http://120.198.95.220:9901/tsfile/live/1036_1.m3u8?key=txiptv$LR•IPV4•8『线路6』 +凤凰中文,http://r.jdshipin.com/cCCzW$LR•IPV4•8『线路7』 +凤凰中文,http://cdn6.163189.xyz/163189/fhzw$LR•IPV4•8『线路8』 凤凰资讯,http://api.mg.itv888.cn:8080/hls/11ef1dc70d8/index.m3u8$LR•IPV4•10『线路1』 -凤凰资讯,http://zmgd.zyrnet.com:8888/hls/109/index.m3u8$LR•IPV4•10『线路2』 -凤凰资讯,http://221.7.175.154:8445/tsfile/live/1021_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•10『线路3』 -凤凰资讯,http://120.198.95.220:9901/tsfile/live/1037_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•10『线路4』 -凤凰资讯,http://120.198.95.220:9901/tsfile/live/1037_1.m3u8?key=txiptv$LR•IPV4•10『线路5』 -凤凰资讯,p3p://167.114.175.6:55331/5fffbf860003807cedf4e1016c3c3ed2$LR•IPV4•10『线路6』 -凤凰资讯,http://r.jdshipin.com/0Rp07$LR•IPV4•10『线路7』 -凤凰资讯,http://php.jdshipin.com/TVOD/iptv.php?id=fhzx$LR•IPV4•10『线路8』 -凤凰资讯,http://cdn6.163189.xyz/163189/fhzx$LR•IPV4•10『线路9』 -凤凰资讯,http://223.110.245.167/ott.js.chinamobile.com/PLTV/3/224/3221226923/index.m3u8$LR•IPV4•10『线路10』 -凤凰香港,http://122.152.202.33/s/81a8a44f/index.m3u8?id=fhhk$LR•IPV4•6『线路1』 -凤凰香港,p3p://167.114.175.6:55331/5fe0b82c000cac9774c17f262e43314d$LR•IPV4•6『线路2』 -凤凰香港,http://r.jdshipin.com/yDoTN$LR•IPV4•6『线路3』 -凤凰香港,http://php.jdshipin.com/TVOD/iptv.php?id=fhhk$LR•IPV4•6『线路4』 -凤凰香港,http://cdn6.163189.xyz/163189/fhhk$LR•IPV4•6『线路5』 -凤凰香港,http://223.110.245.136/PLTV/3/224/3221226975/index.m3u8$LR•IPV4•6『线路6』 +凤凰资讯,http://223.110.245.167/ott.js.chinamobile.com/PLTV/3/224/3221226923/index.m3u8$LR•IPV4•10『线路2』 +凤凰资讯,http://zmgd.zyrnet.com:8888/hls/109/index.m3u8$LR•IPV4•10『线路3』 +凤凰资讯,http://221.7.175.154:8445/tsfile/live/1021_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•10『线路4』 +凤凰资讯,http://120.198.95.220:9901/tsfile/live/1037_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•10『线路5』 +凤凰资讯,http://120.198.95.220:9901/tsfile/live/1037_1.m3u8?key=txiptv$LR•IPV4•10『线路6』 +凤凰资讯,p3p://167.114.175.6:55331/5fffbf860003807cedf4e1016c3c3ed2$LR•IPV4•10『线路7』 +凤凰资讯,http://r.jdshipin.com/0Rp07$LR•IPV4•10『线路8』 +凤凰资讯,http://php.jdshipin.com/TVOD/iptv.php?id=fhzx$LR•IPV4•10『线路9』 +凤凰资讯,http://cdn6.163189.xyz/163189/fhzx$LR•IPV4•10『线路10』 +凤凰香港,http://223.110.245.136/PLTV/3/224/3221226975/index.m3u8$LR•IPV4•6『线路1』 +凤凰香港,http://122.152.202.33/s/81a8a44f/index.m3u8?id=fhhk$LR•IPV4•6『线路2』 +凤凰香港,p3p://167.114.175.6:55331/5fe0b82c000cac9774c17f262e43314d$LR•IPV4•6『线路3』 +凤凰香港,http://r.jdshipin.com/yDoTN$LR•IPV4•6『线路4』 +凤凰香港,http://php.jdshipin.com/TVOD/iptv.php?id=fhhk$LR•IPV4•6『线路5』 +凤凰香港,http://cdn6.163189.xyz/163189/fhhk$LR•IPV4•6『线路6』 TVB翡翠台,p3p://167.114.175.6:55331/653e4c02000ea0440c8c63fd3e5d709d$LR•IPV4•12『线路1』 TVB翡翠台,p3p://167.114.175.6:55331/66c04cec000a20ac2dbf03c71cf661c9$LR•IPV4•12『线路2』 TVB翡翠台,p3p://108.181.32.169:19673/6533f6560002787f2d01338b57197695$LR•IPV4•12『线路3』 @@ -3214,41 +3223,40 @@ TVB无线新闻,p3p://167.114.175.6:55331/653e4818000b73240c7d19181340415e$LR• TVB无线新闻,https://hls-gateway.vpstv.net/streams/708884.m3u8$LR•IPV4•7『线路5』 TVB无线新闻,http://r.jdshipin.com/CkuBd$LR•IPV4•7『线路6』 TVB无线新闻,http://php.jdshipin.com/TVOD/iptv.php?id=wxxw$LR•IPV4•7『线路7』 -TVB星河,p3p://167.114.175.6:55331/5fdee23d000b670a6d96428e4c334643$LR•IPV4•5『线路1』 -TVB星河,p3p://167.114.175.6:55331/6563174f0002ffaf9c45dd927c7d6df1$LR•IPV4•5『线路2』 -TVB星河,http://php.jdshipin.com/TVOD/iptv.php?id=xinghe$LR•IPV4•5『线路3』 -TVB星河,https://hls-gateway.vpstv.net/streams/709489.m3u8$LR•IPV4•5『线路4』 -TVB星河,https://live.ottiptv.cc/huya/23734169$LR•IPV4•5『线路5』 +TVB星河,p3p://167.114.175.6:55331/5fdee23d000b670a6d96428e4c334643$LR•IPV4•4『线路1』 +TVB星河,p3p://167.114.175.6:55331/6563174f0002ffaf9c45dd927c7d6df1$LR•IPV4•4『线路2』 +TVB星河,http://php.jdshipin.com/TVOD/iptv.php?id=xinghe$LR•IPV4•4『线路3』 +TVB星河,https://hls-gateway.vpstv.net/streams/709489.m3u8$LR•IPV4•4『线路4』 TVBS,http://38.64.72.148/hls/modn/list/4005/playlist.m3u8$LR•IPV4•13『线路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://74.91.26.218:82/live/ttvcj.m3u8$LR•IPV4•10『线路1』 -台视,http://74.91.26.218:82/live/ttvzh.m3u8$LR•IPV4•10『线路2』 -台视,http://38.64.72.148:80/hls/modn/list/4013/chunklist0.m3u8$LR•IPV4•10『线路3』 -台视,http://38.64.72.148:80/hls/modn/list/4013/chunklist1.m3u8$LR•IPV4•10『线路4』 -台视,http://38.64.72.148/hls/modn/list/4013/chunklist0.m3u8$LR•IPV4•10『线路5』 -台视,rtmp://f13h.mine.nu/sat/tv071$LR•IPV4•10『线路6』 -台视,p3p://167.114.175.6:55331/612ee2240008f3db8e0578dc59406f9e$LR•IPV4•10『线路7』 -台视,p3p://167.114.175.6:55331/6223b571000a13023e78ece5030b5b05$LR•IPV4•10『线路8』 -台视,http://38.64.72.148/hls/modn/list/4013/chunklist1.m3u8$LR•IPV4•10『线路9』 -台视,http://162.19.247.76:22222/live/taishi/index.m3u8$LR•IPV4•10『线路10』 +TVBS,http://seb.sason.top/sc/tvbsxw_fhd.m3u8$LR•IPV4•13『线路2』 +TVBS,http://61.221.215.25:8800/hls/9/index.m3u8$LR•IPV4•13『线路3』 +TVBS,http://38.64.72.148/hls/modn/list/4005/chunklist0.m3u8$LR•IPV4•13『线路4』 +TVBS,http://38.64.72.148:80/hls/modn/list/4005/chunklist1.m3u8$LR•IPV4•13『线路5』 +TVBS,http://38.64.72.148:80/hls/modn/list/4005/playlist.m3u8$LR•IPV4•13『线路6』 +TVBS,http://38.64.72.148/hls/modn/list/4005/chunklist1.m3u8$LR•IPV4•13『线路7』 +TVBS,http://38.64.72.148:80/hls/modn/list/4005/chunklist0.m3u8$LR•IPV4•13『线路8』 +TVBS,http://125.227.210.55:8188/VideoInput/play.ts$LR•IPV4•13『线路9』 +TVBS,http://125.227.210.55:8186/VideoInput/play.ts$LR•IPV4•13『线路10』 +TVBS,http://125.227.210.55:8187/VideoInput/play.ts$LR•IPV4•13『线路11』 +TVBS,p3p://167.114.175.6:55331/612ee5ef000f06f58e144b6727ec3efb$LR•IPV4•13『线路12』 +TVBS,p3p://167.114.175.6:55331/61efd0a100047e1a7f9fa38d29f5746d$LR•IPV4•13『线路13』 +台视,http://162.19.247.76:22222/live/taishi/index.m3u8$LR•IPV4•10『线路1』 +台视,http://74.91.26.218:82/live/ttvcj.m3u8$LR•IPV4•10『线路2』 +台视,http://74.91.26.218:82/live/ttvzh.m3u8$LR•IPV4•10『线路3』 +台视,http://38.64.72.148:80/hls/modn/list/4013/chunklist0.m3u8$LR•IPV4•10『线路4』 +台视,http://38.64.72.148:80/hls/modn/list/4013/chunklist1.m3u8$LR•IPV4•10『线路5』 +台视,http://38.64.72.148/hls/modn/list/4013/chunklist0.m3u8$LR•IPV4•10『线路6』 +台视,rtmp://f13h.mine.nu/sat/tv071$LR•IPV4•10『线路7』 +台视,p3p://167.114.175.6:55331/612ee2240008f3db8e0578dc59406f9e$LR•IPV4•10『线路8』 +台视,p3p://167.114.175.6:55331/6223b571000a13023e78ece5030b5b05$LR•IPV4•10『线路9』 +台视,http://38.64.72.148/hls/modn/list/4013/chunklist1.m3u8$LR•IPV4•10『线路10』 民视新闻,http://38.64.72.148:80/hls/modn/list/4012/chunklist0.m3u8$LR•IPV4•4『线路1』 民视新闻,http://38.64.72.148:80/hls/modn/list/4012/chunklist1.m3u8$LR•IPV4•4『线路2』 民视新闻,http://38.64.72.148/hls/modn/list/4012/chunklist0.m3u8$LR•IPV4•4『线路3』 民视新闻,http://38.64.72.148/hls/modn/list/4012/chunklist1.m3u8$LR•IPV4•4『线路4』 -耀才财经,https://v3.mediacast.hk/webcast/bshdlive-pc/playlist.m3u8$LR•IPV4•3『线路1』 -耀才财经,https://v3.mediacast.hk/webcast/bshdlive-pc/chunklist_w99771165.m3u8$LR•IPV4•3『线路2』 -耀才财经,http://202.69.67.66:443/webcast/bshdlive-mobile/playlist.m3u8$LR•IPV4•3『线路3』 +耀才财经,http://202.69.67.66:443/webcast/bshdlive-mobile/playlist.m3u8$LR•IPV4•3『线路1』 +耀才财经,https://v3.mediacast.hk/webcast/bshdlive-pc/playlist.m3u8$LR•IPV4•3『线路2』 +耀才财经,https://v3.mediacast.hk/webcast/bshdlive-pc/chunklist_w99771165.m3u8$LR•IPV4•3『线路3』 美亚C+,http://ottproxy2.ist.ooo/livehls/MOB-U1-NO/03.m3u8$LR•IPV4•3『线路1』 美亚C+,http://ottproxy2.ist.ooo/livehls/MOB-U1-NO/01.m3u8$LR•IPV4•3『线路2』 美亚C+,http://ottproxy2.ist.ooo/livehls/MOB-U1-NO/02.m3u8$LR•IPV4•3『线路3』 @@ -3296,70 +3304,70 @@ TVBS,http://seb.sason.top/sc/tvbsxw_fhd.m3u8$LR•IPV4•13『线路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,https://stream1.freetv.fun/tvn-3.m3u8$LR•IPV4•6『线路2』 -tvN,p3p://167.114.175.6:55331/6506c6930009ab3233ac2cd3018a6125$LR•IPV4•6『线路3』 -tvN,p3p://167.114.175.6:55331/644f9623000a4051681a72d66bfc0191$LR•IPV4•6『线路4』 -tvN,http://45.162.193.35/TVN/index.m3u8$LR•IPV4•6『线路5』 -tvN,https://bcovlive-a.akamaihd.net/628aecb4fccb4c52b4f9c8d5cc57fb73/us-west-2/6058004209001/playlist_dvr.m3u8$LR•IPV4•6『线路6』 +tvN,http://45.162.193.35/TVN/index.m3u8$LR•IPV4•6『线路2』 +tvN,https://bcovlive-a.akamaihd.net/628aecb4fccb4c52b4f9c8d5cc57fb73/us-west-2/6058004209001/playlist_dvr.m3u8$LR•IPV4•6『线路3』 +tvN,https://stream1.freetv.fun/tvn-3.m3u8$LR•IPV4•6『线路4』 +tvN,p3p://167.114.175.6:55331/6506c6930009ab3233ac2cd3018a6125$LR•IPV4•6『线路5』 +tvN,p3p://167.114.175.6:55331/644f9623000a4051681a72d66bfc0191$LR•IPV4•6『线路6』 華視,http://seb.sason.top/sc/hsxw_fhd.m3u8$LR•IPV4 DW,https://raw.githubusercontent.com/ChiSheng9/iptv/master/TV08.m3u8$LR•IPV4•8『线路1』 -DW,https://dwamdstream102.akamaized.net/hls/live/2015525/dwstream102/stream05/streamPlaylist.m3u8$LR•IPV4•8『线路2』 -DW,http://aktv.top/AKTV/live/aktv3/dw/AKTV.m3u8$LR•IPV4•8『线路3』 -DW,http://37.27.111.214:8080/live/46/hls.m3u8$LR•IPV4•8『线路4』 -DW,https://dwamdstream103.akamaized.net/hls/live/2015526/dwstream103/master.m3u8$LR•IPV4•8『线路5』 -DW,https://amg01644-amg01644c1-amgplt0343.playout.now3.amagi.tv/ts-eu-w1-n2/playlist/amg01644-amg01644c1-amgplt0343/playlist.m3u8$LR•IPV4•8『线路6』 -DW,http://177.234.249.178:8888/DW/index.m3u8$LR•IPV4•8『线路7』 -DW,https://dwamdstream110.akamaized.net/hls/live/2017971/dwstream110/master.m3u8$LR•IPV4•8『线路8』 +DW,https://dwamdstream103.akamaized.net/hls/live/2015526/dwstream103/master.m3u8$LR•IPV4•8『线路2』 +DW,https://amg01644-amg01644c1-amgplt0343.playout.now3.amagi.tv/ts-eu-w1-n2/playlist/amg01644-amg01644c1-amgplt0343/playlist.m3u8$LR•IPV4•8『线路3』 +DW,http://177.234.249.178:8888/DW/index.m3u8$LR•IPV4•8『线路4』 +DW,https://dwamdstream110.akamaized.net/hls/live/2017971/dwstream110/master.m3u8$LR•IPV4•8『线路5』 +DW,https://dwamdstream102.akamaized.net/hls/live/2015525/dwstream102/stream05/streamPlaylist.m3u8$LR•IPV4•8『线路6』 +DW,http://aktv.top/AKTV/live/aktv3/dw/AKTV.m3u8$LR•IPV4•8『线路7』 +DW,http://37.27.111.214:8080/live/46/hls.m3u8$LR•IPV4•8『线路8』 France 24,https://live.france24.com/hls/live/2037222-b/F24_AR_HI_HLS/master_5000.m3u8$LR•IPV4•5『线路1』 France 24,https://live.france24.com/hls/live/2037218-b/F24_EN_HI_HLS/master_5000.m3u8$LR•IPV4•5『线路2』 France 24,https://live.france24.com/hls/live/2037220-b/F24_ES_HI_HLS/master_5000.m3u8$LR•IPV4•5『线路3』 France 24,https://live.france24.com/hls/live/2037179-b/F24_FR_HI_HLS/master_5000.m3u8$LR•IPV4•5『线路4』 France 24,https://amg00106-amg00106c1-rakuten-uk-4654.playouts.now.amagi.tv/playlist/amg00106-france24fast-france24-rakutenuk/playlist.m3u8$LR•IPV4•5『线路5』 KIX,http://210.210.155.37/dr9445/h/h07/index.m3u8$LR•IPV4•3『线路1』 -KIX,p3p://167.114.175.6:55331/6444e9940006c03f3e688dba67767ffd$LR•IPV4•3『线路2』 -KIX,https://liveh34.vtvprime.vn/hls/KIX/04.m3u8$LR•IPV4•3『线路3』 -NHK World-Japan,http://aktv.top/AKTV/live/aktv3/nhkworldjapan/AKTV.m3u8$LR•IPV4•3『线路1』 -NHK World-Japan,https://masterpl.hls.nhkworld.jp/hls/w/live/smarttv.m3u8$LR•IPV4•3『线路2』 -NHK World-Japan,https://nhk.lls.pbs.org/index.m3u8$LR•IPV4•3『线路3』 -Nick Jr,http://free.cnlive.club/channel/n75fc9ff7/index.m3u8?q=1752629214236$LR•IPV4•12『线路1』 -Nick Jr,http://bethoven.af-stream.com:1600/s/kwtlxswl/nick-jr-il/video.m3u8$LR•IPV4•12『线路2』 -Nick Jr,https://stream8.cinerama.uz/1501/playlist.m3u8$LR•IPV4•12『线路3』 -Nick Jr,http://40.160.24.55/NICK_JR/index.m3u8$LR•IPV4•12『线路4』 -Nick Jr,https://phcornerultralast.qzz.io/hls/laslo-serverless/dr_nickjr/index.m3u8$LR•IPV4•12『线路5』 -Nick Jr,https://jmp2.uk/plu-67f3eb1c443f0671bc03ece8.m3u8$LR•IPV4•12『线路6』 -Nick Jr,https://jmp2.uk/plu-6824ce95f09106f4b18f4114.m3u8$LR•IPV4•12『线路7』 -Nick Jr,https://jmp2.uk/plu-5ddd7cb2cbb9010009b4fe32.m3u8$LR•IPV4•12『线路8』 -Nick Jr,http://138.186.23.7:8082/NICKJR/index.m3u8$LR•IPV4•12『线路9』 -Nick Jr,https://jmp2.uk/plu-62bdb75c3afd1200079146a6.m3u8$LR•IPV4•12『线路10』 -Nick Jr,https://jmp2.uk/plu-5ca6748a37b88b269472dad9.m3u8$LR•IPV4•12『线路11』 -Nick Jr,http://103.137.83.62:9090/play/27/index.m3u8$LR•IPV4•12『线路12』 -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://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://103.137.83.62:9090/play/28/index.m3u8$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://138.186.23.7:8082/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,http://108.181.20.255:27347/livehttpplay?channel_id=23019$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』 +KIX,https://liveh34.vtvprime.vn/hls/KIX/04.m3u8$LR•IPV4•3『线路2』 +KIX,p3p://167.114.175.6:55331/6444e9940006c03f3e688dba67767ffd$LR•IPV4•3『线路3』 +NHK World-Japan,https://masterpl.hls.nhkworld.jp/hls/w/live/smarttv.m3u8$LR•IPV4•3『线路1』 +NHK World-Japan,https://nhk.lls.pbs.org/index.m3u8$LR•IPV4•3『线路2』 +NHK World-Japan,http://aktv.top/AKTV/live/aktv3/nhkworldjapan/AKTV.m3u8$LR•IPV4•3『线路3』 +Nick Jr,http://bethoven.af-stream.com:1600/s/kwtlxswl/nick-jr-il/video.m3u8$LR•IPV4•12『线路1』 +Nick Jr,https://stream8.cinerama.uz/1501/playlist.m3u8$LR•IPV4•12『线路2』 +Nick Jr,http://40.160.24.55/NICK_JR/index.m3u8$LR•IPV4•12『线路3』 +Nick Jr,https://phcornerultralast.qzz.io/hls/laslo-serverless/dr_nickjr/index.m3u8$LR•IPV4•12『线路4』 +Nick Jr,https://jmp2.uk/plu-67f3eb1c443f0671bc03ece8.m3u8$LR•IPV4•12『线路5』 +Nick Jr,https://jmp2.uk/plu-6824ce95f09106f4b18f4114.m3u8$LR•IPV4•12『线路6』 +Nick Jr,https://jmp2.uk/plu-5ddd7cb2cbb9010009b4fe32.m3u8$LR•IPV4•12『线路7』 +Nick Jr,http://138.186.23.7:8082/NICKJR/index.m3u8$LR•IPV4•12『线路8』 +Nick Jr,https://jmp2.uk/plu-62bdb75c3afd1200079146a6.m3u8$LR•IPV4•12『线路9』 +Nick Jr,https://jmp2.uk/plu-5ca6748a37b88b269472dad9.m3u8$LR•IPV4•12『线路10』 +Nick Jr,http://103.137.83.62:9090/play/27/index.m3u8$LR•IPV4•12『线路11』 +Nick Jr,http://free.cnlive.club/channel/n75fc9ff7/index.m3u8?q=1752629214236$LR•IPV4•12『线路12』 +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://193.239.186.231/NICK/index.m3u8$LR•IPV4•27『线路5』 +Nickelodeon,http://82.78.243.219:45739/play/a00o/index.m3u8$LR•IPV4•27『线路6』 +Nickelodeon,http://23.237.104.106:8080/USA_NICKELODEON/index.m3u8$LR•IPV4•27『线路7』 +Nickelodeon,http://103.137.83.62:9090/play/28/index.m3u8$LR•IPV4•27『线路8』 +Nickelodeon,https://stream8.cinerama.uz/1500/playlist.m3u8$LR•IPV4•27『线路9』 +Nickelodeon,https://jmp2.uk/plu-6824cda00101510f9eeaa011.m3u8$LR•IPV4•27『线路10』 +Nickelodeon,https://jmp2.uk/plu-6824ce10c5d53e1351ceb8d1.m3u8$LR•IPV4•27『线路11』 +Nickelodeon,https://jmp2.uk/plu-67f3eb800a1beb98767ca748.m3u8$LR•IPV4•27『线路12』 +Nickelodeon,https://jmp2.uk/plu-5d8d08395f39465da6fb3ec4.m3u8$LR•IPV4•27『线路13』 +Nickelodeon,http://46.149.191.217:9011/play/a018$LR•IPV4•27『线路14』 +Nickelodeon,http://151.80.18.177:86/Nickelodeon_Junior/index.m3u8$LR•IPV4•27『线路15』 +Nickelodeon,http://138.186.23.7:8082/NICK/index.m3u8$LR•IPV4•27『线路16』 +Nickelodeon,https://jmp2.uk/plu-5f0d668b872e4400073acc68.m3u8$LR•IPV4•27『线路17』 +Nickelodeon,https://jmp2.uk/plu-60f5fabf0721880007cd50e3.m3u8$LR•IPV4•27『线路18』 +Nickelodeon,https://jmp2.uk/plu-5fab09a8749b1a00077d35d2.m3u8$LR•IPV4•27『线路19』 +Nickelodeon,https://jmp2.uk/plu-5ede448d3d50590007a4419e.m3u8$LR•IPV4•27『线路20』 +Nickelodeon,https://jmp2.uk/plu-645951c0e94c38000802d2cb.m3u8$LR•IPV4•27『线路21』 +Nickelodeon,https://jmp2.uk/plu-645952687cb4b100084ed52e.m3u8$LR•IPV4•27『线路22』 +Nickelodeon,http://108.181.20.255:27347/livehttpplay?channel_id=23019$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』 Thrill,https://cdn10jtedge.indihometv.com/atm/DASH/thrill/manifest.mpd$LR•IPV4 ZooMoo,p3p://167.114.175.6:55331/65679bc200084412adeb40284be664e6$LR•IPV4 华视,http://74.91.26.218:82/live/cts.m3u8$LR•IPV4•5『线路1』 @@ -3432,39 +3440,39 @@ RTHK32,http://php.jdshipin.com:8880/TVOD/iptv.php?id=rthk32$LR•IPV4 东森超视,http://38.64.72.148:80/hls/modn/list/2013/chunklist0.m3u8$LR•IPV4•3『线路1』 东森超视,http://38.64.72.148:80/hls/modn/list/2013/chunklist1.m3u8$LR•IPV4•3『线路2』 东森超视,rtmp://f13h.mine.nu/sat/tv331$LR•IPV4•3『线路3』 -ROCK Action,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』 +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•4『线路1』 TVB Plus,http://rihou.cc:555/tv/[Pd]Plus综合$LR•IPV4•4『线路2』 TVB Plus,p3p://167.114.175.6:55331/6649bce20008d56453eeebfc022701f1$LR•IPV4•4『线路3』 TVB Plus,p3p://167.114.175.6:55331/653e4d3e000b344f0c91357e73163f82$LR•IPV4•4『线路4』 -AXN,p3p://167.114.175.6:55331/66d23a53000d25d573c606e3274f26c5$LR•IPV4•24『线路1』 -AXN,p3p://167.114.175.6:55331/6258ddc5000ee8a40e1bc8f50dec545c$LR•IPV4•24『线路2』 -AXN,http://45.190.28.50/AXN_HD/index.m3u8$LR•IPV4•24『线路3』 -AXN,http://cdn.haititivi.com/AXN/index.m3u8$LR•IPV4•24『线路4』 -AXN,http://znty.dyndns.org:5010/hls/axn.m3u8$LR•IPV4•24『线路5』 -AXN,http://5.57.74.130:8000/play/a0at/index.m3u8$LR•IPV4•24『线路6』 -AXN,http://85.14.32.26:8800/udp/239.100.10.17:5000$LR•IPV4•24『线路7』 -AXN,http://88.212.15.19/live/test_black/playlist.m3u8$LR•IPV4•24『线路8』 -AXN,http://82.78.243.219:45739/play/a00e/index.m3u8$LR•IPV4•24『线路9』 -AXN,http://46.149.191.217:9009/play/a02d$LR•IPV4•24『线路10』 -AXN,http://85.11.144.9:4222/AXN$LR•IPV4•24『线路11』 -AXN,http://88.212.15.19/live/test_axn/playlist.m3u8$LR•IPV4•24『线路12』 -AXN,http://82.78.243.219:45739/play/a01n/index.m3u8$LR•IPV4•24『线路13』 -AXN,http://138.121.15.230:9002/AXN/index.m3u8$LR•IPV4•24『线路14』 -AXN,http://138.186.23.7:8082/AXN/index.m3u8$LR•IPV4•24『线路15』 -AXN,http://177.245.131.133:8080/AXN/index.m3u8$LR•IPV4•24『线路16』 -AXN,http://45.228.235.116:8000/play/a0iy/index.m3u8$LR•IPV4•24『线路17』 -AXN,http://50.7.120.34:8080/AXN_BLACK/index.m3u8$LR•IPV4•24『线路18』 -AXN,https://lb.dstvmultimedia.com/AXNSpin/index.m3u8$LR•IPV4•24『线路19』 -AXN,http://82.78.243.219:45739/play/a00n/index.m3u8$LR•IPV4•24『线路20』 -AXN,http://85.14.32.26:8800/udp/239.100.10.18:5000$LR•IPV4•24『线路21』 -AXN,http://88.212.15.19/live/test_white/playlist.m3u8$LR•IPV4•24『线路22』 -AXN,http://50.7.120.34:8080/AXN_WHITE/index.m3u8$LR•IPV4•24『线路23』 -AXN,http://103.137.83.62:9090/play/21/index.m3u8$LR•IPV4•24『线路24』 +AXN,http://45.190.28.50/AXN_HD/index.m3u8$LR•IPV4•24『线路1』 +AXN,http://cdn.haititivi.com/AXN/index.m3u8$LR•IPV4•24『线路2』 +AXN,http://znty.dyndns.org:5010/hls/axn.m3u8$LR•IPV4•24『线路3』 +AXN,http://5.57.74.130:8000/play/a0at/index.m3u8$LR•IPV4•24『线路4』 +AXN,http://85.14.32.26:8800/udp/239.100.10.17:5000$LR•IPV4•24『线路5』 +AXN,http://88.212.15.19/live/test_black/playlist.m3u8$LR•IPV4•24『线路6』 +AXN,http://82.78.243.219:45739/play/a00e/index.m3u8$LR•IPV4•24『线路7』 +AXN,http://46.149.191.217:9009/play/a02d$LR•IPV4•24『线路8』 +AXN,http://85.11.144.9:4222/AXN$LR•IPV4•24『线路9』 +AXN,http://88.212.15.19/live/test_axn/playlist.m3u8$LR•IPV4•24『线路10』 +AXN,http://82.78.243.219:45739/play/a01n/index.m3u8$LR•IPV4•24『线路11』 +AXN,http://138.121.15.230:9002/AXN/index.m3u8$LR•IPV4•24『线路12』 +AXN,http://138.186.23.7:8082/AXN/index.m3u8$LR•IPV4•24『线路13』 +AXN,http://177.245.131.133:8080/AXN/index.m3u8$LR•IPV4•24『线路14』 +AXN,http://45.228.235.116:8000/play/a0iy/index.m3u8$LR•IPV4•24『线路15』 +AXN,http://50.7.120.34:8080/AXN_BLACK/index.m3u8$LR•IPV4•24『线路16』 +AXN,https://lb.dstvmultimedia.com/AXNSpin/index.m3u8$LR•IPV4•24『线路17』 +AXN,http://82.78.243.219:45739/play/a00n/index.m3u8$LR•IPV4•24『线路18』 +AXN,http://85.14.32.26:8800/udp/239.100.10.18:5000$LR•IPV4•24『线路19』 +AXN,http://88.212.15.19/live/test_white/playlist.m3u8$LR•IPV4•24『线路20』 +AXN,http://50.7.120.34:8080/AXN_WHITE/index.m3u8$LR•IPV4•24『线路21』 +AXN,http://103.137.83.62:9090/play/21/index.m3u8$LR•IPV4•24『线路22』 +AXN,p3p://167.114.175.6:55331/66d23a53000d25d573c606e3274f26c5$LR•IPV4•24『线路23』 +AXN,p3p://167.114.175.6:55331/6258ddc5000ee8a40e1bc8f50dec545c$LR•IPV4•24『线路24』 娱乐新闻,https://hls-gateway.vpstv.net/streams/708904.m3u8$LR•IPV4 -澳门卫视,http://61.244.22.4/ch1/ch1.live/playlist.m3u8$LR•IPV4•2『线路1』 -澳门卫视,http://php.jdshipin.com:8880/TVOD/iptv.php?id=as$LR•IPV4•2『线路2』 +澳门卫视,http://php.jdshipin.com:8880/TVOD/iptv.php?id=as$LR•IPV4•2『线路1』 +澳门卫视,http://61.244.22.4/ch1/ch1.live/playlist.m3u8$LR•IPV4•2『线路2』 Pet Club TV,https://cdn-apse1-prod.tsv2.amagi.tv/linear/amg01076-lightningintern-petclub-samsungnz/playlist.m3u8$LR•IPV4•2『线路1』 Pet Club TV,https://petclub-samsungaus.amagi.tv/playlist.m3u8$LR•IPV4•2『线路2』 Bloomberg TV Asia,http://210.210.155.37/dr9445/h/h03/index.m3u8$LR•IPV4•3『线路1』 @@ -3476,42 +3484,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,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』 +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』 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』 @@ -3523,21 +3531,21 @@ Dali TV,http://www.dalitv.com.tw:4568/live/dali/index.m3u8$LR•IPV4 EBC YOYO,https://ythls.armelin.one/channel/UCiWRSesvSYmY7YOyz0tv_zQ.m3u8$LR•IPV4 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•15『线路1』 -Global News,https://jmp2.uk/plu-62cbf063257170000724590c.m3u8$LR•IPV4•15『线路2』 -Global News,https://jmp2.uk/plu-62cbf23dcfb48300077f8348.m3u8$LR•IPV4•15『线路3』 -Global News,https://jmp2.uk/plu-62cbf2de1fba5f0007e47d9c.m3u8$LR•IPV4•15『线路4』 -Global News,https://jmp2.uk/plu-62cbf398b8e02600071deda5.m3u8$LR•IPV4•15『线路5』 -Global News,https://jmp2.uk/plu-62cbf4964446e2000742073e.m3u8$LR•IPV4•15『线路6』 -Global News,https://jmp2.uk/plu-62cbf7439cb58900088dc77b.m3u8$LR•IPV4•15『线路7』 -Global News,https://jmp2.uk/plu-62cbfbd6ad95670007f567af.m3u8$LR•IPV4•15『线路8』 -Global News,https://jmp2.uk/plu-62cbef9ebb857100072fc187.m3u8$LR•IPV4•15『线路9』 -Global News,https://jmp2.uk/plu-62cbfc572dc3750007a493ce.m3u8$LR•IPV4•15『线路10』 -Global News,https://jmp2.uk/plu-62cbfcd8c2db990007861e43.m3u8$LR•IPV4•15『线路11』 -Global News,https://jmp2.uk/plu-62cbff53ca8f2200080253b5.m3u8$LR•IPV4•15『线路12』 -Global News,https://jmp2.uk/plu-62cc00359cb58900088dc840.m3u8$LR•IPV4•15『线路13』 -Global News,https://jmp2.uk/plu-62cc00b3b821cf00070f82c3.m3u8$LR•IPV4•15『线路14』 -Global News,https://jmp2.uk/plu-62cc0120880c890007191016.m3u8$LR•IPV4•15『线路15』 +Global News,https://jmp2.uk/plu-62cbf063257170000724590c.m3u8$LR•IPV4•15『线路1』 +Global News,https://jmp2.uk/plu-62cbf23dcfb48300077f8348.m3u8$LR•IPV4•15『线路2』 +Global News,https://jmp2.uk/plu-62cbf2de1fba5f0007e47d9c.m3u8$LR•IPV4•15『线路3』 +Global News,https://jmp2.uk/plu-62cbf398b8e02600071deda5.m3u8$LR•IPV4•15『线路4』 +Global News,https://jmp2.uk/plu-62cbf4964446e2000742073e.m3u8$LR•IPV4•15『线路5』 +Global News,https://jmp2.uk/plu-62cbf7439cb58900088dc77b.m3u8$LR•IPV4•15『线路6』 +Global News,https://jmp2.uk/plu-62cbfbd6ad95670007f567af.m3u8$LR•IPV4•15『线路7』 +Global News,https://jmp2.uk/plu-62cbef9ebb857100072fc187.m3u8$LR•IPV4•15『线路8』 +Global News,https://jmp2.uk/plu-62cbfc572dc3750007a493ce.m3u8$LR•IPV4•15『线路9』 +Global News,https://jmp2.uk/plu-62cbfcd8c2db990007861e43.m3u8$LR•IPV4•15『线路10』 +Global News,https://jmp2.uk/plu-62cbff53ca8f2200080253b5.m3u8$LR•IPV4•15『线路11』 +Global News,https://jmp2.uk/plu-62cc00359cb58900088dc840.m3u8$LR•IPV4•15『线路12』 +Global News,https://jmp2.uk/plu-62cc00b3b821cf00070f82c3.m3u8$LR•IPV4•15『线路13』 +Global News,https://jmp2.uk/plu-62cc0120880c890007191016.m3u8$LR•IPV4•15『线路14』 +Global News,https://live.corusdigitaldev.com/groupb/live/3062d0e3-ed4c-4f47-8482-95648250f4b8/live.isml/.m3u8$LR•IPV4•15『线路15』 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 @@ -3552,48 +3560,48 @@ 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,p3p://167.114.175.6:55331/62184bc3000cd48f11e47b06202b7e18$LR•IPV4•3『线路1』 -HOY TV,http://php.jdshipin.com/TVOD/iptv.php?id=hoytv$LR•IPV4•3『线路2』 -HOY TV,https://hoytv-live-stream.hoy.tv/ch77/index.m3u8$LR•IPV4•3『线路3』 +HOY TV,https://hoytv-live-stream.hoy.tv/ch77/index.m3u8$LR•IPV4•3『线路1』 +HOY TV,p3p://167.114.175.6:55331/62184bc3000cd48f11e47b06202b7e18$LR•IPV4•3『线路2』 +HOY TV,http://php.jdshipin.com/TVOD/iptv.php?id=hoytv$LR•IPV4•3『线路3』 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 大立,p3p://167.114.175.6:55331/64c4d2ba00051d1d320d17d218503f93$LR•IPV4 -National Geographic,http://23.237.104.106:8080/USA_NAT_GEO/index.m3u8$LR•IPV4•23『线路1』 -National Geographic,http://213.91.179.28:8000/play/a0ct$LR•IPV4•23『线路2』 -National Geographic,http://167.250.126.140:7777/NATGEO-HD/index.m3u8$LR•IPV4•23『线路3』 -National Geographic,http://185.102.171.218/NatGeo/index.m3u8$LR•IPV4•23『线路4』 -National Geographic,http://138.121.15.230:9002/NAT-GEO/index.m3u8$LR•IPV4•23『线路5』 -National Geographic,https://saran-live.ercdn.net/natgeohd/index.m3u8$LR•IPV4•23『线路6』 -National Geographic,http://40.160.24.53/NAT_GEO/index.m3u8$LR•IPV4•23『线路7』 -National Geographic,https://live-fi.tvkaista.net/national-geographic/live.m3u8?hd=true$LR•IPV4•23『线路8』 -National Geographic,http://149.71.34.166:8002/play/a013/index.m3u8$LR•IPV4•23『线路9』 -National Geographic,http://46.32.176.50/NationalGeographicHD/index.m3u8$LR•IPV4•23『线路10』 -National Geographic,http://198.58.104.90:8989/natgeo/index.m3u8$LR•IPV4•23『线路11』 -National Geographic,http://45.162.193.35/NATGEO/index.m3u8$LR•IPV4•23『线路12』 -National Geographic,http://bantel-cdn1.iptvperu.tv:1935/btnscrtn/NatGeo.stream/playlist.m3u8$LR•IPV4•23『线路13』 -National Geographic,http://206.212.244.63/122/index.m3u8$LR•IPV4•23『线路14』 -National Geographic,http://213.91.179.28:8000/play/a0cu$LR•IPV4•23『线路15』 -National Geographic,http://41.205.77.102/NATGEO-WILD/index.m3u8$LR•IPV4•23『线路16』 -National Geographic,http://185.102.171.218/NatGeoWild/index.m3u8$LR•IPV4•23『线路17』 -National Geographic,http://hls127.freeott.top:8080/Nat_Geo_Wild_SD/video.m3u8$LR•IPV4•23『线路18』 -National Geographic,https://saran-live.ercdn.net/natgeowild/index.m3u8$LR•IPV4•23『线路19』 -National Geographic,http://46.32.176.50/natgeowild/index.m3u8$LR•IPV4•23『线路20』 -National Geographic,http://40.160.24.53/NAT_GEO_WILD/index.m3u8$LR•IPV4•23『线路21』 -National Geographic,http://149.71.34.166:8002/play/a012/index.m3u8$LR•IPV4•23『线路22』 -National Geographic,http://198.58.104.90:8989/natgeowild/index.m3u8$LR•IPV4•23『线路23』 +National Geographic,http://213.91.179.28:8000/play/a0ct$LR•IPV4•23『线路1』 +National Geographic,http://167.250.126.140:7777/NATGEO-HD/index.m3u8$LR•IPV4•23『线路2』 +National Geographic,http://185.102.171.218/NatGeo/index.m3u8$LR•IPV4•23『线路3』 +National Geographic,http://138.121.15.230:9002/NAT-GEO/index.m3u8$LR•IPV4•23『线路4』 +National Geographic,https://saran-live.ercdn.net/natgeohd/index.m3u8$LR•IPV4•23『线路5』 +National Geographic,http://40.160.24.53/NAT_GEO/index.m3u8$LR•IPV4•23『线路6』 +National Geographic,https://live-fi.tvkaista.net/national-geographic/live.m3u8?hd=true$LR•IPV4•23『线路7』 +National Geographic,http://149.71.34.166:8002/play/a013/index.m3u8$LR•IPV4•23『线路8』 +National Geographic,http://46.32.176.50/NationalGeographicHD/index.m3u8$LR•IPV4•23『线路9』 +National Geographic,http://198.58.104.90:8989/natgeo/index.m3u8$LR•IPV4•23『线路10』 +National Geographic,http://45.162.193.35/NATGEO/index.m3u8$LR•IPV4•23『线路11』 +National Geographic,http://bantel-cdn1.iptvperu.tv:1935/btnscrtn/NatGeo.stream/playlist.m3u8$LR•IPV4•23『线路12』 +National Geographic,http://206.212.244.63/122/index.m3u8$LR•IPV4•23『线路13』 +National Geographic,http://213.91.179.28:8000/play/a0cu$LR•IPV4•23『线路14』 +National Geographic,http://41.205.77.102/NATGEO-WILD/index.m3u8$LR•IPV4•23『线路15』 +National Geographic,http://185.102.171.218/NatGeoWild/index.m3u8$LR•IPV4•23『线路16』 +National Geographic,http://hls127.freeott.top:8080/Nat_Geo_Wild_SD/video.m3u8$LR•IPV4•23『线路17』 +National Geographic,https://saran-live.ercdn.net/natgeowild/index.m3u8$LR•IPV4•23『线路18』 +National Geographic,http://46.32.176.50/natgeowild/index.m3u8$LR•IPV4•23『线路19』 +National Geographic,http://40.160.24.53/NAT_GEO_WILD/index.m3u8$LR•IPV4•23『线路20』 +National Geographic,http://149.71.34.166:8002/play/a012/index.m3u8$LR•IPV4•23『线路21』 +National Geographic,http://198.58.104.90:8989/natgeowild/index.m3u8$LR•IPV4•23『线路22』 +National Geographic,http://23.237.104.106:8080/USA_NAT_GEO/index.m3u8$LR•IPV4•23『线路23』 東森新聞,http://seb.sason.top/sc/dsxw_fhd.m3u8$LR•IPV4 Xite Hits,https://d726x48n2pd5h.cloudfront.net/XITE_Hits.m3u8$LR•IPV4•3『线路1』 Xite Hits,https://d726x48n2pd5h.cloudfront.net/v1/master/3722c60a815c199d9c0ef36c5b73da68a62b09d1/cc-skxr1pazhltvp/XITE_Hits.m3u8$LR•IPV4•3『线路2』 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://stream1.freetv.fun/nba-tv-7.m3u8$LR•IPV4•6『线路1』 -NBA TV,https://stream1.freetv.fun/nba-tv-5.m3u8$LR•IPV4•6『线路2』 -NBA TV,http://170.yfvodcdn.com:19980/live/nbaTV2/hls.m3u8$LR•IPV4•6『线路3』 -NBA TV,p3p://167.114.175.6:55331/65a587500007bc039fca3566638e69af$LR•IPV4•6『线路4』 -NBA TV,https://amg00556-amg00556c3-firetv-us-6060.playouts.now.amagi.tv/playlist.m3u8$LR•IPV4•6『线路5』 -NBA TV,http://user.scalecdn.co:8080/live/54706135/09221986/3092.m3u8$LR•IPV4•6『线路6』 +NBA TV,https://amg00556-amg00556c3-firetv-us-6060.playouts.now.amagi.tv/playlist.m3u8$LR•IPV4•6『线路1』 +NBA TV,http://user.scalecdn.co:8080/live/54706135/09221986/3092.m3u8$LR•IPV4•6『线路2』 +NBA TV,https://stream1.freetv.fun/nba-tv-7.m3u8$LR•IPV4•6『线路3』 +NBA TV,https://stream1.freetv.fun/nba-tv-5.m3u8$LR•IPV4•6『线路4』 +NBA TV,http://170.yfvodcdn.com:19980/live/nbaTV2/hls.m3u8$LR•IPV4•6『线路5』 +NBA TV,p3p://167.114.175.6:55331/65a587500007bc039fca3566638e69af$LR•IPV4•6『线路6』 Sukan,https://d25tgymtnqzu8s.cloudfront.net/smil:sukan/manifest.mpd$LR•IPV4 TV9,https://cdn4.skygo.mn/live/disk1/TV9HD/DASH-FTA/TV9HD.mpd$LR•IPV4•11『线路1』 TV9,https://dyjmyiv3bp2ez.cloudfront.net/pub-iotv9banaen8yq/liveabr/playlist.m3u8$LR•IPV4•11『线路2』 @@ -3606,186 +3614,186 @@ TV9,https://dyjmyiv3bp2ez.cloudfront.net/pub-iotv9telcmjhcs/liveabr/playlist.m3u TV9,https://tonton-live-switch-ssar.akamaized.net/stream-tv9/master.m3u8?bpkio_serviceid=6c0958d82a830a02ca0936d9cfab8311$LR•IPV4•11『线路9』 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•97『线路1』 -BBC,https://aegis-cloudfront-1.tubi.video/bb1fc6ad-9948-42ea-aaf3-20acfcdeecac/playlist.m3u8$LR•IPV4•97『线路2』 -BBC,http://free.cnlive.club/channel/356e7ac6/index.m3u8?q=1752629214236$LR•IPV4•97『线路3』 -BBC,http://free.cnlive.club/channel/359a630b/index.m3u8?q=1752629214236$LR•IPV4•97『线路4』 -BBC,p3p://167.114.175.6:55331/64026f590000e9663abc652f25176282$LR•IPV4•97『线路5』 -BBC,p3p://167.114.175.6:55331/6444eb2e000921503e6ecfe873cd10b1$LR•IPV4•97『线路6』 -BBC,http://125.227.210.55:8165/VideoInput/play.ts$LR•IPV4•97『线路7』 -BBC,https://d2vnbkvjbims7j.cloudfront.net/containerA/LTN/playlist.m3u8$LR•IPV4•97『线路8』 -BBC,https://vs-cmaf-pushb-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:bbc_alba/hevc_iptv_mse_v0.mpd$LR•IPV4•97『线路9』 -BBC,https://vs-cmaf-pushb-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:bbc_one_channel_islands/pc_hd_abr_v2.mpd$LR•IPV4•97『线路10』 -BBC,https://vs-cmaf-pushb-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:bbc_one_east/pc_hd_abr_v2.mpd$LR•IPV4•97『线路11』 -BBC,https://vs-cmaf-pushb-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:bbc_one_east_yorkshire/pc_hd_abr_v2.mpd$LR•IPV4•97『线路12』 -BBC,https://vs-cmaf-pushb-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:bbc_one_east_midlands/pc_hd_abr_v2.mpd$LR•IPV4•97『线路13』 -BBC,https://vs-cmaf-pushb-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:bbc_one_east_midlands/hevc_iptv_mse_v0.mpd$LR•IPV4•97『线路14』 -BBC,https://vs-cmaf-push-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:bbc_one_london/iptv_hd_abr_v1.mpd$LR•IPV4•97『线路15』 -BBC,http://193.46.58.239:8080/BBCOneHD/index.m3u8$LR•IPV4•97『线路16』 -BBC,https://vs-cmaf-pushb-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:bbc_one_north_east/pc_hd_abr_v2.mpd$LR•IPV4•97『线路17』 -BBC,https://vs-cmaf-pushb-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:bbc_one_north_east/hevc_iptv_mse_v0.mpd$LR•IPV4•97『线路18』 -BBC,https://vs-cmaf-pushb-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:bbc_one_north_west/pc_hd_abr_v2.mpd$LR•IPV4•97『线路19』 -BBC,https://vs-cmaf-pushb-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:bbc_one_north_west/hevc_iptv_mse_v0.mpd$LR•IPV4•97『线路20』 -BBC,https://vs-cmaf-pushb-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:bbc_one_northern_ireland_hd/pc_hd_abr_v2.mpd$LR•IPV4•97『线路21』 -BBC,https://vs-cmaf-pushb-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:bbc_one_northern_ireland_hd/hevc_iptv_mse_v0.mpd$LR•IPV4•97『线路22』 -BBC,https://vs-hls-pushb-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:bbc_one_scotland_hd/pc_hd_abr_v2.m3u8$LR•IPV4•97『线路23』 -BBC,https://vs-cmaf-pushb-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:bbc_one_scotland_hd/pc_hd_abr_v2.mpd$LR•IPV4•97『线路24』 -BBC,https://vs-cmaf-pushb-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:bbc_one_south/pc_hd_abr_v2.mpd$LR•IPV4•97『线路25』 -BBC,https://vs-cmaf-pushb-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:bbc_one_south_east/pc_hd_abr_v2.mpd$LR•IPV4•97『线路26』 -BBC,https://vs-cmaf-pushb-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:bbc_one_south_west/pc_hd_abr_v2.mpd$LR•IPV4•97『线路27』 -BBC,https://vs-cmaf-pushb-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:bbc_one_wales_hd/pc_hd_abr_v2.mpd$LR•IPV4•97『线路28』 -BBC,https://vs-cmaf-pushb-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:bbc_one_west/pc_hd_abr_v2.mpd$LR•IPV4•97『线路29』 -BBC,https://vs-cmaf-pushb-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:bbc_one_west_midlands/pc_hd_abr_v2.mpd$LR•IPV4•97『线路30』 -BBC,https://vs-cmaf-pushb-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:bbc_one_yorks/pc_hd_abr_v2.mpd$LR•IPV4•97『线路31』 -BBC,https://vs-cmaf-pushb-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:bbc_scotland_hd/iptv_hd_abr_v1.mpd$LR•IPV4•97『线路32』 -BBC,https://vs-cmaf-pushb-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:bbc_three_hd/iptv_hd_abr_v1.mpd$LR•IPV4•97『线路33』 -BBC,http://193.46.58.239:8080/BBCTwoHD/index.m3u8$LR•IPV4•97『线路34』 -BBC,https://vs-hls-pushb-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:bbc_two_northern_ireland_hd/pc_hd_abr_v2.m3u8$LR•IPV4•97『线路35』 -BBC,https://vs-cmaf-pushb-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:bbc_two_northern_ireland_hd/iptv_hd_abr_v1.mpd$LR•IPV4•97『线路36』 -BBC,https://vs-cmaf-pushb-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:bbc_two_wales_digital/iptv_hd_abr_v1.mpd$LR•IPV4•97『线路37』 -BBC,https://vs-cmaf-pushb-ww-live.akamaized.net/x=4/i=urn:bbc:pips:service:bbc_arabic_tv/pc_hd_abr_v2.mpd$LR•IPV4•97『线路38』 -BBC,https://pb-iiczlgfysam0q.akamaized.net/v1/amcnetworks_bbcnews_1/samsungheadend_us/latest/main/hls/playlist.m3u8$LR•IPV4•97『线路39』 -BBC,https://vs-cmaf-push-ww-live.akamaized.net/x=4/i=urn:bbc:pips:service:bbc_news_channel_hd/hevc_iptv_mse_v0.mpd$LR•IPV4•97『线路40』 -BBC,http://138.121.15.230:9002/BBC-NEWS/index.m3u8$LR•IPV4•97『线路41』 -BBC,http://23.237.104.106:8080/USA_BBC_NEWS/index.m3u8$LR•IPV4•97『线路42』 -BBC,http://45.153.96.44:8001$LR•IPV4•97『线路43』 -BBC,https://vs-cmaf-pushb-ww-live.akamaized.net/x=4/i=urn:bbc:pips:service:bbc_persian_tv/hevc_iptv_mse_v0.mpd$LR•IPV4•97『线路44』 -BBC,http://23.239.31.26:8989/bbcamerica/index.m3u8$LR•IPV4•97『线路45』 -BBC,http://40.160.24.52/BBC_AMERICA/index.m3u8$LR•IPV4•97『线路46』 -BBC,http://91.146.94.234:10001/play/a087$LR•IPV4•97『线路47』 -BBC,https://d1em2hga7sgumq.cloudfront.net/playlist.m3u8$LR•IPV4•97『线路48』 -BBC,https://pb-0ix3l1oxmg1fj.akamaized.net/playlist.m3u8$LR•IPV4•97『线路49』 -BBC,https://amg00793-amg00793c41-rakuten-it-5445.playouts.now.amagi.tv/playlist.m3u8$LR•IPV4•97『线路50』 -BBC,https://bbc-impossible-1-us.xumo.wurl.tv/playlist.m3u8$LR•IPV4•97『线路51』 -BBC,https://vs-cmaf-pushb-ww.live.cf.md.bbci.co.uk/x=4/i=urn:bbc:pips:service:bbc_afghan_tv/pc_hd_abr_v2.mpd$LR•IPV4•97『线路52』 -BBC,https://vs-cmaf-pushb-uk.live.cf.md.bbci.co.uk/x=4/i=urn:bbc:pips:service:red_button_one/iptv_hd_abr_v1.mpd$LR•IPV4•97『线路53』 -BBC,https://ve-cmaf-push-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:uk_bbc_stream_002/iptv_hd_abr_v1.mpd$LR•IPV4•97『线路54』 -BBC,https://ve-cmaf-push-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:uk_bbc_stream_003/iptv_hd_abr_v1.mpd$LR•IPV4•97『线路55』 -BBC,https://ve-cmaf-push-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:uk_bbc_stream_004/iptv_hd_abr_v1.mpd$LR•IPV4•97『线路56』 -BBC,https://ve-cmaf-push-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:uk_bbc_stream_005/iptv_hd_abr_v1.mpd$LR•IPV4•97『线路57』 -BBC,https://ve-cmaf-push-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:uk_bbc_stream_006/iptv_hd_abr_v1.mpd$LR•IPV4•97『线路58』 -BBC,https://ve-cmaf-push-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:uk_bbc_stream_007/iptv_hd_abr_v1.mpd$LR•IPV4•97『线路59』 -BBC,https://ve-cmaf-push-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:uk_bbc_stream_008/iptv_hd_abr_v1.mpd$LR•IPV4•97『线路60』 -BBC,https://ve-cmaf-push-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:uk_bbc_stream_009/iptv_hd_abr_v1.mpd$LR•IPV4•97『线路61』 -BBC,https://ve-cmaf-push-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:uk_bbc_stream_010/iptv_hd_abr_v1.mpd$LR•IPV4•97『线路62』 -BBC,https://ve-cmaf-push-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:uk_bbc_stream_011/iptv_hd_abr_v1.mpd$LR•IPV4•97『线路63』 -BBC,https://ve-cmaf-push-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:uk_bbc_stream_012/iptv_hd_abr_v1.mpd$LR•IPV4•97『线路64』 -BBC,https://ve-cmaf-push-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:uk_bbc_stream_013/iptv_hd_abr_v1.mpd$LR•IPV4•97『线路65』 -BBC,https://ve-cmaf-push-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:uk_bbc_stream_014/iptv_hd_abr_v1.mpd$LR•IPV4•97『线路66』 -BBC,https://ve-cmaf-push-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:uk_bbc_stream_015/iptv_hd_abr_v1.mpd$LR•IPV4•97『线路67』 -BBC,https://ve-cmaf-push-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:uk_bbc_stream_016/iptv_hd_abr_v1.mpd$LR•IPV4•97『线路68』 -BBC,https://ve-cmaf-push-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:uk_bbc_stream_017/iptv_hd_abr_v1.mpd$LR•IPV4•97『线路69』 -BBC,https://ve-cmaf-push-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:uk_bbc_stream_018/iptv_hd_abr_v1.mpd$LR•IPV4•97『线路70』 -BBC,https://ve-cmaf-push-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:uk_bbc_stream_019/iptv_hd_abr_v1.mpd$LR•IPV4•97『线路71』 -BBC,https://ve-cmaf-push-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:uk_bbc_stream_020/iptv_hd_abr_v1.mpd$LR•IPV4•97『线路72』 -BBC,https://ve-cmaf-push-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:uk_bbc_stream_021/iptv_hd_abr_v1.mpd$LR•IPV4•97『线路73』 -BBC,https://ve-cmaf-push-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:uk_bbc_stream_022/iptv_hd_abr_v1.mpd$LR•IPV4•97『线路74』 -BBC,https://ve-cmaf-push-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:uk_bbc_stream_023/iptv_hd_abr_v1.mpd$LR•IPV4•97『线路75』 -BBC,https://ve-cmaf-push-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:uk_bbc_stream_024/iptv_hd_abr_v1.mpd$LR•IPV4•97『线路76』 -BBC,https://jmp2.uk/plu-60dafb9a0df1ba000758d37b.m3u8$LR•IPV4•97『线路77』 -BBC,https://jmp2.uk/plu-62e7fa5ab5062e0007dcf97d.m3u8$LR•IPV4•97『线路78』 -BBC,https://amg00793-amg00793c5-xumo-us-2664.playouts.now.amagi.tv/bbcstudios-bbctopgear8min-all/playlist.m3u8$LR•IPV4•97『线路79』 -BBC,https://amg00793-amg00793c5-firetv-us-4068.playouts.now.amagi.tv/playlist.m3u8$LR•IPV4•97『线路80』 -BBC,https://amg00793-amg00793c49-rakuten-fi-5848.playouts.now.amagi.tv/playlist.m3u8$LR•IPV4•97『线路81』 -BBC,https://amg00793-amg00793c45-rakuten-fr-5539.playouts.now.amagi.tv/playlist.m3u8$LR•IPV4•97『线路82』 -BBC,https://amg00793-amg00793c44-rakuten-de-5538.playouts.now.amagi.tv/playlist.m3u8$LR•IPV4•97『线路83』 -BBC,https://amg00793-amg00793c43-rakuten-it-5537.playouts.now.amagi.tv/playlist.m3u8$LR•IPV4•97『线路84』 -BBC,https://dmr1h4skdal9h.cloudfront.net/playlist.m3u8$LR•IPV4•97『线路85』 -BBC,https://bbc-classicdrwho-1-us.roku.wurl.tv/playlist.m3u8$LR•IPV4•97『线路86』 -BBC,https://amg00793-amg00793c40-rakuten-es-5444.playouts.now.amagi.tv/playlist.m3u8$LR•IPV4•97『线路87』 -BBC,https://d11r33s5i066xh.cloudfront.net/playlist.m3u8$LR•IPV4•97『线路88』 -BBC,https://cdn4.skygo.mn/live/disk1/BBC_lifestyle/HLSv3-FTA/BBC_lifestyle.m3u8$LR•IPV4•97『线路89』 -BBC,https://jmp2.uk/plu-60e4519e6873180007d3cddb.m3u8$LR•IPV4•97『线路90』 -BBC,https://amg00793-amg00793c6-xumo-us-2669.playouts.now.amagi.tv/BBCStudios-BBCEarthA-hls/playlist.m3u8$LR•IPV4•97『线路91』 -BBC,http://185.102.171.218/BBCEarth/index.m3u8$LR•IPV4•97『线路92』 -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•97『线路93』 -BBC,https://d1e9r0b71zfwk7.cloudfront.net/playlist.m3u8$LR•IPV4•97『线路94』 -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•97『线路95』 -BBC,http://193.46.58.239:8080/CbeebiesHD/index.m3u8$LR•IPV4•97『线路96』 -BBC,http://41.205.77.102/BBC-THREE/index.m3u8$LR•IPV4•97『线路97』 -CNA,https://d2e1asnsl7br7b.cloudfront.net/7782e205e72f43aeb4a48ec97f66ebbe/index_5.m3u8$LR•IPV4•6『线路1』 -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•11『线路1』 -CNN,http://88.212.15.19/live/test_cnn_pirma_news/playlist.m3u8$LR•IPV4•11『线路2』 -CNN,https://jmp2.uk/plu-66c45c274f25dd00092739ee.m3u8$LR•IPV4•11『线路3』 -CNN,https://jmp2.uk/plu-5421f71da6af422839419cb3.m3u8$LR•IPV4•11『线路4』 -CNN,https://jmp2.uk/plu-66337e365a402e00087eccaf.m3u8$LR•IPV4•11『线路5』 -CNN,https://jmp2.uk/plu-66c45c0de7f5e80008b82005.m3u8$LR•IPV4•11『线路6』 -CNN,https://jmp2.uk/plu-66c45b36a72e7b0008a2b291.m3u8$LR•IPV4•11『线路7』 -CNN,https://jmp2.uk/plu-66c45ba803e3b20008d8c294.m3u8$LR•IPV4•11『线路8』 -CNN,https://jmp2.uk/plu-66dff9d46ad04d0008fda4de.m3u8$LR•IPV4•11『线路9』 -CNN,https://jmp2.uk/plu-673248f9030a2c0008033af8.m3u8$LR•IPV4•11『线路10』 -CNN,https://jmp2.uk/plu-66e0b4536ad04d0008fff4b2.m3u8$LR•IPV4•11『线路11』 -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•11『线路1』 -Sky News,http://41.205.77.102/SKYNEWS/index.m3u8$LR•IPV4•11『线路2』 -Sky News,https://live-stream.skynewsarabia.com/c-horizontal-channel/horizontal-stream/index.m3u8$LR•IPV4•11『线路3』 -Sky News,https://stream.skynewsarabia.com/ott/ott.m3u8$LR•IPV4•11『线路4』 -Sky News,https://stream.skynewsarabia.com/vertical/vertical.m3u8$LR•IPV4•11『线路5』 -Sky News,https://live-stream.skynewsarabia.com/c-vertical-channel/vertical-stream/index.m3u8$LR•IPV4•11『线路6』 -Sky News,https://skynewsau-live.akamaized.net/hls/live/2002689/skynewsau-extra1/master.m3u8$LR•IPV4•11『线路7』 -Sky News,https://skynewsau-live.akamaized.net/hls/live/2002690/skynewsau-extra2/master.m3u8$LR•IPV4•11『线路8』 -Sky News,https://skynewsau-live.akamaized.net/hls/live/2002691/skynewsau-extra3/master.m3u8$LR•IPV4•11『线路9』 -Sky News,https://lbgo.bozztv.com/ssh101/ssh101/skynews/playlist.m3u8$LR•IPV4•11『线路10』 -Sky News,https://distro001-gb-hls1-prd.delivery.skycdp.com/easel_cdn/ngrp:weather_loop.stream_all/playlist.m3u8$LR•IPV4•11『线路11』 -Al Jazeera,https://live-hls-aje-ak.getaj.net/AJE/01.m3u8$LR•IPV4•8『线路1』 -Al Jazeera,https://live-hls-apps-aja-fa.getaj.net/AJA/01.m3u8$LR•IPV4•8『线路2』 -Al Jazeera,https://live-hls-web-aja2-gcp.thehlive.com/AJA2/index.m3u8$LR•IPV4•8『线路3』 -Al Jazeera,https://live-hls-apps-aje-fa.getaj.net/AJE/index.m3u8$LR•IPV4•8『线路4』 -Al Jazeera,https://live-hls-apps-ajm-fa.getaj.net/AJM/index.m3u8$LR•IPV4•8『线路5』 -Al Jazeera,https://live-hls-apps-ajm24-fa.getaj.net/AJM24/index.m3u8$LR•IPV4•8『线路6』 -Al Jazeera,https://live-hls-apps-ajm2-fa.getaj.net/AJM2/index.m3u8$LR•IPV4•8『线路7』 -Al Jazeera,https://live-hls-apps-ajd-fa.getaj.net/AJD/index.m3u8$LR•IPV4•8『线路8』 -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』 -Arirang,http://amdlive-ch01.ctnd.com.edgesuite.net/arirang_1ch/smil:arirang_1ch.smil/playlist.m3u8$LR•IPV4•5『线路4』 -Arirang,http://45.162.64.114/ARIRANG/index.m3u8$LR•IPV4•5『线路5』 -TRT World,https://tv-trtworld.medya.trt.com.tr/master_1080.m3u8$LR•IPV4•3『线路1』 -TRT World,https://tv-trtworld.medya.trt.com.tr/master.m3u8$LR•IPV4•3『线路2』 -TRT World,https://dash2.antik.sk/live/test_trt_world_atktv/playlist.m3u8$LR•IPV4•3『线路3』 +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•97『线路1』 +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•97『线路2』 +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•97『线路3』 +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•97『线路4』 +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•97『线路5』 +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•97『线路6』 +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•97『线路7』 +BBC,http://193.46.58.239:8080/BBCOneHD/index.m3u8$LR•IPV4•97『线路8』 +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•97『线路9』 +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•97『线路10』 +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•97『线路11』 +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•97『线路12』 +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•97『线路13』 +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•97『线路14』 +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•97『线路15』 +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•97『线路16』 +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•97『线路17』 +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•97『线路18』 +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•97『线路19』 +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•97『线路20』 +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•97『线路21』 +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•97『线路22』 +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•97『线路23』 +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•97『线路24』 +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•97『线路25』 +BBC,http://193.46.58.239:8080/BBCTwoHD/index.m3u8$LR•IPV4•97『线路26』 +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•97『线路27』 +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•97『线路28』 +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•97『线路29』 +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•97『线路30』 +BBC,https://pb-iiczlgfysam0q.akamaized.net/v1/amcnetworks_bbcnews_1/samsungheadend_us/latest/main/hls/playlist.m3u8$LR•IPV4•97『线路31』 +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•97『线路32』 +BBC,http://138.121.15.230:9002/BBC-NEWS/index.m3u8$LR•IPV4•97『线路33』 +BBC,http://23.237.104.106:8080/USA_BBC_NEWS/index.m3u8$LR•IPV4•97『线路34』 +BBC,http://45.153.96.44:8001$LR•IPV4•97『线路35』 +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•97『线路36』 +BBC,http://23.239.31.26:8989/bbcamerica/index.m3u8$LR•IPV4•97『线路37』 +BBC,http://40.160.24.52/BBC_AMERICA/index.m3u8$LR•IPV4•97『线路38』 +BBC,http://91.146.94.234:10001/play/a087$LR•IPV4•97『线路39』 +BBC,https://d1em2hga7sgumq.cloudfront.net/playlist.m3u8$LR•IPV4•97『线路40』 +BBC,https://pb-0ix3l1oxmg1fj.akamaized.net/playlist.m3u8$LR•IPV4•97『线路41』 +BBC,https://amg00793-amg00793c41-rakuten-it-5445.playouts.now.amagi.tv/playlist.m3u8$LR•IPV4•97『线路42』 +BBC,https://bbc-impossible-1-us.xumo.wurl.tv/playlist.m3u8$LR•IPV4•97『线路43』 +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•97『线路44』 +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•97『线路45』 +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•97『线路46』 +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•97『线路47』 +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•97『线路48』 +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•97『线路49』 +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•97『线路50』 +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•97『线路51』 +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•97『线路52』 +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•97『线路53』 +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•97『线路54』 +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•97『线路55』 +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•97『线路56』 +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•97『线路57』 +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•97『线路58』 +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•97『线路59』 +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•97『线路60』 +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•97『线路61』 +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•97『线路62』 +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•97『线路63』 +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•97『线路64』 +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•97『线路65』 +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•97『线路66』 +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•97『线路67』 +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•97『线路68』 +BBC,https://jmp2.uk/plu-60dafb9a0df1ba000758d37b.m3u8$LR•IPV4•97『线路69』 +BBC,https://jmp2.uk/plu-62e7fa5ab5062e0007dcf97d.m3u8$LR•IPV4•97『线路70』 +BBC,https://amg00793-amg00793c5-xumo-us-2664.playouts.now.amagi.tv/bbcstudios-bbctopgear8min-all/playlist.m3u8$LR•IPV4•97『线路71』 +BBC,https://amg00793-amg00793c5-firetv-us-4068.playouts.now.amagi.tv/playlist.m3u8$LR•IPV4•97『线路72』 +BBC,https://amg00793-amg00793c49-rakuten-fi-5848.playouts.now.amagi.tv/playlist.m3u8$LR•IPV4•97『线路73』 +BBC,https://amg00793-amg00793c45-rakuten-fr-5539.playouts.now.amagi.tv/playlist.m3u8$LR•IPV4•97『线路74』 +BBC,https://amg00793-amg00793c44-rakuten-de-5538.playouts.now.amagi.tv/playlist.m3u8$LR•IPV4•97『线路75』 +BBC,https://amg00793-amg00793c43-rakuten-it-5537.playouts.now.amagi.tv/playlist.m3u8$LR•IPV4•97『线路76』 +BBC,https://dmr1h4skdal9h.cloudfront.net/playlist.m3u8$LR•IPV4•97『线路77』 +BBC,https://bbc-classicdrwho-1-us.roku.wurl.tv/playlist.m3u8$LR•IPV4•97『线路78』 +BBC,https://amg00793-amg00793c40-rakuten-es-5444.playouts.now.amagi.tv/playlist.m3u8$LR•IPV4•97『线路79』 +BBC,https://d11r33s5i066xh.cloudfront.net/playlist.m3u8$LR•IPV4•97『线路80』 +BBC,https://cdn4.skygo.mn/live/disk1/BBC_lifestyle/HLSv3-FTA/BBC_lifestyle.m3u8$LR•IPV4•97『线路81』 +BBC,https://jmp2.uk/plu-60e4519e6873180007d3cddb.m3u8$LR•IPV4•97『线路82』 +BBC,https://amg00793-amg00793c6-xumo-us-2669.playouts.now.amagi.tv/BBCStudios-BBCEarthA-hls/playlist.m3u8$LR•IPV4•97『线路83』 +BBC,http://185.102.171.218/BBCEarth/index.m3u8$LR•IPV4•97『线路84』 +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•97『线路85』 +BBC,https://d1e9r0b71zfwk7.cloudfront.net/playlist.m3u8$LR•IPV4•97『线路86』 +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•97『线路87』 +BBC,http://193.46.58.239:8080/CbeebiesHD/index.m3u8$LR•IPV4•97『线路88』 +BBC,http://41.205.77.102/BBC-THREE/index.m3u8$LR•IPV4•97『线路89』 +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•97『线路90』 +BBC,https://aegis-cloudfront-1.tubi.video/bb1fc6ad-9948-42ea-aaf3-20acfcdeecac/playlist.m3u8$LR•IPV4•97『线路91』 +BBC,http://free.cnlive.club/channel/356e7ac6/index.m3u8?q=1752629214236$LR•IPV4•97『线路92』 +BBC,http://free.cnlive.club/channel/359a630b/index.m3u8?q=1752629214236$LR•IPV4•97『线路93』 +BBC,p3p://167.114.175.6:55331/64026f590000e9663abc652f25176282$LR•IPV4•97『线路94』 +BBC,p3p://167.114.175.6:55331/6444eb2e000921503e6ecfe873cd10b1$LR•IPV4•97『线路95』 +BBC,http://125.227.210.55:8165/VideoInput/play.ts$LR•IPV4•97『线路96』 +BBC,https://d2vnbkvjbims7j.cloudfront.net/containerA/LTN/playlist.m3u8$LR•IPV4•97『线路97』 +CNA,https://live1.mediadesk.al/cnatvlive.m3u8$LR•IPV4•6『线路1』 +CNA,https://d2e1asnsl7br7b.cloudfront.net/7782e205e72f43aeb4a48ec97f66ebbe/index.m3u8$LR•IPV4•6『线路2』 +CNA,https://live.creacast.com/cna/stream/playlist.m3u8$LR•IPV4•6『线路3』 +CNA,https://amg01082-cna-amg01082c1-rlaxx-us-11304.playouts.now.amagi.tv/playlist.m3u8$LR•IPV4•6『线路4』 +CNA,https://d2e1asnsl7br7b.cloudfront.net/7782e205e72f43aeb4a48ec97f66ebbe/index_5.m3u8$LR•IPV4•6『线路5』 +CNA,http://d2e1asnsl7br7b.cloudfront.net/7782e205e72f43aeb4a48ec97f66ebbe/index_5.m3u8?zshijd$LR•IPV4•6『线路6』 +CNN,http://88.212.15.19/live/test_cnn_pirma_news/playlist.m3u8$LR•IPV4•11『线路1』 +CNN,https://jmp2.uk/plu-66c45c274f25dd00092739ee.m3u8$LR•IPV4•11『线路2』 +CNN,https://jmp2.uk/plu-5421f71da6af422839419cb3.m3u8$LR•IPV4•11『线路3』 +CNN,https://jmp2.uk/plu-66337e365a402e00087eccaf.m3u8$LR•IPV4•11『线路4』 +CNN,https://jmp2.uk/plu-66c45c0de7f5e80008b82005.m3u8$LR•IPV4•11『线路5』 +CNN,https://jmp2.uk/plu-66c45b36a72e7b0008a2b291.m3u8$LR•IPV4•11『线路6』 +CNN,https://jmp2.uk/plu-66c45ba803e3b20008d8c294.m3u8$LR•IPV4•11『线路7』 +CNN,https://jmp2.uk/plu-66dff9d46ad04d0008fda4de.m3u8$LR•IPV4•11『线路8』 +CNN,https://jmp2.uk/plu-673248f9030a2c0008033af8.m3u8$LR•IPV4•11『线路9』 +CNN,https://jmp2.uk/plu-66e0b4536ad04d0008fff4b2.m3u8$LR•IPV4•11『线路10』 +CNN,https://ds2c506obo7m8.cloudfront.net/v1/master/3722c60a815c199d9c0ef36c5b73da68a62b09d1/cc-7zjq3tdqasbg8/index.m3u8$LR•IPV4•11『线路11』 +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』 +Sky News,http://41.205.77.102/SKYNEWS/index.m3u8$LR•IPV4•11『线路1』 +Sky News,https://live-stream.skynewsarabia.com/c-horizontal-channel/horizontal-stream/index.m3u8$LR•IPV4•11『线路2』 +Sky News,https://stream.skynewsarabia.com/ott/ott.m3u8$LR•IPV4•11『线路3』 +Sky News,https://stream.skynewsarabia.com/vertical/vertical.m3u8$LR•IPV4•11『线路4』 +Sky News,https://live-stream.skynewsarabia.com/c-vertical-channel/vertical-stream/index.m3u8$LR•IPV4•11『线路5』 +Sky News,https://skynewsau-live.akamaized.net/hls/live/2002689/skynewsau-extra1/master.m3u8$LR•IPV4•11『线路6』 +Sky News,https://skynewsau-live.akamaized.net/hls/live/2002690/skynewsau-extra2/master.m3u8$LR•IPV4•11『线路7』 +Sky News,https://skynewsau-live.akamaized.net/hls/live/2002691/skynewsau-extra3/master.m3u8$LR•IPV4•11『线路8』 +Sky News,https://lbgo.bozztv.com/ssh101/ssh101/skynews/playlist.m3u8$LR•IPV4•11『线路9』 +Sky News,https://distro001-gb-hls1-prd.delivery.skycdp.com/easel_cdn/ngrp:weather_loop.stream_all/playlist.m3u8$LR•IPV4•11『线路10』 +Sky News,https://d39chvnxm26pgp.cloudfront.net/v1/master/72588bff830dec7b26d7cbbf5f3c24928aec5c03/cc-sthen6ms4vxgv-stage/WNSFO/ABR.m3u8$LR•IPV4•11『线路11』 +Al Jazeera,https://live-hls-apps-aja-fa.getaj.net/AJA/01.m3u8$LR•IPV4•8『线路1』 +Al Jazeera,https://live-hls-web-aja2-gcp.thehlive.com/AJA2/index.m3u8$LR•IPV4•8『线路2』 +Al Jazeera,https://live-hls-apps-aje-fa.getaj.net/AJE/index.m3u8$LR•IPV4•8『线路3』 +Al Jazeera,https://live-hls-apps-ajm-fa.getaj.net/AJM/index.m3u8$LR•IPV4•8『线路4』 +Al Jazeera,https://live-hls-apps-ajm24-fa.getaj.net/AJM24/index.m3u8$LR•IPV4•8『线路5』 +Al Jazeera,https://live-hls-apps-ajm2-fa.getaj.net/AJM2/index.m3u8$LR•IPV4•8『线路6』 +Al Jazeera,https://live-hls-apps-ajd-fa.getaj.net/AJD/index.m3u8$LR•IPV4•8『线路7』 +Al Jazeera,https://live-hls-aje-ak.getaj.net/AJE/01.m3u8$LR•IPV4•8『线路8』 +Arirang,http://amdlive-ch01.ctnd.com.edgesuite.net/arirang_3ch/smil:arirang_3ch.smil/playlist.m3u8$LR•IPV4•5『线路1』 +Arirang,https://amdlive-ch02-ctnd-com.akamaized.net/arirang_2ch/smil:arirang_2ch.smil/playlist.m3u8$LR•IPV4•5『线路2』 +Arirang,http://amdlive-ch01.ctnd.com.edgesuite.net/arirang_1ch/smil:arirang_1ch.smil/playlist.m3u8$LR•IPV4•5『线路3』 +Arirang,http://45.162.64.114/ARIRANG/index.m3u8$LR•IPV4•5『线路4』 +Arirang,https://amdlive-ch01-ctnd-com.akamaized.net/arirang_1ch/smil:arirang_1ch.smil/chunklist_b3256000_sleng.m3u8$LR•IPV4•5『线路5』 +TRT World,https://tv-trtworld.medya.trt.com.tr/master.m3u8$LR•IPV4•3『线路1』 +TRT World,https://dash2.antik.sk/live/test_trt_world_atktv/playlist.m3u8$LR•IPV4•3『线路2』 +TRT World,https://tv-trtworld.medya.trt.com.tr/master_1080.m3u8$LR•IPV4•3『线路3』 Bloomberg Originals,https://e96a7526.wurl.com/master/f36d25e7e52f1ba8d7e56eb859c636563214f541/UmFrdXRlblRWLWV1X0Jsb29tYmVyZ09yaWdpbmFsc19ITFM/playlist.m3u8$LR•IPV4•3『线路1』 Bloomberg Originals,https://86fdc85a.wurl.com/master/f36d25e7e52f1ba8d7e56eb859c636563214f541/TEctZ2JfQmxvb21iZXJnT3JpZ2luYWxzX0hMUw/playlist.m3u8$LR•IPV4•3『线路2』 Bloomberg Originals,https://bloomberg.com/media-manifest/streams/qt.m3u8$LR•IPV4•3『线路3』 -Fashion TV,http://free.cnlive.club/channel/n7852a99f/index.m3u8?q=1752629214236$LR•IPV4•2『线路1』 -Fashion TV,https://cdn2.invivo.bg/Codefashion_5500/index.m3u8$LR•IPV4•2『线路2』 -SKY,http://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,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』 +Fashion TV,https://cdn2.invivo.bg/Codefashion_5500/index.m3u8$LR•IPV4•2『线路1』 +Fashion TV,http://free.cnlive.club/channel/n7852a99f/index.m3u8?q=1752629214236$LR•IPV4•2『线路2』 +SKY,https://cdn5.smart-tv-data.com/bluesky/bluesky-live/playlist.m3u8$LR•IPV4•26『线路1』 +SKY,http://80.194.62.172:50002/stream/channelid/1848745953$LR•IPV4•26『线路2』 +SKY,https://primetv-prod.akamaized.net/v1/prime-freeview-aes128.m3u8$LR•IPV4•26『线路3』 +SKY,https://linear-p.media.skyone.co.nz/primeplus1.clear.m3u8$LR•IPV4•26『线路4』 +SKY,https://eu.live.skyfolk.mk/live.m3u8$LR•IPV4•26『线路5』 +SKY,https://636ffd31f0e12.streamlock.net/RacingStream1/RacingStream1/playlist.m3u8$LR•IPV4•26『线路6』 +SKY,https://636ffd31f0e12.streamlock.net/RacingStream2/RacingStream2/playlist.m3u8$LR•IPV4•26『线路7』 +SKY,https://skylivetab-new.akamaized.net/hls/live/2038782/stcsd/index.m3u8$LR•IPV4•26『线路8』 +SKY,http://s.rocketdns.info:8080/live/monstercable/Dq6jjknxCr/2188.ts$LR•IPV4•26『线路9』 +SKY,http://s.rocketdns.info:8080/live/monstercable/Dq6jjknxCr/2179.ts$LR•IPV4•26『线路10』 +SKY,http://s.rocketdns.info:8080/live/monstercable/Dq6jjknxCr/2182.ts$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』 KBS world,http://31.148.48.15/KBS_World/index.m3u8$LR•IPV4 FIFA+,https://jmp2.uk/plu-660c29b5aec9680008f5b4a4.m3u8$LR•IPV4•9『线路1』 FIFA+,https://37b4c228.wurl.com/master/f36d25e7e52f1ba8d7e56eb859c636563214f541/UmFrdXRlblRWLWZyX0ZJRkFQbHVzRnJlbmNoX0hMUw/playlist.m3u8$LR•IPV4•9『线路2』 @@ -3796,17 +3804,17 @@ FIFA+,https://e3be9ac5.wurl.com/master/f36d25e7e52f1ba8d7e56eb859c636563214f541/ FIFA+,https://d63fabad.wurl.com/master/f36d25e7e52f1ba8d7e56eb859c636563214f541/UmFrdXRlblRWLWVzX0ZJRkFQbHVzU3BhbmlzaF9ITFM/playlist.m3u8$LR•IPV4•9『线路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•9『线路8』 FIFA+,https://cffda8ff.wurl.com/master/f36d25e7e52f1ba8d7e56eb859c636563214f541/U2Ftc3VuZy1nYl9GSUZBUGx1c3dvbWVuX0hMUw/playlist.m3u8$LR•IPV4•9『线路9』 -Newsmax,https://nmx1ota.akamaized.net/hls/live/2107010/Live_1/3.m3u8$LR•IPV4•8『线路1』 -Newsmax,http://nmxlive.akamaized.net/hls/live/529965/Live_1/index.m3u8$LR•IPV4•8『线路2』 -Newsmax,https://nmxlive.akamaized.net/hls/live/529965/Live_1/index.m3u8$LR•IPV4•8『线路3』 -Newsmax,https://2-fss-2.streamhoster.com/pl_120/206858-4404556-1/playlist.m3u8$LR•IPV4•8『线路4』 -Newsmax,https://amg00217-newsmax-newsmax-zeasn-022k9.amagi.tv/playlist.m3u8$LR•IPV4•8『线路5』 -Newsmax,https://newsmaxadria.mts-si.tv/newsmaxadria/index.m3u8$LR•IPV4•8『线路6』 -Newsmax,https://n1ottesorkatv.akamaized.net/hls/live/2113795/Live_1/index.m3u8$LR•IPV4•8『线路7』 -Newsmax,http://40.160.24.53/NEWSMAX/index.m3u8$LR•IPV4•8『线路8』 +Newsmax,https://2-fss-2.streamhoster.com/pl_120/206858-4404556-1/playlist.m3u8$LR•IPV4•8『线路1』 +Newsmax,https://amg00217-newsmax-newsmax-zeasn-022k9.amagi.tv/playlist.m3u8$LR•IPV4•8『线路2』 +Newsmax,https://newsmaxadria.mts-si.tv/newsmaxadria/index.m3u8$LR•IPV4•8『线路3』 +Newsmax,https://n1ottesorkatv.akamaized.net/hls/live/2113795/Live_1/index.m3u8$LR•IPV4•8『线路4』 +Newsmax,http://40.160.24.53/NEWSMAX/index.m3u8$LR•IPV4•8『线路5』 +Newsmax,https://nmx1ota.akamaized.net/hls/live/2107010/Live_1/3.m3u8$LR•IPV4•8『线路6』 +Newsmax,http://nmxlive.akamaized.net/hls/live/529965/Live_1/index.m3u8$LR•IPV4•8『线路7』 +Newsmax,https://nmxlive.akamaized.net/hls/live/529965/Live_1/index.m3u8$LR•IPV4•8『线路8』 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』 +GB News,https://amg01076-lightningintern-gbnewsau-samsungau-et7fz.amagi.tv/playlist/amg01076-lightningintern-gbnewsau-samsungau/playlist.m3u8$LR•IPV4•2『线路1』 +GB News,https://rakutenaa-lightning-gbnews-rakuten-ccoa9.amagi.tv/playlist/rakutenAA-lightning-gbnews-rakuten/playlist.m3u8$LR•IPV4•2『线路2』 TBS,https://cdntv.tbs.seoul.kr/tbs/tbs_tv_web.smil/playlist.m3u8$LR•IPV4 ION Plus,https://cdn-uw2-prod.tsv2.amagi.tv/linear/amg01438-ewscrippscompan-ionplus-tablo/playlist.m3u8$LR•IPV4 ION,https://ap02.iqplay.tv:8082/iqb8002/i09/playlist.m3u8$LR•IPV4•5『线路1』 @@ -3814,13 +3822,13 @@ ION,https://pb-xhb3ic8b61whm.akamaized.net/Ion_US.m3u8$LR•IPV4•5『线路2 ION,https://jmp2.uk/plu-65453f30085df200085883d8.m3u8$LR•IPV4•5『线路3』 ION,https://aegis-cloudfront-1.tubi.video/3b6afc3b-97f7-4f22-99f4-7bcff60fc39d/playlist.m3u8$LR•IPV4•5『线路4』 ION,https://pb-usmbvsgwcg8pc.akamaized.net/Ion_Mystery_US.m3u8$LR•IPV4•5『线路5』 -Love Nature,p3p://167.114.175.6:55331/655fa9280009c6278edfc1176731425f$LR•IPV4•7『线路1』 -Love Nature,https://d18dyiwu97wm6q.cloudfront.net/playlist2160p.m3u8$LR•IPV4•7『线路2』 -Love Nature,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=1761&tk=f6cc1e0a0e1a$LR•IPV4•7『线路3』 -Love Nature,https://amg01515-amg01515c17-xumo-us-2489.playouts.now.amagi.tv/bamus-lovenaturespanish-roku/playlist.m3u8$LR•IPV4•7『线路4』 -Love Nature,https://aegis-cloudfront-1.tubi.video/6d6d0f24-8445-4b4c-bdf6-44f9e38beaa4/playlist.m3u8$LR•IPV4•7『线路5』 -Love Nature,https://pb-ehs1glsha1juy.akamaized.net/Love_Nature_4K.m3u8$LR•IPV4•7『线路6』 -Love Nature,http://185.246.209.113/LOVENATUREHD/index.m3u8$LR•IPV4•7『线路7』 +Love Nature,https://amg01515-amg01515c17-xumo-us-2489.playouts.now.amagi.tv/bamus-lovenaturespanish-roku/playlist.m3u8$LR•IPV4•7『线路1』 +Love Nature,https://aegis-cloudfront-1.tubi.video/6d6d0f24-8445-4b4c-bdf6-44f9e38beaa4/playlist.m3u8$LR•IPV4•7『线路2』 +Love Nature,https://pb-ehs1glsha1juy.akamaized.net/Love_Nature_4K.m3u8$LR•IPV4•7『线路3』 +Love Nature,http://185.246.209.113/LOVENATUREHD/index.m3u8$LR•IPV4•7『线路4』 +Love Nature,p3p://167.114.175.6:55331/655fa9280009c6278edfc1176731425f$LR•IPV4•7『线路5』 +Love Nature,https://d18dyiwu97wm6q.cloudfront.net/playlist2160p.m3u8$LR•IPV4•7『线路6』 +Love Nature,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=1761&tk=f6cc1e0a0e1a$LR•IPV4•7『线路7』 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 @@ -3864,44 +3872,44 @@ Tastemade,https://jmp2.uk/plu-5fd1419a3b4f4b000773ba85.m3u8$LR•IPV4•15『线 Tastemade,https://tmint-aus-samsungau.amagi.tv/playlist.m3u8$LR•IPV4•15『线路13』 Tastemade,https://tastemadees16us-xumo.amagi.tv/playlist.m3u8$LR•IPV4•15『线路14』 Tastemade,https://d6ef3usc6d9cl.cloudfront.net/Tastemade_Travel.m3u8$LR•IPV4•15『线路15』 -MovieSphere,https://moviesphereuk-samsunguk.amagi.tv/playlist.m3u8$LR•IPV4•5『线路1』 -MovieSphere,https://jmp2.uk/plu-6401d85a49839300087b116c.m3u8$LR•IPV4•5『线路2』 -MovieSphere,https://amg00353-lionsgatestudio-moviesphere-xumo-zh5u0.amagi.tv/playlist.m3u8$LR•IPV4•5『线路3』 -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』 +MovieSphere,https://jmp2.uk/plu-6401d85a49839300087b116c.m3u8$LR•IPV4•5『线路1』 +MovieSphere,https://amg00353-lionsgatestudio-moviesphere-xumo-zh5u0.amagi.tv/playlist.m3u8$LR•IPV4•5『线路2』 +MovieSphere,https://amg00353-lionsgatefilmsi-moviesphereaus-samsungau-7qzhf.amagi.tv/playlist/amg00353-lionsgatefilmsi-moviesphereaus-samsungau/playlist.m3u8$LR•IPV4•5『线路3』 +MovieSphere,https://jmp2.uk/plu-64a3d96f060e830008af6745.m3u8$LR•IPV4•5『线路4』 +MovieSphere,https://moviesphereuk-samsunguk.amagi.tv/playlist.m3u8$LR•IPV4•5『线路5』 香港国际财经,p3p://167.114.175.6:55331/64838620000cd8ed32fb0d6a414411f7$LR•IPV4 -Bloomberg,https://epg.pw/stream/d2edf469b9079064a283f4b0811cbf6f2597ebbb3d08dcf77036a4b5a791b7cf.m3u8$LR•IPV4•16『线路1』 -Bloomberg,https://bloomberg-bloombergtv-3-nl.samsung.wurl.tv/playlist.m3u8$LR•IPV4•16『线路2』 -Bloomberg,https://bloomberg-bloombergtv-5-eu.plex.wurl.tv/3ea2c48ba0034cc276591c94a5b439c0.m3u8$LR•IPV4•16『线路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•16『线路4』 -Bloomberg,https://ciner.daioncdn.net/bloomberght/bloomberght.m3u8$LR•IPV4•16『线路5』 -Bloomberg,http://23.237.104.106:8080/USA_BLOOMBERG/index.m3u8$LR•IPV4•16『线路6』 -Bloomberg,https://bloomberg.com/media-manifest/streams/aus.m3u8$LR•IPV4•16『线路7』 -Bloomberg,http://213.91.179.28:8000/play/a04m$LR•IPV4•16『线路8』 -Bloomberg,https://bloomberg.com/media-manifest/streams/eu-event.m3u8$LR•IPV4•16『线路9』 -Bloomberg,https://bloomberg.com/media-manifest/streams/eu.m3u8$LR•IPV4•16『线路10』 -Bloomberg,https://cdn4.skygo.mn/live/disk1/BloombergMon/DASH-FTA/BloombergMon.mpd$LR•IPV4•16『线路11』 -Bloomberg,https://bloomberg.com/media-manifest/streams/us-event.m3u8$LR•IPV4•16『线路12』 -Bloomberg,https://bloomberg.com/media-manifest/streams/politics.m3u8$LR•IPV4•16『线路13』 -Bloomberg,https://d8975dc3.wurl.com/master/f36d25e7e52f1ba8d7e56eb859c636563214f541/U2Ftc3VuZy1nYl9CbG9vbWJlcmdUVlBsdXNfSExT/playlist.m3u8$LR•IPV4•16『线路14』 -Bloomberg,https://86ebec83.wurl.com/master/f36d25e7e52f1ba8d7e56eb859c636563214f541/UmFrdXRlblRWLWV1X0Jsb29tYmVyZ1RWUGx1c19ITFM/playlist.m3u8$LR•IPV4•16『线路15』 -Bloomberg,https://pe-ak-lp01a-9c9media.akamaized.net/live/News1BNNDigi/p/dash/00000001/1bba52dc66e4c68e/manifest.mpd$LR•IPV4•16『线路16』 -CNBC,http://fl2.moveonjoy.com/CNBC/index.m3u8$LR•IPV4•16『线路1』 -CNBC,https://cdn4.skygo.mn/live/disk1/CNBC/DASH-FTA/CNBC.mpd$LR•IPV4•16『线路2』 -CNBC,https://jmp2.uk/plu-679a973a97782f0008ff4bb6.m3u8$LR•IPV4•16『线路3』 -CNBC,https://amg14891-amg14891c5-amgplt0020.playout.now3.amagi.tv/playlist.m3u8$LR•IPV4•16『线路4』 -CNBC,http://40.160.24.52/CNBC/index.m3u8$LR•IPV4•16『线路5』 -CNBC,https://cnbc-live.akamaized.net/cnbc/master.m3u8$LR•IPV4•16『线路6』 -CNBC,https://liveh34.vtvprime.vn/hls/CNBC/03.m3u8$LR•IPV4•16『线路7』 -CNBC,https://n18syndication.akamaized.net/bpk-tv/CNBC_Awaaz_NW18_MOB/output01/master.m3u8$LR•IPV4•16『线路8』 -CNBC,https://n18syndication.akamaized.net/bpk-tv/CNBC_Bazaar_NW18_MOB/output01/master.m3u8$LR•IPV4•16『线路9』 -CNBC,https://live.cnbcindonesia.com/livecnbc/smil:cnbctv.smil/master.m3u8$LR•IPV4•16『线路10』 -CNBC,https://n18syndication.akamaized.net/bpk-tv/CNBC_TV18_NW18_MOB/output01/index.m3u8$LR•IPV4•16『线路11』 -CNBC,https://n18syndication.akamaized.net/bpk-tv/CNBC_Tv18_Prime_HD_NW18_MOB/output01/index.m3u8$LR•IPV4•16『线路12』 -CNBC,http://108.181.20.255:27347/livehttpplay?channel_id=23117$LR•IPV4•16『线路13』 -CNBC,https://amg01079-nbcuuk-amg01079c2-samsung-gb-1258.playouts.now.amagi.tv/playlist.m3u8$LR•IPV4•16『线路14』 -CNBC,https://cdn4.skygo.mn/live/disk1/CNBC/HLSv3-FTA/CNBC.m3u8$LR•IPV4•16『线路15』 -CNBC,https://hnpsechtsc.turknet.ercdn.net/xpnvudnlsv/cnbc-e/cnbc-e.m3u8$LR•IPV4•16『线路16』 +Bloomberg,https://ciner.daioncdn.net/bloomberght/bloomberght.m3u8$LR•IPV4•16『线路1』 +Bloomberg,http://23.237.104.106:8080/USA_BLOOMBERG/index.m3u8$LR•IPV4•16『线路2』 +Bloomberg,https://bloomberg.com/media-manifest/streams/aus.m3u8$LR•IPV4•16『线路3』 +Bloomberg,http://213.91.179.28:8000/play/a04m$LR•IPV4•16『线路4』 +Bloomberg,https://bloomberg.com/media-manifest/streams/eu-event.m3u8$LR•IPV4•16『线路5』 +Bloomberg,https://bloomberg.com/media-manifest/streams/eu.m3u8$LR•IPV4•16『线路6』 +Bloomberg,https://cdn4.skygo.mn/live/disk1/BloombergMon/DASH-FTA/BloombergMon.mpd$LR•IPV4•16『线路7』 +Bloomberg,https://bloomberg.com/media-manifest/streams/us-event.m3u8$LR•IPV4•16『线路8』 +Bloomberg,https://bloomberg.com/media-manifest/streams/politics.m3u8$LR•IPV4•16『线路9』 +Bloomberg,https://d8975dc3.wurl.com/master/f36d25e7e52f1ba8d7e56eb859c636563214f541/U2Ftc3VuZy1nYl9CbG9vbWJlcmdUVlBsdXNfSExT/playlist.m3u8$LR•IPV4•16『线路10』 +Bloomberg,https://86ebec83.wurl.com/master/f36d25e7e52f1ba8d7e56eb859c636563214f541/UmFrdXRlblRWLWV1X0Jsb29tYmVyZ1RWUGx1c19ITFM/playlist.m3u8$LR•IPV4•16『线路11』 +Bloomberg,https://pe-ak-lp01a-9c9media.akamaized.net/live/News1BNNDigi/p/dash/00000001/1bba52dc66e4c68e/manifest.mpd$LR•IPV4•16『线路12』 +Bloomberg,https://epg.pw/stream/d2edf469b9079064a283f4b0811cbf6f2597ebbb3d08dcf77036a4b5a791b7cf.m3u8$LR•IPV4•16『线路13』 +Bloomberg,https://bloomberg-bloombergtv-3-nl.samsung.wurl.tv/playlist.m3u8$LR•IPV4•16『线路14』 +Bloomberg,https://bloomberg-bloombergtv-5-eu.plex.wurl.tv/3ea2c48ba0034cc276591c94a5b439c0.m3u8$LR•IPV4•16『线路15』 +Bloomberg,https://liveprodusphoenixeast.akamaized.net/USPhx-HD/Channel-TX-USPhx-AWS-virginia-1/Source-USPhx-16k-1-s6lk2-BP-07-02-81ykIWnsMsg_live.m3u8$LR•IPV4•16『线路16』 +CNBC,https://cdn4.skygo.mn/live/disk1/CNBC/DASH-FTA/CNBC.mpd$LR•IPV4•16『线路1』 +CNBC,https://jmp2.uk/plu-679a973a97782f0008ff4bb6.m3u8$LR•IPV4•16『线路2』 +CNBC,https://amg14891-amg14891c5-amgplt0020.playout.now3.amagi.tv/playlist.m3u8$LR•IPV4•16『线路3』 +CNBC,http://40.160.24.52/CNBC/index.m3u8$LR•IPV4•16『线路4』 +CNBC,https://cnbc-live.akamaized.net/cnbc/master.m3u8$LR•IPV4•16『线路5』 +CNBC,https://liveh34.vtvprime.vn/hls/CNBC/03.m3u8$LR•IPV4•16『线路6』 +CNBC,https://n18syndication.akamaized.net/bpk-tv/CNBC_Awaaz_NW18_MOB/output01/master.m3u8$LR•IPV4•16『线路7』 +CNBC,https://n18syndication.akamaized.net/bpk-tv/CNBC_Bazaar_NW18_MOB/output01/master.m3u8$LR•IPV4•16『线路8』 +CNBC,https://live.cnbcindonesia.com/livecnbc/smil:cnbctv.smil/master.m3u8$LR•IPV4•16『线路9』 +CNBC,https://n18syndication.akamaized.net/bpk-tv/CNBC_TV18_NW18_MOB/output01/index.m3u8$LR•IPV4•16『线路10』 +CNBC,https://n18syndication.akamaized.net/bpk-tv/CNBC_Tv18_Prime_HD_NW18_MOB/output01/index.m3u8$LR•IPV4•16『线路11』 +CNBC,http://108.181.20.255:27347/livehttpplay?channel_id=23117$LR•IPV4•16『线路12』 +CNBC,https://amg01079-nbcuuk-amg01079c2-samsung-gb-1258.playouts.now.amagi.tv/playlist.m3u8$LR•IPV4•16『线路13』 +CNBC,https://cdn4.skygo.mn/live/disk1/CNBC/HLSv3-FTA/CNBC.m3u8$LR•IPV4•16『线路14』 +CNBC,https://hnpsechtsc.turknet.ercdn.net/xpnvudnlsv/cnbc-e/cnbc-e.m3u8$LR•IPV4•16『线路15』 +CNBC,http://fl2.moveonjoy.com/CNBC/index.m3u8$LR•IPV4•16『线路16』 TV8,https://1740288887.rsc.cdn77.org/1740288887/index.m3u8$LR•IPV4•6『线路1』 TV8,https://k20.usastreams.com:8081/tv8/index.m3u8$LR•IPV4•6『线路2』 TV8,https://cdn4.skygo.mn/live/disk1/TV8HD/DASH-FTA/TV8HD.mpd$LR•IPV4•6『线路3』 @@ -3933,26 +3941,26 @@ NU2,https://raw.githubusercontent.com/ChiSheng9/iptv/master/TV14.m3u8$LR•IPV4 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://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』 +ABC NEWS,https://abc-news-dmd-streams-1.akamaized.net/out/v1/701126012d044971b3fa89406a440133/index.m3u8$LR•IPV4•15『线路1』 +ABC NEWS,https://pb-0n3n2ej0w8pl9.akamaized.net/ABCNewsLive_Disney.m3u8$LR•IPV4•15『线路2』 +ABC NEWS,https://abcnews-streams.akamaized.net/hls/live/2023560/abcnewshudson1/master.m3u8$LR•IPV4•15『线路3』 +ABC NEWS,https://abcnews-streams.akamaized.net/hls/live/2023561/abcnewshudson2/master.m3u8$LR•IPV4•15『线路4』 +ABC NEWS,https://abcnews-streams.akamaized.net/hls/live/2023562/abcnewshudson3/master.m3u8$LR•IPV4•15『线路5』 +ABC NEWS,https://abcnews-streams.akamaized.net/hls/live/2023563/abcnewshudson4/master.m3u8$LR•IPV4•15『线路6』 +ABC NEWS,https://abcnews-streams.akamaized.net/hls/live/2023564/abcnewshudson5/master.m3u8$LR•IPV4•15『线路7』 +ABC NEWS,https://abcnews-streams.akamaized.net/hls/live/2023565/abcnewshudson6/master.m3u8$LR•IPV4•15『线路8』 +ABC NEWS,https://abcnews-streams.akamaized.net/hls/live/2023566/abcnewshudson7/master.m3u8$LR•IPV4•15『线路9』 +ABC NEWS,https://abcnews-streams.akamaized.net/hls/live/2023567/abcnewshudson8/master.m3u8$LR•IPV4•15『线路10』 +ABC NEWS,https://abcnews-streams.akamaized.net/hls/live/2023568/abcnewshudson9/master.m3u8$LR•IPV4•15『线路11』 +ABC NEWS,https://abcnews-streams.akamaized.net/hls/live/2023569/abcnewshudson10/master.m3u8$LR•IPV4•15『线路12』 +ABC NEWS,https://d4ybyqrhce41r.cloudfront.net/v1/master/3fec3e5cac39a52b2132f9c66c83dae043dc17d4/prod-xumo-linear-nbcu-hlsv3/master.m3u8?ads.channelId=99991626$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』 大爱,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』 -NBC NEWS,https://d1si3n1st4nkgb.cloudfront.net/10502/88896001/hls/master.m3u8?ads.xumo_channelId=88896001$LR•IPV4•3『线路2』 -NBC NEWS,http://206.212.244.63/127/index.m3u8$LR•IPV4•3『线路3』 +NBC NEWS,https://d1si3n1st4nkgb.cloudfront.net/10502/88896001/hls/master.m3u8?ads.xumo_channelId=88896001$LR•IPV4•3『线路1』 +NBC NEWS,http://206.212.244.63/127/index.m3u8$LR•IPV4•3『线路2』 +NBC NEWS,https://livehub-voidnet.onrender.com/cluster/streamcore/us/NBC_REDIS.m3u8$LR•IPV4•3『线路3』 IHOT,#genre# iHOT爱体育,http://146.56.165.66:7788/TVOD/2000000004000000060/hnbblive/index.m3u8$LR•IPV4 diff --git a/cluntop_tvbox/lib/iptv_test.m3u b/cluntop_tvbox/lib/iptv_test.m3u index 5776f5e7..aa4884ea 100755 --- a/cluntop_tvbox/lib/iptv_test.m3u +++ b/cluntop_tvbox/lib/iptv_test.m3u @@ -1,8 +1,8 @@ #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=1784329200-1-b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c-81ad4aefc95ce528b3da1112f0bc9ff2&yid=b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c$LR•IPV4•3『线路1』 +https://live-play-hls.cctvnews.cctv.com/CCTVChannel/channel_cctv4k_mbd.m3u8?auth_key=1784332800-1-b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c-0240f422767495f3b4be3b54c6f0496a&yid=b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c$LR•IPV4•3『线路1』 #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=1784322000-1-b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c-aa68fb06c12f53b71a4d170807f32df5&yid=b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c$LR•IPV4•3『线路2』 +https://live-play-hls.cctvnews.cctv.com/CCTVChannel/channel_cctv4k_mbd.m3u8?auth_key=1784336400-1-b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c-c68beb1a091dd48540f9056f3e86c7c2&yid=b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c$LR•IPV4•3『线路2』 #EXTINF:-1 tvg-id="CCTV4K" tvg-name="CCTV4K" group-title="央视频道",CCTV-4K http://198.204.240.250:82/live/cctv4k.m3u8$LR•IPV4•3『线路3』 #EXTINF:-1 tvg-id="象山综合" tvg-name="象山综合" group-title="浙江频道",象山综合 @@ -28,7 +28,7 @@ http://live.metshop.top/huya/11352941?cdn=alicdn$LR•IPV4•4『线路4』 #EXTINF:-1 tvg-id="小草" tvg-name="小草" group-title="经典小品",小草 https://i.uik.cc/view.php/0bb3de0276d838610d458fd3379b33a0.mp4$LR•IPV4 #EXTINF:-1 tvg-id="东方卫视4K" tvg-name="东方卫视4K" group-title="4K频道",东方卫视4K -http://bp-resource-dfl.bestv.cn/148/3/video.m3u8$LR•IPV4•2『线路1』 +https://bp-resource-dfl.bestv.cn/148/3/video.m3u8$LR•IPV4•2『线路1』 #EXTINF:-1 tvg-id="东方卫视4K" tvg-name="东方卫视4K" group-title="4K频道",东方卫视4K http://43.251.226.89:8080/play/926.m3u8$LR•IPV4•2『线路2』 #EXTINF:-1 tvg-id="湖南卫视4K" tvg-name="湖南卫视4K" group-title="4K频道",湖南卫视4K @@ -79,8 +79,16 @@ https://live.264788.xyz/channel/shenzhenweishi4k?streamid=9828b90c3948bae63cb8de http://101.35.240.114:88/live.php?id=深圳卫视4K$LR•IPV4•8『线路8』 #EXTINF:-1 tvg-id="南国都市4K" tvg-name="南国都市4K" group-title="4K频道",南国都市4K https://tencentplay.gztv.com/live/nanguodushi.m3u8?txSecret=550af55c0ea34ce492748481415b6dfa&txTime=1903e7b17de$LR•IPV4 +#EXTINF:-1 tvg-id="CCTV4K" tvg-name="CCTV4K" group-title="4K频道",CCTV4K真4K +http://vip1.xinketongxun.fun:8082/tsfile/live/1026_1.m3u8$LR•IPV4 #EXTINF:-1 tvg-id="CCTV4K" tvg-name="CCTV4K" group-title="央视高清",CCTV4K http://101.43.145.141:12002/gaoma/cctv4k.m3u8$LR•IPV4 +#EXTINF:-1 tvg-id="CCTV发现之旅" tvg-name="CCTV发现之旅" group-title="咪咕央视",CCTV发现之旅 +http://t.061899.xyz/tl/tl.php?id=fxzl$LR•IPV4 +#EXTINF:-1 tvg-id="CCTV老故事" tvg-name="CCTV老故事" group-title="咪咕央视",CCTV老故事 +http://t.061899.xyz/tl/tl.php?id=lgs$LR•IPV4 +#EXTINF:-1 tvg-id="CCTV中学生" tvg-name="CCTV中学生" group-title="咪咕央视",CCTV中学生 +http://t.061899.xyz/tl/tl.php?id=zxs$LR•IPV4 #EXTINF:-1 tvg-id="NOW爆谷" tvg-name="NOW爆谷" group-title="BXTV频道",NOW爆谷 p3p://167.114.175.6:55331/65bf60df000777a004c3831b56247b8e$LR•IPV4•2『线路1』 #EXTINF:-1 tvg-id="NOW爆谷" tvg-name="NOW爆谷" group-title="BXTV频道",NOW爆谷 @@ -102,9 +110,7 @@ https://live.ottiptv.cc/huya/11601963$LR•IPV4•2『线路2』 #EXTINF:-1 tvg-id="蜡笔小新" tvg-name="蜡笔小新" group-title="动画频道",蜡笔小新 http://103.193.151.146/huya.php?id=11352970$LR•IPV4 #EXTINF:-1 tvg-id="喜羊羊与灰太狼" tvg-name="喜羊羊与灰太狼" group-title="动画频道",喜羊羊与灰太狼 -http://103.193.151.146/huya.php?id=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 #EXTINF:-1 tvg-id="精灵宝可梦" tvg-name="精灵宝可梦" group-title="动画频道",精灵宝可梦 http://103.193.151.146/huya.php?id=23749096$LR•IPV4•2『线路1』 #EXTINF:-1 tvg-id="精灵宝可梦" tvg-name="精灵宝可梦" group-title="动画频道",精灵宝可梦 @@ -113,8 +119,6 @@ https://live.ottiptv.cc/huya/23749096$LR•IPV4•2『线路2』 https://live.ottiptv.cc/huya/30080236$LR•IPV4 #EXTINF:-1 tvg-id="航海王" tvg-name="航海王" group-title="动画频道",航海王 http://103.193.151.146/huya.php?id=16913382$LR•IPV4 -#EXTINF:-1 tvg-id="宇宙科幻合集" tvg-name="宇宙科幻合集" group-title="虎牙影视",宇宙科幻合集 -http://cdn.jdshipin.com:8880/huya.php?id=11342428$LR•IPV4 #EXTINF:-1 tvg-id="古装武侠" tvg-name="古装武侠" group-title="斗鱼影视",古装武侠 http://www.goodiptv.club/douyu/2793084$LR•IPV4 #EXTINF:-1 tvg-id="冰冰影剧" tvg-name="冰冰影剧" group-title="斗鱼影视",冰冰影剧 @@ -130,9 +134,9 @@ http://www.goodiptv.club/douyu/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="斗鱼影视",橙记港剧 -http://huanqiuzhibo.cn/manifest/douyu.php?id=4549169$LR•IPV4•2『线路1』 +http://www.goodiptv.club/douyu/4549169$LR•IPV4•2『线路1』 #EXTINF:-1 tvg-id="橙记港剧" tvg-name="橙记港剧" group-title="斗鱼影视",橙记港剧 -http://www.goodiptv.club/douyu/4549169$LR•IPV4•2『线路2』 +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』 #EXTINF:-1 tvg-id="经典剧集" tvg-name="经典剧集" group-title="斗鱼影视",经典剧集 @@ -163,8 +167,6 @@ https://live.ottiptv.cc/yy/1382736814$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="电视剧频道",特种兵之火凤凰 https://live.ottiptv.cc/huya/29982636$LR•IPV4 #EXTINF:-1 tvg-id="士兵突击" tvg-name="士兵突击" group-title="电视剧频道",士兵突击 @@ -174,7 +176,7 @@ https://live.metshop.top/huya/11342430$LR•IPV4•2『线路2』 #EXTINF:-1 tvg-id="天龙八部" tvg-name="天龙八部" group-title="电视剧频道",天龙八部 https://live.ottiptv.cc/yy/1351814644$LR•IPV4 #EXTINF:-1 tvg-id="倚天屠龙记" tvg-name="倚天屠龙记" group-title="电视剧频道",倚天屠龙记 -http://cdn.jdshipin.com:8880/huya.php?id=23734246$LR•IPV4 +https://live.ottiptv.cc/huya/11342403$LR•IPV4 #EXTINF:-1 tvg-id="康熙王朝" tvg-name="康熙王朝" group-title="电视剧频道",康熙王朝 https://live.ottiptv.cc/huya/11352940$LR•IPV4 #EXTINF:-1 tvg-id="庆余年" tvg-name="庆余年" group-title="电视剧频道",庆余年 @@ -185,28 +187,16 @@ http://58.39.190.143:35455/huya/11352960$LR•IPV4•2『线路2』 https://live.ottiptv.cc/huya/11352871$LR•IPV4 #EXTINF:-1 tvg-id="鬼吹灯之怒晴湘西" tvg-name="鬼吹灯之怒晴湘西" group-title="电视剧频道",鬼吹灯之怒晴湘西 https://live.ottiptv.cc/huya/11602075$LR•IPV4 -#EXTINF:-1 tvg-id="鬼吹灯之云南虫谷" tvg-name="鬼吹灯之云南虫谷" group-title="电视剧频道",鬼吹灯之云南虫谷 -https://live.ottiptv.cc/huya/11352898$LR•IPV4 #EXTINF:-1 tvg-id="伪装者" tvg-name="伪装者" group-title="电视剧频道",伪装者 https://live.ottiptv.cc/yy/1354936244$LR•IPV4 #EXTINF:-1 tvg-id="仙剑奇侠传" tvg-name="仙剑奇侠传" group-title="电视剧频道",仙剑奇侠传 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="电视剧频道",柳舟计 -https://live.ottiptv.cc/huya/23860039$LR•IPV4 #EXTINF:-1 tvg-id="流水迢迢" tvg-name="流水迢迢" group-title="电视剧频道",流水迢迢 https://live.ottiptv.cc/huya/23865036$LR•IPV4 -#EXTINF:-1 tvg-id="唐诡之西行" tvg-name="唐诡之西行" group-title="电视剧频道",唐诡之西行 -https://live.ottiptv.cc/huya/26355763$LR•IPV4 -#EXTINF:-1 tvg-id="玫瑰的故事" tvg-name="玫瑰的故事" group-title="电视剧频道",玫瑰的故事 -https://live.ottiptv.cc/huya/23865142$LR•IPV4 -#EXTINF:-1 tvg-id="梦中的那片海" tvg-name="梦中的那片海" group-title="电视剧频道",梦中的那片海 -https://live.ottiptv.cc/huya/26355765$LR•IPV4 #EXTINF:-1 tvg-id="知否知否" tvg-name="知否知否" group-title="电视剧频道",知否知否 https://live.ottiptv.cc/yy/21881901$LR•IPV4 #EXTINF:-1 tvg-id="父母爱情" tvg-name="父母爱情" group-title="电视剧频道",父母爱情 @@ -215,18 +205,6 @@ https://live.ottiptv.cc/yy/1354926650$LR•IPV4 https://live.ottiptv.cc/huya/29465868$LR•IPV4 #EXTINF:-1 tvg-id="武林外传" tvg-name="武林外传" group-title="电视剧频道",武林外传 http://live.nctv.top/DJlio/huya.php?id=21059598$LR•IPV4 -#EXTINF:-1 tvg-id="楚汉骄雄" tvg-name="楚汉骄雄" group-title="埋堆堆频道",楚汉骄雄 -http://cdn.jdshipin.com:8880/huya.php?id=29465854$LR•IPV4 -#EXTINF:-1 tvg-id="西游记2" tvg-name="西游记2" group-title="埋堆堆频道",西游记2 -http://cdn.jdshipin.com:8880/huya.php?id=29465859$LR•IPV4 -#EXTINF:-1 tvg-id="活佛济公3" tvg-name="活佛济公3" group-title="埋堆堆频道",活佛济公3 -http://cdn.jdshipin.com:8880/huya.php?id=23903123$LR•IPV4 -#EXTINF:-1 tvg-id="无心法师" tvg-name="无心法师" group-title="埋堆堆频道",无心法师 -http://cdn.jdshipin.com:8880/huya.php?id=30080233$LR•IPV4 -#EXTINF:-1 tvg-id="法政先锋" tvg-name="法政先锋" group-title="埋堆堆频道",法政先锋 -http://cdn.jdshipin.com:8880/huya.php?id=23863804$LR•IPV4 -#EXTINF:-1 tvg-id="野蛮亲家" tvg-name="野蛮亲家" group-title="埋堆堆频道",野蛮亲家 -http://cdn.jdshipin.com:8880/huya.php?id=23863796$LR•IPV4 #EXTINF:-1 tvg-id="倩女幽魂人间道" tvg-name="倩女幽魂人间道" group-title="点播电影",倩女幽魂人间道 http://jsmov2.a.yximgs.com/bs3/video-hls/5250634317044855747_hlsb.m3u8$LR•IPV4 #EXTINF:-1 tvg-id="倩女幽魂道道道" tvg-name="倩女幽魂道道道" group-title="点播电影",倩女幽魂道道道 @@ -292,7 +270,7 @@ https://stream1.freetv.fun/qian-jiang-du-shi-1.m3u8$LR•IPV4•5『线路3』 #EXTINF:-1 tvg-id="钱江都市" tvg-name="钱江都市" group-title="☘️浙江频道",钱江都市 https://stream1.freetv.fun/qian-jiang-du-shi-2.m3u8$LR•IPV4•5『线路4』 #EXTINF:-1 tvg-id="钱江都市" tvg-name="钱江都市" group-title="☘️浙江频道",钱江都市 -http://ali-m-l.cztv.com/channels/lantian/channel002/1080p.m3u8$LR•IPV4•5『线路5』 +https://ali-m-l.cztv.com/channels/lantian/channel002/1080p.m3u8$LR•IPV4•5『线路5』 #EXTINF:-1 tvg-id="YMG未来" tvg-name="YMG未来" group-title="☘️浙江频道",YMG未来 http://l.cztvcloud.com/channels/lantian/SXyuhang3/720p.m3u8?$LR•IPV4 #EXTINF:-1 tvg-id="上虞文化" tvg-name="上虞文化" group-title="☘️浙江频道",上虞文化 @@ -348,13 +326,13 @@ http://l.cztvcloud.com/channels/lantian/SXlanxi1/720p.m3u8?zzhed$LR•IPV4•7 #EXTINF:-1 tvg-id="兰溪新闻" tvg-name="兰溪新闻" group-title="☘️浙江频道",兰溪新闻 http://l.cztvcloud.com/channels/lantian/SXlanxi1/720p.m3u8?zzhed?$LR•IPV4•7『线路7』 #EXTINF:-1 tvg-id="姚江文化" tvg-name="姚江文化" group-title="☘️浙江频道",姚江文化 -http://l.cztvcloud.com/channels/lantian/SXyuyao3/720p.m3u8?zzhed$LR•IPV4•5『线路1』 +https://l.cztvcloud.com/channels/lantian/SXyuyao3/720p.m3u8$LR•IPV4•5『线路1』 #EXTINF:-1 tvg-id="姚江文化" tvg-name="姚江文化" group-title="☘️浙江频道",姚江文化 -http://l.cztvcloud.com/channels/lantian/SXyuyao3/720p.m3u8zzhed$LR•IPV4•5『线路2』 +https://l.cztvcloud.com/channels/lantian/SXyuyao2/720p.m3u8$LR•IPV4•5『线路2』 #EXTINF:-1 tvg-id="姚江文化" tvg-name="姚江文化" group-title="☘️浙江频道",姚江文化 -https://l.cztvcloud.com/channels/lantian/SXyuyao3/720p.m3u8$LR•IPV4•5『线路3』 +http://l.cztvcloud.com/channels/lantian/SXyuyao3/720p.m3u8zzhed$LR•IPV4•5『线路3』 #EXTINF:-1 tvg-id="姚江文化" tvg-name="姚江文化" group-title="☘️浙江频道",姚江文化 -https://l.cztvcloud.com/channels/lantian/SXyuyao2/720p.m3u8$LR•IPV4•5『线路4』 +http://l.cztvcloud.com/channels/lantian/SXyuyao3/720p.m3u8?zzhed$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="☘️浙江频道",嵊州新闻 @@ -826,51 +804,51 @@ 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•8『线路1』 #EXTINF:-1 tvg-id="凤凰卫视中文台" tvg-name="凤凰卫视中文台" group-title="港澳台",凤凰卫视中文台 -http://zmgd.zyrnet.com:8888/hls/110/index.m3u8$LR•IPV4•8『线路2』 +http://223.110.245.139/ott.js.chinamobile.com/PLTV/3/224/3221226922/index.m3u8$LR•IPV4•8『线路2』 #EXTINF:-1 tvg-id="凤凰卫视中文台" tvg-name="凤凰卫视中文台" group-title="港澳台",凤凰卫视中文台 -http://120.198.95.220:9901/tsfile/live/1036_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•8『线路3』 +http://zmgd.zyrnet.com:8888/hls/110/index.m3u8$LR•IPV4•8『线路3』 #EXTINF:-1 tvg-id="凤凰卫视中文台" tvg-name="凤凰卫视中文台" group-title="港澳台",凤凰卫视中文台 -http://218.206.193.218:8888/hls/66/index.m3u8$LR•IPV4•8『线路4』 +http://120.198.95.220:9901/tsfile/live/1036_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•8『线路4』 #EXTINF:-1 tvg-id="凤凰卫视中文台" tvg-name="凤凰卫视中文台" group-title="港澳台",凤凰卫视中文台 -http://120.198.95.220:9901/tsfile/live/1036_1.m3u8?key=txiptv$LR•IPV4•8『线路5』 +http://218.206.193.218:8888/hls/66/index.m3u8$LR•IPV4•8『线路5』 #EXTINF:-1 tvg-id="凤凰卫视中文台" tvg-name="凤凰卫视中文台" group-title="港澳台",凤凰卫视中文台 -http://r.jdshipin.com/cCCzW$LR•IPV4•8『线路6』 +http://120.198.95.220:9901/tsfile/live/1036_1.m3u8?key=txiptv$LR•IPV4•8『线路6』 #EXTINF:-1 tvg-id="凤凰卫视中文台" tvg-name="凤凰卫视中文台" group-title="港澳台",凤凰卫视中文台 -http://cdn6.163189.xyz/163189/fhzw$LR•IPV4•8『线路7』 +http://r.jdshipin.com/cCCzW$LR•IPV4•8『线路7』 #EXTINF:-1 tvg-id="凤凰卫视中文台" tvg-name="凤凰卫视中文台" group-title="港澳台",凤凰卫视中文台 -http://223.110.245.139/ott.js.chinamobile.com/PLTV/3/224/3221226922/index.m3u8$LR•IPV4•8『线路8』 +http://cdn6.163189.xyz/163189/fhzw$LR•IPV4•8『线路8』 #EXTINF:-1 tvg-id="凤凰卫视资讯台" tvg-name="凤凰卫视资讯台" group-title="港澳台",凤凰卫视资讯台 http://api.mg.itv888.cn:8080/hls/11ef1dc70d8/index.m3u8$LR•IPV4•10『线路1』 #EXTINF:-1 tvg-id="凤凰卫视资讯台" tvg-name="凤凰卫视资讯台" group-title="港澳台",凤凰卫视资讯台 -http://zmgd.zyrnet.com:8888/hls/109/index.m3u8$LR•IPV4•10『线路2』 +http://223.110.245.167/ott.js.chinamobile.com/PLTV/3/224/3221226923/index.m3u8$LR•IPV4•10『线路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•10『线路3』 +http://zmgd.zyrnet.com:8888/hls/109/index.m3u8$LR•IPV4•10『线路3』 #EXTINF:-1 tvg-id="凤凰卫视资讯台" tvg-name="凤凰卫视资讯台" group-title="港澳台",凤凰卫视资讯台 -http://120.198.95.220:9901/tsfile/live/1037_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•10『线路4』 +http://221.7.175.154:8445/tsfile/live/1021_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•10『线路4』 #EXTINF:-1 tvg-id="凤凰卫视资讯台" tvg-name="凤凰卫视资讯台" group-title="港澳台",凤凰卫视资讯台 -http://120.198.95.220:9901/tsfile/live/1037_1.m3u8?key=txiptv$LR•IPV4•10『线路5』 +http://120.198.95.220:9901/tsfile/live/1037_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•10『线路5』 #EXTINF:-1 tvg-id="凤凰卫视资讯台" tvg-name="凤凰卫视资讯台" group-title="港澳台",凤凰卫视资讯台 -p3p://167.114.175.6:55331/5fffbf860003807cedf4e1016c3c3ed2$LR•IPV4•10『线路6』 +http://120.198.95.220:9901/tsfile/live/1037_1.m3u8?key=txiptv$LR•IPV4•10『线路6』 #EXTINF:-1 tvg-id="凤凰卫视资讯台" tvg-name="凤凰卫视资讯台" group-title="港澳台",凤凰卫视资讯台 -http://r.jdshipin.com/0Rp07$LR•IPV4•10『线路7』 +p3p://167.114.175.6:55331/5fffbf860003807cedf4e1016c3c3ed2$LR•IPV4•10『线路7』 #EXTINF:-1 tvg-id="凤凰卫视资讯台" tvg-name="凤凰卫视资讯台" group-title="港澳台",凤凰卫视资讯台 -http://php.jdshipin.com/TVOD/iptv.php?id=fhzx$LR•IPV4•10『线路8』 +http://r.jdshipin.com/0Rp07$LR•IPV4•10『线路8』 #EXTINF:-1 tvg-id="凤凰卫视资讯台" tvg-name="凤凰卫视资讯台" group-title="港澳台",凤凰卫视资讯台 -http://cdn6.163189.xyz/163189/fhzx$LR•IPV4•10『线路9』 +http://php.jdshipin.com/TVOD/iptv.php?id=fhzx$LR•IPV4•10『线路9』 #EXTINF:-1 tvg-id="凤凰卫视资讯台" tvg-name="凤凰卫视资讯台" group-title="港澳台",凤凰卫视资讯台 -http://223.110.245.167/ott.js.chinamobile.com/PLTV/3/224/3221226923/index.m3u8$LR•IPV4•10『线路10』 +http://cdn6.163189.xyz/163189/fhzx$LR•IPV4•10『线路10』 #EXTINF:-1 tvg-id="凤凰卫视香港台" tvg-name="凤凰卫视香港台" group-title="港澳台",凤凰卫视香港台 -http://122.152.202.33/s/81a8a44f/index.m3u8?id=fhhk$LR•IPV4•6『线路1』 +http://223.110.245.136/PLTV/3/224/3221226975/index.m3u8$LR•IPV4•6『线路1』 #EXTINF:-1 tvg-id="凤凰卫视香港台" tvg-name="凤凰卫视香港台" group-title="港澳台",凤凰卫视香港台 -p3p://167.114.175.6:55331/5fe0b82c000cac9774c17f262e43314d$LR•IPV4•6『线路2』 +http://122.152.202.33/s/81a8a44f/index.m3u8?id=fhhk$LR•IPV4•6『线路2』 #EXTINF:-1 tvg-id="凤凰卫视香港台" tvg-name="凤凰卫视香港台" group-title="港澳台",凤凰卫视香港台 -http://r.jdshipin.com/yDoTN$LR•IPV4•6『线路3』 +p3p://167.114.175.6:55331/5fe0b82c000cac9774c17f262e43314d$LR•IPV4•6『线路3』 #EXTINF:-1 tvg-id="凤凰卫视香港台" tvg-name="凤凰卫视香港台" group-title="港澳台",凤凰卫视香港台 -http://php.jdshipin.com/TVOD/iptv.php?id=fhhk$LR•IPV4•6『线路4』 +http://r.jdshipin.com/yDoTN$LR•IPV4•6『线路4』 #EXTINF:-1 tvg-id="凤凰卫视香港台" tvg-name="凤凰卫视香港台" group-title="港澳台",凤凰卫视香港台 -http://cdn6.163189.xyz/163189/fhhk$LR•IPV4•6『线路5』 +http://php.jdshipin.com/TVOD/iptv.php?id=fhhk$LR•IPV4•6『线路5』 #EXTINF:-1 tvg-id="凤凰卫视香港台" tvg-name="凤凰卫视香港台" group-title="港澳台",凤凰卫视香港台 -http://223.110.245.136/PLTV/3/224/3221226975/index.m3u8$LR•IPV4•6『线路6』 +http://cdn6.163189.xyz/163189/fhhk$LR•IPV4•6『线路6』 #EXTINF:-1 tvg-id="台视新闻" tvg-name="台视新闻" group-title="港澳台",台视新闻 http://38.64.72.148:80/hls/modn/list/4013/chunklist0.m3u8$LR•IPV4•4『线路1』 #EXTINF:-1 tvg-id="台视新闻" tvg-name="台视新闻" group-title="港澳台",台视新闻 @@ -888,41 +866,41 @@ 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•18『线路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•18『线路1』 #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•18『线路2』 +http://204.12.221.218:8181/3m1080p/tjws.m3u8$LR•IPV4•18『线路2』 #EXTINF:-1 tvg-id="天津" tvg-name="天津" group-title="☘️天津频道",天津 -http://204.12.221.218:8181/3m1080p/tjws.m3u8$LR•IPV4•18『线路3』 +http://107.150.60.122/live/tjwshd.m3u8$LR•IPV4•18『线路3』 #EXTINF:-1 tvg-id="天津" tvg-name="天津" group-title="☘️天津频道",天津 -http://107.150.60.122/live/tjwshd.m3u8$LR•IPV4•18『线路4』 +http://192.151.150.154/live/tjwshd.m3u8$LR•IPV4•18『线路4』 #EXTINF:-1 tvg-id="天津" tvg-name="天津" group-title="☘️天津频道",天津 -http://192.151.150.154/live/tjwshd.m3u8$LR•IPV4•18『线路5』 +http://38.75.136.137:98/gslb/dsdqpub/tjwshd.m3u8?auth=testpub$LR•IPV4•18『线路5』 #EXTINF:-1 tvg-id="天津" tvg-name="天津" group-title="☘️天津频道",天津 -http://38.75.136.137:98/gslb/dsdqpub/tjwshd.m3u8?auth=testpub$LR•IPV4•18『线路6』 +http://63.141.230.178:82/gslb/zbdq5.m3u8?id=tjwshd$LR•IPV4•18『线路6』 #EXTINF:-1 tvg-id="天津" tvg-name="天津" group-title="☘️天津频道",天津 -http://63.141.230.178:82/gslb/zbdq5.m3u8?id=tjwshd$LR•IPV4•18『线路7』 +http://207.56.13.146:81/cdnlive/tjws.m3u8$LR•IPV4•18『线路7』 #EXTINF:-1 tvg-id="天津" tvg-name="天津" group-title="☘️天津频道",天津 -http://207.56.13.146:81/cdnlive/tjws.m3u8$LR•IPV4•18『线路8』 +http://120.198.95.220:9901/tsfile/live/1067_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•18『线路8』 #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•18『线路9』 +http://112.27.235.94:8000/hls/42/index.m3u8$LR•IPV4•18『线路9』 #EXTINF:-1 tvg-id="天津" tvg-name="天津" group-title="☘️天津频道",天津 -http://112.27.235.94:8000/hls/42/index.m3u8$LR•IPV4•18『线路10』 +https://piccpndks.v.kcdnvip.com/audio/tianjin_2/index.m3u8$LR•IPV4•18『线路10』 #EXTINF:-1 tvg-id="天津" tvg-name="天津" group-title="☘️天津频道",天津 -http://23.237.228.134/live8/tianjing.m3u8$LR•IPV4•18『线路11』 +http://39.134.115.163:8080/PLTV/88888910/224/3221225698/index.m3u8$LR•IPV4•18『线路11』 #EXTINF:-1 tvg-id="天津" tvg-name="天津" group-title="☘️天津频道",天津 -http://gfr.x3322.net:9901/tsfile/live/1090_1.m3u8$LR•IPV4•18『线路12』 +http://23.237.228.134/live8/tianjing.m3u8$LR•IPV4•18『线路12』 #EXTINF:-1 tvg-id="天津" tvg-name="天津" group-title="☘️天津频道",天津 -http://api.kkitv.itv888.cn:8080/hls/z2lkdkrb4w/index.m3u8$LR•IPV4•18『线路13』 +http://gfr.x3322.net:9901/tsfile/live/1090_1.m3u8$LR•IPV4•18『线路13』 #EXTINF:-1 tvg-id="天津" tvg-name="天津" group-title="☘️天津频道",天津 -https://iptv.catvod.com/catvod.php?id=tjws$LR•IPV4•18『线路14』 +http://api.kkitv.itv888.cn:8080/hls/z2lkdkrb4w/index.m3u8$LR•IPV4•18『线路14』 #EXTINF:-1 tvg-id="天津" tvg-name="天津" group-title="☘️天津频道",天津 -https://httop.top/ysp-天津卫视$LR•IPV4•18『线路15』 +https://iptv.catvod.com/catvod.php?id=tjws$LR•IPV4•18『线路15』 #EXTINF:-1 tvg-id="天津" tvg-name="天津" group-title="☘️天津频道",天津 -http://iptv.huuc.edu.cn/hls/tjhd.m3u8$LR•IPV4•18『线路16』 +https://httop.top/ysp-天津卫视$LR•IPV4•18『线路16』 #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•18『线路17』 +http://iptv.huuc.edu.cn/hls/tjhd.m3u8$LR•IPV4•18『线路17』 #EXTINF:-1 tvg-id="天津" tvg-name="天津" group-title="☘️天津频道",天津 -http://39.134.115.163:8080/PLTV/88888910/224/3221225698/index.m3u8$LR•IPV4•18『线路18』 +http://153.0.171.163:9901/tsfile/live/0135_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•18『线路18』 #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="☘️甘肃频道",渭源新闻 @@ -1029,40 +1007,42 @@ https://vip.ffzy-play2.com/20221127/1567_f1965b4b/index.m3u8$LR•IPV4 https://vip.ffzy-play6.com/20221019/118_1367b8f6/index.m3u8$LR•IPV4 #EXTINF:-1 tvg-id="喜剧影院" tvg-name="喜剧影院" group-title="数字",喜剧影院 http://74.91.26.218:82/live/vlxjyy.m3u8$LR•IPV4 +#EXTINF:-1 tvg-id="CHC动作电影" tvg-name="CHC动作电影" group-title="数字",CHC动作电影 +http://t.061899.xyz/tl/tl.php?id=chcdzdy$LR•IPV4 #EXTINF:-1 tvg-id="卡酷少儿" tvg-name="卡酷少儿" group-title="数字",卡酷少儿 http://218.13.170.98:9901/tsfile/live/1021_1.m3u8$LR•IPV4 #EXTINF:-1 tvg-id="UFC" tvg-name="UFC" group-title="•特色",UFC -https://dbrb49pjoymg4.cloudfront.net/manifest/3fec3e5cac39a52b2132f9c66c83dae043dc17d4/prod_default_xumo-ams-aws/194a140c-0cf5-443e-b747-08bf621d75a8/0.m3u8$LR•IPV4•16『线路1』 +https://jmp2.uk/plu-6a037119f6ac24413f849d5b.m3u8$LR•IPV4•16『线路1』 #EXTINF:-1 tvg-id="UFC" tvg-name="UFC" group-title="•特色",UFC -https://jmp2.uk/plu-6a037119f6ac24413f849d5b.m3u8$LR•IPV4•16『线路2』 +https://aegis-cloudfront-1.tubi.video/a78ea283-8666-44a1-a0f6-fde5d229ac21/playlist.m3u8$LR•IPV4•16『线路2』 #EXTINF:-1 tvg-id="UFC" tvg-name="UFC" group-title="•特色",UFC -https://aegis-cloudfront-1.tubi.video/a78ea283-8666-44a1-a0f6-fde5d229ac21/playlist.m3u8$LR•IPV4•16『线路3』 +https://linear-893.frequency.stream/dist/xumo/893/hls/master/playlist.m3u8$LR•IPV4•16『线路3』 #EXTINF:-1 tvg-id="UFC" tvg-name="UFC" group-title="•特色",UFC -https://linear-893.frequency.stream/dist/xumo/893/hls/master/playlist.m3u8$LR•IPV4•16『线路4』 +https://pb-ljudrmfw5j68n.akamaized.net/playlist.m3u8$LR•IPV4•16『线路4』 #EXTINF:-1 tvg-id="UFC" tvg-name="UFC" group-title="•特色",UFC -https://pb-ljudrmfw5j68n.akamaized.net/playlist.m3u8$LR•IPV4•16『线路5』 +https://jmp2.uk/plu-66ed3eb27358ce000830df49.m3u8$LR•IPV4•16『线路5』 #EXTINF:-1 tvg-id="UFC" tvg-name="UFC" group-title="•特色",UFC -https://jmp2.uk/plu-66ed3eb27358ce000830df49.m3u8$LR•IPV4•16『线路6』 +https://jmp2.uk/plu-679203d4bc03978b9b4b79a6.m3u8$LR•IPV4•16『线路6』 #EXTINF:-1 tvg-id="UFC" tvg-name="UFC" group-title="•特色",UFC -https://jmp2.uk/plu-679203d4bc03978b9b4b79a6.m3u8$LR•IPV4•16『线路7』 +https://jmp2.uk/plu-67a52cd4ec91870008a62164.m3u8$LR•IPV4•16『线路7』 #EXTINF:-1 tvg-id="UFC" tvg-name="UFC" group-title="•特色",UFC -https://jmp2.uk/plu-67a52cd4ec91870008a62164.m3u8$LR•IPV4•16『线路8』 +https://jmp2.uk/plu-6792066f3de7c8cf941e7ce3.m3u8$LR•IPV4•16『线路8』 #EXTINF:-1 tvg-id="UFC" tvg-name="UFC" group-title="•特色",UFC -https://jmp2.uk/plu-6792066f3de7c8cf941e7ce3.m3u8$LR•IPV4•16『线路9』 +https://jmp2.uk/plu-66ed3e9d5e4a6e0008b346e0.m3u8$LR•IPV4•16『线路9』 #EXTINF:-1 tvg-id="UFC" tvg-name="UFC" group-title="•特色",UFC -https://jmp2.uk/plu-66ed3e9d5e4a6e0008b346e0.m3u8$LR•IPV4•16『线路10』 +https://jmp2.uk/plu-69a20556814d27f4ae630a92.m3u8$LR•IPV4•16『线路10』 #EXTINF:-1 tvg-id="UFC" tvg-name="UFC" group-title="•特色",UFC -https://jmp2.uk/plu-69a20556814d27f4ae630a92.m3u8$LR•IPV4•16『线路11』 +https://jmp2.uk/plu-6792044b680721c77c5b9ba2.m3u8$LR•IPV4•16『线路11』 #EXTINF:-1 tvg-id="UFC" tvg-name="UFC" group-title="•特色",UFC -https://jmp2.uk/plu-6792044b680721c77c5b9ba2.m3u8$LR•IPV4•16『线路12』 +https://jmp2.uk/plu-67921b873de7c8cf94233f52.m3u8$LR•IPV4•16『线路12』 #EXTINF:-1 tvg-id="UFC" tvg-name="UFC" group-title="•特色",UFC -https://jmp2.uk/plu-67921b873de7c8cf94233f52.m3u8$LR•IPV4•16『线路13』 +https://jmp2.uk/plu-67921b78b83355184c667770.m3u8$LR•IPV4•16『线路13』 #EXTINF:-1 tvg-id="UFC" tvg-name="UFC" group-title="•特色",UFC -https://jmp2.uk/plu-67921b78b83355184c667770.m3u8$LR•IPV4•16『线路14』 +https://jmp2.uk/plu-679205a13de7c8cf941e7857.m3u8$LR•IPV4•16『线路14』 #EXTINF:-1 tvg-id="UFC" tvg-name="UFC" group-title="•特色",UFC -https://jmp2.uk/plu-679205a13de7c8cf941e7857.m3u8$LR•IPV4•16『线路15』 +https://jmp2.uk/plu-677d9adfa9a51b0008497fa0.m3u8$LR•IPV4•16『线路15』 #EXTINF:-1 tvg-id="UFC" tvg-name="UFC" group-title="•特色",UFC -https://jmp2.uk/plu-677d9adfa9a51b0008497fa0.m3u8$LR•IPV4•16『线路16』 +https://dbrb49pjoymg4.cloudfront.net/manifest/3fec3e5cac39a52b2132f9c66c83dae043dc17d4/prod_default_xumo-ams-aws/194a140c-0cf5-443e-b747-08bf621d75a8/0.m3u8$LR•IPV4•16『线路16』 #EXTINF:-1 tvg-id="PMC" tvg-name="PMC" group-title="•音乐",PMC https://mumbai-edge.smartplaytv.in/PMC/index.m3u8$LR•IPV4•3『线路1』 #EXTINF:-1 tvg-id="PMC" tvg-name="PMC" group-title="•音乐",PMC @@ -1110,9 +1090,9 @@ https://jmp2.uk/plu-5d14fdb8ca91eedee1633117.m3u8$LR•IPV4•2『线路1』 #EXTINF:-1 tvg-id="MTV Spankin" tvg-name="MTV Spankin" group-title="•音乐",MTV Spankin https://jmp2.uk/plu-6541010f770cf1000866be98.m3u8$LR•IPV4•2『线路2』 #EXTINF:-1 tvg-id="RT News" tvg-name="RT News" group-title="•国际",RT News -https://rt-glb.rttv.com/dvr/rtnews/playlist_4500Kb.m3u8$LR•IPV4•2『线路1』 +https://cloud.odysee.live/content/fdd11cb3ab75f95efb7b3bc2d726aa13ac915b66/master.m3u8$LR•IPV4•2『线路1』 #EXTINF:-1 tvg-id="RT News" tvg-name="RT News" group-title="•国际",RT News -https://cloud.odysee.live/content/fdd11cb3ab75f95efb7b3bc2d726aa13ac915b66/master.m3u8$LR•IPV4•2『线路2』 +https://rt-glb.rttv.com/dvr/rtnews/playlist_4500Kb.m3u8$LR•IPV4•2『线路2』 #EXTINF:-1 tvg-id="MTN" tvg-name="MTN" group-title="•韩国",MTN http://183.110.27.87/mtnlive/720/playlist.m3u8$LR•IPV4 #EXTINF:-1 tvg-id="Job Plus TV" tvg-name="Job Plus TV" group-title="•韩国",Job Plus TV @@ -1210,23 +1190,23 @@ https://cdn-us-east-prod-ingest-infra-dacast-com.akamaized.net/624ff8f9-db18-da9 #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』 +http://1.222.207.80:1935/live/cjbtv/playlist.m3u8$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.82.49.4:1935/live/_definst_/tv.stream/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://123.140.197.22/stream/1/play.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.85.197.53:1935/jtv_live/myStream/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』 +https://vod.ikbc.co.kr/KBCTV/tv/playlist.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』 +https://stream1.knn.co.kr/hls/9ly4534y7dm2xfa123r2_tv/index.m3u8$LR•IPV4•9『线路6』 #EXTINF:-1 tvg-id="SBS" tvg-name="SBS" group-title="•韩国",SBS -https://stream1.knn.co.kr/hls/9ly4534y7dm2xfa123r2_tv/index.m3u8$LR•IPV4•9『线路7』 +http://203.251.91.122:1935/on-air-Backup/tv/playlist.m3u8$LR•IPV4•9『线路7』 #EXTINF:-1 tvg-id="SBS" tvg-name="SBS" group-title="•韩国",SBS -http://203.251.91.122:1935/on-air-Backup/tv/playlist.m3u8$LR•IPV4•9『线路8』 +https://stream.ubc.co.kr/hls/ubctvstream/index.m3u8$LR•IPV4•9『线路8』 #EXTINF:-1 tvg-id="SBS" tvg-name="SBS" group-title="•韩国",SBS -https://stream.ubc.co.kr/hls/ubctvstream/index.m3u8$LR•IPV4•9『线路9』 +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『线路9』 #EXTINF:-1 tvg-id="Shop Channel" tvg-name="Shop Channel" group-title="•日本",Shop Channel https://stream3.shopch.jp/HLS/master.m3u8$LR•IPV4 #EXTINF:-1 tvg-id="30A Investment Pitch" tvg-name="30A Investment Pitch" group-title="•杂货",30A Investment Pitch @@ -1300,9 +1280,9 @@ https://amg00654-itv-amg00654c20-rakuten-it-3615.playouts.now.amagi.tv/playlist. #EXTINF:-1 tvg-id="Hell's Kitchen" tvg-name="Hell's Kitchen" group-title="•杂货",Hell's Kitchen https://amg00654-itv-amg00654c1-samsung-au-1072.playouts.now.amagi.tv/itv-hellskitchen-samsung/playlist.m3u8$LR•IPV4•3『线路3』 #EXTINF:-1 tvg-id="HollyWire" tvg-name="HollyWire" group-title="•杂货",HollyWire -https://bozztv.com/hwotta/playlist/HD3400/HD3400.m3u8$LR•IPV4•2『线路1』 +https://bozztv.com/hwotta/playlist/playlist.m3u8$LR•IPV4•2『线路1』 #EXTINF:-1 tvg-id="HollyWire" tvg-name="HollyWire" group-title="•杂货",HollyWire -https://bozztv.com/hwotta/playlist/playlist.m3u8$LR•IPV4•2『线路2』 +https://bozztv.com/hwotta/playlist/HD3400/HD3400.m3u8$LR•IPV4•2『线路2』 #EXTINF:-1 tvg-id="Iqra TV" tvg-name="Iqra TV" group-title="•杂货",Iqra TV https://cdn149.anystream.uk:8082/app/iq53la/playlist.m3u8$LR•IPV4 #EXTINF:-1 tvg-id="KBEV Spectrum Channel 6" tvg-name="KBEV Spectrum Channel 6" group-title="•杂货",KBEV Spectrum Channel 6 [Beverly Hills] @@ -1330,9 +1310,9 @@ https://stream-us-east-1.getpublica.com/playlist.m3u8?network_id=15811$LR•IPV4 #EXTINF:-1 tvg-id="Realitatea Plus" tvg-name="Realitatea Plus" group-title="•杂货",Realitatea Plus https://dokagents.site/live/realitateatv/mono.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•2『线路1』 +https://amg00453-reuters-amg00453c1-rakuten-uk-2110.playouts.now.amagi.tv/playlist/amg00453-reuters-reuters-rakutenuk/playlist.m3u8$LR•IPV4•2『线路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•2『线路2』 +https://dbrb49pjoymg4.cloudfront.net/manifest/3fec3e5cac39a52b2132f9c66c83dae043dc17d4/prod_default_xumo-ams-aws/e7493ea5-5c1c-4d7a-a3f7-e95516048ad8/3.m3u8$LR•IPV4•2『线路2』 #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 @@ -1368,135 +1348,135 @@ https://live.kh.malimarcdn.com/live/tvk2.stream/playlist.m3u8$LR•IPV4•3『 #EXTINF:-1 tvg-id="TVK" tvg-name="TVK" group-title="•杂货",TVK https://stream.tvkstella.pl/stella/stella.m3u8$LR•IPV4•3『线路3』 #EXTINF:-1 tvg-id="UK" tvg-name="UK" group-title="•杂货",UK -http://nocable.cc:8080//OURTV/OURTV@4806/35241$LR•IPV4•52『线路1』 +https://moviesphereuk-samsunguk.amagi.tv/playlist.m3u8$LR•IPV4•52『线路1』 #EXTINF:-1 tvg-id="UK" tvg-name="UK" group-title="•杂货",UK -http://nocable.cc:8080//OURTV/OURTV@4806/35244$LR•IPV4•52『线路2』 +https://0145451975a64b35866170fd2e8fa486.mediatailor.eu-west-1.amazonaws.com/v1/master/0547f18649bd788bec7b67b746e47670f558b6b2/production-LiveChannel-5987/master.m3u8$LR•IPV4•52『线路2』 #EXTINF:-1 tvg-id="UK" tvg-name="UK" group-title="•杂货",UK -http://ua-iptv.com:8080//zerubassman@yahoo.com/2MR879Z9PL/1001373$LR•IPV4•52『线路3』 +https://54045f0c40fd442c8b06df076aaf1e85.mediatailor.eu-west-1.amazonaws.com/v1/master/0547f18649bd788bec7b67b746e47670f558b6b2/production-LiveChannel-6065/master.m3u8$LR•IPV4•52『线路3』 #EXTINF:-1 tvg-id="UK" tvg-name="UK" group-title="•杂货",UK -http://nocable.cc:8080//OURTV/OURTV@4806/35240$LR•IPV4•52『线路4』 +https://9be783d652cd4b099cf63e1dc134c4a3.mediatailor.eu-west-1.amazonaws.com/v1/master/0547f18649bd788bec7b67b746e47670f558b6b2/production-LiveChannel-6181/master.m3u8$LR•IPV4•52『线路4』 #EXTINF:-1 tvg-id="UK" tvg-name="UK" group-title="•杂货",UK -http://nocable.cc:8080//OURTV/OURTV@4806/137720$LR•IPV4•52『线路5』 +https://fee09fd665814f51b939b6d106cf5f66.mediatailor.eu-west-1.amazonaws.com/v1/master/0547f18649bd788bec7b67b746e47670f558b6b2/production-LiveChannel-6093/master.m3u8$LR•IPV4•52『线路5』 #EXTINF:-1 tvg-id="UK" tvg-name="UK" group-title="•杂货",UK -http://ua-iptv.com:8080//zerubassman@yahoo.com/2MR879Z9PL/1001376$LR•IPV4•52『线路6』 +http://41.223.30.230/ZEECINEMA/index.m3u8$LR•IPV4•52『线路6』 #EXTINF:-1 tvg-id="UK" tvg-name="UK" group-title="•杂货",UK -http://ua-iptv.com:8080//zerubassman@yahoo.com/2MR879Z9PL/1001378$LR•IPV4•52『线路7』 +https://app.ncare.live/c3VydmVyX8RpbEU9Mi8xNy8yMDE0GIDU6RgzQ6NTAgdEoaeFzbF92YWxIZTO0U0ezN1IzMyfvcGVMZEJCTEFWeVN3PTOmdFsaWRtaW51aiPhnPTI2/atnbanglauk-off.stream/playlist.m3u8$LR•IPV4•52『线路7』 #EXTINF:-1 tvg-id="UK" tvg-name="UK" group-title="•杂货",UK -http://ua-iptv.com:8080//zerubassman@yahoo.com/2MR879Z9PL/1001379$LR•IPV4•52『线路8』 +https://qvcuk-live.akamaized.net/hls/live/2097112/qvc/master.m3u8$LR•IPV4•52『线路8』 #EXTINF:-1 tvg-id="UK" tvg-name="UK" group-title="•杂货",UK -http://nocable.cc:8080//OURTV/OURTV@4806/53705$LR•IPV4•52『线路9』 +https://qvcuk-live.akamaized.net/hls/live/2097112/qby/master.m3u8$LR•IPV4•52『线路9』 #EXTINF:-1 tvg-id="UK" tvg-name="UK" group-title="•杂货",UK -http://nocable.cc:8080//OURTV/OURTV@4806/35238$LR•IPV4•52『线路10』 +https://qvcuk-live.akamaized.net/hls/live/2097112/qex/master.m3u8$LR•IPV4•52『线路10』 #EXTINF:-1 tvg-id="UK" tvg-name="UK" group-title="•杂货",UK -http://nocable.cc:8080//OURTV/OURTV@4806/53663$LR•IPV4•52『线路11』 +https://qvcuk-live.akamaized.net/hls/live/2097112/qst/master.m3u8$LR•IPV4•52『线路11』 #EXTINF:-1 tvg-id="UK" tvg-name="UK" group-title="•杂货",UK -http://nocable.cc:8080//OURTV/OURTV@4806/45940$LR•IPV4•52『线路12』 +http://45.153.96.44:8001$LR•IPV4•52『线路12』 #EXTINF:-1 tvg-id="UK" tvg-name="UK" group-title="•杂货",UK -http://vocotv.pro//revol/revol/276918$LR•IPV4•52『线路13』 +https://mini.allinonereborn.fun/tata.php?id=11783$LR•IPV4•52『线路13』 #EXTINF:-1 tvg-id="UK" tvg-name="UK" group-title="•杂货",UK -http://vocotv.pro//revol/revol/276924$LR•IPV4•52『线路14』 +https://cdn3.wowza.com/5/L1Uzd2FrbVlLRG1W/live/smil:lwukweb.smil/playlist.m3u8$LR•IPV4•52『线路14』 #EXTINF:-1 tvg-id="UK" tvg-name="UK" group-title="•杂货",UK -http://vocotv.pro//revol/revol/276906$LR•IPV4•52『线路15』 +https://d34z4embz0hjf6.cloudfront.net/out/v1/7ac2789ff9a544a49337d1ffc54ce61c/index.m3u8$LR•IPV4•52『线路15』 #EXTINF:-1 tvg-id="UK" tvg-name="UK" group-title="•杂货",UK -https://moviesphereuk-samsunguk.amagi.tv/playlist.m3u8$LR•IPV4•52『线路16』 +https://jmp2.uk/plu-638e10de75c3a30007092693.m3u8$LR•IPV4•52『线路16』 #EXTINF:-1 tvg-id="UK" tvg-name="UK" group-title="•杂货",UK -https://0145451975a64b35866170fd2e8fa486.mediatailor.eu-west-1.amazonaws.com/v1/master/0547f18649bd788bec7b67b746e47670f558b6b2/production-LiveChannel-5987/master.m3u8$LR•IPV4•52『线路17』 +https://jmp2.uk/plu-62bed7cb3279cb0007735327.m3u8$LR•IPV4•52『线路17』 #EXTINF:-1 tvg-id="UK" tvg-name="UK" group-title="•杂货",UK -https://54045f0c40fd442c8b06df076aaf1e85.mediatailor.eu-west-1.amazonaws.com/v1/master/0547f18649bd788bec7b67b746e47670f558b6b2/production-LiveChannel-6065/master.m3u8$LR•IPV4•52『线路18』 +https://d1nn4ic5ci0eid.cloudfront.net/MasterchefUKPoweredbyBanijay_GB.m3u8$LR•IPV4•52『线路18』 #EXTINF:-1 tvg-id="UK" tvg-name="UK" group-title="•杂货",UK -https://9be783d652cd4b099cf63e1dc134c4a3.mediatailor.eu-west-1.amazonaws.com/v1/master/0547f18649bd788bec7b67b746e47670f558b6b2/production-LiveChannel-6181/master.m3u8$LR•IPV4•52『线路19』 +https://dvqpty1sb3rry.cloudfront.net/PointlessUKPoweredbyBanijay_GB.m3u8$LR•IPV4•52『线路19』 #EXTINF:-1 tvg-id="UK" tvg-name="UK" group-title="•杂货",UK -https://fee09fd665814f51b939b6d106cf5f66.mediatailor.eu-west-1.amazonaws.com/v1/master/0547f18649bd788bec7b67b746e47670f558b6b2/production-LiveChannel-6093/master.m3u8$LR•IPV4•52『线路20』 +https://68f6dfd1f2bd415b9c42f1d383004b69.mediatailor.eu-west-1.amazonaws.com/v1/master/0547f18649bd788bec7b67b746e47670f558b6b2/production-LiveChannel-6233/master.m3u8$LR•IPV4•52『线路20』 #EXTINF:-1 tvg-id="UK" tvg-name="UK" group-title="•杂货",UK -http://41.223.30.230/ZEECINEMA/index.m3u8$LR•IPV4•52『线路21』 +https://2c88ed8c4df9479aa0c7138dc42115e2.mediatailor.eu-west-1.amazonaws.com/v1/master/0547f18649bd788bec7b67b746e47670f558b6b2/production-LiveChannel-6194/master.m3u8$LR•IPV4•52『线路21』 #EXTINF:-1 tvg-id="UK" tvg-name="UK" group-title="•杂货",UK -https://app.ncare.live/c3VydmVyX8RpbEU9Mi8xNy8yMDE0GIDU6RgzQ6NTAgdEoaeFzbF92YWxIZTO0U0ezN1IzMyfvcGVMZEJCTEFWeVN3PTOmdFsaWRtaW51aiPhnPTI2/atnbanglauk-off.stream/playlist.m3u8$LR•IPV4•52『线路22』 +https://sci-fi-rakuten-tv-uk.fast.rakuten.tv/v1/master/0547f18649bd788bec7b67b746e47670f558b6b2/production-LiveChannel-6241/master.m3u8$LR•IPV4•52『线路22』 #EXTINF:-1 tvg-id="UK" tvg-name="UK" group-title="•杂货",UK -https://qvcuk-live.akamaized.net/hls/live/2097112/qvc/master.m3u8$LR•IPV4•52『线路23』 +https://thriller-rakuten-tv-uk.fast.rakuten.tv/v1/master/0547f18649bd788bec7b67b746e47670f558b6b2/production-LiveChannel-6482/master.m3u8$LR•IPV4•52『线路23』 #EXTINF:-1 tvg-id="UK" tvg-name="UK" group-title="•杂货",UK -https://qvcuk-live.akamaized.net/hls/live/2097112/qby/master.m3u8$LR•IPV4•52『线路24』 +https://live-tbn-ssai.simplestreamcdn.com/v1/master/774d979dd66704abea7c5b62cb34c6815fda0d35/tbn-live/manifest.m3u8$LR•IPV4•52『线路24』 #EXTINF:-1 tvg-id="UK" tvg-name="UK" group-title="•杂货",UK -https://qvcuk-live.akamaized.net/hls/live/2097112/qex/master.m3u8$LR•IPV4•52『线路25』 +https://amg01131-tracetv-amg01131c5-stirr-us-4389.playouts.now.amagi.tv/playlist.m3u8$LR•IPV4•52『线路25』 #EXTINF:-1 tvg-id="UK" tvg-name="UK" group-title="•杂货",UK -https://qvcuk-live.akamaized.net/hls/live/2097112/qst/master.m3u8$LR•IPV4•52『线路26』 +https://d2n3779oy6efpi.cloudfront.net/playlist.m3u8$LR•IPV4•52『线路26』 #EXTINF:-1 tvg-id="UK" tvg-name="UK" group-title="•杂货",UK -http://45.153.96.44:8001$LR•IPV4•52『线路27』 +https://channels.trace.plus/Traceprod/UK_FAST_hd/index.m3u8$LR•IPV4•52『线路27』 #EXTINF:-1 tvg-id="UK" tvg-name="UK" group-title="•杂货",UK -https://mini.allinonereborn.fun/tata.php?id=11783$LR•IPV4•52『线路28』 +https://hls.vantagetv.co.uk/vmusicuk_stream/index.m3u8$LR•IPV4•52『线路28』 #EXTINF:-1 tvg-id="UK" tvg-name="UK" group-title="•杂货",UK -https://cdn3.wowza.com/5/L1Uzd2FrbVlLRG1W/live/smil:lwukweb.smil/playlist.m3u8$LR•IPV4•52『线路29』 +https://amg01243-xitenetworksint-hitsuk-samsunguk-mvovq.amagi.tv/playlist/amg01243-xitenetworksint-hitsuk-samsunguk/playlist.m3u8$LR•IPV4•52『线路29』 #EXTINF:-1 tvg-id="UK" tvg-name="UK" group-title="•杂货",UK -https://d34z4embz0hjf6.cloudfront.net/out/v1/7ac2789ff9a544a49337d1ffc54ce61c/index.m3u8$LR•IPV4•52『线路30』 +https://bbc-antiquesroadshowuk-1-us.roku.wurl.tv/playlist.m3u8$LR•IPV4•52『线路30』 #EXTINF:-1 tvg-id="UK" tvg-name="UK" group-title="•杂货",UK -https://jmp2.uk/plu-638e10de75c3a30007092693.m3u8$LR•IPV4•52『线路31』 +https://jmp2.uk/plu-692edc78d52ea9e4858cf78f.m3u8$LR•IPV4•52『线路31』 #EXTINF:-1 tvg-id="UK" tvg-name="UK" group-title="•杂货",UK -https://jmp2.uk/plu-62bed7cb3279cb0007735327.m3u8$LR•IPV4•52『线路32』 +https://jmp2.uk/plu-692edcff77f0147d69f19498.m3u8$LR•IPV4•52『线路32』 #EXTINF:-1 tvg-id="UK" tvg-name="UK" group-title="•杂货",UK -https://d1nn4ic5ci0eid.cloudfront.net/MasterchefUKPoweredbyBanijay_GB.m3u8$LR•IPV4•52『线路33』 +https://jmp2.uk/plu-692edd6bdb8695f63e14f3b9.m3u8$LR•IPV4•52『线路33』 #EXTINF:-1 tvg-id="UK" tvg-name="UK" group-title="•杂货",UK -https://dvqpty1sb3rry.cloudfront.net/PointlessUKPoweredbyBanijay_GB.m3u8$LR•IPV4•52『线路34』 +https://b6cca454.wurl.com/master/f36d25e7e52f1ba8d7e56eb859c636563214f541/U2Ftc3VuZy1nYl9UcnVlQ3JpbWVVS2Zyb21DQlNSZWFsaXR5X0hMUw/playlist.m3u8$LR•IPV4•52『线路34』 #EXTINF:-1 tvg-id="UK" tvg-name="UK" group-title="•杂货",UK -https://68f6dfd1f2bd415b9c42f1d383004b69.mediatailor.eu-west-1.amazonaws.com/v1/master/0547f18649bd788bec7b67b746e47670f558b6b2/production-LiveChannel-6233/master.m3u8$LR•IPV4•52『线路35』 +https://ntd02.akamaized.net/NTD-UK/index.m3u8$LR•IPV4•52『线路35』 #EXTINF:-1 tvg-id="UK" tvg-name="UK" group-title="•杂货",UK -https://2c88ed8c4df9479aa0c7138dc42115e2.mediatailor.eu-west-1.amazonaws.com/v1/master/0547f18649bd788bec7b67b746e47670f558b6b2/production-LiveChannel-6194/master.m3u8$LR•IPV4•52『线路36』 +https://e3207568b726401995c25670faaf32e4.mediatailor.eu-west-1.amazonaws.com/v1/master/0547f18649bd788bec7b67b746e47670f558b6b2/production-LiveChannel-6203/master.m3u8$LR•IPV4•52『线路36』 #EXTINF:-1 tvg-id="UK" tvg-name="UK" group-title="•杂货",UK -https://sci-fi-rakuten-tv-uk.fast.rakuten.tv/v1/master/0547f18649bd788bec7b67b746e47670f558b6b2/production-LiveChannel-6241/master.m3u8$LR•IPV4•52『线路37』 +https://1a3566cb46914c5499fbc86fbc4ac87e.mediatailor.us-west-2.amazonaws.com/v1/master/ba62fe743df0fe93366eba3a257d792884136c7f/LINEAR-932-WORBUKENFAST-WHALETVPLUS/932/whaletvplus/hls/master/playlist.m3u8$LR•IPV4•52『线路37』 #EXTINF:-1 tvg-id="UK" tvg-name="UK" group-title="•杂货",UK -https://thriller-rakuten-tv-uk.fast.rakuten.tv/v1/master/0547f18649bd788bec7b67b746e47670f558b6b2/production-LiveChannel-6482/master.m3u8$LR•IPV4•52『线路38』 +http://nocable.cc:8080//OURTV/OURTV@4806/35241$LR•IPV4•52『线路38』 #EXTINF:-1 tvg-id="UK" tvg-name="UK" group-title="•杂货",UK -https://live-tbn-ssai.simplestreamcdn.com/v1/master/774d979dd66704abea7c5b62cb34c6815fda0d35/tbn-live/manifest.m3u8$LR•IPV4•52『线路39』 +http://nocable.cc:8080//OURTV/OURTV@4806/35244$LR•IPV4•52『线路39』 #EXTINF:-1 tvg-id="UK" tvg-name="UK" group-title="•杂货",UK -https://amg01131-tracetv-amg01131c5-stirr-us-4389.playouts.now.amagi.tv/playlist.m3u8$LR•IPV4•52『线路40』 +http://ua-iptv.com:8080//zerubassman@yahoo.com/2MR879Z9PL/1001373$LR•IPV4•52『线路40』 #EXTINF:-1 tvg-id="UK" tvg-name="UK" group-title="•杂货",UK -https://d2n3779oy6efpi.cloudfront.net/playlist.m3u8$LR•IPV4•52『线路41』 +http://nocable.cc:8080//OURTV/OURTV@4806/35240$LR•IPV4•52『线路41』 #EXTINF:-1 tvg-id="UK" tvg-name="UK" group-title="•杂货",UK -https://channels.trace.plus/Traceprod/UK_FAST_hd/index.m3u8$LR•IPV4•52『线路42』 +http://nocable.cc:8080//OURTV/OURTV@4806/137720$LR•IPV4•52『线路42』 #EXTINF:-1 tvg-id="UK" tvg-name="UK" group-title="•杂货",UK -https://hls.vantagetv.co.uk/vmusicuk_stream/index.m3u8$LR•IPV4•52『线路43』 +http://ua-iptv.com:8080//zerubassman@yahoo.com/2MR879Z9PL/1001376$LR•IPV4•52『线路43』 #EXTINF:-1 tvg-id="UK" tvg-name="UK" group-title="•杂货",UK -https://amg01243-xitenetworksint-hitsuk-samsunguk-mvovq.amagi.tv/playlist/amg01243-xitenetworksint-hitsuk-samsunguk/playlist.m3u8$LR•IPV4•52『线路44』 +http://ua-iptv.com:8080//zerubassman@yahoo.com/2MR879Z9PL/1001378$LR•IPV4•52『线路44』 #EXTINF:-1 tvg-id="UK" tvg-name="UK" group-title="•杂货",UK -https://bbc-antiquesroadshowuk-1-us.roku.wurl.tv/playlist.m3u8$LR•IPV4•52『线路45』 +http://ua-iptv.com:8080//zerubassman@yahoo.com/2MR879Z9PL/1001379$LR•IPV4•52『线路45』 #EXTINF:-1 tvg-id="UK" tvg-name="UK" group-title="•杂货",UK -https://jmp2.uk/plu-692edc78d52ea9e4858cf78f.m3u8$LR•IPV4•52『线路46』 +http://nocable.cc:8080//OURTV/OURTV@4806/53705$LR•IPV4•52『线路46』 #EXTINF:-1 tvg-id="UK" tvg-name="UK" group-title="•杂货",UK -https://jmp2.uk/plu-692edcff77f0147d69f19498.m3u8$LR•IPV4•52『线路47』 +http://nocable.cc:8080//OURTV/OURTV@4806/35238$LR•IPV4•52『线路47』 #EXTINF:-1 tvg-id="UK" tvg-name="UK" group-title="•杂货",UK -https://jmp2.uk/plu-692edd6bdb8695f63e14f3b9.m3u8$LR•IPV4•52『线路48』 +http://nocable.cc:8080//OURTV/OURTV@4806/53663$LR•IPV4•52『线路48』 #EXTINF:-1 tvg-id="UK" tvg-name="UK" group-title="•杂货",UK -https://b6cca454.wurl.com/master/f36d25e7e52f1ba8d7e56eb859c636563214f541/U2Ftc3VuZy1nYl9UcnVlQ3JpbWVVS2Zyb21DQlNSZWFsaXR5X0hMUw/playlist.m3u8$LR•IPV4•52『线路49』 +http://nocable.cc:8080//OURTV/OURTV@4806/45940$LR•IPV4•52『线路49』 #EXTINF:-1 tvg-id="UK" tvg-name="UK" group-title="•杂货",UK -https://ntd02.akamaized.net/NTD-UK/index.m3u8$LR•IPV4•52『线路50』 +http://vocotv.pro//revol/revol/276918$LR•IPV4•52『线路50』 #EXTINF:-1 tvg-id="UK" tvg-name="UK" group-title="•杂货",UK -https://e3207568b726401995c25670faaf32e4.mediatailor.eu-west-1.amazonaws.com/v1/master/0547f18649bd788bec7b67b746e47670f558b6b2/production-LiveChannel-6203/master.m3u8$LR•IPV4•52『线路51』 +http://vocotv.pro//revol/revol/276924$LR•IPV4•52『线路51』 #EXTINF:-1 tvg-id="UK" tvg-name="UK" group-title="•杂货",UK -https://1a3566cb46914c5499fbc86fbc4ac87e.mediatailor.us-west-2.amazonaws.com/v1/master/ba62fe743df0fe93366eba3a257d792884136c7f/LINEAR-932-WORBUKENFAST-WHALETVPLUS/932/whaletvplus/hls/master/playlist.m3u8$LR•IPV4•52『线路52』 +http://vocotv.pro//revol/revol/276906$LR•IPV4•52『线路52』 #EXTINF:-1 tvg-id="US" tvg-name="US" group-title="•杂货",US -p3p://167.114.175.6:55331/63efe07e000c1db2f23eb46a4e00518a$LR•IPV4•17『线路1』 +http://138.121.15.230:9002/DEPELICULA/index.m3u8$LR•IPV4•17『线路1』 #EXTINF:-1 tvg-id="US" tvg-name="US" group-title="•杂货",US -p3p://167.114.175.6:55331/63efe0de000858baf2402a646c573e1b$LR•IPV4•17『线路2』 +https://amg17233-amg17233c1-wisptv-us-6409.playouts.now.amagi.tv/playlist.m3u8$LR•IPV4•17『线路2』 #EXTINF:-1 tvg-id="US" tvg-name="US" group-title="•杂货",US -p3p://167.114.175.6:55331/63efe252000a7658f245d81113e44b34$LR•IPV4•17『线路3』 +https://jmp2.uk/plu-6304f20c941c5d00089634e7.m3u8$LR•IPV4•17『线路3』 #EXTINF:-1 tvg-id="US" tvg-name="US" group-title="•杂货",US -p3p://167.114.175.6:55331/63efe2e2000d23b5f2480b4125294b9a$LR•IPV4•17『线路4』 +https://jmp2.uk/plu-63988b61c8d285000798a22a.m3u8$LR•IPV4•17『线路4』 #EXTINF:-1 tvg-id="US" tvg-name="US" group-title="•杂货",US -http://138.121.15.230:9002/DEPELICULA/index.m3u8$LR•IPV4•17『线路5』 +http://206.212.244.63/641/index.m3u8$LR•IPV4•17『线路5』 #EXTINF:-1 tvg-id="US" tvg-name="US" group-title="•杂货",US -https://amg17233-amg17233c1-wisptv-us-6409.playouts.now.amagi.tv/playlist.m3u8$LR•IPV4•17『线路6』 +https://janus.xpbroadcasting.com:8443/hls/xptvUS.m3u8$LR•IPV4•17『线路6』 #EXTINF:-1 tvg-id="US" tvg-name="US" group-title="•杂货",US -https://jmp2.uk/plu-6304f20c941c5d00089634e7.m3u8$LR•IPV4•17『线路7』 +https://bloomberg.com/media-manifest/streams/us-event.m3u8$LR•IPV4•17『线路7』 #EXTINF:-1 tvg-id="US" tvg-name="US" group-title="•杂货",US -https://jmp2.uk/plu-63988b61c8d285000798a22a.m3u8$LR•IPV4•17『线路8』 +https://bloomberg.com/media-manifest/streams/politics.m3u8$LR•IPV4•17『线路8』 #EXTINF:-1 tvg-id="US" tvg-name="US" group-title="•杂货",US -http://206.212.244.63/641/index.m3u8$LR•IPV4•17『线路9』 +https://0b73ace69ebb45eaa249bb87837cb958.mediatailor.us-west-2.amazonaws.com/v1/master/ba62fe743df0fe93366eba3a257d792884136c7f/LINEAR-644-WORBUSENFAST-LG_US/644/lgtv/hls/master/playlist.m3u8$LR•IPV4•17『线路9』 #EXTINF:-1 tvg-id="US" tvg-name="US" group-title="•杂货",US -https://janus.xpbroadcasting.com:8443/hls/xptvUS.m3u8$LR•IPV4•17『线路10』 +p3p://167.114.175.6:55331/63efe07e000c1db2f23eb46a4e00518a$LR•IPV4•17『线路10』 #EXTINF:-1 tvg-id="US" tvg-name="US" group-title="•杂货",US -https://bloomberg.com/media-manifest/streams/us-event.m3u8$LR•IPV4•17『线路11』 +p3p://167.114.175.6:55331/63efe0de000858baf2402a646c573e1b$LR•IPV4•17『线路11』 #EXTINF:-1 tvg-id="US" tvg-name="US" group-title="•杂货",US -https://bloomberg.com/media-manifest/streams/politics.m3u8$LR•IPV4•17『线路12』 +p3p://167.114.175.6:55331/63efe252000a7658f245d81113e44b34$LR•IPV4•17『线路12』 #EXTINF:-1 tvg-id="US" tvg-name="US" group-title="•杂货",US -https://0b73ace69ebb45eaa249bb87837cb958.mediatailor.us-west-2.amazonaws.com/v1/master/ba62fe743df0fe93366eba3a257d792884136c7f/LINEAR-644-WORBUSENFAST-LG_US/644/lgtv/hls/master/playlist.m3u8$LR•IPV4•17『线路13』 +p3p://167.114.175.6:55331/63efe2e2000d23b5f2480b4125294b9a$LR•IPV4•17『线路13』 #EXTINF:-1 tvg-id="US" tvg-name="US" group-title="•杂货",US https://amg01942-amg01942c5-stirr-us-10184.playouts.now.amagi.tv/playlist.m3u8$LR•IPV4•17『线路14』 #EXTINF:-1 tvg-id="US" tvg-name="US" group-title="•杂货",US @@ -1756,25 +1736,25 @@ https://gcwbndali.v.myalicdn.com/gcwbnd/ipanda1000_2/index.m3u8$LR•IPV4 #EXTINF:-1 tvg-id="钱塘江" tvg-name="钱塘江" group-title="💓专享源🅰️",钱塘江 http://gslbmgsplive.miguvideo.com/wd_r3/cnr/qiantangjiang/2000/index.m3u8?msisdn=20250923080124d2a289d7e8424ddd9ea0d2d29a9e0744&mdspid=&spid=800033&netType=0&sid=5500613479&pid=2028597139×tamp=20250923080124&Channel_ID=0116_2600000900-99000-201600010010027&ProgramID=647370520&ParentNodeID=-99&assertID=5500613479&client_ip=106.13.250.83&SecurityKey=20250923080124&promotionId=&mvid=5102115888&mcid=500020&playurlVersion=WX-A1-8.9.1-RELEASE&userid=&jmhm=&videocodec=h264&bean=mgspad&tid=android&conFee=0&puData=a4be52553a643d1013946a49db1f0e09&ddCalcu=9a04eeb20e7f5012b5d5934aa664439d3110$LR•IPV4 #EXTINF:-1 tvg-id="HBO" tvg-name="HBO" group-title="💓专享源🅰️",HBO -http://23.237.104.106:8080/USA_HBO/index.m3u8$LR•IPV4•10『线路1』 +https://live-manifest.production-public.tubi.io/live/9fe78734-1db2-49b4-af7b-3c89f5f256ad/playlist.m3u8$LR•IPV4•10『线路1』 #EXTINF:-1 tvg-id="HBO" tvg-name="HBO" group-title="💓专享源🅰️",HBO -http://23.237.104.106:8080/USA_HBO2/index.m3u8$LR•IPV4•10『线路2』 +http://23.237.104.106:8080/USA_HBO/index.m3u8$LR•IPV4•10『线路2』 #EXTINF:-1 tvg-id="HBO" tvg-name="HBO" group-title="💓专享源🅰️",HBO -p3p://167.114.175.6:55331/66d22f6b0001f87c739b69c977f063dd$LR•IPV4•10『线路3』 +http://23.237.104.106:8080/USA_HBO2/index.m3u8$LR•IPV4•10『线路3』 #EXTINF:-1 tvg-id="HBO" tvg-name="HBO" group-title="💓专享源🅰️",HBO -p3p://167.114.175.6:55331/623a6e38000091d497395ce957b27132$LR•IPV4•10『线路4』 +p3p://167.114.175.6:55331/66d22f6b0001f87c739b69c977f063dd$LR•IPV4•10『线路4』 #EXTINF:-1 tvg-id="HBO" tvg-name="HBO" group-title="💓专享源🅰️",HBO -p3p://167.114.175.6:55331/623a706d0003edf59741fcc023dc0089$LR•IPV4•10『线路5』 +p3p://167.114.175.6:55331/623a6e38000091d497395ce957b27132$LR•IPV4•10『线路5』 #EXTINF:-1 tvg-id="HBO" tvg-name="HBO" group-title="💓专享源🅰️",HBO -p3p://167.114.175.6:55331/623a700000069676974053b555b700d4$LR•IPV4•10『线路6』 +p3p://167.114.175.6:55331/623a706d0003edf59741fcc023dc0089$LR•IPV4•10『线路6』 #EXTINF:-1 tvg-id="HBO" tvg-name="HBO" group-title="💓专享源🅰️",HBO -p3p://167.114.175.6:55331/64e364fb000a0212a977a1cd342976da$LR•IPV4•10『线路7』 +p3p://167.114.175.6:55331/623a700000069676974053b555b700d4$LR•IPV4•10『线路7』 #EXTINF:-1 tvg-id="HBO" tvg-name="HBO" group-title="💓专享源🅰️",HBO -p3p://167.114.175.6:55331/65d07877000b028d4787830a723c4ce7$LR•IPV4•10『线路8』 +p3p://167.114.175.6:55331/64e364fb000a0212a977a1cd342976da$LR•IPV4•10『线路8』 #EXTINF:-1 tvg-id="HBO" tvg-name="HBO" group-title="💓专享源🅰️",HBO -http://125.227.210.55:8153/VideoInput/play.ts$LR•IPV4•10『线路9』 +p3p://167.114.175.6:55331/65d07877000b028d4787830a723c4ce7$LR•IPV4•10『线路9』 #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•10『线路10』 +http://125.227.210.55:8153/VideoInput/play.ts$LR•IPV4•10『线路10』 #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 @@ -2042,97 +2022,97 @@ http://50.7.234.10:8278/zhongshihd_twn/playlist.m3u8?ct=19226&tid=MB8B7313326473 #EXTINF:-1 tvg-id="生命电视" tvg-name="生命电视" group-title="💓台湾台📶",生命电视 http://61.216.67.119:1935/lifetv/lifetv.stream/manifest.m3u8$LR•IPV4 #EXTINF:-1 tvg-id="HISTORY" tvg-name="HISTORY" group-title="💓台湾台📶",HISTORY -https://cdn-ue1-prod.tsv2.amagi.tv/linear/ldsAAAAAA-timeline-samsungau/playlist.m3u8$LR•IPV4•46『线路1』 +https://d3181anftsyl2u.cloudfront.net/v1/aenetworks_alone_1/samsungheadend_us/latest/main/hls/playlist.m3u8$LR•IPV4•46『线路1』 #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』 +https://pb-k9ikw6ov8z4qi.akamaized.net/American_Pickers_by_History.m3u8$LR•IPV4•46『线路2』 #EXTINF:-1 tvg-id="HISTORY" tvg-name="HISTORY" group-title="💓台湾台📶",HISTORY -http://37.27.111.214:8080/live/27/hls.m3u8$LR•IPV4•46『线路3』 +https://jmp2.uk/plu-62fb9844db5a4a0007ebc2a3.m3u8$LR•IPV4•46『线路3』 #EXTINF:-1 tvg-id="HISTORY" tvg-name="HISTORY" group-title="💓台湾台📶",HISTORY -http://free.cnlive.club/channel/n20a85c83/index.m3u8?q=1752629214236$LR•IPV4•46『线路4』 +https://pb-162j8hrspp1iq.akamaized.net/History_365.m3u8$LR•IPV4•46『线路4』 #EXTINF:-1 tvg-id="HISTORY" tvg-name="HISTORY" group-title="💓台湾台📶",HISTORY -p3p://167.114.175.6:55331/6233e1a30007e08d7da4ab21717b3e79$LR•IPV4•46『线路5』 +https://jmp2.uk/plu-69dd5d7bfcb9bf5e3063cb16.m3u8$LR•IPV4•46『线路5』 #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『线路6』 +https://d1nzda2a2b3swt.cloudfront.net/History_Warfare_Now.m3u8$LR•IPV4•46『线路6』 #EXTINF:-1 tvg-id="HISTORY" tvg-name="HISTORY" group-title="💓台湾台📶",HISTORY -https://pb-k9ikw6ov8z4qi.akamaized.net/American_Pickers_by_History.m3u8$LR•IPV4•46『线路7』 +https://d28gzbv9fhdm3h.cloudfront.net/playlist/amg00376-magellantv-historyandwarfarenowaunzin-samsungau/playlist.m3u8$LR•IPV4•46『线路7』 #EXTINF:-1 tvg-id="HISTORY" tvg-name="HISTORY" group-title="💓台湾台📶",HISTORY -https://jmp2.uk/plu-62fb9844db5a4a0007ebc2a3.m3u8$LR•IPV4•46『线路8』 +https://amg00376-magellan-amg00376c19-samsung-nz-1735.playouts.now.amagi.tv/playlist/amg00376-magellantv-historyandwarfarenowaunzin-samsungnz/playlist.m3u8$LR•IPV4•46『线路8』 #EXTINF:-1 tvg-id="HISTORY" tvg-name="HISTORY" group-title="💓台湾台📶",HISTORY -https://pb-162j8hrspp1iq.akamaized.net/History_365.m3u8$LR•IPV4•46『线路9』 +https://amg00841-amg00841c7-rakuten-uk-2820.playouts.now.amagi.tv/playlist/amg00841-aeemeafast-historyhuntersrakuten-rakutenuk/playlist.m3u8$LR•IPV4•46『线路9』 #EXTINF:-1 tvg-id="HISTORY" tvg-name="HISTORY" group-title="💓台湾台📶",HISTORY -https://jmp2.uk/plu-69dd5d7bfcb9bf5e3063cb16.m3u8$LR•IPV4•46『线路10』 +https://amg00841-amg00841c9-samsung-gb-3032.playouts.now.amagi.tv/playlist/amg00841-aeemeafast-historyhunterssamsung-samsunggb/playlist.m3u8$LR•IPV4•46『线路10』 #EXTINF:-1 tvg-id="HISTORY" tvg-name="HISTORY" group-title="💓台湾台📶",HISTORY -https://d1nzda2a2b3swt.cloudfront.net/History_Warfare_Now.m3u8$LR•IPV4•46『线路11』 +https://jmp2.uk/plu-65819fc1b9adc4000813f37d.m3u8$LR•IPV4•46『线路11』 #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『线路12』 +https://jmp2.uk/plu-65775d29dfed030008cb3db2.m3u8$LR•IPV4•46『线路12』 #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『线路13』 +https://pb-m89wlp8flmjzf.akamaized.net/v1/aenetworks_modernmarvels_1/samsungheadend_us/latest/main/hls/playlist.m3u8$LR•IPV4•46『线路13』 #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『线路14』 +https://amg02333-pbs-amg02333c1-samsung-au-1253.playouts.now.amagi.tv/playlist/amg02333-pbsdistributionfast-pbshistory-samsungau/playlist.m3u8$LR•IPV4•46『线路14』 #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『线路15』 +https://amg02333-pbs-amg02333c1-samsung-nz-1254.playouts.now.amagi.tv/playlist/amg02333-pbsdistributionfast-pbshistory-samsungnz/playlist.m3u8$LR•IPV4•46『线路15』 #EXTINF:-1 tvg-id="HISTORY" tvg-name="HISTORY" group-title="💓台湾台📶",HISTORY -https://jmp2.uk/plu-65819fc1b9adc4000813f37d.m3u8$LR•IPV4•46『线路16』 +https://linear-188.frequency.stream/dist/glewedtv/188/hls/master/playlist.m3u8$LR•IPV4•46『线路16』 #EXTINF:-1 tvg-id="HISTORY" tvg-name="HISTORY" group-title="💓台湾台📶",HISTORY -https://jmp2.uk/plu-65775d29dfed030008cb3db2.m3u8$LR•IPV4•46『线路17』 +https://linear-188.frequency.stream/dist/xumo/188/hls/master/playlist.m3u8$LR•IPV4•46『线路17』 #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『线路18』 +https://jmp2.uk/plu-6000a6f4c3f8550008fc9b91.m3u8$LR•IPV4•46『线路18』 #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『线路19』 +https://dxagbr7yc4m1d.cloudfront.net/v1/aenetworks_skills_thrills_1/samsungheadend_us/latest/main/hls/playlist.m3u8$LR•IPV4•46『线路19』 #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『线路20』 +https://rpn.bozztv.com/gusa/gusa-tvshollywoohistory/index.m3u8$LR•IPV4•46『线路20』 #EXTINF:-1 tvg-id="HISTORY" tvg-name="HISTORY" group-title="💓台湾台📶",HISTORY -https://linear-188.frequency.stream/dist/glewedtv/188/hls/master/playlist.m3u8$LR•IPV4•46『线路21』 +https://9e754fa707344ccca6d84955c8fcaf36.mediatailor.us-east-1.amazonaws.com/v1/master/44f73ba4d03e9607dcd9bebdcb8494d86964f1d8/RlaxxTV-eu_AutenticHistory/playlist.m3u8$LR•IPV4•46『线路21』 #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『线路22』 +http://213.91.179.28:8000/play/a0c1$LR•IPV4•46『线路22』 #EXTINF:-1 tvg-id="HISTORY" tvg-name="HISTORY" group-title="💓台湾台📶",HISTORY -https://jmp2.uk/plu-6000a6f4c3f8550008fc9b91.m3u8$LR•IPV4•46『线路23』 +http://45.190.28.50/HISTORY_HD/index.m3u8$LR•IPV4•46『线路23』 #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『线路24』 +http://88.212.15.19/live/test_history/playlist.m3u8$LR•IPV4•46『线路24』 #EXTINF:-1 tvg-id="HISTORY" tvg-name="HISTORY" group-title="💓台湾台📶",HISTORY -https://rpn.bozztv.com/gusa/gusa-tvshollywoohistory/index.m3u8$LR•IPV4•46『线路25』 +http://82.78.243.219:45739/play/a01f/index.m3u8$LR•IPV4•46『线路25』 #EXTINF:-1 tvg-id="HISTORY" tvg-name="HISTORY" group-title="💓台湾台📶",HISTORY -http://213.91.179.28:8000/play/a0c1$LR•IPV4•46『线路26』 +http://40.160.24.53/HISTORY_CHANNEL/index.m3u8$LR•IPV4•46『线路26』 #EXTINF:-1 tvg-id="HISTORY" tvg-name="HISTORY" group-title="💓台湾台📶",HISTORY -http://45.190.28.50/HISTORY_HD/index.m3u8$LR•IPV4•46『线路27』 +http://138.121.15.230:9002/HISTORY-2/index.m3u8$LR•IPV4•46『线路27』 #EXTINF:-1 tvg-id="HISTORY" tvg-name="HISTORY" group-title="💓台湾台📶",HISTORY -http://88.212.15.19/live/test_history/playlist.m3u8$LR•IPV4•46『线路28』 +http://45.190.28.50/H2_HD/index.m3u8$LR•IPV4•46『线路28』 #EXTINF:-1 tvg-id="HISTORY" tvg-name="HISTORY" group-title="💓台湾台📶",HISTORY -http://82.78.243.219:45739/play/a01f/index.m3u8$LR•IPV4•46『线路29』 +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『线路29』 #EXTINF:-1 tvg-id="HISTORY" tvg-name="HISTORY" group-title="💓台湾台📶",HISTORY -http://40.160.24.53/HISTORY_CHANNEL/index.m3u8$LR•IPV4•46『线路30』 +https://lds-timeline-rakuten.amagi.tv/playlist.m3u8$LR•IPV4•46『线路30』 #EXTINF:-1 tvg-id="HISTORY" tvg-name="HISTORY" group-title="💓台湾台📶",HISTORY -http://138.121.15.230:9002/HISTORY-2/index.m3u8$LR•IPV4•46『线路31』 +http://138.121.15.230:9002/HISTORY-CHANNEL/index.m3u8$LR•IPV4•46『线路31』 #EXTINF:-1 tvg-id="HISTORY" tvg-name="HISTORY" group-title="💓台湾台📶",HISTORY -http://45.190.28.50/H2_HD/index.m3u8$LR•IPV4•46『线路32』 +http://103.72.101.252:8080/live/1471.m3u8$LR•IPV4•46『线路32』 #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『线路33』 +http://103.154.3.101:5001/live/577.m3u8$LR•IPV4•46『线路33』 #EXTINF:-1 tvg-id="HISTORY" tvg-name="HISTORY" group-title="💓台湾台📶",HISTORY -https://lds-timeline-rakuten.amagi.tv/playlist.m3u8$LR•IPV4•46『线路34』 +http://108.181.20.255:27347/livehttpplay?channel_id=23105$LR•IPV4•46『线路34』 #EXTINF:-1 tvg-id="HISTORY" tvg-name="HISTORY" group-title="💓台湾台📶",HISTORY -http://138.121.15.230:9002/HISTORY-CHANNEL/index.m3u8$LR•IPV4•46『线路35』 +https://jmp2.uk/plu-5d767b1c126c65d0a307355f.m3u8$LR•IPV4•46『线路35』 #EXTINF:-1 tvg-id="HISTORY" tvg-name="HISTORY" group-title="💓台湾台📶",HISTORY -http://103.72.101.252:8080/live/1471.m3u8$LR•IPV4•46『线路36』 +https://jmp2.uk/plu-5d4af1803e7983b391d73b13.m3u8$LR•IPV4•46『线路36』 #EXTINF:-1 tvg-id="HISTORY" tvg-name="HISTORY" group-title="💓台湾台📶",HISTORY -http://103.154.3.101:5001/live/577.m3u8$LR•IPV4•46『线路37』 +https://jmp2.uk/plu-5a4d35dfa5c02e717a234f86.m3u8$LR•IPV4•46『线路37』 #EXTINF:-1 tvg-id="HISTORY" tvg-name="HISTORY" group-title="💓台湾台📶",HISTORY -http://108.181.20.255:27347/livehttpplay?channel_id=23105$LR•IPV4•46『线路38』 +https://shift03.isp.bg/ViasatHistory_HD/index.m3u8$LR•IPV4•46『线路38』 #EXTINF:-1 tvg-id="HISTORY" tvg-name="HISTORY" group-title="💓台湾台📶",HISTORY -https://jmp2.uk/plu-5d767b1c126c65d0a307355f.m3u8$LR•IPV4•46『线路39』 +http://185.102.171.218/ViasatHistory/index.m3u8$LR•IPV4•46『线路39』 #EXTINF:-1 tvg-id="HISTORY" tvg-name="HISTORY" group-title="💓台湾台📶",HISTORY -https://jmp2.uk/plu-5d4af1803e7983b391d73b13.m3u8$LR•IPV4•46『线路40』 +http://315e5a5d.ottrast.com/iptv/8XFKA8883W9M5K/12101/index.m3u8$LR•IPV4•46『线路40』 #EXTINF:-1 tvg-id="HISTORY" tvg-name="HISTORY" group-title="💓台湾台📶",HISTORY -https://jmp2.uk/plu-5a4d35dfa5c02e717a234f86.m3u8$LR•IPV4•46『线路41』 +https://lb.dstvmultimedia.com/ViasatHistory/index.m3u8$LR•IPV4•46『线路41』 #EXTINF:-1 tvg-id="HISTORY" tvg-name="HISTORY" group-title="💓台湾台📶",HISTORY -https://shift03.isp.bg/ViasatHistory_HD/index.m3u8$LR•IPV4•46『线路42』 +http://178.124.179.122:8080/HistoryHD/index.m3u8$LR•IPV4•46『线路42』 #EXTINF:-1 tvg-id="HISTORY" tvg-name="HISTORY" group-title="💓台湾台📶",HISTORY -http://185.102.171.218/ViasatHistory/index.m3u8$LR•IPV4•46『线路43』 +https://cdn-ue1-prod.tsv2.amagi.tv/linear/ldsAAAAAA-timeline-samsungau/playlist.m3u8$LR•IPV4•46『线路43』 #EXTINF:-1 tvg-id="HISTORY" tvg-name="HISTORY" group-title="💓台湾台📶",HISTORY -http://315e5a5d.ottrast.com/iptv/8XFKA8883W9M5K/12101/index.m3u8$LR•IPV4•46『线路44』 +http://37.27.111.214:8080/live/27/hls.m3u8$LR•IPV4•46『线路44』 #EXTINF:-1 tvg-id="HISTORY" tvg-name="HISTORY" group-title="💓台湾台📶",HISTORY -https://lb.dstvmultimedia.com/ViasatHistory/index.m3u8$LR•IPV4•46『线路45』 +http://free.cnlive.club/channel/n20a85c83/index.m3u8?q=1752629214236$LR•IPV4•46『线路45』 #EXTINF:-1 tvg-id="HISTORY" tvg-name="HISTORY" group-title="💓台湾台📶",HISTORY -http://178.124.179.122:8080/HistoryHD/index.m3u8$LR•IPV4•46『线路46』 +p3p://167.114.175.6:55331/6233e1a30007e08d7da4ab21717b3e79$LR•IPV4•46『线路46』 #EXTINF:-1 tvg-id="视频8M1080咪视通1" tvg-name="视频8M1080咪视通1" group-title="🏈体育赛事🏆️",视频_8M1080_咪视通-1 http://jackgao.top:35455/itv/3000000001000005308.m3u8?cdn=FifastbLive$LR•IPV4•2『线路1』 #EXTINF:-1 tvg-id="视频8M1080咪视通1" tvg-name="视频8M1080咪视通1" group-title="🏈体育赛事🏆️",视频_8M1080_咪视通-1 @@ -2364,53 +2344,53 @@ https://stream1.freetv.fun/jsports-1-1.m3u8$LR•IPV4 #EXTINF:-1 tvg-id="JSPORTS2" tvg-name="JSPORTS2" group-title="⚽️SPORTS",JSPORTS2 https://stream1.freetv.fun/jsports-2-2.m3u8$LR•IPV4 #EXTINF:-1 tvg-id="MLB NETWORK" tvg-name="MLB NETWORK" group-title="⚽️SPORTS",MLB NETWORK -http://fl2.moveonjoy.com/MLB_NETWORK/index.m3u8$LR•IPV4•2『线路1』 +http://40.160.24.52/MLB_Network/index.m3u8$LR•IPV4•2『线路1』 #EXTINF:-1 tvg-id="MLB NETWORK" tvg-name="MLB NETWORK" group-title="⚽️SPORTS",MLB NETWORK -http://40.160.24.52/MLB_Network/index.m3u8$LR•IPV4•2『线路2』 +http://fl2.moveonjoy.com/MLB_NETWORK/index.m3u8$LR•IPV4•2『线路2』 #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『线路1』 +https://d1jzu95oc8fgt3.cloudfront.net/FOX_Sports.m3u8$LR•IPV4•8『线路1』 #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『线路2』 +https://amg02855-foxsports-amg02855c1-xumo-us-1755.playouts.now.amagi.tv/Fox-Sports-AmazonNews/playlist.m3u8$LR•IPV4•8『线路2』 #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『线路3』 +https://live-manifest.production-public.tubi.io/live/6035c7fd-efff-4ec7-93dc-aa0c7a58ba47/playlist.m3u8$LR•IPV4•8『线路3』 #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『线路4』 +https://jmp2.uk/plu-5a74b8e1e22a61737979c6bf.m3u8$LR•IPV4•8『线路4』 #EXTINF:-1 tvg-id="FOX Sports" tvg-name="FOX Sports" group-title="⚽️SPORTS",FOX Sports -https://jmp2.uk/plu-5a74b8e1e22a61737979c6bf.m3u8$LR•IPV4•8『线路5』 +http://85.237.89.160:9590/usa-s/FOX-SPORTS-1/index.m3u8$LR•IPV4•8『线路5』 #EXTINF:-1 tvg-id="FOX Sports" tvg-name="FOX Sports" group-title="⚽️SPORTS",FOX Sports -http://85.237.89.160:9590/usa-s/FOX-SPORTS-1/index.m3u8$LR•IPV4•8『线路6』 +https://streamvidex.qzz.io/videx/fox2usa/index.m3u8$LR•IPV4•8『线路6』 #EXTINF:-1 tvg-id="FOX Sports" tvg-name="FOX Sports" group-title="⚽️SPORTS",FOX Sports -https://streamvidex.qzz.io/videx/fox2usa/index.m3u8$LR•IPV4•8『线路7』 +http://108.181.20.255:27347/livehttpplay?channel_id=23054$LR•IPV4•8『线路7』 #EXTINF:-1 tvg-id="FOX Sports" tvg-name="FOX Sports" group-title="⚽️SPORTS",FOX Sports -http://108.181.20.255:27347/livehttpplay?channel_id=23054$LR•IPV4•8『线路8』 +http://fl2.moveonjoy.com/FOX_Sports_1/index.m3u8$LR•IPV4•8『线路8』 #EXTINF:-1 tvg-id="NBA" tvg-name="NBA" group-title="⚽️SPORTS",NBA -https://stream1.freetv.fun/nba-tv-7.m3u8$LR•IPV4•8『线路1』 +https://live-manifest.production-public.tubi.io/live/553b8d5e-fd2a-4a61-bdfa-73b34c299d75/playlist.m3u8$LR•IPV4•8『线路1』 #EXTINF:-1 tvg-id="NBA" tvg-name="NBA" group-title="⚽️SPORTS",NBA -https://stream1.freetv.fun/nba-tv-5.m3u8$LR•IPV4•8『线路2』 +https://jmp2.uk/plu-6792c30abc03978b9b8bb832.m3u8$LR•IPV4•8『线路2』 #EXTINF:-1 tvg-id="NBA" tvg-name="NBA" group-title="⚽️SPORTS",NBA -http://170.yfvodcdn.com:19980/live/nbaTV2/hls.m3u8$LR•IPV4•8『线路3』 +https://amg00556-amg00556c3-firetv-us-6060.playouts.now.amagi.tv/playlist.m3u8$LR•IPV4•8『线路3』 #EXTINF:-1 tvg-id="NBA" tvg-name="NBA" group-title="⚽️SPORTS",NBA -p3p://167.114.175.6:55331/65a587500007bc039fca3566638e69af$LR•IPV4•8『线路4』 +http://user.scalecdn.co:8080/live/54706135/09221986/3092.m3u8$LR•IPV4•8『线路4』 #EXTINF:-1 tvg-id="NBA" tvg-name="NBA" group-title="⚽️SPORTS",NBA -https://live-manifest.production-public.tubi.io/live/553b8d5e-fd2a-4a61-bdfa-73b34c299d75/playlist.m3u8$LR•IPV4•8『线路5』 +https://stream1.freetv.fun/nba-tv-7.m3u8$LR•IPV4•8『线路5』 #EXTINF:-1 tvg-id="NBA" tvg-name="NBA" group-title="⚽️SPORTS",NBA -https://jmp2.uk/plu-6792c30abc03978b9b8bb832.m3u8$LR•IPV4•8『线路6』 +https://stream1.freetv.fun/nba-tv-5.m3u8$LR•IPV4•8『线路6』 #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•8『线路7』 +http://170.yfvodcdn.com:19980/live/nbaTV2/hls.m3u8$LR•IPV4•8『线路7』 #EXTINF:-1 tvg-id="NBA" tvg-name="NBA" group-title="⚽️SPORTS",NBA -http://user.scalecdn.co:8080/live/54706135/09221986/3092.m3u8$LR•IPV4•8『线路8』 +p3p://167.114.175.6:55331/65a587500007bc039fca3566638e69af$LR•IPV4•8『线路8』 #EXTINF:-1 tvg-id="ESPN" tvg-name="ESPN" group-title="⚽️SPORTS",ESPN -http://41.205.93.154/ESPN/index.m3u8$LR•IPV4•6『线路1』 +http://181.78.197.59:8000/play/a07z/index.m3u8$LR•IPV4•6『线路1』 #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『线路2』 +http://181.78.197.59:8000/play/a081/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/a07z/index.m3u8$LR•IPV4•6『线路3』 +http://181.78.197.59:8000/play/a07n/index.m3u8$LR•IPV4•6『线路3』 #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『线路4』 +http://40.160.24.58/ESPN_DEPORTES/index.m3u8$LR•IPV4•6『线路4』 #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『线路5』 +http://41.205.93.154/ESPN/index.m3u8$LR•IPV4•6『线路5』 #EXTINF:-1 tvg-id="ESPN" tvg-name="ESPN" group-title="⚽️SPORTS",ESPN -http://40.160.24.58/ESPN_DEPORTES/index.m3u8$LR•IPV4•6『线路6』 +http://38.96.178.201:80/live/ESPNHD/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",緯來體育 @@ -2788,19 +2768,17 @@ https://vip.ffzy-play7.com/20221129/7714_a0c75de1/index.m3u8$LR•IPV4 #EXTINF:-1 tvg-id="音乐僵尸" tvg-name="音乐僵尸" group-title="🎞️电影点播",音乐僵尸 https://vip.ffzy-play6.com/20221207/10627_09b3f2e5/index.m3u8$LR•IPV4 #EXTINF:-1 tvg-id="英雄" tvg-name="英雄" group-title="🎞️电影点播",英雄 -http://cdn.jdshipin.com:8880/huya.php?id=23824164$LR•IPV4•7『线路1』 +https://live.ottiptv.cc/yy/1352475619$LR•IPV4•6『线路1』 #EXTINF:-1 tvg-id="英雄" tvg-name="英雄" group-title="🎞️电影点播",英雄 -https://live.ottiptv.cc/yy/1352475619$LR•IPV4•7『线路2』 +https://vip.ffzy-play7.com/20221227/9993_9681b67b/index.m3u8$LR•IPV4•6『线路2』 #EXTINF:-1 tvg-id="英雄" tvg-name="英雄" group-title="🎞️电影点播",英雄 -https://vip.ffzy-play7.com/20221227/9993_9681b67b/index.m3u8$LR•IPV4•7『线路3』 +https://vip.ffzy-play.com/20221015/981_2ca5b5f9/index.m3u8$LR•IPV4•6『线路3』 #EXTINF:-1 tvg-id="英雄" tvg-name="英雄" group-title="🎞️电影点播",英雄 -https://vip.ffzy-play.com/20221015/981_2ca5b5f9/index.m3u8$LR•IPV4•7『线路4』 +https://vip.ffzy-play6.com/20221207/10694_f9088e66/index.m3u8$LR•IPV4•6『线路4』 #EXTINF:-1 tvg-id="英雄" tvg-name="英雄" group-title="🎞️电影点播",英雄 -https://vip.ffzy-play6.com/20221207/10694_f9088e66/index.m3u8$LR•IPV4•7『线路5』 +https://vip.ffzy-play7.com/20221129/7743_4656dd25/index.m3u8$LR•IPV4•6『线路5』 #EXTINF:-1 tvg-id="英雄" tvg-name="英雄" group-title="🎞️电影点播",英雄 -https://vip.ffzy-play7.com/20221129/7743_4656dd25/index.m3u8$LR•IPV4•7『线路6』 -#EXTINF:-1 tvg-id="英雄" tvg-name="英雄" group-title="🎞️电影点播",英雄 -https://vip.ffzy-play6.com/20221112/6371_9b5bf930/index.m3u8$LR•IPV4•7『线路7』 +https://vip.ffzy-play6.com/20221112/6371_9b5bf930/index.m3u8$LR•IPV4•6『线路6』 #EXTINF:-1 tvg-id="赢钱专家" tvg-name="赢钱专家" group-title="🎞️电影点播",赢钱专家 https://vip.ffzy-play6.com/20221113/6794_d514b390/index.m3u8$LR•IPV4 #EXTINF:-1 tvg-id="有话好好说" tvg-name="有话好好说" group-title="🎞️电影点播",有话好好说 @@ -3014,13 +2992,15 @@ https://live.metshop.top/huya/11342388$LR•IPV4 #EXTINF:-1 tvg-id="联合抗日" tvg-name="联合抗日" group-title="💓电视剧🔁",联合抗日 https://live.metshop.top/huya/11352910$LR•IPV4 #EXTINF:-1 tvg-id="三国" tvg-name="三国" group-title="💓电视剧🔁",三国 -https://live.ottiptv.cc/huya/11602081$LR•IPV4•4『线路1』 +https://live.ottiptv.cc/huya/11602081$LR•IPV4•5『线路1』 #EXTINF:-1 tvg-id="三国" tvg-name="三国" group-title="💓电视剧🔁",三国 -https://live.ottiptv.cc/huya/11352944$LR•IPV4•4『线路2』 +https://live.ottiptv.cc/huya/11352944$LR•IPV4•5『线路2』 #EXTINF:-1 tvg-id="三国" tvg-name="三国" group-title="💓电视剧🔁",三国 -https://live.metshop.top/huya/11352944$LR•IPV4•4『线路3』 +https://goodiptv.club/douyu/5908256$LR•IPV4•5『线路3』 #EXTINF:-1 tvg-id="三国" tvg-name="三国" group-title="💓电视剧🔁",三国 -http://103.193.151.146/huya.php?id=29465871$LR•IPV4•4『线路4』 +https://live.metshop.top/huya/11352944$LR•IPV4•5『线路4』 +#EXTINF:-1 tvg-id="三国" tvg-name="三国" group-title="💓电视剧🔁",三国 +http://103.193.151.146/huya.php?id=29465871$LR•IPV4•5『线路5』 #EXTINF:-1 tvg-id="雍正皇帝" tvg-name="雍正皇帝" group-title="💓电视剧🔁",雍正皇帝 https://live.metshop.top/huya/11342439$LR•IPV4 #EXTINF:-1 tvg-id="许冠英合集" tvg-name="许冠英合集" group-title="💓电视剧🔁",许冠英合集 @@ -3080,11 +3060,11 @@ 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=8a921813ee3b23c82763145c9f291a3b$LR•IPV4•41『线路1』 +https://v4-702cae17a28d6e4f0c0002bba021d934.livehwc4.com/play.kankanlive.com/live/1698423397390920.m3u8?sub_m3u8=true&edge_slice=true&user_session_id=7b0844b76d8c951adb5f87864280aa1c$LR•IPV4•41『线路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=f3fb3ddaca05941087114cf6481e1c23$LR•IPV4•41『线路2』 +https://ali-m-l.cztv.com/channels/lantian/channel012/1080p.m3u8$LR•IPV4•41『线路2』 #EXTINF:-1 tvg-id="纪录" tvg-name="纪录" group-title="💓优质个源",纪录 -https://ali-m-l.cztv.com/channels/lantian/channel012/1080p.m3u8$LR•IPV4•41『线路3』 +https://v4-e6b1c5baf4e240fe63adbf68dda23435.livehwc4.com/play.kankanlive.com/live/1698423397390920.m3u8?sub_m3u8=true&edge_slice=true&user_session_id=1c7b8d97d045399d92a9b9016e62d86b$LR•IPV4•41『线路3』 #EXTINF:-1 tvg-id="纪录" tvg-name="纪录" group-title="💓优质个源",纪录 http://free.cnlive.club/channel/n3f497a4c/index.m3u8?q=1752629214236$LR•IPV4•41『线路4』 #EXTINF:-1 tvg-id="纪录" tvg-name="纪录" group-title="💓优质个源",纪录 @@ -3144,11 +3124,11 @@ https://rt-rtd.rttv.com/dvr/rtdoc/playlist_4500Kb.m3u8$LR•IPV4•41『线路31 #EXTINF:-1 tvg-id="纪录" tvg-name="纪录" group-title="💓优质个源",纪录 p3p://167.114.175.6:55331/623baf7a0004e5d79c2047cd46107be2$LR•IPV4•41『线路32』 #EXTINF:-1 tvg-id="纪录" tvg-name="纪录" group-title="💓优质个源",纪录 -http://23.237.104.106:8080/USA_DISCOVERY/index.m3u8$LR•IPV4•41『线路33』 +https://jmp2.uk/plu-6400f731d200410008f9b339.m3u8$LR•IPV4•41『线路33』 #EXTINF:-1 tvg-id="纪录" tvg-name="纪录" group-title="💓优质个源",纪录 -https://jmp2.uk/plu-6400f731d200410008f9b339.m3u8$LR•IPV4•41『线路34』 +https://svs.itworkscdn.net/asharqdiscoverylive/asharqd.smil/playlist_dvr.m3u8$LR•IPV4•41『线路34』 #EXTINF:-1 tvg-id="纪录" tvg-name="纪录" group-title="💓优质个源",纪录 -https://svs.itworkscdn.net/asharqdiscoverylive/asharqd.smil/playlist_dvr.m3u8$LR•IPV4•41『线路35』 +http://23.237.104.106:8080/USA_DISCOVERY/index.m3u8$LR•IPV4•41『线路35』 #EXTINF:-1 tvg-id="纪录" tvg-name="纪录" group-title="💓优质个源",纪录 p3p://167.114.175.6:55331/62c9a44500000cd3c69dc74b77c62c82$LR•IPV4•41『线路36』 #EXTINF:-1 tvg-id="纪录" tvg-name="纪录" group-title="💓优质个源",纪录 @@ -3156,9 +3136,9 @@ http://40.160.24.53/MTV_LIVE/index.m3u8$LR•IPV4•41『线路37』 #EXTINF:-1 tvg-id="纪录" tvg-name="纪录" group-title="💓优质个源",纪录 p3p://167.114.175.6:55331/5fe16de700083ba97787607e74d90cb5$LR•IPV4•41『线路38』 #EXTINF:-1 tvg-id="纪录" tvg-name="纪录" group-title="💓优质个源",纪录 -p3p://167.114.175.6:55331/644518fd0002d5953f21bedc56b6465f$LR•IPV4•41『线路39』 +https://i.mjh.nz/.r/sky-hgtv.m3u8$LR•IPV4•41『线路39』 #EXTINF:-1 tvg-id="纪录" tvg-name="纪录" group-title="💓优质个源",纪录 -https://i.mjh.nz/.r/sky-hgtv.m3u8$LR•IPV4•41『线路40』 +p3p://167.114.175.6:55331/644518fd0002d5953f21bedc56b6465f$LR•IPV4•41『线路40』 #EXTINF:-1 tvg-id="纪录" tvg-name="纪录" group-title="💓优质个源",纪录 p3p://167.114.175.6:55331/61e4f963000c710c55474e4e1e2273d9$LR•IPV4•41『线路41』 #EXTINF:-1 tvg-id="樱桃小丸子剧" tvg-name="樱桃小丸子剧" group-title="💓儿童专享",樱桃小丸子剧 @@ -3180,29 +3160,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://free.cnlive.club/channel/n59903092/index.m3u8?q=1752629214236$LR•IPV4•27『线路1』 +http://scgctvshow.sctv.com/hdlive/sctv7/index.m3u8$LR•IPV4•27『线路1』 #EXTINF:-1 tvg-id="儿童" tvg-name="儿童" group-title="💓儿童专享",儿童 -http://free.cnlive.club/channel/33dc4490/index.m3u8?q=1752629214236$LR•IPV4•27『线路2』 +http://free.cnlive.club/channel/n59903092/index.m3u8?q=1752629214236$LR•IPV4•27『线路2』 #EXTINF:-1 tvg-id="儿童" tvg-name="儿童" group-title="💓儿童专享",儿童 -http://free.cnlive.club/channel/n149d9627/index.m3u8?q=1752629214236$LR•IPV4•27『线路3』 +http://free.cnlive.club/channel/33dc4490/index.m3u8?q=1752629214236$LR•IPV4•27『线路3』 #EXTINF:-1 tvg-id="儿童" tvg-name="儿童" group-title="💓儿童专享",儿童 -http://free.cnlive.club/channel/5fe8f622/index.m3u8?q=1752629214236$LR•IPV4•27『线路4』 +http://free.cnlive.club/channel/n149d9627/index.m3u8?q=1752629214236$LR•IPV4•27『线路4』 #EXTINF:-1 tvg-id="儿童" tvg-name="儿童" group-title="💓儿童专享",儿童 -http://free.cnlive.club/channel/7af110c4/index.m3u8?q=1752629214236$LR•IPV4•27『线路5』 +http://free.cnlive.club/channel/5fe8f622/index.m3u8?q=1752629214236$LR•IPV4•27『线路5』 #EXTINF:-1 tvg-id="儿童" tvg-name="儿童" group-title="💓儿童专享",儿童 -http://free.cnlive.club/channel/18a1ad0/index.m3u8?q=1752629214236$LR•IPV4•27『线路6』 +http://free.cnlive.club/channel/7af110c4/index.m3u8?q=1752629214236$LR•IPV4•27『线路6』 #EXTINF:-1 tvg-id="儿童" tvg-name="儿童" group-title="💓儿童专享",儿童 -http://free.cnlive.club/channel/n70dedb3e/index.m3u8?q=1752629214236$LR•IPV4•27『线路7』 +http://free.cnlive.club/channel/18a1ad0/index.m3u8?q=1752629214236$LR•IPV4•27『线路7』 #EXTINF:-1 tvg-id="儿童" tvg-name="儿童" group-title="💓儿童专享",儿童 -http://free.cnlive.club/channel/n6567f5b8/index.m3u8?q=1752629214236$LR•IPV4•27『线路8』 +http://free.cnlive.club/channel/n70dedb3e/index.m3u8?q=1752629214236$LR•IPV4•27『线路8』 #EXTINF:-1 tvg-id="儿童" tvg-name="儿童" group-title="💓儿童专享",儿童 -http://free.cnlive.club/channel/n6a165737/index.m3u8?q=1752629214236$LR•IPV4•27『线路9』 +http://free.cnlive.club/channel/n6567f5b8/index.m3u8?q=1752629214236$LR•IPV4•27『线路9』 #EXTINF:-1 tvg-id="儿童" tvg-name="儿童" group-title="💓儿童专享",儿童 -http://free.cnlive.club/channel/n75fc9ff7/index.m3u8?q=1752629214236$LR•IPV4•27『线路10』 +http://free.cnlive.club/channel/n6a165737/index.m3u8?q=1752629214236$LR•IPV4•27『线路10』 #EXTINF:-1 tvg-id="儿童" tvg-name="儿童" group-title="💓儿童专享",儿童 -p3p://167.114.175.6:55331/6233e0ca0000ca8f7da159a76b755519$LR•IPV4•27『线路11』 +http://free.cnlive.club/channel/n75fc9ff7/index.m3u8?q=1752629214236$LR•IPV4•27『线路11』 #EXTINF:-1 tvg-id="儿童" tvg-name="儿童" group-title="💓儿童专享",儿童 -http://scgctvshow.sctv.com/hdlive/sctv7/index.m3u8$LR•IPV4•27『线路12』 +p3p://167.114.175.6:55331/6233e0ca0000ca8f7da159a76b755519$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="💓儿童专享",儿童 @@ -3226,19 +3206,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="💓儿童专享",儿童 -p3p://167.114.175.6:55331/6506d1a00000a99a33d7555a4b747caa$LR•IPV4•27『线路24』 +https://amg02159-kcglobal-amg02159c1-samsung-in-521.playouts.now.amagi.tv/playlist/amg02159-kcglobal-animax-samsungin/playlist.m3u8$LR•IPV4•27『线路24』 #EXTINF:-1 tvg-id="儿童" tvg-name="儿童" group-title="💓儿童专享",儿童 -p3p://167.114.175.6:55331/61e0f9f0000ec6db45a9e87848424184$LR•IPV4•27『线路25』 +p3p://167.114.175.6:55331/6506d1a00000a99a33d7555a4b747caa$LR•IPV4•27『线路25』 #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『线路26』 +p3p://167.114.175.6:55331/61e0f9f0000ec6db45a9e87848424184$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://www.douzhicloud.site:35455/douyu/4332$LR•IPV4•2『线路1』 +http://epg.112114.xyz/douyu/252802$LR•IPV4•2『线路1』 #EXTINF:-1 tvg-id="贝爷" tvg-name="贝爷" group-title="🍹定制台☕️",贝爷 -http://epg.112114.xyz/douyu/252802$LR•IPV4•2『线路2』 +http://www.douzhicloud.site:35455/douyu/4332$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 @@ -3328,15 +3308,15 @@ p3p://167.114.175.6:55331/657da67d0006060a0404d5987d1853db$LR•IPV4 #EXTINF:-1 tvg-id="Mytv Super18" tvg-name="Mytv Super18" group-title="🍹定制P3P☕️",Mytv Super18 p3p://167.114.175.6:55331/6506d591000d6d7733e6bdfb4725689e$LR•IPV4 #EXTINF:-1 tvg-id="Star Movies" tvg-name="Star Movies" group-title="🍹定制P3P☕️",Star Movies -p3p://167.114.175.6:55331/6506c5e500027c7f33a9834b5d937568$LR•IPV4•5『线路1』 +http://znty.dyndns.org:5010/hls/foxm.m3u8$LR•IPV4•5『线路1』 #EXTINF:-1 tvg-id="Star Movies" tvg-name="Star Movies" group-title="🍹定制P3P☕️",Star Movies -http://znty.dyndns.org:5010/hls/foxm.m3u8$LR•IPV4•5『线路2』 +http://92.36.202.5:10001/play/a01o$LR•IPV4•5『线路2』 #EXTINF:-1 tvg-id="Star Movies" tvg-name="Star Movies" group-title="🍹定制P3P☕️",Star Movies -http://92.36.202.5:10001/play/a01o$LR•IPV4•5『线路3』 +http://149.71.34.166:8000/play/a01f/index.m3u8$LR•IPV4•5『线路3』 #EXTINF:-1 tvg-id="Star Movies" tvg-name="Star Movies" group-title="🍹定制P3P☕️",Star Movies -http://149.71.34.166:8000/play/a01f/index.m3u8$LR•IPV4•5『线路4』 +http://149.71.34.166:8000/play/a01g/index.m3u8$LR•IPV4•5『线路4』 #EXTINF:-1 tvg-id="Star Movies" tvg-name="Star Movies" group-title="🍹定制P3P☕️",Star Movies -http://149.71.34.166:8000/play/a01g/index.m3u8$LR•IPV4•5『线路5』 +p3p://167.114.175.6:55331/6506c5e500027c7f33a9834b5d937568$LR•IPV4•5『线路5』 #EXTINF:-1 tvg-id="NOW 668跑马" tvg-name="NOW 668跑马" group-title="🍹定制P3P☕️",NOW 668跑马 p3p://167.114.175.6:55331/6318b7730000b372fb7ca7e170c66e54$LR•IPV4 #EXTINF:-1 tvg-id="Cinemax HK" tvg-name="Cinemax HK" group-title="🍹定制P3P☕️",Cinemax HK @@ -3370,9 +3350,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 -p3p://167.114.175.6:55331/6506d285000b06bd33dad67a652e2bfd$LR•IPV4•2『线路1』 +https://jmp2.uk/plu-652557d93fd33c000802f995.m3u8$LR•IPV4•2『线路1』 #EXTINF:-1 tvg-id="Super Kids" tvg-name="Super Kids" group-title="🍹定制P3P☕️",Super Kids -https://jmp2.uk/plu-652557d93fd33c000802f995.m3u8$LR•IPV4•2『线路2』 +p3p://167.114.175.6:55331/6506d285000b06bd33dad67a652e2bfd$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☕️",面包台 @@ -3412,27 +3392,27 @@ p3p://167.114.175.6:55331/62011f820008c9f3c33ae0231cf86a05$LR•IPV4 #EXTINF:-1 tvg-id="EL生活英语" tvg-name="EL生活英语" group-title="🍹定制P3P☕️",EL生活英语 p3p://167.114.175.6:55331/624888bb000b784ace507da37b7906ea$LR•IPV4 #EXTINF:-1 tvg-id="Z" tvg-name="Z" group-title="🍹定制P3P☕️",Z -p3p://167.114.175.6:55331/64c7ce3f000afa423db36d3f378c386d$LR•IPV4•11『线路1』 +https://live.artidijitalmedya.com/artidijital_kanalz/kanalz/playlist.m3u8$LR•IPV4•11『线路1』 #EXTINF:-1 tvg-id="Z" tvg-name="Z" group-title="🍹定制P3P☕️",Z -https://live.artidijitalmedya.com/artidijital_kanalz/kanalz/playlist.m3u8$LR•IPV4•11『线路2』 +http://s1.media-planet.sk/live/novezamky/BratuMarian.m3u8$LR•IPV4•11『线路2』 #EXTINF:-1 tvg-id="Z" tvg-name="Z" group-title="🍹定制P3P☕️",Z -http://s1.media-planet.sk/live/novezamky/BratuMarian.m3u8$LR•IPV4•11『线路3』 +https://jmp2.uk/plu-68e8fd7c3ede4398bc69af93.m3u8$LR•IPV4•11『线路3』 #EXTINF:-1 tvg-id="Z" tvg-name="Z" group-title="🍹定制P3P☕️",Z -https://jmp2.uk/plu-68e8fd7c3ede4398bc69af93.m3u8$LR•IPV4•11『线路4』 +https://d39g1vxj2ef6in.cloudfront.net/v1/master/3fec3e5cac39a52b2132f9c66c83dae043dc17d4/prod-rakuten-stitched/master.m3u8?ads.xumo_channelId=88883103$LR•IPV4•11『线路4』 #EXTINF:-1 tvg-id="Z" tvg-name="Z" group-title="🍹定制P3P☕️",Z -https://d39g1vxj2ef6in.cloudfront.net/v1/master/3fec3e5cac39a52b2132f9c66c83dae043dc17d4/prod-rakuten-stitched/master.m3u8?ads.xumo_channelId=88883103$LR•IPV4•11『线路5』 +https://amg02393-awpg-amg02393c3-rakuten-uk-2462.playouts.now.amagi.tv/playlist/amg02393-awpg-leszamours-rakutenuk/playlist.m3u8$LR•IPV4•11『线路5』 #EXTINF:-1 tvg-id="Z" tvg-name="Z" group-title="🍹定制P3P☕️",Z -https://amg02393-awpg-amg02393c3-rakuten-uk-2462.playouts.now.amagi.tv/playlist/amg02393-awpg-leszamours-rakutenuk/playlist.m3u8$LR•IPV4•11『线路6』 +https://jmp2.uk/plu-652d0b756208700008d758ad.m3u8$LR•IPV4•11『线路6』 #EXTINF:-1 tvg-id="Z" tvg-name="Z" group-title="🍹定制P3P☕️",Z -https://jmp2.uk/plu-652d0b756208700008d758ad.m3u8$LR•IPV4•11『线路7』 +https://stream.ztv.zp.ua/hls/live.m3u8$LR•IPV4•11『线路7』 #EXTINF:-1 tvg-id="Z" tvg-name="Z" group-title="🍹定制P3P☕️",Z -https://stream.ztv.zp.ua/hls/live.m3u8$LR•IPV4•11『线路8』 +https://jmp2.uk/plu-66b3af48d2d50d00083d6936.m3u8$LR•IPV4•11『线路8』 #EXTINF:-1 tvg-id="Z" tvg-name="Z" group-title="🍹定制P3P☕️",Z -https://jmp2.uk/plu-66b3af48d2d50d00083d6936.m3u8$LR•IPV4•11『线路9』 +https://d1hz1p2gea2zy4.cloudfront.net/live/rmgtv/RMG-TRENDSZFR-LIVE/index.m3u8$LR•IPV4•11『线路9』 #EXTINF:-1 tvg-id="Z" tvg-name="Z" group-title="🍹定制P3P☕️",Z -https://d1hz1p2gea2zy4.cloudfront.net/live/rmgtv/RMG-TRENDSZFR-LIVE/index.m3u8$LR•IPV4•11『线路10』 +https://d1hz1p2gea2zy4.cloudfront.net/live/rmgtv/RMG-TRENDSZNL-LIVE/index.m3u8$LR•IPV4•11『线路10』 #EXTINF:-1 tvg-id="Z" tvg-name="Z" group-title="🍹定制P3P☕️",Z -https://d1hz1p2gea2zy4.cloudfront.net/live/rmgtv/RMG-TRENDSZNL-LIVE/index.m3u8$LR•IPV4•11『线路11』 +p3p://167.114.175.6:55331/64c7ce3f000afa423db36d3f378c386d$LR•IPV4•11『线路11』 #EXTINF:-1 tvg-id="博斯无限1" tvg-name="博斯无限1" group-title="🍹定制P3P☕️",博斯无限1 p3p://167.114.175.6:55331/647cba27000a6f78186e481d11013645$LR•IPV4 #EXTINF:-1 tvg-id="博斯无限2" tvg-name="博斯无限2" group-title="🍹定制P3P☕️",博斯无限2 @@ -3440,59 +3420,59 @@ p3p://167.114.175.6:55331/6146901b0006875bea841df772893d7b$LR•IPV4 #EXTINF:-1 tvg-id="Star World" tvg-name="Star World" group-title="🍹定制P3P☕️",Star World p3p://167.114.175.6:55331/621dc4640002052a2743501031f65ed4$LR•IPV4 #EXTINF:-1 tvg-id="HITS" tvg-name="HITS" group-title="🍹定制P3P☕️",HITS -https://89514e758f814907be6d14bbc0aa66b7.mediatailor.us-west-2.amazonaws.com/v1/master/ba62fe743df0fe93366eba3a257d792884136c7f/LINEAR-800-UK-SONYONEACTIONHITS-LG_UK/playlist.m3u8$LR•IPV4•27『线路1』 +https://webtvstream.bhtelecom.ba/hls7/filmbox_premium.m3u8$LR•IPV4•27『线路1』 #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•27『线路2』 +http://88.212.15.19/live/test_film_boxpremium_hd_hevc/playlist.m3u8$LR•IPV4•27『线路2』 #EXTINF:-1 tvg-id="HITS" tvg-name="HITS" group-title="🍹定制P3P☕️",HITS -http://37.27.111.214:8080/live/28/hls.m3u8$LR•IPV4•27『线路3』 +http://46.149.191.217:9005/play/a01x$LR•IPV4•27『线路3』 #EXTINF:-1 tvg-id="HITS" tvg-name="HITS" group-title="🍹定制P3P☕️",HITS -p3p://167.114.175.6:55331/6233e648000735057db6cf734adf440d$LR•IPV4•27『线路4』 +https://cdn10jtedge.indihometv.com/atm/DASH/hitsmovie/manifest.mpd$LR•IPV4•27『线路4』 #EXTINF:-1 tvg-id="HITS" tvg-name="HITS" group-title="🍹定制P3P☕️",HITS -https://webtvstream.bhtelecom.ba/hls7/filmbox_premium.m3u8$LR•IPV4•27『线路5』 +http://40.160.24.52/EPIX_2/index.m3u8$LR•IPV4•27『线路5』 #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•27『线路6』 +https://5098a8b860504a3690fd2e7c0a18d68f.mediatailor.us-west-2.amazonaws.com/v1/master/ba62fe743df0fe93366eba3a257d792884136c7f/LINEAR-817-FR-SONYONEHITSACTION-LG_FR/playlist.m3u8$LR•IPV4•27『线路6』 #EXTINF:-1 tvg-id="HITS" tvg-name="HITS" group-title="🍹定制P3P☕️",HITS -http://46.149.191.217:9005/play/a01x$LR•IPV4•27『线路7』 +https://7aa9671895264ec9a384dfed1b992171.mediatailor.us-west-2.amazonaws.com/v1/master/ba62fe743df0fe93366eba3a257d792884136c7f/LINEAR-818-FR-SONYONEHITSCOMDIE-LG_FR/playlist.m3u8$LR•IPV4•27『线路7』 #EXTINF:-1 tvg-id="HITS" tvg-name="HITS" group-title="🍹定制P3P☕️",HITS -https://cdn10jtedge.indihometv.com/atm/DASH/hitsmovie/manifest.mpd$LR•IPV4•27『线路8』 +https://cdn10jtedge.indihometv.com/atm/DASH/hits/manifest.mpd$LR•IPV4•27『线路8』 #EXTINF:-1 tvg-id="HITS" tvg-name="HITS" group-title="🍹定制P3P☕️",HITS -http://40.160.24.52/EPIX_2/index.m3u8$LR•IPV4•27『线路9』 +https://stream.ads.ottera.tv/playlist.m3u8?network_id=1058$LR•IPV4•27『线路9』 #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•27『线路10』 +https://lotus.stingray.com/manifest/ose-237ads-montreal/samsungtvplus/master.m3u8$LR•IPV4•27『线路10』 #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•27『线路11』 +https://d2tuyivcrvbj81.cloudfront.net/XITE_Christian_Hits.m3u8$LR•IPV4•27『线路11』 #EXTINF:-1 tvg-id="HITS" tvg-name="HITS" group-title="🍹定制P3P☕️",HITS -https://cdn10jtedge.indihometv.com/atm/DASH/hits/manifest.mpd$LR•IPV4•27『线路12』 +http://31.148.48.15/Bridge_TV_Dance/index.m3u8$LR•IPV4•27『线路12』 #EXTINF:-1 tvg-id="HITS" tvg-name="HITS" group-title="🍹定制P3P☕️",HITS -https://stream.ads.ottera.tv/playlist.m3u8?network_id=1058$LR•IPV4•27『线路13』 +http://cm.hostlagarto.com:8081/hits360tv/hits360HD.myStream/playlist.m3u8$LR•IPV4•27『线路13』 #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•27『线路14』 +http://88.212.15.19/live/mb_hits/index.m3u8$LR•IPV4•27『线路14』 #EXTINF:-1 tvg-id="HITS" tvg-name="HITS" group-title="🍹定制P3P☕️",HITS -https://d2tuyivcrvbj81.cloudfront.net/XITE_Christian_Hits.m3u8$LR•IPV4•27『线路15』 +https://test.946985.filegear-sg.me/proxy/a23981548880f405$LR•IPV4•27『线路15』 #EXTINF:-1 tvg-id="HITS" tvg-name="HITS" group-title="🍹定制P3P☕️",HITS -http://31.148.48.15/Bridge_TV_Dance/index.m3u8$LR•IPV4•27『线路16』 +https://stream.ottlive.co.in/punjabihits/index.m3u8$LR•IPV4•27『线路16』 #EXTINF:-1 tvg-id="HITS" tvg-name="HITS" group-title="🍹定制P3P☕️",HITS -http://cm.hostlagarto.com:8081/hits360tv/hits360HD.myStream/playlist.m3u8$LR•IPV4•27『线路17』 +https://lotus.stingray.com/manifest/ose-214ads-montreal/samsungtvplus/master.m3u8$LR•IPV4•27『线路17』 #EXTINF:-1 tvg-id="HITS" tvg-name="HITS" group-title="🍹定制P3P☕️",HITS -http://88.212.15.19/live/mb_hits/index.m3u8$LR•IPV4•27『线路18』 +https://d39g1vxj2ef6in.cloudfront.net/v1/master/3fec3e5cac39a52b2132f9c66c83dae043dc17d4/prod-rakuten-stitched/master.m3u8?ads.xumo_channelId=88883053$LR•IPV4•27『线路18』 #EXTINF:-1 tvg-id="HITS" tvg-name="HITS" group-title="🍹定制P3P☕️",HITS -https://test.946985.filegear-sg.me/proxy/a23981548880f405$LR•IPV4•27『线路19』 +https://lotus.stingray.com/manifest/ose-155ads-montreal/samsungtvplus/master.m3u8$LR•IPV4•27『线路19』 #EXTINF:-1 tvg-id="HITS" tvg-name="HITS" group-title="🍹定制P3P☕️",HITS -https://stream.ottlive.co.in/punjabihits/index.m3u8$LR•IPV4•27『线路20』 +https://d39g1vxj2ef6in.cloudfront.net/v1/manifest/3fec3e5cac39a52b2132f9c66c83dae043dc17d4/prod-rakuten-stitched/54947915-6504-4548-aaef-eabd451f8607/1.m3u8$LR•IPV4•27『线路20』 #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•27『线路21』 +https://vglivessai.akamaized.net/sg/v1/master/611d79b11b77e2f571934fd80ca1413453772ac7/e11b0319-52e8-4190-ab03-3931cc68eac9/index.m3u8$LR•IPV4•27『线路21』 #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•27『线路22』 +https://d726x48n2pd5h.cloudfront.net/XITE_Hits.m3u8$LR•IPV4•27『线路22』 #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•27『线路23』 +https://d726x48n2pd5h.cloudfront.net/v1/master/3722c60a815c199d9c0ef36c5b73da68a62b09d1/cc-skxr1pazhltvp/XITE_Hits.m3u8$LR•IPV4•27『线路23』 #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•27『线路24』 +https://89514e758f814907be6d14bbc0aa66b7.mediatailor.us-west-2.amazonaws.com/v1/master/ba62fe743df0fe93366eba3a257d792884136c7f/LINEAR-800-UK-SONYONEACTIONHITS-LG_UK/playlist.m3u8$LR•IPV4•27『线路24』 #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•27『线路25』 +https://9f8e2ffcd87f4c469be7194e48f84874.mediatailor.us-west-2.amazonaws.com/v1/master/ba62fe743df0fe93366eba3a257d792884136c7f/LINEAR-802-UK-SONYONECOMEDYHITS-LG_UK/playlist.m3u8$LR•IPV4•27『线路25』 #EXTINF:-1 tvg-id="HITS" tvg-name="HITS" group-title="🍹定制P3P☕️",HITS -https://d726x48n2pd5h.cloudfront.net/XITE_Hits.m3u8$LR•IPV4•27『线路26』 +http://37.27.111.214:8080/live/28/hls.m3u8$LR•IPV4•27『线路26』 #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•27『线路27』 +p3p://167.114.175.6:55331/6233e648000735057db6cf734adf440d$LR•IPV4•27『线路27』 #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☕️",中旺电视 @@ -3560,11 +3540,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 -p3p://167.114.175.6:55331/644faccf000c7b6368730354764b17ed$LR•IPV4•4『线路2』 +https://stream8.cinerama.uz/1274/tracks-v1a1/mono.m3u8$LR•IPV4•4『线路2』 #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『线路3』 +https://channels.trace.plus/Traceprod/TRACE_SPORT_STARS_sd/index.m3u8$LR•IPV4•4『线路3』 #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『线路4』 +p3p://167.114.175.6:55331/644faccf000c7b6368730354764b17ed$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☕️",爱尔达娱乐 @@ -3592,9 +3572,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 -p3p://167.114.175.6:55331/6452bcb000039d52746907f4476f5e7b$LR•IPV4•2『线路1』 +https://test.946985.filegear-sg.me/proxy/749755700e4ed9c6$LR•IPV4•2『线路1』 #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『线路2』 +p3p://167.114.175.6:55331/6452bcb000039d52746907f4476f5e7b$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 @@ -3612,17 +3592,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 -p3p://167.114.175.6:55331/64e367a800053465a982145d191f168f$LR•IPV4•4『线路1』 +https://raw.githubusercontent.com/Sibprod/streams/main/ressources/dm/py/hls/bsmart.m3u8$LR•IPV4•4『线路1』 #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『线路2』 +https://amg16109-shgliving-amg16109c1-klowdtv-us-2235.playouts.now.amagi.tv/playlist/amg16109-shglivingnetwork-smarthealthygreenliving-klowdtvus/playlist.m3u8$LR•IPV4•4『线路2』 #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『线路3』 +https://brightstar-sls-pull-secure.akamaized.net/brightstarsls/stream.m3u8$LR•IPV4•4『线路3』 #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『线路4』 +p3p://167.114.175.6:55331/64e367a800053465a982145d191f168f$LR•IPV4•4『线路4』 #EXTINF:-1 tvg-id="CMUSIC" tvg-name="CMUSIC" group-title="🍹定制P3P☕️",CMUSIC -p3p://167.114.175.6:55331/64e368dc000e5b23a986c9d62f9604df$LR•IPV4•2『线路1』 +https://lotus.stingray.com/manifest/cmusic-cme004-montreal/samsungtvplus/master.m3u8$LR•IPV4•2『线路1』 #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『线路2』 +p3p://167.114.175.6:55331/64e368dc000e5b23a986c9d62f9604df$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☕️",台湾戏剧 @@ -3638,19 +3618,19 @@ p3p://167.114.175.6:55331/64bbca22000912200ec3b2631bca27c7$LR•IPV4 #EXTINF:-1 tvg-id="凤凰美洲" tvg-name="凤凰美洲" group-title="🍹定制P3P☕️",凤凰美洲 p3p://167.114.175.6:55331/5fe00fca0004e627722fbe5a480a642f$LR•IPV4 #EXTINF:-1 tvg-id="Red Bull TV" tvg-name="Red Bull TV" group-title="💓英语频道",Red Bull TV -http://rbmn-live.akamaized.net/hls/live/590964/BoRB-AT/master_6660.m3u8$LR•IPV4•7『线路1』 +https://3ea22335.wurl.com/master/f36d25e7e52f1ba8d7e56eb859c636563214f541/UmFrdXRlblRWLWdiX1JlZEJ1bGxUVl9ITFM/playlist.m3u8$LR•IPV4•7『线路1』 #EXTINF:-1 tvg-id="Red Bull TV" tvg-name="Red Bull TV" group-title="💓英语频道",Red Bull TV -https://3ea22335.wurl.com/master/f36d25e7e52f1ba8d7e56eb859c636563214f541/UmFrdXRlblRWLWdiX1JlZEJ1bGxUVl9ITFM/playlist.m3u8$LR•IPV4•7『线路2』 +https://rbmn-live.akamaized.net/hls/live/590964/BoRB-AT/master.m3u8$LR•IPV4•7『线路2』 #EXTINF:-1 tvg-id="Red Bull TV" tvg-name="Red Bull TV" group-title="💓英语频道",Red Bull TV -https://rbmn-live.akamaized.net/hls/live/590964/BoRB-AT/master.m3u8$LR•IPV4•7『线路3』 +https://db34cc6127ac459db55cab5f97cd66b9.mediatailor.us-west-2.amazonaws.com/v1/master/ba62fe743df0fe93366eba3a257d792884136c7f/LINEAR-680-WORBAUENFAST-WHALETVPLUS/680/whaletvplus/hls/master/playlist.m3u8$LR•IPV4•7『线路3』 #EXTINF:-1 tvg-id="Red Bull TV" tvg-name="Red Bull TV" group-title="💓英语频道",Red Bull TV -https://db34cc6127ac459db55cab5f97cd66b9.mediatailor.us-west-2.amazonaws.com/v1/master/ba62fe743df0fe93366eba3a257d792884136c7f/LINEAR-680-WORBAUENFAST-WHALETVPLUS/680/whaletvplus/hls/master/playlist.m3u8$LR•IPV4•7『线路4』 +https://d03ae6b5c6724c24867e97a3dc04934a.mediatailor.us-west-2.amazonaws.com/v1/master/ba62fe743df0fe93366eba3a257d792884136c7f/LINEAR-1026-WORBBRPTFAST-WHALETVPLUS/1026/hls/master/playlist.m3u8$LR•IPV4•7『线路4』 #EXTINF:-1 tvg-id="Red Bull TV" tvg-name="Red Bull TV" group-title="💓英语频道",Red Bull TV -https://d03ae6b5c6724c24867e97a3dc04934a.mediatailor.us-west-2.amazonaws.com/v1/master/ba62fe743df0fe93366eba3a257d792884136c7f/LINEAR-1026-WORBBRPTFAST-WHALETVPLUS/1026/hls/master/playlist.m3u8$LR•IPV4•7『线路5』 +https://46cfeb23c7f74853bba7a256655a3119.mediatailor.us-west-2.amazonaws.com/v1/master/ba62fe743df0fe93366eba3a257d792884136c7f/LINEAR-582-WORBDACHDEFAST-WHALETVPLUS/582/whaletvplus/hls/master/playlist.m3u8$LR•IPV4•7『线路5』 #EXTINF:-1 tvg-id="Red Bull TV" tvg-name="Red Bull TV" group-title="💓英语频道",Red Bull TV -https://46cfeb23c7f74853bba7a256655a3119.mediatailor.us-west-2.amazonaws.com/v1/master/ba62fe743df0fe93366eba3a257d792884136c7f/LINEAR-582-WORBDACHDEFAST-WHALETVPLUS/582/whaletvplus/hls/master/playlist.m3u8$LR•IPV4•7『线路6』 +https://886bd3fbc782459f8de7555d32d7e9ce.mediatailor.us-west-2.amazonaws.com/v1/master/ba62fe743df0fe93366eba3a257d792884136c7f/LINEAR-957-WORBLATAMESFAST-WHALETVPLUS/957/whaletvplus/hls/master/playlist.m3u8$LR•IPV4•7『线路6』 #EXTINF:-1 tvg-id="Red Bull TV" tvg-name="Red Bull TV" group-title="💓英语频道",Red Bull TV -https://886bd3fbc782459f8de7555d32d7e9ce.mediatailor.us-west-2.amazonaws.com/v1/master/ba62fe743df0fe93366eba3a257d792884136c7f/LINEAR-957-WORBLATAMESFAST-WHALETVPLUS/957/whaletvplus/hls/master/playlist.m3u8$LR•IPV4•7『线路7』 +http://rbmn-live.akamaized.net/hls/live/590964/BoRB-AT/master_6660.m3u8$LR•IPV4•7『线路7』 #EXTINF:-1 tvg-id="FRANCE24 English" tvg-name="FRANCE24 English" group-title="💓英语频道",FRANCE24 English http://aktv.top/AKTV/live/aktv3/france24/AKTV.m3u8$LR•IPV4 #EXTINF:-1 tvg-id="BAND NEWS" tvg-name="BAND NEWS" group-title="💓英语频道",BAND NEWS @@ -3684,199 +3664,195 @@ http://101.43.145.141:12002/itv/3000000010000015686.m3u8?cdn=FifastbLive$LR•IP #EXTINF:-1 tvg-id="CCTV兵器" tvg-name="CCTV兵器" group-title="🌐央视频道",CCTV兵器 http://38.75.136.137:98/gslb/dsdqpub/gfjs.m3u8?auth=testpub$LR•IPV4 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -https://live-play-hls.cctvnews.cctv.com/CCTVChannel/channel_cctv4_mbd.m3u8?auth_key=1784329200-1-b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c-2245971645866ed95972e22af68cc8d1&yid=b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c$LR•IPV4•90『线路1』 +http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226895/1.m3u8?$LR•IPV6•89『线路1』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://183.196.25.171:808/hls/77/index.m3u8$LR•IPV4•90『线路2』 +http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226893/1.m3u8?$LR•IPV6•89『线路2』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -https://jsv-live-play.sfccn.com/live/jsv_3920_fhd.m3u8$LR•IPV4•90『线路3』 +http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226471/1.m3u8?$LR•IPV6•89『线路3』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://183.196.25.171:808/hls/11/index.m3u8$LR•IPV4•90『线路4』 +http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226335/1.m3u8?$LR•IPV6•89『线路4』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://183.196.25.171:808/hls/93/index.m3u8$LR•IPV4•90『线路5』 +http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226469/1.m3u8?$LR•IPV6•89『线路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=1784271600-1-b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c-6aec44040ec72def77e22587fc404005&yid=b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c$LR•IPV4•90『线路6』 +http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226468/1.m3u8?$LR•IPV6•89『线路6』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226895/1.m3u8?$LR•IPV6•90『线路7』 +http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226946/1.m3u8?$LR•IPV6•89『线路7』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226893/1.m3u8?$LR•IPV6•90『线路8』 +http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226485/1.m3u8?$LR•IPV6•89『线路8』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226471/1.m3u8?$LR•IPV6•90『线路9』 +http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226944/1.m3u8?$LR•IPV6•89『线路9』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226335/1.m3u8?$LR•IPV6•90『线路10』 +http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226937/1.m3u8?$LR•IPV6•89『线路10』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226469/1.m3u8?$LR•IPV6•90『线路11』 +http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226334/1.m3u8?$LR•IPV6•89『线路11』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226468/1.m3u8?$LR•IPV6•90『线路12』 +http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226942/1.m3u8?$LR•IPV6•89『线路12』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226946/1.m3u8?$LR•IPV6•90『线路13』 +http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226316/1.m3u8?$LR•IPV6•89『线路13』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226485/1.m3u8?$LR•IPV6•90『线路14』 +http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226947/1.m3u8?$LR•IPV6•89『线路14』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226944/1.m3u8?$LR•IPV6•90『线路15』 +http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226333/1.m3u8?$LR•IPV6•89『线路15』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226937/1.m3u8?$LR•IPV6•90『线路16』 +http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221227002/1.m3u8?$LR•IPV6•89『线路16』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226334/1.m3u8?$LR•IPV6•90『线路17』 +http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226318/1.m3u8?$LR•IPV6•89『线路17』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226942/1.m3u8?$LR•IPV6•90『线路18』 +http://222.223.41.27:8888/hls/2/index.m3u8$LR•IPV4•89『线路18』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226316/1.m3u8?$LR•IPV6•90『线路19』 +http://116.128.243.121:85/tsfile/live/0002_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•89『线路19』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226947/1.m3u8?$LR•IPV6•90『线路20』 +http://63.141.230.178:82/gslb/zbdq5.m3u8?id=cctv3hd$LR•IPV4•89『线路20』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226333/1.m3u8?$LR•IPV6•90『线路21』 +http://207.56.13.146:81/cdnlive/cctv3.m3u8$LR•IPV4•89『线路21』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221227002/1.m3u8?$LR•IPV6•90『线路22』 +http://63.141.230.178:82/gslb/zbdq5.m3u8?id=cctv4hd$LR•IPV4•89『线路22』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226318/1.m3u8?$LR•IPV6•90『线路23』 +http://74.91.26.218:82/live/cctv4hd.m3u8$LR•IPV4•89『线路23』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://222.223.41.27:8888/hls/2/index.m3u8$LR•IPV4•90『线路24』 +http://207.56.13.146:81/cdnlive/cctv4.m3u8$LR•IPV4•89『线路24』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://116.128.243.121:85/tsfile/live/0002_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•90『线路25』 +http://38.75.136.137:98/gslb/dsdqbv/cctv5p.m3u8?auth=test20251009$LR•IPV4•89『线路25』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://63.141.230.178:82/gslb/zbdq5.m3u8?id=cctv3hd$LR•IPV4•90『线路26』 +http://204.12.221.218:8181/3m1080p/cctv6.m3u8$LR•IPV4•89『线路26』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://207.56.13.146:81/cdnlive/cctv3.m3u8$LR•IPV4•90『线路27』 +http://207.56.13.146:81/cdnlive/cctv6.m3u8$LR•IPV4•89『线路27』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://63.141.230.178:82/gslb/zbdq5.m3u8?id=cctv4hd$LR•IPV4•90『线路28』 +http://74.91.26.218:82/live/cctv7hd.m3u8$LR•IPV4•89『线路28』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://74.91.26.218:82/live/cctv4hd.m3u8$LR•IPV4•90『线路29』 +http://38.75.136.137:98/gslb/dsdqbv/cctv7hd.m3u8?auth=test20251009$LR•IPV4•89『线路29』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://207.56.13.146:81/cdnlive/cctv4.m3u8$LR•IPV4•90『线路30』 +http://192.151.150.154/live/cctv8k.m3u8$LR•IPV4•89『线路30』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://38.75.136.137:98/gslb/dsdqbv/cctv5p.m3u8?auth=test20251009$LR•IPV4•90『线路31』 +http://207.56.13.146:81/cdnlive/cctv8.m3u8$LR•IPV4•89『线路31』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://204.12.221.218:8181/3m1080p/cctv6.m3u8$LR•IPV4•90『线路32』 +http://173.208.212.130:8181/720p/cctv8.m3u8$LR•IPV4•89『线路32』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://207.56.13.146:81/cdnlive/cctv6.m3u8$LR•IPV4•90『线路33』 +http://38.75.136.137:98/gslb/dsdqbv/cctv8hd.m3u8?auth=test20251009$LR•IPV4•89『线路33』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://74.91.26.218:82/live/cctv7hd.m3u8$LR•IPV4•90『线路34』 +http://204.12.221.218:8181/3m1080p/cctv8.m3u8$LR•IPV4•89『线路34』 #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•90『线路35』 +http://69.30.245.50/live/cctv8.m3u8$LR•IPV4•89『线路35』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://192.151.150.154/live/cctv8k.m3u8$LR•IPV4•90『线路36』 +http://222.223.41.27:8888/hls/9/index.m3u8$LR•IPV4•89『线路36』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://207.56.13.146:81/cdnlive/cctv8.m3u8$LR•IPV4•90『线路37』 +https://hwapi.yntv.net/ew265l/z1z6s5.m3u8$LR•IPV4•89『线路37』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://173.208.212.130:8181/720p/cctv8.m3u8$LR•IPV4•90『线路38』 +http://74.91.26.218:82/live/cctv10hd.m3u8$LR•IPV4•89『线路38』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://38.75.136.137:98/gslb/dsdqbv/cctv8hd.m3u8?auth=test20251009$LR•IPV4•90『线路39』 +http://74.91.26.218:82/live/cctv11hd.m3u8$LR•IPV4•89『线路39』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://204.12.221.218:8181/3m1080p/cctv8.m3u8$LR•IPV4•90『线路40』 +http://38.75.136.137:98/gslb/dsdqpub/cctv12hd.m3u8?auth=testpub$LR•IPV4•89『线路40』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://69.30.245.50/live/cctv8.m3u8$LR•IPV4•90『线路41』 +https://event.pull.hebtv.com/jishi/cp1.m3u8$LR•IPV4•89『线路41』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://222.223.41.27:8888/hls/9/index.m3u8$LR•IPV4•90『线路42』 +http://pull-hls-f1.douyinliving.com/media/stream-696107587393815378/playlist.m3u8?keeptime=00093a80&wsSecret=bbbd054778ab532edfa97bf7c5395746&wsTime=6a544fee&arch_hrchy=s2&s_anchor=1&major_anchor_level=vip&t_id=037-2026071310394131FD5A22CCB9DDAFA77E-5XIF43$LR•IPV4•89『线路42』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -https://hwapi.yntv.net/ew265l/z1z6s5.m3u8$LR•IPV4•90『线路43』 +http://63.141.230.178:82/gslb/zbdq5.m3u8?id=cctv13hd$LR•IPV4•89『线路43』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://74.91.26.218:82/live/cctv10hd.m3u8$LR•IPV4•90『线路44』 +http://113.25.252.226:9901/tsfile/live/1017_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•89『线路44』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://74.91.26.218:82/live/cctv11hd.m3u8$LR•IPV4•90『线路45』 +https://event.pull.hebtv.com/jishi/cp2.m3u8$LR•IPV4•89『线路45』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://38.75.136.137:98/gslb/dsdqpub/cctv12hd.m3u8?auth=testpub$LR•IPV4•90『线路46』 +http://38.75.136.137:98/gslb/dsdqbv/cctv15hd.m3u8?auth=test20251009$LR•IPV4•89『线路46』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -https://event.pull.hebtv.com/jishi/cp1.m3u8$LR•IPV4•90『线路47』 +http://38.75.136.137:98/gslb/dsdqpub/cctv15hd.m3u8?auth=testpub$LR•IPV4•89『线路47』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://pull-hls-f1.douyinliving.com/media/stream-696107587393815378/playlist.m3u8?keeptime=00093a80&wsSecret=bbbd054778ab532edfa97bf7c5395746&wsTime=6a544fee&arch_hrchy=s2&s_anchor=1&major_anchor_level=vip&t_id=037-2026071310394131FD5A22CCB9DDAFA77E-5XIF43$LR•IPV4•90『线路48』 +http://38.75.136.137:98/gslb/dsdqpub/cctv17hd.m3u8?auth=testpub$LR•IPV4•89『线路48』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://63.141.230.178:82/gslb/zbdq5.m3u8?id=cctv13hd$LR•IPV4•90『线路49』 +https://live-play-hls.cctvnews.cctv.com/CCTVChannel/channel_cctv4_mbd.m3u8?auth_key=1784332800-1-b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c-1f6c18588a391e749b10db985cd21620&yid=b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c$LR•IPV4•89『线路49』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://113.25.252.226:9901/tsfile/live/1017_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•90『线路50』 +https://shcm-stream-cf1.stream.264788.xyz/cms001/ch00000090990000001620/index.m3u8?streamid=8a034b40397504e25b3775c772237996&streamkey=01vY5fRxC8VyKg4oq30vfikHXTCAKySLP29l6OG91kQlzDttHgzNLkUw5kivm3PfNsVHJv5FgdsPBYFYI2IWpt7tfRCuFHqLT2pvX67ubMds8jl2DHtvOh0&token=1775754349-4f33f4f84a4abeba-0-91687dc8c9325092efa1d00f330d2710$LR•IPV4•89『线路50』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -https://event.pull.hebtv.com/jishi/cp2.m3u8$LR•IPV4•90『线路51』 +https://epg.pw/stream/ac8062ec9484078061d3bef507c15a423ac57ae4144e3fcc4b0a198dd420f911.m3u8$LR•IPV4•89『线路51』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://38.75.136.137:98/gslb/dsdqbv/cctv15hd.m3u8?auth=test20251009$LR•IPV4•90『线路52』 +https://live-play-hls.cctvnews.cctv.com/CCTVChannel/channel_cctv4_mbd.m3u8?auth_key=1784336400-1-b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c-49830e80d2c0d40fea8492a5581b9b73&yid=b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c$LR•IPV4•89『线路52』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://38.75.136.137:98/gslb/dsdqpub/cctv15hd.m3u8?auth=testpub$LR•IPV4•90『线路53』 +http://183.196.25.171:808/hls/77/index.m3u8$LR•IPV4•89『线路53』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://38.75.136.137:98/gslb/dsdqpub/cctv17hd.m3u8?auth=testpub$LR•IPV4•90『线路54』 +http://183.196.25.171:808/hls/11/index.m3u8$LR•IPV4•89『线路54』 #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=1784322000-1-b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c-25fe408e6545f49f3d4eb7f92e97c764&yid=b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c$LR•IPV4•90『线路55』 +http://183.196.25.171:808/hls/93/index.m3u8$LR•IPV4•89『线路55』 #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•90『线路56』 +https://live-play-hls.cctvnews.cctv.com/CCTVChannel/channel_cctv4_mbd.m3u8?auth_key=1784271600-1-b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c-6aec44040ec72def77e22587fc404005&yid=b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c$LR•IPV4•89『线路56』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -https://epg.pw/stream/ac8062ec9484078061d3bef507c15a423ac57ae4144e3fcc4b0a198dd420f911.m3u8$LR•IPV4•90『线路57』 +http://69.30.245.50/live/cctv6.m3u8$LR•IPV4•89『线路57』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://69.30.245.50/live/cctv6.m3u8$LR•IPV4•90『线路58』 +http://38.75.136.137:98/gslb/dsdqpub/fyjc.m3u8?auth=testpub$LR•IPV4•89『线路58』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://74.91.26.218:82/live/cctv8hd.m3u8$LR•IPV4•90『线路59』 +http://38.75.136.137:98/gslb/dsdqpub/dyjc.m3u8?auth=testpub$LR•IPV4•89『线路59』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://74.91.26.218:82/live/cctv17hd.m3u8$LR•IPV4•90『线路60』 +http://69.30.245.50/live/cctv1.m3u8$LR•IPV4•89『线路60』 #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•90『线路61』 +http://74.91.26.218:82/live/cctv1hd.m3u8$LR•IPV4•89『线路61』 #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•90『线路62』 +https://global.cgtn.cicc.media.caton.cloud/master/cgtn-america.m3u8$LR•IPV4•89『线路62』 #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•90『线路63』 +https://dash2.antik.sk/live/test_cctv_tizen/playlist.m3u8$LR•IPV4•89『线路63』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://38.75.136.137:98/gslb/dsdqpub/fyjc.m3u8?auth=testpub$LR•IPV4•90『线路64』 +http://go.bkpcp.top/mg/cctv13$LR•IPV4•89『线路64』 #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•90『线路65』 +https://cdn3.163189.xyz/163189/cctv13$LR•IPV4•89『线路65』 #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•90『线路66』 +http://74.91.26.218:82/live/cctv8hd.m3u8$LR•IPV4•89『线路66』 #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•90『线路67』 +http://74.91.26.218:82/live/cctv3hd.m3u8$LR•IPV4•89『线路67』 #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•90『线路68』 +http://38.75.136.137:98/gslb/dsdqpub/ysjp.m3u8?auth=testpub$LR•IPV4•89『线路68』 #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•90『线路69』 +https://solo.disfrutaenlared.com:1936/redcctv/redcctv/playlist.m3u8$LR•IPV4•89『线路69』 #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•90『线路70』 +http://74.91.26.218:82/live/cctv14hd.m3u8$LR•IPV4•89『线路70』 #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•90『线路71』 +https://xykt-fix.github.io/play/a02e/index.m3u8$LR•IPV4•89『线路71』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://fn.tmde.top:35455/nptv/cctv4k.m3u8$LR•IPV4•90『线路72』 +http://38.75.136.137:98/gslb/dsdqpub/fyyy.m3u8?auth=testpub$LR•IPV4•89『线路72』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://fn.tmde.top:35455/nptv/cctv8k.m3u8$LR•IPV4•90『线路73』 +http://74.91.26.218:82/live/cctv12hd.m3u8$LR•IPV4•89『线路73』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://xc.mfykeke.top:35455/nptv/cctv4k.m3u8$LR•IPV4•90『线路74』 +http://38.75.136.137:98/gslb/dsdqpub/wsjk.m3u8?auth=testpub$LR•IPV4•89『线路74』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://xc.mfykeke.top:35455/nptv/cctv8k.m3u8$LR•IPV4•90『线路75』 +http://38.75.136.137:98/gslb/dsdqpub/nxss.m3u8?auth=testpub$LR•IPV4•89『线路75』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://69.30.245.50/live/cctv1.m3u8$LR•IPV4•90『线路76』 +http://38.75.136.137:98/gslb/dsdqpub/hjjc.m3u8?auth=testpub$LR•IPV4•89『线路76』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://74.91.26.218:82/live/cctv1hd.m3u8$LR•IPV4•90『线路77』 +http://74.91.26.218:82/live/cctv16hd.m3u8$LR•IPV4•89『线路77』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -https://global.cgtn.cicc.media.caton.cloud/master/cgtn-america.m3u8$LR•IPV4•90『线路78』 +http://38.75.136.137:98/gslb/dsdqpub/ystq.m3u8?auth=testpub$LR•IPV4•89『线路78』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -https://dash2.antik.sk/live/test_cctv_tizen/playlist.m3u8$LR•IPV4•90『线路79』 +http://38.75.136.137:98/gslb/dsdqpub/gefwq.m3u8?auth=testpub$LR•IPV4•89『线路79』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://go.bkpcp.top/mg/cctv13$LR•IPV4•90『线路80』 +http://38.75.136.137:98/gslb/dsdqpub/fyzq.m3u8?auth=testpub$LR•IPV4•89『线路80』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -https://cdn3.163189.xyz/163189/cctv13$LR•IPV4•90『线路81』 +http://74.91.26.218:82/live/cctv2hd.m3u8$LR•IPV4•89『线路81』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://74.91.26.218:82/live/cctv3hd.m3u8$LR•IPV4•90『线路82』 +https://xykt-fix.github.io/Y77.m3u8$LR•IPV4•89『线路82』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -https://solo.disfrutaenlared.com:1936/redcctv/redcctv/playlist.m3u8$LR•IPV4•90『线路83』 +http://38.75.136.137:98/gslb/dsdqpub/sjdl.m3u8?auth=testpub$LR•IPV4•89『线路83』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://74.91.26.218:82/live/cctv14hd.m3u8$LR•IPV4•90『线路84』 +http://74.91.26.218:82/live/cctv17hd.m3u8$LR•IPV4•89『线路84』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -https://xykt-fix.github.io/play/a02e/index.m3u8$LR•IPV4•90『线路85』 +http://38.75.136.137:98/gslb/dsdqpub/dszn.m3u8?auth=testpub$LR•IPV4•89『线路85』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://74.91.26.218:82/live/cctv12hd.m3u8$LR•IPV4•90『线路86』 +http://fn.tmde.top:35455/nptv/cctv4k.m3u8$LR•IPV4•89『线路86』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://74.91.26.218:82/live/cctv16hd.m3u8$LR•IPV4•90『线路87』 +http://fn.tmde.top:35455/nptv/cctv8k.m3u8$LR•IPV4•89『线路87』 #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•90『线路88』 +http://xc.mfykeke.top:35455/nptv/cctv4k.m3u8$LR•IPV4•89『线路88』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://74.91.26.218:82/live/cctv2hd.m3u8$LR•IPV4•90『线路89』 -#EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -https://xykt-fix.github.io/Y77.m3u8$LR•IPV4•90『线路90』 +http://xc.mfykeke.top:35455/nptv/cctv8k.m3u8$LR•IPV4•89『线路89』 #EXTINF:-1 tvg-id="周星星" tvg-name="周星星" group-title="明星",周星星 http://live.metshop.top/huya/11336587?cdn=alicdn$LR•IPV4 -#EXTINF:-1 tvg-id="周星驰" tvg-name="周星驰" group-title="明星",周星驰 -http://cdn.jdshipin.com:8880/huya.php?id=11342412$LR•IPV4 #EXTINF:-1 tvg-id="梁家辉" tvg-name="梁家辉" group-title="明星",梁家辉 http://live.metshop.top/huya/11342429?cdn=alicdn$LR•IPV4 #EXTINF:-1 tvg-id="刘德华" tvg-name="刘德华" group-title="明星",刘德华 -http://live.metshop.top/huya/11342424?cdn=alicdn$LR•IPV4•2『线路1』 +http://epg.112114.xyz/douyu/2516864$LR•IPV4•2『线路1』 #EXTINF:-1 tvg-id="刘德华" tvg-name="刘德华" group-title="明星",刘德华 -http://epg.112114.xyz/douyu/2516864$LR•IPV4•2『线路2』 +http://live.metshop.top/huya/11342424?cdn=alicdn$LR•IPV4•2『线路2』 #EXTINF:-1 tvg-id="林正英" tvg-name="林正英" group-title="明星",林正英 -http://zzy789.xyz/douyu1.php?id=7356023$LR•IPV4•2『线路1』 +http://epg.112114.xyz/douyu/218859$LR•IPV4•2『线路1』 #EXTINF:-1 tvg-id="林正英" tvg-name="林正英" group-title="明星",林正英 -http://epg.112114.xyz/douyu/218859$LR•IPV4•2『线路2』 +http://zzy789.xyz/douyu1.php?id=7356023$LR•IPV4•2『线路2』 #EXTINF:-1 tvg-id="谍战片" tvg-name="谍战片" group-title="主题片",谍战片 http://live.metshop.top/huya/21059587?cdn=alicdn$LR•IPV4 #EXTINF:-1 tvg-id="战争片" tvg-name="战争片" group-title="主题片",战争片 @@ -4208,37 +4184,37 @@ http://play-sh13.quklive.com/live/1699001836208185.m3u8?auth_key=2027429324-c77b #EXTINF:-1 tvg-id="浙江新闻" tvg-name="浙江新闻" group-title="浙江",浙江新闻 https://ali-m-l.cztv.com/channels/lantian/channel007/1080p.m3u8$LR•IPV4•34『线路1』 #EXTINF:-1 tvg-id="浙江新闻" tvg-name="浙江新闻" group-title="浙江",浙江新闻 -https://ali-m-l.cztv.com/channels/lantian/channel007/1080p.m3u8?$LR•IPV4•34『线路2』 +http://ali-m-l.cztv.com/channels/lantian/channel007/720p.m3u8$LR•IPV4•34『线路2』 #EXTINF:-1 tvg-id="浙江新闻" tvg-name="浙江新闻" group-title="浙江",浙江新闻 -http://ali-m-l.cztv.com/channels/lantian/channel007/720p.m3u8$LR•IPV4•34『线路3』 +https://stream1.freetv.fun/zhe-jiang-xin-wen-11.m3u8$LR•IPV4•34『线路3』 #EXTINF:-1 tvg-id="浙江新闻" tvg-name="浙江新闻" group-title="浙江",浙江新闻 -https://stream1.freetv.fun/zhe-jiang-xin-wen-11.m3u8$LR•IPV4•34『线路4』 +http://ali-xwl.cztv.com/live/channel07720Plxw.m3u8$LR•IPV4•34『线路4』 #EXTINF:-1 tvg-id="浙江新闻" tvg-name="浙江新闻" group-title="浙江",浙江新闻 -http://ali-xwl.cztv.com/live/channel07720Plxw.m3u8$LR•IPV4•34『线路5』 +https://stream1.freetv.fun/zhe-jiang-xin-wen-6.m3u8$LR•IPV4•34『线路5』 #EXTINF:-1 tvg-id="浙江新闻" tvg-name="浙江新闻" group-title="浙江",浙江新闻 -https://stream1.freetv.fun/zhe-jiang-xin-wen-6.m3u8$LR•IPV4•34『线路6』 +https://stream1.freetv.fun/zhe-jiang-xin-wen-4.m3u8$LR•IPV4•34『线路6』 #EXTINF:-1 tvg-id="浙江新闻" tvg-name="浙江新闻" group-title="浙江",浙江新闻 -https://stream1.freetv.fun/zhe-jiang-xin-wen-4.m3u8$LR•IPV4•34『线路7』 +https://stream1.freetv.fun/zhe-jiang-xin-wen-3.m3u8$LR•IPV4•34『线路7』 #EXTINF:-1 tvg-id="浙江新闻" tvg-name="浙江新闻" group-title="浙江",浙江新闻 -https://stream1.freetv.fun/zhe-jiang-xin-wen-3.m3u8$LR•IPV4•34『线路8』 +https://stream1.freetv.fun/zhe-jiang-xin-wen-1.m3u8$LR•IPV4•34『线路8』 #EXTINF:-1 tvg-id="浙江新闻" tvg-name="浙江新闻" group-title="浙江",浙江新闻 -https://stream1.freetv.fun/zhe-jiang-xin-wen-1.m3u8$LR•IPV4•34『线路9』 +https://t.freetv.fun/live/zhe-jiang-xin-wen-2.m3u8$LR•IPV4•34『线路9』 #EXTINF:-1 tvg-id="浙江新闻" tvg-name="浙江新闻" group-title="浙江",浙江新闻 -https://t.freetv.fun/live/zhe-jiang-xin-wen-2.m3u8$LR•IPV4•34『线路10』 +https://stream1.freetv.fun/zhe-jiang-xin-wen-2.m3u8$LR•IPV4•34『线路10』 #EXTINF:-1 tvg-id="浙江新闻" tvg-name="浙江新闻" group-title="浙江",浙江新闻 -https://stream1.freetv.fun/zhe-jiang-xin-wen-2.m3u8$LR•IPV4•34『线路11』 +https://t.freetv.fun/live/zhe-jiang-xin-wen-3.m3u8$LR•IPV4•34『线路11』 #EXTINF:-1 tvg-id="浙江新闻" tvg-name="浙江新闻" group-title="浙江",浙江新闻 -https://t.freetv.fun/live/zhe-jiang-xin-wen-3.m3u8$LR•IPV4•34『线路12』 +http://ali-xwl.cztv.com/live/channel071080Plxw.m3u8$LR•IPV4•34『线路12』 #EXTINF:-1 tvg-id="浙江新闻" tvg-name="浙江新闻" group-title="浙江",浙江新闻 -http://ali-xwl.cztv.com/live/channel071080Plxw.m3u8$LR•IPV4•34『线路13』 +https://ali-m-l.cztv.com/channels/lantian/channel07/720p.m3u8$LR•IPV4•34『线路13』 #EXTINF:-1 tvg-id="浙江新闻" tvg-name="浙江新闻" group-title="浙江",浙江新闻 -https://ali-m-l.cztv.com/channels/lantian/channel07/720p.m3u8$LR•IPV4•34『线路14』 +https://stream1.freetv.fun/7fa07158e038a9bae3747a0cb9f8e8ff1aaba32669d28d99a498716f16569c1d.m3u8$LR•IPV4•34『线路14』 #EXTINF:-1 tvg-id="浙江新闻" tvg-name="浙江新闻" group-title="浙江",浙江新闻 -https://stream1.freetv.fun/7fa07158e038a9bae3747a0cb9f8e8ff1aaba32669d28d99a498716f16569c1d.m3u8$LR•IPV4•34『线路15』 +https://stream1.freetv.fun/zhe-jiang-xin-wen-9.m3u8$LR•IPV4•34『线路15』 #EXTINF:-1 tvg-id="浙江新闻" tvg-name="浙江新闻" group-title="浙江",浙江新闻 -https://stream1.freetv.fun/zhe-jiang-xin-wen-9.m3u8$LR•IPV4•34『线路16』 +https://stream1.freetv.fun/zhe-jiang-xin-wen-7.m3u8$LR•IPV4•34『线路16』 #EXTINF:-1 tvg-id="浙江新闻" tvg-name="浙江新闻" group-title="浙江",浙江新闻 -https://stream1.freetv.fun/zhe-jiang-xin-wen-7.m3u8$LR•IPV4•34『线路17』 +https://ali-m-l.cztv.com/channels/lantian/channel007/1080p.m3u8?$LR•IPV4•34『线路17』 #EXTINF:-1 tvg-id="浙江新闻" tvg-name="浙江新闻" group-title="浙江",浙江新闻 http://ali-m-l.cztv.com/channels/lantian/channel007/1080p.m3u8?zzhed$LR•IPV4•34『线路18』 #EXTINF:-1 tvg-id="浙江新闻" tvg-name="浙江新闻" group-title="浙江",浙江新闻 @@ -4390,39 +4366,39 @@ http://ali-xwl.cztv.com/live/channel04720Plxw.m3u8$LR•IPV4•8『线路7』 #EXTINF:-1 tvg-id="浙江教科" tvg-name="浙江教科" group-title="浙江",浙江教科 http://ali-m-l.cztv.com/channels/lantian/channel04/1080p.m3u8$LR•IPV4•8『线路8』 #EXTINF:-1 tvg-id="浙江钱江" tvg-name="浙江钱江" group-title="浙江",浙江钱江 -https://ali-m-l.cztv.com/channels/lantian/channel002/1080p.m3u8$LR•IPV4•19『线路1』 +http://l.cztvcloud.com/channels/lantian/SXyuyao2/720p.m3u8$LR•IPV4•19『线路1』 #EXTINF:-1 tvg-id="浙江钱江" tvg-name="浙江钱江" group-title="浙江",浙江钱江 -http://l.cztvcloud.com/channels/lantian/SXyuyao2/720p.m3u8$LR•IPV4•19『线路2』 +http://ali-m-l.cztv.com/channels/lantian/channel02/1080p.m3u8$LR•IPV4•19『线路2』 #EXTINF:-1 tvg-id="浙江钱江" tvg-name="浙江钱江" group-title="浙江",浙江钱江 -http://ali-m-l.cztv.com/channels/lantian/channel02/1080p.m3u8$LR•IPV4•19『线路3』 +https://stream1.freetv.fun/zhe-jiang-qian-jiang-du-shi-2.m3u8$LR•IPV4•19『线路3』 #EXTINF:-1 tvg-id="浙江钱江" tvg-name="浙江钱江" group-title="浙江",浙江钱江 -https://stream1.freetv.fun/zhe-jiang-qian-jiang-du-shi-2.m3u8$LR•IPV4•19『线路4』 +https://stream1.freetv.fun/zhe-jiang-qian-jiang-du-shi-4.ctv$LR•IPV4•19『线路4』 #EXTINF:-1 tvg-id="浙江钱江" tvg-name="浙江钱江" group-title="浙江",浙江钱江 -https://stream1.freetv.fun/zhe-jiang-qian-jiang-du-shi-4.ctv$LR•IPV4•19『线路5』 +https://ali-m-l.cztv.com/channels/lantian/channel002/1080p.m3u8\r\n$LR•IPV4•19『线路5』 #EXTINF:-1 tvg-id="浙江钱江" tvg-name="浙江钱江" group-title="浙江",浙江钱江 -https://ali-m-l.cztv.com/channels/lantian/channel002/1080p.m3u8\r\n$LR•IPV4•19『线路6』 +http://ali-xwl.cztv.com/live/channel021080Plxw.m3u8$LR•IPV4•19『线路6』 #EXTINF:-1 tvg-id="浙江钱江" tvg-name="浙江钱江" group-title="浙江",浙江钱江 -http://ali-xwl.cztv.com/live/channel021080Plxw.m3u8$LR•IPV4•19『线路7』 +https://stream1.freetv.fun/zhe-jiang-qian-jiang-du-shi-1.m3u8$LR•IPV4•19『线路7』 #EXTINF:-1 tvg-id="浙江钱江" tvg-name="浙江钱江" group-title="浙江",浙江钱江 -https://stream1.freetv.fun/zhe-jiang-qian-jiang-du-shi-1.m3u8$LR•IPV4•19『线路8』 +https://stream1.freetv.fun/bf079ada709563bdd095159c02dfb5afb53c24e643b73f987100b9d25e9c8f41.m3u8$LR•IPV4•19『线路8』 #EXTINF:-1 tvg-id="浙江钱江" tvg-name="浙江钱江" group-title="浙江",浙江钱江 -https://stream1.freetv.fun/bf079ada709563bdd095159c02dfb5afb53c24e643b73f987100b9d25e9c8f41.m3u8$LR•IPV4•19『线路9』 +http://api3.52tb.xyz/info?id=436&token=20230226bgyszp$LR•IPV4•19『线路9』 #EXTINF:-1 tvg-id="浙江钱江" tvg-name="浙江钱江" group-title="浙江",浙江钱江 -http://api3.52tb.xyz/info?id=436&token=20230226bgyszp$LR•IPV4•19『线路10』 +https://stream1.freetv.fun/zhe-jiang-qian-jiang-du-shi-5.ctv$LR•IPV4•19『线路10』 #EXTINF:-1 tvg-id="浙江钱江" tvg-name="浙江钱江" group-title="浙江",浙江钱江 -https://stream1.freetv.fun/zhe-jiang-qian-jiang-du-shi-5.ctv$LR•IPV4•19『线路11』 +https://stream1.freetv.fun/zhe-jiang-qian-jiang-du-shi-3.ctv$LR•IPV4•19『线路11』 #EXTINF:-1 tvg-id="浙江钱江" tvg-name="浙江钱江" group-title="浙江",浙江钱江 -https://stream1.freetv.fun/zhe-jiang-qian-jiang-du-shi-3.ctv$LR•IPV4•19『线路12』 +https://t.freetv.fun/live/zhe-jiang-qian-jiang-du-shi-3.m3u8$LR•IPV4•19『线路12』 #EXTINF:-1 tvg-id="浙江钱江" tvg-name="浙江钱江" group-title="浙江",浙江钱江 -https://t.freetv.fun/live/zhe-jiang-qian-jiang-du-shi-3.m3u8$LR•IPV4•19『线路13』 +http://120.55.49.231:3095/rtp/233.50.201.132:5140$LR•IPV4•19『线路13』 #EXTINF:-1 tvg-id="浙江钱江" tvg-name="浙江钱江" group-title="浙江",浙江钱江 -http://120.55.49.231:3095/rtp/233.50.201.132:5140$LR•IPV4•19『线路14』 +https://t.freetv.fun/live/zhe-jiang-qian-jiang-du-shi-1.m3u8$LR•IPV4•19『线路14』 #EXTINF:-1 tvg-id="浙江钱江" tvg-name="浙江钱江" group-title="浙江",浙江钱江 -https://t.freetv.fun/live/zhe-jiang-qian-jiang-du-shi-1.m3u8$LR•IPV4•19『线路15』 +https://t.freetv.fun/live/zhe-jiang-qian-jiang-du-shi-2.m3u8$LR•IPV4•19『线路15』 #EXTINF:-1 tvg-id="浙江钱江" tvg-name="浙江钱江" group-title="浙江",浙江钱江 -https://t.freetv.fun/live/zhe-jiang-qian-jiang-du-shi-2.m3u8$LR•IPV4•19『线路16』 +http://ali-xwl.cztv.com/live/channel02720Plxw.m3u8$LR•IPV4•19『线路16』 #EXTINF:-1 tvg-id="浙江钱江" tvg-name="浙江钱江" group-title="浙江",浙江钱江 -http://ali-xwl.cztv.com/live/channel02720Plxw.m3u8$LR•IPV4•19『线路17』 +http://ali-m-l.cztv.com/channels/lantian/channel002/1080p.m3u8$LR•IPV4•19『线路17』 #EXTINF:-1 tvg-id="浙江钱江" tvg-name="浙江钱江" group-title="浙江",浙江钱江 https://t.freetv.fun/live/zhe-jiang-qian-jiang-du-shi.m3u8$LR•IPV4•19『线路18』 #EXTINF:-1 tvg-id="浙江钱江" tvg-name="浙江钱江" group-title="浙江",浙江钱江 @@ -4861,3 +4837,9 @@ https://stream1.freetv.fun/shan-tou-jing-ji-4.ctv$LR•IPV4•11『线路10』 https://stream1.freetv.fun/shan-tou-jing-ji-6.ctv$LR•IPV4•11『线路11』 #EXTINF:-1 tvg-id="广东少儿" tvg-name="广东少儿" group-title="广东",广东少儿 http://gmxw.7766.org:808/hls/175/index.m3u8$LR•IPV4 +#EXTINF:-1 tvg-id="上海新闻" tvg-name="上海新闻" group-title="上海",上海新闻 +http://t.061899.xyz/tl/tl.php?id=shxwzh$LR•IPV4 +#EXTINF:-1 tvg-id="七彩戏剧" tvg-name="七彩戏剧" group-title="上海",七彩戏剧 +http://t.061899.xyz/tl/tl.php?id=qcxj$LR•IPV4 +#EXTINF:-1 tvg-id="法治天地" tvg-name="法治天地" group-title="上海",法治天地 +http://t.061899.xyz/tl/tl.php?id=fztd$LR•IPV4 diff --git a/cluntop_tvbox/lib/iptv_test.txt b/cluntop_tvbox/lib/iptv_test.txt index 594c2fbb..80c64a1e 100755 --- a/cluntop_tvbox/lib/iptv_test.txt +++ b/cluntop_tvbox/lib/iptv_test.txt @@ -1,7 +1,7 @@ 央视频道,#genre# -CCTV-4K,https://live-play-hls.cctvnews.cctv.com/CCTVChannel/channel_cctv4k_mbd.m3u8?auth_key=1784329200-1-b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c-81ad4aefc95ce528b3da1112f0bc9ff2&yid=b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c$LR•IPV4•3『线路1』 -CCTV-4K,https://live-play-hls.cctvnews.cctv.com/CCTVChannel/channel_cctv4k_mbd.m3u8?auth_key=1784322000-1-b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c-aa68fb06c12f53b71a4d170807f32df5&yid=b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c$LR•IPV4•3『线路2』 +CCTV-4K,https://live-play-hls.cctvnews.cctv.com/CCTVChannel/channel_cctv4k_mbd.m3u8?auth_key=1784332800-1-b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c-0240f422767495f3b4be3b54c6f0496a&yid=b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c$LR•IPV4•3『线路1』 +CCTV-4K,https://live-play-hls.cctvnews.cctv.com/CCTVChannel/channel_cctv4k_mbd.m3u8?auth_key=1784336400-1-b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c-c68beb1a091dd48540f9056f3e86c7c2&yid=b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c$LR•IPV4•3『线路2』 CCTV-4K,http://198.204.240.250:82/live/cctv4k.m3u8$LR•IPV4•3『线路3』 浙江频道,#genre# @@ -24,7 +24,7 @@ CCTV-4K,http://198.204.240.250:82/live/cctv4k.m3u8$LR•IPV4•3『线路3』 小草,https://i.uik.cc/view.php/0bb3de0276d838610d458fd3379b33a0.mp4$LR•IPV4 4K频道,#genre# -东方卫视4K,http://bp-resource-dfl.bestv.cn/148/3/video.m3u8$LR•IPV4•2『线路1』 +东方卫视4K,https://bp-resource-dfl.bestv.cn/148/3/video.m3u8$LR•IPV4•2『线路1』 东方卫视4K,http://43.251.226.89:8080/play/926.m3u8$LR•IPV4•2『线路2』 湖南卫视4K,http://8.138.7.223/tv/api.php?id=hnws4k$LR•IPV4•3『线路1』 湖南卫视4K,http://43.251.226.89:8080/play/920.m3u8$LR•IPV4•3『线路2』 @@ -50,10 +50,16 @@ CCTV-4K,http://198.204.240.250:82/live/cctv4k.m3u8$LR•IPV4•3『线路3』 深圳卫视4K,https://live.264788.xyz/channel/shenzhenweishi4k?streamid=9828b90c3948bae63cb8de76cdccd646&livekey=01WgOR41rriMmMkzNsd0UoaxJRwetZdxIvtVk$LR•IPV4•8『线路7』 深圳卫视4K,http://101.35.240.114:88/live.php?id=深圳卫视4K$LR•IPV4•8『线路8』 南国都市4K,https://tencentplay.gztv.com/live/nanguodushi.m3u8?txSecret=550af55c0ea34ce492748481415b6dfa&txTime=1903e7b17de$LR•IPV4 +CCTV4K真4K,http://vip1.xinketongxun.fun:8082/tsfile/live/1026_1.m3u8$LR•IPV4 央视高清,#genre# CCTV4K,http://101.43.145.141:12002/gaoma/cctv4k.m3u8$LR•IPV4 +咪咕央视,#genre# +CCTV发现之旅,http://t.061899.xyz/tl/tl.php?id=fxzl$LR•IPV4 +CCTV老故事,http://t.061899.xyz/tl/tl.php?id=lgs$LR•IPV4 +CCTV中学生,http://t.061899.xyz/tl/tl.php?id=zxs$LR•IPV4 + BXTV频道,#genre# NOW爆谷,p3p://167.114.175.6:55331/65bf60df000777a004c3831b56247b8e$LR•IPV4•2『线路1』 NOW爆谷,p3p://167.114.175.6:55331/65423beb00082fd01bed887e0ae23bbf$LR•IPV4•2『线路2』 @@ -71,16 +77,12 @@ RTHK32,http://php.jdshipin.com:8880/TVOD/iptv.php?id=rthk32$LR•IPV4 哆啦A梦,http://103.193.151.146/huya.php?id=11601963$LR•IPV4•2『线路1』 哆啦A梦,https://live.ottiptv.cc/huya/11601963$LR•IPV4•2『线路2』 蜡笔小新,http://103.193.151.146/huya.php?id=11352970$LR•IPV4 -喜羊羊与灰太狼,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=23865080$LR•IPV4 精灵宝可梦,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/30080236$LR•IPV4 航海王,http://103.193.151.146/huya.php?id=16913382$LR•IPV4 -虎牙影视,#genre# -宇宙科幻合集,http://cdn.jdshipin.com:8880/huya.php?id=11342428$LR•IPV4 - 斗鱼影视,#genre# 古装武侠,http://www.goodiptv.club/douyu/2793084$LR•IPV4 冰冰影剧,http://www.goodiptv.club/douyu/74374$LR•IPV4 @@ -89,8 +91,8 @@ RTHK32,http://php.jdshipin.com:8880/TVOD/iptv.php?id=rthk32$LR•IPV4 华语影视,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/5061550$LR•IPV4 -橙记港剧,http://huanqiuzhibo.cn/manifest/douyu.php?id=4549169$LR•IPV4•2『线路1』 -橙记港剧,http://www.goodiptv.club/douyu/4549169$LR•IPV4•2『线路2』 +橙记港剧,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/5522351$LR•IPV4•3『线路1』 @@ -108,41 +110,26 @@ RTHK32,http://php.jdshipin.com:8880/TVOD/iptv.php?id=rthk32$LR•IPV4 少年包青天第三部,https://live.ottiptv.cc/yy/1382736814$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』 士兵突击,https://live.metshop.top/huya/11342430$LR•IPV4•2『线路2』 天龙八部,https://live.ottiptv.cc/yy/1351814644$LR•IPV4 -倚天屠龙记,http://cdn.jdshipin.com:8880/huya.php?id=23734246$LR•IPV4 +倚天屠龙记,https://live.ottiptv.cc/huya/11342403$LR•IPV4 康熙王朝,https://live.ottiptv.cc/huya/11352940$LR•IPV4 庆余年,https://live.ottiptv.cc/huya/11352960$LR•IPV4•2『线路1』 庆余年,http://58.39.190.143:35455/huya/11352960$LR•IPV4•2『线路2』 鬼吹灯之精绝古城,https://live.ottiptv.cc/huya/11352871$LR•IPV4 鬼吹灯之怒晴湘西,https://live.ottiptv.cc/huya/11602075$LR•IPV4 -鬼吹灯之云南虫谷,https://live.ottiptv.cc/huya/11352898$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 -唐诡之西行,https://live.ottiptv.cc/huya/26355763$LR•IPV4 -玫瑰的故事,https://live.ottiptv.cc/huya/23865142$LR•IPV4 -梦中的那片海,https://live.ottiptv.cc/huya/26355765$LR•IPV4 知否知否,https://live.ottiptv.cc/yy/21881901$LR•IPV4 父母爱情,https://live.ottiptv.cc/yy/1354926650$LR•IPV4 如懿传,https://live.ottiptv.cc/huya/29465868$LR•IPV4 武林外传,http://live.nctv.top/DJlio/huya.php?id=21059598$LR•IPV4 -埋堆堆频道,#genre# -楚汉骄雄,http://cdn.jdshipin.com:8880/huya.php?id=29465854$LR•IPV4 -西游记2,http://cdn.jdshipin.com:8880/huya.php?id=29465859$LR•IPV4 -活佛济公3,http://cdn.jdshipin.com:8880/huya.php?id=23903123$LR•IPV4 -无心法师,http://cdn.jdshipin.com:8880/huya.php?id=30080233$LR•IPV4 -法政先锋,http://cdn.jdshipin.com:8880/huya.php?id=23863804$LR•IPV4 -野蛮亲家,http://cdn.jdshipin.com:8880/huya.php?id=23863796$LR•IPV4 - 点播电影,#genre# 倩女幽魂人间道,http://jsmov2.a.yximgs.com/bs3/video-hls/5250634317044855747_hlsb.m3u8$LR•IPV4 倩女幽魂道道道,http://jsmov2.a.yximgs.com/bs3/video-hls/5216294367991385255_hlsb.m3u8$LR•IPV4 @@ -178,7 +165,7 @@ RTHK32,http://php.jdshipin.com:8880/TVOD/iptv.php?id=rthk32$LR•IPV4 钱江都市,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『线路3』 钱江都市,https://stream1.freetv.fun/qian-jiang-du-shi-2.m3u8$LR•IPV4•5『线路4』 -钱江都市,http://ali-m-l.cztv.com/channels/lantian/channel002/1080p.m3u8$LR•IPV4•5『线路5』 +钱江都市,https://ali-m-l.cztv.com/channels/lantian/channel002/1080p.m3u8$LR•IPV4•5『线路5』 YMG未来,http://l.cztvcloud.com/channels/lantian/SXyuhang3/720p.m3u8?$LR•IPV4 上虞文化,http://l.cztvcloud.com/channels/lantian/SXshangyu2/720p.m3u8$LR•IPV4•12『线路1』 上虞文化,https://stream1.freetv.fun/shang-yu-wen-hua-ying-yuan-1.m3u8$LR•IPV4•12『线路2』 @@ -206,10 +193,10 @@ YMG未来,http://l.cztvcloud.com/channels/lantian/SXyuhang3/720p.m3u8?$LR•IPV4 兰溪新闻,https://t.freetv.fun/live/lan-xi-xin-wen-zong-he.m3u8$LR•IPV4•7『线路5』 兰溪新闻,http://l.cztvcloud.com/channels/lantian/SXlanxi1/720p.m3u8?zzhed$LR•IPV4•7『线路6』 兰溪新闻,http://l.cztvcloud.com/channels/lantian/SXlanxi1/720p.m3u8?zzhed?$LR•IPV4•7『线路7』 -姚江文化,http://l.cztvcloud.com/channels/lantian/SXyuyao3/720p.m3u8?zzhed$LR•IPV4•5『线路1』 -姚江文化,http://l.cztvcloud.com/channels/lantian/SXyuyao3/720p.m3u8zzhed$LR•IPV4•5『线路2』 -姚江文化,https://l.cztvcloud.com/channels/lantian/SXyuyao3/720p.m3u8$LR•IPV4•5『线路3』 -姚江文化,https://l.cztvcloud.com/channels/lantian/SXyuyao2/720p.m3u8$LR•IPV4•5『线路4』 +姚江文化,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『线路3』 +姚江文化,http://l.cztvcloud.com/channels/lantian/SXyuyao3/720p.m3u8?zzhed$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』 @@ -463,29 +450,29 @@ Now星影,p3p://167.114.175.6:55331/65bf5e010005226704b84f4f048a4148$LR•IPV4 香港卫视,http://webcast.hkstv.tv/livestream/mutfysrq/playlist.m3u8$LR•IPV4•2『线路1』 香港卫视,https://hkstv.tv/api/m3u8-proxy?url=http%3A%2F%2Fwebcast.hkstv.tv%2Flivestream%2Fmutfysrq%2Fplaylist.m3u8$LR•IPV4•2『线路2』 凤凰卫视中文台,http://api.mg.itv888.cn:8080/hls/2f80047f91e/index.m3u8$LR•IPV4•8『线路1』 -凤凰卫视中文台,http://zmgd.zyrnet.com:8888/hls/110/index.m3u8$LR•IPV4•8『线路2』 -凤凰卫视中文台,http://120.198.95.220:9901/tsfile/live/1036_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•8『线路3』 -凤凰卫视中文台,http://218.206.193.218:8888/hls/66/index.m3u8$LR•IPV4•8『线路4』 -凤凰卫视中文台,http://120.198.95.220:9901/tsfile/live/1036_1.m3u8?key=txiptv$LR•IPV4•8『线路5』 -凤凰卫视中文台,http://r.jdshipin.com/cCCzW$LR•IPV4•8『线路6』 -凤凰卫视中文台,http://cdn6.163189.xyz/163189/fhzw$LR•IPV4•8『线路7』 -凤凰卫视中文台,http://223.110.245.139/ott.js.chinamobile.com/PLTV/3/224/3221226922/index.m3u8$LR•IPV4•8『线路8』 +凤凰卫视中文台,http://223.110.245.139/ott.js.chinamobile.com/PLTV/3/224/3221226922/index.m3u8$LR•IPV4•8『线路2』 +凤凰卫视中文台,http://zmgd.zyrnet.com:8888/hls/110/index.m3u8$LR•IPV4•8『线路3』 +凤凰卫视中文台,http://120.198.95.220:9901/tsfile/live/1036_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•8『线路4』 +凤凰卫视中文台,http://218.206.193.218:8888/hls/66/index.m3u8$LR•IPV4•8『线路5』 +凤凰卫视中文台,http://120.198.95.220:9901/tsfile/live/1036_1.m3u8?key=txiptv$LR•IPV4•8『线路6』 +凤凰卫视中文台,http://r.jdshipin.com/cCCzW$LR•IPV4•8『线路7』 +凤凰卫视中文台,http://cdn6.163189.xyz/163189/fhzw$LR•IPV4•8『线路8』 凤凰卫视资讯台,http://api.mg.itv888.cn:8080/hls/11ef1dc70d8/index.m3u8$LR•IPV4•10『线路1』 -凤凰卫视资讯台,http://zmgd.zyrnet.com:8888/hls/109/index.m3u8$LR•IPV4•10『线路2』 -凤凰卫视资讯台,http://221.7.175.154:8445/tsfile/live/1021_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•10『线路3』 -凤凰卫视资讯台,http://120.198.95.220:9901/tsfile/live/1037_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•10『线路4』 -凤凰卫视资讯台,http://120.198.95.220:9901/tsfile/live/1037_1.m3u8?key=txiptv$LR•IPV4•10『线路5』 -凤凰卫视资讯台,p3p://167.114.175.6:55331/5fffbf860003807cedf4e1016c3c3ed2$LR•IPV4•10『线路6』 -凤凰卫视资讯台,http://r.jdshipin.com/0Rp07$LR•IPV4•10『线路7』 -凤凰卫视资讯台,http://php.jdshipin.com/TVOD/iptv.php?id=fhzx$LR•IPV4•10『线路8』 -凤凰卫视资讯台,http://cdn6.163189.xyz/163189/fhzx$LR•IPV4•10『线路9』 -凤凰卫视资讯台,http://223.110.245.167/ott.js.chinamobile.com/PLTV/3/224/3221226923/index.m3u8$LR•IPV4•10『线路10』 -凤凰卫视香港台,http://122.152.202.33/s/81a8a44f/index.m3u8?id=fhhk$LR•IPV4•6『线路1』 -凤凰卫视香港台,p3p://167.114.175.6:55331/5fe0b82c000cac9774c17f262e43314d$LR•IPV4•6『线路2』 -凤凰卫视香港台,http://r.jdshipin.com/yDoTN$LR•IPV4•6『线路3』 -凤凰卫视香港台,http://php.jdshipin.com/TVOD/iptv.php?id=fhhk$LR•IPV4•6『线路4』 -凤凰卫视香港台,http://cdn6.163189.xyz/163189/fhhk$LR•IPV4•6『线路5』 -凤凰卫视香港台,http://223.110.245.136/PLTV/3/224/3221226975/index.m3u8$LR•IPV4•6『线路6』 +凤凰卫视资讯台,http://223.110.245.167/ott.js.chinamobile.com/PLTV/3/224/3221226923/index.m3u8$LR•IPV4•10『线路2』 +凤凰卫视资讯台,http://zmgd.zyrnet.com:8888/hls/109/index.m3u8$LR•IPV4•10『线路3』 +凤凰卫视资讯台,http://221.7.175.154:8445/tsfile/live/1021_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•10『线路4』 +凤凰卫视资讯台,http://120.198.95.220:9901/tsfile/live/1037_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•10『线路5』 +凤凰卫视资讯台,http://120.198.95.220:9901/tsfile/live/1037_1.m3u8?key=txiptv$LR•IPV4•10『线路6』 +凤凰卫视资讯台,p3p://167.114.175.6:55331/5fffbf860003807cedf4e1016c3c3ed2$LR•IPV4•10『线路7』 +凤凰卫视资讯台,http://r.jdshipin.com/0Rp07$LR•IPV4•10『线路8』 +凤凰卫视资讯台,http://php.jdshipin.com/TVOD/iptv.php?id=fhzx$LR•IPV4•10『线路9』 +凤凰卫视资讯台,http://cdn6.163189.xyz/163189/fhzx$LR•IPV4•10『线路10』 +凤凰卫视香港台,http://223.110.245.136/PLTV/3/224/3221226975/index.m3u8$LR•IPV4•6『线路1』 +凤凰卫视香港台,http://122.152.202.33/s/81a8a44f/index.m3u8?id=fhhk$LR•IPV4•6『线路2』 +凤凰卫视香港台,p3p://167.114.175.6:55331/5fe0b82c000cac9774c17f262e43314d$LR•IPV4•6『线路3』 +凤凰卫视香港台,http://r.jdshipin.com/yDoTN$LR•IPV4•6『线路4』 +凤凰卫视香港台,http://php.jdshipin.com/TVOD/iptv.php?id=fhhk$LR•IPV4•6『线路5』 +凤凰卫视香港台,http://cdn6.163189.xyz/163189/fhhk$LR•IPV4•6『线路6』 台视新闻,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』 @@ -500,24 +487,24 @@ 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•18『线路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•18『线路2』 -天津,http://204.12.221.218:8181/3m1080p/tjws.m3u8$LR•IPV4•18『线路3』 -天津,http://107.150.60.122/live/tjwshd.m3u8$LR•IPV4•18『线路4』 -天津,http://192.151.150.154/live/tjwshd.m3u8$LR•IPV4•18『线路5』 -天津,http://38.75.136.137:98/gslb/dsdqpub/tjwshd.m3u8?auth=testpub$LR•IPV4•18『线路6』 -天津,http://63.141.230.178:82/gslb/zbdq5.m3u8?id=tjwshd$LR•IPV4•18『线路7』 -天津,http://207.56.13.146:81/cdnlive/tjws.m3u8$LR•IPV4•18『线路8』 -天津,http://120.198.95.220:9901/tsfile/live/1067_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•18『线路9』 -天津,http://112.27.235.94:8000/hls/42/index.m3u8$LR•IPV4•18『线路10』 -天津,http://23.237.228.134/live8/tianjing.m3u8$LR•IPV4•18『线路11』 -天津,http://gfr.x3322.net:9901/tsfile/live/1090_1.m3u8$LR•IPV4•18『线路12』 -天津,http://api.kkitv.itv888.cn:8080/hls/z2lkdkrb4w/index.m3u8$LR•IPV4•18『线路13』 -天津,https://iptv.catvod.com/catvod.php?id=tjws$LR•IPV4•18『线路14』 -天津,https://httop.top/ysp-天津卫视$LR•IPV4•18『线路15』 -天津,http://iptv.huuc.edu.cn/hls/tjhd.m3u8$LR•IPV4•18『线路16』 -天津,http://153.0.171.163:9901/tsfile/live/0135_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•18『线路17』 -天津,http://39.134.115.163:8080/PLTV/88888910/224/3221225698/index.m3u8$LR•IPV4•18『线路18』 +天津,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•18『线路1』 +天津,http://204.12.221.218:8181/3m1080p/tjws.m3u8$LR•IPV4•18『线路2』 +天津,http://107.150.60.122/live/tjwshd.m3u8$LR•IPV4•18『线路3』 +天津,http://192.151.150.154/live/tjwshd.m3u8$LR•IPV4•18『线路4』 +天津,http://38.75.136.137:98/gslb/dsdqpub/tjwshd.m3u8?auth=testpub$LR•IPV4•18『线路5』 +天津,http://63.141.230.178:82/gslb/zbdq5.m3u8?id=tjwshd$LR•IPV4•18『线路6』 +天津,http://207.56.13.146:81/cdnlive/tjws.m3u8$LR•IPV4•18『线路7』 +天津,http://120.198.95.220:9901/tsfile/live/1067_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•18『线路8』 +天津,http://112.27.235.94:8000/hls/42/index.m3u8$LR•IPV4•18『线路9』 +天津,https://piccpndks.v.kcdnvip.com/audio/tianjin_2/index.m3u8$LR•IPV4•18『线路10』 +天津,http://39.134.115.163:8080/PLTV/88888910/224/3221225698/index.m3u8$LR•IPV4•18『线路11』 +天津,http://23.237.228.134/live8/tianjing.m3u8$LR•IPV4•18『线路12』 +天津,http://gfr.x3322.net:9901/tsfile/live/1090_1.m3u8$LR•IPV4•18『线路13』 +天津,http://api.kkitv.itv888.cn:8080/hls/z2lkdkrb4w/index.m3u8$LR•IPV4•18『线路14』 +天津,https://iptv.catvod.com/catvod.php?id=tjws$LR•IPV4•18『线路15』 +天津,https://httop.top/ysp-天津卫视$LR•IPV4•18『线路16』 +天津,http://iptv.huuc.edu.cn/hls/tjhd.m3u8$LR•IPV4•18『线路17』 +天津,http://153.0.171.163:9901/tsfile/live/0135_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•18『线路18』 ☘️甘肃频道,#genre# 西峰综合,https://play.kankanlive.com/live/1683944827526991.m3u8$LR•IPV4 @@ -599,25 +586,26 @@ CN卡通,p3p://167.114.175.6:55331/648353bb0006d4d93236315a766b692a$LR•IPV4• 数字,#genre# 喜剧影院,http://74.91.26.218:82/live/vlxjyy.m3u8$LR•IPV4 +CHC动作电影,http://t.061899.xyz/tl/tl.php?id=chcdzdy$LR•IPV4 卡酷少儿,http://218.13.170.98:9901/tsfile/live/1021_1.m3u8$LR•IPV4 •特色,#genre# -UFC,https://dbrb49pjoymg4.cloudfront.net/manifest/3fec3e5cac39a52b2132f9c66c83dae043dc17d4/prod_default_xumo-ams-aws/194a140c-0cf5-443e-b747-08bf621d75a8/0.m3u8$LR•IPV4•16『线路1』 -UFC,https://jmp2.uk/plu-6a037119f6ac24413f849d5b.m3u8$LR•IPV4•16『线路2』 -UFC,https://aegis-cloudfront-1.tubi.video/a78ea283-8666-44a1-a0f6-fde5d229ac21/playlist.m3u8$LR•IPV4•16『线路3』 -UFC,https://linear-893.frequency.stream/dist/xumo/893/hls/master/playlist.m3u8$LR•IPV4•16『线路4』 -UFC,https://pb-ljudrmfw5j68n.akamaized.net/playlist.m3u8$LR•IPV4•16『线路5』 -UFC,https://jmp2.uk/plu-66ed3eb27358ce000830df49.m3u8$LR•IPV4•16『线路6』 -UFC,https://jmp2.uk/plu-679203d4bc03978b9b4b79a6.m3u8$LR•IPV4•16『线路7』 -UFC,https://jmp2.uk/plu-67a52cd4ec91870008a62164.m3u8$LR•IPV4•16『线路8』 -UFC,https://jmp2.uk/plu-6792066f3de7c8cf941e7ce3.m3u8$LR•IPV4•16『线路9』 -UFC,https://jmp2.uk/plu-66ed3e9d5e4a6e0008b346e0.m3u8$LR•IPV4•16『线路10』 -UFC,https://jmp2.uk/plu-69a20556814d27f4ae630a92.m3u8$LR•IPV4•16『线路11』 -UFC,https://jmp2.uk/plu-6792044b680721c77c5b9ba2.m3u8$LR•IPV4•16『线路12』 -UFC,https://jmp2.uk/plu-67921b873de7c8cf94233f52.m3u8$LR•IPV4•16『线路13』 -UFC,https://jmp2.uk/plu-67921b78b83355184c667770.m3u8$LR•IPV4•16『线路14』 -UFC,https://jmp2.uk/plu-679205a13de7c8cf941e7857.m3u8$LR•IPV4•16『线路15』 -UFC,https://jmp2.uk/plu-677d9adfa9a51b0008497fa0.m3u8$LR•IPV4•16『线路16』 +UFC,https://jmp2.uk/plu-6a037119f6ac24413f849d5b.m3u8$LR•IPV4•16『线路1』 +UFC,https://aegis-cloudfront-1.tubi.video/a78ea283-8666-44a1-a0f6-fde5d229ac21/playlist.m3u8$LR•IPV4•16『线路2』 +UFC,https://linear-893.frequency.stream/dist/xumo/893/hls/master/playlist.m3u8$LR•IPV4•16『线路3』 +UFC,https://pb-ljudrmfw5j68n.akamaized.net/playlist.m3u8$LR•IPV4•16『线路4』 +UFC,https://jmp2.uk/plu-66ed3eb27358ce000830df49.m3u8$LR•IPV4•16『线路5』 +UFC,https://jmp2.uk/plu-679203d4bc03978b9b4b79a6.m3u8$LR•IPV4•16『线路6』 +UFC,https://jmp2.uk/plu-67a52cd4ec91870008a62164.m3u8$LR•IPV4•16『线路7』 +UFC,https://jmp2.uk/plu-6792066f3de7c8cf941e7ce3.m3u8$LR•IPV4•16『线路8』 +UFC,https://jmp2.uk/plu-66ed3e9d5e4a6e0008b346e0.m3u8$LR•IPV4•16『线路9』 +UFC,https://jmp2.uk/plu-69a20556814d27f4ae630a92.m3u8$LR•IPV4•16『线路10』 +UFC,https://jmp2.uk/plu-6792044b680721c77c5b9ba2.m3u8$LR•IPV4•16『线路11』 +UFC,https://jmp2.uk/plu-67921b873de7c8cf94233f52.m3u8$LR•IPV4•16『线路12』 +UFC,https://jmp2.uk/plu-67921b78b83355184c667770.m3u8$LR•IPV4•16『线路13』 +UFC,https://jmp2.uk/plu-679205a13de7c8cf941e7857.m3u8$LR•IPV4•16『线路14』 +UFC,https://jmp2.uk/plu-677d9adfa9a51b0008497fa0.m3u8$LR•IPV4•16『线路15』 +UFC,https://dbrb49pjoymg4.cloudfront.net/manifest/3fec3e5cac39a52b2132f9c66c83dae043dc17d4/prod_default_xumo-ams-aws/194a140c-0cf5-443e-b747-08bf621d75a8/0.m3u8$LR•IPV4•16『线路16』 •音乐,#genre# PMC,https://mumbai-edge.smartplaytv.in/PMC/index.m3u8$LR•IPV4•3『线路1』 @@ -645,8 +633,8 @@ MTV Spankin,https://jmp2.uk/plu-5d14fdb8ca91eedee1633117.m3u8$LR•IPV4•2『 MTV Spankin,https://jmp2.uk/plu-6541010f770cf1000866be98.m3u8$LR•IPV4•2『线路2』 •国际,#genre# -RT News,https://rt-glb.rttv.com/dvr/rtnews/playlist_4500Kb.m3u8$LR•IPV4•2『线路1』 -RT News,https://cloud.odysee.live/content/fdd11cb3ab75f95efb7b3bc2d726aa13ac915b66/master.m3u8$LR•IPV4•2『线路2』 +RT News,https://cloud.odysee.live/content/fdd11cb3ab75f95efb7b3bc2d726aa13ac915b66/master.m3u8$LR•IPV4•2『线路1』 +RT News,https://rt-glb.rttv.com/dvr/rtnews/playlist_4500Kb.m3u8$LR•IPV4•2『线路2』 •韩国,#genre# MTN,http://183.110.27.87/mtnlive/720/playlist.m3u8$LR•IPV4 @@ -697,15 +685,15 @@ MBC,https://shd-gcp-live.edgenextcdn.net/live/bitmovin-mbc-masr-drama/567b703c19 MBC,https://shd-gcp-live.edgenextcdn.net/live/bitmovin-mbc-5/ee6b000cee0629411b666ab26cb13e9b/index.m3u8$LR•IPV4•35『线路34』 MBC,https://cdn-us-east-prod-ingest-infra-dacast-com.akamaized.net/624ff8f9-db18-da92-4d42-896fa2ff3eb3/source/index.m3u8$LR•IPV4•35『线路35』 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,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』 -SBS,https://stream.ubc.co.kr/hls/ubctvstream/index.m3u8$LR•IPV4•9『线路9』 +SBS,http://1.222.207.80:1935/live/cjbtv/playlist.m3u8$LR•IPV4•9『线路1』 +SBS,http://61.82.49.4:1935/live/_definst_/tv.stream/playlist.m3u8$LR•IPV4•9『线路2』 +SBS,http://123.140.197.22/stream/1/play.m3u8$LR•IPV4•9『线路3』 +SBS,http://61.85.197.53:1935/jtv_live/myStream/playlist.m3u8$LR•IPV4•9『线路4』 +SBS,https://vod.ikbc.co.kr/KBCTV/tv/playlist.m3u8$LR•IPV4•9『线路5』 +SBS,https://stream1.knn.co.kr/hls/9ly4534y7dm2xfa123r2_tv/index.m3u8$LR•IPV4•9『线路6』 +SBS,http://203.251.91.122:1935/on-air-Backup/tv/playlist.m3u8$LR•IPV4•9『线路7』 +SBS,https://stream.ubc.co.kr/hls/ubctvstream/index.m3u8$LR•IPV4•9『线路8』 +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『线路9』 •日本,#genre# Shop Channel,https://stream3.shopch.jp/HLS/master.m3u8$LR•IPV4 @@ -746,8 +734,8 @@ Gusto TV,https://e75fc053c0d2406fb74cdd71d77e1a7f.mediatailor.us-east-1.amazonaw Hell's Kitchen,https://hellskitchengermany-rakuten.amagi.tv/playlist.m3u8$LR•IPV4•3『线路1』 Hell's Kitchen,https://amg00654-itv-amg00654c20-rakuten-it-3615.playouts.now.amagi.tv/playlist.m3u8$LR•IPV4•3『线路2』 Hell's Kitchen,https://amg00654-itv-amg00654c1-samsung-au-1072.playouts.now.amagi.tv/itv-hellskitchen-samsung/playlist.m3u8$LR•IPV4•3『线路3』 -HollyWire,https://bozztv.com/hwotta/playlist/HD3400/HD3400.m3u8$LR•IPV4•2『线路1』 -HollyWire,https://bozztv.com/hwotta/playlist/playlist.m3u8$LR•IPV4•2『线路2』 +HollyWire,https://bozztv.com/hwotta/playlist/playlist.m3u8$LR•IPV4•2『线路1』 +HollyWire,https://bozztv.com/hwotta/playlist/HD3400/HD3400.m3u8$LR•IPV4•2『线路2』 Iqra TV,https://cdn149.anystream.uk:8082/app/iq53la/playlist.m3u8$LR•IPV4 KBEV Spectrum Channel 6 [Beverly Hills],https://s3-us-west-2.amazonaws.com/beverly-hills-high-school.castus-vod/live/ch1/video.m3u8$LR•IPV4 Legislative Assembly of Ontario,https://temp2.isilive.ca/live/_definst_/ontla/committee_1-en/playlist.m3u8$LR•IPV4•4『线路1』 @@ -761,8 +749,8 @@ 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 NRBTV,https://stream-us-east-1.getpublica.com/playlist.m3u8?network_id=15811$LR•IPV4 Realitatea Plus,https://dokagents.site/live/realitateatv/mono.m3u8$LR•IPV4 -Reuters,https://dbrb49pjoymg4.cloudfront.net/manifest/3fec3e5cac39a52b2132f9c66c83dae043dc17d4/prod_default_xumo-ams-aws/e7493ea5-5c1c-4d7a-a3f7-e95516048ad8/3.m3u8$LR•IPV4•2『线路1』 -Reuters,https://amg00453-reuters-amg00453c1-rakuten-uk-2110.playouts.now.amagi.tv/playlist/amg00453-reuters-reuters-rakutenuk/playlist.m3u8$LR•IPV4•2『线路2』 +Reuters,https://amg00453-reuters-amg00453c1-rakuten-uk-2110.playouts.now.amagi.tv/playlist/amg00453-reuters-reuters-rakutenuk/playlist.m3u8$LR•IPV4•2『线路1』 +Reuters,https://dbrb49pjoymg4.cloudfront.net/manifest/3fec3e5cac39a52b2132f9c66c83dae043dc17d4/prod_default_xumo-ams-aws/e7493ea5-5c1c-4d7a-a3f7-e95516048ad8/3.m3u8$LR•IPV4•2『线路2』 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 @@ -780,71 +768,71 @@ TV Guará,https://video02.logicahost.com.br/tvguara23/tvguara23/playlist.m3u8$LR TVK,https://live.kh.malimarcdn.com/live/tvk.stream/playlist.m3u8$LR•IPV4•3『线路1』 TVK,https://live.kh.malimarcdn.com/live/tvk2.stream/playlist.m3u8$LR•IPV4•3『线路2』 TVK,https://stream.tvkstella.pl/stella/stella.m3u8$LR•IPV4•3『线路3』 -UK,http://nocable.cc:8080//OURTV/OURTV@4806/35241$LR•IPV4•52『线路1』 -UK,http://nocable.cc:8080//OURTV/OURTV@4806/35244$LR•IPV4•52『线路2』 -UK,http://ua-iptv.com:8080//zerubassman@yahoo.com/2MR879Z9PL/1001373$LR•IPV4•52『线路3』 -UK,http://nocable.cc:8080//OURTV/OURTV@4806/35240$LR•IPV4•52『线路4』 -UK,http://nocable.cc:8080//OURTV/OURTV@4806/137720$LR•IPV4•52『线路5』 -UK,http://ua-iptv.com:8080//zerubassman@yahoo.com/2MR879Z9PL/1001376$LR•IPV4•52『线路6』 -UK,http://ua-iptv.com:8080//zerubassman@yahoo.com/2MR879Z9PL/1001378$LR•IPV4•52『线路7』 -UK,http://ua-iptv.com:8080//zerubassman@yahoo.com/2MR879Z9PL/1001379$LR•IPV4•52『线路8』 -UK,http://nocable.cc:8080//OURTV/OURTV@4806/53705$LR•IPV4•52『线路9』 -UK,http://nocable.cc:8080//OURTV/OURTV@4806/35238$LR•IPV4•52『线路10』 -UK,http://nocable.cc:8080//OURTV/OURTV@4806/53663$LR•IPV4•52『线路11』 -UK,http://nocable.cc:8080//OURTV/OURTV@4806/45940$LR•IPV4•52『线路12』 -UK,http://vocotv.pro//revol/revol/276918$LR•IPV4•52『线路13』 -UK,http://vocotv.pro//revol/revol/276924$LR•IPV4•52『线路14』 -UK,http://vocotv.pro//revol/revol/276906$LR•IPV4•52『线路15』 -UK,https://moviesphereuk-samsunguk.amagi.tv/playlist.m3u8$LR•IPV4•52『线路16』 -UK,https://0145451975a64b35866170fd2e8fa486.mediatailor.eu-west-1.amazonaws.com/v1/master/0547f18649bd788bec7b67b746e47670f558b6b2/production-LiveChannel-5987/master.m3u8$LR•IPV4•52『线路17』 -UK,https://54045f0c40fd442c8b06df076aaf1e85.mediatailor.eu-west-1.amazonaws.com/v1/master/0547f18649bd788bec7b67b746e47670f558b6b2/production-LiveChannel-6065/master.m3u8$LR•IPV4•52『线路18』 -UK,https://9be783d652cd4b099cf63e1dc134c4a3.mediatailor.eu-west-1.amazonaws.com/v1/master/0547f18649bd788bec7b67b746e47670f558b6b2/production-LiveChannel-6181/master.m3u8$LR•IPV4•52『线路19』 -UK,https://fee09fd665814f51b939b6d106cf5f66.mediatailor.eu-west-1.amazonaws.com/v1/master/0547f18649bd788bec7b67b746e47670f558b6b2/production-LiveChannel-6093/master.m3u8$LR•IPV4•52『线路20』 -UK,http://41.223.30.230/ZEECINEMA/index.m3u8$LR•IPV4•52『线路21』 -UK,https://app.ncare.live/c3VydmVyX8RpbEU9Mi8xNy8yMDE0GIDU6RgzQ6NTAgdEoaeFzbF92YWxIZTO0U0ezN1IzMyfvcGVMZEJCTEFWeVN3PTOmdFsaWRtaW51aiPhnPTI2/atnbanglauk-off.stream/playlist.m3u8$LR•IPV4•52『线路22』 -UK,https://qvcuk-live.akamaized.net/hls/live/2097112/qvc/master.m3u8$LR•IPV4•52『线路23』 -UK,https://qvcuk-live.akamaized.net/hls/live/2097112/qby/master.m3u8$LR•IPV4•52『线路24』 -UK,https://qvcuk-live.akamaized.net/hls/live/2097112/qex/master.m3u8$LR•IPV4•52『线路25』 -UK,https://qvcuk-live.akamaized.net/hls/live/2097112/qst/master.m3u8$LR•IPV4•52『线路26』 -UK,http://45.153.96.44:8001$LR•IPV4•52『线路27』 -UK,https://mini.allinonereborn.fun/tata.php?id=11783$LR•IPV4•52『线路28』 -UK,https://cdn3.wowza.com/5/L1Uzd2FrbVlLRG1W/live/smil:lwukweb.smil/playlist.m3u8$LR•IPV4•52『线路29』 -UK,https://d34z4embz0hjf6.cloudfront.net/out/v1/7ac2789ff9a544a49337d1ffc54ce61c/index.m3u8$LR•IPV4•52『线路30』 -UK,https://jmp2.uk/plu-638e10de75c3a30007092693.m3u8$LR•IPV4•52『线路31』 -UK,https://jmp2.uk/plu-62bed7cb3279cb0007735327.m3u8$LR•IPV4•52『线路32』 -UK,https://d1nn4ic5ci0eid.cloudfront.net/MasterchefUKPoweredbyBanijay_GB.m3u8$LR•IPV4•52『线路33』 -UK,https://dvqpty1sb3rry.cloudfront.net/PointlessUKPoweredbyBanijay_GB.m3u8$LR•IPV4•52『线路34』 -UK,https://68f6dfd1f2bd415b9c42f1d383004b69.mediatailor.eu-west-1.amazonaws.com/v1/master/0547f18649bd788bec7b67b746e47670f558b6b2/production-LiveChannel-6233/master.m3u8$LR•IPV4•52『线路35』 -UK,https://2c88ed8c4df9479aa0c7138dc42115e2.mediatailor.eu-west-1.amazonaws.com/v1/master/0547f18649bd788bec7b67b746e47670f558b6b2/production-LiveChannel-6194/master.m3u8$LR•IPV4•52『线路36』 -UK,https://sci-fi-rakuten-tv-uk.fast.rakuten.tv/v1/master/0547f18649bd788bec7b67b746e47670f558b6b2/production-LiveChannel-6241/master.m3u8$LR•IPV4•52『线路37』 -UK,https://thriller-rakuten-tv-uk.fast.rakuten.tv/v1/master/0547f18649bd788bec7b67b746e47670f558b6b2/production-LiveChannel-6482/master.m3u8$LR•IPV4•52『线路38』 -UK,https://live-tbn-ssai.simplestreamcdn.com/v1/master/774d979dd66704abea7c5b62cb34c6815fda0d35/tbn-live/manifest.m3u8$LR•IPV4•52『线路39』 -UK,https://amg01131-tracetv-amg01131c5-stirr-us-4389.playouts.now.amagi.tv/playlist.m3u8$LR•IPV4•52『线路40』 -UK,https://d2n3779oy6efpi.cloudfront.net/playlist.m3u8$LR•IPV4•52『线路41』 -UK,https://channels.trace.plus/Traceprod/UK_FAST_hd/index.m3u8$LR•IPV4•52『线路42』 -UK,https://hls.vantagetv.co.uk/vmusicuk_stream/index.m3u8$LR•IPV4•52『线路43』 -UK,https://amg01243-xitenetworksint-hitsuk-samsunguk-mvovq.amagi.tv/playlist/amg01243-xitenetworksint-hitsuk-samsunguk/playlist.m3u8$LR•IPV4•52『线路44』 -UK,https://bbc-antiquesroadshowuk-1-us.roku.wurl.tv/playlist.m3u8$LR•IPV4•52『线路45』 -UK,https://jmp2.uk/plu-692edc78d52ea9e4858cf78f.m3u8$LR•IPV4•52『线路46』 -UK,https://jmp2.uk/plu-692edcff77f0147d69f19498.m3u8$LR•IPV4•52『线路47』 -UK,https://jmp2.uk/plu-692edd6bdb8695f63e14f3b9.m3u8$LR•IPV4•52『线路48』 -UK,https://b6cca454.wurl.com/master/f36d25e7e52f1ba8d7e56eb859c636563214f541/U2Ftc3VuZy1nYl9UcnVlQ3JpbWVVS2Zyb21DQlNSZWFsaXR5X0hMUw/playlist.m3u8$LR•IPV4•52『线路49』 -UK,https://ntd02.akamaized.net/NTD-UK/index.m3u8$LR•IPV4•52『线路50』 -UK,https://e3207568b726401995c25670faaf32e4.mediatailor.eu-west-1.amazonaws.com/v1/master/0547f18649bd788bec7b67b746e47670f558b6b2/production-LiveChannel-6203/master.m3u8$LR•IPV4•52『线路51』 -UK,https://1a3566cb46914c5499fbc86fbc4ac87e.mediatailor.us-west-2.amazonaws.com/v1/master/ba62fe743df0fe93366eba3a257d792884136c7f/LINEAR-932-WORBUKENFAST-WHALETVPLUS/932/whaletvplus/hls/master/playlist.m3u8$LR•IPV4•52『线路52』 -US,p3p://167.114.175.6:55331/63efe07e000c1db2f23eb46a4e00518a$LR•IPV4•17『线路1』 -US,p3p://167.114.175.6:55331/63efe0de000858baf2402a646c573e1b$LR•IPV4•17『线路2』 -US,p3p://167.114.175.6:55331/63efe252000a7658f245d81113e44b34$LR•IPV4•17『线路3』 -US,p3p://167.114.175.6:55331/63efe2e2000d23b5f2480b4125294b9a$LR•IPV4•17『线路4』 -US,http://138.121.15.230:9002/DEPELICULA/index.m3u8$LR•IPV4•17『线路5』 -US,https://amg17233-amg17233c1-wisptv-us-6409.playouts.now.amagi.tv/playlist.m3u8$LR•IPV4•17『线路6』 -US,https://jmp2.uk/plu-6304f20c941c5d00089634e7.m3u8$LR•IPV4•17『线路7』 -US,https://jmp2.uk/plu-63988b61c8d285000798a22a.m3u8$LR•IPV4•17『线路8』 -US,http://206.212.244.63/641/index.m3u8$LR•IPV4•17『线路9』 -US,https://janus.xpbroadcasting.com:8443/hls/xptvUS.m3u8$LR•IPV4•17『线路10』 -US,https://bloomberg.com/media-manifest/streams/us-event.m3u8$LR•IPV4•17『线路11』 -US,https://bloomberg.com/media-manifest/streams/politics.m3u8$LR•IPV4•17『线路12』 -US,https://0b73ace69ebb45eaa249bb87837cb958.mediatailor.us-west-2.amazonaws.com/v1/master/ba62fe743df0fe93366eba3a257d792884136c7f/LINEAR-644-WORBUSENFAST-LG_US/644/lgtv/hls/master/playlist.m3u8$LR•IPV4•17『线路13』 +UK,https://moviesphereuk-samsunguk.amagi.tv/playlist.m3u8$LR•IPV4•52『线路1』 +UK,https://0145451975a64b35866170fd2e8fa486.mediatailor.eu-west-1.amazonaws.com/v1/master/0547f18649bd788bec7b67b746e47670f558b6b2/production-LiveChannel-5987/master.m3u8$LR•IPV4•52『线路2』 +UK,https://54045f0c40fd442c8b06df076aaf1e85.mediatailor.eu-west-1.amazonaws.com/v1/master/0547f18649bd788bec7b67b746e47670f558b6b2/production-LiveChannel-6065/master.m3u8$LR•IPV4•52『线路3』 +UK,https://9be783d652cd4b099cf63e1dc134c4a3.mediatailor.eu-west-1.amazonaws.com/v1/master/0547f18649bd788bec7b67b746e47670f558b6b2/production-LiveChannel-6181/master.m3u8$LR•IPV4•52『线路4』 +UK,https://fee09fd665814f51b939b6d106cf5f66.mediatailor.eu-west-1.amazonaws.com/v1/master/0547f18649bd788bec7b67b746e47670f558b6b2/production-LiveChannel-6093/master.m3u8$LR•IPV4•52『线路5』 +UK,http://41.223.30.230/ZEECINEMA/index.m3u8$LR•IPV4•52『线路6』 +UK,https://app.ncare.live/c3VydmVyX8RpbEU9Mi8xNy8yMDE0GIDU6RgzQ6NTAgdEoaeFzbF92YWxIZTO0U0ezN1IzMyfvcGVMZEJCTEFWeVN3PTOmdFsaWRtaW51aiPhnPTI2/atnbanglauk-off.stream/playlist.m3u8$LR•IPV4•52『线路7』 +UK,https://qvcuk-live.akamaized.net/hls/live/2097112/qvc/master.m3u8$LR•IPV4•52『线路8』 +UK,https://qvcuk-live.akamaized.net/hls/live/2097112/qby/master.m3u8$LR•IPV4•52『线路9』 +UK,https://qvcuk-live.akamaized.net/hls/live/2097112/qex/master.m3u8$LR•IPV4•52『线路10』 +UK,https://qvcuk-live.akamaized.net/hls/live/2097112/qst/master.m3u8$LR•IPV4•52『线路11』 +UK,http://45.153.96.44:8001$LR•IPV4•52『线路12』 +UK,https://mini.allinonereborn.fun/tata.php?id=11783$LR•IPV4•52『线路13』 +UK,https://cdn3.wowza.com/5/L1Uzd2FrbVlLRG1W/live/smil:lwukweb.smil/playlist.m3u8$LR•IPV4•52『线路14』 +UK,https://d34z4embz0hjf6.cloudfront.net/out/v1/7ac2789ff9a544a49337d1ffc54ce61c/index.m3u8$LR•IPV4•52『线路15』 +UK,https://jmp2.uk/plu-638e10de75c3a30007092693.m3u8$LR•IPV4•52『线路16』 +UK,https://jmp2.uk/plu-62bed7cb3279cb0007735327.m3u8$LR•IPV4•52『线路17』 +UK,https://d1nn4ic5ci0eid.cloudfront.net/MasterchefUKPoweredbyBanijay_GB.m3u8$LR•IPV4•52『线路18』 +UK,https://dvqpty1sb3rry.cloudfront.net/PointlessUKPoweredbyBanijay_GB.m3u8$LR•IPV4•52『线路19』 +UK,https://68f6dfd1f2bd415b9c42f1d383004b69.mediatailor.eu-west-1.amazonaws.com/v1/master/0547f18649bd788bec7b67b746e47670f558b6b2/production-LiveChannel-6233/master.m3u8$LR•IPV4•52『线路20』 +UK,https://2c88ed8c4df9479aa0c7138dc42115e2.mediatailor.eu-west-1.amazonaws.com/v1/master/0547f18649bd788bec7b67b746e47670f558b6b2/production-LiveChannel-6194/master.m3u8$LR•IPV4•52『线路21』 +UK,https://sci-fi-rakuten-tv-uk.fast.rakuten.tv/v1/master/0547f18649bd788bec7b67b746e47670f558b6b2/production-LiveChannel-6241/master.m3u8$LR•IPV4•52『线路22』 +UK,https://thriller-rakuten-tv-uk.fast.rakuten.tv/v1/master/0547f18649bd788bec7b67b746e47670f558b6b2/production-LiveChannel-6482/master.m3u8$LR•IPV4•52『线路23』 +UK,https://live-tbn-ssai.simplestreamcdn.com/v1/master/774d979dd66704abea7c5b62cb34c6815fda0d35/tbn-live/manifest.m3u8$LR•IPV4•52『线路24』 +UK,https://amg01131-tracetv-amg01131c5-stirr-us-4389.playouts.now.amagi.tv/playlist.m3u8$LR•IPV4•52『线路25』 +UK,https://d2n3779oy6efpi.cloudfront.net/playlist.m3u8$LR•IPV4•52『线路26』 +UK,https://channels.trace.plus/Traceprod/UK_FAST_hd/index.m3u8$LR•IPV4•52『线路27』 +UK,https://hls.vantagetv.co.uk/vmusicuk_stream/index.m3u8$LR•IPV4•52『线路28』 +UK,https://amg01243-xitenetworksint-hitsuk-samsunguk-mvovq.amagi.tv/playlist/amg01243-xitenetworksint-hitsuk-samsunguk/playlist.m3u8$LR•IPV4•52『线路29』 +UK,https://bbc-antiquesroadshowuk-1-us.roku.wurl.tv/playlist.m3u8$LR•IPV4•52『线路30』 +UK,https://jmp2.uk/plu-692edc78d52ea9e4858cf78f.m3u8$LR•IPV4•52『线路31』 +UK,https://jmp2.uk/plu-692edcff77f0147d69f19498.m3u8$LR•IPV4•52『线路32』 +UK,https://jmp2.uk/plu-692edd6bdb8695f63e14f3b9.m3u8$LR•IPV4•52『线路33』 +UK,https://b6cca454.wurl.com/master/f36d25e7e52f1ba8d7e56eb859c636563214f541/U2Ftc3VuZy1nYl9UcnVlQ3JpbWVVS2Zyb21DQlNSZWFsaXR5X0hMUw/playlist.m3u8$LR•IPV4•52『线路34』 +UK,https://ntd02.akamaized.net/NTD-UK/index.m3u8$LR•IPV4•52『线路35』 +UK,https://e3207568b726401995c25670faaf32e4.mediatailor.eu-west-1.amazonaws.com/v1/master/0547f18649bd788bec7b67b746e47670f558b6b2/production-LiveChannel-6203/master.m3u8$LR•IPV4•52『线路36』 +UK,https://1a3566cb46914c5499fbc86fbc4ac87e.mediatailor.us-west-2.amazonaws.com/v1/master/ba62fe743df0fe93366eba3a257d792884136c7f/LINEAR-932-WORBUKENFAST-WHALETVPLUS/932/whaletvplus/hls/master/playlist.m3u8$LR•IPV4•52『线路37』 +UK,http://nocable.cc:8080//OURTV/OURTV@4806/35241$LR•IPV4•52『线路38』 +UK,http://nocable.cc:8080//OURTV/OURTV@4806/35244$LR•IPV4•52『线路39』 +UK,http://ua-iptv.com:8080//zerubassman@yahoo.com/2MR879Z9PL/1001373$LR•IPV4•52『线路40』 +UK,http://nocable.cc:8080//OURTV/OURTV@4806/35240$LR•IPV4•52『线路41』 +UK,http://nocable.cc:8080//OURTV/OURTV@4806/137720$LR•IPV4•52『线路42』 +UK,http://ua-iptv.com:8080//zerubassman@yahoo.com/2MR879Z9PL/1001376$LR•IPV4•52『线路43』 +UK,http://ua-iptv.com:8080//zerubassman@yahoo.com/2MR879Z9PL/1001378$LR•IPV4•52『线路44』 +UK,http://ua-iptv.com:8080//zerubassman@yahoo.com/2MR879Z9PL/1001379$LR•IPV4•52『线路45』 +UK,http://nocable.cc:8080//OURTV/OURTV@4806/53705$LR•IPV4•52『线路46』 +UK,http://nocable.cc:8080//OURTV/OURTV@4806/35238$LR•IPV4•52『线路47』 +UK,http://nocable.cc:8080//OURTV/OURTV@4806/53663$LR•IPV4•52『线路48』 +UK,http://nocable.cc:8080//OURTV/OURTV@4806/45940$LR•IPV4•52『线路49』 +UK,http://vocotv.pro//revol/revol/276918$LR•IPV4•52『线路50』 +UK,http://vocotv.pro//revol/revol/276924$LR•IPV4•52『线路51』 +UK,http://vocotv.pro//revol/revol/276906$LR•IPV4•52『线路52』 +US,http://138.121.15.230:9002/DEPELICULA/index.m3u8$LR•IPV4•17『线路1』 +US,https://amg17233-amg17233c1-wisptv-us-6409.playouts.now.amagi.tv/playlist.m3u8$LR•IPV4•17『线路2』 +US,https://jmp2.uk/plu-6304f20c941c5d00089634e7.m3u8$LR•IPV4•17『线路3』 +US,https://jmp2.uk/plu-63988b61c8d285000798a22a.m3u8$LR•IPV4•17『线路4』 +US,http://206.212.244.63/641/index.m3u8$LR•IPV4•17『线路5』 +US,https://janus.xpbroadcasting.com:8443/hls/xptvUS.m3u8$LR•IPV4•17『线路6』 +US,https://bloomberg.com/media-manifest/streams/us-event.m3u8$LR•IPV4•17『线路7』 +US,https://bloomberg.com/media-manifest/streams/politics.m3u8$LR•IPV4•17『线路8』 +US,https://0b73ace69ebb45eaa249bb87837cb958.mediatailor.us-west-2.amazonaws.com/v1/master/ba62fe743df0fe93366eba3a257d792884136c7f/LINEAR-644-WORBUSENFAST-LG_US/644/lgtv/hls/master/playlist.m3u8$LR•IPV4•17『线路9』 +US,p3p://167.114.175.6:55331/63efe07e000c1db2f23eb46a4e00518a$LR•IPV4•17『线路10』 +US,p3p://167.114.175.6:55331/63efe0de000858baf2402a646c573e1b$LR•IPV4•17『线路11』 +US,p3p://167.114.175.6:55331/63efe252000a7658f245d81113e44b34$LR•IPV4•17『线路12』 +US,p3p://167.114.175.6:55331/63efe2e2000d23b5f2480b4125294b9a$LR•IPV4•17『线路13』 US,https://amg01942-amg01942c5-stirr-us-10184.playouts.now.amagi.tv/playlist.m3u8$LR•IPV4•17『线路14』 US,https://content.uplynk.com/channel/64ca339f04964a5e961c3207a7771bf1.m3u8$LR•IPV4•17『线路15』 US,https://jmp2.uk/plu-62cebd7302478b00073a6b71.m3u8$LR•IPV4•17『线路16』 @@ -992,16 +980,16 @@ zonghe,#genre# 💓专享源🅰️,#genre# 🐼直播熊猫,https://gcwbndali.v.myalicdn.com/gcwbnd/ipanda1000_2/index.m3u8$LR•IPV4 钱塘江,http://gslbmgsplive.miguvideo.com/wd_r3/cnr/qiantangjiang/2000/index.m3u8?msisdn=20250923080124d2a289d7e8424ddd9ea0d2d29a9e0744&mdspid=&spid=800033&netType=0&sid=5500613479&pid=2028597139×tamp=20250923080124&Channel_ID=0116_2600000900-99000-201600010010027&ProgramID=647370520&ParentNodeID=-99&assertID=5500613479&client_ip=106.13.250.83&SecurityKey=20250923080124&promotionId=&mvid=5102115888&mcid=500020&playurlVersion=WX-A1-8.9.1-RELEASE&userid=&jmhm=&videocodec=h264&bean=mgspad&tid=android&conFee=0&puData=a4be52553a643d1013946a49db1f0e09&ddCalcu=9a04eeb20e7f5012b5d5934aa664439d3110$LR•IPV4 -HBO,http://23.237.104.106:8080/USA_HBO/index.m3u8$LR•IPV4•10『线路1』 -HBO,http://23.237.104.106:8080/USA_HBO2/index.m3u8$LR•IPV4•10『线路2』 -HBO,p3p://167.114.175.6:55331/66d22f6b0001f87c739b69c977f063dd$LR•IPV4•10『线路3』 -HBO,p3p://167.114.175.6:55331/623a6e38000091d497395ce957b27132$LR•IPV4•10『线路4』 -HBO,p3p://167.114.175.6:55331/623a706d0003edf59741fcc023dc0089$LR•IPV4•10『线路5』 -HBO,p3p://167.114.175.6:55331/623a700000069676974053b555b700d4$LR•IPV4•10『线路6』 -HBO,p3p://167.114.175.6:55331/64e364fb000a0212a977a1cd342976da$LR•IPV4•10『线路7』 -HBO,p3p://167.114.175.6:55331/65d07877000b028d4787830a723c4ce7$LR•IPV4•10『线路8』 -HBO,http://125.227.210.55:8153/VideoInput/play.ts$LR•IPV4•10『线路9』 -HBO,https://live-manifest.production-public.tubi.io/live/9fe78734-1db2-49b4-af7b-3c89f5f256ad/playlist.m3u8$LR•IPV4•10『线路10』 +HBO,https://live-manifest.production-public.tubi.io/live/9fe78734-1db2-49b4-af7b-3c89f5f256ad/playlist.m3u8$LR•IPV4•10『线路1』 +HBO,http://23.237.104.106:8080/USA_HBO/index.m3u8$LR•IPV4•10『线路2』 +HBO,http://23.237.104.106:8080/USA_HBO2/index.m3u8$LR•IPV4•10『线路3』 +HBO,p3p://167.114.175.6:55331/66d22f6b0001f87c739b69c977f063dd$LR•IPV4•10『线路4』 +HBO,p3p://167.114.175.6:55331/623a6e38000091d497395ce957b27132$LR•IPV4•10『线路5』 +HBO,p3p://167.114.175.6:55331/623a706d0003edf59741fcc023dc0089$LR•IPV4•10『线路6』 +HBO,p3p://167.114.175.6:55331/623a700000069676974053b555b700d4$LR•IPV4•10『线路7』 +HBO,p3p://167.114.175.6:55331/64e364fb000a0212a977a1cd342976da$LR•IPV4•10『线路8』 +HBO,p3p://167.114.175.6:55331/65d07877000b028d4787830a723c4ce7$LR•IPV4•10『线路9』 +HBO,http://125.227.210.55:8153/VideoInput/play.ts$LR•IPV4•10『线路10』 ▶️哪吒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 @@ -1141,52 +1129,52 @@ TVB生活,p3p://167.114.175.6:55331/6649aff000061a1753bc59f97f596d07$LR•IPV4 中视HD,rtmp://f13h.mine.nu/sat/tv091$LR•IPV4•2『线路1』 中视HD,http://50.7.234.10:8278/zhongshihd_twn/playlist.m3u8?ct=19226&tid=MB8B7313326473133264&tsum=ae7506028e559f3a6e2a3519b2f6a91e$LR•IPV4•2『线路2』 生命电视,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,http://37.27.111.214:8080/live/27/hls.m3u8$LR•IPV4•46『线路3』 -HISTORY,http://free.cnlive.club/channel/n20a85c83/index.m3u8?q=1752629214236$LR•IPV4•46『线路4』 -HISTORY,p3p://167.114.175.6:55331/6233e1a30007e08d7da4ab21717b3e79$LR•IPV4•46『线路5』 -HISTORY,https://d3181anftsyl2u.cloudfront.net/v1/aenetworks_alone_1/samsungheadend_us/latest/main/hls/playlist.m3u8$LR•IPV4•46『线路6』 -HISTORY,https://pb-k9ikw6ov8z4qi.akamaized.net/American_Pickers_by_History.m3u8$LR•IPV4•46『线路7』 -HISTORY,https://jmp2.uk/plu-62fb9844db5a4a0007ebc2a3.m3u8$LR•IPV4•46『线路8』 -HISTORY,https://pb-162j8hrspp1iq.akamaized.net/History_365.m3u8$LR•IPV4•46『线路9』 -HISTORY,https://jmp2.uk/plu-69dd5d7bfcb9bf5e3063cb16.m3u8$LR•IPV4•46『线路10』 -HISTORY,https://d1nzda2a2b3swt.cloudfront.net/History_Warfare_Now.m3u8$LR•IPV4•46『线路11』 -HISTORY,https://d28gzbv9fhdm3h.cloudfront.net/playlist/amg00376-magellantv-historyandwarfarenowaunzin-samsungau/playlist.m3u8$LR•IPV4•46『线路12』 -HISTORY,https://amg00376-magellan-amg00376c19-samsung-nz-1735.playouts.now.amagi.tv/playlist/amg00376-magellantv-historyandwarfarenowaunzin-samsungnz/playlist.m3u8$LR•IPV4•46『线路13』 -HISTORY,https://amg00841-amg00841c7-rakuten-uk-2820.playouts.now.amagi.tv/playlist/amg00841-aeemeafast-historyhuntersrakuten-rakutenuk/playlist.m3u8$LR•IPV4•46『线路14』 -HISTORY,https://amg00841-amg00841c9-samsung-gb-3032.playouts.now.amagi.tv/playlist/amg00841-aeemeafast-historyhunterssamsung-samsunggb/playlist.m3u8$LR•IPV4•46『线路15』 -HISTORY,https://jmp2.uk/plu-65819fc1b9adc4000813f37d.m3u8$LR•IPV4•46『线路16』 -HISTORY,https://jmp2.uk/plu-65775d29dfed030008cb3db2.m3u8$LR•IPV4•46『线路17』 -HISTORY,https://pb-m89wlp8flmjzf.akamaized.net/v1/aenetworks_modernmarvels_1/samsungheadend_us/latest/main/hls/playlist.m3u8$LR•IPV4•46『线路18』 -HISTORY,https://amg02333-pbs-amg02333c1-samsung-au-1253.playouts.now.amagi.tv/playlist/amg02333-pbsdistributionfast-pbshistory-samsungau/playlist.m3u8$LR•IPV4•46『线路19』 -HISTORY,https://amg02333-pbs-amg02333c1-samsung-nz-1254.playouts.now.amagi.tv/playlist/amg02333-pbsdistributionfast-pbshistory-samsungnz/playlist.m3u8$LR•IPV4•46『线路20』 -HISTORY,https://linear-188.frequency.stream/dist/glewedtv/188/hls/master/playlist.m3u8$LR•IPV4•46『线路21』 -HISTORY,https://linear-188.frequency.stream/dist/xumo/188/hls/master/playlist.m3u8$LR•IPV4•46『线路22』 -HISTORY,https://jmp2.uk/plu-6000a6f4c3f8550008fc9b91.m3u8$LR•IPV4•46『线路23』 -HISTORY,https://dxagbr7yc4m1d.cloudfront.net/v1/aenetworks_skills_thrills_1/samsungheadend_us/latest/main/hls/playlist.m3u8$LR•IPV4•46『线路24』 -HISTORY,https://rpn.bozztv.com/gusa/gusa-tvshollywoohistory/index.m3u8$LR•IPV4•46『线路25』 -HISTORY,http://213.91.179.28:8000/play/a0c1$LR•IPV4•46『线路26』 -HISTORY,http://45.190.28.50/HISTORY_HD/index.m3u8$LR•IPV4•46『线路27』 -HISTORY,http://88.212.15.19/live/test_history/playlist.m3u8$LR•IPV4•46『线路28』 -HISTORY,http://82.78.243.219:45739/play/a01f/index.m3u8$LR•IPV4•46『线路29』 -HISTORY,http://40.160.24.53/HISTORY_CHANNEL/index.m3u8$LR•IPV4•46『线路30』 -HISTORY,http://138.121.15.230:9002/HISTORY-2/index.m3u8$LR•IPV4•46『线路31』 -HISTORY,http://45.190.28.50/H2_HD/index.m3u8$LR•IPV4•46『线路32』 -HISTORY,https://streamer12.xploretv.si/__cl/cg:prod/__c/A1_SI_HISTORYHD_ott/__op/dash-default/__dci/__f/index.m3u8?admin=xploreTv_test_user&redirect=true$LR•IPV4•46『线路33』 -HISTORY,https://lds-timeline-rakuten.amagi.tv/playlist.m3u8$LR•IPV4•46『线路34』 -HISTORY,http://138.121.15.230:9002/HISTORY-CHANNEL/index.m3u8$LR•IPV4•46『线路35』 -HISTORY,http://103.72.101.252:8080/live/1471.m3u8$LR•IPV4•46『线路36』 -HISTORY,http://103.154.3.101:5001/live/577.m3u8$LR•IPV4•46『线路37』 -HISTORY,http://108.181.20.255:27347/livehttpplay?channel_id=23105$LR•IPV4•46『线路38』 -HISTORY,https://jmp2.uk/plu-5d767b1c126c65d0a307355f.m3u8$LR•IPV4•46『线路39』 -HISTORY,https://jmp2.uk/plu-5d4af1803e7983b391d73b13.m3u8$LR•IPV4•46『线路40』 -HISTORY,https://jmp2.uk/plu-5a4d35dfa5c02e717a234f86.m3u8$LR•IPV4•46『线路41』 -HISTORY,https://shift03.isp.bg/ViasatHistory_HD/index.m3u8$LR•IPV4•46『线路42』 -HISTORY,http://185.102.171.218/ViasatHistory/index.m3u8$LR•IPV4•46『线路43』 -HISTORY,http://315e5a5d.ottrast.com/iptv/8XFKA8883W9M5K/12101/index.m3u8$LR•IPV4•46『线路44』 -HISTORY,https://lb.dstvmultimedia.com/ViasatHistory/index.m3u8$LR•IPV4•46『线路45』 -HISTORY,http://178.124.179.122:8080/HistoryHD/index.m3u8$LR•IPV4•46『线路46』 +HISTORY,https://d3181anftsyl2u.cloudfront.net/v1/aenetworks_alone_1/samsungheadend_us/latest/main/hls/playlist.m3u8$LR•IPV4•46『线路1』 +HISTORY,https://pb-k9ikw6ov8z4qi.akamaized.net/American_Pickers_by_History.m3u8$LR•IPV4•46『线路2』 +HISTORY,https://jmp2.uk/plu-62fb9844db5a4a0007ebc2a3.m3u8$LR•IPV4•46『线路3』 +HISTORY,https://pb-162j8hrspp1iq.akamaized.net/History_365.m3u8$LR•IPV4•46『线路4』 +HISTORY,https://jmp2.uk/plu-69dd5d7bfcb9bf5e3063cb16.m3u8$LR•IPV4•46『线路5』 +HISTORY,https://d1nzda2a2b3swt.cloudfront.net/History_Warfare_Now.m3u8$LR•IPV4•46『线路6』 +HISTORY,https://d28gzbv9fhdm3h.cloudfront.net/playlist/amg00376-magellantv-historyandwarfarenowaunzin-samsungau/playlist.m3u8$LR•IPV4•46『线路7』 +HISTORY,https://amg00376-magellan-amg00376c19-samsung-nz-1735.playouts.now.amagi.tv/playlist/amg00376-magellantv-historyandwarfarenowaunzin-samsungnz/playlist.m3u8$LR•IPV4•46『线路8』 +HISTORY,https://amg00841-amg00841c7-rakuten-uk-2820.playouts.now.amagi.tv/playlist/amg00841-aeemeafast-historyhuntersrakuten-rakutenuk/playlist.m3u8$LR•IPV4•46『线路9』 +HISTORY,https://amg00841-amg00841c9-samsung-gb-3032.playouts.now.amagi.tv/playlist/amg00841-aeemeafast-historyhunterssamsung-samsunggb/playlist.m3u8$LR•IPV4•46『线路10』 +HISTORY,https://jmp2.uk/plu-65819fc1b9adc4000813f37d.m3u8$LR•IPV4•46『线路11』 +HISTORY,https://jmp2.uk/plu-65775d29dfed030008cb3db2.m3u8$LR•IPV4•46『线路12』 +HISTORY,https://pb-m89wlp8flmjzf.akamaized.net/v1/aenetworks_modernmarvels_1/samsungheadend_us/latest/main/hls/playlist.m3u8$LR•IPV4•46『线路13』 +HISTORY,https://amg02333-pbs-amg02333c1-samsung-au-1253.playouts.now.amagi.tv/playlist/amg02333-pbsdistributionfast-pbshistory-samsungau/playlist.m3u8$LR•IPV4•46『线路14』 +HISTORY,https://amg02333-pbs-amg02333c1-samsung-nz-1254.playouts.now.amagi.tv/playlist/amg02333-pbsdistributionfast-pbshistory-samsungnz/playlist.m3u8$LR•IPV4•46『线路15』 +HISTORY,https://linear-188.frequency.stream/dist/glewedtv/188/hls/master/playlist.m3u8$LR•IPV4•46『线路16』 +HISTORY,https://linear-188.frequency.stream/dist/xumo/188/hls/master/playlist.m3u8$LR•IPV4•46『线路17』 +HISTORY,https://jmp2.uk/plu-6000a6f4c3f8550008fc9b91.m3u8$LR•IPV4•46『线路18』 +HISTORY,https://dxagbr7yc4m1d.cloudfront.net/v1/aenetworks_skills_thrills_1/samsungheadend_us/latest/main/hls/playlist.m3u8$LR•IPV4•46『线路19』 +HISTORY,https://rpn.bozztv.com/gusa/gusa-tvshollywoohistory/index.m3u8$LR•IPV4•46『线路20』 +HISTORY,https://9e754fa707344ccca6d84955c8fcaf36.mediatailor.us-east-1.amazonaws.com/v1/master/44f73ba4d03e9607dcd9bebdcb8494d86964f1d8/RlaxxTV-eu_AutenticHistory/playlist.m3u8$LR•IPV4•46『线路21』 +HISTORY,http://213.91.179.28:8000/play/a0c1$LR•IPV4•46『线路22』 +HISTORY,http://45.190.28.50/HISTORY_HD/index.m3u8$LR•IPV4•46『线路23』 +HISTORY,http://88.212.15.19/live/test_history/playlist.m3u8$LR•IPV4•46『线路24』 +HISTORY,http://82.78.243.219:45739/play/a01f/index.m3u8$LR•IPV4•46『线路25』 +HISTORY,http://40.160.24.53/HISTORY_CHANNEL/index.m3u8$LR•IPV4•46『线路26』 +HISTORY,http://138.121.15.230:9002/HISTORY-2/index.m3u8$LR•IPV4•46『线路27』 +HISTORY,http://45.190.28.50/H2_HD/index.m3u8$LR•IPV4•46『线路28』 +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『线路29』 +HISTORY,https://lds-timeline-rakuten.amagi.tv/playlist.m3u8$LR•IPV4•46『线路30』 +HISTORY,http://138.121.15.230:9002/HISTORY-CHANNEL/index.m3u8$LR•IPV4•46『线路31』 +HISTORY,http://103.72.101.252:8080/live/1471.m3u8$LR•IPV4•46『线路32』 +HISTORY,http://103.154.3.101:5001/live/577.m3u8$LR•IPV4•46『线路33』 +HISTORY,http://108.181.20.255:27347/livehttpplay?channel_id=23105$LR•IPV4•46『线路34』 +HISTORY,https://jmp2.uk/plu-5d767b1c126c65d0a307355f.m3u8$LR•IPV4•46『线路35』 +HISTORY,https://jmp2.uk/plu-5d4af1803e7983b391d73b13.m3u8$LR•IPV4•46『线路36』 +HISTORY,https://jmp2.uk/plu-5a4d35dfa5c02e717a234f86.m3u8$LR•IPV4•46『线路37』 +HISTORY,https://shift03.isp.bg/ViasatHistory_HD/index.m3u8$LR•IPV4•46『线路38』 +HISTORY,http://185.102.171.218/ViasatHistory/index.m3u8$LR•IPV4•46『线路39』 +HISTORY,http://315e5a5d.ottrast.com/iptv/8XFKA8883W9M5K/12101/index.m3u8$LR•IPV4•46『线路40』 +HISTORY,https://lb.dstvmultimedia.com/ViasatHistory/index.m3u8$LR•IPV4•46『线路41』 +HISTORY,http://178.124.179.122:8080/HistoryHD/index.m3u8$LR•IPV4•46『线路42』 +HISTORY,https://cdn-ue1-prod.tsv2.amagi.tv/linear/ldsAAAAAA-timeline-samsungau/playlist.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』 🏈体育赛事🏆️,#genre# 视频_8M1080_咪视通-1,http://jackgao.top:35455/itv/3000000001000005308.m3u8?cdn=FifastbLive$LR•IPV4•2『线路1』 @@ -1308,30 +1296,30 @@ HISTORY,http://178.124.179.122:8080/HistoryHD/index.m3u8$LR•IPV4•46『线路 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•2『线路1』 -MLB NETWORK,http://40.160.24.52/MLB_Network/index.m3u8$LR•IPV4•2『线路2』 -FOX Sports,http://fl2.moveonjoy.com/FOX_Sports_1/index.m3u8$LR•IPV4•8『线路1』 -FOX Sports,https://d1jzu95oc8fgt3.cloudfront.net/FOX_Sports.m3u8$LR•IPV4•8『线路2』 -FOX Sports,https://amg02855-foxsports-amg02855c1-xumo-us-1755.playouts.now.amagi.tv/Fox-Sports-AmazonNews/playlist.m3u8$LR•IPV4•8『线路3』 -FOX Sports,https://live-manifest.production-public.tubi.io/live/6035c7fd-efff-4ec7-93dc-aa0c7a58ba47/playlist.m3u8$LR•IPV4•8『线路4』 -FOX Sports,https://jmp2.uk/plu-5a74b8e1e22a61737979c6bf.m3u8$LR•IPV4•8『线路5』 -FOX Sports,http://85.237.89.160:9590/usa-s/FOX-SPORTS-1/index.m3u8$LR•IPV4•8『线路6』 -FOX Sports,https://streamvidex.qzz.io/videx/fox2usa/index.m3u8$LR•IPV4•8『线路7』 -FOX Sports,http://108.181.20.255:27347/livehttpplay?channel_id=23054$LR•IPV4•8『线路8』 -NBA,https://stream1.freetv.fun/nba-tv-7.m3u8$LR•IPV4•8『线路1』 -NBA,https://stream1.freetv.fun/nba-tv-5.m3u8$LR•IPV4•8『线路2』 -NBA,http://170.yfvodcdn.com:19980/live/nbaTV2/hls.m3u8$LR•IPV4•8『线路3』 -NBA,p3p://167.114.175.6:55331/65a587500007bc039fca3566638e69af$LR•IPV4•8『线路4』 -NBA,https://live-manifest.production-public.tubi.io/live/553b8d5e-fd2a-4a61-bdfa-73b34c299d75/playlist.m3u8$LR•IPV4•8『线路5』 -NBA,https://jmp2.uk/plu-6792c30abc03978b9b8bb832.m3u8$LR•IPV4•8『线路6』 -NBA,https://amg00556-amg00556c3-firetv-us-6060.playouts.now.amagi.tv/playlist.m3u8$LR•IPV4•8『线路7』 -NBA,http://user.scalecdn.co:8080/live/54706135/09221986/3092.m3u8$LR•IPV4•8『线路8』 -ESPN,http://41.205.93.154/ESPN/index.m3u8$LR•IPV4•6『线路1』 -ESPN,http://38.96.178.201:80/live/ESPNHD/index.m3u8$LR•IPV4•6『线路2』 -ESPN,http://181.78.197.59:8000/play/a07z/index.m3u8$LR•IPV4•6『线路3』 -ESPN,http://181.78.197.59:8000/play/a081/index.m3u8$LR•IPV4•6『线路4』 -ESPN,http://181.78.197.59:8000/play/a07n/index.m3u8$LR•IPV4•6『线路5』 -ESPN,http://40.160.24.58/ESPN_DEPORTES/index.m3u8$LR•IPV4•6『线路6』 +MLB NETWORK,http://40.160.24.52/MLB_Network/index.m3u8$LR•IPV4•2『线路1』 +MLB NETWORK,http://fl2.moveonjoy.com/MLB_NETWORK/index.m3u8$LR•IPV4•2『线路2』 +FOX Sports,https://d1jzu95oc8fgt3.cloudfront.net/FOX_Sports.m3u8$LR•IPV4•8『线路1』 +FOX Sports,https://amg02855-foxsports-amg02855c1-xumo-us-1755.playouts.now.amagi.tv/Fox-Sports-AmazonNews/playlist.m3u8$LR•IPV4•8『线路2』 +FOX Sports,https://live-manifest.production-public.tubi.io/live/6035c7fd-efff-4ec7-93dc-aa0c7a58ba47/playlist.m3u8$LR•IPV4•8『线路3』 +FOX Sports,https://jmp2.uk/plu-5a74b8e1e22a61737979c6bf.m3u8$LR•IPV4•8『线路4』 +FOX Sports,http://85.237.89.160:9590/usa-s/FOX-SPORTS-1/index.m3u8$LR•IPV4•8『线路5』 +FOX Sports,https://streamvidex.qzz.io/videx/fox2usa/index.m3u8$LR•IPV4•8『线路6』 +FOX Sports,http://108.181.20.255:27347/livehttpplay?channel_id=23054$LR•IPV4•8『线路7』 +FOX Sports,http://fl2.moveonjoy.com/FOX_Sports_1/index.m3u8$LR•IPV4•8『线路8』 +NBA,https://live-manifest.production-public.tubi.io/live/553b8d5e-fd2a-4a61-bdfa-73b34c299d75/playlist.m3u8$LR•IPV4•8『线路1』 +NBA,https://jmp2.uk/plu-6792c30abc03978b9b8bb832.m3u8$LR•IPV4•8『线路2』 +NBA,https://amg00556-amg00556c3-firetv-us-6060.playouts.now.amagi.tv/playlist.m3u8$LR•IPV4•8『线路3』 +NBA,http://user.scalecdn.co:8080/live/54706135/09221986/3092.m3u8$LR•IPV4•8『线路4』 +NBA,https://stream1.freetv.fun/nba-tv-7.m3u8$LR•IPV4•8『线路5』 +NBA,https://stream1.freetv.fun/nba-tv-5.m3u8$LR•IPV4•8『线路6』 +NBA,http://170.yfvodcdn.com:19980/live/nbaTV2/hls.m3u8$LR•IPV4•8『线路7』 +NBA,p3p://167.114.175.6:55331/65a587500007bc039fca3566638e69af$LR•IPV4•8『线路8』 +ESPN,http://181.78.197.59:8000/play/a07z/index.m3u8$LR•IPV4•6『线路1』 +ESPN,http://181.78.197.59:8000/play/a081/index.m3u8$LR•IPV4•6『线路2』 +ESPN,http://181.78.197.59:8000/play/a07n/index.m3u8$LR•IPV4•6『线路3』 +ESPN,http://40.160.24.58/ESPN_DEPORTES/index.m3u8$LR•IPV4•6『线路4』 +ESPN,http://41.205.93.154/ESPN/index.m3u8$LR•IPV4•6『线路5』 +ESPN,http://38.96.178.201:80/live/ESPNHD/index.m3u8$LR•IPV4•6『线路6』 緯來體育,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 @@ -1522,13 +1510,12 @@ TraceSports,http://209.141.58.162:4994/proxy?url=http%3A//209.141.58.162%3A5050/ 义胆红唇,https://vip.ffzy-play6.com/20221116/7315_8765f39c/index.m3u8$LR•IPV4 义胆雄心,https://vip.ffzy-play7.com/20221129/7714_a0c75de1/index.m3u8$LR•IPV4 音乐僵尸,https://vip.ffzy-play6.com/20221207/10627_09b3f2e5/index.m3u8$LR•IPV4 -英雄,http://cdn.jdshipin.com:8880/huya.php?id=23824164$LR•IPV4•7『线路1』 -英雄,https://live.ottiptv.cc/yy/1352475619$LR•IPV4•7『线路2』 -英雄,https://vip.ffzy-play7.com/20221227/9993_9681b67b/index.m3u8$LR•IPV4•7『线路3』 -英雄,https://vip.ffzy-play.com/20221015/981_2ca5b5f9/index.m3u8$LR•IPV4•7『线路4』 -英雄,https://vip.ffzy-play6.com/20221207/10694_f9088e66/index.m3u8$LR•IPV4•7『线路5』 -英雄,https://vip.ffzy-play7.com/20221129/7743_4656dd25/index.m3u8$LR•IPV4•7『线路6』 -英雄,https://vip.ffzy-play6.com/20221112/6371_9b5bf930/index.m3u8$LR•IPV4•7『线路7』 +英雄,https://live.ottiptv.cc/yy/1352475619$LR•IPV4•6『线路1』 +英雄,https://vip.ffzy-play7.com/20221227/9993_9681b67b/index.m3u8$LR•IPV4•6『线路2』 +英雄,https://vip.ffzy-play.com/20221015/981_2ca5b5f9/index.m3u8$LR•IPV4•6『线路3』 +英雄,https://vip.ffzy-play6.com/20221207/10694_f9088e66/index.m3u8$LR•IPV4•6『线路4』 +英雄,https://vip.ffzy-play7.com/20221129/7743_4656dd25/index.m3u8$LR•IPV4•6『线路5』 +英雄,https://vip.ffzy-play6.com/20221112/6371_9b5bf930/index.m3u8$LR•IPV4•6『线路6』 赢钱专家,https://vip.ffzy-play6.com/20221113/6794_d514b390/index.m3u8$LR•IPV4 有话好好说,https://vip.ffzy-play7.com/20221112/3406_98dc6f14/index.m3u8$LR•IPV4 与龙共舞,https://vip.ffzy-play6.com/20221207/10859_1b02d27c/index.m3u8$LR•IPV4 @@ -1637,10 +1624,11 @@ A计划,https://vip.ffzy-play7.com/20221115/4412_bf4bdaf6/index.m3u8$LR•IPV4 贺岁合家欢剧场,https://live.metshop.top/huya/11602067$LR•IPV4 滇军抗战,https://live.metshop.top/huya/11342388$LR•IPV4 联合抗日,https://live.metshop.top/huya/11352910$LR•IPV4 -三国,https://live.ottiptv.cc/huya/11602081$LR•IPV4•4『线路1』 -三国,https://live.ottiptv.cc/huya/11352944$LR•IPV4•4『线路2』 -三国,https://live.metshop.top/huya/11352944$LR•IPV4•4『线路3』 -三国,http://103.193.151.146/huya.php?id=29465871$LR•IPV4•4『线路4』 +三国,https://live.ottiptv.cc/huya/11602081$LR•IPV4•5『线路1』 +三国,https://live.ottiptv.cc/huya/11352944$LR•IPV4•5『线路2』 +三国,https://goodiptv.club/douyu/5908256$LR•IPV4•5『线路3』 +三国,https://live.metshop.top/huya/11352944$LR•IPV4•5『线路4』 +三国,http://103.193.151.146/huya.php?id=29465871$LR•IPV4•5『线路5』 雍正皇帝,https://live.metshop.top/huya/11342439$LR•IPV4 许冠英合集,https://live.metshop.top/huya/11601972$LR•IPV4 未知1,http://58.39.190.143:35455/huya/23734246$LR•IPV4 @@ -1672,9 +1660,9 @@ 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=8a921813ee3b23c82763145c9f291a3b$LR•IPV4•41『线路1』 -纪录,https://v4-e6b1c5baf4e240fe63adbf68dda23435.livehwc4.com/play.kankanlive.com/live/1698423397390920.m3u8?sub_m3u8=true&edge_slice=true&user_session_id=f3fb3ddaca05941087114cf6481e1c23$LR•IPV4•41『线路2』 -纪录,https://ali-m-l.cztv.com/channels/lantian/channel012/1080p.m3u8$LR•IPV4•41『线路3』 +纪录,https://v4-702cae17a28d6e4f0c0002bba021d934.livehwc4.com/play.kankanlive.com/live/1698423397390920.m3u8?sub_m3u8=true&edge_slice=true&user_session_id=7b0844b76d8c951adb5f87864280aa1c$LR•IPV4•41『线路1』 +纪录,https://ali-m-l.cztv.com/channels/lantian/channel012/1080p.m3u8$LR•IPV4•41『线路2』 +纪录,https://v4-e6b1c5baf4e240fe63adbf68dda23435.livehwc4.com/play.kankanlive.com/live/1698423397390920.m3u8?sub_m3u8=true&edge_slice=true&user_session_id=1c7b8d97d045399d92a9b9016e62d86b$LR•IPV4•41『线路3』 纪录,http://free.cnlive.club/channel/n3f497a4c/index.m3u8?q=1752629214236$LR•IPV4•41『线路4』 纪录,http://free.cnlive.club/channel/2ae73b1a/index.m3u8?q=1752629214236$LR•IPV4•41『线路5』 纪录,http://free.cnlive.club/channel/nb957a7c/index.m3u8?q=1752629214236$LR•IPV4•41『线路6』 @@ -1704,14 +1692,14 @@ XXXXXXXXX粤,http://lxajh.top/tv/douyu.php?id=8912325$LR•IPV4 纪录,https://rt-doc.rttv.com/dvr/rtdru/rtdru1080.m3u8$LR•IPV4•41『线路30』 纪录,https://rt-rtd.rttv.com/dvr/rtdoc/playlist_4500Kb.m3u8$LR•IPV4•41『线路31』 纪录,p3p://167.114.175.6:55331/623baf7a0004e5d79c2047cd46107be2$LR•IPV4•41『线路32』 -纪录,http://23.237.104.106:8080/USA_DISCOVERY/index.m3u8$LR•IPV4•41『线路33』 -纪录,https://jmp2.uk/plu-6400f731d200410008f9b339.m3u8$LR•IPV4•41『线路34』 -纪录,https://svs.itworkscdn.net/asharqdiscoverylive/asharqd.smil/playlist_dvr.m3u8$LR•IPV4•41『线路35』 +纪录,https://jmp2.uk/plu-6400f731d200410008f9b339.m3u8$LR•IPV4•41『线路33』 +纪录,https://svs.itworkscdn.net/asharqdiscoverylive/asharqd.smil/playlist_dvr.m3u8$LR•IPV4•41『线路34』 +纪录,http://23.237.104.106:8080/USA_DISCOVERY/index.m3u8$LR•IPV4•41『线路35』 纪录,p3p://167.114.175.6:55331/62c9a44500000cd3c69dc74b77c62c82$LR•IPV4•41『线路36』 纪录,http://40.160.24.53/MTV_LIVE/index.m3u8$LR•IPV4•41『线路37』 纪录,p3p://167.114.175.6:55331/5fe16de700083ba97787607e74d90cb5$LR•IPV4•41『线路38』 -纪录,p3p://167.114.175.6:55331/644518fd0002d5953f21bedc56b6465f$LR•IPV4•41『线路39』 -纪录,https://i.mjh.nz/.r/sky-hgtv.m3u8$LR•IPV4•41『线路40』 +纪录,https://i.mjh.nz/.r/sky-hgtv.m3u8$LR•IPV4•41『线路39』 +纪录,p3p://167.114.175.6:55331/644518fd0002d5953f21bedc56b6465f$LR•IPV4•41『线路40』 纪录,p3p://167.114.175.6:55331/61e4f963000c710c55474e4e1e2273d9$LR•IPV4•41『线路41』 💓儿童专享,#genre# @@ -1724,18 +1712,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://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』 +儿童,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』 儿童,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』 @@ -1747,15 +1735,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』 -儿童,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』 +儿童,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/64bea3f00002bdf919e6522520650b26$LR•IPV4•27『线路27』 🍹定制台☕️,#genre# 韩国娱乐台,https://stream1.freetv.fun/glo-bet-1.ctv$LR•IPV4 -贝爷,http://www.douzhicloud.site:35455/douyu/4332$LR•IPV4•2『线路1』 -贝爷,http://epg.112114.xyz/douyu/252802$LR•IPV4•2『线路2』 +贝爷,http://epg.112114.xyz/douyu/252802$LR•IPV4•2『线路1』 +贝爷,http://www.douzhicloud.site:35455/douyu/4332$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 @@ -1802,11 +1790,11 @@ 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,p3p://167.114.175.6:55331/6506c5e500027c7f33a9834b5d937568$LR•IPV4•5『线路1』 -Star Movies,http://znty.dyndns.org:5010/hls/foxm.m3u8$LR•IPV4•5『线路2』 -Star Movies,http://92.36.202.5:10001/play/a01o$LR•IPV4•5『线路3』 -Star Movies,http://149.71.34.166:8000/play/a01f/index.m3u8$LR•IPV4•5『线路4』 -Star Movies,http://149.71.34.166:8000/play/a01g/index.m3u8$LR•IPV4•5『线路5』 +Star Movies,http://znty.dyndns.org:5010/hls/foxm.m3u8$LR•IPV4•5『线路1』 +Star Movies,http://92.36.202.5:10001/play/a01o$LR•IPV4•5『线路2』 +Star Movies,http://149.71.34.166:8000/play/a01f/index.m3u8$LR•IPV4•5『线路3』 +Star Movies,http://149.71.34.166:8000/play/a01g/index.m3u8$LR•IPV4•5『线路4』 +Star Movies,p3p://167.114.175.6:55331/6506c5e500027c7f33a9834b5d937568$LR•IPV4•5『线路5』 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 @@ -1823,8 +1811,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,p3p://167.114.175.6:55331/6506d285000b06bd33dad67a652e2bfd$LR•IPV4•2『线路1』 -Super Kids,https://jmp2.uk/plu-652557d93fd33c000802f995.m3u8$LR•IPV4•2『线路2』 +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』 创世电视,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 @@ -1844,47 +1832,47 @@ 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,p3p://167.114.175.6:55331/64c7ce3f000afa423db36d3f378c386d$LR•IPV4•11『线路1』 -Z,https://live.artidijitalmedya.com/artidijital_kanalz/kanalz/playlist.m3u8$LR•IPV4•11『线路2』 -Z,http://s1.media-planet.sk/live/novezamky/BratuMarian.m3u8$LR•IPV4•11『线路3』 -Z,https://jmp2.uk/plu-68e8fd7c3ede4398bc69af93.m3u8$LR•IPV4•11『线路4』 -Z,https://d39g1vxj2ef6in.cloudfront.net/v1/master/3fec3e5cac39a52b2132f9c66c83dae043dc17d4/prod-rakuten-stitched/master.m3u8?ads.xumo_channelId=88883103$LR•IPV4•11『线路5』 -Z,https://amg02393-awpg-amg02393c3-rakuten-uk-2462.playouts.now.amagi.tv/playlist/amg02393-awpg-leszamours-rakutenuk/playlist.m3u8$LR•IPV4•11『线路6』 -Z,https://jmp2.uk/plu-652d0b756208700008d758ad.m3u8$LR•IPV4•11『线路7』 -Z,https://stream.ztv.zp.ua/hls/live.m3u8$LR•IPV4•11『线路8』 -Z,https://jmp2.uk/plu-66b3af48d2d50d00083d6936.m3u8$LR•IPV4•11『线路9』 -Z,https://d1hz1p2gea2zy4.cloudfront.net/live/rmgtv/RMG-TRENDSZFR-LIVE/index.m3u8$LR•IPV4•11『线路10』 -Z,https://d1hz1p2gea2zy4.cloudfront.net/live/rmgtv/RMG-TRENDSZNL-LIVE/index.m3u8$LR•IPV4•11『线路11』 +Z,https://live.artidijitalmedya.com/artidijital_kanalz/kanalz/playlist.m3u8$LR•IPV4•11『线路1』 +Z,http://s1.media-planet.sk/live/novezamky/BratuMarian.m3u8$LR•IPV4•11『线路2』 +Z,https://jmp2.uk/plu-68e8fd7c3ede4398bc69af93.m3u8$LR•IPV4•11『线路3』 +Z,https://d39g1vxj2ef6in.cloudfront.net/v1/master/3fec3e5cac39a52b2132f9c66c83dae043dc17d4/prod-rakuten-stitched/master.m3u8?ads.xumo_channelId=88883103$LR•IPV4•11『线路4』 +Z,https://amg02393-awpg-amg02393c3-rakuten-uk-2462.playouts.now.amagi.tv/playlist/amg02393-awpg-leszamours-rakutenuk/playlist.m3u8$LR•IPV4•11『线路5』 +Z,https://jmp2.uk/plu-652d0b756208700008d758ad.m3u8$LR•IPV4•11『线路6』 +Z,https://stream.ztv.zp.ua/hls/live.m3u8$LR•IPV4•11『线路7』 +Z,https://jmp2.uk/plu-66b3af48d2d50d00083d6936.m3u8$LR•IPV4•11『线路8』 +Z,https://d1hz1p2gea2zy4.cloudfront.net/live/rmgtv/RMG-TRENDSZFR-LIVE/index.m3u8$LR•IPV4•11『线路9』 +Z,https://d1hz1p2gea2zy4.cloudfront.net/live/rmgtv/RMG-TRENDSZNL-LIVE/index.m3u8$LR•IPV4•11『线路10』 +Z,p3p://167.114.175.6:55331/64c7ce3f000afa423db36d3f378c386d$LR•IPV4•11『线路11』 博斯无限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•27『线路1』 -HITS,https://9f8e2ffcd87f4c469be7194e48f84874.mediatailor.us-west-2.amazonaws.com/v1/master/ba62fe743df0fe93366eba3a257d792884136c7f/LINEAR-802-UK-SONYONECOMEDYHITS-LG_UK/playlist.m3u8$LR•IPV4•27『线路2』 -HITS,http://37.27.111.214:8080/live/28/hls.m3u8$LR•IPV4•27『线路3』 -HITS,p3p://167.114.175.6:55331/6233e648000735057db6cf734adf440d$LR•IPV4•27『线路4』 -HITS,https://webtvstream.bhtelecom.ba/hls7/filmbox_premium.m3u8$LR•IPV4•27『线路5』 -HITS,http://88.212.15.19/live/test_film_boxpremium_hd_hevc/playlist.m3u8$LR•IPV4•27『线路6』 -HITS,http://46.149.191.217:9005/play/a01x$LR•IPV4•27『线路7』 -HITS,https://cdn10jtedge.indihometv.com/atm/DASH/hitsmovie/manifest.mpd$LR•IPV4•27『线路8』 -HITS,http://40.160.24.52/EPIX_2/index.m3u8$LR•IPV4•27『线路9』 -HITS,https://5098a8b860504a3690fd2e7c0a18d68f.mediatailor.us-west-2.amazonaws.com/v1/master/ba62fe743df0fe93366eba3a257d792884136c7f/LINEAR-817-FR-SONYONEHITSACTION-LG_FR/playlist.m3u8$LR•IPV4•27『线路10』 -HITS,https://7aa9671895264ec9a384dfed1b992171.mediatailor.us-west-2.amazonaws.com/v1/master/ba62fe743df0fe93366eba3a257d792884136c7f/LINEAR-818-FR-SONYONEHITSCOMDIE-LG_FR/playlist.m3u8$LR•IPV4•27『线路11』 -HITS,https://cdn10jtedge.indihometv.com/atm/DASH/hits/manifest.mpd$LR•IPV4•27『线路12』 -HITS,https://stream.ads.ottera.tv/playlist.m3u8?network_id=1058$LR•IPV4•27『线路13』 -HITS,https://lotus.stingray.com/manifest/ose-237ads-montreal/samsungtvplus/master.m3u8$LR•IPV4•27『线路14』 -HITS,https://d2tuyivcrvbj81.cloudfront.net/XITE_Christian_Hits.m3u8$LR•IPV4•27『线路15』 -HITS,http://31.148.48.15/Bridge_TV_Dance/index.m3u8$LR•IPV4•27『线路16』 -HITS,http://cm.hostlagarto.com:8081/hits360tv/hits360HD.myStream/playlist.m3u8$LR•IPV4•27『线路17』 -HITS,http://88.212.15.19/live/mb_hits/index.m3u8$LR•IPV4•27『线路18』 -HITS,https://test.946985.filegear-sg.me/proxy/a23981548880f405$LR•IPV4•27『线路19』 -HITS,https://stream.ottlive.co.in/punjabihits/index.m3u8$LR•IPV4•27『线路20』 -HITS,https://lotus.stingray.com/manifest/ose-214ads-montreal/samsungtvplus/master.m3u8$LR•IPV4•27『线路21』 -HITS,https://d39g1vxj2ef6in.cloudfront.net/v1/master/3fec3e5cac39a52b2132f9c66c83dae043dc17d4/prod-rakuten-stitched/master.m3u8?ads.xumo_channelId=88883053$LR•IPV4•27『线路22』 -HITS,https://lotus.stingray.com/manifest/ose-155ads-montreal/samsungtvplus/master.m3u8$LR•IPV4•27『线路23』 -HITS,https://d39g1vxj2ef6in.cloudfront.net/v1/manifest/3fec3e5cac39a52b2132f9c66c83dae043dc17d4/prod-rakuten-stitched/54947915-6504-4548-aaef-eabd451f8607/1.m3u8$LR•IPV4•27『线路24』 -HITS,https://vglivessai.akamaized.net/sg/v1/master/611d79b11b77e2f571934fd80ca1413453772ac7/e11b0319-52e8-4190-ab03-3931cc68eac9/index.m3u8$LR•IPV4•27『线路25』 -HITS,https://d726x48n2pd5h.cloudfront.net/XITE_Hits.m3u8$LR•IPV4•27『线路26』 -HITS,https://d726x48n2pd5h.cloudfront.net/v1/master/3722c60a815c199d9c0ef36c5b73da68a62b09d1/cc-skxr1pazhltvp/XITE_Hits.m3u8$LR•IPV4•27『线路27』 +HITS,https://webtvstream.bhtelecom.ba/hls7/filmbox_premium.m3u8$LR•IPV4•27『线路1』 +HITS,http://88.212.15.19/live/test_film_boxpremium_hd_hevc/playlist.m3u8$LR•IPV4•27『线路2』 +HITS,http://46.149.191.217:9005/play/a01x$LR•IPV4•27『线路3』 +HITS,https://cdn10jtedge.indihometv.com/atm/DASH/hitsmovie/manifest.mpd$LR•IPV4•27『线路4』 +HITS,http://40.160.24.52/EPIX_2/index.m3u8$LR•IPV4•27『线路5』 +HITS,https://5098a8b860504a3690fd2e7c0a18d68f.mediatailor.us-west-2.amazonaws.com/v1/master/ba62fe743df0fe93366eba3a257d792884136c7f/LINEAR-817-FR-SONYONEHITSACTION-LG_FR/playlist.m3u8$LR•IPV4•27『线路6』 +HITS,https://7aa9671895264ec9a384dfed1b992171.mediatailor.us-west-2.amazonaws.com/v1/master/ba62fe743df0fe93366eba3a257d792884136c7f/LINEAR-818-FR-SONYONEHITSCOMDIE-LG_FR/playlist.m3u8$LR•IPV4•27『线路7』 +HITS,https://cdn10jtedge.indihometv.com/atm/DASH/hits/manifest.mpd$LR•IPV4•27『线路8』 +HITS,https://stream.ads.ottera.tv/playlist.m3u8?network_id=1058$LR•IPV4•27『线路9』 +HITS,https://lotus.stingray.com/manifest/ose-237ads-montreal/samsungtvplus/master.m3u8$LR•IPV4•27『线路10』 +HITS,https://d2tuyivcrvbj81.cloudfront.net/XITE_Christian_Hits.m3u8$LR•IPV4•27『线路11』 +HITS,http://31.148.48.15/Bridge_TV_Dance/index.m3u8$LR•IPV4•27『线路12』 +HITS,http://cm.hostlagarto.com:8081/hits360tv/hits360HD.myStream/playlist.m3u8$LR•IPV4•27『线路13』 +HITS,http://88.212.15.19/live/mb_hits/index.m3u8$LR•IPV4•27『线路14』 +HITS,https://test.946985.filegear-sg.me/proxy/a23981548880f405$LR•IPV4•27『线路15』 +HITS,https://stream.ottlive.co.in/punjabihits/index.m3u8$LR•IPV4•27『线路16』 +HITS,https://lotus.stingray.com/manifest/ose-214ads-montreal/samsungtvplus/master.m3u8$LR•IPV4•27『线路17』 +HITS,https://d39g1vxj2ef6in.cloudfront.net/v1/master/3fec3e5cac39a52b2132f9c66c83dae043dc17d4/prod-rakuten-stitched/master.m3u8?ads.xumo_channelId=88883053$LR•IPV4•27『线路18』 +HITS,https://lotus.stingray.com/manifest/ose-155ads-montreal/samsungtvplus/master.m3u8$LR•IPV4•27『线路19』 +HITS,https://d39g1vxj2ef6in.cloudfront.net/v1/manifest/3fec3e5cac39a52b2132f9c66c83dae043dc17d4/prod-rakuten-stitched/54947915-6504-4548-aaef-eabd451f8607/1.m3u8$LR•IPV4•27『线路20』 +HITS,https://vglivessai.akamaized.net/sg/v1/master/611d79b11b77e2f571934fd80ca1413453772ac7/e11b0319-52e8-4190-ab03-3931cc68eac9/index.m3u8$LR•IPV4•27『线路21』 +HITS,https://d726x48n2pd5h.cloudfront.net/XITE_Hits.m3u8$LR•IPV4•27『线路22』 +HITS,https://d726x48n2pd5h.cloudfront.net/v1/master/3722c60a815c199d9c0ef36c5b73da68a62b09d1/cc-skxr1pazhltvp/XITE_Hits.m3u8$LR•IPV4•27『线路23』 +HITS,https://89514e758f814907be6d14bbc0aa66b7.mediatailor.us-west-2.amazonaws.com/v1/master/ba62fe743df0fe93366eba3a257d792884136c7f/LINEAR-800-UK-SONYONEACTIONHITS-LG_UK/playlist.m3u8$LR•IPV4•27『线路24』 +HITS,https://9f8e2ffcd87f4c469be7194e48f84874.mediatailor.us-west-2.amazonaws.com/v1/master/ba62fe743df0fe93366eba3a257d792884136c7f/LINEAR-802-UK-SONYONECOMEDYHITS-LG_UK/playlist.m3u8$LR•IPV4•27『线路25』 +HITS,http://37.27.111.214:8080/live/28/hls.m3u8$LR•IPV4•27『线路26』 +HITS,p3p://167.114.175.6:55331/6233e648000735057db6cf734adf440d$LR•IPV4•27『线路27』 探索亚洲,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 @@ -1918,9 +1906,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,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』 +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』 韩国娱乐,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 @@ -1934,8 +1922,8 @@ Boomerang,p3p://167.114.175.6:55331/621e313f0005594c28ec88582a49029c$LR•IPV4 原住民电视,p3p://167.114.175.6:55331/64450b180002b23d3eeb784a0aa62e20$LR•IPV4 EVE,p3p://167.114.175.6:55331/6445172e000920783f1aafee754f43e4$LR•IPV4 Classica古典音乐,p3p://167.114.175.6:55331/6452b4f1000c38e8744ac80744c33d67$LR•IPV4 -Mezzo Live,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』 +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』 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 @@ -1944,12 +1932,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,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』 +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』 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 @@ -1959,13 +1947,13 @@ Rock Entertainmen,p3p://167.114.175.6:55331/65ad27c7000dfceebd94ddb20bec19f4$LR 凤凰美洲,p3p://167.114.175.6:55331/5fe00fca0004e627722fbe5a480a642f$LR•IPV4 💓英语频道,#genre# -Red Bull TV,http://rbmn-live.akamaized.net/hls/live/590964/BoRB-AT/master_6660.m3u8$LR•IPV4•7『线路1』 -Red Bull TV,https://3ea22335.wurl.com/master/f36d25e7e52f1ba8d7e56eb859c636563214f541/UmFrdXRlblRWLWdiX1JlZEJ1bGxUVl9ITFM/playlist.m3u8$LR•IPV4•7『线路2』 -Red Bull TV,https://rbmn-live.akamaized.net/hls/live/590964/BoRB-AT/master.m3u8$LR•IPV4•7『线路3』 -Red Bull TV,https://db34cc6127ac459db55cab5f97cd66b9.mediatailor.us-west-2.amazonaws.com/v1/master/ba62fe743df0fe93366eba3a257d792884136c7f/LINEAR-680-WORBAUENFAST-WHALETVPLUS/680/whaletvplus/hls/master/playlist.m3u8$LR•IPV4•7『线路4』 -Red Bull TV,https://d03ae6b5c6724c24867e97a3dc04934a.mediatailor.us-west-2.amazonaws.com/v1/master/ba62fe743df0fe93366eba3a257d792884136c7f/LINEAR-1026-WORBBRPTFAST-WHALETVPLUS/1026/hls/master/playlist.m3u8$LR•IPV4•7『线路5』 -Red Bull TV,https://46cfeb23c7f74853bba7a256655a3119.mediatailor.us-west-2.amazonaws.com/v1/master/ba62fe743df0fe93366eba3a257d792884136c7f/LINEAR-582-WORBDACHDEFAST-WHALETVPLUS/582/whaletvplus/hls/master/playlist.m3u8$LR•IPV4•7『线路6』 -Red Bull TV,https://886bd3fbc782459f8de7555d32d7e9ce.mediatailor.us-west-2.amazonaws.com/v1/master/ba62fe743df0fe93366eba3a257d792884136c7f/LINEAR-957-WORBLATAMESFAST-WHALETVPLUS/957/whaletvplus/hls/master/playlist.m3u8$LR•IPV4•7『线路7』 +Red Bull TV,https://3ea22335.wurl.com/master/f36d25e7e52f1ba8d7e56eb859c636563214f541/UmFrdXRlblRWLWdiX1JlZEJ1bGxUVl9ITFM/playlist.m3u8$LR•IPV4•7『线路1』 +Red Bull TV,https://rbmn-live.akamaized.net/hls/live/590964/BoRB-AT/master.m3u8$LR•IPV4•7『线路2』 +Red Bull TV,https://db34cc6127ac459db55cab5f97cd66b9.mediatailor.us-west-2.amazonaws.com/v1/master/ba62fe743df0fe93366eba3a257d792884136c7f/LINEAR-680-WORBAUENFAST-WHALETVPLUS/680/whaletvplus/hls/master/playlist.m3u8$LR•IPV4•7『线路3』 +Red Bull TV,https://d03ae6b5c6724c24867e97a3dc04934a.mediatailor.us-west-2.amazonaws.com/v1/master/ba62fe743df0fe93366eba3a257d792884136c7f/LINEAR-1026-WORBBRPTFAST-WHALETVPLUS/1026/hls/master/playlist.m3u8$LR•IPV4•7『线路4』 +Red Bull TV,https://46cfeb23c7f74853bba7a256655a3119.mediatailor.us-west-2.amazonaws.com/v1/master/ba62fe743df0fe93366eba3a257d792884136c7f/LINEAR-582-WORBDACHDEFAST-WHALETVPLUS/582/whaletvplus/hls/master/playlist.m3u8$LR•IPV4•7『线路5』 +Red Bull TV,https://886bd3fbc782459f8de7555d32d7e9ce.mediatailor.us-west-2.amazonaws.com/v1/master/ba62fe743df0fe93366eba3a257d792884136c7f/LINEAR-957-WORBLATAMESFAST-WHALETVPLUS/957/whaletvplus/hls/master/playlist.m3u8$LR•IPV4•7『线路6』 +Red Bull TV,http://rbmn-live.akamaized.net/hls/live/590964/BoRB-AT/master_6660.m3u8$LR•IPV4•7『线路7』 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』 @@ -1988,105 +1976,103 @@ Loupe 4K,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=4726&tk=f6cc1e0a0e1a$LR•IP 🌐央视频道,#genre# CCTV兵器,http://38.75.136.137:98/gslb/dsdqpub/gfjs.m3u8?auth=testpub$LR•IPV4 -CCTV,https://live-play-hls.cctvnews.cctv.com/CCTVChannel/channel_cctv4_mbd.m3u8?auth_key=1784329200-1-b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c-2245971645866ed95972e22af68cc8d1&yid=b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c$LR•IPV4•90『线路1』 -CCTV,http://183.196.25.171:808/hls/77/index.m3u8$LR•IPV4•90『线路2』 -CCTV,https://jsv-live-play.sfccn.com/live/jsv_3920_fhd.m3u8$LR•IPV4•90『线路3』 -CCTV,http://183.196.25.171:808/hls/11/index.m3u8$LR•IPV4•90『线路4』 -CCTV,http://183.196.25.171:808/hls/93/index.m3u8$LR•IPV4•90『线路5』 -CCTV,https://live-play-hls.cctvnews.cctv.com/CCTVChannel/channel_cctv4_mbd.m3u8?auth_key=1784271600-1-b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c-6aec44040ec72def77e22587fc404005&yid=b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c$LR•IPV4•90『线路6』 -CCTV,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226895/1.m3u8?$LR•IPV6•90『线路7』 -CCTV,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226893/1.m3u8?$LR•IPV6•90『线路8』 -CCTV,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226471/1.m3u8?$LR•IPV6•90『线路9』 -CCTV,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226335/1.m3u8?$LR•IPV6•90『线路10』 -CCTV,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226469/1.m3u8?$LR•IPV6•90『线路11』 -CCTV,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226468/1.m3u8?$LR•IPV6•90『线路12』 -CCTV,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226946/1.m3u8?$LR•IPV6•90『线路13』 -CCTV,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226485/1.m3u8?$LR•IPV6•90『线路14』 -CCTV,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226944/1.m3u8?$LR•IPV6•90『线路15』 -CCTV,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226937/1.m3u8?$LR•IPV6•90『线路16』 -CCTV,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226334/1.m3u8?$LR•IPV6•90『线路17』 -CCTV,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226942/1.m3u8?$LR•IPV6•90『线路18』 -CCTV,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226316/1.m3u8?$LR•IPV6•90『线路19』 -CCTV,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226947/1.m3u8?$LR•IPV6•90『线路20』 -CCTV,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226333/1.m3u8?$LR•IPV6•90『线路21』 -CCTV,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221227002/1.m3u8?$LR•IPV6•90『线路22』 -CCTV,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226318/1.m3u8?$LR•IPV6•90『线路23』 -CCTV,http://222.223.41.27:8888/hls/2/index.m3u8$LR•IPV4•90『线路24』 -CCTV,http://116.128.243.121:85/tsfile/live/0002_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•90『线路25』 -CCTV,http://63.141.230.178:82/gslb/zbdq5.m3u8?id=cctv3hd$LR•IPV4•90『线路26』 -CCTV,http://207.56.13.146:81/cdnlive/cctv3.m3u8$LR•IPV4•90『线路27』 -CCTV,http://63.141.230.178:82/gslb/zbdq5.m3u8?id=cctv4hd$LR•IPV4•90『线路28』 -CCTV,http://74.91.26.218:82/live/cctv4hd.m3u8$LR•IPV4•90『线路29』 -CCTV,http://207.56.13.146:81/cdnlive/cctv4.m3u8$LR•IPV4•90『线路30』 -CCTV,http://38.75.136.137:98/gslb/dsdqbv/cctv5p.m3u8?auth=test20251009$LR•IPV4•90『线路31』 -CCTV,http://204.12.221.218:8181/3m1080p/cctv6.m3u8$LR•IPV4•90『线路32』 -CCTV,http://207.56.13.146:81/cdnlive/cctv6.m3u8$LR•IPV4•90『线路33』 -CCTV,http://74.91.26.218:82/live/cctv7hd.m3u8$LR•IPV4•90『线路34』 -CCTV,http://38.75.136.137:98/gslb/dsdqbv/cctv7hd.m3u8?auth=test20251009$LR•IPV4•90『线路35』 -CCTV,http://192.151.150.154/live/cctv8k.m3u8$LR•IPV4•90『线路36』 -CCTV,http://207.56.13.146:81/cdnlive/cctv8.m3u8$LR•IPV4•90『线路37』 -CCTV,http://173.208.212.130:8181/720p/cctv8.m3u8$LR•IPV4•90『线路38』 -CCTV,http://38.75.136.137:98/gslb/dsdqbv/cctv8hd.m3u8?auth=test20251009$LR•IPV4•90『线路39』 -CCTV,http://204.12.221.218:8181/3m1080p/cctv8.m3u8$LR•IPV4•90『线路40』 -CCTV,http://69.30.245.50/live/cctv8.m3u8$LR•IPV4•90『线路41』 -CCTV,http://222.223.41.27:8888/hls/9/index.m3u8$LR•IPV4•90『线路42』 -CCTV,https://hwapi.yntv.net/ew265l/z1z6s5.m3u8$LR•IPV4•90『线路43』 -CCTV,http://74.91.26.218:82/live/cctv10hd.m3u8$LR•IPV4•90『线路44』 -CCTV,http://74.91.26.218:82/live/cctv11hd.m3u8$LR•IPV4•90『线路45』 -CCTV,http://38.75.136.137:98/gslb/dsdqpub/cctv12hd.m3u8?auth=testpub$LR•IPV4•90『线路46』 -CCTV,https://event.pull.hebtv.com/jishi/cp1.m3u8$LR•IPV4•90『线路47』 -CCTV,http://pull-hls-f1.douyinliving.com/media/stream-696107587393815378/playlist.m3u8?keeptime=00093a80&wsSecret=bbbd054778ab532edfa97bf7c5395746&wsTime=6a544fee&arch_hrchy=s2&s_anchor=1&major_anchor_level=vip&t_id=037-2026071310394131FD5A22CCB9DDAFA77E-5XIF43$LR•IPV4•90『线路48』 -CCTV,http://63.141.230.178:82/gslb/zbdq5.m3u8?id=cctv13hd$LR•IPV4•90『线路49』 -CCTV,http://113.25.252.226:9901/tsfile/live/1017_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•90『线路50』 -CCTV,https://event.pull.hebtv.com/jishi/cp2.m3u8$LR•IPV4•90『线路51』 -CCTV,http://38.75.136.137:98/gslb/dsdqbv/cctv15hd.m3u8?auth=test20251009$LR•IPV4•90『线路52』 -CCTV,http://38.75.136.137:98/gslb/dsdqpub/cctv15hd.m3u8?auth=testpub$LR•IPV4•90『线路53』 -CCTV,http://38.75.136.137:98/gslb/dsdqpub/cctv17hd.m3u8?auth=testpub$LR•IPV4•90『线路54』 -CCTV,https://live-play-hls.cctvnews.cctv.com/CCTVChannel/channel_cctv4_mbd.m3u8?auth_key=1784322000-1-b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c-25fe408e6545f49f3d4eb7f92e97c764&yid=b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c$LR•IPV4•90『线路55』 -CCTV,https://shcm-stream-cf1.stream.264788.xyz/cms001/ch00000090990000001620/index.m3u8?streamid=8a034b40397504e25b3775c772237996&streamkey=01vY5fRxC8VyKg4oq30vfikHXTCAKySLP29l6OG91kQlzDttHgzNLkUw5kivm3PfNsVHJv5FgdsPBYFYI2IWpt7tfRCuFHqLT2pvX67ubMds8jl2DHtvOh0&token=1775754349-4f33f4f84a4abeba-0-91687dc8c9325092efa1d00f330d2710$LR•IPV4•90『线路56』 -CCTV,https://epg.pw/stream/ac8062ec9484078061d3bef507c15a423ac57ae4144e3fcc4b0a198dd420f911.m3u8$LR•IPV4•90『线路57』 -CCTV,http://69.30.245.50/live/cctv6.m3u8$LR•IPV4•90『线路58』 -CCTV,http://74.91.26.218:82/live/cctv8hd.m3u8$LR•IPV4•90『线路59』 -CCTV,http://74.91.26.218:82/live/cctv17hd.m3u8$LR•IPV4•90『线路60』 -CCTV,http://38.75.136.137:98/gslb/dsdqpub/wsjk.m3u8?auth=testpub$LR•IPV4•90『线路61』 -CCTV,http://38.75.136.137:98/gslb/dsdqpub/ystq.m3u8?auth=testpub$LR•IPV4•90『线路62』 -CCTV,http://38.75.136.137:98/gslb/dsdqpub/dyjc.m3u8?auth=testpub$LR•IPV4•90『线路63』 -CCTV,http://38.75.136.137:98/gslb/dsdqpub/fyjc.m3u8?auth=testpub$LR•IPV4•90『线路64』 -CCTV,http://38.75.136.137:98/gslb/dsdqpub/hjjc.m3u8?auth=testpub$LR•IPV4•90『线路65』 -CCTV,http://38.75.136.137:98/gslb/dsdqpub/fyzq.m3u8?auth=testpub$LR•IPV4•90『线路66』 -CCTV,http://38.75.136.137:98/gslb/dsdqpub/fyyy.m3u8?auth=testpub$LR•IPV4•90『线路67』 -CCTV,http://38.75.136.137:98/gslb/dsdqpub/sjdl.m3u8?auth=testpub$LR•IPV4•90『线路68』 -CCTV,http://38.75.136.137:98/gslb/dsdqpub/dszn.m3u8?auth=testpub$LR•IPV4•90『线路69』 -CCTV,http://38.75.136.137:98/gslb/dsdqpub/ysjp.m3u8?auth=testpub$LR•IPV4•90『线路70』 -CCTV,http://38.75.136.137:98/gslb/dsdqpub/nxss.m3u8?auth=testpub$LR•IPV4•90『线路71』 -CCTV,http://fn.tmde.top:35455/nptv/cctv4k.m3u8$LR•IPV4•90『线路72』 -CCTV,http://fn.tmde.top:35455/nptv/cctv8k.m3u8$LR•IPV4•90『线路73』 -CCTV,http://xc.mfykeke.top:35455/nptv/cctv4k.m3u8$LR•IPV4•90『线路74』 -CCTV,http://xc.mfykeke.top:35455/nptv/cctv8k.m3u8$LR•IPV4•90『线路75』 -CCTV,http://69.30.245.50/live/cctv1.m3u8$LR•IPV4•90『线路76』 -CCTV,http://74.91.26.218:82/live/cctv1hd.m3u8$LR•IPV4•90『线路77』 -CCTV,https://global.cgtn.cicc.media.caton.cloud/master/cgtn-america.m3u8$LR•IPV4•90『线路78』 -CCTV,https://dash2.antik.sk/live/test_cctv_tizen/playlist.m3u8$LR•IPV4•90『线路79』 -CCTV,http://go.bkpcp.top/mg/cctv13$LR•IPV4•90『线路80』 -CCTV,https://cdn3.163189.xyz/163189/cctv13$LR•IPV4•90『线路81』 -CCTV,http://74.91.26.218:82/live/cctv3hd.m3u8$LR•IPV4•90『线路82』 -CCTV,https://solo.disfrutaenlared.com:1936/redcctv/redcctv/playlist.m3u8$LR•IPV4•90『线路83』 -CCTV,http://74.91.26.218:82/live/cctv14hd.m3u8$LR•IPV4•90『线路84』 -CCTV,https://xykt-fix.github.io/play/a02e/index.m3u8$LR•IPV4•90『线路85』 -CCTV,http://74.91.26.218:82/live/cctv12hd.m3u8$LR•IPV4•90『线路86』 -CCTV,http://74.91.26.218:82/live/cctv16hd.m3u8$LR•IPV4•90『线路87』 -CCTV,http://38.75.136.137:98/gslb/dsdqpub/gefwq.m3u8?auth=testpub$LR•IPV4•90『线路88』 -CCTV,http://74.91.26.218:82/live/cctv2hd.m3u8$LR•IPV4•90『线路89』 -CCTV,https://xykt-fix.github.io/Y77.m3u8$LR•IPV4•90『线路90』 +CCTV,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226895/1.m3u8?$LR•IPV6•89『线路1』 +CCTV,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226893/1.m3u8?$LR•IPV6•89『线路2』 +CCTV,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226471/1.m3u8?$LR•IPV6•89『线路3』 +CCTV,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226335/1.m3u8?$LR•IPV6•89『线路4』 +CCTV,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226469/1.m3u8?$LR•IPV6•89『线路5』 +CCTV,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226468/1.m3u8?$LR•IPV6•89『线路6』 +CCTV,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226946/1.m3u8?$LR•IPV6•89『线路7』 +CCTV,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226485/1.m3u8?$LR•IPV6•89『线路8』 +CCTV,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226944/1.m3u8?$LR•IPV6•89『线路9』 +CCTV,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226937/1.m3u8?$LR•IPV6•89『线路10』 +CCTV,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226334/1.m3u8?$LR•IPV6•89『线路11』 +CCTV,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226942/1.m3u8?$LR•IPV6•89『线路12』 +CCTV,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226316/1.m3u8?$LR•IPV6•89『线路13』 +CCTV,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226947/1.m3u8?$LR•IPV6•89『线路14』 +CCTV,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226333/1.m3u8?$LR•IPV6•89『线路15』 +CCTV,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221227002/1.m3u8?$LR•IPV6•89『线路16』 +CCTV,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226318/1.m3u8?$LR•IPV6•89『线路17』 +CCTV,http://222.223.41.27:8888/hls/2/index.m3u8$LR•IPV4•89『线路18』 +CCTV,http://116.128.243.121:85/tsfile/live/0002_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•89『线路19』 +CCTV,http://63.141.230.178:82/gslb/zbdq5.m3u8?id=cctv3hd$LR•IPV4•89『线路20』 +CCTV,http://207.56.13.146:81/cdnlive/cctv3.m3u8$LR•IPV4•89『线路21』 +CCTV,http://63.141.230.178:82/gslb/zbdq5.m3u8?id=cctv4hd$LR•IPV4•89『线路22』 +CCTV,http://74.91.26.218:82/live/cctv4hd.m3u8$LR•IPV4•89『线路23』 +CCTV,http://207.56.13.146:81/cdnlive/cctv4.m3u8$LR•IPV4•89『线路24』 +CCTV,http://38.75.136.137:98/gslb/dsdqbv/cctv5p.m3u8?auth=test20251009$LR•IPV4•89『线路25』 +CCTV,http://204.12.221.218:8181/3m1080p/cctv6.m3u8$LR•IPV4•89『线路26』 +CCTV,http://207.56.13.146:81/cdnlive/cctv6.m3u8$LR•IPV4•89『线路27』 +CCTV,http://74.91.26.218:82/live/cctv7hd.m3u8$LR•IPV4•89『线路28』 +CCTV,http://38.75.136.137:98/gslb/dsdqbv/cctv7hd.m3u8?auth=test20251009$LR•IPV4•89『线路29』 +CCTV,http://192.151.150.154/live/cctv8k.m3u8$LR•IPV4•89『线路30』 +CCTV,http://207.56.13.146:81/cdnlive/cctv8.m3u8$LR•IPV4•89『线路31』 +CCTV,http://173.208.212.130:8181/720p/cctv8.m3u8$LR•IPV4•89『线路32』 +CCTV,http://38.75.136.137:98/gslb/dsdqbv/cctv8hd.m3u8?auth=test20251009$LR•IPV4•89『线路33』 +CCTV,http://204.12.221.218:8181/3m1080p/cctv8.m3u8$LR•IPV4•89『线路34』 +CCTV,http://69.30.245.50/live/cctv8.m3u8$LR•IPV4•89『线路35』 +CCTV,http://222.223.41.27:8888/hls/9/index.m3u8$LR•IPV4•89『线路36』 +CCTV,https://hwapi.yntv.net/ew265l/z1z6s5.m3u8$LR•IPV4•89『线路37』 +CCTV,http://74.91.26.218:82/live/cctv10hd.m3u8$LR•IPV4•89『线路38』 +CCTV,http://74.91.26.218:82/live/cctv11hd.m3u8$LR•IPV4•89『线路39』 +CCTV,http://38.75.136.137:98/gslb/dsdqpub/cctv12hd.m3u8?auth=testpub$LR•IPV4•89『线路40』 +CCTV,https://event.pull.hebtv.com/jishi/cp1.m3u8$LR•IPV4•89『线路41』 +CCTV,http://pull-hls-f1.douyinliving.com/media/stream-696107587393815378/playlist.m3u8?keeptime=00093a80&wsSecret=bbbd054778ab532edfa97bf7c5395746&wsTime=6a544fee&arch_hrchy=s2&s_anchor=1&major_anchor_level=vip&t_id=037-2026071310394131FD5A22CCB9DDAFA77E-5XIF43$LR•IPV4•89『线路42』 +CCTV,http://63.141.230.178:82/gslb/zbdq5.m3u8?id=cctv13hd$LR•IPV4•89『线路43』 +CCTV,http://113.25.252.226:9901/tsfile/live/1017_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•89『线路44』 +CCTV,https://event.pull.hebtv.com/jishi/cp2.m3u8$LR•IPV4•89『线路45』 +CCTV,http://38.75.136.137:98/gslb/dsdqbv/cctv15hd.m3u8?auth=test20251009$LR•IPV4•89『线路46』 +CCTV,http://38.75.136.137:98/gslb/dsdqpub/cctv15hd.m3u8?auth=testpub$LR•IPV4•89『线路47』 +CCTV,http://38.75.136.137:98/gslb/dsdqpub/cctv17hd.m3u8?auth=testpub$LR•IPV4•89『线路48』 +CCTV,https://live-play-hls.cctvnews.cctv.com/CCTVChannel/channel_cctv4_mbd.m3u8?auth_key=1784332800-1-b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c-1f6c18588a391e749b10db985cd21620&yid=b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c$LR•IPV4•89『线路49』 +CCTV,https://shcm-stream-cf1.stream.264788.xyz/cms001/ch00000090990000001620/index.m3u8?streamid=8a034b40397504e25b3775c772237996&streamkey=01vY5fRxC8VyKg4oq30vfikHXTCAKySLP29l6OG91kQlzDttHgzNLkUw5kivm3PfNsVHJv5FgdsPBYFYI2IWpt7tfRCuFHqLT2pvX67ubMds8jl2DHtvOh0&token=1775754349-4f33f4f84a4abeba-0-91687dc8c9325092efa1d00f330d2710$LR•IPV4•89『线路50』 +CCTV,https://epg.pw/stream/ac8062ec9484078061d3bef507c15a423ac57ae4144e3fcc4b0a198dd420f911.m3u8$LR•IPV4•89『线路51』 +CCTV,https://live-play-hls.cctvnews.cctv.com/CCTVChannel/channel_cctv4_mbd.m3u8?auth_key=1784336400-1-b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c-49830e80d2c0d40fea8492a5581b9b73&yid=b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c$LR•IPV4•89『线路52』 +CCTV,http://183.196.25.171:808/hls/77/index.m3u8$LR•IPV4•89『线路53』 +CCTV,http://183.196.25.171:808/hls/11/index.m3u8$LR•IPV4•89『线路54』 +CCTV,http://183.196.25.171:808/hls/93/index.m3u8$LR•IPV4•89『线路55』 +CCTV,https://live-play-hls.cctvnews.cctv.com/CCTVChannel/channel_cctv4_mbd.m3u8?auth_key=1784271600-1-b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c-6aec44040ec72def77e22587fc404005&yid=b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c$LR•IPV4•89『线路56』 +CCTV,http://69.30.245.50/live/cctv6.m3u8$LR•IPV4•89『线路57』 +CCTV,http://38.75.136.137:98/gslb/dsdqpub/fyjc.m3u8?auth=testpub$LR•IPV4•89『线路58』 +CCTV,http://38.75.136.137:98/gslb/dsdqpub/dyjc.m3u8?auth=testpub$LR•IPV4•89『线路59』 +CCTV,http://69.30.245.50/live/cctv1.m3u8$LR•IPV4•89『线路60』 +CCTV,http://74.91.26.218:82/live/cctv1hd.m3u8$LR•IPV4•89『线路61』 +CCTV,https://global.cgtn.cicc.media.caton.cloud/master/cgtn-america.m3u8$LR•IPV4•89『线路62』 +CCTV,https://dash2.antik.sk/live/test_cctv_tizen/playlist.m3u8$LR•IPV4•89『线路63』 +CCTV,http://go.bkpcp.top/mg/cctv13$LR•IPV4•89『线路64』 +CCTV,https://cdn3.163189.xyz/163189/cctv13$LR•IPV4•89『线路65』 +CCTV,http://74.91.26.218:82/live/cctv8hd.m3u8$LR•IPV4•89『线路66』 +CCTV,http://74.91.26.218:82/live/cctv3hd.m3u8$LR•IPV4•89『线路67』 +CCTV,http://38.75.136.137:98/gslb/dsdqpub/ysjp.m3u8?auth=testpub$LR•IPV4•89『线路68』 +CCTV,https://solo.disfrutaenlared.com:1936/redcctv/redcctv/playlist.m3u8$LR•IPV4•89『线路69』 +CCTV,http://74.91.26.218:82/live/cctv14hd.m3u8$LR•IPV4•89『线路70』 +CCTV,https://xykt-fix.github.io/play/a02e/index.m3u8$LR•IPV4•89『线路71』 +CCTV,http://38.75.136.137:98/gslb/dsdqpub/fyyy.m3u8?auth=testpub$LR•IPV4•89『线路72』 +CCTV,http://74.91.26.218:82/live/cctv12hd.m3u8$LR•IPV4•89『线路73』 +CCTV,http://38.75.136.137:98/gslb/dsdqpub/wsjk.m3u8?auth=testpub$LR•IPV4•89『线路74』 +CCTV,http://38.75.136.137:98/gslb/dsdqpub/nxss.m3u8?auth=testpub$LR•IPV4•89『线路75』 +CCTV,http://38.75.136.137:98/gslb/dsdqpub/hjjc.m3u8?auth=testpub$LR•IPV4•89『线路76』 +CCTV,http://74.91.26.218:82/live/cctv16hd.m3u8$LR•IPV4•89『线路77』 +CCTV,http://38.75.136.137:98/gslb/dsdqpub/ystq.m3u8?auth=testpub$LR•IPV4•89『线路78』 +CCTV,http://38.75.136.137:98/gslb/dsdqpub/gefwq.m3u8?auth=testpub$LR•IPV4•89『线路79』 +CCTV,http://38.75.136.137:98/gslb/dsdqpub/fyzq.m3u8?auth=testpub$LR•IPV4•89『线路80』 +CCTV,http://74.91.26.218:82/live/cctv2hd.m3u8$LR•IPV4•89『线路81』 +CCTV,https://xykt-fix.github.io/Y77.m3u8$LR•IPV4•89『线路82』 +CCTV,http://38.75.136.137:98/gslb/dsdqpub/sjdl.m3u8?auth=testpub$LR•IPV4•89『线路83』 +CCTV,http://74.91.26.218:82/live/cctv17hd.m3u8$LR•IPV4•89『线路84』 +CCTV,http://38.75.136.137:98/gslb/dsdqpub/dszn.m3u8?auth=testpub$LR•IPV4•89『线路85』 +CCTV,http://fn.tmde.top:35455/nptv/cctv4k.m3u8$LR•IPV4•89『线路86』 +CCTV,http://fn.tmde.top:35455/nptv/cctv8k.m3u8$LR•IPV4•89『线路87』 +CCTV,http://xc.mfykeke.top:35455/nptv/cctv4k.m3u8$LR•IPV4•89『线路88』 +CCTV,http://xc.mfykeke.top:35455/nptv/cctv8k.m3u8$LR•IPV4•89『线路89』 明星,#genre# 周星星,http://live.metshop.top/huya/11336587?cdn=alicdn$LR•IPV4 -周星驰,http://cdn.jdshipin.com:8880/huya.php?id=11342412$LR•IPV4 梁家辉,http://live.metshop.top/huya/11342429?cdn=alicdn$LR•IPV4 -刘德华,http://live.metshop.top/huya/11342424?cdn=alicdn$LR•IPV4•2『线路1』 -刘德华,http://epg.112114.xyz/douyu/2516864$LR•IPV4•2『线路2』 -林正英,http://zzy789.xyz/douyu1.php?id=7356023$LR•IPV4•2『线路1』 -林正英,http://epg.112114.xyz/douyu/218859$LR•IPV4•2『线路2』 +刘德华,http://epg.112114.xyz/douyu/2516864$LR•IPV4•2『线路1』 +刘德华,http://live.metshop.top/huya/11342424?cdn=alicdn$LR•IPV4•2『线路2』 +林正英,http://epg.112114.xyz/douyu/218859$LR•IPV4•2『线路1』 +林正英,http://zzy789.xyz/douyu1.php?id=7356023$LR•IPV4•2『线路2』 主题片,#genre# 谍战片,http://live.metshop.top/huya/21059587?cdn=alicdn$LR•IPV4 @@ -2268,22 +2254,22 @@ YOUNG,https://s.emisoras.tv:8081/penielkids/index.m3u8$LR•IPV4•3『线路3 浙江教科影院,http://ali-m-l.cztv.com/channels/lantian/channel004/1080p.m3u8?zzhed$LR•IPV4•2『线路2』 舟山新闻综合,http://play-sh13.quklive.com/live/1699001836208185.m3u8?auth_key=2027429324-c77bb6a7063c4cdea57f09ca22f9ef12-0-39c19a21f73b823db2150ea45b147eb2$LR•IPV4 浙江新闻,https://ali-m-l.cztv.com/channels/lantian/channel007/1080p.m3u8$LR•IPV4•34『线路1』 -浙江新闻,https://ali-m-l.cztv.com/channels/lantian/channel007/1080p.m3u8?$LR•IPV4•34『线路2』 -浙江新闻,http://ali-m-l.cztv.com/channels/lantian/channel007/720p.m3u8$LR•IPV4•34『线路3』 -浙江新闻,https://stream1.freetv.fun/zhe-jiang-xin-wen-11.m3u8$LR•IPV4•34『线路4』 -浙江新闻,http://ali-xwl.cztv.com/live/channel07720Plxw.m3u8$LR•IPV4•34『线路5』 -浙江新闻,https://stream1.freetv.fun/zhe-jiang-xin-wen-6.m3u8$LR•IPV4•34『线路6』 -浙江新闻,https://stream1.freetv.fun/zhe-jiang-xin-wen-4.m3u8$LR•IPV4•34『线路7』 -浙江新闻,https://stream1.freetv.fun/zhe-jiang-xin-wen-3.m3u8$LR•IPV4•34『线路8』 -浙江新闻,https://stream1.freetv.fun/zhe-jiang-xin-wen-1.m3u8$LR•IPV4•34『线路9』 -浙江新闻,https://t.freetv.fun/live/zhe-jiang-xin-wen-2.m3u8$LR•IPV4•34『线路10』 -浙江新闻,https://stream1.freetv.fun/zhe-jiang-xin-wen-2.m3u8$LR•IPV4•34『线路11』 -浙江新闻,https://t.freetv.fun/live/zhe-jiang-xin-wen-3.m3u8$LR•IPV4•34『线路12』 -浙江新闻,http://ali-xwl.cztv.com/live/channel071080Plxw.m3u8$LR•IPV4•34『线路13』 -浙江新闻,https://ali-m-l.cztv.com/channels/lantian/channel07/720p.m3u8$LR•IPV4•34『线路14』 -浙江新闻,https://stream1.freetv.fun/7fa07158e038a9bae3747a0cb9f8e8ff1aaba32669d28d99a498716f16569c1d.m3u8$LR•IPV4•34『线路15』 -浙江新闻,https://stream1.freetv.fun/zhe-jiang-xin-wen-9.m3u8$LR•IPV4•34『线路16』 -浙江新闻,https://stream1.freetv.fun/zhe-jiang-xin-wen-7.m3u8$LR•IPV4•34『线路17』 +浙江新闻,http://ali-m-l.cztv.com/channels/lantian/channel007/720p.m3u8$LR•IPV4•34『线路2』 +浙江新闻,https://stream1.freetv.fun/zhe-jiang-xin-wen-11.m3u8$LR•IPV4•34『线路3』 +浙江新闻,http://ali-xwl.cztv.com/live/channel07720Plxw.m3u8$LR•IPV4•34『线路4』 +浙江新闻,https://stream1.freetv.fun/zhe-jiang-xin-wen-6.m3u8$LR•IPV4•34『线路5』 +浙江新闻,https://stream1.freetv.fun/zhe-jiang-xin-wen-4.m3u8$LR•IPV4•34『线路6』 +浙江新闻,https://stream1.freetv.fun/zhe-jiang-xin-wen-3.m3u8$LR•IPV4•34『线路7』 +浙江新闻,https://stream1.freetv.fun/zhe-jiang-xin-wen-1.m3u8$LR•IPV4•34『线路8』 +浙江新闻,https://t.freetv.fun/live/zhe-jiang-xin-wen-2.m3u8$LR•IPV4•34『线路9』 +浙江新闻,https://stream1.freetv.fun/zhe-jiang-xin-wen-2.m3u8$LR•IPV4•34『线路10』 +浙江新闻,https://t.freetv.fun/live/zhe-jiang-xin-wen-3.m3u8$LR•IPV4•34『线路11』 +浙江新闻,http://ali-xwl.cztv.com/live/channel071080Plxw.m3u8$LR•IPV4•34『线路12』 +浙江新闻,https://ali-m-l.cztv.com/channels/lantian/channel07/720p.m3u8$LR•IPV4•34『线路13』 +浙江新闻,https://stream1.freetv.fun/7fa07158e038a9bae3747a0cb9f8e8ff1aaba32669d28d99a498716f16569c1d.m3u8$LR•IPV4•34『线路14』 +浙江新闻,https://stream1.freetv.fun/zhe-jiang-xin-wen-9.m3u8$LR•IPV4•34『线路15』 +浙江新闻,https://stream1.freetv.fun/zhe-jiang-xin-wen-7.m3u8$LR•IPV4•34『线路16』 +浙江新闻,https://ali-m-l.cztv.com/channels/lantian/channel007/1080p.m3u8?$LR•IPV4•34『线路17』 浙江新闻,http://ali-m-l.cztv.com/channels/lantian/channel007/1080p.m3u8?zzhed$LR•IPV4•34『线路18』 浙江新闻,http://ali-m-l.cztv.com/channels/lantian/channel007/1080p.m3u8$LR•IPV4•34『线路19』 浙江新闻,https://t.freetv.fun/live/zhe-jiang-xin-wen-1.m3u8$LR•IPV4•34『线路20』 @@ -2359,23 +2345,23 @@ YOUNG,https://s.emisoras.tv:8081/penielkids/index.m3u8$LR•IPV4•3『线路3 浙江教科,http://ali-xwl.cztv.com/live/channel041080Plxw.m3u8$LR•IPV4•8『线路6』 浙江教科,http://ali-xwl.cztv.com/live/channel04720Plxw.m3u8$LR•IPV4•8『线路7』 浙江教科,http://ali-m-l.cztv.com/channels/lantian/channel04/1080p.m3u8$LR•IPV4•8『线路8』 -浙江钱江,https://ali-m-l.cztv.com/channels/lantian/channel002/1080p.m3u8$LR•IPV4•19『线路1』 -浙江钱江,http://l.cztvcloud.com/channels/lantian/SXyuyao2/720p.m3u8$LR•IPV4•19『线路2』 -浙江钱江,http://ali-m-l.cztv.com/channels/lantian/channel02/1080p.m3u8$LR•IPV4•19『线路3』 -浙江钱江,https://stream1.freetv.fun/zhe-jiang-qian-jiang-du-shi-2.m3u8$LR•IPV4•19『线路4』 -浙江钱江,https://stream1.freetv.fun/zhe-jiang-qian-jiang-du-shi-4.ctv$LR•IPV4•19『线路5』 -浙江钱江,https://ali-m-l.cztv.com/channels/lantian/channel002/1080p.m3u8\r\n$LR•IPV4•19『线路6』 -浙江钱江,http://ali-xwl.cztv.com/live/channel021080Plxw.m3u8$LR•IPV4•19『线路7』 -浙江钱江,https://stream1.freetv.fun/zhe-jiang-qian-jiang-du-shi-1.m3u8$LR•IPV4•19『线路8』 -浙江钱江,https://stream1.freetv.fun/bf079ada709563bdd095159c02dfb5afb53c24e643b73f987100b9d25e9c8f41.m3u8$LR•IPV4•19『线路9』 -浙江钱江,http://api3.52tb.xyz/info?id=436&token=20230226bgyszp$LR•IPV4•19『线路10』 -浙江钱江,https://stream1.freetv.fun/zhe-jiang-qian-jiang-du-shi-5.ctv$LR•IPV4•19『线路11』 -浙江钱江,https://stream1.freetv.fun/zhe-jiang-qian-jiang-du-shi-3.ctv$LR•IPV4•19『线路12』 -浙江钱江,https://t.freetv.fun/live/zhe-jiang-qian-jiang-du-shi-3.m3u8$LR•IPV4•19『线路13』 -浙江钱江,http://120.55.49.231:3095/rtp/233.50.201.132:5140$LR•IPV4•19『线路14』 -浙江钱江,https://t.freetv.fun/live/zhe-jiang-qian-jiang-du-shi-1.m3u8$LR•IPV4•19『线路15』 -浙江钱江,https://t.freetv.fun/live/zhe-jiang-qian-jiang-du-shi-2.m3u8$LR•IPV4•19『线路16』 -浙江钱江,http://ali-xwl.cztv.com/live/channel02720Plxw.m3u8$LR•IPV4•19『线路17』 +浙江钱江,http://l.cztvcloud.com/channels/lantian/SXyuyao2/720p.m3u8$LR•IPV4•19『线路1』 +浙江钱江,http://ali-m-l.cztv.com/channels/lantian/channel02/1080p.m3u8$LR•IPV4•19『线路2』 +浙江钱江,https://stream1.freetv.fun/zhe-jiang-qian-jiang-du-shi-2.m3u8$LR•IPV4•19『线路3』 +浙江钱江,https://stream1.freetv.fun/zhe-jiang-qian-jiang-du-shi-4.ctv$LR•IPV4•19『线路4』 +浙江钱江,https://ali-m-l.cztv.com/channels/lantian/channel002/1080p.m3u8\r\n$LR•IPV4•19『线路5』 +浙江钱江,http://ali-xwl.cztv.com/live/channel021080Plxw.m3u8$LR•IPV4•19『线路6』 +浙江钱江,https://stream1.freetv.fun/zhe-jiang-qian-jiang-du-shi-1.m3u8$LR•IPV4•19『线路7』 +浙江钱江,https://stream1.freetv.fun/bf079ada709563bdd095159c02dfb5afb53c24e643b73f987100b9d25e9c8f41.m3u8$LR•IPV4•19『线路8』 +浙江钱江,http://api3.52tb.xyz/info?id=436&token=20230226bgyszp$LR•IPV4•19『线路9』 +浙江钱江,https://stream1.freetv.fun/zhe-jiang-qian-jiang-du-shi-5.ctv$LR•IPV4•19『线路10』 +浙江钱江,https://stream1.freetv.fun/zhe-jiang-qian-jiang-du-shi-3.ctv$LR•IPV4•19『线路11』 +浙江钱江,https://t.freetv.fun/live/zhe-jiang-qian-jiang-du-shi-3.m3u8$LR•IPV4•19『线路12』 +浙江钱江,http://120.55.49.231:3095/rtp/233.50.201.132:5140$LR•IPV4•19『线路13』 +浙江钱江,https://t.freetv.fun/live/zhe-jiang-qian-jiang-du-shi-1.m3u8$LR•IPV4•19『线路14』 +浙江钱江,https://t.freetv.fun/live/zhe-jiang-qian-jiang-du-shi-2.m3u8$LR•IPV4•19『线路15』 +浙江钱江,http://ali-xwl.cztv.com/live/channel02720Plxw.m3u8$LR•IPV4•19『线路16』 +浙江钱江,http://ali-m-l.cztv.com/channels/lantian/channel002/1080p.m3u8$LR•IPV4•19『线路17』 浙江钱江,https://t.freetv.fun/live/zhe-jiang-qian-jiang-du-shi.m3u8$LR•IPV4•19『线路18』 浙江钱江,http://ali-m-l.cztv.com/channels/lantian/channel002/720p.m3u8$LR•IPV4•19『线路19』 公共新闻,https://stream1.freetv.fun/zhe-jiang-gong-gong-xin-wen-1.m3u8$LR•IPV4•6『线路1』 @@ -2597,3 +2583,8 @@ YOUNG,https://s.emisoras.tv:8081/penielkids/index.m3u8$LR•IPV4•3『线路3 汕头经济,https://stream1.freetv.fun/shan-tou-jing-ji-4.ctv$LR•IPV4•11『线路10』 汕头经济,https://stream1.freetv.fun/shan-tou-jing-ji-6.ctv$LR•IPV4•11『线路11』 广东少儿,http://gmxw.7766.org:808/hls/175/index.m3u8$LR•IPV4 + +上海,#genre# +上海新闻,http://t.061899.xyz/tl/tl.php?id=shxwzh$LR•IPV4 +七彩戏剧,http://t.061899.xyz/tl/tl.php?id=qcxj$LR•IPV4 +法治天地,http://t.061899.xyz/tl/tl.php?id=fztd$LR•IPV4 diff --git a/tbapi1/PG/api.json b/tbapi1/PG/api.json index fa7656ca..d1b3ea06 100644 --- a/tbapi1/PG/api.json +++ b/tbapi1/PG/api.json @@ -176,6 +176,8 @@ "timeout": 60, "ext": "./lib/tokenm.json$$$https://mihdr.top/$$$noproxy$$$1$$$./lib/wogg.json$$$ZHIZHEN" }, + {"key":"LIBVIO_","name":"LIBVIO|网盘_","type":3,"api":"csp_Libvio","quickSearch":1, "changeable":1, "filterable":1, "timeout":60, "ext":"./lib/tokenm.json$$$https://www.libvio.io/$$$noproxy$$$1"}, + {"key":"Moli_","name":"HDmoli|网盘_","type":3,"api":"csp_Moli","quickSearch":1, "changeable":1, "filterable":1, "timeout":60, "ext":"./lib/tokenm.json$$$https://www.hdmoli.com/$$$noproxy$$$1$$$./lib/moli.json"}, {"key":"LIBVIO","name":"LIBVIO|网盘","type":3,"api":"csp_Libvio","quickSearch":1, "changeable":1, "filterable":1, "timeout":60, "ext":"./lib/tokenm.json$$$http://www.libvio.mov/$$$noproxy$$$1"}, {"key":"Guazi","name":"瓜子|App","type":3,"api":"csp_Guazi","quickSearch":1, "changeable":1, "filterable":1, "timeout":60, "ext":""}, {"key":"Moli","name":"HDmoli|网盘","type":3,"api":"csp_Moli","quickSearch":1, "changeable":1, "filterable":1, "timeout":60, "ext":"./lib/tokenm.json$$$https://www.hdmoli.pro/$$$proxy$$$1$$$./lib/moli.json"}, diff --git a/tbapi1/PG/pg.jar b/tbapi1/PG/pg.jar index fd1936d3..3d9a04c8 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 10e766ef..7fb28ce3 100644 --- a/tbapi1/PG/pg.jar.md5 +++ b/tbapi1/PG/pg.jar.md5 @@ -1 +1 @@ -c3e1076058635dd37ca90220add97dc1 \ No newline at end of file +aa5488ccc4bb89fcfbe2e328bc2052ec \ No newline at end of file diff --git a/tvbox/lib/iptv.m3u b/tvbox/lib/iptv.m3u index 95d001b9..3dcddabb 100755 --- a/tvbox/lib/iptv.m3u +++ b/tvbox/lib/iptv.m3u @@ -1,6 +1,6 @@ #EXTM3U #EXTINF:-1 tvg-id="东方卫视4K" tvg-name="东方卫视4K" group-title="4K",东方卫视4K -http://bp-resource-dfl.bestv.cn/148/3/video.m3u8$LR•IPV4•2『线路1』 +https://bp-resource-dfl.bestv.cn/148/3/video.m3u8$LR•IPV4•2『线路1』 #EXTINF:-1 tvg-id="东方卫视4K" tvg-name="东方卫视4K" group-title="4K",东方卫视4K http://43.251.226.89:8080/play/926.m3u8$LR•IPV4•2『线路2』 #EXTINF:-1 tvg-id="湖南卫视4K" tvg-name="湖南卫视4K" group-title="4K",湖南卫视4K @@ -62,17 +62,19 @@ http://101.35.240.114:88/live.php?id=北京卫视$LR•IPV4•5『线路4』 #EXTINF:-1 tvg-id="北京卫视4K" tvg-name="北京卫视4K" group-title="4K",北京卫视4K http://106.53.99.30/tv/api.php?id=bjws4k$LR•IPV4•5『线路5』 #EXTINF:-1 tvg-id="CCTV4K" tvg-name="CCTV4K" group-title="4K",CCTV4K -http://101.43.145.141:12002/gaoma/cctv4k.m3u8$LR•IPV4•6『线路1』 +http://vip1.xinketongxun.fun:8082/tsfile/live/1026_1.m3u8$LR•IPV4•7『线路1』 #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=1784329200-1-b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c-81ad4aefc95ce528b3da1112f0bc9ff2&yid=b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c$LR•IPV4•6『线路2』 +http://101.43.145.141:12002/gaoma/cctv4k.m3u8$LR•IPV4•7『线路2』 #EXTINF:-1 tvg-id="CCTV4K" tvg-name="CCTV4K" group-title="4K",CCTV4K -https://live-play-hls.cctvnews.cctv.com/CCTVChannel/channel_cctv4k_mbd.m3u8?auth_key=1784322000-1-b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c-aa68fb06c12f53b71a4d170807f32df5&yid=b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c$LR•IPV4•6『线路3』 +https://live-play-hls.cctvnews.cctv.com/CCTVChannel/channel_cctv4k_mbd.m3u8?auth_key=1784332800-1-b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c-0240f422767495f3b4be3b54c6f0496a&yid=b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c$LR•IPV4•7『线路3』 #EXTINF:-1 tvg-id="CCTV4K" tvg-name="CCTV4K" group-title="4K",CCTV4K -http://198.204.240.250:82/live/cctv4k.m3u8$LR•IPV4•6『线路4』 +https://live-play-hls.cctvnews.cctv.com/CCTVChannel/channel_cctv4k_mbd.m3u8?auth_key=1784336400-1-b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c-c68beb1a091dd48540f9056f3e86c7c2&yid=b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c$LR•IPV4•7『线路4』 #EXTINF:-1 tvg-id="CCTV4K" tvg-name="CCTV4K" group-title="4K",CCTV4K -http://fn.tmde.top:35455/nptv/cctv4k.m3u8$LR•IPV4•6『线路5』 +http://198.204.240.250:82/live/cctv4k.m3u8$LR•IPV4•7『线路5』 #EXTINF:-1 tvg-id="CCTV4K" tvg-name="CCTV4K" group-title="4K",CCTV4K -http://xc.mfykeke.top:35455/nptv/cctv4k.m3u8$LR•IPV4•6『线路6』 +http://fn.tmde.top:35455/nptv/cctv4k.m3u8$LR•IPV4•7『线路6』 +#EXTINF:-1 tvg-id="CCTV4K" tvg-name="CCTV4K" group-title="4K",CCTV4K +http://xc.mfykeke.top:35455/nptv/cctv4k.m3u8$LR•IPV4•7『线路7』 #EXTINF:-1 tvg-id="北京纪实8K" tvg-name="北京纪实8K" group-title="8K",北京纪实8K https://gdcucc.v1.mk/gdcucc/brtv8k.m3u8$LR•IPV4•2『线路1』 #EXTINF:-1 tvg-id="北京纪实8K" tvg-name="北京纪实8K" group-title="8K",北京纪实8K @@ -144,37 +146,43 @@ http://63.141.230.178:82/gslb/zbdq5.m3u8?id=cctv3hd$LR•IPV4•12『线路11』 #EXTINF:-1 tvg-id="CCTV3" tvg-name="CCTV3" group-title="央视",CCTV3 http://207.56.13.146:81/cdnlive/cctv3.m3u8$LR•IPV4•12『线路12』 #EXTINF:-1 tvg-id="CCTV4" tvg-name="CCTV4" group-title="央视",CCTV4 -http://112.123.243.37:50085/tsfile/live/0004_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•16『线路1』 +http://112.123.243.37:50085/tsfile/live/0004_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•19『线路1』 #EXTINF:-1 tvg-id="CCTV4" tvg-name="CCTV4" group-title="央视",CCTV4 -http://222.223.41.27:8888/hls/4/index.m3u8$LR•IPV4•16『线路2』 +http://222.223.41.27:8888/hls/4/index.m3u8$LR•IPV4•19『线路2』 #EXTINF:-1 tvg-id="CCTV4" tvg-name="CCTV4" group-title="央视",CCTV4 -http://221.226.51.220:50081/newlive/live/hls/4/live.m3u8$LR•IPV4•16『线路3』 +http://221.226.51.220:50081/newlive/live/hls/4/live.m3u8$LR•IPV4•19『线路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•16『线路4』 +http://153.0.171.163:9901/tsfile/live/0004_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•19『线路4』 #EXTINF:-1 tvg-id="CCTV4" tvg-name="CCTV4" group-title="央视",CCTV4 -https://dash2.antik.sk/live/test_cctv_tizen/playlist.m3u8$LR•IPV4•16『线路5』 +http://t.061899.xyz/tl/tl.php?id=cctv4$LR•IPV4•19『线路5』 #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•16『线路6』 +http://t.061899.xyz/tl/tl.php?id=cctv4o$LR•IPV4•19『线路6』 #EXTINF:-1 tvg-id="CCTV4" tvg-name="CCTV4" group-title="央视",CCTV4 -http://112.46.105.20:8009/hls/4/index.m3u8$LR•IPV4•16『线路7』 +http://t.061899.xyz/tl/tl.php?id=cctv4m$LR•IPV4•19『线路7』 #EXTINF:-1 tvg-id="CCTV4" tvg-name="CCTV4" group-title="央视",CCTV4 -http://74.91.26.218:82/live/cctv4hd.m3u8$LR•IPV4•16『线路8』 +http://38.75.136.137:98/gslb/dsdqbv/cctv4hd.m3u8?auth=test20251009$LR•IPV4•19『线路8』 #EXTINF:-1 tvg-id="CCTV4" tvg-name="CCTV4" group-title="央视",CCTV4 -p3p://167.114.175.6:55331/61244d9c0006885d64b1b7591f6c12a0$LR•IPV4•16『线路9』 +http://112.46.105.20:8009/hls/4/index.m3u8$LR•IPV4•19『线路9』 #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=1784329200-1-b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c-2245971645866ed95972e22af68cc8d1&yid=b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c$LR•IPV4•16『线路10』 +http://74.91.26.218:82/live/cctv4hd.m3u8$LR•IPV4•19『线路10』 #EXTINF:-1 tvg-id="CCTV4" tvg-name="CCTV4" group-title="央视",CCTV4 -https://live-play-hls.cctvnews.cctv.com/CCTVChannel/channel_cctv4_mbd.m3u8?auth_key=1784271600-1-b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c-6aec44040ec72def77e22587fc404005&yid=b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c$LR•IPV4•16『线路11』 +p3p://167.114.175.6:55331/61244d9c0006885d64b1b7591f6c12a0$LR•IPV4•19『线路11』 #EXTINF:-1 tvg-id="CCTV4" tvg-name="CCTV4" group-title="央视",CCTV4 -https://live-play-hls.cctvnews.cctv.com/CCTVChannel/channel_cctv4_mbd.m3u8?auth_key=1784322000-1-b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c-25fe408e6545f49f3d4eb7f92e97c764&yid=b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c$LR•IPV4•16『线路12』 +https://live-play-hls.cctvnews.cctv.com/CCTVChannel/channel_cctv4_mbd.m3u8?auth_key=1784332800-1-b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c-1f6c18588a391e749b10db985cd21620&yid=b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c$LR•IPV4•19『线路12』 #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•16『线路13』 +https://live-play-hls.cctvnews.cctv.com/CCTVChannel/channel_cctv4_mbd.m3u8?auth_key=1784336400-1-b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c-49830e80d2c0d40fea8492a5581b9b73&yid=b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c$LR•IPV4•19『线路13』 #EXTINF:-1 tvg-id="CCTV4" tvg-name="CCTV4" group-title="央视",CCTV4 -http://63.141.230.178:82/gslb/zbdq5.m3u8?id=cctv4hd$LR•IPV4•16『线路14』 +https://live-play-hls.cctvnews.cctv.com/CCTVChannel/channel_cctv4_mbd.m3u8?auth_key=1784271600-1-b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c-6aec44040ec72def77e22587fc404005&yid=b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c$LR•IPV4•19『线路14』 #EXTINF:-1 tvg-id="CCTV4" tvg-name="CCTV4" group-title="央视",CCTV4 -http://207.56.13.146:81/cdnlive/cctv4.m3u8$LR•IPV4•16『线路15』 +http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226335/1.m3u8?$LR•IPV6•19『线路15』 #EXTINF:-1 tvg-id="CCTV4" tvg-name="CCTV4" group-title="央视",CCTV4 -https://global.cgtn.cicc.media.caton.cloud/master/cgtn-america.m3u8$LR•IPV4•16『线路16』 +http://63.141.230.178:82/gslb/zbdq5.m3u8?id=cctv4hd$LR•IPV4•19『线路16』 +#EXTINF:-1 tvg-id="CCTV4" tvg-name="CCTV4" group-title="央视",CCTV4 +http://207.56.13.146:81/cdnlive/cctv4.m3u8$LR•IPV4•19『线路17』 +#EXTINF:-1 tvg-id="CCTV4" tvg-name="CCTV4" group-title="央视",CCTV4 +https://global.cgtn.cicc.media.caton.cloud/master/cgtn-america.m3u8$LR•IPV4•19『线路18』 +#EXTINF:-1 tvg-id="CCTV4" tvg-name="CCTV4" group-title="央视",CCTV4 +https://dash2.antik.sk/live/test_cctv_tizen/playlist.m3u8$LR•IPV4•19『线路19』 #EXTINF:-1 tvg-id="CCTV5" tvg-name="CCTV5" group-title="央视",CCTV5 http://222.223.41.27:8888/hls/5/index.m3u8$LR•IPV4•14『线路1』 #EXTINF:-1 tvg-id="CCTV5" tvg-name="CCTV5" group-title="央视",CCTV5 @@ -182,7 +190,7 @@ http://183.223.157.33:9901/tsfile/live/0005_1.m3u8?key=txiptv&playlive=1&authid= #EXTINF:-1 tvg-id="CCTV5" tvg-name="CCTV5" group-title="央视",CCTV5 http://221.226.51.220:50081/newlive/live/hls/5/live.m3u8$LR•IPV4•14『线路3』 #EXTINF:-1 tvg-id="CCTV5" tvg-name="CCTV5" group-title="央视",CCTV5 -http://112.27.235.94:8000/hls/5/index.m3u8$LR•IPV4•14『线路4』 +http://t.061899.xyz/tl/tl.php?id=cctv5$LR•IPV4•14『线路4』 #EXTINF:-1 tvg-id="CCTV5" tvg-name="CCTV5" group-title="央视",CCTV5 http://101.66.199.247:9901/tsfile/live/0005_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•14『线路5』 #EXTINF:-1 tvg-id="CCTV5" tvg-name="CCTV5" group-title="央视",CCTV5 @@ -196,7 +204,7 @@ 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://183.129.255.66:8480/hls/6/index.m3u8$LR•IPV4•14『线路10』 #EXTINF:-1 tvg-id="CCTV5" tvg-name="CCTV5" group-title="央视",CCTV5 -http://112.27.235.94:8000/hls/6/index.m3u8$LR•IPV4•14『线路11』 +http://t.061899.xyz/tl/tl.php?id=cctv5p$LR•IPV4•14『线路11』 #EXTINF:-1 tvg-id="CCTV5" tvg-name="CCTV5" group-title="央视",CCTV5 http://112.123.243.37:50085/tsfile/live/0006_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•14『线路12』 #EXTINF:-1 tvg-id="CCTV5" tvg-name="CCTV5" group-title="央视",CCTV5 @@ -214,7 +222,7 @@ http://38.75.136.137:98/gslb/dsdqbv/cctv6hd.m3u8?auth=test20251009$LR•IPV4•1 #EXTINF:-1 tvg-id="CCTV6" tvg-name="CCTV6" group-title="央视",CCTV6 http://221.226.51.220:50081/newlive/live/hls/6/live.m3u8$LR•IPV4•13『线路5』 #EXTINF:-1 tvg-id="CCTV6" tvg-name="CCTV6" group-title="央视",CCTV6 -http://112.27.235.94:8000/hls/7/index.m3u8$LR•IPV4•13『线路6』 +http://t.061899.xyz/tl/tl.php?id=cctv6$LR•IPV4•13『线路6』 #EXTINF:-1 tvg-id="CCTV6" tvg-name="CCTV6" group-title="央视",CCTV6 http://112.46.105.20:8009/hls/6/index.m3u8$LR•IPV4•13『线路7』 #EXTINF:-1 tvg-id="CCTV6" tvg-name="CCTV6" group-title="央视",CCTV6 @@ -240,7 +248,7 @@ http://183.129.255.66:8480/hls/8/index.m3u8$LR•IPV4•10『线路4』 #EXTINF:-1 tvg-id="CCTV7" tvg-name="CCTV7" group-title="央视",CCTV7 http://153.0.171.163:9901/tsfile/live/0007_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•10『线路5』 #EXTINF:-1 tvg-id="CCTV7" tvg-name="CCTV7" group-title="央视",CCTV7 -http://112.27.235.94:8000/hls/8/index.m3u8$LR•IPV4•10『线路6』 +http://t.061899.xyz/tl/tl.php?id=cctv7$LR•IPV4•10『线路6』 #EXTINF:-1 tvg-id="CCTV7" tvg-name="CCTV7" group-title="央视",CCTV7 http://38.75.136.137:98/gslb/dsdqbv/cctv7hd.m3u8?auth=test20251009$LR•IPV4•10『线路7』 #EXTINF:-1 tvg-id="CCTV7" tvg-name="CCTV7" group-title="央视",CCTV7 @@ -266,7 +274,7 @@ http://120.198.95.220:9901/tsfile/live/1023_1.m3u8?key=txiptv&playlive=1&down=1$ #EXTINF:-1 tvg-id="CCTV8" tvg-name="CCTV8" group-title="央视",CCTV8 https://ldocctvwbcdtxy.liveplay.myqcloud.com/ldocctvwbcd/cdrmldcctv8_1_hd.m3u8$LR•IPV4•19『线路8』 #EXTINF:-1 tvg-id="CCTV8" tvg-name="CCTV8" group-title="央视",CCTV8 -http://112.27.235.94:8000/hls/9/index.m3u8$LR•IPV4•19『线路9』 +http://t.061899.xyz/tl/tl.php?id=cctv8$LR•IPV4•19『线路9』 #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•19『线路10』 #EXTINF:-1 tvg-id="CCTV8" tvg-name="CCTV8" group-title="央视",CCTV8 @@ -302,9 +310,9 @@ http://112.46.105.20:8009/hls/509/index.m3u8$LR•IPV4•12『线路6』 #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•12『线路7』 #EXTINF:-1 tvg-id="CCTV9" tvg-name="CCTV9" group-title="央视",CCTV9 -https://v4-e6b1c5baf4e240fe63adbf68dda23435.livehwc4.com/play.kankanlive.com/live/1698423397390920.m3u8?sub_m3u8=true&edge_slice=true&user_session_id=8a921813ee3b23c82763145c9f291a3b$LR•IPV4•12『线路8』 +https://v4-702cae17a28d6e4f0c0002bba021d934.livehwc4.com/play.kankanlive.com/live/1698423397390920.m3u8?sub_m3u8=true&edge_slice=true&user_session_id=7b0844b76d8c951adb5f87864280aa1c$LR•IPV4•12『线路8』 #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=f3fb3ddaca05941087114cf6481e1c23$LR•IPV4•12『线路9』 +https://v4-e6b1c5baf4e240fe63adbf68dda23435.livehwc4.com/play.kankanlive.com/live/1698423397390920.m3u8?sub_m3u8=true&edge_slice=true&user_session_id=1c7b8d97d045399d92a9b9016e62d86b$LR•IPV4•12『线路9』 #EXTINF:-1 tvg-id="CCTV9" tvg-name="CCTV9" group-title="央视",CCTV9 http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226944/1.m3u8?$LR•IPV6•12『线路10』 #EXTINF:-1 tvg-id="CCTV9" tvg-name="CCTV9" group-title="央视",CCTV9 @@ -312,27 +320,25 @@ http://222.223.41.27:8888/hls/9/index.m3u8$LR•IPV4•12『线路11』 #EXTINF:-1 tvg-id="CCTV9" tvg-name="CCTV9" group-title="央视",CCTV9 https://xykt-fix.github.io/Y77.m3u8$LR•IPV4•12『线路12』 #EXTINF:-1 tvg-id="CCTV10" tvg-name="CCTV10" group-title="央视",CCTV10 -http://222.223.41.27:8888/hls/10/index.m3u8$LR•IPV4•11『线路1』 +http://222.223.41.27:8888/hls/10/index.m3u8$LR•IPV4•10『线路1』 #EXTINF:-1 tvg-id="CCTV10" tvg-name="CCTV10" group-title="央视",CCTV10 -http://183.129.255.66:8480/hls/11/index.m3u8$LR•IPV4•11『线路2』 +http://183.129.255.66:8480/hls/11/index.m3u8$LR•IPV4•10『线路2』 #EXTINF:-1 tvg-id="CCTV10" tvg-name="CCTV10" group-title="央视",CCTV10 -http://107.150.60.122/live/cctv10hd.m3u8$LR•IPV4•11『线路3』 +http://107.150.60.122/live/cctv10hd.m3u8$LR•IPV4•10『线路3』 #EXTINF:-1 tvg-id="CCTV10" tvg-name="CCTV10" group-title="央视",CCTV10 -http://153.0.171.163:9901/tsfile/live/1009_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•11『线路4』 +http://153.0.171.163:9901/tsfile/live/1009_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•10『线路4』 #EXTINF:-1 tvg-id="CCTV10" tvg-name="CCTV10" group-title="央视",CCTV10 -http://112.27.235.94:8000/hls/11/index.m3u8$LR•IPV4•11『线路5』 +http://t.061899.xyz/tl/tl.php?id=cctv10$LR•IPV4•10『线路5』 #EXTINF:-1 tvg-id="CCTV10" tvg-name="CCTV10" group-title="央视",CCTV10 -http://38.75.136.137:98/gslb/dsdqbv/cctv10hd.m3u8?auth=test20251009$LR•IPV4•11『线路6』 +http://38.75.136.137:98/gslb/dsdqbv/cctv10hd.m3u8?auth=test20251009$LR•IPV4•10『线路6』 #EXTINF:-1 tvg-id="CCTV10" tvg-name="CCTV10" group-title="央视",CCTV10 -http://112.46.105.20:8009/hls/506/index.m3u8$LR•IPV4•11『线路7』 +http://112.46.105.20:8009/hls/506/index.m3u8$LR•IPV4•10『线路7』 #EXTINF:-1 tvg-id="CCTV10" tvg-name="CCTV10" group-title="央视",CCTV10 -http://74.91.26.218:82/live/cctv10hd.m3u8$LR•IPV4•11『线路8』 +http://74.91.26.218:82/live/cctv10hd.m3u8$LR•IPV4•10『线路8』 #EXTINF:-1 tvg-id="CCTV10" tvg-name="CCTV10" group-title="央视",CCTV10 -https://jsv-live-play.sfccn.com/live/jsv_3920_fhd.m3u8$LR•IPV4•11『线路9』 +http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226937/1.m3u8?$LR•IPV6•10『线路9』 #EXTINF:-1 tvg-id="CCTV10" tvg-name="CCTV10" group-title="央视",CCTV10 -http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226937/1.m3u8?$LR•IPV6•11『线路10』 -#EXTINF:-1 tvg-id="CCTV10" tvg-name="CCTV10" group-title="央视",CCTV10 -https://hwapi.yntv.net/ew265l/z1z6s5.m3u8$LR•IPV4•11『线路11』 +https://hwapi.yntv.net/ew265l/z1z6s5.m3u8$LR•IPV4•10『线路10』 #EXTINF:-1 tvg-id="CCTV11" tvg-name="CCTV11" group-title="央视",CCTV11 http://183.129.255.66:8480/hls/12/index.m3u8$LR•IPV4•8『线路1』 #EXTINF:-1 tvg-id="CCTV11" tvg-name="CCTV11" group-title="央视",CCTV11 @@ -340,15 +346,15 @@ http://cd-live-stream.news.cctvplus.com/live/smil:CHANNEL1.smil/chunklist_w74403 #EXTINF:-1 tvg-id="CCTV11" tvg-name="CCTV11" group-title="央视",CCTV11 http://153.0.171.163:9901/tsfile/live/1010_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•8『线路3』 #EXTINF:-1 tvg-id="CCTV11" tvg-name="CCTV11" group-title="央视",CCTV11 -http://112.27.235.94:8000/hls/12/index.m3u8$LR•IPV4•8『线路4』 +http://t.061899.xyz/tl/tl.php?id=cctv11$LR•IPV4•8『线路4』 #EXTINF:-1 tvg-id="CCTV11" tvg-name="CCTV11" group-title="央视",CCTV11 http://38.75.136.137:98/gslb/dsdqbv/cctv11hd.m3u8?auth=test20251009$LR•IPV4•8『线路5』 #EXTINF:-1 tvg-id="CCTV11" tvg-name="CCTV11" group-title="央视",CCTV11 http://74.91.26.218:82/live/cctv11hd.m3u8$LR•IPV4•8『线路6』 #EXTINF:-1 tvg-id="CCTV11" tvg-name="CCTV11" group-title="央视",CCTV11 -http://183.196.25.171:808/hls/11/index.m3u8$LR•IPV4•8『线路7』 +http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226334/1.m3u8?$LR•IPV6•8『线路7』 #EXTINF:-1 tvg-id="CCTV11" tvg-name="CCTV11" group-title="央视",CCTV11 -http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226334/1.m3u8?$LR•IPV6•8『线路8』 +http://183.196.25.171:808/hls/11/index.m3u8$LR•IPV4•8『线路8』 #EXTINF:-1 tvg-id="CCTV12" tvg-name="CCTV12" group-title="央视",CCTV12 http://112.123.243.37:50085/tsfile/live/0013_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•9『线路1』 #EXTINF:-1 tvg-id="CCTV12" tvg-name="CCTV12" group-title="央视",CCTV12 @@ -380,7 +386,7 @@ http://38.75.136.137:98/gslb/dsdqbv/cctv13hd.m3u8?auth=test20251009$LR•IPV4• #EXTINF:-1 tvg-id="CCTV13" tvg-name="CCTV13" group-title="央视",CCTV13 http://153.0.171.163:9901/tsfile/live/1012_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•15『线路6』 #EXTINF:-1 tvg-id="CCTV13" tvg-name="CCTV13" group-title="央视",CCTV13 -http://112.27.235.94:8000/hls/14/index.m3u8$LR•IPV4•15『线路7』 +http://t.061899.xyz/tl/tl.php?id=cctv13$LR•IPV4•15『线路7』 #EXTINF:-1 tvg-id="CCTV13" tvg-name="CCTV13" group-title="央视",CCTV13 http://74.91.26.218:82/live/cctv13hd.m3u8$LR•IPV4•15『线路8』 #EXTINF:-1 tvg-id="CCTV13" tvg-name="CCTV13" group-title="央视",CCTV13 @@ -406,7 +412,7 @@ http://183.129.255.66:8480/hls/15/index.m3u8$LR•IPV4•9『线路3』 #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•9『线路4』 #EXTINF:-1 tvg-id="CCTV14" tvg-name="CCTV14" group-title="央视",CCTV14 -http://112.27.235.94:8000/hls/15/index.m3u8$LR•IPV4•9『线路5』 +http://t.061899.xyz/tl/tl.php?id=cctv14$LR•IPV4•9『线路5』 #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•9『线路6』 #EXTINF:-1 tvg-id="CCTV14" tvg-name="CCTV14" group-title="央视",CCTV14 @@ -428,7 +434,7 @@ http://204.12.221.218:8181/3m1080p/cctv15.m3u8$LR•IPV4•11『线路5』 #EXTINF:-1 tvg-id="CCTV15" tvg-name="CCTV15" group-title="央视",CCTV15 http://153.0.171.163:9901/tsfile/live/1014_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•11『线路6』 #EXTINF:-1 tvg-id="CCTV15" tvg-name="CCTV15" group-title="央视",CCTV15 -http://112.27.235.94:8000/hls/16/index.m3u8$LR•IPV4•11『线路7』 +http://t.061899.xyz/tl/tl.php?id=cctv15$LR•IPV4•11『线路7』 #EXTINF:-1 tvg-id="CCTV15" tvg-name="CCTV15" group-title="央视",CCTV15 http://38.75.136.137:98/gslb/dsdqbv/cctv15hd.m3u8?auth=test20251009$LR•IPV4•11『线路8』 #EXTINF:-1 tvg-id="CCTV15" tvg-name="CCTV15" group-title="央视",CCTV15 @@ -438,7 +444,7 @@ http://38.75.136.137:98/gslb/dsdqpub/cctv15hd.m3u8?auth=testpub$LR•IPV4•11 #EXTINF:-1 tvg-id="CCTV15" tvg-name="CCTV15" group-title="央视",CCTV15 https://xykt-fix.github.io/play/a02e/index.m3u8$LR•IPV4•11『线路11』 #EXTINF:-1 tvg-id="CCTV16" tvg-name="CCTV16" group-title="央视",CCTV16 -http://drive.mxmy.net:8888/udp/239.3.1.184:8001$LR•IPV4•4『线路1』 +http://t.061899.xyz/tl/tl.php?id=cctv16$LR•IPV4•4『线路1』 #EXTINF:-1 tvg-id="CCTV16" tvg-name="CCTV16" group-title="央视",CCTV16 http://38.75.136.137:98/gslb/dsdqbv/cctv16hd.m3u8?auth=test20251009$LR•IPV4•4『线路2』 #EXTINF:-1 tvg-id="CCTV16" tvg-name="CCTV16" group-title="央视",CCTV16 @@ -452,17 +458,17 @@ http://107.150.60.122/live/cctv17hd.m3u8$LR•IPV4•9『线路2』 #EXTINF:-1 tvg-id="CCTV17" tvg-name="CCTV17" group-title="央视",CCTV17 http://59.39.89.130:60901/tsfile/live/0017_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•9『线路3』 #EXTINF:-1 tvg-id="CCTV17" tvg-name="CCTV17" group-title="央视",CCTV17 -http://123.130.84.106:8154/tsfile/live/0019_1.m3u8$LR•IPV4•9『线路4』 +http://t.061899.xyz/tl/tl.php?id=cctv17$LR•IPV4•9『线路4』 #EXTINF:-1 tvg-id="CCTV17" tvg-name="CCTV17" group-title="央视",CCTV17 http://38.75.136.137:98/gslb/dsdqbv/cctv17hd.m3u8?auth=test20251009$LR•IPV4•9『线路5』 #EXTINF:-1 tvg-id="CCTV17" tvg-name="CCTV17" group-title="央视",CCTV17 http://74.91.26.218:82/live/cctv17hd.m3u8$LR•IPV4•9『线路6』 #EXTINF:-1 tvg-id="CCTV17" tvg-name="CCTV17" group-title="央视",CCTV17 -http://183.196.25.171:808/hls/93/index.m3u8$LR•IPV4•9『线路7』 +http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226318/1.m3u8?$LR•IPV6•9『线路7』 #EXTINF:-1 tvg-id="CCTV17" tvg-name="CCTV17" group-title="央视",CCTV17 -http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226318/1.m3u8?$LR•IPV6•9『线路8』 +http://38.75.136.137:98/gslb/dsdqpub/cctv17hd.m3u8?auth=testpub$LR•IPV4•9『线路8』 #EXTINF:-1 tvg-id="CCTV17" tvg-name="CCTV17" group-title="央视",CCTV17 -http://38.75.136.137:98/gslb/dsdqpub/cctv17hd.m3u8?auth=testpub$LR•IPV4•9『线路9』 +http://183.196.25.171:808/hls/93/index.m3u8$LR•IPV4•9『线路9』 #EXTINF:-1 tvg-id="CCTV第一剧场" tvg-name="CCTV第一剧场" group-title="央视",CCTV第一剧场 http://38.75.136.137:98/gslb/dsdqpub/dyjc.m3u8?auth=testpub$LR•IPV4 #EXTINF:-1 tvg-id="CCTV怀旧剧场" tvg-name="CCTV怀旧剧场" group-title="央视",CCTV怀旧剧场 @@ -592,7 +598,7 @@ http://171.213.140.54:8123/udp/239.93.1.10:2193$LR•IPV4•7『线路6』 #EXTINF:-1 tvg-id="星空卫视" tvg-name="星空卫视" group-title="卫视",星空卫视 https://stream1.freetv.fun/xing-kong-wei-shi-4.ctv$LR•IPV4•7『线路7』 #EXTINF:-1 tvg-id="湖南卫视" tvg-name="湖南卫视" group-title="卫视",湖南卫视 -http://120.196.232.43:8088/rrs03.hw.gmcc.net/PLTV/651/224/3221226698/1.m3u8$LR•IPV4•16『线路1』 +http://t.061899.xyz/tl/tl.php?id=hunws$LR•IPV4•16『线路1』 #EXTINF:-1 tvg-id="湖南卫视" tvg-name="湖南卫视" group-title="卫视",湖南卫视 http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226509/1.m3u8?zoneoffset=480&servicetype=1&icpid=&limitflux=-1&limitdur=-1&tenantId=8601&accountinfo=%7E%7EV2.0%7EIGb_ib7rnBX9_sANRKq9sg%7EpK8OKM5JoJWWbLRyLfPcUMkwWZ90MzSI9S9PDltJsYzd0ZGcS3Tkh7syciNKJa-w60mDOdwtDyoNwCx9aRgzHNH9AUREV_qvNJtXHRPzYw0%7EExtInfo9bj61dxzlMXrsixrqcFYPg%3D%3D%3A20221022013542%2C915973%2C119.123.71.209%2C20221022013542%2C10000100000000050000000003873458%2C915973%2C-1%2C0%2C1%2C%2C%2C2%2C%2C%2C%2C2%2C%2C10000100000000060000000007253514_0%2CEND&GuardEncType=2$LR•IPV6•16『线路2』 #EXTINF:-1 tvg-id="湖南卫视" tvg-name="湖南卫视" group-title="卫视",湖南卫视 @@ -604,7 +610,7 @@ http://173.208.212.130:8181/720p/hnws.m3u8$LR•IPV4•16『线路5』 #EXTINF:-1 tvg-id="湖南卫视" tvg-name="湖南卫视" group-title="卫视",湖南卫视 http://153.0.171.163:9901/tsfile/live/0128_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•16『线路6』 #EXTINF:-1 tvg-id="湖南卫视" tvg-name="湖南卫视" group-title="卫视",湖南卫视 -http://112.27.235.94:8000/hls/31/index.m3u8$LR•IPV4•16『线路7』 +http://120.196.232.43:8088/rrs03.hw.gmcc.net/PLTV/651/224/3221226698/1.m3u8$LR•IPV4•16『线路7』 #EXTINF:-1 tvg-id="湖南卫视" tvg-name="湖南卫视" group-title="卫视",湖南卫视 http://38.75.136.137:98/gslb/dsdqpub/hnwshd.m3u8?auth=testpub$LR•IPV4•16『线路8』 #EXTINF:-1 tvg-id="湖南卫视" tvg-name="湖南卫视" group-title="卫视",湖南卫视 @@ -624,73 +630,71 @@ https://httop.top/ysp-湖南卫视$LR•IPV4•16『线路15』 #EXTINF:-1 tvg-id="湖南卫视" tvg-name="湖南卫视" group-title="卫视",湖南卫视 http://iptv.huuc.edu.cn/hls/hunanhd.m3u8$LR•IPV4•16『线路16』 #EXTINF:-1 tvg-id="浙江卫视" tvg-name="浙江卫视" group-title="卫视",浙江卫视 -http://zwebl02.cztv.com/live/channel01720Pnew.m3u8?auth_key=1784123883-f178167128c55cd66b7eca004ccca015-0-69f388bdaa594feb900510d687566182$LR•IPV4•17『线路1』 +http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226899/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7ETYfTgTra_pUx2cPrgZ_BDw%7EtP4-l0lmSfjwLWEfK_el1vH_mv-s1zo4AQJwdedaVwG9xkuFTDg8J26cwOrNJzn20BErrHdLhuZ9EzLUCD3PMW-OMx4MGteHV2vLeW6BqoY%2CEND$LR•IPV6•16『线路1』 #EXTINF:-1 tvg-id="浙江卫视" tvg-name="浙江卫视" group-title="卫视",浙江卫视 -http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226899/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7ETYfTgTra_pUx2cPrgZ_BDw%7EtP4-l0lmSfjwLWEfK_el1vH_mv-s1zo4AQJwdedaVwG9xkuFTDg8J26cwOrNJzn20BErrHdLhuZ9EzLUCD3PMW-OMx4MGteHV2vLeW6BqoY%2CEND$LR•IPV6•17『线路2』 +http://112.123.243.37:50085/tsfile/live/0019_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•16『线路2』 #EXTINF:-1 tvg-id="浙江卫视" tvg-name="浙江卫视" group-title="卫视",浙江卫视 -http://112.123.243.37:50085/tsfile/live/0019_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•17『线路3』 +http://ali-xwl.cztv.com/live/channel011080Plxw.m3u8$LR•IPV4•16『线路3』 #EXTINF:-1 tvg-id="浙江卫视" tvg-name="浙江卫视" group-title="卫视",浙江卫视 -http://ali-xwl.cztv.com/live/channel011080Plxw.m3u8$LR•IPV4•17『线路4』 +http://204.12.221.218:8181/3m1080p/zjws.m3u8$LR•IPV4•16『线路4』 #EXTINF:-1 tvg-id="浙江卫视" tvg-name="浙江卫视" group-title="卫视",浙江卫视 -http://204.12.221.218:8181/3m1080p/zjws.m3u8$LR•IPV4•17『线路5』 +http://173.208.212.130:8181/720p/zjws.m3u8$LR•IPV4•16『线路5』 #EXTINF:-1 tvg-id="浙江卫视" tvg-name="浙江卫视" group-title="卫视",浙江卫视 -http://173.208.212.130:8181/720p/zjws.m3u8$LR•IPV4•17『线路6』 +http://ali-xwl.cztv.com/live/channel01720Plxw.m3u8$LR•IPV4•16『线路6』 #EXTINF:-1 tvg-id="浙江卫视" tvg-name="浙江卫视" group-title="卫视",浙江卫视 -http://ali-xwl.cztv.com/live/channel01720Plxw.m3u8$LR•IPV4•17『线路7』 +http://ali-m-l.cztv.com:80/channels/lantian/channel001/1080p.m3u8$LR•IPV4•16『线路7』 #EXTINF:-1 tvg-id="浙江卫视" tvg-name="浙江卫视" group-title="卫视",浙江卫视 -http://112.27.235.94:8000/hls/29/index.m3u8$LR•IPV4•17『线路8』 +http://39.134.115.163:8080/PLTV/88888910/224/3221225703/index.m3u8$LR•IPV4•16『线路8』 #EXTINF:-1 tvg-id="浙江卫视" tvg-name="浙江卫视" group-title="卫视",浙江卫视 -http://38.75.136.137:98/gslb/dsdqpub/zjwshd.m3u8?auth=testpub$LR•IPV4•17『线路9』 +http://38.75.136.137:98/gslb/dsdqpub/zjwshd.m3u8?auth=testpub$LR•IPV4•16『线路9』 #EXTINF:-1 tvg-id="浙江卫视" tvg-name="浙江卫视" group-title="卫视",浙江卫视 -http://23.237.228.134/live6/zhejiang.m3u8$LR•IPV4•17『线路10』 +http://23.237.228.134/live6/zhejiang.m3u8$LR•IPV4•16『线路10』 #EXTINF:-1 tvg-id="浙江卫视" tvg-name="浙江卫视" group-title="卫视",浙江卫视 -http://gfr.x3322.net:9901/tsfile/live/1087_1.m3u8$LR•IPV4•17『线路11』 +http://gfr.x3322.net:9901/tsfile/live/1087_1.m3u8$LR•IPV4•16『线路11』 #EXTINF:-1 tvg-id="浙江卫视" tvg-name="浙江卫视" group-title="卫视",浙江卫视 -http://api.kkitv.itv888.cn:8080/hls/urjqjvyf41q/index.m3u8$LR•IPV4•17『线路12』 +http://api.kkitv.itv888.cn:8080/hls/urjqjvyf41q/index.m3u8$LR•IPV4•16『线路12』 #EXTINF:-1 tvg-id="浙江卫视" tvg-name="浙江卫视" group-title="卫视",浙江卫视 -https://iptv.catvod.com/catvod.php?id=zjws$LR•IPV4•17『线路13』 +https://iptv.catvod.com/catvod.php?id=zjws$LR•IPV4•16『线路13』 #EXTINF:-1 tvg-id="浙江卫视" tvg-name="浙江卫视" group-title="卫视",浙江卫视 -https://httop.top/ysp-浙江卫视$LR•IPV4•17『线路14』 +https://httop.top/ysp-浙江卫视$LR•IPV4•16『线路14』 #EXTINF:-1 tvg-id="浙江卫视" tvg-name="浙江卫视" group-title="卫视",浙江卫视 -http://iptv.huuc.edu.cn/hls/zjhd.m3u8$LR•IPV4•17『线路15』 +http://iptv.huuc.edu.cn/hls/zjhd.m3u8$LR•IPV4•16『线路15』 #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•17『线路16』 -#EXTINF:-1 tvg-id="浙江卫视" tvg-name="浙江卫视" group-title="卫视",浙江卫视 -http://39.134.115.163:8080/PLTV/88888910/224/3221225703/index.m3u8$LR•IPV4•17『线路17』 +http://153.0.171.163:9901/tsfile/live/0124_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•16『线路16』 #EXTINF:-1 tvg-id="东方卫视" tvg-name="东方卫视" group-title="卫视",东方卫视 -http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226898/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7E0uh4lyjjBCCN7TCq21vSIQ%7EtP4-l0lmSfjwLWEfK_el1vH_mv-s1zo4AQJwdedaVwG9xkuFTDg8J26cwOrNJzn20BErrHdLhuZ9EzLUCD3PMW-OMx4MGteHV2vLeW6BqoY%2CEND$LR•IPV6•17『线路1』 +http://t.061899.xyz/tl/tl.php?id=dfws$LR•IPV4•17『线路1』 #EXTINF:-1 tvg-id="东方卫视" tvg-name="东方卫视" group-title="卫视",东方卫视 -http://101.66.194.82:9901/tsfile/live/0018_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•17『线路2』 +http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226898/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7E0uh4lyjjBCCN7TCq21vSIQ%7EtP4-l0lmSfjwLWEfK_el1vH_mv-s1zo4AQJwdedaVwG9xkuFTDg8J26cwOrNJzn20BErrHdLhuZ9EzLUCD3PMW-OMx4MGteHV2vLeW6BqoY%2CEND$LR•IPV6•17『线路2』 #EXTINF:-1 tvg-id="东方卫视" tvg-name="东方卫视" group-title="卫视",东方卫视 -http://38.75.136.137:98/gslb/dsdqpub/dfwshd.m3u8?auth=testpub$LR•IPV4•17『线路3』 +http://101.66.194.82:9901/tsfile/live/0018_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•17『线路3』 #EXTINF:-1 tvg-id="东方卫视" tvg-name="东方卫视" group-title="卫视",东方卫视 -http://173.208.212.130:8181/720p/dfws.m3u8$LR•IPV4•17『线路4』 +http://38.75.136.137:98/gslb/dsdqpub/dfwshd.m3u8?auth=testpub$LR•IPV4•17『线路4』 #EXTINF:-1 tvg-id="东方卫视" tvg-name="东方卫视" group-title="卫视",东方卫视 -https://txmov2.a.kwimgs.com/bs3/video-hls/5219953535631090825_hlsb.m3u8$LR•IPV4•17『线路5』 +http://173.208.212.130:8181/720p/dfws.m3u8$LR•IPV4•17『线路5』 #EXTINF:-1 tvg-id="东方卫视" tvg-name="东方卫视" group-title="卫视",东方卫视 -http://38.75.136.137:98/gslb/dsdqbv/dfwshd.m3u8?auth=test20251009$LR•IPV4•17『线路6』 +http://118.81.195.79:9003/hls/23/index.m3u8$LR•IPV4•17『线路6』 #EXTINF:-1 tvg-id="东方卫视" tvg-name="东方卫视" group-title="卫视",东方卫视 -http://23.237.228.134/live3/dongfang.m3u8$LR•IPV4•17『线路7』 +http://38.75.136.137:98/gslb/dsdqbv/dfwshd.m3u8?auth=test20251009$LR•IPV4•17『线路7』 #EXTINF:-1 tvg-id="东方卫视" tvg-name="东方卫视" group-title="卫视",东方卫视 -http://43.251.226.89:8080/play/36.m3u8$LR•IPV4•17『线路8』 +http://23.237.228.134/live3/dongfang.m3u8$LR•IPV4•17『线路8』 #EXTINF:-1 tvg-id="东方卫视" tvg-name="东方卫视" group-title="卫视",东方卫视 -http://gfr.x3322.net:9901/tsfile/live/1085_1.m3u8$LR•IPV4•17『线路9』 +http://43.251.226.89:8080/play/36.m3u8$LR•IPV4•17『线路9』 #EXTINF:-1 tvg-id="东方卫视" tvg-name="东方卫视" group-title="卫视",东方卫视 -http://api.kkitv.itv888.cn:8080/hls/p269fvbehye/index.m3u8$LR•IPV4•17『线路10』 +http://gfr.x3322.net:9901/tsfile/live/1085_1.m3u8$LR•IPV4•17『线路10』 #EXTINF:-1 tvg-id="东方卫视" tvg-name="东方卫视" group-title="卫视",东方卫视 -https://iptv.catvod.com/catvod.php?id=dfws$LR•IPV4•17『线路11』 +http://api.kkitv.itv888.cn:8080/hls/p269fvbehye/index.m3u8$LR•IPV4•17『线路11』 #EXTINF:-1 tvg-id="东方卫视" tvg-name="东方卫视" group-title="卫视",东方卫视 -https://httop.top/ysp-东方卫视$LR•IPV4•17『线路12』 +https://iptv.catvod.com/catvod.php?id=dfws$LR•IPV4•17『线路12』 #EXTINF:-1 tvg-id="东方卫视" tvg-name="东方卫视" group-title="卫视",东方卫视 -http://iptv.huuc.edu.cn/hls/dfhd.m3u8$LR•IPV4•17『线路13』 +https://httop.top/ysp-东方卫视$LR•IPV4•17『线路13』 #EXTINF:-1 tvg-id="东方卫视" tvg-name="东方卫视" group-title="卫视",东方卫视 -http://mg.hmysapp.cn:177/ckmg/zb.php?id=dfws$LR•IPV4•17『线路14』 +http://iptv.huuc.edu.cn/hls/dfhd.m3u8$LR•IPV4•17『线路14』 #EXTINF:-1 tvg-id="东方卫视" tvg-name="东方卫视" group-title="卫视",东方卫视 -http://153.0.171.163:9901/tsfile/live/0107_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•17『线路15』 +http://mg.hmysapp.cn:177/ckmg/zb.php?id=dfws$LR•IPV4•17『线路15』 #EXTINF:-1 tvg-id="东方卫视" tvg-name="东方卫视" group-title="卫视",东方卫视 -http://omnix.cn:4000/udp/225.1.8.45:8032$LR•IPV4•17『线路16』 +http://153.0.171.163:9901/tsfile/live/0107_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•17『线路16』 #EXTINF:-1 tvg-id="东方卫视" tvg-name="东方卫视" group-title="卫视",东方卫视 -http://118.81.195.79:9003/hls/23/index.m3u8$LR•IPV4•17『线路17』 +http://omnix.cn:4000/udp/225.1.8.45:8032$LR•IPV4•17『线路17』 #EXTINF:-1 tvg-id="北京卫视" tvg-name="北京卫视" group-title="卫视",北京卫视 http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226900/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7EcYPi33WFyhvd6SjmqUKhJg%7EtP4-l0lmSfjwLWEfK_el1vH_mv-s1zo4AQJwdedaVwG9xkuFTDg8J26cwOrNJzn20BErrHdLhuZ9EzLUCD3PMW-OMx4MGteHV2vLeW6BqoY%2CEND$LR•IPV6•13『线路1』 #EXTINF:-1 tvg-id="北京卫视" tvg-name="北京卫视" group-title="卫视",北京卫视 @@ -700,77 +704,75 @@ http://153.0.171.163:9901/tsfile/live/0122_1.m3u8?key=txiptv&playlive=1&authid=0 #EXTINF:-1 tvg-id="北京卫视" tvg-name="北京卫视" group-title="卫视",北京卫视 http://112.27.235.94:8000/hls/27/index.m3u8$LR•IPV4•13『线路4』 #EXTINF:-1 tvg-id="北京卫视" tvg-name="北京卫视" group-title="卫视",北京卫视 -http://38.75.136.137:98/gslb/dsdqpub/bjwshd.m3u8?auth=testpub$LR•IPV4•13『线路5』 +http://go.bkpcp.top/mg/bjws$LR•IPV4•13『线路5』 #EXTINF:-1 tvg-id="北京卫视" tvg-name="北京卫视" group-title="卫视",北京卫视 -http://23.237.228.134/live3/beijing.m3u8$LR•IPV4•13『线路6』 +http://38.75.136.137:98/gslb/dsdqpub/bjwshd.m3u8?auth=testpub$LR•IPV4•13『线路6』 #EXTINF:-1 tvg-id="北京卫视" tvg-name="北京卫视" group-title="卫视",北京卫视 -http://43.251.226.89:8080/play/40.m3u8$LR•IPV4•13『线路7』 +http://23.237.228.134/live3/beijing.m3u8$LR•IPV4•13『线路7』 #EXTINF:-1 tvg-id="北京卫视" tvg-name="北京卫视" group-title="卫视",北京卫视 -http://gfr.x3322.net:9901/tsfile/live/1089_1.m3u8$LR•IPV4•13『线路8』 +http://43.251.226.89:8080/play/40.m3u8$LR•IPV4•13『线路8』 #EXTINF:-1 tvg-id="北京卫视" tvg-name="北京卫视" group-title="卫视",北京卫视 -http://api.kkitv.itv888.cn:8080/hls/h5uud1z84gn/index.m3u8$LR•IPV4•13『线路9』 +http://gfr.x3322.net:9901/tsfile/live/1089_1.m3u8$LR•IPV4•13『线路9』 #EXTINF:-1 tvg-id="北京卫视" tvg-name="北京卫视" group-title="卫视",北京卫视 -https://iptv.catvod.com/catvod.php?id=bjws$LR•IPV4•13『线路10』 +http://api.kkitv.itv888.cn:8080/hls/h5uud1z84gn/index.m3u8$LR•IPV4•13『线路10』 #EXTINF:-1 tvg-id="北京卫视" tvg-name="北京卫视" group-title="卫视",北京卫视 -https://httop.top/ysp-北京卫视$LR•IPV4•13『线路11』 +https://iptv.catvod.com/catvod.php?id=bjws$LR•IPV4•13『线路11』 #EXTINF:-1 tvg-id="北京卫视" tvg-name="北京卫视" group-title="卫视",北京卫视 -http://iptv.huuc.edu.cn/hls/btv1hd.m3u8$LR•IPV4•13『线路12』 +https://httop.top/ysp-北京卫视$LR•IPV4•13『线路12』 #EXTINF:-1 tvg-id="北京卫视" tvg-name="北京卫视" group-title="卫视",北京卫视 -http://go.bkpcp.top/mg/bjws$LR•IPV4•13『线路13』 +http://iptv.huuc.edu.cn/hls/btv1hd.m3u8$LR•IPV4•13『线路13』 #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•15『线路1』 +http://t.061899.xyz/tl/tl.php?id=jsws$LR•IPV4•15『线路1』 #EXTINF:-1 tvg-id="江苏卫视" tvg-name="江苏卫视" group-title="卫视",江苏卫视 -http://120.198.95.220:9901/tsfile/live/1046_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•15『线路2』 +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•15『线路2』 #EXTINF:-1 tvg-id="江苏卫视" tvg-name="江苏卫视" group-title="卫视",江苏卫视 -http://173.208.212.130:8181/720p/jsws.m3u8$LR•IPV4•15『线路3』 +http://120.198.95.220:9901/tsfile/live/1046_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•15『线路3』 #EXTINF:-1 tvg-id="江苏卫视" tvg-name="江苏卫视" group-title="卫视",江苏卫视 -http://198.204.228.26/live/jswshd.m3u8$LR•IPV4•15『线路4』 +http://173.208.212.130:8181/720p/jsws.m3u8$LR•IPV4•15『线路4』 #EXTINF:-1 tvg-id="江苏卫视" tvg-name="江苏卫视" group-title="卫视",江苏卫视 -http://112.27.235.94:8000/hls/32/index.m3u8$LR•IPV4•15『线路5』 +http://198.204.228.26/live/jswshd.m3u8$LR•IPV4•15『线路5』 #EXTINF:-1 tvg-id="江苏卫视" tvg-name="江苏卫视" group-title="卫视",江苏卫视 -http://38.75.136.137:98/gslb/dsdqbv/jswshd.m3u8?auth=test20251009$LR•IPV4•15『线路6』 +http://39.134.24.166/dbiptv.sn.chinamobile.com/PLTV/88888890/224/3221226200/index.m3u8$LR•IPV4•15『线路6』 #EXTINF:-1 tvg-id="江苏卫视" tvg-name="江苏卫视" group-title="卫视",江苏卫视 -https://hlsbkmgsplive.miguvideo.com/migu/kailu/jswshd265/55/20200407/01.m3u8?&HlsSubType=&encrypt=$LR•IPV4•15『线路7』 +http://38.75.136.137:98/gslb/dsdqbv/jswshd.m3u8?auth=test20251009$LR•IPV4•15『线路7』 #EXTINF:-1 tvg-id="江苏卫视" tvg-name="江苏卫视" group-title="卫视",江苏卫视 -http://23.237.228.134/live3/jiangsu.m3u8$LR•IPV4•15『线路8』 +https://hlsbkmgsplive.miguvideo.com/migu/kailu/jswshd265/55/20200407/01.m3u8?&HlsSubType=&encrypt=$LR•IPV4•15『线路8』 #EXTINF:-1 tvg-id="江苏卫视" tvg-name="江苏卫视" group-title="卫视",江苏卫视 -http://43.251.226.89:8080/play/37.m3u8$LR•IPV4•15『线路9』 +http://23.237.228.134/live3/jiangsu.m3u8$LR•IPV4•15『线路9』 #EXTINF:-1 tvg-id="江苏卫视" tvg-name="江苏卫视" group-title="卫视",江苏卫视 -http://gfr.x3322.net:9901/tsfile/live/1086_1.m3u8$LR•IPV4•15『线路10』 +http://43.251.226.89:8080/play/37.m3u8$LR•IPV4•15『线路10』 #EXTINF:-1 tvg-id="江苏卫视" tvg-name="江苏卫视" group-title="卫视",江苏卫视 -http://api.kkitv.itv888.cn:8080/hls/g1upm1u239/index.m3u8$LR•IPV4•15『线路11』 +http://gfr.x3322.net:9901/tsfile/live/1086_1.m3u8$LR•IPV4•15『线路11』 #EXTINF:-1 tvg-id="江苏卫视" tvg-name="江苏卫视" group-title="卫视",江苏卫视 -https://httop.top/ysp-江苏卫视$LR•IPV4•15『线路12』 +http://api.kkitv.itv888.cn:8080/hls/g1upm1u239/index.m3u8$LR•IPV4•15『线路12』 #EXTINF:-1 tvg-id="江苏卫视" tvg-name="江苏卫视" group-title="卫视",江苏卫视 -http://iptv.huuc.edu.cn/hls/jshd.m3u8$LR•IPV4•15『线路13』 +https://httop.top/ysp-江苏卫视$LR•IPV4•15『线路13』 #EXTINF:-1 tvg-id="江苏卫视" tvg-name="江苏卫视" group-title="卫视",江苏卫视 -http://mg.hmysapp.cn:177/ckmg/zb.php?id=jsws$LR•IPV4•15『线路14』 +http://iptv.huuc.edu.cn/hls/jshd.m3u8$LR•IPV4•15『线路14』 #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•15『线路15』 +http://mg.hmysapp.cn:177/ckmg/zb.php?id=jsws$LR•IPV4•15『线路15』 #EXTINF:-1 tvg-id="安徽卫视" tvg-name="安徽卫视" group-title="卫视",安徽卫视 -https://piccpndks.v.kcdnvip.com/audio/anhui_2/index.m3u8$LR•IPV4•11『线路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•10『线路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•11『线路2』 +http://101.66.194.63:9901/tsfile/live/0130_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•10『线路2』 #EXTINF:-1 tvg-id="安徽卫视" tvg-name="安徽卫视" group-title="卫视",安徽卫视 -http://101.66.194.63:9901/tsfile/live/0130_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•11『线路3』 +http://112.27.235.94:8000/hls/26/index.m3u8$LR•IPV4•10『线路3』 #EXTINF:-1 tvg-id="安徽卫视" tvg-name="安徽卫视" group-title="卫视",安徽卫视 -http://112.27.235.94:8000/hls/26/index.m3u8$LR•IPV4•11『线路4』 +http://23.237.228.134/live8/anhui.m3u8$LR•IPV4•10『线路4』 #EXTINF:-1 tvg-id="安徽卫视" tvg-name="安徽卫视" group-title="卫视",安徽卫视 -http://23.237.228.134/live8/anhui.m3u8$LR•IPV4•11『线路5』 +http://gfr.x3322.net:9901/tsfile/live/1092_1.m3u8$LR•IPV4•10『线路5』 #EXTINF:-1 tvg-id="安徽卫视" tvg-name="安徽卫视" group-title="卫视",安徽卫视 -http://gfr.x3322.net:9901/tsfile/live/1092_1.m3u8$LR•IPV4•11『线路6』 +http://api.kkitv.itv888.cn:8080/hls/m8hvytneunk/index.m3u8$LR•IPV4•10『线路6』 #EXTINF:-1 tvg-id="安徽卫视" tvg-name="安徽卫视" group-title="卫视",安徽卫视 -http://api.kkitv.itv888.cn:8080/hls/m8hvytneunk/index.m3u8$LR•IPV4•11『线路7』 +https://iptv.catvod.com/catvod.php?id=ahws$LR•IPV4•10『线路7』 #EXTINF:-1 tvg-id="安徽卫视" tvg-name="安徽卫视" group-title="卫视",安徽卫视 -https://iptv.catvod.com/catvod.php?id=ahws$LR•IPV4•11『线路8』 +https://httop.top/ysp-安徽卫视$LR•IPV4•10『线路8』 #EXTINF:-1 tvg-id="安徽卫视" tvg-name="安徽卫视" group-title="卫视",安徽卫视 -https://httop.top/ysp-安徽卫视$LR•IPV4•11『线路9』 +http://iptv.huuc.edu.cn/hls/ahhd.m3u8$LR•IPV4•10『线路9』 #EXTINF:-1 tvg-id="安徽卫视" tvg-name="安徽卫视" group-title="卫视",安徽卫视 -http://iptv.huuc.edu.cn/hls/ahhd.m3u8$LR•IPV4•11『线路10』 -#EXTINF:-1 tvg-id="安徽卫视" tvg-name="安徽卫视" group-title="卫视",安徽卫视 -http://153.0.171.163:9901/tsfile/live/0130_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•11『线路11』 +http://153.0.171.163:9901/tsfile/live/0130_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•10『线路10』 #EXTINF:-1 tvg-id="重庆卫视" tvg-name="重庆卫视" group-title="卫视",重庆卫视 -http://live2.plus.jinhua.com.cn/dsnc/playlist.m3u8$LR•IPV4•16『线路1』 +http://t.061899.xyz/tl/tl.php?id=cqws$LR•IPV4•16『线路1』 #EXTINF:-1 tvg-id="重庆卫视" tvg-name="重庆卫视" group-title="卫视",重庆卫视 http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226963/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7EjTXsJprEx2nE38tdvu5lhA%7EtP4-l0lmSfjwLWEfK_el1vH_mv-s1zo4AQJwdedaVwG9xkuFTDg8J26cwOrNJzn20BErrHdLhuZ9EzLUCD3PMW-OMx4MGteHV2vLeW6BqoY%2CEND$LR•IPV6•16『线路2』 #EXTINF:-1 tvg-id="重庆卫视" tvg-name="重庆卫视" group-title="卫视",重庆卫视 @@ -782,25 +784,25 @@ http://112.123.243.37:50085/tsfile/live/0131_1.m3u8?key=txiptv&playlive=0&authid #EXTINF:-1 tvg-id="重庆卫视" tvg-name="重庆卫视" group-title="卫视",重庆卫视 http://120.198.95.220:9901/tsfile/live/1066_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•16『线路6』 #EXTINF:-1 tvg-id="重庆卫视" tvg-name="重庆卫视" group-title="卫视",重庆卫视 -http://112.27.235.94:8000/hls/36/index.m3u8$LR•IPV4•16『线路7』 +http://live2.plus.jinhua.com.cn/dsnc/playlist.m3u8$LR•IPV4•16『线路7』 #EXTINF:-1 tvg-id="重庆卫视" tvg-name="重庆卫视" group-title="卫视",重庆卫视 -http://23.237.228.134/live6/chongqing.m3u8$LR•IPV4•16『线路8』 +http://118.81.195.79:9003/hls/22/index.m3u8$LR•IPV4•16『线路8』 #EXTINF:-1 tvg-id="重庆卫视" tvg-name="重庆卫视" group-title="卫视",重庆卫视 -http://43.251.226.89:8080/play/55.m3u8$LR•IPV4•16『线路9』 +http://23.237.228.134/live6/chongqing.m3u8$LR•IPV4•16『线路9』 #EXTINF:-1 tvg-id="重庆卫视" tvg-name="重庆卫视" group-title="卫视",重庆卫视 -http://gfr.x3322.net:9901/tsfile/live/1093_1.m3u8$LR•IPV4•16『线路10』 +http://43.251.226.89:8080/play/55.m3u8$LR•IPV4•16『线路10』 #EXTINF:-1 tvg-id="重庆卫视" tvg-name="重庆卫视" group-title="卫视",重庆卫视 -http://api.kkitv.itv888.cn:8080/hls/ogh3s6tbw6/index.m3u8$LR•IPV4•16『线路11』 +http://gfr.x3322.net:9901/tsfile/live/1093_1.m3u8$LR•IPV4•16『线路11』 #EXTINF:-1 tvg-id="重庆卫视" tvg-name="重庆卫视" group-title="卫视",重庆卫视 -https://iptv.catvod.com/catvod.php?id=cqws$LR•IPV4•16『线路12』 +http://api.kkitv.itv888.cn:8080/hls/ogh3s6tbw6/index.m3u8$LR•IPV4•16『线路12』 #EXTINF:-1 tvg-id="重庆卫视" tvg-name="重庆卫视" group-title="卫视",重庆卫视 -https://httop.top/ysp-重庆卫视$LR•IPV4•16『线路13』 +https://iptv.catvod.com/catvod.php?id=cqws$LR•IPV4•16『线路13』 #EXTINF:-1 tvg-id="重庆卫视" tvg-name="重庆卫视" group-title="卫视",重庆卫视 -http://iptv.huuc.edu.cn/hls/cqhd.m3u8$LR•IPV4•16『线路14』 +https://httop.top/ysp-重庆卫视$LR•IPV4•16『线路14』 #EXTINF:-1 tvg-id="重庆卫视" tvg-name="重庆卫视" group-title="卫视",重庆卫视 -http://153.0.171.163:9901/tsfile/live/0142_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•16『线路15』 +http://iptv.huuc.edu.cn/hls/cqhd.m3u8$LR•IPV4•16『线路15』 #EXTINF:-1 tvg-id="重庆卫视" tvg-name="重庆卫视" group-title="卫视",重庆卫视 -http://118.81.195.79:9003/hls/22/index.m3u8$LR•IPV4•16『线路16』 +http://153.0.171.163:9901/tsfile/live/0142_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•16『线路16』 #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•15『线路1』 #EXTINF:-1 tvg-id="四川卫视" tvg-name="四川卫视" group-title="卫视",四川卫视 @@ -820,53 +822,53 @@ http://153.0.171.163:85/tsfile/live/0123_1.m3u8?key=txiptv&playlive=1&authid=0$L #EXTINF:-1 tvg-id="四川卫视" tvg-name="四川卫视" group-title="卫视",四川卫视 http://112.27.235.94:8000/hls/35/index.m3u8$LR•IPV4•15『线路9』 #EXTINF:-1 tvg-id="四川卫视" tvg-name="四川卫视" group-title="卫视",四川卫视 -http://38.75.136.137:98/gslb/dsdqpub/scwshd.m3u8?auth=testpub$LR•IPV4•15『线路10』 +http://39.134.115.163:8080/PLTV/88888910/224/3221225733/index.m3u8$LR•IPV4•15『线路10』 #EXTINF:-1 tvg-id="四川卫视" tvg-name="四川卫视" group-title="卫视",四川卫视 -http://api.kkitv.itv888.cn:8080/hls/p2npnppn96p/index.m3u8$LR•IPV4•15『线路11』 +http://38.75.136.137:98/gslb/dsdqpub/scwshd.m3u8?auth=testpub$LR•IPV4•15『线路11』 #EXTINF:-1 tvg-id="四川卫视" tvg-name="四川卫视" group-title="卫视",四川卫视 -https://iptv.catvod.com/catvod.php?id=scws$LR•IPV4•15『线路12』 +http://api.kkitv.itv888.cn:8080/hls/p2npnppn96p/index.m3u8$LR•IPV4•15『线路12』 #EXTINF:-1 tvg-id="四川卫视" tvg-name="四川卫视" group-title="卫视",四川卫视 -https://httop.top/ysp-四川卫视$LR•IPV4•15『线路13』 +https://iptv.catvod.com/catvod.php?id=scws$LR•IPV4•15『线路13』 #EXTINF:-1 tvg-id="四川卫视" tvg-name="四川卫视" group-title="卫视",四川卫视 -http://iptv.huuc.edu.cn/hls/schd.m3u8$LR•IPV4•15『线路14』 +https://httop.top/ysp-四川卫视$LR•IPV4•15『线路14』 #EXTINF:-1 tvg-id="四川卫视" tvg-name="四川卫视" group-title="卫视",四川卫视 -http://39.134.115.163:8080/PLTV/88888910/224/3221225733/index.m3u8$LR•IPV4•15『线路15』 +http://iptv.huuc.edu.cn/hls/schd.m3u8$LR•IPV4•15『线路15』 #EXTINF:-1 tvg-id="东南卫视" tvg-name="东南卫视" group-title="卫视",东南卫视 -http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226991/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7EQ6F5Mjgs0tJyEArWFL3vQA%7EtP4-l0lmSfjwLWEfK_el1vH_mv-s1zo4AQJwdedaVwG9xkuFTDg8J26cwOrNJzn20BErrHdLhuZ9EzLUCD3PMW-OMx4MGteHV2vLeW6BqoY%2CEND$LR•IPV6•18『线路1』 +http://t.061899.xyz/tl/tl.php?id=dnws$LR•IPV4•18『线路1』 #EXTINF:-1 tvg-id="东南卫视" tvg-name="东南卫视" group-title="卫视",东南卫视 -http://live.zohi.tv/video/s10001-fztv-3/index.m3u8$LR•IPV4•18『线路2』 +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•18『线路2』 #EXTINF:-1 tvg-id="东南卫视" tvg-name="东南卫视" group-title="卫视",东南卫视 -http://198.204.228.26/live/dnwshd.m3u8$LR•IPV4•18『线路3』 +http://live.zohi.tv/video/s10001-fztv-3/index.m3u8$LR•IPV4•18『线路3』 #EXTINF:-1 tvg-id="东南卫视" tvg-name="东南卫视" group-title="卫视",东南卫视 -http://204.12.221.218:8181/3m1080p/dnws.m3u8$LR•IPV4•18『线路4』 +http://198.204.228.26/live/dnwshd.m3u8$LR•IPV4•18『线路4』 #EXTINF:-1 tvg-id="东南卫视" tvg-name="东南卫视" group-title="卫视",东南卫视 -http://112.123.243.37:50085/tsfile/live/0113_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•18『线路5』 +http://204.12.221.218:8181/3m1080p/dnws.m3u8$LR•IPV4•18『线路5』 #EXTINF:-1 tvg-id="东南卫视" tvg-name="东南卫视" group-title="卫视",东南卫视 -http://112.27.235.94:8000/hls/38/index.m3u8$LR•IPV4•18『线路6』 +http://112.123.243.37:50085/tsfile/live/0113_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•18『线路6』 #EXTINF:-1 tvg-id="东南卫视" tvg-name="东南卫视" group-title="卫视",东南卫视 -http://38.75.136.137:98/gslb/dsdqpub/dnwshd.m3u8?auth=testpub$LR•IPV4•18『线路7』 +http://118.81.195.79:9003/hls/24/index.m3u8$LR•IPV4•18『线路7』 #EXTINF:-1 tvg-id="东南卫视" tvg-name="东南卫视" group-title="卫视",东南卫视 -https://hlsbkmgsplive.miguvideo.com/migu/kailu/dongnanws/51/20230724/01.m3u8?&HlsSubType=&encrypt=$LR•IPV4•18『线路8』 +http://38.75.136.137:98/gslb/dsdqpub/dnwshd.m3u8?auth=testpub$LR•IPV4•18『线路8』 #EXTINF:-1 tvg-id="东南卫视" tvg-name="东南卫视" group-title="卫视",东南卫视 -http://23.237.228.134/live6/dongnan.m3u8$LR•IPV4•18『线路9』 +https://hlsbkmgsplive.miguvideo.com/migu/kailu/dongnanws/51/20230724/01.m3u8?&HlsSubType=&encrypt=$LR•IPV4•18『线路9』 #EXTINF:-1 tvg-id="东南卫视" tvg-name="东南卫视" group-title="卫视",东南卫视 -http://23.237.228.134/live8/gansu.m3u8$LR•IPV4•18『线路10』 +http://23.237.228.134/live6/dongnan.m3u8$LR•IPV4•18『线路10』 #EXTINF:-1 tvg-id="东南卫视" tvg-name="东南卫视" group-title="卫视",东南卫视 -http://43.251.226.89:8080/play/49.m3u8$LR•IPV4•18『线路11』 +http://23.237.228.134/live8/gansu.m3u8$LR•IPV4•18『线路11』 #EXTINF:-1 tvg-id="东南卫视" tvg-name="东南卫视" group-title="卫视",东南卫视 -http://gfr.x3322.net:9901/tsfile/live/1099_1.m3u8$LR•IPV4•18『线路12』 +http://43.251.226.89:8080/play/49.m3u8$LR•IPV4•18『线路12』 #EXTINF:-1 tvg-id="东南卫视" tvg-name="东南卫视" group-title="卫视",东南卫视 -http://api.kkitv.itv888.cn:8080/hls/jjt15bvbl7a/index.m3u8$LR•IPV4•18『线路13』 +http://gfr.x3322.net:9901/tsfile/live/1099_1.m3u8$LR•IPV4•18『线路13』 #EXTINF:-1 tvg-id="东南卫视" tvg-name="东南卫视" group-title="卫视",东南卫视 -https://iptv.catvod.com/catvod.php?id=dnws$LR•IPV4•18『线路14』 +http://api.kkitv.itv888.cn:8080/hls/jjt15bvbl7a/index.m3u8$LR•IPV4•18『线路14』 #EXTINF:-1 tvg-id="东南卫视" tvg-name="东南卫视" group-title="卫视",东南卫视 -https://httop.top/ysp-东南卫视$LR•IPV4•18『线路15』 +https://iptv.catvod.com/catvod.php?id=dnws$LR•IPV4•18『线路15』 #EXTINF:-1 tvg-id="东南卫视" tvg-name="东南卫视" group-title="卫视",东南卫视 -http://iptv.huuc.edu.cn/hls/dnhd.m3u8$LR•IPV4•18『线路16』 +https://httop.top/ysp-东南卫视$LR•IPV4•18『线路16』 #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•18『线路17』 +http://iptv.huuc.edu.cn/hls/dnhd.m3u8$LR•IPV4•18『线路17』 #EXTINF:-1 tvg-id="东南卫视" tvg-name="东南卫视" group-title="卫视",东南卫视 -http://118.81.195.79:9003/hls/24/index.m3u8$LR•IPV4•18『线路18』 +http://153.0.171.163:9901/tsfile/live/0137_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•18『线路18』 #EXTINF:-1 tvg-id="深圳卫视" tvg-name="深圳卫视" group-title="卫视",深圳卫视 http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226959/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7EGrVNEZREjuNVKiTJo2mtwg%7EtP4-l0lmSfjwLWEfK_el1vH_mv-s1zo4AQJwdedaVwG9xkuFTDg8J26cwOrNJzn20BErrHdLhuZ9EzLUCD3PMW-OMx4MGteHV2vLeW6BqoY%2CEND$LR•IPV6•17『线路1』 #EXTINF:-1 tvg-id="深圳卫视" tvg-name="深圳卫视" group-title="卫视",深圳卫视 @@ -902,111 +904,113 @@ http://153.0.171.163:9901/tsfile/live/0126_1.m3u8?key=txiptv&playlive=1&authid=0 #EXTINF:-1 tvg-id="深圳卫视" tvg-name="深圳卫视" group-title="卫视",深圳卫视 http://38.64.72.148:80/hls/modn/list/4007/playlist.m3u8$LR•IPV4•17『线路17』 #EXTINF:-1 tvg-id="广东卫视" tvg-name="广东卫视" group-title="卫视",广东卫视 -http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226961/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7E2MGyx659D_aaDPP0qt3NgA%7EtP4-l0lmSfjwLWEfK_el1vH_mv-s1zo4AQJwdedaVwG9xkuFTDg8J26cwOrNJzn20BErrHdLhuZ9EzLUCD3PMW-OMx4MGteHV2vLeW6BqoY%2CEND$LR•IPV6•12『线路1』 +http://t.061899.xyz/tl/tl.php?id=gdws$LR•IPV4•12『线路1』 #EXTINF:-1 tvg-id="广东卫视" tvg-name="广东卫视" group-title="卫视",广东卫视 -http://112.27.235.94:8000/hls/30/index.m3u8$LR•IPV4•12『线路2』 +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•12『线路2』 #EXTINF:-1 tvg-id="广东卫视" tvg-name="广东卫视" group-title="卫视",广东卫视 -http://38.75.136.137:98/gslb/dsdqpub/gdwshd.m3u8?auth=testpub$LR•IPV4•12『线路3』 +http://118.81.195.79:9003/hls/26/index.m3u8$LR•IPV4•12『线路3』 #EXTINF:-1 tvg-id="广东卫视" tvg-name="广东卫视" group-title="卫视",广东卫视 -http://23.237.228.134/live6/guangdong.m3u8$LR•IPV4•12『线路4』 +http://38.75.136.137:98/gslb/dsdqpub/gdwshd.m3u8?auth=testpub$LR•IPV4•12『线路4』 #EXTINF:-1 tvg-id="广东卫视" tvg-name="广东卫视" group-title="卫视",广东卫视 -http://43.251.226.89:8080/play/38.m3u8$LR•IPV4•12『线路5』 +http://23.237.228.134/live6/guangdong.m3u8$LR•IPV4•12『线路5』 #EXTINF:-1 tvg-id="广东卫视" tvg-name="广东卫视" group-title="卫视",广东卫视 -http://gfr.x3322.net:9901/tsfile/live/1096_1.m3u8$LR•IPV4•12『线路6』 +http://43.251.226.89:8080/play/38.m3u8$LR•IPV4•12『线路6』 #EXTINF:-1 tvg-id="广东卫视" tvg-name="广东卫视" group-title="卫视",广东卫视 -http://api.kkitv.itv888.cn:8080/hls/qr6872071g/index.m3u8$LR•IPV4•12『线路7』 +http://gfr.x3322.net:9901/tsfile/live/1096_1.m3u8$LR•IPV4•12『线路7』 #EXTINF:-1 tvg-id="广东卫视" tvg-name="广东卫视" group-title="卫视",广东卫视 -https://iptv.catvod.com/catvod.php?id=gdws$LR•IPV4•12『线路8』 +http://api.kkitv.itv888.cn:8080/hls/qr6872071g/index.m3u8$LR•IPV4•12『线路8』 #EXTINF:-1 tvg-id="广东卫视" tvg-name="广东卫视" group-title="卫视",广东卫视 -https://httop.top/ysp-广东卫视$LR•IPV4•12『线路9』 +https://iptv.catvod.com/catvod.php?id=gdws$LR•IPV4•12『线路9』 #EXTINF:-1 tvg-id="广东卫视" tvg-name="广东卫视" group-title="卫视",广东卫视 -http://iptv.huuc.edu.cn/hls/gdhd.m3u8$LR•IPV4•12『线路10』 +https://httop.top/ysp-广东卫视$LR•IPV4•12『线路10』 #EXTINF:-1 tvg-id="广东卫视" tvg-name="广东卫视" group-title="卫视",广东卫视 -http://mg.hmysapp.cn:177/ckmg/zb.php?id=gdws$LR•IPV4•12『线路11』 +http://iptv.huuc.edu.cn/hls/gdhd.m3u8$LR•IPV4•12『线路11』 #EXTINF:-1 tvg-id="广东卫视" tvg-name="广东卫视" group-title="卫视",广东卫视 -http://118.81.195.79:9003/hls/26/index.m3u8$LR•IPV4•12『线路12』 +http://mg.hmysapp.cn:177/ckmg/zb.php?id=gdws$LR•IPV4•12『线路12』 #EXTINF:-1 tvg-id="广西卫视" tvg-name="广西卫视" group-title="卫视",广西卫视 -http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221227010/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7EkAhb-89sxdm9fz6-heXCuw%7EtP4-l0lmSfjwLWEfK_el1vH_mv-s1zo4AQJwdedaVwG9xkuFTDg8J26cwOrNJzn20BErrHdLhuZ9EzLUCD3PMW-OMx4MGteHV2vLeW6BqoY%2CEND$LR•IPV6•16『线路1』 +http://t.061899.xyz/tl/tl.php?id=gxws$LR•IPV4•16『线路1』 #EXTINF:-1 tvg-id="广西卫视" tvg-name="广西卫视" group-title="卫视",广西卫视 -http://113.15.109.216:59901/tsfile/live/0113_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•16『线路2』 +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•16『线路2』 #EXTINF:-1 tvg-id="广西卫视" tvg-name="广西卫视" group-title="卫视",广西卫视 -https://gd202.tv1288.xyz/tsfile/live/1028_1.m3u8$LR•IPV4•16『线路3』 +http://113.15.109.216:59901/tsfile/live/0113_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•16『线路3』 #EXTINF:-1 tvg-id="广西卫视" tvg-name="广西卫视" group-title="卫视",广西卫视 -http://112.123.243.37:50085/tsfile/live/0137_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•16『线路4』 +https://gd202.tv1288.xyz/tsfile/live/1028_1.m3u8$LR•IPV4•16『线路4』 #EXTINF:-1 tvg-id="广西卫视" tvg-name="广西卫视" group-title="卫视",广西卫视 -http://101.66.194.63:9901/tsfile/live/0113_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•16『线路5』 +http://112.123.243.37:50085/tsfile/live/0137_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•16『线路5』 #EXTINF:-1 tvg-id="广西卫视" tvg-name="广西卫视" group-title="卫视",广西卫视 -http://101.66.194.82:9901/tsfile/live/0113_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•16『线路6』 +http://101.66.194.63:9901/tsfile/live/0113_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•16『线路6』 #EXTINF:-1 tvg-id="广西卫视" tvg-name="广西卫视" group-title="卫视",广西卫视 -http://36.136.38.87:9901/tsfile/live/0113_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•16『线路7』 +http://101.66.194.82:9901/tsfile/live/0113_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•16『线路7』 #EXTINF:-1 tvg-id="广西卫视" tvg-name="广西卫视" group-title="卫视",广西卫视 -https://hlscdn.liangtv.cn/live/de0f97348eb84f62aa6b7d8cf0430770/dd505d87880c478f901f38560ca4d4e6.m3u8$LR•IPV4•16『线路8』 +http://36.136.38.87:9901/tsfile/live/0113_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•16『线路8』 #EXTINF:-1 tvg-id="广西卫视" tvg-name="广西卫视" group-title="卫视",广西卫视 -http://38.75.136.137:98/gslb/dsdqpub/gxwshd.m3u8?auth=testpub$LR•IPV4•16『线路9』 +http://118.81.195.79:9003/hls/27/index.m3u8$LR•IPV4•16『线路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•16『线路10』 +http://38.75.136.137:98/gslb/dsdqpub/gxwshd.m3u8?auth=testpub$LR•IPV4•16『线路10』 #EXTINF:-1 tvg-id="广西卫视" tvg-name="广西卫视" group-title="卫视",广西卫视 -http://23.237.228.134/live6/guangxi.m3u8$LR•IPV4•16『线路11』 +http://pull-hls-f11.douyincdn.com/media/stream-695314078702240428.m3u8?arch_hrchy=w1&exp_hrchy=w1&expire=1771760950&major_anchor_level=common&sign=d9c21ca1151fa649e68dc18c13ac2e23&t_id=037-2026021519491078C5C8D15B8DDFD19426-OM31JH$LR•IPV4•16『线路11』 #EXTINF:-1 tvg-id="广西卫视" tvg-name="广西卫视" group-title="卫视",广西卫视 -http://23.237.228.134/live6/guizhou.m3u8$LR•IPV4•16『线路12』 +http://23.237.228.134/live6/guangxi.m3u8$LR•IPV4•16『线路12』 #EXTINF:-1 tvg-id="广西卫视" tvg-name="广西卫视" group-title="卫视",广西卫视 -http://api.kkitv.itv888.cn:8080/hls/yvz4ndj9dqb/index.m3u8$LR•IPV4•16『线路13』 +http://23.237.228.134/live6/guizhou.m3u8$LR•IPV4•16『线路13』 #EXTINF:-1 tvg-id="广西卫视" tvg-name="广西卫视" group-title="卫视",广西卫视 -https://iptv.catvod.com/catvod.php?id=gxws$LR•IPV4•16『线路14』 +http://api.kkitv.itv888.cn:8080/hls/yvz4ndj9dqb/index.m3u8$LR•IPV4•16『线路14』 #EXTINF:-1 tvg-id="广西卫视" tvg-name="广西卫视" group-title="卫视",广西卫视 -https://httop.top/ysp-广西卫视$LR•IPV4•16『线路15』 +https://iptv.catvod.com/catvod.php?id=gxws$LR•IPV4•16『线路15』 #EXTINF:-1 tvg-id="广西卫视" tvg-name="广西卫视" group-title="卫视",广西卫视 -http://118.81.195.79:9003/hls/27/index.m3u8$LR•IPV4•16『线路16』 +https://httop.top/ysp-广西卫视$LR•IPV4•16『线路16』 #EXTINF:-1 tvg-id="厦门卫视" tvg-name="厦门卫视" group-title="卫视",厦门卫视 http://183.11.239.36:808/hls/17/index.m3u8$LR•IPV4•4『线路1』 #EXTINF:-1 tvg-id="厦门卫视" tvg-name="厦门卫视" group-title="卫视",厦门卫视 -https://iptv.catvod.com/catvod.php?id=xmws$LR•IPV4•4『线路2』 +http://223.110.245.159/ott.js.chinamobile.com/PLTV/3/224/3221226996/index.m3u8$LR•IPV4•4『线路2』 #EXTINF:-1 tvg-id="厦门卫视" tvg-name="厦门卫视" group-title="卫视",厦门卫视 -http://223.110.245.159/ott.js.chinamobile.com/PLTV/3/224/3221226996/index.m3u8$LR•IPV4•4『线路3』 +http://112.25.48.68/live/program/live/xmws/1300000/mnf.m3u8$LR•IPV4•4『线路3』 #EXTINF:-1 tvg-id="厦门卫视" tvg-name="厦门卫视" group-title="卫视",厦门卫视 -http://112.25.48.68/live/program/live/xmws/1300000/mnf.m3u8$LR•IPV4•4『线路4』 +https://iptv.catvod.com/catvod.php?id=xmws$LR•IPV4•4『线路4』 #EXTINF:-1 tvg-id="甘肃卫视" tvg-name="甘肃卫视" group-title="卫视",甘肃卫视 -http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221227020/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7Err-CLugPnTcUinEM8JeySg%7EtP4-l0lmSfjwLWEfK_el1vH_mv-s1zo4AQJwdedaVwG9xkuFTDg8J26cwOrNJzn20BErrHdLhuZ9EzLUCD3PMW-OMx4MGteHV2vLeW6BqoY%2CEND$LR•IPV6•5『线路1』 +http://t.061899.xyz/tl/tl.php?id=gsws$LR•IPV4•6『线路1』 #EXTINF:-1 tvg-id="甘肃卫视" tvg-name="甘肃卫视" group-title="卫视",甘肃卫视 -http://112.123.243.37:50085/tsfile/live/0123_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•5『线路2』 +http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221227020/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7Err-CLugPnTcUinEM8JeySg%7EtP4-l0lmSfjwLWEfK_el1vH_mv-s1zo4AQJwdedaVwG9xkuFTDg8J26cwOrNJzn20BErrHdLhuZ9EzLUCD3PMW-OMx4MGteHV2vLeW6BqoY%2CEND$LR•IPV6•6『线路2』 #EXTINF:-1 tvg-id="甘肃卫视" tvg-name="甘肃卫视" group-title="卫视",甘肃卫视 -https://iptv.catvod.com/catvod.php?id=gsws$LR•IPV4•5『线路3』 +http://112.123.243.37:50085/tsfile/live/0123_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•6『线路3』 #EXTINF:-1 tvg-id="甘肃卫视" tvg-name="甘肃卫视" group-title="卫视",甘肃卫视 -https://httop.top/ysp-甘肃卫视$LR•IPV4•5『线路4』 +http://118.81.195.79:9003/hls/25/index.m3u8$LR•IPV4•6『线路4』 #EXTINF:-1 tvg-id="甘肃卫视" tvg-name="甘肃卫视" group-title="卫视",甘肃卫视 -http://118.81.195.79:9003/hls/25/index.m3u8$LR•IPV4•5『线路5』 +https://iptv.catvod.com/catvod.php?id=gsws$LR•IPV4•6『线路5』 +#EXTINF:-1 tvg-id="甘肃卫视" tvg-name="甘肃卫视" group-title="卫视",甘肃卫视 +https://httop.top/ysp-甘肃卫视$LR•IPV4•6『线路6』 #EXTINF:-1 tvg-id="贵州卫视" tvg-name="贵州卫视" group-title="卫视",贵州卫视 -http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221227012/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7EnqBF03rFwPucF8ODtWxLQQ%7EtP4-l0lmSfjwLWEfK_el1vH_mv-s1zo4AQJwdedaVwG9xkuFTDg8J26cwOrNJzn20BErrHdLhuZ9EzLUCD3PMW-OMx4MGteHV2vLeW6BqoY%2CEND$LR•IPV6•16『线路1』 +http://t.061899.xyz/tl/tl.php?id=gzws$LR•IPV4•16『线路1』 #EXTINF:-1 tvg-id="贵州卫视" tvg-name="贵州卫视" group-title="卫视",贵州卫视 -http://112.123.243.37:50085/tsfile/live/0130_2.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•16『线路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•16『线路2』 #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•16『线路3』 +http://112.123.243.37:50085/tsfile/live/0130_2.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•16『线路3』 #EXTINF:-1 tvg-id="贵州卫视" tvg-name="贵州卫视" group-title="卫视",贵州卫视 -http://222.214.208.34:59901/tsfile/live/0120_1.m3u8$LR•IPV4•16『线路4』 +http://120.198.95.220:9901/tsfile/live/1052_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•16『线路4』 #EXTINF:-1 tvg-id="贵州卫视" tvg-name="贵州卫视" group-title="卫视",贵州卫视 -http://198.204.228.26/live/gzwshd.m3u8$LR•IPV4•16『线路5』 +http://222.214.208.34:59901/tsfile/live/0120_1.m3u8$LR•IPV4•16『线路5』 #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•16『线路6』 +http://198.204.228.26/live/gzwshd.m3u8$LR•IPV4•16『线路6』 #EXTINF:-1 tvg-id="贵州卫视" tvg-name="贵州卫视" group-title="卫视",贵州卫视 -http://112.27.235.94:8000/hls/46/index.m3u8$LR•IPV4•16『线路7』 +http://36.136.38.87:9901/tsfile/live/0120_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•16『线路7』 #EXTINF:-1 tvg-id="贵州卫视" tvg-name="贵州卫视" group-title="卫视",贵州卫视 -http://38.75.136.137:98/gslb/dsdqpub/gzwshd.m3u8?auth=testpub$LR•IPV4•16『线路8』 +http://183.207.248.71/gitv/live1/G_GUIZHOU/G_GUIZHOU$LR•IPV4•16『线路8』 #EXTINF:-1 tvg-id="贵州卫视" tvg-name="贵州卫视" group-title="卫视",贵州卫视 -http://23.237.228.134/live6/hainan.m3u8$LR•IPV4•16『线路9』 +http://39.134.115.163:8080/PLTV/88888910/224/3221225728/index.m3u8$LR•IPV4•16『线路9』 #EXTINF:-1 tvg-id="贵州卫视" tvg-name="贵州卫视" group-title="卫视",贵州卫视 -http://gfr.x3322.net:9901/tsfile/live/1100_1.m3u8$LR•IPV4•16『线路10』 +http://38.75.136.137:98/gslb/dsdqpub/gzwshd.m3u8?auth=testpub$LR•IPV4•16『线路10』 #EXTINF:-1 tvg-id="贵州卫视" tvg-name="贵州卫视" group-title="卫视",贵州卫视 -http://api.kkitv.itv888.cn:8080/hls/5dqtpf3arun/index.m3u8$LR•IPV4•16『线路11』 +http://23.237.228.134/live6/hainan.m3u8$LR•IPV4•16『线路11』 #EXTINF:-1 tvg-id="贵州卫视" tvg-name="贵州卫视" group-title="卫视",贵州卫视 -https://iptv.catvod.com/catvod.php?id=gzws$LR•IPV4•16『线路12』 +http://gfr.x3322.net:9901/tsfile/live/1100_1.m3u8$LR•IPV4•16『线路12』 #EXTINF:-1 tvg-id="贵州卫视" tvg-name="贵州卫视" group-title="卫视",贵州卫视 -https://httop.top/ysp-贵州卫视$LR•IPV4•16『线路13』 +http://api.kkitv.itv888.cn:8080/hls/5dqtpf3arun/index.m3u8$LR•IPV4•16『线路13』 #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•16『线路14』 +https://iptv.catvod.com/catvod.php?id=gzws$LR•IPV4•16『线路14』 #EXTINF:-1 tvg-id="贵州卫视" tvg-name="贵州卫视" group-title="卫视",贵州卫视 -http://183.207.248.71/gitv/live1/G_GUIZHOU/G_GUIZHOU$LR•IPV4•16『线路15』 +https://httop.top/ysp-贵州卫视$LR•IPV4•16『线路15』 #EXTINF:-1 tvg-id="贵州卫视" tvg-name="贵州卫视" group-title="卫视",贵州卫视 -http://39.134.115.163:8080/PLTV/88888910/224/3221225728/index.m3u8$LR•IPV4•16『线路16』 +http://153.0.171.163:9901/tsfile/live/0120_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•16『线路16』 #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•13『线路1』 #EXTINF:-1 tvg-id="河北卫视" tvg-name="河北卫视" group-title="卫视",河北卫视 @@ -1018,7 +1022,7 @@ http://204.12.221.218:8181/3m1080p/hews.m3u8$LR•IPV4•13『线路4』 #EXTINF:-1 tvg-id="河北卫视" tvg-name="河北卫视" group-title="卫视",河北卫视 http://event.pull.hebtv.com/jishi/weishi_tingyun.m3u8$LR•IPV4•13『线路5』 #EXTINF:-1 tvg-id="河北卫视" tvg-name="河北卫视" group-title="卫视",河北卫视 -http://120.76.248.139/live/bfgd/4200000108.m3u8$LR•IPV4•13『线路6』 +http://112.27.235.94:8000/hls/39/index.m3u8$LR•IPV4•13『线路6』 #EXTINF:-1 tvg-id="河北卫视" tvg-name="河北卫视" group-title="卫视",河北卫视 http://23.237.228.134/live8/hebei.m3u8$LR•IPV4•13『线路7』 #EXTINF:-1 tvg-id="河北卫视" tvg-name="河北卫视" group-title="卫视",河北卫视 @@ -1034,7 +1038,7 @@ http://iptv.huuc.edu.cn/hls/hebhd.m3u8$LR•IPV4•13『线路12』 #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•13『线路13』 #EXTINF:-1 tvg-id="河南卫视" tvg-name="河南卫视" group-title="卫视",河南卫视 -http://tvcdn.stream3.hndt.com/tv/65bd329b017e1000648cd2ed00000000_transios/playlist.m3u8?wsSecret=ca9a9194ec9a95ed2539e69d07b645d5&wsTime=1784134111$LR•IPV4•12『线路1』 +http://t.061899.xyz/tl/tl.php?id=hnws$LR•IPV4•12『线路1』 #EXTINF:-1 tvg-id="河南卫视" tvg-name="河南卫视" group-title="卫视",河南卫视 http://101.66.195.138:9901/tsfile/live/0139_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•12『线路2』 #EXTINF:-1 tvg-id="河南卫视" tvg-name="河南卫视" group-title="卫视",河南卫视 @@ -1046,17 +1050,17 @@ http://221.226.51.220:50081/newlive/live/hls/37/live.m3u8$LR•IPV4•12『线 #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•12『线路6』 #EXTINF:-1 tvg-id="河南卫视" tvg-name="河南卫视" group-title="卫视",河南卫视 -http://112.27.235.94:8000/hls/37/index.m3u8$LR•IPV4•12『线路7』 +http://tvcdn.stream3.hndt.com/tv/65bd329b017e1000648cd2ed00000000_transios/playlist.m3u8?wsSecret=ca9a9194ec9a95ed2539e69d07b645d5&wsTime=1784134111$LR•IPV4•12『线路7』 #EXTINF:-1 tvg-id="河南卫视" tvg-name="河南卫视" group-title="卫视",河南卫视 -http://23.237.228.134/live6/henan.m3u8$LR•IPV4•12『线路8』 +http://118.81.195.79:9003/hls/30/index.m3u8$LR•IPV4•12『线路8』 #EXTINF:-1 tvg-id="河南卫视" tvg-name="河南卫视" group-title="卫视",河南卫视 -http://43.251.226.89:8080/play/44.m3u8$LR•IPV4•12『线路9』 +http://23.237.228.134/live6/henan.m3u8$LR•IPV4•12『线路9』 #EXTINF:-1 tvg-id="河南卫视" tvg-name="河南卫视" group-title="卫视",河南卫视 -https://iptv.catvod.com/catvod.php?id=hnws$LR•IPV4•12『线路10』 +http://43.251.226.89:8080/play/44.m3u8$LR•IPV4•12『线路10』 #EXTINF:-1 tvg-id="河南卫视" tvg-name="河南卫视" group-title="卫视",河南卫视 -https://httop.top/ysp-河南卫视$LR•IPV4•12『线路11』 +https://iptv.catvod.com/catvod.php?id=hnws$LR•IPV4•12『线路11』 #EXTINF:-1 tvg-id="河南卫视" tvg-name="河南卫视" group-title="卫视",河南卫视 -http://118.81.195.79:9003/hls/30/index.m3u8$LR•IPV4•12『线路12』 +https://httop.top/ysp-河南卫视$LR•IPV4•12『线路12』 #EXTINF:-1 tvg-id="黑龙江卫视" tvg-name="黑龙江卫视" group-title="卫视",黑龙江卫视 http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226965/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7E7UiKL56-L86ihmTWaZ6csw%7EtP4-l0lmSfjwLWEfK_el1vH_mv-s1zo4AQJwdedaVwG9xkuFTDg8J26cwOrNJzn20BErrHdLhuZ9EzLUCD3PMW-OMx4MGteHV2vLeW6BqoY%2CEND$LR•IPV6•12『线路1』 #EXTINF:-1 tvg-id="黑龙江卫视" tvg-name="黑龙江卫视" group-title="卫视",黑龙江卫视 @@ -1068,381 +1072,383 @@ http://198.204.228.26/live/hljwshd.m3u8$LR•IPV4•12『线路4』 #EXTINF:-1 tvg-id="黑龙江卫视" tvg-name="黑龙江卫视" group-title="卫视",黑龙江卫视 http://112.27.235.94:8000/hls/48/index.m3u8$LR•IPV4•12『线路5』 #EXTINF:-1 tvg-id="黑龙江卫视" tvg-name="黑龙江卫视" group-title="卫视",黑龙江卫视 -http://23.237.228.134/live6/heilongjiang.m3u8$LR•IPV4•12『线路6』 +http://118.81.195.79:9003/hls/31/index.m3u8$LR•IPV4•12『线路6』 #EXTINF:-1 tvg-id="黑龙江卫视" tvg-name="黑龙江卫视" group-title="卫视",黑龙江卫视 -http://gfr.x3322.net:9901/tsfile/live/1094_1.m3u8$LR•IPV4•12『线路7』 +http://23.237.228.134/live6/heilongjiang.m3u8$LR•IPV4•12『线路7』 #EXTINF:-1 tvg-id="黑龙江卫视" tvg-name="黑龙江卫视" group-title="卫视",黑龙江卫视 -http://api.kkitv.itv888.cn:8080/hls/2a24lcvser/index.m3u8$LR•IPV4•12『线路8』 +http://gfr.x3322.net:9901/tsfile/live/1094_1.m3u8$LR•IPV4•12『线路8』 #EXTINF:-1 tvg-id="黑龙江卫视" tvg-name="黑龙江卫视" group-title="卫视",黑龙江卫视 -https://iptv.catvod.com/catvod.php?id=hljws$LR•IPV4•12『线路9』 +http://api.kkitv.itv888.cn:8080/hls/2a24lcvser/index.m3u8$LR•IPV4•12『线路9』 #EXTINF:-1 tvg-id="黑龙江卫视" tvg-name="黑龙江卫视" group-title="卫视",黑龙江卫视 -https://httop.top/ysp-黑龙江卫视$LR•IPV4•12『线路10』 +https://iptv.catvod.com/catvod.php?id=hljws$LR•IPV4•12『线路10』 #EXTINF:-1 tvg-id="黑龙江卫视" tvg-name="黑龙江卫视" group-title="卫视",黑龙江卫视 -http://iptv.huuc.edu.cn/hls/hljhd.m3u8$LR•IPV4•12『线路11』 +https://httop.top/ysp-黑龙江卫视$LR•IPV4•12『线路11』 #EXTINF:-1 tvg-id="黑龙江卫视" tvg-name="黑龙江卫视" group-title="卫视",黑龙江卫视 -http://118.81.195.79:9003/hls/31/index.m3u8$LR•IPV4•12『线路12』 +http://iptv.huuc.edu.cn/hls/hljhd.m3u8$LR•IPV4•12『线路12』 #EXTINF:-1 tvg-id="湖北卫视" tvg-name="湖北卫视" group-title="卫视",湖北卫视 -http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226952/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7EREB40lnZnCEwjRy7LZuhIQ%7EtP4-l0lmSfjwLWEfK_el1vH_mv-s1zo4AQJwdedaVwG9xkuFTDg8J26cwOrNJzn20BErrHdLhuZ9EzLUCD3PMW-OMx4MGteHV2vLeW6BqoY%2CEND$LR•IPV6•14『线路1』 +http://t.061899.xyz/tl/tl.php?id=hubws$LR•IPV4•14『线路1』 #EXTINF:-1 tvg-id="湖北卫视" tvg-name="湖北卫视" group-title="卫视",湖北卫视 -http://112.27.235.94:8000/hls/41/index.m3u8$LR•IPV4•14『线路2』 +http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226952/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7EREB40lnZnCEwjRy7LZuhIQ%7EtP4-l0lmSfjwLWEfK_el1vH_mv-s1zo4AQJwdedaVwG9xkuFTDg8J26cwOrNJzn20BErrHdLhuZ9EzLUCD3PMW-OMx4MGteHV2vLeW6BqoY%2CEND$LR•IPV6•14『线路2』 #EXTINF:-1 tvg-id="湖北卫视" tvg-name="湖北卫视" group-title="卫视",湖北卫视 -http://38.75.136.137:98/gslb/dsdqpub/hbwshd.m3u8?auth=testpub$LR•IPV4•14『线路3』 +http://118.81.195.79:9003/hls/32/index.m3u8$LR•IPV4•14『线路3』 #EXTINF:-1 tvg-id="湖北卫视" tvg-name="湖北卫视" group-title="卫视",湖北卫视 -http://23.237.228.134/live6/hubei.m3u8$LR•IPV4•14『线路4』 +http://38.75.136.137:98/gslb/dsdqpub/hbwshd.m3u8?auth=testpub$LR•IPV4•14『线路4』 #EXTINF:-1 tvg-id="湖北卫视" tvg-name="湖北卫视" group-title="卫视",湖北卫视 -http://43.251.226.89:8080/play/46.m3u8$LR•IPV4•14『线路5』 +http://23.237.228.134/live6/hubei.m3u8$LR•IPV4•14『线路5』 #EXTINF:-1 tvg-id="湖北卫视" tvg-name="湖北卫视" group-title="卫视",湖北卫视 -http://gfr.x3322.net:9901/tsfile/live/1088_1.m3u8$LR•IPV4•14『线路6』 +http://43.251.226.89:8080/play/46.m3u8$LR•IPV4•14『线路6』 #EXTINF:-1 tvg-id="湖北卫视" tvg-name="湖北卫视" group-title="卫视",湖北卫视 -http://api.kkitv.itv888.cn:8080/hls/qwummpaoaq/index.m3u8$LR•IPV4•14『线路7』 +http://gfr.x3322.net:9901/tsfile/live/1088_1.m3u8$LR•IPV4•14『线路7』 #EXTINF:-1 tvg-id="湖北卫视" tvg-name="湖北卫视" group-title="卫视",湖北卫视 -https://iptv.catvod.com/catvod.php?id=hubws$LR•IPV4•14『线路8』 +http://api.kkitv.itv888.cn:8080/hls/qwummpaoaq/index.m3u8$LR•IPV4•14『线路8』 #EXTINF:-1 tvg-id="湖北卫视" tvg-name="湖北卫视" group-title="卫视",湖北卫视 -https://httop.top/ysp-湖北卫视$LR•IPV4•14『线路9』 +https://iptv.catvod.com/catvod.php?id=hubws$LR•IPV4•14『线路9』 #EXTINF:-1 tvg-id="湖北卫视" tvg-name="湖北卫视" group-title="卫视",湖北卫视 -http://iptv.huuc.edu.cn/hls/hbhd.m3u8$LR•IPV4•14『线路10』 +https://httop.top/ysp-湖北卫视$LR•IPV4•14『线路10』 #EXTINF:-1 tvg-id="湖北卫视" tvg-name="湖北卫视" group-title="卫视",湖北卫视 -http://mg.hmysapp.cn:177/ckmg/zb.php?id=hubws$LR•IPV4•14『线路11』 +http://iptv.huuc.edu.cn/hls/hbhd.m3u8$LR•IPV4•14『线路11』 #EXTINF:-1 tvg-id="湖北卫视" tvg-name="湖北卫视" group-title="卫视",湖北卫视 -http://153.0.171.163:9901/tsfile/live/0132_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•14『线路12』 +http://mg.hmysapp.cn:177/ckmg/zb.php?id=hubws$LR•IPV4•14『线路12』 #EXTINF:-1 tvg-id="湖北卫视" tvg-name="湖北卫视" group-title="卫视",湖北卫视 -http://www.745612.xyz:7788/rtp/235.254.198.72:1564$LR•IPV4•14『线路13』 +http://153.0.171.163:9901/tsfile/live/0132_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•14『线路13』 #EXTINF:-1 tvg-id="湖北卫视" tvg-name="湖北卫视" group-title="卫视",湖北卫视 -http://118.81.195.79:9003/hls/32/index.m3u8$LR•IPV4•14『线路14』 +http://www.745612.xyz:7788/rtp/235.254.198.72:1564$LR•IPV4•14『线路14』 #EXTINF:-1 tvg-id="江西卫视" tvg-name="江西卫视" group-title="卫视",江西卫视 -https://jsp-tv-live.jxtvcn.com.cn/live-jsp/tv_jxtv6.m3u8?t=1784004704&token=67a59c29-de6e-4407-90c8-39f7e099b3db&d=0a7a8c487c454bc7bb02a60298283c5e$LR•IPV4•16『线路1』 +http://t.061899.xyz/tl/tl.php?id=jxws$LR•IPV4•15『线路1』 #EXTINF:-1 tvg-id="江西卫视" tvg-name="江西卫视" group-title="卫视",江西卫视 -http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226956/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7Ei6ZIpVizXlewg-YfGvH8dA%7EtP4-l0lmSfjwLWEfK_el1vH_mv-s1zo4AQJwdedaVwG9xkuFTDg8J26cwOrNJzn20BErrHdLhuZ9EzLUCD3PMW-OMx4MGteHV2vLeW6BqoY%2CEND$LR•IPV6•16『线路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•15『线路2』 #EXTINF:-1 tvg-id="江西卫视" tvg-name="江西卫视" group-title="卫视",江西卫视 -http://101.66.199.247:9901/tsfile/live/0138_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•16『线路3』 +http://101.66.199.247:9901/tsfile/live/0138_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•15『线路3』 #EXTINF:-1 tvg-id="江西卫视" tvg-name="江西卫视" group-title="卫视",江西卫视 -http://112.123.243.37:50085/tsfile/live/0132_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•16『线路4』 +http://112.123.243.37:50085/tsfile/live/0132_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•15『线路4』 #EXTINF:-1 tvg-id="江西卫视" tvg-name="江西卫视" group-title="卫视",江西卫视 -http://124.228.160.210:9901/tsfile/live/0138_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•16『线路5』 +http://124.228.160.210:9901/tsfile/live/0138_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•15『线路5』 #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•16『线路6』 +http://153.0.171.163:9901/tsfile/live/0138_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•15『线路6』 #EXTINF:-1 tvg-id="江西卫视" tvg-name="江西卫视" group-title="卫视",江西卫视 -http://112.27.235.94:8000/hls/44/index.m3u8$LR•IPV4•16『线路7』 +http://39.134.115.163:8080/PLTV/88888910/224/3221225705/index.m3u8$LR•IPV4•15『线路7』 #EXTINF:-1 tvg-id="江西卫视" tvg-name="江西卫视" group-title="卫视",江西卫视 -http://38.75.136.137:98/gslb/dsdqpub/jxwshd.m3u8?auth=testpub$LR•IPV4•16『线路8』 +http://38.75.136.137:98/gslb/dsdqpub/jxwshd.m3u8?auth=testpub$LR•IPV4•15『线路8』 #EXTINF:-1 tvg-id="江西卫视" tvg-name="江西卫视" group-title="卫视",江西卫视 -http://23.237.228.134/live8/jiangxi.m3u8$LR•IPV4•16『线路9』 +http://23.237.228.134/live8/jiangxi.m3u8$LR•IPV4•15『线路9』 #EXTINF:-1 tvg-id="江西卫视" tvg-name="江西卫视" group-title="卫视",江西卫视 -http://43.251.226.89:8080/play/43.m3u8$LR•IPV4•16『线路10』 +http://43.251.226.89:8080/play/43.m3u8$LR•IPV4•15『线路10』 #EXTINF:-1 tvg-id="江西卫视" tvg-name="江西卫视" group-title="卫视",江西卫视 -http://api.kkitv.itv888.cn:8080/hls/pv0np60bpin/index.m3u8$LR•IPV4•16『线路11』 +http://api.kkitv.itv888.cn:8080/hls/pv0np60bpin/index.m3u8$LR•IPV4•15『线路11』 #EXTINF:-1 tvg-id="江西卫视" tvg-name="江西卫视" group-title="卫视",江西卫视 -https://iptv.catvod.com/catvod.php?id=jxws$LR•IPV4•16『线路12』 +https://iptv.catvod.com/catvod.php?id=jxws$LR•IPV4•15『线路12』 #EXTINF:-1 tvg-id="江西卫视" tvg-name="江西卫视" group-title="卫视",江西卫视 -https://httop.top/ysp-江西卫视$LR•IPV4•16『线路13』 +https://httop.top/ysp-江西卫视$LR•IPV4•15『线路13』 #EXTINF:-1 tvg-id="江西卫视" tvg-name="江西卫视" group-title="卫视",江西卫视 -http://iptv.huuc.edu.cn/hls/jxhd.m3u8$LR•IPV4•16『线路14』 +http://iptv.huuc.edu.cn/hls/jxhd.m3u8$LR•IPV4•15『线路14』 #EXTINF:-1 tvg-id="江西卫视" tvg-name="江西卫视" group-title="卫视",江西卫视 -http://mg.hmysapp.cn:177/ckmg/zb.php?id=jxws$LR•IPV4•16『线路15』 -#EXTINF:-1 tvg-id="江西卫视" tvg-name="江西卫视" group-title="卫视",江西卫视 -http://39.134.115.163:8080/PLTV/88888910/224/3221225705/index.m3u8$LR•IPV4•16『线路16』 +http://mg.hmysapp.cn:177/ckmg/zb.php?id=jxws$LR•IPV4•15『线路15』 #EXTINF:-1 tvg-id="吉林卫视" tvg-name="吉林卫视" group-title="卫视",吉林卫视 -http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221227015/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7EW5-3AVdwD5KlUpuA4mz7Cg%7EtP4-l0lmSfjwLWEfK_el1vH_mv-s1zo4AQJwdedaVwG9xkuFTDg8J26cwOrNJzn20BErrHdLhuZ9EzLUCD3PMW-OMx4MGteHV2vLeW6BqoY%2CEND$LR•IPV6•17『线路1』 +http://t.061899.xyz/tl/tl.php?id=jlws$LR•IPV4•17『线路1』 #EXTINF:-1 tvg-id="吉林卫视" tvg-name="吉林卫视" group-title="卫视",吉林卫视 -http://204.12.221.218:8181/3m1080p/jlws.m3u8$LR•IPV4•17『线路2』 +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•17『线路2』 #EXTINF:-1 tvg-id="吉林卫视" tvg-name="吉林卫视" group-title="卫视",吉林卫视 -http://38.75.136.137:98/gslb/dsdqpub/jlwshd.m3u8?auth=testpub$LR•IPV4•17『线路3』 +http://204.12.221.218:8181/3m1080p/jlws.m3u8$LR•IPV4•17『线路3』 #EXTINF:-1 tvg-id="吉林卫视" tvg-name="吉林卫视" group-title="卫视",吉林卫视 -http://112.123.243.37:50085/tsfile/live/0116_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•17『线路4』 +http://38.75.136.137:98/gslb/dsdqpub/jlwshd.m3u8?auth=testpub$LR•IPV4•17『线路4』 #EXTINF:-1 tvg-id="吉林卫视" tvg-name="吉林卫视" group-title="卫视",吉林卫视 -http://101.66.199.247:9901/tsfile/live/0116_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•17『线路5』 +http://112.123.243.37:50085/tsfile/live/0116_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•17『线路5』 #EXTINF:-1 tvg-id="吉林卫视" tvg-name="吉林卫视" group-title="卫视",吉林卫视 -http://101.66.194.82:9901/tsfile/live/0116_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•17『线路6』 +http://101.66.199.247:9901/tsfile/live/0116_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•17『线路6』 #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•17『线路7』 +http://101.66.194.82:9901/tsfile/live/0116_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•17『线路7』 #EXTINF:-1 tvg-id="吉林卫视" tvg-name="吉林卫视" group-title="卫视",吉林卫视 -http://101.66.194.63:9901/tsfile/live/0116_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•17『线路8』 +http://36.136.38.87:9901/tsfile/live/0116_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•17『线路8』 #EXTINF:-1 tvg-id="吉林卫视" tvg-name="吉林卫视" group-title="卫视",吉林卫视 -http://101.66.195.138:9901/tsfile/live/0116_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•17『线路9』 +http://101.66.194.63:9901/tsfile/live/0116_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•17『线路9』 #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•17『线路10』 +http://101.66.195.138:9901/tsfile/live/0116_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•17『线路10』 #EXTINF:-1 tvg-id="吉林卫视" tvg-name="吉林卫视" group-title="卫视",吉林卫视 -http://123.130.84.106:8154/tsfile/live/0116_1.m3u8$LR•IPV4•17『线路11』 +http://153.0.171.163:9901/tsfile/live/0116_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•17『线路11』 #EXTINF:-1 tvg-id="吉林卫视" tvg-name="吉林卫视" group-title="卫视",吉林卫视 -http://23.237.228.134/live8/jilin.m3u8$LR•IPV4•17『线路12』 +http://118.81.195.79:9003/hls/34/index.m3u8$LR•IPV4•17『线路12』 #EXTINF:-1 tvg-id="吉林卫视" tvg-name="吉林卫视" group-title="卫视",吉林卫视 -http://43.251.226.89:8080/play/47.m3u8$LR•IPV4•17『线路13』 +http://23.237.228.134/live8/jilin.m3u8$LR•IPV4•17『线路13』 #EXTINF:-1 tvg-id="吉林卫视" tvg-name="吉林卫视" group-title="卫视",吉林卫视 -http://api.kkitv.itv888.cn:8080/hls/b6dl8yuvu/index.m3u$LR•IPV4•17『线路14』 +http://43.251.226.89:8080/play/47.m3u8$LR•IPV4•17『线路14』 #EXTINF:-1 tvg-id="吉林卫视" tvg-name="吉林卫视" group-title="卫视",吉林卫视 -https://iptv.catvod.com/catvod.php?id=jlws$LR•IPV4•17『线路15』 +http://api.kkitv.itv888.cn:8080/hls/b6dl8yuvu/index.m3u$LR•IPV4•17『线路15』 #EXTINF:-1 tvg-id="吉林卫视" tvg-name="吉林卫视" group-title="卫视",吉林卫视 -https://httop.top/ysp-吉林卫视$LR•IPV4•17『线路16』 +https://iptv.catvod.com/catvod.php?id=jlws$LR•IPV4•17『线路16』 #EXTINF:-1 tvg-id="吉林卫视" tvg-name="吉林卫视" group-title="卫视",吉林卫视 -http://118.81.195.79:9003/hls/34/index.m3u8$LR•IPV4•17『线路17』 +https://httop.top/ysp-吉林卫视$LR•IPV4•17『线路17』 #EXTINF:-1 tvg-id="内蒙古卫视" tvg-name="内蒙古卫视" group-title="卫视",内蒙古卫视 -http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221227018/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7ErN_hoRDwApMKnJqiNHvn9w%7EtP4-l0lmSfjwLWEfK_el1vH_mv-s1zo4AQJwdedaVwG9xkuFTDg8J26cwOrNJzn20BErrHdLhuZ9EzLUCD3PMW-OMx4MGteHV2vLeW6BqoY%2CEND$LR•IPV6•14『线路1』 +http://t.061899.xyz/tl/tl.php?id=nmws$LR•IPV4•14『线路1』 #EXTINF:-1 tvg-id="内蒙古卫视" tvg-name="内蒙古卫视" group-title="卫视",内蒙古卫视 -http://198.204.228.26/live/nmgws.m3u8$LR•IPV4•14『线路2』 +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•14『线路2』 #EXTINF:-1 tvg-id="内蒙古卫视" tvg-name="内蒙古卫视" group-title="卫视",内蒙古卫视 -http://192.151.150.154/live/nmgws.m3u8$LR•IPV4•14『线路3』 +http://198.204.228.26/live/nmgws.m3u8$LR•IPV4•14『线路3』 #EXTINF:-1 tvg-id="内蒙古卫视" tvg-name="内蒙古卫视" group-title="卫视",内蒙古卫视 -http://112.123.243.37:50085/tsfile/live/0118_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•14『线路4』 +http://192.151.150.154/live/nmgws.m3u8$LR•IPV4•14『线路4』 #EXTINF:-1 tvg-id="内蒙古卫视" tvg-name="内蒙古卫视" group-title="卫视",内蒙古卫视 -http://59.39.89.130:60901/tsfile/live/0125_21.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•14『线路5』 +http://112.123.243.37:50085/tsfile/live/0118_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•14『线路5』 #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•14『线路6』 +http://59.39.89.130:60901/tsfile/live/0125_21.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•14『线路6』 #EXTINF:-1 tvg-id="内蒙古卫视" tvg-name="内蒙古卫视" group-title="卫视",内蒙古卫视 -http://112.27.235.94:8000/hls/49/index.m3u8$LR•IPV4•14『线路7』 +http://153.0.171.163:9901/tsfile/live/0109_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•14『线路7』 #EXTINF:-1 tvg-id="内蒙古卫视" tvg-name="内蒙古卫视" group-title="卫视",内蒙古卫视 -http://23.237.228.134/live8/neimenggu.m3u8$LR•IPV4•14『线路8』 +http://39.134.115.163:8080/PLTV/88888910/224/3221225667/index.m3u8$LR•IPV4•14『线路8』 #EXTINF:-1 tvg-id="内蒙古卫视" tvg-name="内蒙古卫视" group-title="卫视",内蒙古卫视 -https://iptv.catvod.com/catvod.php?id=nmws$LR•IPV4•14『线路9』 +http://117.169.120.140:8080/live/neimenggustv/.m3u8$LR•IPV4•14『线路9』 #EXTINF:-1 tvg-id="内蒙古卫视" tvg-name="内蒙古卫视" group-title="卫视",内蒙古卫视 -https://httop.top/ysp-内蒙古卫视$LR•IPV4•14『线路10』 +http://183.207.248.71/gitv/live1/G_NEIMENGGU/G_NEIMENGGU$LR•IPV4•14『线路10』 #EXTINF:-1 tvg-id="内蒙古卫视" tvg-name="内蒙古卫视" group-title="卫视",内蒙古卫视 -http://39.134.115.163:8080/PLTV/88888910/224/3221225667/index.m3u8$LR•IPV4•14『线路11』 +http://223.110.245.173/PLTV/4/224/3221225836/index.m3u8$LR•IPV4•14『线路11』 #EXTINF:-1 tvg-id="内蒙古卫视" tvg-name="内蒙古卫视" group-title="卫视",内蒙古卫视 -http://117.169.120.140:8080/live/neimenggustv/.m3u8$LR•IPV4•14『线路12』 +http://23.237.228.134/live8/neimenggu.m3u8$LR•IPV4•14『线路12』 #EXTINF:-1 tvg-id="内蒙古卫视" tvg-name="内蒙古卫视" group-title="卫视",内蒙古卫视 -http://183.207.248.71/gitv/live1/G_NEIMENGGU/G_NEIMENGGU$LR•IPV4•14『线路13』 +https://iptv.catvod.com/catvod.php?id=nmws$LR•IPV4•14『线路13』 #EXTINF:-1 tvg-id="内蒙古卫视" tvg-name="内蒙古卫视" group-title="卫视",内蒙古卫视 -http://223.110.245.173/PLTV/4/224/3221225836/index.m3u8$LR•IPV4•14『线路14』 +https://httop.top/ysp-内蒙古卫视$LR•IPV4•14『线路14』 #EXTINF:-1 tvg-id="辽宁卫视" tvg-name="辽宁卫视" group-title="卫视",辽宁卫视 -http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226966/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7E6qJH8Fd-zgCGx3P-Ce86cA%7EtP4-l0lmSfjwLWEfK_el1vH_mv-s1zo4AQJwdedaVwG9xkuFTDg8J26cwOrNJzn20BErrHdLhuZ9EzLUCD3PMW-OMx4MGteHV2vLeW6BqoY%2CEND$LR•IPV6•16『线路1』 +http://t.061899.xyz/tl/tl.php?id=lnws$LR•IPV4•16『线路1』 #EXTINF:-1 tvg-id="辽宁卫视" tvg-name="辽宁卫视" group-title="卫视",辽宁卫视 -http://101.66.195.138:9901/tsfile/live/0121_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•16『线路2』 +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•16『线路2』 #EXTINF:-1 tvg-id="辽宁卫视" tvg-name="辽宁卫视" group-title="卫视",辽宁卫视 -http://107.150.60.122/live/lnwshd.m3u8$LR•IPV4•16『线路3』 +http://101.66.195.138:9901/tsfile/live/0121_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•16『线路3』 #EXTINF:-1 tvg-id="辽宁卫视" tvg-name="辽宁卫视" group-title="卫视",辽宁卫视 -http://204.12.221.218:8181/3m1080p/lnws.m3u8$LR•IPV4•16『线路4』 +http://107.150.60.122/live/lnwshd.m3u8$LR•IPV4•16『线路4』 #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•16『线路5』 +http://204.12.221.218:8181/3m1080p/lnws.m3u8$LR•IPV4•16『线路5』 #EXTINF:-1 tvg-id="辽宁卫视" tvg-name="辽宁卫视" group-title="卫视",辽宁卫视 -http://112.27.235.94:8000/hls/47/index.m3u8$LR•IPV4•16『线路6』 +http://153.0.171.163:9901/tsfile/live/0121_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•16『线路6』 #EXTINF:-1 tvg-id="辽宁卫视" tvg-name="辽宁卫视" group-title="卫视",辽宁卫视 -http://38.75.136.137:98/gslb/dsdqpub/lnwshd.m3u8?auth=testpub$LR•IPV4•16『线路7』 +http://39.134.39.37/PLTV/88888888/224/3221226209/index.m3u8$LR•IPV4•16『线路7』 #EXTINF:-1 tvg-id="辽宁卫视" tvg-name="辽宁卫视" group-title="卫视",辽宁卫视 -https://hlsbkmgsplive.miguvideo.com/migu/kailu/lnwshd265/54/20200407/01.m3u8?&HlsSubType=&encrypt=$LR•IPV4•16『线路8』 +http://38.75.136.137:98/gslb/dsdqpub/lnwshd.m3u8?auth=testpub$LR•IPV4•16『线路8』 #EXTINF:-1 tvg-id="辽宁卫视" tvg-name="辽宁卫视" group-title="卫视",辽宁卫视 -http://23.237.228.134/live8/liaoning.m3u8$LR•IPV4•16『线路9』 +https://hlsbkmgsplive.miguvideo.com/migu/kailu/lnwshd265/54/20200407/01.m3u8?&HlsSubType=&encrypt=$LR•IPV4•16『线路9』 #EXTINF:-1 tvg-id="辽宁卫视" tvg-name="辽宁卫视" group-title="卫视",辽宁卫视 -http://43.251.226.89:8080/play/41.m3u8$LR•IPV4•16『线路10』 +http://23.237.228.134/live8/liaoning.m3u8$LR•IPV4•16『线路10』 #EXTINF:-1 tvg-id="辽宁卫视" tvg-name="辽宁卫视" group-title="卫视",辽宁卫视 -http://gfr.x3322.net:9901/tsfile/live/1097_1.m3u8$LR•IPV4•16『线路11』 +http://43.251.226.89:8080/play/41.m3u8$LR•IPV4•16『线路11』 #EXTINF:-1 tvg-id="辽宁卫视" tvg-name="辽宁卫视" group-title="卫视",辽宁卫视 -http://api.kkitv.itv888.cn:8080/hls/iibq0absdjr/index.m3u8$LR•IPV4•16『线路12』 +http://gfr.x3322.net:9901/tsfile/live/1097_1.m3u8$LR•IPV4•16『线路12』 #EXTINF:-1 tvg-id="辽宁卫视" tvg-name="辽宁卫视" group-title="卫视",辽宁卫视 -https://iptv.catvod.com/catvod.php?id=lnws$LR•IPV4•16『线路13』 +http://api.kkitv.itv888.cn:8080/hls/iibq0absdjr/index.m3u8$LR•IPV4•16『线路13』 #EXTINF:-1 tvg-id="辽宁卫视" tvg-name="辽宁卫视" group-title="卫视",辽宁卫视 -https://httop.top/ysp-辽宁卫视$LR•IPV4•16『线路14』 +https://iptv.catvod.com/catvod.php?id=lnws$LR•IPV4•16『线路14』 #EXTINF:-1 tvg-id="辽宁卫视" tvg-name="辽宁卫视" group-title="卫视",辽宁卫视 -http://iptv.huuc.edu.cn/hls/lnhd.m3u8$LR•IPV4•16『线路15』 +https://httop.top/ysp-辽宁卫视$LR•IPV4•16『线路15』 #EXTINF:-1 tvg-id="辽宁卫视" tvg-name="辽宁卫视" group-title="卫视",辽宁卫视 -http://39.134.39.37/PLTV/88888888/224/3221226209/index.m3u8$LR•IPV4•16『线路16』 +http://iptv.huuc.edu.cn/hls/lnhd.m3u8$LR•IPV4•16『线路16』 #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•10『线路1』 +http://t.061899.xyz/tl/tl.php?id=nxws$LR•IPV4•10『线路1』 #EXTINF:-1 tvg-id="宁夏卫视" tvg-name="宁夏卫视" group-title="卫视",宁夏卫视 -http://107.150.60.122/live/nxws.m3u8$LR•IPV4•10『线路2』 +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•10『线路2』 #EXTINF:-1 tvg-id="宁夏卫视" tvg-name="宁夏卫视" group-title="卫视",宁夏卫视 -http://198.204.228.26/live/nxws.m3u8$LR•IPV4•10『线路3』 +http://107.150.60.122/live/nxws.m3u8$LR•IPV4•10『线路3』 #EXTINF:-1 tvg-id="宁夏卫视" tvg-name="宁夏卫视" group-title="卫视",宁夏卫视 -http://112.123.243.37:50085/tsfile/live/0125_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•10『线路4』 +http://198.204.228.26/live/nxws.m3u8$LR•IPV4•10『线路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•10『线路5』 +http://112.123.243.37:50085/tsfile/live/0125_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•10『线路5』 #EXTINF:-1 tvg-id="宁夏卫视" tvg-name="宁夏卫视" group-title="卫视",宁夏卫视 -http://120.76.248.139/live/bfgd/4200000118.m3u8$LR•IPV4•10『线路6』 +http://153.0.171.163:9901/tsfile/live/0112_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•10『线路6』 #EXTINF:-1 tvg-id="宁夏卫视" tvg-name="宁夏卫视" group-title="卫视",宁夏卫视 -http://43.251.226.89:8080/play/54.m3u8$LR•IPV4•10『线路7』 +http://39.134.115.163:8080/PLTV/88888910/224/3221225726/index.m3u8$LR•IPV4•10『线路7』 #EXTINF:-1 tvg-id="宁夏卫视" tvg-name="宁夏卫视" group-title="卫视",宁夏卫视 -https://iptv.catvod.com/catvod.php?id=nxws$LR•IPV4•10『线路8』 +http://43.251.226.89:8080/play/54.m3u8$LR•IPV4•10『线路8』 #EXTINF:-1 tvg-id="宁夏卫视" tvg-name="宁夏卫视" group-title="卫视",宁夏卫视 -https://httop.top/ysp-宁夏卫视$LR•IPV4•10『线路9』 +https://iptv.catvod.com/catvod.php?id=nxws$LR•IPV4•10『线路9』 #EXTINF:-1 tvg-id="宁夏卫视" tvg-name="宁夏卫视" group-title="卫视",宁夏卫视 -http://39.134.115.163:8080/PLTV/88888910/224/3221225726/index.m3u8$LR•IPV4•10『线路10』 +https://httop.top/ysp-宁夏卫视$LR•IPV4•10『线路10』 #EXTINF:-1 tvg-id="青海卫视" tvg-name="青海卫视" group-title="卫视",青海卫视 -http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221227017/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7EacviHy_ucMT27Ymf2iLtZA%7EtP4-l0lmSfjwLWEfK_el1vH_mv-s1zo4AQJwdedaVwG9xkuFTDg8J26cwOrNJzn20BErrHdLhuZ9EzLUCD3PMW-OMx4MGteHV2vLeW6BqoY%2CEND$LR•IPV6•10『线路1』 +http://t.061899.xyz/tl/tl.php?id=qhws$LR•IPV4•10『线路1』 #EXTINF:-1 tvg-id="青海卫视" tvg-name="青海卫视" group-title="卫视",青海卫视 -http://63.141.230.178:82/gslb/zbdq5.m3u8?id=qhws$LR•IPV4•10『线路2』 +http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221227017/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7EacviHy_ucMT27Ymf2iLtZA%7EtP4-l0lmSfjwLWEfK_el1vH_mv-s1zo4AQJwdedaVwG9xkuFTDg8J26cwOrNJzn20BErrHdLhuZ9EzLUCD3PMW-OMx4MGteHV2vLeW6BqoY%2CEND$LR•IPV6•10『线路2』 #EXTINF:-1 tvg-id="青海卫视" tvg-name="青海卫视" group-title="卫视",青海卫视 -http://107.150.60.122/live/qhws.m3u8$LR•IPV4•10『线路3』 +http://63.141.230.178:82/gslb/zbdq5.m3u8?id=qhws$LR•IPV4•10『线路3』 #EXTINF:-1 tvg-id="青海卫视" tvg-name="青海卫视" group-title="卫视",青海卫视 -http://153.0.171.163:9901/tsfile/live/0140_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•10『线路4』 +http://107.150.60.122/live/qhws.m3u8$LR•IPV4•10『线路4』 #EXTINF:-1 tvg-id="青海卫视" tvg-name="青海卫视" group-title="卫视",青海卫视 -http://123.130.84.106:8154/tsfile/live/0140_1.m3u8$LR•IPV4•10『线路5』 +http://153.0.171.163:9901/tsfile/live/0140_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•10『线路5』 #EXTINF:-1 tvg-id="青海卫视" tvg-name="青海卫视" group-title="卫视",青海卫视 -http://23.237.228.134/live8/qinghai.m3u8$LR•IPV4•10『线路6』 +http://live.geermurmt.com/qhws/sd/live.m3u8$LR•IPV4•10『线路6』 #EXTINF:-1 tvg-id="青海卫视" tvg-name="青海卫视" group-title="卫视",青海卫视 -http://43.251.226.89:8080/play/48.m3u8$LR•IPV4•10『线路7』 +http://23.237.228.134/live8/qinghai.m3u8$LR•IPV4•10『线路7』 #EXTINF:-1 tvg-id="青海卫视" tvg-name="青海卫视" group-title="卫视",青海卫视 -https://iptv.catvod.com/catvod.php?id=qhws$LR•IPV4•10『线路8』 +http://43.251.226.89:8080/play/48.m3u8$LR•IPV4•10『线路8』 #EXTINF:-1 tvg-id="青海卫视" tvg-name="青海卫视" group-title="卫视",青海卫视 -https://httop.top/ysp-青海卫视$LR•IPV4•10『线路9』 +https://iptv.catvod.com/catvod.php?id=qhws$LR•IPV4•10『线路9』 #EXTINF:-1 tvg-id="青海卫视" tvg-name="青海卫视" group-title="卫视",青海卫视 -http://live.geermurmt.com/qhws/sd/live.m3u8$LR•IPV4•10『线路10』 +https://httop.top/ysp-青海卫视$LR•IPV4•10『线路10』 #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•17『线路1』 +http://t.061899.xyz/tl/tl.php?id=sdws$LR•IPV4•17『线路1』 #EXTINF:-1 tvg-id="山东卫视" tvg-name="山东卫视" group-title="卫视",山东卫视 -http://207.56.13.146:81/cdnlive/sdws.m3u8$LR•IPV4•17『线路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•17『线路2』 #EXTINF:-1 tvg-id="山东卫视" tvg-name="山东卫视" group-title="卫视",山东卫视 -http://63.141.230.178:82/gslb/zbdq5.m3u8?id=sdwshd$LR•IPV4•17『线路3』 +http://207.56.13.146:81/cdnlive/sdws.m3u8$LR•IPV4•17『线路3』 #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•17『线路4』 +http://63.141.230.178:82/gslb/zbdq5.m3u8?id=sdwshd$LR•IPV4•17『线路4』 #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•17『线路5』 +http://120.198.95.220:9901/tsfile/live/1063_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•17『线路5』 #EXTINF:-1 tvg-id="山东卫视" tvg-name="山东卫视" group-title="卫视",山东卫视 -http://112.27.235.94:8000/hls/34/index.m3u8$LR•IPV4•17『线路6』 +http://153.0.171.163:9901/tsfile/live/0131_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•17『线路6』 #EXTINF:-1 tvg-id="山东卫视" tvg-name="山东卫视" group-title="卫视",山东卫视 -http://38.75.136.137:98/gslb/dsdqpub/sdwshd.m3u8?auth=testpub$LR•IPV4•17『线路7』 +http://125.210.152.18:9090/live/SDWSHD_H265.m3u8$LR•IPV4•17『线路7』 #EXTINF:-1 tvg-id="山东卫视" tvg-name="山东卫视" group-title="卫视",山东卫视 -https://hlsbkmgsplive.miguvideo.com/wd_r4/yg/shandongwshd/3000/01.m3u8?&HlsSubType=&encrypt=$LR•IPV4•17『线路8』 +http://39.134.115.163:8080/PLTV/88888910/224/3221225697/index.m3u8$LR•IPV4•17『线路8』 #EXTINF:-1 tvg-id="山东卫视" tvg-name="山东卫视" group-title="卫视",山东卫视 -https://hlsbkmgsplive.miguvideo.com/wd-shandonghd-1200/01.m3u8?&HlsSubType=&encrypt=$LR•IPV4•17『线路9』 +http://38.75.136.137:98/gslb/dsdqpub/sdwshd.m3u8?auth=testpub$LR•IPV4•17『线路9』 #EXTINF:-1 tvg-id="山东卫视" tvg-name="山东卫视" group-title="卫视",山东卫视 -http://23.237.228.134/live8/shandong.m3u8$LR•IPV4•17『线路10』 +https://hlsbkmgsplive.miguvideo.com/wd_r4/yg/shandongwshd/3000/01.m3u8?&HlsSubType=&encrypt=$LR•IPV4•17『线路10』 #EXTINF:-1 tvg-id="山东卫视" tvg-name="山东卫视" group-title="卫视",山东卫视 -http://gfr.x3322.net:9901/tsfile/live/1098_1.m3u8$LR•IPV4•17『线路11』 +https://hlsbkmgsplive.miguvideo.com/wd-shandonghd-1200/01.m3u8?&HlsSubType=&encrypt=$LR•IPV4•17『线路11』 #EXTINF:-1 tvg-id="山东卫视" tvg-name="山东卫视" group-title="卫视",山东卫视 -http://api.kkitv.itv888.cn:8080/hls/6gcdai13om5/index.m3u8$LR•IPV4•17『线路12』 +http://23.237.228.134/live8/shandong.m3u8$LR•IPV4•17『线路12』 #EXTINF:-1 tvg-id="山东卫视" tvg-name="山东卫视" group-title="卫视",山东卫视 -https://iptv.catvod.com/catvod.php?id=sdws$LR•IPV4•17『线路13』 +http://gfr.x3322.net:9901/tsfile/live/1098_1.m3u8$LR•IPV4•17『线路13』 #EXTINF:-1 tvg-id="山东卫视" tvg-name="山东卫视" group-title="卫视",山东卫视 -https://httop.top/ysp-山东卫视$LR•IPV4•17『线路14』 +http://api.kkitv.itv888.cn:8080/hls/6gcdai13om5/index.m3u8$LR•IPV4•17『线路14』 #EXTINF:-1 tvg-id="山东卫视" tvg-name="山东卫视" group-title="卫视",山东卫视 -http://iptv.huuc.edu.cn/hls/sdhd.m3u8$LR•IPV4•17『线路15』 +https://iptv.catvod.com/catvod.php?id=sdws$LR•IPV4•17『线路15』 #EXTINF:-1 tvg-id="山东卫视" tvg-name="山东卫视" group-title="卫视",山东卫视 -http://125.210.152.18:9090/live/SDWSHD_H265.m3u8$LR•IPV4•17『线路16』 +https://httop.top/ysp-山东卫视$LR•IPV4•17『线路16』 #EXTINF:-1 tvg-id="山东卫视" tvg-name="山东卫视" group-title="卫视",山东卫视 -http://39.134.115.163:8080/PLTV/88888910/224/3221225697/index.m3u8$LR•IPV4•17『线路17』 +http://iptv.huuc.edu.cn/hls/sdhd.m3u8$LR•IPV4•17『线路17』 #EXTINF:-1 tvg-id="天津卫视" tvg-name="天津卫视" group-title="卫视",天津卫视 -https://piccpndks.v.kcdnvip.com/audio/tianjin_2/index.m3u8$LR•IPV4•18『线路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•18『线路1』 #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•18『线路2』 +http://204.12.221.218:8181/3m1080p/tjws.m3u8$LR•IPV4•18『线路2』 #EXTINF:-1 tvg-id="天津卫视" tvg-name="天津卫视" group-title="卫视",天津卫视 -http://204.12.221.218:8181/3m1080p/tjws.m3u8$LR•IPV4•18『线路3』 +http://107.150.60.122/live/tjwshd.m3u8$LR•IPV4•18『线路3』 #EXTINF:-1 tvg-id="天津卫视" tvg-name="天津卫视" group-title="卫视",天津卫视 -http://107.150.60.122/live/tjwshd.m3u8$LR•IPV4•18『线路4』 +http://192.151.150.154/live/tjwshd.m3u8$LR•IPV4•18『线路4』 #EXTINF:-1 tvg-id="天津卫视" tvg-name="天津卫视" group-title="卫视",天津卫视 -http://192.151.150.154/live/tjwshd.m3u8$LR•IPV4•18『线路5』 +http://38.75.136.137:98/gslb/dsdqpub/tjwshd.m3u8?auth=testpub$LR•IPV4•18『线路5』 #EXTINF:-1 tvg-id="天津卫视" tvg-name="天津卫视" group-title="卫视",天津卫视 -http://38.75.136.137:98/gslb/dsdqpub/tjwshd.m3u8?auth=testpub$LR•IPV4•18『线路6』 +http://63.141.230.178:82/gslb/zbdq5.m3u8?id=tjwshd$LR•IPV4•18『线路6』 #EXTINF:-1 tvg-id="天津卫视" tvg-name="天津卫视" group-title="卫视",天津卫视 -http://63.141.230.178:82/gslb/zbdq5.m3u8?id=tjwshd$LR•IPV4•18『线路7』 +http://207.56.13.146:81/cdnlive/tjws.m3u8$LR•IPV4•18『线路7』 #EXTINF:-1 tvg-id="天津卫视" tvg-name="天津卫视" group-title="卫视",天津卫视 -http://207.56.13.146:81/cdnlive/tjws.m3u8$LR•IPV4•18『线路8』 +http://120.198.95.220:9901/tsfile/live/1067_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•18『线路8』 #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•18『线路9』 +http://112.27.235.94:8000/hls/42/index.m3u8$LR•IPV4•18『线路9』 #EXTINF:-1 tvg-id="天津卫视" tvg-name="天津卫视" group-title="卫视",天津卫视 -http://112.27.235.94:8000/hls/42/index.m3u8$LR•IPV4•18『线路10』 +https://piccpndks.v.kcdnvip.com/audio/tianjin_2/index.m3u8$LR•IPV4•18『线路10』 #EXTINF:-1 tvg-id="天津卫视" tvg-name="天津卫视" group-title="卫视",天津卫视 -http://23.237.228.134/live8/tianjing.m3u8$LR•IPV4•18『线路11』 +http://39.134.115.163:8080/PLTV/88888910/224/3221225698/index.m3u8$LR•IPV4•18『线路11』 #EXTINF:-1 tvg-id="天津卫视" tvg-name="天津卫视" group-title="卫视",天津卫视 -http://gfr.x3322.net:9901/tsfile/live/1090_1.m3u8$LR•IPV4•18『线路12』 +http://23.237.228.134/live8/tianjing.m3u8$LR•IPV4•18『线路12』 #EXTINF:-1 tvg-id="天津卫视" tvg-name="天津卫视" group-title="卫视",天津卫视 -http://api.kkitv.itv888.cn:8080/hls/z2lkdkrb4w/index.m3u8$LR•IPV4•18『线路13』 +http://gfr.x3322.net:9901/tsfile/live/1090_1.m3u8$LR•IPV4•18『线路13』 #EXTINF:-1 tvg-id="天津卫视" tvg-name="天津卫视" group-title="卫视",天津卫视 -https://iptv.catvod.com/catvod.php?id=tjws$LR•IPV4•18『线路14』 +http://api.kkitv.itv888.cn:8080/hls/z2lkdkrb4w/index.m3u8$LR•IPV4•18『线路14』 #EXTINF:-1 tvg-id="天津卫视" tvg-name="天津卫视" group-title="卫视",天津卫视 -https://httop.top/ysp-天津卫视$LR•IPV4•18『线路15』 +https://iptv.catvod.com/catvod.php?id=tjws$LR•IPV4•18『线路15』 #EXTINF:-1 tvg-id="天津卫视" tvg-name="天津卫视" group-title="卫视",天津卫视 -http://iptv.huuc.edu.cn/hls/tjhd.m3u8$LR•IPV4•18『线路16』 +https://httop.top/ysp-天津卫视$LR•IPV4•18『线路16』 #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•18『线路17』 +http://iptv.huuc.edu.cn/hls/tjhd.m3u8$LR•IPV4•18『线路17』 #EXTINF:-1 tvg-id="天津卫视" tvg-name="天津卫视" group-title="卫视",天津卫视 -http://39.134.115.163:8080/PLTV/88888910/224/3221225698/index.m3u8$LR•IPV4•18『线路18』 +http://153.0.171.163:9901/tsfile/live/0135_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•18『线路18』 #EXTINF:-1 tvg-id="海南卫视" tvg-name="海南卫视" group-title="卫视",海南卫视 -https://livelyws.chinamcache.com/lyws/zb03.m3u8$LR•IPV4•8『线路1』 +http://t.061899.xyz/tl/tl.php?id=hinws$LR•IPV4•8『线路1』 #EXTINF:-1 tvg-id="海南卫视" tvg-name="海南卫视" group-title="卫视",海南卫视 http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221227029/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7EEuBMjt2kLMD8fAO7QYER7Q%7EtP4-l0lmSfjwLWEfK_el1vH_mv-s1zo4AQJwdedaVwG9xkuFTDg8J26cwOrNJzn20BErrHdLhuZ9EzLUCD3PMW-OMx4MGteHV2vLeW6BqoY%2CEND$LR•IPV6•8『线路2』 #EXTINF:-1 tvg-id="海南卫视" tvg-name="海南卫视" group-title="卫视",海南卫视 -http://120.76.248.139/live/bfgd/4200000473.m3u8$LR•IPV4•8『线路3』 +https://livelyws.chinamcache.com/lyws/zb03.m3u8$LR•IPV4•8『线路3』 #EXTINF:-1 tvg-id="海南卫视" tvg-name="海南卫视" group-title="卫视",海南卫视 -http://43.251.226.89:8080/play/50.m3u8$LR•IPV4•8『线路4』 +http://118.81.195.79:9003/hls/28/index.m3u8$LR•IPV4•8『线路4』 #EXTINF:-1 tvg-id="海南卫视" tvg-name="海南卫视" group-title="卫视",海南卫视 -http://api.kkitv.itv888.cn:8080/hls/c1cajhsgba8/index.m3u8$LR•IPV4•8『线路5』 +http://43.251.226.89:8080/play/50.m3u8$LR•IPV4•8『线路5』 #EXTINF:-1 tvg-id="海南卫视" tvg-name="海南卫视" group-title="卫视",海南卫视 -https://iptv.catvod.com/catvod.php?id=hinws$LR•IPV4•8『线路6』 +http://api.kkitv.itv888.cn:8080/hls/c1cajhsgba8/index.m3u8$LR•IPV4•8『线路6』 #EXTINF:-1 tvg-id="海南卫视" tvg-name="海南卫视" group-title="卫视",海南卫视 -https://httop.top/ysp-海南卫视$LR•IPV4•8『线路7』 +https://iptv.catvod.com/catvod.php?id=hinws$LR•IPV4•8『线路7』 #EXTINF:-1 tvg-id="海南卫视" tvg-name="海南卫视" group-title="卫视",海南卫视 -http://118.81.195.79:9003/hls/28/index.m3u8$LR•IPV4•8『线路8』 +https://httop.top/ysp-海南卫视$LR•IPV4•8『线路8』 #EXTINF:-1 tvg-id="新疆卫视" tvg-name="新疆卫视" group-title="卫视",新疆卫视 -http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221227011/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7ExAUu61iVvo_xYbANWJhgXw%7EtP4-l0lmSfjwLWEfK_el1vH_mv-s1zo4AQJwdedaVwG9xkuFTDg8J26cwOrNJzn20BErrHdLhuZ9EzLUCD3PMW-OMx4MGteHV2vLeW6BqoY%2CEND$LR•IPV6•13『线路1』 +http://t.061899.xyz/tl/tl.php?id=xjws$LR•IPV4•14『线路1』 #EXTINF:-1 tvg-id="新疆卫视" tvg-name="新疆卫视" group-title="卫视",新疆卫视 -http://218.84.12.186:8001/hls/main/playlist.m3u8?zxinjd;http://218.84.12.186:8001/hls/main/playlist.m3u8zxinjd$LR•IPV4•13『线路2』 +http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221227011/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7ExAUu61iVvo_xYbANWJhgXw%7EtP4-l0lmSfjwLWEfK_el1vH_mv-s1zo4AQJwdedaVwG9xkuFTDg8J26cwOrNJzn20BErrHdLhuZ9EzLUCD3PMW-OMx4MGteHV2vLeW6BqoY%2CEND$LR•IPV6•14『线路2』 #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•13『线路3』 +http://218.84.12.186:8001/hls/main/playlist.m3u8?zxinjd;http://218.84.12.186:8001/hls/main/playlist.m3u8zxinjd$LR•IPV4•14『线路3』 #EXTINF:-1 tvg-id="新疆卫视" tvg-name="新疆卫视" group-title="卫视",新疆卫视 -http://59.39.89.130:60901/tsfile/live/0125_17.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•13『线路4』 +http://112.123.243.37:50085/tsfile/live/0143_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•14『线路4』 #EXTINF:-1 tvg-id="新疆卫视" tvg-name="新疆卫视" group-title="卫视",新疆卫视 -http://live.wjyanghu.com/live/CH1.m3u8$LR•IPV4•13『线路5』 +http://59.39.89.130:60901/tsfile/live/0125_17.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•14『线路5』 #EXTINF:-1 tvg-id="新疆卫视" tvg-name="新疆卫视" group-title="卫视",新疆卫视 -https://iptv.catvod.com/catvod.php?id=xjws$LR•IPV4•13『线路6』 +http://live.wjyanghu.com/live/CH1.m3u8$LR•IPV4•14『线路6』 #EXTINF:-1 tvg-id="新疆卫视" tvg-name="新疆卫视" group-title="卫视",新疆卫视 -https://httop.top/ysp-新疆卫视$LR•IPV4•13『线路7』 +http://39.134.115.163:8080/PLTV/88888910/224/3221225725/index.m3u8$LR•IPV4•14『线路7』 #EXTINF:-1 tvg-id="新疆卫视" tvg-name="新疆卫视" group-title="卫视",新疆卫视 -http://39.134.115.163:8080/PLTV/88888910/224/3221225725/index.m3u8$LR•IPV4•13『线路8』 +http://183.207.248.71/cntv/live1/xinjiangstv/xinjiangstv$LR•IPV4•14『线路8』 #EXTINF:-1 tvg-id="新疆卫视" tvg-name="新疆卫视" group-title="卫视",新疆卫视 -http://183.207.248.71/cntv/live1/xinjiangstv/xinjiangstv$LR•IPV4•13『线路9』 +http://183.207.248.71/gitv/live1/G_XINJIANG/G_XINJIANG$LR•IPV4•14『线路9』 #EXTINF:-1 tvg-id="新疆卫视" tvg-name="新疆卫视" group-title="卫视",新疆卫视 -http://183.207.248.71/gitv/live1/G_XINJIANG/G_XINJIANG$LR•IPV4•13『线路10』 +http://183.207.249.15/PLTV/3/224/3221225523/index.m3u8$LR•IPV4•14『线路10』 #EXTINF:-1 tvg-id="新疆卫视" tvg-name="新疆卫视" group-title="卫视",新疆卫视 -http://183.207.249.15/PLTV/3/224/3221225523/index.m3u8$LR•IPV4•13『线路11』 +http://223.110.243.136/PLTV/3/224/3221225523/index.m3u8$LR•IPV4•14『线路11』 #EXTINF:-1 tvg-id="新疆卫视" tvg-name="新疆卫视" group-title="卫视",新疆卫视 -http://223.110.243.136/PLTV/3/224/3221225523/index.m3u8$LR•IPV4•13『线路12』 +http://112.25.48.68/live/program/live/xjws/1300000/mnf.m3u8$LR•IPV4•14『线路12』 #EXTINF:-1 tvg-id="新疆卫视" tvg-name="新疆卫视" group-title="卫视",新疆卫视 -http://112.25.48.68/live/program/live/xjws/1300000/mnf.m3u8$LR•IPV4•13『线路13』 +https://iptv.catvod.com/catvod.php?id=xjws$LR•IPV4•14『线路13』 +#EXTINF:-1 tvg-id="新疆卫视" tvg-name="新疆卫视" group-title="卫视",新疆卫视 +https://httop.top/ysp-新疆卫视$LR•IPV4•14『线路14』 #EXTINF:-1 tvg-id="云南卫视" tvg-name="云南卫视" group-title="卫视",云南卫视 -http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221227028/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7EGfQPqRNVeBjTMsZ48qu0SA%7EtP4-l0lmSfjwLWEfK_el1vH_mv-s1zo4AQJwdedaVwG9xkuFTDg8J26cwOrNJzn20BErrHdLhuZ9EzLUCD3PMW-OMx4MGteHV2vLeW6BqoY%2CEND$LR•IPV6•16『线路1』 +http://t.061899.xyz/tl/tl.php?id=ynws$LR•IPV4•17『线路1』 #EXTINF:-1 tvg-id="云南卫视" tvg-name="云南卫视" group-title="卫视",云南卫视 -http://120.198.95.220:9901/tsfile/live/1056_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•16『线路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•17『线路2』 #EXTINF:-1 tvg-id="云南卫视" tvg-name="云南卫视" group-title="卫视",云南卫视 -http://38.75.136.137:98/gslb/dsdqpub/ynwshd.m3u8?auth=testpub$LR•IPV4•16『线路3』 +http://120.198.95.220:9901/tsfile/live/1056_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•17『线路3』 #EXTINF:-1 tvg-id="云南卫视" tvg-name="云南卫视" group-title="卫视",云南卫视 -http://204.12.221.218:8181/3m1080p/ynws.m3u8$LR•IPV4•16『线路4』 +http://38.75.136.137:98/gslb/dsdqpub/ynwshd.m3u8?auth=testpub$LR•IPV4•17『线路4』 #EXTINF:-1 tvg-id="云南卫视" tvg-name="云南卫视" group-title="卫视",云南卫视 -http://112.123.243.37:50085/tsfile/live/0117_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•16『线路5』 +http://204.12.221.218:8181/3m1080p/ynws.m3u8$LR•IPV4•17『线路5』 #EXTINF:-1 tvg-id="云南卫视" tvg-name="云南卫视" group-title="卫视",云南卫视 -http://101.66.194.82:9901/tsfile/live/0119_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•16『线路6』 +http://112.123.243.37:50085/tsfile/live/0117_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•17『线路6』 #EXTINF:-1 tvg-id="云南卫视" tvg-name="云南卫视" group-title="卫视",云南卫视 -http://101.66.194.63:9901/tsfile/live/0119_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•16『线路7』 +http://101.66.194.82:9901/tsfile/live/0119_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•17『线路7』 #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•16『线路8』 +http://101.66.194.63:9901/tsfile/live/0119_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•17『线路8』 #EXTINF:-1 tvg-id="云南卫视" tvg-name="云南卫视" group-title="卫视",云南卫视 -http://101.66.195.138:9901/tsfile/live/0119_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•16『线路9』 +http://36.136.38.87:9901/tsfile/live/0119_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•17『线路9』 #EXTINF:-1 tvg-id="云南卫视" tvg-name="云南卫视" group-title="卫视",云南卫视 -http://101.66.199.247:9901/tsfile/live/0119_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•16『线路10』 +http://101.66.195.138:9901/tsfile/live/0119_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•17『线路10』 #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•16『线路11』 +http://101.66.199.247:9901/tsfile/live/0119_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•17『线路11』 #EXTINF:-1 tvg-id="云南卫视" tvg-name="云南卫视" group-title="卫视",云南卫视 -http://123.130.84.106:8154/tsfile/live/0119_1.m3u8$LR•IPV4•16『线路12』 +http://153.0.171.163:9901/tsfile/live/0119_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•17『线路12』 #EXTINF:-1 tvg-id="云南卫视" tvg-name="云南卫视" group-title="卫视",云南卫视 -http://23.237.228.134/live8/yunnan.m3u8$LR•IPV4•16『线路13』 +https://jsv-live-play.sfccn.com/live/jsv_3920_fhd.m3u8$LR•IPV4•17『线路13』 #EXTINF:-1 tvg-id="云南卫视" tvg-name="云南卫视" group-title="卫视",云南卫视 -https://iptv.catvod.com/catvod.php?id=ynws$LR•IPV4•16『线路14』 +https://hwapi.yunshicloud.com/8xughf/e0bx15.m3u8$LR•IPV4•17『线路14』 #EXTINF:-1 tvg-id="云南卫视" tvg-name="云南卫视" group-title="卫视",云南卫视 -https://httop.top/ysp-云南卫视$LR•IPV4•16『线路15』 +http://23.237.228.134/live8/yunnan.m3u8$LR•IPV4•17『线路15』 #EXTINF:-1 tvg-id="云南卫视" tvg-name="云南卫视" group-title="卫视",云南卫视 -https://hwapi.yunshicloud.com/8xughf/e0bx15.m3u8$LR•IPV4•16『线路16』 +https://iptv.catvod.com/catvod.php?id=ynws$LR•IPV4•17『线路16』 +#EXTINF:-1 tvg-id="云南卫视" tvg-name="云南卫视" group-title="卫视",云南卫视 +https://httop.top/ysp-云南卫视$LR•IPV4•17『线路17』 #EXTINF:-1 tvg-id="西藏卫视" tvg-name="西藏卫视" group-title="卫视",西藏卫视 -http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221227033/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7EdeTB7OZ9G_VNJk5C3t96fQ%7EtP4-l0lmSfjwLWEfK_el1vH_mv-s1zo4AQJwdedaVwG9xkuFTDg8J26cwOrNJzn20BErrHdLhuZ9EzLUCD3PMW-OMx4MGteHV2vLeW6BqoY%2CEND$LR•IPV6•12『线路1』 +http://t.061899.xyz/tl/tl.php?id=xzws$LR•IPV4•12『线路1』 #EXTINF:-1 tvg-id="西藏卫视" tvg-name="西藏卫视" group-title="卫视",西藏卫视 -http://59.39.89.130:60901/tsfile/live/0125_3.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•12『线路2』 +http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221227033/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7EdeTB7OZ9G_VNJk5C3t96fQ%7EtP4-l0lmSfjwLWEfK_el1vH_mv-s1zo4AQJwdedaVwG9xkuFTDg8J26cwOrNJzn20BErrHdLhuZ9EzLUCD3PMW-OMx4MGteHV2vLeW6BqoY%2CEND$LR•IPV6•12『线路2』 #EXTINF:-1 tvg-id="西藏卫视" tvg-name="西藏卫视" group-title="卫视",西藏卫视 -http://198.204.228.26/live/xzws.m3u8$LR•IPV4•12『线路3』 +http://59.39.89.130:60901/tsfile/live/0125_3.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•12『线路3』 #EXTINF:-1 tvg-id="西藏卫视" tvg-name="西藏卫视" group-title="卫视",西藏卫视 -http://63.141.230.178:82/gslb/zbdq5.m3u8?id=xzws$LR•IPV4•12『线路4』 +http://198.204.228.26/live/xzws.m3u8$LR•IPV4•12『线路4』 #EXTINF:-1 tvg-id="西藏卫视" tvg-name="西藏卫视" group-title="卫视",西藏卫视 -http://107.150.60.122/live/xzws.m3u8$LR•IPV4•12『线路5』 +http://63.141.230.178:82/gslb/zbdq5.m3u8?id=xzws$LR•IPV4•12『线路5』 #EXTINF:-1 tvg-id="西藏卫视" tvg-name="西藏卫视" group-title="卫视",西藏卫视 -http://112.123.243.37:50085/tsfile/live/0141_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•12『线路6』 +http://107.150.60.122/live/xzws.m3u8$LR•IPV4•12『线路6』 #EXTINF:-1 tvg-id="西藏卫视" tvg-name="西藏卫视" group-title="卫视",西藏卫视 -http://59.39.89.130:60901/tsfile/live/0125_4.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•12『线路7』 +http://112.123.243.37:50085/tsfile/live/0141_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•12『线路7』 #EXTINF:-1 tvg-id="西藏卫视" tvg-name="西藏卫视" group-title="卫视",西藏卫视 -http://cssbyd.imwork.net:8082/hls/46/index.m3u8$LR•IPV4•12『线路8』 +http://59.39.89.130:60901/tsfile/live/0125_4.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•12『线路8』 #EXTINF:-1 tvg-id="西藏卫视" tvg-name="西藏卫视" group-title="卫视",西藏卫视 -https://iptv.catvod.com/catvod.php?id=xzws$LR•IPV4•12『线路9』 +http://39.134.115.163:8080/PLTV/88888910/224/3221225723/index.m3u8$LR•IPV4•12『线路9』 #EXTINF:-1 tvg-id="西藏卫视" tvg-name="西藏卫视" group-title="卫视",西藏卫视 -http://39.134.115.163:8080/PLTV/88888910/224/3221225723/index.m3u8$LR•IPV4•12『线路10』 +http://117.169.120.140:8080/live/xizangstv/.m3u8$LR•IPV4•12『线路10』 #EXTINF:-1 tvg-id="西藏卫视" tvg-name="西藏卫视" group-title="卫视",西藏卫视 -http://117.169.120.140:8080/live/xizangstv/.m3u8$LR•IPV4•12『线路11』 +http://183.207.249.16/PLTV/3/224/3221225523/index.m3u8$LR•IPV4•12『线路11』 #EXTINF:-1 tvg-id="西藏卫视" tvg-name="西藏卫视" group-title="卫视",西藏卫视 -http://183.207.249.16/PLTV/3/224/3221225523/index.m3u8$LR•IPV4•12『线路12』 +https://iptv.catvod.com/catvod.php?id=xzws$LR•IPV4•12『线路12』 #EXTINF:-1 tvg-id="海峡卫视" tvg-name="海峡卫视" group-title="卫视",海峡卫视 http://38.64.72.148:80/hls/modn/list/4009/chunklist0.m3u8$LR•IPV4•3『线路1』 #EXTINF:-1 tvg-id="海峡卫视" tvg-name="海峡卫视" group-title="卫视",海峡卫视 @@ -1462,13 +1468,13 @@ http://192.151.150.154/live/btws.m3u8$LR•IPV4•10『线路5』 #EXTINF:-1 tvg-id="兵团卫视" tvg-name="兵团卫视" group-title="卫视",兵团卫视 http://218.13.170.98:9901/tsfile/live/0115_1.m3u8$LR•IPV4•10『线路6』 #EXTINF:-1 tvg-id="兵团卫视" tvg-name="兵团卫视" group-title="卫视",兵团卫视 -http://43.251.226.89:8080/play/53.m3u8$LR•IPV4•10『线路7』 +http://112.25.48.68/live/program/live/btws/1300000/mnf.m3u8$LR•IPV4•10『线路7』 #EXTINF:-1 tvg-id="兵团卫视" tvg-name="兵团卫视" group-title="卫视",兵团卫视 -https://iptv.catvod.com/catvod.php?id=btws$LR•IPV4•10『线路8』 +http://43.251.226.89:8080/play/53.m3u8$LR•IPV4•10『线路8』 #EXTINF:-1 tvg-id="兵团卫视" tvg-name="兵团卫视" group-title="卫视",兵团卫视 -https://httop.top/ysp-兵团卫视$LR•IPV4•10『线路9』 +https://iptv.catvod.com/catvod.php?id=btws$LR•IPV4•10『线路9』 #EXTINF:-1 tvg-id="兵团卫视" tvg-name="兵团卫视" group-title="卫视",兵团卫视 -http://112.25.48.68/live/program/live/btws/1300000/mnf.m3u8$LR•IPV4•10『线路10』 +https://httop.top/ysp-兵团卫视$LR•IPV4•10『线路10』 #EXTINF:-1 tvg-id="安多卫视" tvg-name="安多卫视" group-title="卫视",安多卫视 https://liveout.xntv.tv/a65jur/96iln2.m3u8$LR•IPV4 #EXTINF:-1 tvg-id="康巴卫视" tvg-name="康巴卫视" group-title="卫视",康巴卫视 @@ -1480,13 +1486,13 @@ http://120.76.248.139/live/bfgd/4200000122.m3u8$LR•IPV4•2『线路1』 #EXTINF:-1 tvg-id="农林卫视" tvg-name="农林卫视" group-title="卫视",农林卫视 http://43.251.226.89:8080/play/52.m3u8$LR•IPV4•2『线路2』 #EXTINF:-1 tvg-id="三沙卫视" tvg-name="三沙卫视" group-title="卫视",三沙卫视 -https://srs.ssws.tv/video/sstv-10/index.m3u8$LR•IPV4•6『线路1』 +http://107.150.60.122/live/ssws.m3u8$LR•IPV4•6『线路1』 #EXTINF:-1 tvg-id="三沙卫视" tvg-name="三沙卫视" group-title="卫视",三沙卫视 -http://107.150.60.122/live/ssws.m3u8$LR•IPV4•6『线路2』 +http://38.75.136.137:98/gslb/dsdqpub/ssws.m3u8?auth=testpub$LR•IPV4•6『线路2』 #EXTINF:-1 tvg-id="三沙卫视" tvg-name="三沙卫视" group-title="卫视",三沙卫视 -http://38.75.136.137:98/gslb/dsdqpub/ssws.m3u8?auth=testpub$LR•IPV4•6『线路3』 +http://221.226.51.220:50081/newlive/live/hls/38/live.m3u8$LR•IPV4•6『线路3』 #EXTINF:-1 tvg-id="三沙卫视" tvg-name="三沙卫视" group-title="卫视",三沙卫视 -http://221.226.51.220:50081/newlive/live/hls/38/live.m3u8$LR•IPV4•6『线路4』 +https://srs.ssws.tv/video/sstv-10/index.m3u8$LR•IPV4•6『线路4』 #EXTINF:-1 tvg-id="三沙卫视" tvg-name="三沙卫视" group-title="卫视",三沙卫视 http://43.251.226.89:8080/play/56.m3u8$LR•IPV4•6『线路5』 #EXTINF:-1 tvg-id="三沙卫视" tvg-name="三沙卫视" group-title="卫视",三沙卫视 @@ -1510,7 +1516,7 @@ https://dxtx.hntv.tv/live/lypd.m3u8?txSecret=10c771842a0be59e8b575d765173ec96&tx #EXTINF:-1 tvg-id="梨园" tvg-name="梨园" group-title="卫视",梨园 http://1.94.31.214/php/hntv.php?id=hnly$LR•IPV4•2『线路2』 #EXTINF:-1 tvg-id="辽宁公共" tvg-name="辽宁公共" group-title="卫视",辽宁公共 -http://120.76.248.139/live/bfgd/4200000077.m3u8$LR•IPV4 +http://120.76.248.139/live/bfgd/4200000481.m3u8$LR•IPV4 #EXTINF:-1 tvg-id="中华特产" tvg-name="中华特产" group-title="卫视",中华特产 http://120.76.248.139/live/bfgd/4200000158.m3u8$LR•IPV4 #EXTINF:-1 tvg-id="河北4K" tvg-name="河北4K" group-title="卫视",河北4K @@ -1544,15 +1550,15 @@ http://153.0.171.163:9901/tsfile/live/0118_1.m3u8?key=txiptv&playlive=1&authid=0 #EXTINF:-1 tvg-id="山西卫视" tvg-name="山西卫视" group-title="卫视",山西卫视 http://112.27.235.94:8000/hls/45/index.m3u8$LR•IPV4•15『线路11』 #EXTINF:-1 tvg-id="山西卫视" tvg-name="山西卫视" group-title="卫视",山西卫视 -http://23.237.228.134/live8/shanxi.m3u8$LR•IPV4•15『线路12』 +http://118.81.195.79:9003/hls/19/index.m3u8$LR•IPV4•15『线路12』 #EXTINF:-1 tvg-id="山西卫视" tvg-name="山西卫视" group-title="卫视",山西卫视 -https://iptv.catvod.com/catvod.php?id=sxiws$LR•IPV4•15『线路13』 +http://23.237.228.134/live8/shanxi.m3u8$LR•IPV4•15『线路13』 #EXTINF:-1 tvg-id="山西卫视" tvg-name="山西卫视" group-title="卫视",山西卫视 -https://httop.top/ysp-山西卫视$LR•IPV4•15『线路14』 +https://iptv.catvod.com/catvod.php?id=sxiws$LR•IPV4•15『线路14』 #EXTINF:-1 tvg-id="山西卫视" tvg-name="山西卫视" group-title="卫视",山西卫视 -http://118.81.195.79:9003/hls/19/index.m3u8$LR•IPV4•15『线路15』 +https://httop.top/ysp-山西卫视$LR•IPV4•15『线路15』 #EXTINF:-1 tvg-id="陕西卫视" tvg-name="陕西卫视" group-title="卫视",陕西卫视 -http://stream.snrtv.com/sxbc-star-BLMOU4.m3u8$LR•IPV4•20『线路1』 +http://t.061899.xyz/tl/tl.php?id=sxws$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/3221226999/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7EsGLKaSqf0wDZMbAjeQtfyw%7EtP4-l0lmSfjwLWEfK_el1vH_mv-s1zo4AQJwdedaVwG9xkuFTDg8J26cwOrNJzn20BErrHdLhuZ9EzLUCD3PMW-OMx4MGteHV2vLeW6BqoY%2CEND$LR•IPV6•20『线路2』 #EXTINF:-1 tvg-id="陕西卫视" tvg-name="陕西卫视" group-title="卫视",陕西卫视 @@ -1572,27 +1578,29 @@ http://36.136.38.87:9901/tsfile/live/0136_1.m3u8?key=txiptv&playlive=1&authid=0$ #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•20『线路10』 #EXTINF:-1 tvg-id="陕西卫视" tvg-name="陕西卫视" group-title="卫视",陕西卫视 -http://112.27.235.94:8000/hls/43/index.m3u8$LR•IPV4•20『线路11』 +http://stream.snrtv.com/sxbc-star-BLMOU4.m3u8$LR•IPV4•20『线路11』 #EXTINF:-1 tvg-id="陕西卫视" tvg-name="陕西卫视" group-title="卫视",陕西卫视 -http://38.75.136.137:98/gslb/dsdqpub/sxwshd.m3u8?auth=testpub$LR•IPV4•20『线路12』 +http://39.134.115.163:8080/PLTV/88888910/224/3221225729/index.m3u8$LR•IPV4•20『线路12』 #EXTINF:-1 tvg-id="陕西卫视" tvg-name="陕西卫视" group-title="卫视",陕西卫视 -http://23.237.228.134/live6/sichuan.m3u8$LR•IPV4•20『线路13』 +http://223.110.245.139/PLTV/4/224/3221227022/index.m3u8$LR•IPV4•20『线路13』 #EXTINF:-1 tvg-id="陕西卫视" tvg-name="陕西卫视" group-title="卫视",陕西卫视 -http://43.251.226.89:8080/play/45.m3u8$LR•IPV4•20『线路14』 +http://112.25.48.68/live/program/live/sxws/1300000/mnf.m3u8$LR•IPV4•20『线路14』 #EXTINF:-1 tvg-id="陕西卫视" tvg-name="陕西卫视" group-title="卫视",陕西卫视 -https://iptv.catvod.com/catvod.php?id=sxws$LR•IPV4•20『线路15』 +http://38.75.136.137:98/gslb/dsdqpub/sxwshd.m3u8?auth=testpub$LR•IPV4•20『线路15』 #EXTINF:-1 tvg-id="陕西卫视" tvg-name="陕西卫视" group-title="卫视",陕西卫视 -https://httop.top/ysp-陕西卫视$LR•IPV4•20『线路16』 +http://23.237.228.134/live6/sichuan.m3u8$LR•IPV4•20『线路16』 #EXTINF:-1 tvg-id="陕西卫视" tvg-name="陕西卫视" group-title="卫视",陕西卫视 -http://mg.hmysapp.cn:177/ckmg/zb.php?id=sxws$LR•IPV4•20『线路17』 +http://43.251.226.89:8080/play/45.m3u8$LR•IPV4•20『线路17』 #EXTINF:-1 tvg-id="陕西卫视" tvg-name="陕西卫视" group-title="卫视",陕西卫视 -http://39.134.115.163:8080/PLTV/88888910/224/3221225729/index.m3u8$LR•IPV4•20『线路18』 +https://iptv.catvod.com/catvod.php?id=sxws$LR•IPV4•20『线路18』 #EXTINF:-1 tvg-id="陕西卫视" tvg-name="陕西卫视" group-title="卫视",陕西卫视 -http://223.110.245.139/PLTV/4/224/3221227022/index.m3u8$LR•IPV4•20『线路19』 +https://httop.top/ysp-陕西卫视$LR•IPV4•20『线路19』 #EXTINF:-1 tvg-id="陕西卫视" tvg-name="陕西卫视" group-title="卫视",陕西卫视 -http://112.25.48.68/live/program/live/sxws/1300000/mnf.m3u8$LR•IPV4•20『线路20』 +http://mg.hmysapp.cn:177/ckmg/zb.php?id=sxws$LR•IPV4•20『线路20』 #EXTINF:-1 tvg-id="CHC影迷电影" tvg-name="CHC影迷电影" group-title="数字",CHC影迷电影 p3p://167.114.175.6:55331/63ec4caf00020428e445513c2d902fdb$LR•IPV4 +#EXTINF:-1 tvg-id="CHC动作电影" tvg-name="CHC动作电影" group-title="数字",CHC动作电影 +http://t.061899.xyz/tl/tl.php?id=chcdzdy$LR•IPV4 #EXTINF:-1 tvg-id="CHC家庭影院" tvg-name="CHC家庭影院" group-title="数字",CHC家庭影院 http://61.162.52.6:8088/newlive/live/hls/60/live.m3u8$LR•IPV4 #EXTINF:-1 tvg-id="睛彩竞技" tvg-name="睛彩竞技" group-title="数字",睛彩竞技 @@ -1678,9 +1686,9 @@ http://drive.mxmy.net:8888/udp/239.3.1.126:8001$LR•IPV4•24『线路23』 #EXTINF:-1 tvg-id="睛彩篮球" tvg-name="睛彩篮球" group-title="数字",睛彩篮球 http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=8104&tk=b53028476470$LR•IPV4•24『线路24』 #EXTINF:-1 tvg-id="SiTV 魅力足球" tvg-name="SiTV 魅力足球" group-title="数字",SiTV 魅力足球 -http://111.22.153.159:35455/itv/5000000011000031207.m3u8?cdn=bestzb$LR•IPV4•28『线路1』 +http://t.061899.xyz/tl/tl.php?id=mlzq$LR•IPV4•28『线路1』 #EXTINF:-1 tvg-id="SiTV 魅力足球" tvg-name="SiTV 魅力足球" group-title="数字",SiTV 魅力足球 -http://t.061899.xyz/tl/tl.php?id=mlzq$LR•IPV4•28『线路2』 +http://111.22.153.159:35455/itv/5000000011000031207.m3u8?cdn=bestzb$LR•IPV4•28『线路2』 #EXTINF:-1 tvg-id="SiTV 魅力足球" tvg-name="SiTV 魅力足球" group-title="数字",SiTV 魅力足球 https://www.freetv.top/migu/796070308.m3u8?migutoken=f4f71100ed3cd756f336e1f3b6d522c1338ee1ffd14316eea89e461d4e31e29395a265a9f1ec26b947fb0e7dc16296db47ae3bfea73caaee6901d17bfede63775878c0ab44c872939ba5b53baf$LR•IPV4•28『线路3』 #EXTINF:-1 tvg-id="SiTV 魅力足球" tvg-name="SiTV 魅力足球" group-title="数字",SiTV 魅力足球 @@ -1734,21 +1742,21 @@ https://stream1.freetv.fun/ipv6-mei-li-zu-qiu-5.m3u8$LR•IPV4•28『线路27 #EXTINF:-1 tvg-id="SiTV 魅力足球" tvg-name="SiTV 魅力足球" group-title="数字",SiTV 魅力足球 http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=0934&tk=e640d0a1bf70$LR•IPV4•28『线路28』 #EXTINF:-1 tvg-id="SiTV 劲爆体育" tvg-name="SiTV 劲爆体育" group-title="数字",SiTV 劲爆体育 -http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=6808&tk=a0c4f6cfaba3$LR•IPV4•25『线路1』 +http://t.061899.xyz/tl/tl.php?id=jbty$LR•IPV4•25『线路1』 #EXTINF:-1 tvg-id="SiTV 劲爆体育" tvg-name="SiTV 劲爆体育" group-title="数字",SiTV 劲爆体育 -http://120.238.94.82:9901/tsfile/live/1086_1.m3u8$LR•IPV4•25『线路2』 +http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=6808&tk=a0c4f6cfaba3$LR•IPV4•25『线路2』 #EXTINF:-1 tvg-id="SiTV 劲爆体育" tvg-name="SiTV 劲爆体育" group-title="数字",SiTV 劲爆体育 -http://111.22.153.159:35455/itv/5000000002000029972.m3u8?cdn=bestzb$LR•IPV4•25『线路3』 +http://120.238.94.82:9901/tsfile/live/1086_1.m3u8$LR•IPV4•25『线路3』 #EXTINF:-1 tvg-id="SiTV 劲爆体育" tvg-name="SiTV 劲爆体育" group-title="数字",SiTV 劲爆体育 -http://183.237.95.108:9901/tsfile/live/1074_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•25『线路4』 +http://111.22.153.159:35455/itv/5000000002000029972.m3u8?cdn=bestzb$LR•IPV4•25『线路4』 #EXTINF:-1 tvg-id="SiTV 劲爆体育" tvg-name="SiTV 劲爆体育" group-title="数字",SiTV 劲爆体育 -http://119.32.12.32:2901/udp/224.1.100.129:11111$LR•IPV4•25『线路5』 +http://183.237.95.108:9901/tsfile/live/1074_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•25『线路5』 #EXTINF:-1 tvg-id="SiTV 劲爆体育" tvg-name="SiTV 劲爆体育" group-title="数字",SiTV 劲爆体育 -http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=3011&tk=a0c4f6cfaba3$LR•IPV4•25『线路6』 +http://119.32.12.32:2901/udp/224.1.100.129:11111$LR•IPV4•25『线路6』 #EXTINF:-1 tvg-id="SiTV 劲爆体育" tvg-name="SiTV 劲爆体育" group-title="数字",SiTV 劲爆体育 -http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=4995&tk=e503191f8e20$LR•IPV4•25『线路7』 +http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=3011&tk=a0c4f6cfaba3$LR•IPV4•25『线路7』 #EXTINF:-1 tvg-id="SiTV 劲爆体育" tvg-name="SiTV 劲爆体育" group-title="数字",SiTV 劲爆体育 -http://t.061899.xyz/tl/tl.php?id=jbty$LR•IPV4•25『线路8』 +http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=4995&tk=e503191f8e20$LR•IPV4•25『线路8』 #EXTINF:-1 tvg-id="SiTV 劲爆体育" tvg-name="SiTV 劲爆体育" group-title="数字",SiTV 劲爆体育 http://146.56.165.66:7788/TVOD/5000000002000029972/bestzb/index.m3u8$LR•IPV4•25『线路9』 #EXTINF:-1 tvg-id="SiTV 劲爆体育" tvg-name="SiTV 劲爆体育" group-title="数字",SiTV 劲爆体育 @@ -1870,9 +1878,9 @@ http://feiyang.ak47s.top:35455/itv/1000000001000009601.m3u8?cdn=ystenlive$LR•I #EXTINF:-1 tvg-id="NewTV超级体育" tvg-name="NewTV超级体育" group-title="数字",NewTV超级体育 http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=3188&tk=23a9aca1f79f$LR•IPV4•5『线路5』 #EXTINF:-1 tvg-id="NewTV动作电影" tvg-name="NewTV动作电影" group-title="数字",NewTV动作电影 -http://live.metshop.top/huya/11602077?cdn=alicdn$LR•IPV4•2『线路1』 +http://39.134.19.68/dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221226465/index.m3u8$LR•IPV4•2『线路1』 #EXTINF:-1 tvg-id="NewTV动作电影" tvg-name="NewTV动作电影" group-title="数字",NewTV动作电影 -http://39.134.19.68/dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221226465/index.m3u8$LR•IPV4•2『线路2』 +http://live.metshop.top/huya/11602077?cdn=alicdn$LR•IPV4•2『线路2』 #EXTINF:-1 tvg-id="NewTV精品体育" tvg-name="NewTV精品体育" group-title="数字",NewTV精品体育 https://epg.pw/stream/f7556eccd4ae06b0c2991fdc7a4f8388496559f728cc82459a8e50346040e226.m3u8$LR•IPV4•6『线路1』 #EXTINF:-1 tvg-id="NewTV精品体育" tvg-name="NewTV精品体育" group-title="数字",NewTV精品体育 @@ -1888,7 +1896,9 @@ http://dl.wifi942.com:66/jsyd/jsyd.php?id=GITV-JS-65$LR•IPV4•6『线路6』 #EXTINF:-1 tvg-id="卡酷少儿" tvg-name="卡酷少儿" group-title="数字",卡酷少儿 http://218.13.170.98:9901/tsfile/live/1021_1.m3u8$LR•IPV4 #EXTINF:-1 tvg-id="优漫卡通" tvg-name="优漫卡通" group-title="数字",优漫卡通 -http://183.207.249.15/PLTV/4/224/3221225933/index.m3u8$LR•IPV4 +http://t.061899.xyz/tl/tl.php?id=ymkt$LR•IPV4•2『线路1』 +#EXTINF:-1 tvg-id="优漫卡通" tvg-name="优漫卡通" group-title="数字",优漫卡通 +http://183.207.249.15/PLTV/4/224/3221225933/index.m3u8$LR•IPV4•2『线路2』 #EXTINF:-1 tvg-id="哈哈炫动" tvg-name="哈哈炫动" group-title="数字",哈哈炫动 http://223.110.245.139/PLTV/4/224/3221226388/index.m3u8$LR•IPV4 #EXTINF:-1 tvg-id="嘉佳卡通" tvg-name="嘉佳卡通" group-title="数字",嘉佳卡通 @@ -1896,19 +1906,19 @@ http://223.110.245.139/PLTV/4/224/3221227009/index.m3u8$LR•IPV4•2『线路1 #EXTINF:-1 tvg-id="嘉佳卡通" tvg-name="嘉佳卡通" group-title="数字",嘉佳卡通 http://112.25.48.68/live/program/live/jjkt/1300000/mnf.m3u8$LR•IPV4•2『线路2』 #EXTINF:-1 tvg-id="金鹰卡通" tvg-name="金鹰卡通" group-title="数字",金鹰卡通 -http://phoneal.qing.mgtv.com/nn_live/nn_x64/Y2hzPSZkZWY9MSZ1aXA9MTA2LjE0LjM4LjU1JnRlcm09NSZtYWNpZD02ODZlOGNmOGM4OGU3N2VjOWEwNzkzMjg5ZjUzNDg0MmFiZWM0ZjNjJnFpZD0mcmF1dGhfZW5hYmxlPW9mZiZjZG5leF9pZD1hbF9waG9uZTMmZXM9MTc4Mzk3OTAxNiZ1dWlkPTU2NjdhZjJmOGNjNjM4MjMwZjFlYzVmY2RiMWIxNThmLTZhMGUyNjM3JnM9ZDg2NTFkYzBlZjdjOTcxMjUyMjMxMTYyOGQ5ODM4YjgmdWlkPSZuZHY9aW9zLTYuNS4wJnY9MiZhcz0wJl9jYXJDb2RlPTA,/JYKTMPP360.m3u8$LR•IPV4•7『线路1』 +http://183.11.239.36:808/hls/69/index.m3u8$LR•IPV4•7『线路1』 #EXTINF:-1 tvg-id="金鹰卡通" tvg-name="金鹰卡通" group-title="数字",金鹰卡通 -http://183.11.239.36:808/hls/69/index.m3u8$LR•IPV4•7『线路2』 +http://phoneqq.qing.mgtv.com/nn_live/nn_x64/Y2hzPSZkZWY9MSZ1aXA9MTA2LjE0LjM4LjU1JnRlcm09NSZtYWNpZD02ODZlOGNmOGM4OGU3N2VjOWEwNzkzMjg5ZjUzNDg0MmFiZWM0ZjNjJnFpZD0mcmF1dGhfZW5hYmxlPW9mZiZjZG5leF9pZD1xcV9waG9uZV9saXZlJmVzPTE3ODQyNDYwMjImdXVpZD1kOGE5NDdhY2I3OGNhOWUxZWM1MzIwZTMxNTYxZmU5NS02YTBlMjYzNyZzPThlNWFhM2FhOGI5YzUwYzNmZjVhODk2NjBiODg3NjUyJnVpZD0mbmR2PWlvcy02LjUuMCZ2PTImYXM9MCZfY2FyQ29kZT0w/HNGGMPP360.m3u8$LR•IPV4•7『线路2』 #EXTINF:-1 tvg-id="金鹰卡通" tvg-name="金鹰卡通" group-title="数字",金鹰卡通 -http://101.66.194.82:9901/tsfile/live/1000_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•7『线路3』 +http://223.110.245.145/ott.js.chinamobile.com/PLTV/3/224/3221226303/index.m3u8$LR•IPV4•7『线路3』 #EXTINF:-1 tvg-id="金鹰卡通" tvg-name="金鹰卡通" group-title="数字",金鹰卡通 -http://101.66.194.63:9901/tsfile/live/1000_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•7『线路4』 +http://101.66.194.82:9901/tsfile/live/1000_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•7『线路4』 #EXTINF:-1 tvg-id="金鹰卡通" tvg-name="金鹰卡通" group-title="数字",金鹰卡通 -http://101.66.199.247:9901/tsfile/live/1000_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•7『线路5』 +http://101.66.194.63:9901/tsfile/live/1000_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•7『线路5』 #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•7『线路6』 +http://101.66.199.247:9901/tsfile/live/1000_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•7『线路6』 #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•7『线路7』 +http://120.198.95.220:9901/tsfile/live/1033_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•7『线路7』 #EXTINF:-1 tvg-id="金鹰纪实" tvg-name="金鹰纪实" group-title="数字",金鹰纪实 http://iptv.huuc.edu.cn/hls/gedocu.m3u8$LR•IPV4•83『线路1』 #EXTINF:-1 tvg-id="金鹰纪实" tvg-name="金鹰纪实" group-title="数字",金鹰纪实 @@ -2144,9 +2154,11 @@ http://27.12.12.183:1234/961930263$LR•IPV4•34『线路33』 #EXTINF:-1 tvg-id="快乐垂钓" tvg-name="快乐垂钓" group-title="数字",快乐垂钓 http://8.153.110.51:3020/961930263$LR•IPV4•34『线路34』 #EXTINF:-1 tvg-id="纪实人文" tvg-name="纪实人文" group-title="数字",纪实人文 -http://8.138.7.223/tv/shtv.php?id=xjs$LR•IPV4•2『线路1』 +http://t.061899.xyz/tl/tl.php?id=shjsrw$LR•IPV4•3『线路1』 #EXTINF:-1 tvg-id="纪实人文" tvg-name="纪实人文" group-title="数字",纪实人文 -http://39.135.138.59:18890/PLTV/88888910/224/3221225655/index.m3u8$LR•IPV4•2『线路2』 +http://39.135.138.59:18890/PLTV/88888910/224/3221225655/index.m3u8$LR•IPV4•3『线路2』 +#EXTINF:-1 tvg-id="纪实人文" tvg-name="纪实人文" group-title="数字",纪实人文 +http://8.138.7.223/tv/shtv.php?id=xjs$LR•IPV4•3『线路3』 #EXTINF:-1 tvg-id="天元围棋" tvg-name="天元围棋" group-title="数字",天元围棋 http://120.76.248.139/live/bfgd/4200000633.m3u8$LR•IPV4•6『线路1』 #EXTINF:-1 tvg-id="天元围棋" tvg-name="天元围棋" group-title="数字",天元围棋 @@ -2166,15 +2178,15 @@ http://111.22.153.159:35455/itv/2000000004000000014.m3u8?cdn=hnbblive$LR•IPV4 #EXTINF:-1 tvg-id="华数4K" tvg-name="华数4K" group-title="数字",华数4K http://home.wwang.pw:35455/itv/2000000004000000014.m3u8?cdn=hnbblive$LR•IPV4•2『线路2』 #EXTINF:-1 tvg-id="纯享4K" tvg-name="纯享4K" group-title="数字",纯享4K -http://101.43.145.141:12002/itv/1000000004000011651.m3u8?cdn=ystenlive$LR•IPV4•5『线路1』 +http://39.134.115.163:8080/PLTV/88888910/224/3221225786/index.m3u8$LR•IPV4•5『线路1』 #EXTINF:-1 tvg-id="纯享4K" tvg-name="纯享4K" group-title="数字",纯享4K -https://live.264788.xyz/channel/chunxiang4k?streamid=c162e99191441b46592808f7f1afe8b0&livekey=01WgOR41rriMmMkzNsd0UoaxJRwetZdxIvtVk$LR•IPV4•5『线路2』 +http://101.43.145.141:12002/itv/1000000004000011651.m3u8?cdn=ystenlive$LR•IPV4•5『线路2』 #EXTINF:-1 tvg-id="纯享4K" tvg-name="纯享4K" group-title="数字",纯享4K -https://live.264788.xyz/channel/chunxiang4k?streamid=a12e69928ae928860407d7ec7bfe4ac8&livekey=01WgOR41rriMmMkzNsd0UoaxJRwetZdxIvtVk$LR•IPV4•5『线路3』 +https://live.264788.xyz/channel/chunxiang4k?streamid=c162e99191441b46592808f7f1afe8b0&livekey=01WgOR41rriMmMkzNsd0UoaxJRwetZdxIvtVk$LR•IPV4•5『线路3』 #EXTINF:-1 tvg-id="纯享4K" tvg-name="纯享4K" group-title="数字",纯享4K -http://home.wwang.pw:35455/itv/1000000004000011651.m3u8?cdn=ystenlive$LR•IPV4•5『线路4』 +https://live.264788.xyz/channel/chunxiang4k?streamid=a12e69928ae928860407d7ec7bfe4ac8&livekey=01WgOR41rriMmMkzNsd0UoaxJRwetZdxIvtVk$LR•IPV4•5『线路4』 #EXTINF:-1 tvg-id="纯享4K" tvg-name="纯享4K" group-title="数字",纯享4K -http://39.134.115.163:8080/PLTV/88888910/224/3221225786/index.m3u8$LR•IPV4•5『线路5』 +http://home.wwang.pw:35455/itv/1000000004000011651.m3u8?cdn=ystenlive$LR•IPV4•5『线路5』 #EXTINF:-1 tvg-id="滁州新闻综合频道" tvg-name="滁州新闻综合频道" group-title="安徽",滁州新闻综合频道 http://183.167.193.45:1935/live/cztvzh/playlist.m3u8$LR•IPV4 #EXTINF:-1 tvg-id="滁州科教频道" tvg-name="滁州科教频道" group-title="安徽",滁州科教频道 @@ -2206,31 +2218,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="河北",邢台综合 -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『线路1』 #EXTINF:-1 tvg-id="邢台综合" tvg-name="邢台综合" group-title="河北",邢台综合 -http://222.223.119.21:8888/newlive/live/hls/54/live.m3u8$LR•IPV4•2『线路2』 +https://jwplay.hebyun.com.cn:443/live/xtsrmtzs/1500k/tzwj_video.m3u8$LR•IPV4•2『线路2』 #EXTINF:-1 tvg-id="河北都市" tvg-name="河北都市" group-title="河北",河北都市 -https://radio.pull.hebtv.com/live/hebnczx.m3u8$LR•IPV4•2『线路1』 +http://121.19.134.246:808/hls/21/index.m3u8$LR•IPV4•2『线路1』 #EXTINF:-1 tvg-id="河北都市" tvg-name="河北都市" group-title="河北",河北都市 -http://121.19.134.246:808/hls/21/index.m3u8$LR•IPV4•2『线路2』 +http://1.94.31.214/php/hebei.php?id=hbds$LR•IPV4•2『线路2』 #EXTINF:-1 tvg-id="河北农民" tvg-name="河北农民" group-title="河北",河北农民 -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『线路1』 #EXTINF:-1 tvg-id="河北农民" tvg-name="河北农民" group-title="河北",河北农民 -http://121.19.134.246:808/hls/25/index.m3u8$LR•IPV4•2『线路2』 +https://ls.qingting.fm/live/1650/64k.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://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『线路1』 #EXTINF:-1 tvg-id="河北经济" tvg-name="河北经济" group-title="河北",河北经济 -http://121.19.134.246:808/hls/20/index.m3u8$LR•IPV4•2『线路2』 +http://1.94.31.214/php/hebei.php?id=jjsh$LR•IPV4•2『线路2』 #EXTINF:-1 tvg-id="河北影视" tvg-name="河北影视" group-title="河北",河北影视 -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『线路1』 #EXTINF:-1 tvg-id="河北影视" tvg-name="河北影视" group-title="河北",河北影视 -http://121.19.134.246:808/hls/22/index.m3u8$LR•IPV4•2『线路2』 +http://1.94.31.214/php/hebei.php?id=hbys$LR•IPV4•2『线路2』 #EXTINF:-1 tvg-id="河北公共" tvg-name="河北公共" group-title="河北",河北公共 -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『线路1』 #EXTINF:-1 tvg-id="河北公共" tvg-name="河北公共" group-title="河北",河北公共 -http://121.19.134.246:808/hls/24/index.m3u8$LR•IPV4•2『线路2』 +http://1.94.31.214/php/hebei.php?id=hbgg$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="内蒙古",内蒙新闻 @@ -2272,13 +2284,13 @@ 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="江苏",南京教科 -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『线路1』 #EXTINF:-1 tvg-id="南京教科" tvg-name="南京教科" group-title="江苏",南京教科 -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『线路2』 #EXTINF:-1 tvg-id="南京教科" tvg-name="南京教科" group-title="江苏",南京教科 -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『线路3』 #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『线路4』 +http://nklive.nbs.cn/hls/75b3c462-b831-4de7-a34b-5d3221db2069/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 #EXTINF:-1 tvg-id="苏州4k" tvg-name="苏州4k" group-title="江苏",苏州4k @@ -2464,37 +2476,37 @@ https://stream1.freetv.fun/zhe-jiang-min-sheng-xiu-xian-5.m3u8$LR•IPV4•37『 #EXTINF:-1 tvg-id="浙江新闻" tvg-name="浙江新闻" group-title="浙江",浙江新闻 https://ali-m-l.cztv.com/channels/lantian/channel007/1080p.m3u8$LR•IPV4•34『线路1』 #EXTINF:-1 tvg-id="浙江新闻" tvg-name="浙江新闻" group-title="浙江",浙江新闻 -https://ali-m-l.cztv.com/channels/lantian/channel007/1080p.m3u8?$LR•IPV4•34『线路2』 +http://ali-m-l.cztv.com/channels/lantian/channel007/720p.m3u8$LR•IPV4•34『线路2』 #EXTINF:-1 tvg-id="浙江新闻" tvg-name="浙江新闻" group-title="浙江",浙江新闻 -http://ali-m-l.cztv.com/channels/lantian/channel007/720p.m3u8$LR•IPV4•34『线路3』 +https://stream1.freetv.fun/zhe-jiang-xin-wen-11.m3u8$LR•IPV4•34『线路3』 #EXTINF:-1 tvg-id="浙江新闻" tvg-name="浙江新闻" group-title="浙江",浙江新闻 -https://stream1.freetv.fun/zhe-jiang-xin-wen-11.m3u8$LR•IPV4•34『线路4』 +http://ali-xwl.cztv.com/live/channel07720Plxw.m3u8$LR•IPV4•34『线路4』 #EXTINF:-1 tvg-id="浙江新闻" tvg-name="浙江新闻" group-title="浙江",浙江新闻 -http://ali-xwl.cztv.com/live/channel07720Plxw.m3u8$LR•IPV4•34『线路5』 +https://stream1.freetv.fun/zhe-jiang-xin-wen-6.m3u8$LR•IPV4•34『线路5』 #EXTINF:-1 tvg-id="浙江新闻" tvg-name="浙江新闻" group-title="浙江",浙江新闻 -https://stream1.freetv.fun/zhe-jiang-xin-wen-6.m3u8$LR•IPV4•34『线路6』 +https://stream1.freetv.fun/zhe-jiang-xin-wen-4.m3u8$LR•IPV4•34『线路6』 #EXTINF:-1 tvg-id="浙江新闻" tvg-name="浙江新闻" group-title="浙江",浙江新闻 -https://stream1.freetv.fun/zhe-jiang-xin-wen-4.m3u8$LR•IPV4•34『线路7』 +https://stream1.freetv.fun/zhe-jiang-xin-wen-3.m3u8$LR•IPV4•34『线路7』 #EXTINF:-1 tvg-id="浙江新闻" tvg-name="浙江新闻" group-title="浙江",浙江新闻 -https://stream1.freetv.fun/zhe-jiang-xin-wen-3.m3u8$LR•IPV4•34『线路8』 +https://stream1.freetv.fun/zhe-jiang-xin-wen-1.m3u8$LR•IPV4•34『线路8』 #EXTINF:-1 tvg-id="浙江新闻" tvg-name="浙江新闻" group-title="浙江",浙江新闻 -https://stream1.freetv.fun/zhe-jiang-xin-wen-1.m3u8$LR•IPV4•34『线路9』 +https://t.freetv.fun/live/zhe-jiang-xin-wen-2.m3u8$LR•IPV4•34『线路9』 #EXTINF:-1 tvg-id="浙江新闻" tvg-name="浙江新闻" group-title="浙江",浙江新闻 -https://t.freetv.fun/live/zhe-jiang-xin-wen-2.m3u8$LR•IPV4•34『线路10』 +https://stream1.freetv.fun/zhe-jiang-xin-wen-2.m3u8$LR•IPV4•34『线路10』 #EXTINF:-1 tvg-id="浙江新闻" tvg-name="浙江新闻" group-title="浙江",浙江新闻 -https://stream1.freetv.fun/zhe-jiang-xin-wen-2.m3u8$LR•IPV4•34『线路11』 +https://t.freetv.fun/live/zhe-jiang-xin-wen-3.m3u8$LR•IPV4•34『线路11』 #EXTINF:-1 tvg-id="浙江新闻" tvg-name="浙江新闻" group-title="浙江",浙江新闻 -https://t.freetv.fun/live/zhe-jiang-xin-wen-3.m3u8$LR•IPV4•34『线路12』 +http://ali-xwl.cztv.com/live/channel071080Plxw.m3u8$LR•IPV4•34『线路12』 #EXTINF:-1 tvg-id="浙江新闻" tvg-name="浙江新闻" group-title="浙江",浙江新闻 -http://ali-xwl.cztv.com/live/channel071080Plxw.m3u8$LR•IPV4•34『线路13』 +https://ali-m-l.cztv.com/channels/lantian/channel07/720p.m3u8$LR•IPV4•34『线路13』 #EXTINF:-1 tvg-id="浙江新闻" tvg-name="浙江新闻" group-title="浙江",浙江新闻 -https://ali-m-l.cztv.com/channels/lantian/channel07/720p.m3u8$LR•IPV4•34『线路14』 +https://stream1.freetv.fun/7fa07158e038a9bae3747a0cb9f8e8ff1aaba32669d28d99a498716f16569c1d.m3u8$LR•IPV4•34『线路14』 #EXTINF:-1 tvg-id="浙江新闻" tvg-name="浙江新闻" group-title="浙江",浙江新闻 -https://stream1.freetv.fun/7fa07158e038a9bae3747a0cb9f8e8ff1aaba32669d28d99a498716f16569c1d.m3u8$LR•IPV4•34『线路15』 +https://stream1.freetv.fun/zhe-jiang-xin-wen-9.m3u8$LR•IPV4•34『线路15』 #EXTINF:-1 tvg-id="浙江新闻" tvg-name="浙江新闻" group-title="浙江",浙江新闻 -https://stream1.freetv.fun/zhe-jiang-xin-wen-9.m3u8$LR•IPV4•34『线路16』 +https://stream1.freetv.fun/zhe-jiang-xin-wen-7.m3u8$LR•IPV4•34『线路16』 #EXTINF:-1 tvg-id="浙江新闻" tvg-name="浙江新闻" group-title="浙江",浙江新闻 -https://stream1.freetv.fun/zhe-jiang-xin-wen-7.m3u8$LR•IPV4•34『线路17』 +https://ali-m-l.cztv.com/channels/lantian/channel007/1080p.m3u8?$LR•IPV4•34『线路17』 #EXTINF:-1 tvg-id="浙江新闻" tvg-name="浙江新闻" group-title="浙江",浙江新闻 http://ali-m-l.cztv.com/channels/lantian/channel007/1080p.m3u8?zzhed$LR•IPV4•34『线路18』 #EXTINF:-1 tvg-id="浙江新闻" tvg-name="浙江新闻" group-title="浙江",浙江新闻 @@ -2656,11 +2668,11 @@ http://ali-xwl.cztv.com/live/channel04720Plxw.m3u8$LR•IPV4•10『线路9』 #EXTINF:-1 tvg-id="浙江教科" tvg-name="浙江教科" group-title="浙江",浙江教科 http://ali-m-l.cztv.com/channels/lantian/channel04/1080p.m3u8$LR•IPV4•10『线路10』 #EXTINF:-1 tvg-id="浙江经济" tvg-name="浙江经济" group-title="浙江",浙江经济 -http://live.hznet.tv:1935/live/live2/500K/tzwj_video.m3u8?shandd$LR•IPV4•3『线路1』 +http://222.179.155.21:1935/ch0.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://222.179.155.21:1935/ch0.m3u8$LR•IPV4•3『线路3』 +http://live.hznet.tv:1935/live/live2/500k/tzwj_video.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="浙江",之江纪录 @@ -3166,11 +3178,11 @@ http://l.cztvcloud.com/channels/lantian/SXyuyao1/720p.m3u8?cWlkPSZzPTg3OWMwYmMyZ #EXTINF:-1 tvg-id="余姚综合" tvg-name="余姚综合" group-title="浙江",余姚综合 http://l.cztvcloud.com/channels/lantian/SXyuyao1/720p.m3u8?%E5%85%B3%E6%B3%A8%E5%BE%AE%E4%BF%A1%E5%85%AC%E4%BC%97%E5%8F%B7[%E6%99%B4%E5%9B%AD]$LR•IPV4•6『线路6』 #EXTINF:-1 tvg-id="余姚姚江文化" tvg-name="余姚姚江文化" group-title="浙江",余姚姚江文化 -http://l.cztvcloud.com/channels/lantian/SXyuyao3/720p.m3u8?zzhed$LR•IPV4•4『线路1』 +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.m3u8zzhed$LR•IPV4•4『线路2』 #EXTINF:-1 tvg-id="余姚姚江文化" tvg-name="余姚姚江文化" group-title="浙江",余姚姚江文化 -https://l.cztvcloud.com/channels/lantian/SXyuyao3/720p.m3u8$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="浙江",云和新闻综合 @@ -3546,9 +3558,9 @@ http://phonetx.qing.mgtv.com/nn_live/nn_x64/8.8&/CSXWMPP360.m3u8$LR•IPV4•2 #EXTINF:-1 tvg-id="长沙新闻" tvg-name="长沙新闻" group-title="湖南",长沙新闻 http://35848.hlsplay.aodianyun.com/guangdianyun_35848/tv_channel_346.m3u8$LR•IPV4 #EXTINF:-1 tvg-id="长沙政法" tvg-name="长沙政法" group-title="湖南",长沙政法 -http://phonetx.qing.mgtv.com/nn_live/nn_x64/8.8&/CSZFMPP360.m3u8$LR•IPV4•2『线路1』 +http://35848.hlsplay.aodianyun.com/guangdianyun_35848/tv_channel_348.m3u8$LR•IPV4•2『线路1』 #EXTINF:-1 tvg-id="长沙政法" tvg-name="长沙政法" group-title="湖南",长沙政法 -http://35848.hlsplay.aodianyun.com/guangdianyun_35848/tv_channel_348.m3u8$LR•IPV4•2『线路2』 +http://phonetx.qing.mgtv.com/nn_live/nn_x64/8.8&/CSZFMPP360.m3u8$LR•IPV4•2『线路2』 #EXTINF:-1 tvg-id="长沙女性" tvg-name="长沙女性" group-title="湖南",长沙女性 http://35848.hlsplay.aodianyun.com/guangdianyun_35848/tv_channel_349.m3u8$LR•IPV4 #EXTINF:-1 tvg-id="衡阳新闻综合" tvg-name="衡阳新闻综合" group-title="湖南",衡阳新闻综合 @@ -5042,17 +5054,17 @@ http://125.89.163.44:8888/udp/239.77.0.202:5146$LR•IPV4•4『线路3』 #EXTINF:-1 tvg-id="江门侨乡生活" tvg-name="江门侨乡生活" group-title="广东",江门侨乡生活 http://120.77.205.62:8087/rtp/239.77.0.202:5146$LR•IPV4•4『线路4』 #EXTINF:-1 tvg-id="河源综合" tvg-name="河源综合" group-title="广东",河源综合 -http://125.89.163.44:8888/udp/239.253.43.213:5146$LR•IPV4•6『线路1』 +https://tmpstream.hyrtv.cn/xwzh/sd/live.m3u8$LR•IPV4•6『线路1』 #EXTINF:-1 tvg-id="河源综合" tvg-name="河源综合" group-title="广东",河源综合 -http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=8947&tk=a0c4f6cfaba3$LR•IPV4•6『线路2』 +http://125.89.163.44:8888/udp/239.253.43.213:5146$LR•IPV4•6『线路2』 #EXTINF:-1 tvg-id="河源综合" tvg-name="河源综合" group-title="广东",河源综合 -http://120.234.5.28:6000/udp/239.21.0.48:3532$LR•IPV4•6『线路3』 +http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=8947&tk=a0c4f6cfaba3$LR•IPV4•6『线路3』 #EXTINF:-1 tvg-id="河源综合" tvg-name="河源综合" group-title="广东",河源综合 -https://tmpstream.hyrtv.cn/xwzh/sd/live.m3u8?_upt=f767206b1671099007$LR•IPV4•6『线路4』 +http://120.234.5.28:6000/udp/239.21.0.48:3532$LR•IPV4•6『线路4』 #EXTINF:-1 tvg-id="河源综合" tvg-name="河源综合" group-title="广东",河源综合 -http://tmpstream.hyrtv.cn/xwzh/sd/live.m3u8$LR•IPV4•6『线路5』 +https://tmpstream.hyrtv.cn/xwzh/sd/live.m3u8?_upt=f767206b1671099007$LR•IPV4•6『线路5』 #EXTINF:-1 tvg-id="河源综合" tvg-name="河源综合" group-title="广东",河源综合 -https://tmpstream.hyrtv.cn/xwzh/sd/live.m3u8$LR•IPV4•6『线路6』 +http://tmpstream.hyrtv.cn/xwzh/sd/live.m3u8$LR•IPV4•6『线路6』 #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』 #EXTINF:-1 tvg-id="河源公共" tvg-name="河源公共" group-title="广东",河源公共 @@ -5409,6 +5421,8 @@ https://tencentplaygsm.gztv.com/live/nanguodushi.m3u8?txTime=6594e9d5&txSecret=e http://r.jdshipin.com/nWaZO$LR•IPV4•8『线路7』 #EXTINF:-1 tvg-id="南国都市" tvg-name="南国都市" group-title="广东",南国都市 http://tencentplay.gztv.com/live/nanguodushi.m3u8?txSecret=140110ae3d6c936a77f94c4f4d85b0d3&txTime=18d57929bd4$LR•IPV4•8『线路8』 +#EXTINF:-1 tvg-id="上海新闻" tvg-name="上海新闻" group-title="上海",上海新闻 +http://t.061899.xyz/tl/tl.php?id=shxwzh$LR•IPV4 #EXTINF:-1 tvg-id="上海都市" tvg-name="上海都市" group-title="上海",上海都市 http://api3.52tb.xyz/info?id=372&token=20221127jxwhhemby$LR•IPV4•25『线路1』 #EXTINF:-1 tvg-id="上海都市" tvg-name="上海都市" group-title="上海",上海都市 @@ -5460,161 +5474,163 @@ https://stream1.freetv.fun/shang-hai-du-shi-7.m3u8$LR•IPV4•25『线路24』 #EXTINF:-1 tvg-id="上海都市" tvg-name="上海都市" group-title="上海",上海都市 https://stream1.freetv.fun/ipv6-shang-hai-du-shi-6.m3u8$LR•IPV4•25『线路25』 #EXTINF:-1 tvg-id="上海外语" tvg-name="上海外语" group-title="上海",上海外语 -http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=2446&tk=e640d0a1bf70$LR•IPV4•7『线路1』 +http://t.061899.xyz/tl/tl.php?id=shics$LR•IPV4•7『线路1』 #EXTINF:-1 tvg-id="上海外语" tvg-name="上海外语" group-title="上海",上海外语 -http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=1734&tk=b53028476470$LR•IPV4•7『线路2』 +http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=2446&tk=e640d0a1bf70$LR•IPV4•7『线路2』 #EXTINF:-1 tvg-id="上海外语" tvg-name="上海外语" group-title="上海",上海外语 -http://111.22.153.159:35455/itv/2000000002000000001.m3u8?cdn=hnbblive$LR•IPV4•7『线路3』 +http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=1734&tk=b53028476470$LR•IPV4•7『线路3』 #EXTINF:-1 tvg-id="上海外语" tvg-name="上海外语" group-title="上海",上海外语 -http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=6608&tk=e503191f8e20$LR•IPV4•7『线路4』 +http://111.22.153.159:35455/itv/2000000002000000001.m3u8?cdn=hnbblive$LR•IPV4•7『线路4』 #EXTINF:-1 tvg-id="上海外语" tvg-name="上海外语" group-title="上海",上海外语 -http://150.158.112.123/公众号~玉玉软件库/mg.php?id=shics$LR•IPV4•7『线路5』 +http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=6608&tk=e503191f8e20$LR•IPV4•7『线路5』 #EXTINF:-1 tvg-id="上海外语" tvg-name="上海外语" group-title="上海",上海外语 -http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=0017&tk=a0c4f6cfaba3$LR•IPV4•7『线路6』 +http://150.158.112.123/公众号~玉玉软件库/mg.php?id=shics$LR•IPV4•7『线路6』 #EXTINF:-1 tvg-id="上海外语" tvg-name="上海外语" group-title="上海",上海外语 -http://t.061899.xyz/tl/tl.php?id=shics$LR•IPV4•7『线路7』 +http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=0017&tk=a0c4f6cfaba3$LR•IPV4•7『线路7』 +#EXTINF:-1 tvg-id="七彩戏剧" tvg-name="七彩戏剧" group-title="上海",七彩戏剧 +http://t.061899.xyz/tl/tl.php?id=qcxj$LR•IPV4 #EXTINF:-1 tvg-id="五星体育" tvg-name="五星体育" group-title="上海",五星体育 -http://101.35.240.114:88/live.php?id=五星体育$LR•IPV4•41『线路1』 +http://223.110.245.147/ott.js.chinamobile.com/PLTV/3/224/3221226799/index.m3u8$LR•IPV4•41『线路1』 #EXTINF:-1 tvg-id="五星体育" tvg-name="五星体育" group-title="上海",五星体育 -https://stream1.freetv.fun/wu-xing-ti-yu-5.m3u8$LR•IPV4•41『线路2』 +http://101.35.240.114:88/live.php?id=五星体育$LR•IPV4•41『线路2』 #EXTINF:-1 tvg-id="五星体育" tvg-name="五星体育" group-title="上海",五星体育 -https://stream1.freetv.fun/wu-xing-ti-yu-3.m3u8$LR•IPV4•41『线路3』 +https://stream1.freetv.fun/wu-xing-ti-yu-5.m3u8$LR•IPV4•41『线路3』 #EXTINF:-1 tvg-id="五星体育" tvg-name="五星体育" group-title="上海",五星体育 -https://stream1.freetv.fun/ipv6-wu-xing-ti-yu-6.m3u8$LR•IPV4•41『线路4』 +https://stream1.freetv.fun/wu-xing-ti-yu-3.m3u8$LR•IPV4•41『线路4』 #EXTINF:-1 tvg-id="五星体育" tvg-name="五星体育" group-title="上海",五星体育 -https://stream1.freetv.fun/wu-xing-ti-yu-14.m3u8$LR•IPV4•41『线路5』 +https://stream1.freetv.fun/ipv6-wu-xing-ti-yu-6.m3u8$LR•IPV4•41『线路5』 #EXTINF:-1 tvg-id="五星体育" tvg-name="五星体育" group-title="上海",五星体育 -https://other.ottiptv.cc/wxty.m3u8$LR•IPV4•41『线路6』 +https://stream1.freetv.fun/wu-xing-ti-yu-14.m3u8$LR•IPV4•41『线路6』 #EXTINF:-1 tvg-id="五星体育" tvg-name="五星体育" group-title="上海",五星体育 -https://stream1.freetv.fun/ipv6-wu-xing-ti-yu-2.m3u8$LR•IPV4•41『线路7』 +https://other.ottiptv.cc/wxty.m3u8$LR•IPV4•41『线路7』 #EXTINF:-1 tvg-id="五星体育" tvg-name="五星体育" group-title="上海",五星体育 -https://stream1.freetv.fun/ipv6-wu-xing-ti-yu-1.m3u8$LR•IPV4•41『线路8』 +https://stream1.freetv.fun/ipv6-wu-xing-ti-yu-2.m3u8$LR•IPV4•41『线路8』 #EXTINF:-1 tvg-id="五星体育" tvg-name="五星体育" group-title="上海",五星体育 -https://stream1.freetv.fun/ipv6-wu-xing-ti-yu-3.m3u8$LR•IPV4•41『线路9』 +https://stream1.freetv.fun/ipv6-wu-xing-ti-yu-1.m3u8$LR•IPV4•41『线路9』 #EXTINF:-1 tvg-id="五星体育" tvg-name="五星体育" group-title="上海",五星体育 -https://stream1.freetv.fun/wu-xing-ti-yu-9.m3u8$LR•IPV4•41『线路10』 +https://stream1.freetv.fun/ipv6-wu-xing-ti-yu-3.m3u8$LR•IPV4•41『线路10』 #EXTINF:-1 tvg-id="五星体育" tvg-name="五星体育" group-title="上海",五星体育 -https://stream1.freetv.fun/wu-xing-ti-yu-4.m3u8$LR•IPV4•41『线路11』 +https://stream1.freetv.fun/wu-xing-ti-yu-9.m3u8$LR•IPV4•41『线路11』 #EXTINF:-1 tvg-id="五星体育" tvg-name="五星体育" group-title="上海",五星体育 -https://stream1.freetv.fun/wu-xing-ti-yu-7.m3u8$LR•IPV4•41『线路12』 +https://stream1.freetv.fun/wu-xing-ti-yu-4.m3u8$LR•IPV4•41『线路12』 #EXTINF:-1 tvg-id="五星体育" tvg-name="五星体育" group-title="上海",五星体育 -http://home.wwang.pw:35455/itv/5000000010000017540.m3u8?cdn=bestzb$LR•IPV4•41『线路13』 +https://stream1.freetv.fun/wu-xing-ti-yu-7.m3u8$LR•IPV4•41『线路13』 #EXTINF:-1 tvg-id="五星体育" tvg-name="五星体育" group-title="上海",五星体育 -https://stream1.freetv.fun/wu-xing-ti-yu-1.m3u8$LR•IPV4•41『线路14』 +http://home.wwang.pw:35455/itv/5000000010000017540.m3u8?cdn=bestzb$LR•IPV4•41『线路14』 #EXTINF:-1 tvg-id="五星体育" tvg-name="五星体育" group-title="上海",五星体育 -http://bp-livetytv.bestv.cn/ch/bestvwxty.m3u8$LR•IPV4•41『线路15』 +https://stream1.freetv.fun/wu-xing-ti-yu-1.m3u8$LR•IPV4•41『线路15』 #EXTINF:-1 tvg-id="五星体育" tvg-name="五星体育" group-title="上海",五星体育 -https://hls-gateway.vpstv.net/streams/636980.m3u8$LR•IPV4•41『线路16』 +http://bp-livetytv.bestv.cn/ch/bestvwxty.m3u8$LR•IPV4•41『线路16』 #EXTINF:-1 tvg-id="五星体育" tvg-name="五星体育" group-title="上海",五星体育 -https://stream1.freetv.fun/ipv6-wu-xing-ti-yu-14.m3u8$LR•IPV4•41『线路17』 +https://hls-gateway.vpstv.net/streams/636980.m3u8$LR•IPV4•41『线路17』 #EXTINF:-1 tvg-id="五星体育" tvg-name="五星体育" group-title="上海",五星体育 -http://36.105.100.208:35455/itv/5000000010000017540.m3u8?cdn=bestzb$LR•IPV4•41『线路18』 +https://stream1.freetv.fun/ipv6-wu-xing-ti-yu-14.m3u8$LR•IPV4•41『线路18』 #EXTINF:-1 tvg-id="五星体育" tvg-name="五星体育" group-title="上海",五星体育 -https://t.freetv.fun/live/wu-xing-ti-yu-4.m3u8$LR•IPV4•41『线路19』 +http://36.105.100.208:35455/itv/5000000010000017540.m3u8?cdn=bestzb$LR•IPV4•41『线路19』 #EXTINF:-1 tvg-id="五星体育" tvg-name="五星体育" group-title="上海",五星体育 -https://stream1.freetv.fun/wu-xing-ti-yu-6.m3u8$LR•IPV4•41『线路20』 +https://t.freetv.fun/live/wu-xing-ti-yu-4.m3u8$LR•IPV4•41『线路20』 #EXTINF:-1 tvg-id="五星体育" tvg-name="五星体育" group-title="上海",五星体育 -https://stream1.freetv.fun/wu-xing-ti-yu-13.m3u8$LR•IPV4•41『线路21』 +https://stream1.freetv.fun/wu-xing-ti-yu-6.m3u8$LR•IPV4•41『线路21』 #EXTINF:-1 tvg-id="五星体育" tvg-name="五星体育" group-title="上海",五星体育 -https://stream1.freetv.fun/ipv6-wu-xing-ti-yu-7.m3u8$LR•IPV4•41『线路22』 +https://stream1.freetv.fun/wu-xing-ti-yu-13.m3u8$LR•IPV4•41『线路22』 #EXTINF:-1 tvg-id="五星体育" tvg-name="五星体育" group-title="上海",五星体育 -https://stream1.freetv.fun/wu-xing-ti-yu-12.m3u8$LR•IPV4•41『线路23』 +https://stream1.freetv.fun/ipv6-wu-xing-ti-yu-7.m3u8$LR•IPV4•41『线路23』 #EXTINF:-1 tvg-id="五星体育" tvg-name="五星体育" group-title="上海",五星体育 -https://stream1.freetv.fun/wu-xing-ti-yu-15.m3u8$LR•IPV4•41『线路24』 +https://stream1.freetv.fun/wu-xing-ti-yu-12.m3u8$LR•IPV4•41『线路24』 #EXTINF:-1 tvg-id="五星体育" tvg-name="五星体育" group-title="上海",五星体育 -http://63.141.230.178:82/gslb/zbdq5.m3u8?id=wxtyhd$LR•IPV4•41『线路25』 +https://stream1.freetv.fun/wu-xing-ti-yu-15.m3u8$LR•IPV4•41『线路25』 #EXTINF:-1 tvg-id="五星体育" tvg-name="五星体育" group-title="上海",五星体育 -http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=4759&tk=7d4ad8f156e3$LR•IPV4•41『线路26』 +http://63.141.230.178:82/gslb/zbdq5.m3u8?id=wxtyhd$LR•IPV4•41『线路26』 #EXTINF:-1 tvg-id="五星体育" tvg-name="五星体育" group-title="上海",五星体育 -https://stream1.freetv.fun/wu-xing-ti-yu-10.m3u8$LR•IPV4•41『线路27』 +http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=4759&tk=7d4ad8f156e3$LR•IPV4•41『线路27』 #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•41『线路28』 +https://stream1.freetv.fun/wu-xing-ti-yu-10.m3u8$LR•IPV4•41『线路28』 #EXTINF:-1 tvg-id="五星体育" tvg-name="五星体育" group-title="上海",五星体育 -http://3501776.xyz:35455/itv/5000000010000017540.m3u8?cdn=bestzb$LR•IPV4•41『线路29』 +https://migu.188766.xyz/?migutoken=ed5a02a3b87f3dcc808d4b733daf5cf9&id=%E4%BA%94%E6%98%9F%E4%BD%93%E8%82%B2&pp=1$LR•IPV4•41『线路29』 #EXTINF:-1 tvg-id="五星体育" tvg-name="五星体育" group-title="上海",五星体育 -https://stream1.freetv.fun/wu-xing-ti-yu-2.m3u8$LR•IPV4•41『线路30』 +http://3501776.xyz:35455/itv/5000000010000017540.m3u8?cdn=bestzb$LR•IPV4•41『线路30』 #EXTINF:-1 tvg-id="五星体育" tvg-name="五星体育" group-title="上海",五星体育 -https://t.freetv.fun/live/wu-xing-ti-yu-1.m3u8$LR•IPV4•41『线路31』 +https://stream1.freetv.fun/wu-xing-ti-yu-2.m3u8$LR•IPV4•41『线路31』 #EXTINF:-1 tvg-id="五星体育" tvg-name="五星体育" group-title="上海",五星体育 -https://stream1.freetv.fun/wu-xing-ti-yu-8.m3u8$LR•IPV4•41『线路32』 +https://t.freetv.fun/live/wu-xing-ti-yu-1.m3u8$LR•IPV4•41『线路32』 #EXTINF:-1 tvg-id="五星体育" tvg-name="五星体育" group-title="上海",五星体育 -https://zby.130519.xyz/PLTV/11/224/3221225732/index.m3u8$LR•IPV4•41『线路33』 +https://stream1.freetv.fun/wu-xing-ti-yu-8.m3u8$LR•IPV4•41『线路33』 #EXTINF:-1 tvg-id="五星体育" tvg-name="五星体育" group-title="上海",五星体育 -http://live.xmcdn.com/live/57/64.m3u8$LR•IPV4•41『线路34』 +https://zby.130519.xyz/PLTV/11/224/3221225732/index.m3u8$LR•IPV4•41『线路34』 #EXTINF:-1 tvg-id="五星体育" tvg-name="五星体育" group-title="上海",五星体育 -https://stream1.freetv.fun/wu-xing-ti-yu-11.m3u8$LR•IPV4•41『线路35』 +http://live.xmcdn.com/live/57/64.m3u8$LR•IPV4•41『线路35』 #EXTINF:-1 tvg-id="五星体育" tvg-name="五星体育" group-title="上海",五星体育 -http://8.138.7.223/tv/shtv.php?id=wxty$LR•IPV4•41『线路36』 +https://stream1.freetv.fun/wu-xing-ti-yu-11.m3u8$LR•IPV4•41『线路36』 #EXTINF:-1 tvg-id="五星体育" tvg-name="五星体育" group-title="上海",五星体育 -https://stream1.freetv.fun/ipv6-wu-xing-ti-yu-10.m3u8$LR•IPV4•41『线路37』 +http://8.138.7.223/tv/shtv.php?id=wxty$LR•IPV4•41『线路37』 #EXTINF:-1 tvg-id="五星体育" tvg-name="五星体育" group-title="上海",五星体育 -https://stream1.freetv.fun/wu-xing-ti-yu-13.ctv$LR•IPV4•41『线路38』 +https://stream1.freetv.fun/ipv6-wu-xing-ti-yu-10.m3u8$LR•IPV4•41『线路38』 #EXTINF:-1 tvg-id="五星体育" tvg-name="五星体育" group-title="上海",五星体育 -http://api2.52tb.xyz/info?id=375&token=20230120rdbtgv$LR•IPV4•41『线路39』 +https://stream1.freetv.fun/wu-xing-ti-yu-13.ctv$LR•IPV4•41『线路39』 #EXTINF:-1 tvg-id="五星体育" tvg-name="五星体育" group-title="上海",五星体育 -https://stream1.freetv.fun/ipv6-wu-xing-ti-yu-8.m3u8$LR•IPV4•41『线路40』 +http://api2.52tb.xyz/info?id=375&token=20230120rdbtgv$LR•IPV4•41『线路40』 #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•41『线路41』 +https://stream1.freetv.fun/ipv6-wu-xing-ti-yu-8.m3u8$LR•IPV4•41『线路41』 #EXTINF:-1 tvg-id="东方影视" tvg-name="东方影视" group-title="上海",东方影视 -https://www.freetv.top/migu/617290047.m3u8?migutoken=86c02ad0875d5cc49d77bcc8bdb628f2c9d508ffc323b964a03c8f92dde4afafa0345cf5a8fefbdf915c748e3d11c6c18e27ae1e21a609cec31a45e6c437db26a7a243625f9cf35c271171a22c$LR•IPV4•31『线路1』 +http://t.061899.xyz/tl/tl.php?id=dfys$LR•IPV4•31『线路1』 #EXTINF:-1 tvg-id="东方影视" tvg-name="东方影视" group-title="上海",东方影视 -https://zby.130519.xyz/PLTV/11/224/3221225744/index.m3u8$LR•IPV4•31『线路2』 +https://www.freetv.top/migu/617290047.m3u8?migutoken=86c02ad0875d5cc49d77bcc8bdb628f2c9d508ffc323b964a03c8f92dde4afafa0345cf5a8fefbdf915c748e3d11c6c18e27ae1e21a609cec31a45e6c437db26a7a243625f9cf35c271171a22c$LR•IPV4•31『线路2』 #EXTINF:-1 tvg-id="东方影视" tvg-name="东方影视" group-title="上海",东方影视 -https://stream1.freetv.fun/dong-fang-ying-shi-4.ctv$LR•IPV4•31『线路3』 +https://zby.130519.xyz/PLTV/11/224/3221225744/index.m3u8$LR•IPV4•31『线路3』 #EXTINF:-1 tvg-id="东方影视" tvg-name="东方影视" group-title="上海",东方影视 -https://stream1.freetv.fun/dong-fang-ying-shi-6.ctv$LR•IPV4•31『线路4』 +https://stream1.freetv.fun/dong-fang-ying-shi-4.ctv$LR•IPV4•31『线路4』 #EXTINF:-1 tvg-id="东方影视" tvg-name="东方影视" group-title="上海",东方影视 -https://stream1.freetv.fun/dong-fang-ying-shi-2.m3u8$LR•IPV4•31『线路5』 +https://stream1.freetv.fun/dong-fang-ying-shi-6.ctv$LR•IPV4•31『线路5』 #EXTINF:-1 tvg-id="东方影视" tvg-name="东方影视" group-title="上海",东方影视 -https://stream1.freetv.fun/dong-fang-ying-shi-1.m3u8$LR•IPV4•31『线路6』 +https://stream1.freetv.fun/dong-fang-ying-shi-2.m3u8$LR•IPV4•31『线路6』 #EXTINF:-1 tvg-id="东方影视" tvg-name="东方影视" group-title="上海",东方影视 -https://stream1.freetv.fun/dong-fang-ying-shi-6.m3u8$LR•IPV4•31『线路7』 +https://stream1.freetv.fun/dong-fang-ying-shi-1.m3u8$LR•IPV4•31『线路7』 #EXTINF:-1 tvg-id="东方影视" tvg-name="东方影视" group-title="上海",东方影视 -https://stream1.freetv.fun/ipv6-dong-fang-ying-shi-13.m3u8$LR•IPV4•31『线路8』 +https://stream1.freetv.fun/dong-fang-ying-shi-6.m3u8$LR•IPV4•31『线路8』 #EXTINF:-1 tvg-id="东方影视" tvg-name="东方影视" group-title="上海",东方影视 -http://111.228.4.117:6789/migu720p.php?id=617290047$LR•IPV4•31『线路9』 +https://stream1.freetv.fun/ipv6-dong-fang-ying-shi-13.m3u8$LR•IPV4•31『线路9』 #EXTINF:-1 tvg-id="东方影视" tvg-name="东方影视" group-title="上海",东方影视 -https://stream1.freetv.fun/dong-fang-ying-shi-10.m3u8$LR•IPV4•31『线路10』 +http://111.228.4.117:6789/migu720p.php?id=617290047$LR•IPV4•31『线路10』 #EXTINF:-1 tvg-id="东方影视" tvg-name="东方影视" group-title="上海",东方影视 -https://stream1.freetv.fun/dong-fang-ying-shi-7.m3u8$LR•IPV4•31『线路11』 +https://stream1.freetv.fun/dong-fang-ying-shi-10.m3u8$LR•IPV4•31『线路11』 #EXTINF:-1 tvg-id="东方影视" tvg-name="东方影视" group-title="上海",东方影视 -http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=2690&tk=e640d0a1bf70$LR•IPV4•31『线路12』 +https://stream1.freetv.fun/dong-fang-ying-shi-7.m3u8$LR•IPV4•31『线路12』 #EXTINF:-1 tvg-id="东方影视" tvg-name="东方影视" group-title="上海",东方影视 -https://stream1.freetv.fun/dong-fang-ying-shi-13.m3u8$LR•IPV4•31『线路13』 +http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=2690&tk=e640d0a1bf70$LR•IPV4•31『线路13』 #EXTINF:-1 tvg-id="东方影视" tvg-name="东方影视" group-title="上海",东方影视 -https://stream1.freetv.fun/ipv6-dong-fang-ying-shi-5.m3u8$LR•IPV4•31『线路14』 +https://stream1.freetv.fun/dong-fang-ying-shi-13.m3u8$LR•IPV4•31『线路14』 #EXTINF:-1 tvg-id="东方影视" tvg-name="东方影视" group-title="上海",东方影视 -http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=1407&tk=e503191f8e20$LR•IPV4•31『线路15』 +https://stream1.freetv.fun/ipv6-dong-fang-ying-shi-5.m3u8$LR•IPV4•31『线路15』 #EXTINF:-1 tvg-id="东方影视" tvg-name="东方影视" group-title="上海",东方影视 -https://stream1.freetv.fun/ipv6-dong-fang-ying-shi-6.m3u8$LR•IPV4•31『线路16』 +http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=1407&tk=e503191f8e20$LR•IPV4•31『线路16』 #EXTINF:-1 tvg-id="东方影视" tvg-name="东方影视" group-title="上海",东方影视 -https://stream1.freetv.fun/dong-fang-ying-shi-12.m3u8$LR•IPV4•31『线路17』 +https://stream1.freetv.fun/ipv6-dong-fang-ying-shi-6.m3u8$LR•IPV4•31『线路17』 #EXTINF:-1 tvg-id="东方影视" tvg-name="东方影视" group-title="上海",东方影视 -https://stream1.freetv.fun/ipv6-dong-fang-ying-shi-4.m3u8$LR•IPV4•31『线路18』 +https://stream1.freetv.fun/dong-fang-ying-shi-12.m3u8$LR•IPV4•31『线路18』 #EXTINF:-1 tvg-id="东方影视" tvg-name="东方影视" group-title="上海",东方影视 -https://stream1.freetv.fun/ipv6-dong-fang-ying-shi-9.m3u8$LR•IPV4•31『线路19』 +https://stream1.freetv.fun/ipv6-dong-fang-ying-shi-4.m3u8$LR•IPV4•31『线路19』 #EXTINF:-1 tvg-id="东方影视" tvg-name="东方影视" group-title="上海",东方影视 -http://111.22.153.159:35455/itv/5000000010000032212.m3u8?cdn=bestzb$LR•IPV4•31『线路20』 +https://stream1.freetv.fun/ipv6-dong-fang-ying-shi-9.m3u8$LR•IPV4•31『线路20』 #EXTINF:-1 tvg-id="东方影视" tvg-name="东方影视" group-title="上海",东方影视 -https://stream1.freetv.fun/ipv6-dong-fang-ying-shi-7.m3u8$LR•IPV4•31『线路21』 +http://111.22.153.159:35455/itv/5000000010000032212.m3u8?cdn=bestzb$LR•IPV4•31『线路21』 #EXTINF:-1 tvg-id="东方影视" tvg-name="东方影视" group-title="上海",东方影视 -http://150.158.112.123/公众号~玉玉软件库/mg.php?id=dfys$LR•IPV4•31『线路22』 +https://stream1.freetv.fun/ipv6-dong-fang-ying-shi-7.m3u8$LR•IPV4•31『线路22』 #EXTINF:-1 tvg-id="东方影视" tvg-name="东方影视" group-title="上海",东方影视 -http://hlsztemgsplive.miguvideo.com:8080/wd_r4/dfl/dianshijuhd/1200/index.m3u8?msisdn=2be6b2ec9fcf10d2c2457e2c710e172c&mdspid=&spid=699212&netType=0&sid=5500002274&pid=2028597139×tamp=20260717060205&Channel_ID=0116_2600034600-99000-201600010010028&ProgramID=617290047&ParentNodeID=-99&assertID=5500002274&client_ip=171.8.79.254&SecurityKey=20260717060205&promotionId=&mvid=5100001715&mcid=500020&playurlVersion=WX-A1-9.6.1.6-SNAPSHOT&userid=&jmhm=&videocodec=h264&appCode=miguvideo_android&bean=mgspad&tid=android&conFee=0&encrypt=c4b980e210525d128eccf975001aa253&sv=10004&ct=android$LR•IPV4•31『线路23』 +http://150.158.112.123/公众号~玉玉软件库/mg.php?id=dfys$LR•IPV4•31『线路23』 #EXTINF:-1 tvg-id="东方影视" tvg-name="东方影视" group-title="上海",东方影视 -http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=6090&tk=b53028476470$LR•IPV4•31『线路24』 +http://hlsztemgsplive.miguvideo.com:8080/wd_r4/dfl/dianshijuhd/1200/index.m3u8?msisdn=2be6b2ec9fcf10d2c2457e2c710e172c&mdspid=&spid=699212&netType=0&sid=5500002274&pid=2028597139×tamp=20260717060205&Channel_ID=0116_2600034600-99000-201600010010028&ProgramID=617290047&ParentNodeID=-99&assertID=5500002274&client_ip=171.8.79.254&SecurityKey=20260717060205&promotionId=&mvid=5100001715&mcid=500020&playurlVersion=WX-A1-9.6.1.6-SNAPSHOT&userid=&jmhm=&videocodec=h264&appCode=miguvideo_android&bean=mgspad&tid=android&conFee=0&encrypt=c4b980e210525d128eccf975001aa253&sv=10004&ct=android$LR•IPV4•31『线路24』 #EXTINF:-1 tvg-id="东方影视" tvg-name="东方影视" group-title="上海",东方影视 -https://stream1.freetv.fun/ipv6-dong-fang-ying-shi-3.m3u8$LR•IPV4•31『线路25』 +http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=6090&tk=b53028476470$LR•IPV4•31『线路25』 #EXTINF:-1 tvg-id="东方影视" tvg-name="东方影视" group-title="上海",东方影视 -https://stream1.freetv.fun/ipv6-dong-fang-ying-shi-2.m3u8$LR•IPV4•31『线路26』 +https://stream1.freetv.fun/ipv6-dong-fang-ying-shi-3.m3u8$LR•IPV4•31『线路26』 #EXTINF:-1 tvg-id="东方影视" tvg-name="东方影视" group-title="上海",东方影视 -http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=1285&tk=2aca1ad9a849$LR•IPV4•31『线路27』 +https://stream1.freetv.fun/ipv6-dong-fang-ying-shi-2.m3u8$LR•IPV4•31『线路27』 #EXTINF:-1 tvg-id="东方影视" tvg-name="东方影视" group-title="上海",东方影视 -https://stream1.freetv.fun/dong-fang-ying-shi-8.m3u8$LR•IPV4•31『线路28』 +http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=1285&tk=2aca1ad9a849$LR•IPV4•31『线路28』 #EXTINF:-1 tvg-id="东方影视" tvg-name="东方影视" group-title="上海",东方影视 -https://stream1.freetv.fun/ipv6-dong-fang-ying-shi-8.m3u8$LR•IPV4•31『线路29』 +https://stream1.freetv.fun/dong-fang-ying-shi-8.m3u8$LR•IPV4•31『线路29』 #EXTINF:-1 tvg-id="东方影视" tvg-name="东方影视" group-title="上海",东方影视 -http://t.061899.xyz/tl/tl.php?id=dfys$LR•IPV4•31『线路30』 +https://stream1.freetv.fun/ipv6-dong-fang-ying-shi-8.m3u8$LR•IPV4•31『线路30』 #EXTINF:-1 tvg-id="东方影视" tvg-name="东方影视" group-title="上海",东方影视 http://43.251.226.89:8080/play/58.m3u8$LR•IPV4•31『线路31』 #EXTINF:-1 tvg-id="东方财经" tvg-name="东方财经" group-title="上海",东方财经 @@ -5637,76 +5653,78 @@ http://111.22.153.159:35455/itv/5000000007000010003.m3u8?cdn=bestzb$LR•IPV4• http://61.133.118.228:5001/douyu/9548279$LR•IPV4•10『线路9』 #EXTINF:-1 tvg-id="东方财经" tvg-name="东方财经" group-title="上海",东方财经 https://live.264788.xyz/channel/dongfangcaijing?streamid=a031f2386ada4bc1264edce79c80dd18&livekey=01WgOR41rriMmMkzNsd0UoaxJRwetZdxIvtVk$LR•IPV4•10『线路10』 +#EXTINF:-1 tvg-id="法治天地" tvg-name="法治天地" group-title="上海",法治天地 +http://t.061899.xyz/tl/tl.php?id=fztd$LR•IPV4 #EXTINF:-1 tvg-id="第一财经" tvg-name="第一财经" group-title="上海",第一财经 -https://migu.188766.xyz/?migutoken=20bb1a06124bd6ea328162fe9605882d&id=dycj&type=sz$LR•IPV4•49『线路1』 +http://t.061899.xyz/tl/tl.php?id=dycj$LR•IPV4•49『线路1』 #EXTINF:-1 tvg-id="第一财经" tvg-name="第一财经" group-title="上海",第一财经 -https://stream1.freetv.fun/ipv6-di-yi-cai-jing-6.m3u8$LR•IPV4•49『线路2』 +https://migu.188766.xyz/?migutoken=20bb1a06124bd6ea328162fe9605882d&id=dycj&type=sz$LR•IPV4•49『线路2』 #EXTINF:-1 tvg-id="第一财经" tvg-name="第一财经" group-title="上海",第一财经 -http://a1live.livecdn.yicai.com/live/radio_tv.m3u8$LR•IPV4•49『线路3』 +https://stream1.freetv.fun/ipv6-di-yi-cai-jing-6.m3u8$LR•IPV4•49『线路3』 #EXTINF:-1 tvg-id="第一财经" tvg-name="第一财经" group-title="上海",第一财经 -http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=4663&tk=f6cc1e0a0e1a$LR•IPV4•49『线路4』 +http://a1live.livecdn.yicai.com/live/radio_tv.m3u8$LR•IPV4•49『线路4』 #EXTINF:-1 tvg-id="第一财经" tvg-name="第一财经" group-title="上海",第一财经 -http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=4640&tk=e503191f8e20$LR•IPV4•49『线路5』 +http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=4663&tk=f6cc1e0a0e1a$LR•IPV4•49『线路5』 #EXTINF:-1 tvg-id="第一财经" tvg-name="第一财经" group-title="上海",第一财经 -http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=7436&tk=b53028476470$LR•IPV4•49『线路6』 +http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=4640&tk=e503191f8e20$LR•IPV4•49『线路6』 #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•49『线路7』 +http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=7436&tk=b53028476470$LR•IPV4•49『线路7』 #EXTINF:-1 tvg-id="第一财经" tvg-name="第一财经" group-title="上海",第一财经 -https://stream1.freetv.fun/di-yi-cai-jing-3.m3u8$LR•IPV4•49『线路8』 +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•49『线路8』 #EXTINF:-1 tvg-id="第一财经" tvg-name="第一财经" group-title="上海",第一财经 -http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=4810&tk=23a9aca1f79f$LR•IPV4•49『线路9』 +https://stream1.freetv.fun/di-yi-cai-jing-3.m3u8$LR•IPV4•49『线路9』 #EXTINF:-1 tvg-id="第一财经" tvg-name="第一财经" group-title="上海",第一财经 -http://43.251.226.89:8080/play/59.m3u8$LR•IPV4•49『线路10』 +http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=4810&tk=23a9aca1f79f$LR•IPV4•49『线路10』 #EXTINF:-1 tvg-id="第一财经" tvg-name="第一财经" group-title="上海",第一财经 -https://www.freetv.top/migu/608780988.m3u8?migutoken=62e21890acbd9928d0be0b4eae9f5e32e1879604b785ee7ce8751d5001a9ff431d7714025aa03d48a2b190ff214e5115dcb6ba455c3d26b1db0f5b3cb49c5967429ff3b1fe8e96e87cc6146543$LR•IPV4•49『线路11』 +http://43.251.226.89:8080/play/59.m3u8$LR•IPV4•49『线路11』 #EXTINF:-1 tvg-id="第一财经" tvg-name="第一财经" group-title="上海",第一财经 -https://stream1.freetv.fun/di-yi-cai-jing-6.ctv$LR•IPV4•49『线路12』 +https://www.freetv.top/migu/608780988.m3u8?migutoken=62e21890acbd9928d0be0b4eae9f5e32e1879604b785ee7ce8751d5001a9ff431d7714025aa03d48a2b190ff214e5115dcb6ba455c3d26b1db0f5b3cb49c5967429ff3b1fe8e96e87cc6146543$LR•IPV4•49『线路12』 #EXTINF:-1 tvg-id="第一财经" tvg-name="第一财经" group-title="上海",第一财经 -https://satellitepull.cnr.cn/live/wx32dycjgb/playlist.m3u8$LR•IPV4•49『线路13』 +https://stream1.freetv.fun/di-yi-cai-jing-6.ctv$LR•IPV4•49『线路13』 #EXTINF:-1 tvg-id="第一财经" tvg-name="第一财经" group-title="上海",第一财经 -https://stream1.freetv.fun/di-yi-cai-jing-10.m3u8$LR•IPV4•49『线路14』 +https://satellitepull.cnr.cn/live/wx32dycjgb/playlist.m3u8$LR•IPV4•49『线路14』 #EXTINF:-1 tvg-id="第一财经" tvg-name="第一财经" group-title="上海",第一财经 -https://stream1.freetv.fun/ipv6-di-yi-cai-jing-3.m3u8$LR•IPV4•49『线路15』 +https://stream1.freetv.fun/di-yi-cai-jing-10.m3u8$LR•IPV4•49『线路15』 #EXTINF:-1 tvg-id="第一财经" tvg-name="第一财经" group-title="上海",第一财经 -https://hls-gateway.vpstv.net/streams/708851.m3u8$LR•IPV4•49『线路16』 +https://stream1.freetv.fun/ipv6-di-yi-cai-jing-3.m3u8$LR•IPV4•49『线路16』 #EXTINF:-1 tvg-id="第一财经" tvg-name="第一财经" group-title="上海",第一财经 -https://stream1.freetv.fun/di-yi-cai-jing-9.m3u8$LR•IPV4•49『线路17』 +https://hls-gateway.vpstv.net/streams/708851.m3u8$LR•IPV4•49『线路17』 #EXTINF:-1 tvg-id="第一财经" tvg-name="第一财经" group-title="上海",第一财经 -http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=8321&tk=e640d0a1bf70$LR•IPV4•49『线路18』 +https://stream1.freetv.fun/di-yi-cai-jing-9.m3u8$LR•IPV4•49『线路18』 #EXTINF:-1 tvg-id="第一财经" tvg-name="第一财经" group-title="上海",第一财经 -http://47.104.178.59:3566/608780988$LR•IPV4•49『线路19』 +http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=8321&tk=e640d0a1bf70$LR•IPV4•49『线路19』 #EXTINF:-1 tvg-id="第一财经" tvg-name="第一财经" group-title="上海",第一财经 -http://satellitepull.cnr.cn/live/wx32dycjgb/playlist.m3u8$LR•IPV4•49『线路20』 +http://47.104.178.59:3566/608780988$LR•IPV4•49『线路20』 #EXTINF:-1 tvg-id="第一财经" tvg-name="第一财经" group-title="上海",第一财经 -https://stream1.freetv.fun/ipv6-di-yi-cai-jing-11.m3u8$LR•IPV4•49『线路21』 +http://satellitepull.cnr.cn/live/wx32dycjgb/playlist.m3u8$LR•IPV4•49『线路21』 #EXTINF:-1 tvg-id="第一财经" tvg-name="第一财经" group-title="上海",第一财经 -https://mgtv.ottiptv.cc/migu/608780988.m3u8?migutoken=0c7df30d952e5d120406d3eb259cd5e26ec6aa86037008719de147cc6fbc34e877c3e3d7b9617267f35521bdddc4c5995e6fc0583816a5df1bfe19814868525e736733676761a4b2d4db618e84$LR•IPV4•49『线路22』 +https://stream1.freetv.fun/ipv6-di-yi-cai-jing-11.m3u8$LR•IPV4•49『线路22』 #EXTINF:-1 tvg-id="第一财经" tvg-name="第一财经" group-title="上海",第一财经 -http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=0917&tk=2aca1ad9a849$LR•IPV4•49『线路23』 +https://mgtv.ottiptv.cc/migu/608780988.m3u8?migutoken=0c7df30d952e5d120406d3eb259cd5e26ec6aa86037008719de147cc6fbc34e877c3e3d7b9617267f35521bdddc4c5995e6fc0583816a5df1bfe19814868525e736733676761a4b2d4db618e84$LR•IPV4•49『线路23』 #EXTINF:-1 tvg-id="第一财经" tvg-name="第一财经" group-title="上海",第一财经 -http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=6806&tk=a0c4f6cfaba3$LR•IPV4•49『线路24』 +http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=0917&tk=2aca1ad9a849$LR•IPV4•49『线路24』 #EXTINF:-1 tvg-id="第一财经" tvg-name="第一财经" group-title="上海",第一财经 -https://stream1.freetv.fun/di-yi-cai-jing-7.m3u8$LR•IPV4•49『线路25』 +http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=6806&tk=a0c4f6cfaba3$LR•IPV4•49『线路25』 #EXTINF:-1 tvg-id="第一财经" tvg-name="第一财经" group-title="上海",第一财经 -https://stream1.freetv.fun/di-yi-cai-jing-13.m3u8$LR•IPV4•49『线路26』 +https://stream1.freetv.fun/di-yi-cai-jing-7.m3u8$LR•IPV4•49『线路26』 #EXTINF:-1 tvg-id="第一财经" tvg-name="第一财经" group-title="上海",第一财经 -http://101.43.145.141:12002/itv/5000000010000027146.m3u8?cdn=bestzb$LR•IPV4•49『线路27』 +https://stream1.freetv.fun/di-yi-cai-jing-13.m3u8$LR•IPV4•49『线路27』 #EXTINF:-1 tvg-id="第一财经" tvg-name="第一财经" group-title="上海",第一财经 -http://123.113.205.253:3000/608780988$LR•IPV4•49『线路28』 +http://101.43.145.141:12002/itv/5000000010000027146.m3u8?cdn=bestzb$LR•IPV4•49『线路28』 #EXTINF:-1 tvg-id="第一财经" tvg-name="第一财经" group-title="上海",第一财经 -https://zby.130519.xyz/PLTV/11/224/3221225737/index.m3u8$LR•IPV4•49『线路29』 +http://123.113.205.253:3000/608780988$LR•IPV4•49『线路29』 #EXTINF:-1 tvg-id="第一财经" tvg-name="第一财经" group-title="上海",第一财经 -http://111.228.4.117:6789/migu720p.php?id=608780988$LR•IPV4•49『线路30』 +https://zby.130519.xyz/PLTV/11/224/3221225737/index.m3u8$LR•IPV4•49『线路30』 #EXTINF:-1 tvg-id="第一财经" tvg-name="第一财经" group-title="上海",第一财经 -http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=0771&tk=a0c4f6cfaba3$LR•IPV4•49『线路31』 +http://111.228.4.117:6789/migu720p.php?id=608780988$LR•IPV4•49『线路31』 #EXTINF:-1 tvg-id="第一财经" tvg-name="第一财经" group-title="上海",第一财经 -http://bp-livetytv.bestv.cn/ch/bestvdycj.m3u8$LR•IPV4•49『线路32』 +http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=0771&tk=a0c4f6cfaba3$LR•IPV4•49『线路32』 #EXTINF:-1 tvg-id="第一财经" tvg-name="第一财经" group-title="上海",第一财经 -https://stream1.freetv.fun/di-yi-cai-jing-2.m3u8$LR•IPV4•49『线路33』 +http://bp-livetytv.bestv.cn/ch/bestvdycj.m3u8$LR•IPV4•49『线路33』 #EXTINF:-1 tvg-id="第一财经" tvg-name="第一财经" group-title="上海",第一财经 -https://www.freetv.top/migu/608780988.m3u8?migutoken=94882e783c75b9369ca6a018f97fe3a3c0018f9da123958e316bb810ef22e907f0672a7d63496e5cb5041eb125b1f1ee6996ac856b0c0c9828348878b8a4101384b9a851fb1dea60a7fafeea35$LR•IPV4•49『线路34』 +https://stream1.freetv.fun/di-yi-cai-jing-2.m3u8$LR•IPV4•49『线路34』 #EXTINF:-1 tvg-id="第一财经" tvg-name="第一财经" group-title="上海",第一财经 -http://t.061899.xyz/tl/tl.php?id=dycj$LR•IPV4•49『线路35』 +https://www.freetv.top/migu/608780988.m3u8?migutoken=94882e783c75b9369ca6a018f97fe3a3c0018f9da123958e316bb810ef22e907f0672a7d63496e5cb5041eb125b1f1ee6996ac856b0c0c9828348878b8a4101384b9a851fb1dea60a7fafeea35$LR•IPV4•49『线路35』 #EXTINF:-1 tvg-id="第一财经" tvg-name="第一财经" group-title="上海",第一财经 https://stream1.freetv.fun/ipv6-di-yi-cai-jing-5.m3u8$LR•IPV4•49『线路36』 #EXTINF:-1 tvg-id="第一财经" tvg-name="第一财经" group-title="上海",第一财经 @@ -5758,293 +5776,293 @@ http://wouu.net:9977/udp/239.93.1.137:5140$LR•IPV4•10『线路10』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 http://l.cztvcloud.com/channels/lantian/SXshengzhou1/720p.m3u8?zzhed#http://l.cztvcloud.com/channels/lantian/SXshengzhou1/720p.m3u8$LR•IPV4•115『线路1』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -https://stream1.freetv.fun/ipv6-ji-nan-xin-wen-zong-he-8.m3u8$LR•IPV4•115『线路2』 +https://stream2.jlntv.cn/baicheng1/sd/live.m3u8$LR•IPV4•115『线路2』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -https://stream1.freetv.fun/ji-nan-xin-wen-zong-he-7.m3u8$LR•IPV4•115『线路3』 +http://live.cztv.cc:85/live/xwpd.m3u8$LR•IPV4•115『线路3』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -http://stream.zztvzd.com/1/sd/live.m3u8$LR•IPV4•115『线路4』 +http://117.156.28.119/270000001111/1110000001/index.m3u8$LR•IPV4•115『线路4』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -http://stream.zztvzd.com/1/sd/live.m3u8?shandd$LR•IPV4•115『线路5』 +http://pili-live-hls.hebitv.com/hebi/hebi.m3u8$LR•IPV4•115『线路5』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -https://stream1.freetv.fun/ipv6-wei-fang-xin-wen-zong-he-1.m3u8$LR•IPV4•115『线路6』 +https://stream2.jlntv.cn/naxw/sd/live.m3u8$LR•IPV4•115『线路6』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -https://stream1.freetv.fun/ipv6-wei-fang-xin-wen-zong-he-2.m3u8$LR•IPV4•115『线路7』 +http://uni6rtmp.tulix.tv:1935/vbstv/vbsabr.smil/chunklist_w439903609_b1228800.m3u8$LR•IPV4•115『线路7』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -http://live.yantaitv.cn/live/3e81a8879da44c5dadf3bd9c10468e1c/9b776d420ee4438199b7657c8eb88f07-1.m3u8$LR•IPV4•115『线路8』 +http://221.5.213.4:30000/1111.m3u8$LR•IPV4•115『线路8』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -http://live.hznet.tv:1935/live/live1/500k/tzwj_video.m3u8$LR•IPV4•115『线路9』 +https://stream2.jlntv.cn/jilin1/sd/live.m3u8$LR•IPV4•115『线路9』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -http://live.hznet.tv:1935/live/live1/500K/tzwj_video.m3u8?shandd$LR•IPV4•115『线路10』 +http://30515.hlsplay.aodianyun.com/lms_30515/tv_channel_239.m3u8$LR•IPV4•115『线路10』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -http://live.wanyuannews.com/wytv/hd/live.m3u8?zsicd$LR•IPV4•115『线路11』 +https://stream2.jlntv.cn/sptv/sd/live.m3u8$LR•IPV4•115『线路11』 #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•115『线路12』 +http://live.ahsz.tv/video/s10001-szzh/index.m3u8$LR•IPV4•115『线路12』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -https://stream1.freetv.fun/xin-wen-zong-he-9.m3u8$LR•IPV4•115『线路13』 +http://guangshui.live.tempsource.cjyun.org/videotmp/s10146-GSXW.m3u8$LR•IPV4•115『线路13』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -http://150.158.112.123/公众号~玉玉软件库/mg.php?id=shxwzh$LR•IPV4•115『线路14』 +https://stream2.jlntv.cn/jlyb/sd/live.m3u8$LR•IPV4•115『线路14』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -https://stream1.freetv.fun/shang-hai-xin-wen-zong-he-3.m3u8$LR•IPV4•115『线路15』 +https://stream2.jlntv.cn/sytv/sd/live.m3u8$LR•IPV4•115『线路15』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -https://stream1.freetv.fun/xin-wen-zong-he-13.m3u8$LR•IPV4•115『线路16』 +http://222.179.155.21:1935/ch1.m3u8$LR•IPV4•115『线路16』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -http://43.251.226.89:8080/play/57.m3u8$LR•IPV4•115『线路17』 +http://117.172.215.250:8083/videos/live/35/39/GQVbrgob5CGJM/GQVbrgob5CGJM.m3u8$LR•IPV4•115『线路17』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -http://t.061899.xyz/tl/tl.php?id=shxwzh$LR•IPV4•115『线路18』 +http://220.180.110.101:8083/videos/live/36/57/hwEHU4UVQ1Iv5/hwEHU4UVQ1Iv5.m3u8$LR•IPV4•115『线路18』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=2810&tk=a0c4f6cfaba3$LR•IPV4•115『线路19』 +http://live.hnxttv.com:9601/live/xwzh/800K/tzwj_video.m3u8$LR•IPV4•115『线路19』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -http://123.113.205.253:3000/651632657$LR•IPV4•115『线路20』 +http://stream.bzcm.net/2/sd/live.m3u8$LR•IPV4•115『线路20』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -https://live.pzhkai.com/xwzhtl/sd/live.m3u8$LR•IPV4•115『线路21』 +http://117.156.28.119/270000001111/1110000145/index.m3u8$LR•IPV4•115『线路21』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -https://stream1.freetv.fun/xin-wen-zong-he-14.m3u8$LR•IPV4•115『线路22』 +https://stream2.jlntv.cn/baishan1/sd/live.m3u8$LR•IPV4•115『线路22』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -https://stream1.freetv.fun/ipv6-xin-wen-zong-he-14.m3u8$LR•IPV4•115『线路23』 +http://live1.wuhubtv.com/channel1/sd/live.m3u8$LR•IPV4•115『线路23』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -http://tvpull.dxhmt.cn:9081/tv/10326-1.m3u8$LR•IPV4•115『线路24』 +http://palive.patv123.com:8091/live/xwpd_800K.m3u8$LR•IPV4•115『线路24』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -https://stream1.freetv.fun/shang-hai-xin-wen-zong-he-10.m3u8$LR•IPV4•115『线路25』 +https://stream2.jlntv.cn/liaoyuan1/sd/live.m3u8$LR•IPV4•115『线路25』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -https://stream1.freetv.fun/shang-hai-xin-wen-zong-he-1.m3u8$LR•IPV4•115『线路26』 +https://stream1.freetv.fun/ipv6-ji-nan-xin-wen-zong-he-8.m3u8$LR•IPV4•115『线路26』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -http://api2.52tb.xyz/info?id=371&token=20230218qkyjia$LR•IPV4•115『线路27』 +https://stream1.freetv.fun/ji-nan-xin-wen-zong-he-7.m3u8$LR•IPV4•115『线路27』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -https://zby.130519.xyz/PLTV/11/224/3221226136/index.m3u8$LR•IPV4•115『线路28』 +http://stream.zztvzd.com/1/sd/live.m3u8$LR•IPV4•115『线路28』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -https://m3u8-channel.lytv.tv/nmip-media/channellive/channel111841/playlist.m3u8$LR•IPV4•115『线路29』 +http://stream.zztvzd.com/1/sd/live.m3u8?shandd$LR•IPV4•115『线路29』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -https://stream1.freetv.fun/shang-hai-xin-wen-zong-he-12.m3u8$LR•IPV4•115『线路30』 +https://stream1.freetv.fun/ipv6-wei-fang-xin-wen-zong-he-1.m3u8$LR•IPV4•115『线路30』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=2394&tk=e503191f8e20$LR•IPV4•115『线路31』 +https://stream1.freetv.fun/ipv6-wei-fang-xin-wen-zong-he-2.m3u8$LR•IPV4•115『线路31』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -https://stream1.freetv.fun/xin-wen-zong-he-11.ctv$LR•IPV4•115『线路32』 +http://live.yantaitv.cn/live/3e81a8879da44c5dadf3bd9c10468e1c/9b776d420ee4438199b7657c8eb88f07-1.m3u8$LR•IPV4•115『线路32』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=0708&tk=23a9aca1f79f$LR•IPV4•115『线路33』 +http://live.hznet.tv:1935/live/live1/500k/tzwj_video.m3u8$LR•IPV4•115『线路33』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=5985&tk=e640d0a1bf70$LR•IPV4•115『线路34』 +http://live.hznet.tv:1935/live/live1/500K/tzwj_video.m3u8?shandd$LR•IPV4•115『线路34』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -https://stream1.freetv.fun/xin-wen-zong-he-5.m3u8$LR•IPV4•115『线路35』 +http://live.wanyuannews.com/wytv/hd/live.m3u8?zsicd$LR•IPV4•115『线路35』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=5014&tk=a0c4f6cfaba3$LR•IPV4•115『线路36』 +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•115『线路36』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -https://mgtv.ottiptv.cc/migu/651632657.m3u8?migutoken=348c9164063c2b1df215dd2fa7cd92cb119d8a335ae0edfb5d615a6c714e71b669eee2f5ff1730afa92af7ca41d0aa96e3a280d7e5f2069eb8a3b852f3ebc270147489d7c8bfb08a7c4b9c4d80$LR•IPV4•115『线路37』 +https://stream1.freetv.fun/xin-wen-zong-he-9.m3u8$LR•IPV4•115『线路37』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -https://stream1.freetv.fun/shang-hai-xin-wen-zong-he-2.m3u8$LR•IPV4•115『线路38』 +http://150.158.112.123/公众号~玉玉软件库/mg.php?id=shxwzh$LR•IPV4•115『线路38』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -http://p2.vzan.com/slowlive/596867413819827251/live.m3u8$LR•IPV4•115『线路39』 +https://stream1.freetv.fun/shang-hai-xin-wen-zong-he-3.m3u8$LR•IPV4•115『线路39』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -https://www.freetv.top/migu/651632657.m3u8?migutoken=5ae42e8fda034ab7bf5171dafa0043e70cd12bcd716940c4572fde52ea92b0785f16f1bdbce4c83f5e075b250fe95668f19f8527dda57c27db24f95d412614d99c86a3a2d9341d88b5224b7068$LR•IPV4•115『线路40』 +https://stream1.freetv.fun/xin-wen-zong-he-13.m3u8$LR•IPV4•115『线路40』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -https://qcfile.qcrmt.com/nmip-media/channellive/channel100933/playlist.m3u8$LR•IPV4•115『线路41』 +http://43.251.226.89:8080/play/57.m3u8$LR•IPV4•115『线路41』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -https://stream1.freetv.fun/xin-wen-zong-he-2.m3u8$LR•IPV4•115『线路42』 +http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=2810&tk=a0c4f6cfaba3$LR•IPV4•115『线路42』 #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•115『线路43』 +http://123.113.205.253:3000/651632657$LR•IPV4•115『线路43』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -https://stream1.freetv.fun/ipv6-shang-hai-xin-wen-zong-he-7.m3u8$LR•IPV4•115『线路44』 +https://live.pzhkai.com/xwzhtl/sd/live.m3u8$LR•IPV4•115『线路44』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -https://hls-gateway.vpstv.net/streams/708847.m3u8$LR•IPV4•115『线路45』 +https://stream1.freetv.fun/xin-wen-zong-he-14.m3u8$LR•IPV4•115『线路45』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -http://api3.52tb.xyz/info?id=371&token=20221127jxwhhemby$LR•IPV4•115『线路46』 +https://stream1.freetv.fun/ipv6-xin-wen-zong-he-14.m3u8$LR•IPV4•115『线路46』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -https://stream1.freetv.fun/xin-wen-zong-he-1.ctv$LR•IPV4•115『线路47』 +http://tvpull.dxhmt.cn:9081/tv/10326-1.m3u8$LR•IPV4•115『线路47』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -http://115.190.247.176:1111/651632657$LR•IPV4•115『线路48』 +https://stream1.freetv.fun/shang-hai-xin-wen-zong-he-10.m3u8$LR•IPV4•115『线路48』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -https://stream1.freetv.fun/ipv6-shang-hai-xin-wen-zong-he-2.m3u8$LR•IPV4•115『线路49』 +https://stream1.freetv.fun/shang-hai-xin-wen-zong-he-1.m3u8$LR•IPV4•115『线路49』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -https://xatv-yt.xiancity.cn/live/1/index.m3u8$LR•IPV4•115『线路50』 +http://api2.52tb.xyz/info?id=371&token=20230218qkyjia$LR•IPV4•115『线路50』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -https://stream1.freetv.fun/ipv6-xin-wen-zong-he-7.m3u8$LR•IPV4•115『线路51』 +https://zby.130519.xyz/PLTV/11/224/3221226136/index.m3u8$LR•IPV4•115『线路51』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=5599&tk=2aca1ad9a849$LR•IPV4•115『线路52』 +https://m3u8-channel.lytv.tv/nmip-media/channellive/channel111841/playlist.m3u8$LR•IPV4•115『线路52』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -https://stream1.freetv.fun/xin-wen-zong-he-3.m3u8$LR•IPV4•115『线路53』 +https://stream1.freetv.fun/shang-hai-xin-wen-zong-he-12.m3u8$LR•IPV4•115『线路53』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -http://hlsztemgsplive.miguvideo.com:8080/migu/kailu/xwzhhd265/54/20200407/index.m3u8?msisdn=2be6b2ec9fcf10d2c2457e2c710e172c&mdspid=&spid=600697&netType=0&sid=5910022325&pid=2028597139×tamp=20260717080210&Channel_ID=0116_2600034600-99000-201600010010028&ProgramID=651632657&ParentNodeID=-99&assertID=5910022325&client_ip=171.8.79.254&SecurityKey=20260717080210&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=40d27e561dfff2850c5ba421b1844775&sv=10004&ct=android$LR•IPV4•115『线路54』 +http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=2394&tk=e503191f8e20$LR•IPV4•115『线路54』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -https://stream1.freetv.fun/ipv6-shang-hai-xin-wen-zong-he-6.m3u8$LR•IPV4•115『线路55』 +https://stream1.freetv.fun/xin-wen-zong-he-11.ctv$LR•IPV4•115『线路55』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -https://cm-live.ntjoy.com/live/4f1.m3u8$LR•IPV4•115『线路56』 +http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=0708&tk=23a9aca1f79f$LR•IPV4•115『线路56』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -https://stream1.freetv.fun/ipv6-shang-hai-xin-wen-zong-he-3.m3u8$LR•IPV4•115『线路57』 +http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=5985&tk=e640d0a1bf70$LR•IPV4•115『线路57』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -http://bp-livetytv.bestv.cn/ch/bestvxwzh.m3u8$LR•IPV4•115『线路58』 +https://stream1.freetv.fun/xin-wen-zong-he-5.m3u8$LR•IPV4•115『线路58』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=2441&tk=e640d0a1bf70$LR•IPV4•115『线路59』 +http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=5014&tk=a0c4f6cfaba3$LR•IPV4•115『线路59』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=2865&tk=f6cc1e0a0e1a$LR•IPV4•115『线路60』 +https://mgtv.ottiptv.cc/migu/651632657.m3u8?migutoken=348c9164063c2b1df215dd2fa7cd92cb119d8a335ae0edfb5d615a6c714e71b669eee2f5ff1730afa92af7ca41d0aa96e3a280d7e5f2069eb8a3b852f3ebc270147489d7c8bfb08a7c4b9c4d80$LR•IPV4•115『线路60』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -http://47.104.178.59:3566/651632657$LR•IPV4•115『线路61』 +https://stream1.freetv.fun/shang-hai-xin-wen-zong-he-2.m3u8$LR•IPV4•115『线路61』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -https://tvfile.scjgtv.cn:443/nmip-media/channellive/channel104126/playlist.m3u8"$LR•IPV4•115『线路62』 +http://p2.vzan.com/slowlive/596867413819827251/live.m3u8$LR•IPV4•115『线路62』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -https://www.freetv.top/migu/651632657.m3u8?migutoken=b4a3e55048f55ec1c8fc5b509fbdf32f2dc5d255f5f218e79e84ca9a87fb9f2239927cb11b448f18285b50b81b4cd50a1354e9be5a3283375e85372798c3f3eb3ad60adf45eb5615f68eb4825f$LR•IPV4•115『线路63』 +https://www.freetv.top/migu/651632657.m3u8?migutoken=5ae42e8fda034ab7bf5171dafa0043e70cd12bcd716940c4572fde52ea92b0785f16f1bdbce4c83f5e075b250fe95668f19f8527dda57c27db24f95d412614d99c86a3a2d9341d88b5224b7068$LR•IPV4•115『线路63』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=0610&tk=b53028476470$LR•IPV4•115『线路64』 +https://qcfile.qcrmt.com/nmip-media/channellive/channel100933/playlist.m3u8$LR•IPV4•115『线路64』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -https://m3u8channel.yunxya.com/nmip-media/channellive/channel100028/playlist.m3u8$LR•IPV4•115『线路65』 +https://stream1.freetv.fun/xin-wen-zong-he-2.m3u8$LR•IPV4•115『线路65』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -https://stream1.freetv.fun/xin-wen-zong-he-15.m3u8$LR•IPV4•115『线路66』 +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•115『线路66』 #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•115『线路67』 +https://stream1.freetv.fun/ipv6-shang-hai-xin-wen-zong-he-7.m3u8$LR•IPV4•115『线路67』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -http://111.228.4.117:6789/migu720p.php?id=651632657$LR•IPV4•115『线路68』 +https://hls-gateway.vpstv.net/streams/708847.m3u8$LR•IPV4•115『线路68』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -https://stream1.freetv.fun/shang-hai-xin-wen-zong-he-8.m3u8$LR•IPV4•115『线路69』 +http://api3.52tb.xyz/info?id=371&token=20221127jxwhhemby$LR•IPV4•115『线路69』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -https://stream1.freetv.fun/ipv6-xin-wen-zong-he-10.m3u8$LR•IPV4•115『线路70』 +https://stream1.freetv.fun/xin-wen-zong-he-1.ctv$LR•IPV4•115『线路70』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -http://stream8.jlntv.cn/shulan/sd/live.m3u8?_upt=332db6421699196585$LR•IPV4•115『线路71』 +http://115.190.247.176:1111/651632657$LR•IPV4•115『线路71』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -http://stream5.jlntv.cn/hn/sd/live.m3u8$LR•IPV4•115『线路72』 +https://stream1.freetv.fun/ipv6-shang-hai-xin-wen-zong-he-2.m3u8$LR•IPV4•115『线路72』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -http://pili-live-hls.ybcxjd.com/jdh-live/2108111201035597.m3u8?zsicd$LR•IPV4•115『线路73』 +https://xatv-yt.xiancity.cn/live/1/index.m3u8$LR•IPV4•115『线路73』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -http://live.spccmc.com:90/live/spxwzh.m3u8$LR•IPV4•115『线路74』 +https://stream1.freetv.fun/ipv6-xin-wen-zong-he-7.m3u8$LR•IPV4•115『线路74』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -http://live.iwcmt.cn:90/live/zhxw.m3u8$LR•IPV4•115『线路75』 +http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=5599&tk=2aca1ad9a849$LR•IPV4•115『线路75』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -http://live.jinchuanrmt.com:90/live/zhxw.m3u8?zsicd$LR•IPV4•115『线路76』 +https://stream1.freetv.fun/xin-wen-zong-he-3.m3u8$LR•IPV4•115『线路76』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -https://play.yunxya.com/channellive/xinwen.m3u8$LR•IPV4•115『线路77』 +http://hlsztemgsplive.miguvideo.com:8080/migu/kailu/xwzhhd265/54/20200407/index.m3u8?msisdn=2be6b2ec9fcf10d2c2457e2c710e172c&mdspid=&spid=600697&netType=0&sid=5910022325&pid=2028597139×tamp=20260717080210&Channel_ID=0116_2600034600-99000-201600010010028&ProgramID=651632657&ParentNodeID=-99&assertID=5910022325&client_ip=171.8.79.254&SecurityKey=20260717080210&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=40d27e561dfff2850c5ba421b1844775&sv=10004&ct=android$LR•IPV4•115『线路77』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -http://ls.qingting.fm/live/267.m3u8$LR•IPV4•115『线路78』 +https://stream1.freetv.fun/ipv6-shang-hai-xin-wen-zong-he-6.m3u8$LR•IPV4•115『线路78』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -http://hslive.hsnewsnet.com/lsdream/hve9Wjs/1000/live.m3u8$LR•IPV4•115『线路79』 +https://cm-live.ntjoy.com/live/4f1.m3u8$LR•IPV4•115『线路79』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -https://p2.vzan.com/slowlive/596867413819827251/live.m3u8?zbid=1725814272&amp;tpid=1516989100&amp;type=0$LR•IPV4•115『线路80』 +https://stream1.freetv.fun/ipv6-shang-hai-xin-wen-zong-he-3.m3u8$LR•IPV4•115『线路80』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -https://tntgjhjb.live.sxmty.com/live/hls/3a4585ac11ec4e1bb07b419101b370c3/baf63e2b313440c2a25d7859f9b73b05-1.m3u8?zshanxd$LR•IPV4•115『线路81』 +http://bp-livetytv.bestv.cn/ch/bestvxwzh.m3u8$LR•IPV4•115『线路81』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -http://uzoiczhh.live.sxmty.com/live/hls/0d41f1480c4042d49927858f01fde707/53130407737b417b9a6259b57246bae3.m3u8?zshanxd$LR•IPV4•115『线路82』 +http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=2441&tk=e640d0a1bf70$LR•IPV4•115『线路82』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -https://ls.qingting.fm/live/5043/64k.m3u8$LR•IPV4•115『线路83』 +http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=2865&tk=f6cc1e0a0e1a$LR•IPV4•115『线路83』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -http://liveout.btzx.com.cn/62ds9e/4nxdih.m3u8?fbl=$LR•IPV4•115『线路84』 +http://47.104.178.59:3566/651632657$LR•IPV4•115『线路84』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -http://nklive.nbs.cn/hls/d511bc9d-a694-4453-b3a2-4fc842cc97a1/index.m3u8$LR•IPV4•115『线路85』 +https://tvfile.scjgtv.cn:443/nmip-media/channellive/channel104126/playlist.m3u8"$LR•IPV4•115『线路85』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -http://ls.qingting.fm/live/23797.m3u8$LR•IPV4•115『线路86』 +https://www.freetv.top/migu/651632657.m3u8?migutoken=b4a3e55048f55ec1c8fc5b509fbdf32f2dc5d255f5f218e79e84ca9a87fb9f2239927cb11b448f18285b50b81b4cd50a1354e9be5a3283375e85372798c3f3eb3ad60adf45eb5615f68eb4825f$LR•IPV4•115『线路86』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -https://play.kankanlive.com/live/1720583434627241.m3u8$LR•IPV4•115『线路87』 +http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=0610&tk=b53028476470$LR•IPV4•115『线路87』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -https://ls.qingting.fm/live/5022100/64k.m3u8$LR•IPV4•115『线路88』 +https://m3u8channel.yunxya.com/nmip-media/channellive/channel100028/playlist.m3u8$LR•IPV4•115『线路88』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -https://liveout.xntv.tv/a65jur/96iln2.m3u8?zqinghd$LR•IPV4•115『线路89』 +https://stream1.freetv.fun/xin-wen-zong-he-15.m3u8$LR•IPV4•115『线路89』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -http://live.qthnews.org.cn:1935/live/live1/800k/tzwj_video.m3u8$LR•IPV4•115『线路90』 +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•115『线路90』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -http://stream.hrbtv.net/xwzh/sd/live.m3u8?zheild$LR•IPV4•115『线路91』 +http://111.228.4.117:6789/migu720p.php?id=651632657$LR•IPV4•115『线路91』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -https://stream2.jlntv.cn/baicheng1/sd/live.m3u8$LR•IPV4•115『线路92』 +https://stream1.freetv.fun/shang-hai-xin-wen-zong-he-8.m3u8$LR•IPV4•115『线路92』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -http://live.cztv.cc:85/live/xwpd.m3u8$LR•IPV4•115『线路93』 +https://stream1.freetv.fun/ipv6-xin-wen-zong-he-10.m3u8$LR•IPV4•115『线路93』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -http://117.156.28.119/270000001111/1110000001/index.m3u8$LR•IPV4•115『线路94』 +http://stream8.jlntv.cn/shulan/sd/live.m3u8?_upt=332db6421699196585$LR•IPV4•115『线路94』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -http://pili-live-hls.hebitv.com/hebi/hebi.m3u8$LR•IPV4•115『线路95』 +http://stream5.jlntv.cn/hn/sd/live.m3u8$LR•IPV4•115『线路95』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -https://stream2.jlntv.cn/naxw/sd/live.m3u8$LR•IPV4•115『线路96』 +http://pili-live-hls.ybcxjd.com/jdh-live/2108111201035597.m3u8?zsicd$LR•IPV4•115『线路96』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -http://uni6rtmp.tulix.tv:1935/vbstv/vbsabr.smil/chunklist_w439903609_b1228800.m3u8$LR•IPV4•115『线路97』 +http://live.spccmc.com:90/live/spxwzh.m3u8$LR•IPV4•115『线路97』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -http://221.5.213.4:30000/1111.m3u8$LR•IPV4•115『线路98』 +http://live.iwcmt.cn:90/live/zhxw.m3u8$LR•IPV4•115『线路98』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -https://stream2.jlntv.cn/jilin1/sd/live.m3u8$LR•IPV4•115『线路99』 +http://live.jinchuanrmt.com:90/live/zhxw.m3u8?zsicd$LR•IPV4•115『线路99』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -http://30515.hlsplay.aodianyun.com/lms_30515/tv_channel_239.m3u8$LR•IPV4•115『线路100』 +https://play.yunxya.com/channellive/xinwen.m3u8$LR•IPV4•115『线路100』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -https://stream2.jlntv.cn/sptv/sd/live.m3u8$LR•IPV4•115『线路101』 +http://traffic.jbh.tjbh.com/live/bhtv10/playlist.m3u8$LR•IPV4•115『线路101』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -http://live.ahsz.tv/video/s10001-szzh/index.m3u8$LR•IPV4•115『线路102』 +http://ls.qingting.fm/live/267.m3u8$LR•IPV4•115『线路102』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -http://guangshui.live.tempsource.cjyun.org/videotmp/s10146-GSXW.m3u8$LR•IPV4•115『线路103』 +http://hslive.hsnewsnet.com/lsdream/hve9Wjs/1000/live.m3u8$LR•IPV4•115『线路103』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -https://stream2.jlntv.cn/jlyb/sd/live.m3u8$LR•IPV4•115『线路104』 +https://p2.vzan.com/slowlive/596867413819827251/live.m3u8?zbid=1725814272&amp;tpid=1516989100&amp;type=0$LR•IPV4•115『线路104』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -https://stream2.jlntv.cn/sytv/sd/live.m3u8$LR•IPV4•115『线路105』 +https://tntgjhjb.live.sxmty.com/live/hls/3a4585ac11ec4e1bb07b419101b370c3/baf63e2b313440c2a25d7859f9b73b05-1.m3u8?zshanxd$LR•IPV4•115『线路105』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -http://222.179.155.21:1935/ch1.m3u8$LR•IPV4•115『线路106』 +http://uzoiczhh.live.sxmty.com/live/hls/0d41f1480c4042d49927858f01fde707/53130407737b417b9a6259b57246bae3.m3u8?zshanxd$LR•IPV4•115『线路106』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -http://117.172.215.250:8083/videos/live/35/39/GQVbrgob5CGJM/GQVbrgob5CGJM.m3u8$LR•IPV4•115『线路107』 +https://ls.qingting.fm/live/5043/64k.m3u8$LR•IPV4•115『线路107』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -http://220.180.110.101:8083/videos/live/36/57/hwEHU4UVQ1Iv5/hwEHU4UVQ1Iv5.m3u8$LR•IPV4•115『线路108』 +http://liveout.btzx.com.cn/62ds9e/4nxdih.m3u8?fbl=$LR•IPV4•115『线路108』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -http://live.hnxttv.com:9601/live/xwzh/800K/tzwj_video.m3u8$LR•IPV4•115『线路109』 +http://nklive.nbs.cn/hls/d511bc9d-a694-4453-b3a2-4fc842cc97a1/index.m3u8$LR•IPV4•115『线路109』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -http://stream.bzcm.net/2/sd/live.m3u8$LR•IPV4•115『线路110』 +http://ls.qingting.fm/live/23797.m3u8$LR•IPV4•115『线路110』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -http://117.156.28.119/270000001111/1110000145/index.m3u8$LR•IPV4•115『线路111』 +https://play.kankanlive.com/live/1720583434627241.m3u8$LR•IPV4•115『线路111』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -https://stream2.jlntv.cn/baishan1/sd/live.m3u8$LR•IPV4•115『线路112』 +https://ls.qingting.fm/live/5022100/64k.m3u8$LR•IPV4•115『线路112』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -http://live1.wuhubtv.com/channel1/sd/live.m3u8$LR•IPV4•115『线路113』 +https://liveout.xntv.tv/a65jur/96iln2.m3u8?zqinghd$LR•IPV4•115『线路113』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -http://palive.patv123.com:8091/live/xwpd_800K.m3u8$LR•IPV4•115『线路114』 +http://live.qthnews.org.cn:1935/live/live1/800k/tzwj_video.m3u8$LR•IPV4•115『线路114』 #EXTINF:-1 tvg-id="新闻综合" tvg-name="新闻综合" group-title="上海",新闻综合 -https://stream2.jlntv.cn/liaoyuan1/sd/live.m3u8$LR•IPV4•115『线路115』 +http://stream.hrbtv.net/xwzh/sd/live.m3u8?zheild$LR•IPV4•115『线路115』 #EXTINF:-1 tvg-id="西安新闻" tvg-name="西安新闻" group-title="陕西",西安新闻 -http://112.46.105.20:8009/hls/28/index.m3u8$LR•IPV4•2『线路1』 +http://stream2.xiancity.cn/xatv1/playlist.m3u8$LR•IPV4•2『线路1』 #EXTINF:-1 tvg-id="西安新闻" tvg-name="西安新闻" group-title="陕西",西安新闻 -http://stream2.xiancity.cn/xatv1/playlist.m3u8$LR•IPV4•2『线路2』 +http://112.46.105.20:8009/hls/28/index.m3u8$LR•IPV4•2『线路2』 #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『线路1』 +http://livealone302.iqilu.com/iqilu/sepd.m3u8$LR•IPV4•16『线路1』 #EXTINF:-1 tvg-id="山东少儿" tvg-name="山东少儿" group-title="山东",山东少儿 -https://stream1.freetv.fun/shan-dong-shao-er-7.m3u8$LR•IPV4•16『线路2』 +http://123.129.70.178:9901/tsfile/live/1004_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•16『线路2』 #EXTINF:-1 tvg-id="山东少儿" tvg-name="山东少儿" group-title="山东",山东少儿 -http://58.57.40.22:9901/tsfile/live/1024_1.m3u8$LR•IPV4•16『线路3』 +https://stream1.freetv.fun/shan-dong-shao-er-7.m3u8$LR•IPV4•16『线路3』 #EXTINF:-1 tvg-id="山东少儿" tvg-name="山东少儿" group-title="山东",山东少儿 -https://stream1.freetv.fun/shan-dong-shao-er-2.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="山东",山东少儿 -https://stream1.freetv.fun/shan-dong-shao-er-9.m3u8$LR•IPV4•16『线路5』 +https://stream1.freetv.fun/shan-dong-shao-er-2.m3u8$LR•IPV4•16『线路5』 #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『线路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-10.m3u8$LR•IPV4•16『线路7』 +http://221.2.148.205:8154/tsfile/live/1007_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•16『线路7』 #EXTINF:-1 tvg-id="山东少儿" tvg-name="山东少儿" group-title="山东",山东少儿 -http://111.14.181.15:9901/tsfile/live/1005_1.m3u8?key=tvbox6_com&playlive=1&authid=0$LR•IPV4•16『线路8』 +https://stream1.freetv.fun/shan-dong-shao-er-10.m3u8$LR•IPV4•16『线路8』 #EXTINF:-1 tvg-id="山东少儿" tvg-name="山东少儿" group-title="山东",山东少儿 -https://stream1.freetv.fun/shan-dong-shao-er-1.m3u8$LR•IPV4•16『线路9』 +http://111.14.181.15:9901/tsfile/live/1005_1.m3u8?key=tvbox6_com&playlive=1&authid=0$LR•IPV4•16『线路9』 #EXTINF:-1 tvg-id="山东少儿" tvg-name="山东少儿" group-title="山东",山东少儿 -http://111.14.181.15:9901/tsfile/live/1005_1.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-5.m3u8$LR•IPV4•16『线路11』 +http://111.14.181.15:9901/tsfile/live/1005_1.m3u8$LR•IPV4•16『线路11』 #EXTINF:-1 tvg-id="山东少儿" tvg-name="山东少儿" group-title="山东",山东少儿 -https://stream1.freetv.fun/shan-dong-shao-er-4.m3u8$LR•IPV4•16『线路12』 +https://stream1.freetv.fun/shan-dong-shao-er-5.m3u8$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-6.m3u8$LR•IPV4•16『线路14』 +http://123.132.233.194:352/tsfile/live/1002_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•16『线路14』 #EXTINF:-1 tvg-id="山东少儿" tvg-name="山东少儿" group-title="山东",山东少儿 -https://stream1.freetv.fun/shan-dong-shao-er-8.m3u8$LR•IPV4•16『线路15』 +https://stream1.freetv.fun/shan-dong-shao-er-6.m3u8$LR•IPV4•16『线路15』 #EXTINF:-1 tvg-id="山东少儿" tvg-name="山东少儿" group-title="山东",山东少儿 -http://livealone302.iqilu.com/iqilu/sepd.m3u8$LR•IPV4•16『线路16』 +https://stream1.freetv.fun/shan-dong-shao-er-8.m3u8$LR•IPV4•16『线路16』 #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『线路1』 +http://livealone302.iqilu.com/iqilu/ggpd.m3u8$LR•IPV4•12『线路1』 #EXTINF:-1 tvg-id="山东新闻" tvg-name="山东新闻" group-title="山东",山东新闻 -https://stream1.freetv.fun/shan-dong-xin-wen-1.m3u8$LR•IPV4•12『线路2』 +http://123.129.70.178:9901/tsfile/live/1000_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•12『线路2』 #EXTINF:-1 tvg-id="山东新闻" tvg-name="山东新闻" group-title="山东",山东新闻 -http://ls.qingting.fm/live/60180.m3u8$LR•IPV4•12『线路3』 +https://stream1.freetv.fun/shan-dong-xin-wen-1.m3u8$LR•IPV4•12『线路3』 #EXTINF:-1 tvg-id="山东新闻" tvg-name="山东新闻" group-title="山东",山东新闻 -https://stream1.freetv.fun/shan-dong-xin-wen-2.m3u8$LR•IPV4•12『线路4』 +http://ls.qingting.fm/live/60180.m3u8$LR•IPV4•12『线路4』 #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『线路5』 +https://stream1.freetv.fun/shan-dong-xin-wen-2.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』 +http://221.2.148.205:8154/tsfile/live/1002_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•12『线路6』 #EXTINF:-1 tvg-id="山东新闻" tvg-name="山东新闻" group-title="山东",山东新闻 -https://stream1.freetv.fun/shan-dong-xin-wen-3.m3u8$LR•IPV4•12『线路7』 +https://stream1.freetv.fun/shan-dong-xin-wen-4.m3u8$LR•IPV4•12『线路7』 #EXTINF:-1 tvg-id="山东新闻" tvg-name="山东新闻" group-title="山东",山东新闻 -http://live.xmcdn.com/live/1440/64.m3u8$LR•IPV4•12『线路8』 +https://stream1.freetv.fun/shan-dong-xin-wen-3.m3u8$LR•IPV4•12『线路8』 #EXTINF:-1 tvg-id="山东新闻" tvg-name="山东新闻" group-title="山东",山东新闻 -https://stream1.freetv.fun/shan-dong-xin-wen-10.m3u8$LR•IPV4•12『线路9』 +http://live.xmcdn.com/live/1440/64.m3u8$LR•IPV4•12『线路9』 #EXTINF:-1 tvg-id="山东新闻" tvg-name="山东新闻" group-title="山东",山东新闻 -https://stream1.freetv.fun/shan-dong-xin-wen-7.m3u8$LR•IPV4•12『线路10』 +https://stream1.freetv.fun/shan-dong-xin-wen-10.m3u8$LR•IPV4•12『线路10』 #EXTINF:-1 tvg-id="山东新闻" tvg-name="山东新闻" group-title="山东",山东新闻 -https://stream1.freetv.fun/shan-dong-xin-wen-6.m3u8$LR•IPV4•12『线路11』 +https://stream1.freetv.fun/shan-dong-xin-wen-7.m3u8$LR•IPV4•12『线路11』 #EXTINF:-1 tvg-id="山东新闻" tvg-name="山东新闻" group-title="山东",山东新闻 -http://livealone302.iqilu.com/iqilu/ggpd.m3u8$LR•IPV4•12『线路12』 +https://stream1.freetv.fun/shan-dong-xin-wen-6.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•20『线路1』 #EXTINF:-1 tvg-id="山东教育" tvg-name="山东教育" group-title="山东",山东教育 @@ -6086,43 +6104,43 @@ http://112.132.10.54:9901/tsfile/live/1018_1.m3u8?key=txiptv&playlive=1&authid=0 #EXTINF:-1 tvg-id="山东教育" tvg-name="山东教育" group-title="山东",山东教育 http://hlsztemgsplive.miguvideo.com:8080/migu/kailu/sdjyws/51/20250915/index.m3u8?msisdn=2be6b2ec9fcf10d2c2457e2c710e172c&mdspid=&spid=600697&netType=0&sid=5910022199&pid=2028597139×tamp=20260717080217&Channel_ID=0116_2600034600-99000-201600010010028&ProgramID=609154353&ParentNodeID=-99&assertID=5910022199&client_ip=171.8.79.254&SecurityKey=20260717080217&promotionId=&mvid=2200208305&mcid=500020&playurlVersion=WX-A1-9.6.1.6-SNAPSHOT&userid=&jmhm=&videocodec=h264&appCode=miguvideo_android&bean=mgspad&tid=android&conFee=0&encrypt=7f8e7f82426d223c045795841359c106&sv=10004&ct=android$LR•IPV4•20『线路20』 #EXTINF:-1 tvg-id="山东农科" tvg-name="山东农科" group-title="山东",山东农科 -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『线路1』 #EXTINF:-1 tvg-id="山东农科" tvg-name="山东农科" group-title="山东",山东农科 -http://livealone302.iqilu.com/iqilu/nkpd.m3u8$LR•IPV4•2『线路2』 +http://58.57.40.22:9901/tsfile/live/1022_1.m3u8$LR•IPV4•2『线路2』 #EXTINF:-1 tvg-id="山东齐鲁" tvg-name="山东齐鲁" group-title="山东",山东齐鲁 -http://123.132.233.194:352/tsfile/live/1019_1.m3u8$LR•IPV4•10『线路1』 +http://livealone302.iqilu.com/iqilu/qlpd.m3u8$LR•IPV4•10『线路1』 #EXTINF:-1 tvg-id="山东齐鲁" tvg-name="山东齐鲁" group-title="山东",山东齐鲁 -http://111.14.181.15:9901/tsfile/live/1000_1.m3u8?key=tvbox6_com&playlive=1&authid=0$LR•IPV4•10『线路2』 +http://123.132.233.194:352/tsfile/live/1019_1.m3u8$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://111.14.181.15:9901/tsfile/live/1000_1.m3u8?key=tvbox6_com&playlive=1&authid=0$LR•IPV4•10『线路3』 #EXTINF:-1 tvg-id="山东齐鲁" tvg-name="山东齐鲁" group-title="山东",山东齐鲁 -http://123.130.84.106:8154/tsfile/live/1001_1.m3u8$LR•IPV4•10『线路4』 +http://123.129.70.178:9901/tsfile/live/0019_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•10『线路4』 #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『线路5』 +http://123.130.84.106:8154/tsfile/live/1001_1.m3u8$LR•IPV4•10『线路5』 #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『线路6』 +http://221.2.148.205:8154/tsfile/live/1001_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•10『线路6』 #EXTINF:-1 tvg-id="山东齐鲁" tvg-name="山东齐鲁" group-title="山东",山东齐鲁 -http://61.156.228.12:8154/tsfile/live/1001_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•10『线路7』 +http://123.130.84.106:8154/tsfile/live/1001_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•10『线路7』 #EXTINF:-1 tvg-id="山东齐鲁" tvg-name="山东齐鲁" group-title="山东",山东齐鲁 -http://111.14.181.15:9901/tsfile/live/1000_1.m3u8$LR•IPV4•10『线路8』 +http://61.156.228.12:8154/tsfile/live/1001_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•10『线路8』 #EXTINF:-1 tvg-id="山东齐鲁" tvg-name="山东齐鲁" group-title="山东",山东齐鲁 -http://61.156.228.12: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://livealone302.iqilu.com/iqilu/qlpd.m3u8$LR•IPV4•10『线路10』 +http://61.156.228.12:8154/tsfile/live/1001_1.m3u8$LR•IPV4•10『线路10』 #EXTINF:-1 tvg-id="山东生活" tvg-name="山东生活" group-title="山东",山东生活 -http://api3.52tb.xyz/info?id=527&token=20221127jxwhhemby$LR•IPV4•7『线路1』 +http://livealone302.iqilu.com/iqilu/shpd.m3u8$LR•IPV4•7『线路1』 #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『线路2』 +http://api3.52tb.xyz/info?id=527&token=20221127jxwhhemby$LR•IPV4•7『线路2』 #EXTINF:-1 tvg-id="山东生活" tvg-name="山东生活" group-title="山东",山东生活 -http://live.xmcdn.com/live/802/64.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『线路3』 #EXTINF:-1 tvg-id="山东生活" tvg-name="山东生活" group-title="山东",山东生活 -http://ls.qingting.fm/live/60260.m3u8$LR•IPV4•7『线路4』 +http://live.xmcdn.com/live/802/64.m3u8$LR•IPV4•7『线路4』 #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『线路5』 +http://ls.qingting.fm/live/60260.m3u8$LR•IPV4•7『线路5』 #EXTINF:-1 tvg-id="山东生活" tvg-name="山东生活" group-title="山东",山东生活 -http://58.57.40.22:9901/tsfile/live/1018_1.m3u8$LR•IPV4•7『线路6』 +http://221.2.148.205:8154/tsfile/live/1005_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•7『线路6』 #EXTINF:-1 tvg-id="山东生活" tvg-name="山东生活" group-title="山东",山东生活 -http://livealone302.iqilu.com/iqilu/shpd.m3u8$LR•IPV4•7『线路7』 +http://58.57.40.22:9901/tsfile/live/1018_1.m3u8$LR•IPV4•7『线路7』 #EXTINF:-1 tvg-id="山东体育" tvg-name="山东体育" group-title="山东",山东体育 http://livealone302.iqilu.com/iqilu/typd.m3u8$LR•IPV4•37『线路1』 #EXTINF:-1 tvg-id="山东体育" tvg-name="山东体育" group-title="山东",山东体育 @@ -6198,17 +6216,17 @@ https://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-5.m3u8$LR•IPV4•37『线路37』 #EXTINF:-1 tvg-id="山东综艺" tvg-name="山东综艺" group-title="山东",山东综艺 -http://123.129.70.178:9901/tsfile/live/1001_1.m3u8$LR•IPV4•6『线路1』 +http://livealone302.iqilu.com/iqilu/zypd.m3u8$LR•IPV4•6『线路1』 #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『线路2』 +http://123.129.70.178:9901/tsfile/live/1001_1.m3u8$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://111.14.181.15:9901/tsfile/live/1004_1.m3u8?key=tvbox6_com&playlive=1&authid=0$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://221.2.148.205:8154/tsfile/live/1003_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•6『线路4』 #EXTINF:-1 tvg-id="山东综艺" tvg-name="山东综艺" group-title="山东",山东综艺 -http://123.132.233.194:352/tsfile/live/1000_1.m3u8$LR•IPV4•6『线路5』 +http://58.57.40.22:9901/tsfile/live/1021_1.m3u8$LR•IPV4•6『线路5』 #EXTINF:-1 tvg-id="山东综艺" tvg-name="山东综艺" group-title="山东",山东综艺 -http://livealone302.iqilu.com/iqilu/zypd.m3u8$LR•IPV4•6『线路6』 +http://123.132.233.194:352/tsfile/live/1000_1.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="山东",山东文旅 @@ -6238,51 +6256,51 @@ 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•8『线路1』 #EXTINF:-1 tvg-id="凤凰中文" tvg-name="凤凰中文" group-title="港澳台",凤凰中文 -http://zmgd.zyrnet.com:8888/hls/110/index.m3u8$LR•IPV4•8『线路2』 +http://223.110.245.139/ott.js.chinamobile.com/PLTV/3/224/3221226922/index.m3u8$LR•IPV4•8『线路2』 #EXTINF:-1 tvg-id="凤凰中文" tvg-name="凤凰中文" group-title="港澳台",凤凰中文 -http://120.198.95.220:9901/tsfile/live/1036_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•8『线路3』 +http://zmgd.zyrnet.com:8888/hls/110/index.m3u8$LR•IPV4•8『线路3』 #EXTINF:-1 tvg-id="凤凰中文" tvg-name="凤凰中文" group-title="港澳台",凤凰中文 -http://218.206.193.218:8888/hls/66/index.m3u8$LR•IPV4•8『线路4』 +http://120.198.95.220:9901/tsfile/live/1036_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•8『线路4』 #EXTINF:-1 tvg-id="凤凰中文" tvg-name="凤凰中文" group-title="港澳台",凤凰中文 -http://120.198.95.220:9901/tsfile/live/1036_1.m3u8?key=txiptv$LR•IPV4•8『线路5』 +http://218.206.193.218:8888/hls/66/index.m3u8$LR•IPV4•8『线路5』 #EXTINF:-1 tvg-id="凤凰中文" tvg-name="凤凰中文" group-title="港澳台",凤凰中文 -http://r.jdshipin.com/cCCzW$LR•IPV4•8『线路6』 +http://120.198.95.220:9901/tsfile/live/1036_1.m3u8?key=txiptv$LR•IPV4•8『线路6』 #EXTINF:-1 tvg-id="凤凰中文" tvg-name="凤凰中文" group-title="港澳台",凤凰中文 -http://cdn6.163189.xyz/163189/fhzw$LR•IPV4•8『线路7』 +http://r.jdshipin.com/cCCzW$LR•IPV4•8『线路7』 #EXTINF:-1 tvg-id="凤凰中文" tvg-name="凤凰中文" group-title="港澳台",凤凰中文 -http://223.110.245.139/ott.js.chinamobile.com/PLTV/3/224/3221226922/index.m3u8$LR•IPV4•8『线路8』 +http://cdn6.163189.xyz/163189/fhzw$LR•IPV4•8『线路8』 #EXTINF:-1 tvg-id="凤凰资讯" tvg-name="凤凰资讯" group-title="港澳台",凤凰资讯 http://api.mg.itv888.cn:8080/hls/11ef1dc70d8/index.m3u8$LR•IPV4•10『线路1』 #EXTINF:-1 tvg-id="凤凰资讯" tvg-name="凤凰资讯" group-title="港澳台",凤凰资讯 -http://zmgd.zyrnet.com:8888/hls/109/index.m3u8$LR•IPV4•10『线路2』 +http://223.110.245.167/ott.js.chinamobile.com/PLTV/3/224/3221226923/index.m3u8$LR•IPV4•10『线路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•10『线路3』 +http://zmgd.zyrnet.com:8888/hls/109/index.m3u8$LR•IPV4•10『线路3』 #EXTINF:-1 tvg-id="凤凰资讯" tvg-name="凤凰资讯" group-title="港澳台",凤凰资讯 -http://120.198.95.220:9901/tsfile/live/1037_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•10『线路4』 +http://221.7.175.154:8445/tsfile/live/1021_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•10『线路4』 #EXTINF:-1 tvg-id="凤凰资讯" tvg-name="凤凰资讯" group-title="港澳台",凤凰资讯 -http://120.198.95.220:9901/tsfile/live/1037_1.m3u8?key=txiptv$LR•IPV4•10『线路5』 +http://120.198.95.220:9901/tsfile/live/1037_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•10『线路5』 #EXTINF:-1 tvg-id="凤凰资讯" tvg-name="凤凰资讯" group-title="港澳台",凤凰资讯 -p3p://167.114.175.6:55331/5fffbf860003807cedf4e1016c3c3ed2$LR•IPV4•10『线路6』 +http://120.198.95.220:9901/tsfile/live/1037_1.m3u8?key=txiptv$LR•IPV4•10『线路6』 #EXTINF:-1 tvg-id="凤凰资讯" tvg-name="凤凰资讯" group-title="港澳台",凤凰资讯 -http://r.jdshipin.com/0Rp07$LR•IPV4•10『线路7』 +p3p://167.114.175.6:55331/5fffbf860003807cedf4e1016c3c3ed2$LR•IPV4•10『线路7』 #EXTINF:-1 tvg-id="凤凰资讯" tvg-name="凤凰资讯" group-title="港澳台",凤凰资讯 -http://php.jdshipin.com/TVOD/iptv.php?id=fhzx$LR•IPV4•10『线路8』 +http://r.jdshipin.com/0Rp07$LR•IPV4•10『线路8』 #EXTINF:-1 tvg-id="凤凰资讯" tvg-name="凤凰资讯" group-title="港澳台",凤凰资讯 -http://cdn6.163189.xyz/163189/fhzx$LR•IPV4•10『线路9』 +http://php.jdshipin.com/TVOD/iptv.php?id=fhzx$LR•IPV4•10『线路9』 #EXTINF:-1 tvg-id="凤凰资讯" tvg-name="凤凰资讯" group-title="港澳台",凤凰资讯 -http://223.110.245.167/ott.js.chinamobile.com/PLTV/3/224/3221226923/index.m3u8$LR•IPV4•10『线路10』 +http://cdn6.163189.xyz/163189/fhzx$LR•IPV4•10『线路10』 #EXTINF:-1 tvg-id="凤凰香港" tvg-name="凤凰香港" group-title="港澳台",凤凰香港 -http://122.152.202.33/s/81a8a44f/index.m3u8?id=fhhk$LR•IPV4•6『线路1』 +http://223.110.245.136/PLTV/3/224/3221226975/index.m3u8$LR•IPV4•6『线路1』 #EXTINF:-1 tvg-id="凤凰香港" tvg-name="凤凰香港" group-title="港澳台",凤凰香港 -p3p://167.114.175.6:55331/5fe0b82c000cac9774c17f262e43314d$LR•IPV4•6『线路2』 +http://122.152.202.33/s/81a8a44f/index.m3u8?id=fhhk$LR•IPV4•6『线路2』 #EXTINF:-1 tvg-id="凤凰香港" tvg-name="凤凰香港" group-title="港澳台",凤凰香港 -http://r.jdshipin.com/yDoTN$LR•IPV4•6『线路3』 +p3p://167.114.175.6:55331/5fe0b82c000cac9774c17f262e43314d$LR•IPV4•6『线路3』 #EXTINF:-1 tvg-id="凤凰香港" tvg-name="凤凰香港" group-title="港澳台",凤凰香港 -http://php.jdshipin.com/TVOD/iptv.php?id=fhhk$LR•IPV4•6『线路4』 +http://r.jdshipin.com/yDoTN$LR•IPV4•6『线路4』 #EXTINF:-1 tvg-id="凤凰香港" tvg-name="凤凰香港" group-title="港澳台",凤凰香港 -http://cdn6.163189.xyz/163189/fhhk$LR•IPV4•6『线路5』 +http://php.jdshipin.com/TVOD/iptv.php?id=fhhk$LR•IPV4•6『线路5』 #EXTINF:-1 tvg-id="凤凰香港" tvg-name="凤凰香港" group-title="港澳台",凤凰香港 -http://223.110.245.136/PLTV/3/224/3221226975/index.m3u8$LR•IPV4•6『线路6』 +http://cdn6.163189.xyz/163189/fhhk$LR•IPV4•6『线路6』 #EXTINF:-1 tvg-id="TVB翡翠台" tvg-name="TVB翡翠台" group-title="港澳台",TVB翡翠台 p3p://167.114.175.6:55331/653e4c02000ea0440c8c63fd3e5d709d$LR•IPV4•12『线路1』 #EXTINF:-1 tvg-id="TVB翡翠台" tvg-name="TVB翡翠台" group-title="港澳台",TVB翡翠台 @@ -6332,61 +6350,59 @@ http://r.jdshipin.com/CkuBd$LR•IPV4•7『线路6』 #EXTINF:-1 tvg-id="TVB无线新闻" tvg-name="TVB无线新闻" group-title="港澳台",TVB无线新闻 http://php.jdshipin.com/TVOD/iptv.php?id=wxxw$LR•IPV4•7『线路7』 #EXTINF:-1 tvg-id="TVB星河" tvg-name="TVB星河" group-title="港澳台",TVB星河 -p3p://167.114.175.6:55331/5fdee23d000b670a6d96428e4c334643$LR•IPV4•5『线路1』 +p3p://167.114.175.6:55331/5fdee23d000b670a6d96428e4c334643$LR•IPV4•4『线路1』 #EXTINF:-1 tvg-id="TVB星河" tvg-name="TVB星河" group-title="港澳台",TVB星河 -p3p://167.114.175.6:55331/6563174f0002ffaf9c45dd927c7d6df1$LR•IPV4•5『线路2』 +p3p://167.114.175.6:55331/6563174f0002ffaf9c45dd927c7d6df1$LR•IPV4•4『线路2』 #EXTINF:-1 tvg-id="TVB星河" tvg-name="TVB星河" group-title="港澳台",TVB星河 -http://php.jdshipin.com/TVOD/iptv.php?id=xinghe$LR•IPV4•5『线路3』 +http://php.jdshipin.com/TVOD/iptv.php?id=xinghe$LR•IPV4•4『线路3』 #EXTINF:-1 tvg-id="TVB星河" tvg-name="TVB星河" group-title="港澳台",TVB星河 -https://hls-gateway.vpstv.net/streams/709489.m3u8$LR•IPV4•5『线路4』 -#EXTINF:-1 tvg-id="TVB星河" tvg-name="TVB星河" group-title="港澳台",TVB星河 -https://live.ottiptv.cc/huya/23734169$LR•IPV4•5『线路5』 +https://hls-gateway.vpstv.net/streams/709489.m3u8$LR•IPV4•4『线路4』 #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://61.221.215.25:8800/hls/9/index.m3u8$LR•IPV4•13『线路2』 +http://seb.sason.top/sc/tvbsxw_fhd.m3u8$LR•IPV4•13『线路2』 #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『线路3』 +http://61.221.215.25:8800/hls/9/index.m3u8$LR•IPV4•13『线路3』 #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『线路4』 +http://38.64.72.148/hls/modn/list/4005/chunklist0.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/playlist.m3u8$LR•IPV4•13『线路5』 +http://38.64.72.148:80/hls/modn/list/4005/chunklist1.m3u8$LR•IPV4•13『线路5』 #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『线路6』 +http://38.64.72.148:80/hls/modn/list/4005/playlist.m3u8$LR•IPV4•13『线路6』 #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『线路7』 +http://38.64.72.148/hls/modn/list/4005/chunklist1.m3u8$LR•IPV4•13『线路7』 #EXTINF:-1 tvg-id="TVBS" tvg-name="TVBS" group-title="港澳台",TVBS -http://125.227.210.55:8188/VideoInput/play.ts$LR•IPV4•13『线路8』 +http://38.64.72.148:80/hls/modn/list/4005/chunklist0.m3u8$LR•IPV4•13『线路8』 #EXTINF:-1 tvg-id="TVBS" tvg-name="TVBS" group-title="港澳台",TVBS -http://125.227.210.55:8186/VideoInput/play.ts$LR•IPV4•13『线路9』 +http://125.227.210.55:8188/VideoInput/play.ts$LR•IPV4•13『线路9』 #EXTINF:-1 tvg-id="TVBS" tvg-name="TVBS" group-title="港澳台",TVBS -http://125.227.210.55:8187/VideoInput/play.ts$LR•IPV4•13『线路10』 +http://125.227.210.55:8186/VideoInput/play.ts$LR•IPV4•13『线路10』 #EXTINF:-1 tvg-id="TVBS" tvg-name="TVBS" group-title="港澳台",TVBS -p3p://167.114.175.6:55331/612ee5ef000f06f58e144b6727ec3efb$LR•IPV4•13『线路11』 +http://125.227.210.55:8187/VideoInput/play.ts$LR•IPV4•13『线路11』 #EXTINF:-1 tvg-id="TVBS" tvg-name="TVBS" group-title="港澳台",TVBS -p3p://167.114.175.6:55331/61efd0a100047e1a7f9fa38d29f5746d$LR•IPV4•13『线路12』 +p3p://167.114.175.6:55331/612ee5ef000f06f58e144b6727ec3efb$LR•IPV4•13『线路12』 #EXTINF:-1 tvg-id="TVBS" tvg-name="TVBS" group-title="港澳台",TVBS -http://seb.sason.top/sc/tvbsxw_fhd.m3u8$LR•IPV4•13『线路13』 +p3p://167.114.175.6:55331/61efd0a100047e1a7f9fa38d29f5746d$LR•IPV4•13『线路13』 #EXTINF:-1 tvg-id="台视" tvg-name="台视" group-title="港澳台",台视 -http://74.91.26.218:82/live/ttvcj.m3u8$LR•IPV4•10『线路1』 +http://162.19.247.76:22222/live/taishi/index.m3u8$LR•IPV4•10『线路1』 #EXTINF:-1 tvg-id="台视" tvg-name="台视" group-title="港澳台",台视 -http://74.91.26.218:82/live/ttvzh.m3u8$LR•IPV4•10『线路2』 +http://74.91.26.218:82/live/ttvcj.m3u8$LR•IPV4•10『线路2』 #EXTINF:-1 tvg-id="台视" tvg-name="台视" group-title="港澳台",台视 -http://38.64.72.148:80/hls/modn/list/4013/chunklist0.m3u8$LR•IPV4•10『线路3』 +http://74.91.26.218:82/live/ttvzh.m3u8$LR•IPV4•10『线路3』 #EXTINF:-1 tvg-id="台视" tvg-name="台视" group-title="港澳台",台视 -http://38.64.72.148:80/hls/modn/list/4013/chunklist1.m3u8$LR•IPV4•10『线路4』 +http://38.64.72.148:80/hls/modn/list/4013/chunklist0.m3u8$LR•IPV4•10『线路4』 #EXTINF:-1 tvg-id="台视" tvg-name="台视" group-title="港澳台",台视 -http://38.64.72.148/hls/modn/list/4013/chunklist0.m3u8$LR•IPV4•10『线路5』 +http://38.64.72.148:80/hls/modn/list/4013/chunklist1.m3u8$LR•IPV4•10『线路5』 #EXTINF:-1 tvg-id="台视" tvg-name="台视" group-title="港澳台",台视 -rtmp://f13h.mine.nu/sat/tv071$LR•IPV4•10『线路6』 +http://38.64.72.148/hls/modn/list/4013/chunklist0.m3u8$LR•IPV4•10『线路6』 #EXTINF:-1 tvg-id="台视" tvg-name="台视" group-title="港澳台",台视 -p3p://167.114.175.6:55331/612ee2240008f3db8e0578dc59406f9e$LR•IPV4•10『线路7』 +rtmp://f13h.mine.nu/sat/tv071$LR•IPV4•10『线路7』 #EXTINF:-1 tvg-id="台视" tvg-name="台视" group-title="港澳台",台视 -p3p://167.114.175.6:55331/6223b571000a13023e78ece5030b5b05$LR•IPV4•10『线路8』 +p3p://167.114.175.6:55331/612ee2240008f3db8e0578dc59406f9e$LR•IPV4•10『线路8』 #EXTINF:-1 tvg-id="台视" tvg-name="台视" group-title="港澳台",台视 -http://38.64.72.148/hls/modn/list/4013/chunklist1.m3u8$LR•IPV4•10『线路9』 +p3p://167.114.175.6:55331/6223b571000a13023e78ece5030b5b05$LR•IPV4•10『线路9』 #EXTINF:-1 tvg-id="台视" tvg-name="台视" group-title="港澳台",台视 -http://162.19.247.76:22222/live/taishi/index.m3u8$LR•IPV4•10『线路10』 +http://38.64.72.148/hls/modn/list/4013/chunklist1.m3u8$LR•IPV4•10『线路10』 #EXTINF:-1 tvg-id="民视新闻" tvg-name="民视新闻" group-title="港澳台",民视新闻 http://38.64.72.148:80/hls/modn/list/4012/chunklist0.m3u8$LR•IPV4•4『线路1』 #EXTINF:-1 tvg-id="民视新闻" tvg-name="民视新闻" group-title="港澳台",民视新闻 @@ -6396,11 +6412,11 @@ http://38.64.72.148/hls/modn/list/4012/chunklist0.m3u8$LR•IPV4•4『线路3 #EXTINF:-1 tvg-id="民视新闻" tvg-name="民视新闻" group-title="港澳台",民视新闻 http://38.64.72.148/hls/modn/list/4012/chunklist1.m3u8$LR•IPV4•4『线路4』 #EXTINF:-1 tvg-id="耀才财经" tvg-name="耀才财经" group-title="港澳台",耀才财经 -https://v3.mediacast.hk/webcast/bshdlive-pc/playlist.m3u8$LR•IPV4•3『线路1』 +http://202.69.67.66:443/webcast/bshdlive-mobile/playlist.m3u8$LR•IPV4•3『线路1』 #EXTINF:-1 tvg-id="耀才财经" tvg-name="耀才财经" group-title="港澳台",耀才财经 -https://v3.mediacast.hk/webcast/bshdlive-pc/chunklist_w99771165.m3u8$LR•IPV4•3『线路2』 +https://v3.mediacast.hk/webcast/bshdlive-pc/playlist.m3u8$LR•IPV4•3『线路2』 #EXTINF:-1 tvg-id="耀才财经" tvg-name="耀才财经" group-title="港澳台",耀才财经 -http://202.69.67.66:443/webcast/bshdlive-mobile/playlist.m3u8$LR•IPV4•3『线路3』 +https://v3.mediacast.hk/webcast/bshdlive-pc/chunklist_w99771165.m3u8$LR•IPV4•3『线路3』 #EXTINF:-1 tvg-id="美亚C+" tvg-name="美亚C+" group-title="港澳台",美亚C+ http://ottproxy2.ist.ooo/livehls/MOB-U1-NO/03.m3u8$LR•IPV4•3『线路1』 #EXTINF:-1 tvg-id="美亚C+" tvg-name="美亚C+" group-title="港澳台",美亚C+ @@ -6496,33 +6512,33 @@ p3p://167.114.175.6:55331/663e9212000a54b4285005cd59217563$LR•IPV4 #EXTINF:-1 tvg-id="tvN" tvg-name="tvN" group-title="港澳台",tvN http://210.210.155.37/dr9445/h/h21/index.m3u8$LR•IPV4•6『线路1』 #EXTINF:-1 tvg-id="tvN" tvg-name="tvN" group-title="港澳台",tvN -https://stream1.freetv.fun/tvn-3.m3u8$LR•IPV4•6『线路2』 +http://45.162.193.35/TVN/index.m3u8$LR•IPV4•6『线路2』 #EXTINF:-1 tvg-id="tvN" tvg-name="tvN" group-title="港澳台",tvN -p3p://167.114.175.6:55331/6506c6930009ab3233ac2cd3018a6125$LR•IPV4•6『线路3』 +https://bcovlive-a.akamaihd.net/628aecb4fccb4c52b4f9c8d5cc57fb73/us-west-2/6058004209001/playlist_dvr.m3u8$LR•IPV4•6『线路3』 #EXTINF:-1 tvg-id="tvN" tvg-name="tvN" group-title="港澳台",tvN -p3p://167.114.175.6:55331/644f9623000a4051681a72d66bfc0191$LR•IPV4•6『线路4』 +https://stream1.freetv.fun/tvn-3.m3u8$LR•IPV4•6『线路4』 #EXTINF:-1 tvg-id="tvN" tvg-name="tvN" group-title="港澳台",tvN -http://45.162.193.35/TVN/index.m3u8$LR•IPV4•6『线路5』 +p3p://167.114.175.6:55331/6506c6930009ab3233ac2cd3018a6125$LR•IPV4•6『线路5』 #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『线路6』 +p3p://167.114.175.6:55331/644f9623000a4051681a72d66bfc0191$LR•IPV4•6『线路6』 #EXTINF:-1 tvg-id="華視" tvg-name="華視" group-title="港澳台",華視 http://seb.sason.top/sc/hsxw_fhd.m3u8$LR•IPV4 #EXTINF:-1 tvg-id="DW" tvg-name="DW" group-title="港澳台",DW https://raw.githubusercontent.com/ChiSheng9/iptv/master/TV08.m3u8$LR•IPV4•8『线路1』 #EXTINF:-1 tvg-id="DW" tvg-name="DW" group-title="港澳台",DW -https://dwamdstream102.akamaized.net/hls/live/2015525/dwstream102/stream05/streamPlaylist.m3u8$LR•IPV4•8『线路2』 +https://dwamdstream103.akamaized.net/hls/live/2015526/dwstream103/master.m3u8$LR•IPV4•8『线路2』 #EXTINF:-1 tvg-id="DW" tvg-name="DW" group-title="港澳台",DW -http://aktv.top/AKTV/live/aktv3/dw/AKTV.m3u8$LR•IPV4•8『线路3』 +https://amg01644-amg01644c1-amgplt0343.playout.now3.amagi.tv/ts-eu-w1-n2/playlist/amg01644-amg01644c1-amgplt0343/playlist.m3u8$LR•IPV4•8『线路3』 #EXTINF:-1 tvg-id="DW" tvg-name="DW" group-title="港澳台",DW -http://37.27.111.214:8080/live/46/hls.m3u8$LR•IPV4•8『线路4』 +http://177.234.249.178:8888/DW/index.m3u8$LR•IPV4•8『线路4』 #EXTINF:-1 tvg-id="DW" tvg-name="DW" group-title="港澳台",DW -https://dwamdstream103.akamaized.net/hls/live/2015526/dwstream103/master.m3u8$LR•IPV4•8『线路5』 +https://dwamdstream110.akamaized.net/hls/live/2017971/dwstream110/master.m3u8$LR•IPV4•8『线路5』 #EXTINF:-1 tvg-id="DW" tvg-name="DW" group-title="港澳台",DW -https://amg01644-amg01644c1-amgplt0343.playout.now3.amagi.tv/ts-eu-w1-n2/playlist/amg01644-amg01644c1-amgplt0343/playlist.m3u8$LR•IPV4•8『线路6』 +https://dwamdstream102.akamaized.net/hls/live/2015525/dwstream102/stream05/streamPlaylist.m3u8$LR•IPV4•8『线路6』 #EXTINF:-1 tvg-id="DW" tvg-name="DW" group-title="港澳台",DW -http://177.234.249.178:8888/DW/index.m3u8$LR•IPV4•8『线路7』 +http://aktv.top/AKTV/live/aktv3/dw/AKTV.m3u8$LR•IPV4•8『线路7』 #EXTINF:-1 tvg-id="DW" tvg-name="DW" group-title="港澳台",DW -https://dwamdstream110.akamaized.net/hls/live/2017971/dwstream110/master.m3u8$LR•IPV4•8『线路8』 +http://37.27.111.214:8080/live/46/hls.m3u8$LR•IPV4•8『线路8』 #EXTINF:-1 tvg-id="France 24" tvg-name="France 24" group-title="港澳台",France 24 https://live.france24.com/hls/live/2037222-b/F24_AR_HI_HLS/master_5000.m3u8$LR•IPV4•5『线路1』 #EXTINF:-1 tvg-id="France 24" tvg-name="France 24" group-title="港澳台",France 24 @@ -6536,93 +6552,93 @@ https://amg00106-amg00106c1-rakuten-uk-4654.playouts.now.amagi.tv/playlist/amg00 #EXTINF:-1 tvg-id="KIX" tvg-name="KIX" group-title="港澳台",KIX http://210.210.155.37/dr9445/h/h07/index.m3u8$LR•IPV4•3『线路1』 #EXTINF:-1 tvg-id="KIX" tvg-name="KIX" group-title="港澳台",KIX -p3p://167.114.175.6:55331/6444e9940006c03f3e688dba67767ffd$LR•IPV4•3『线路2』 +https://liveh34.vtvprime.vn/hls/KIX/04.m3u8$LR•IPV4•3『线路2』 #EXTINF:-1 tvg-id="KIX" tvg-name="KIX" group-title="港澳台",KIX -https://liveh34.vtvprime.vn/hls/KIX/04.m3u8$LR•IPV4•3『线路3』 +p3p://167.114.175.6:55331/6444e9940006c03f3e688dba67767ffd$LR•IPV4•3『线路3』 #EXTINF:-1 tvg-id="NHK WorldJapan" tvg-name="NHK WorldJapan" group-title="港澳台",NHK World-Japan -http://aktv.top/AKTV/live/aktv3/nhkworldjapan/AKTV.m3u8$LR•IPV4•3『线路1』 +https://masterpl.hls.nhkworld.jp/hls/w/live/smarttv.m3u8$LR•IPV4•3『线路1』 #EXTINF:-1 tvg-id="NHK WorldJapan" tvg-name="NHK WorldJapan" group-title="港澳台",NHK World-Japan -https://masterpl.hls.nhkworld.jp/hls/w/live/smarttv.m3u8$LR•IPV4•3『线路2』 +https://nhk.lls.pbs.org/index.m3u8$LR•IPV4•3『线路2』 #EXTINF:-1 tvg-id="NHK WorldJapan" tvg-name="NHK WorldJapan" group-title="港澳台",NHK World-Japan -https://nhk.lls.pbs.org/index.m3u8$LR•IPV4•3『线路3』 +http://aktv.top/AKTV/live/aktv3/nhkworldjapan/AKTV.m3u8$LR•IPV4•3『线路3』 #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•12『线路1』 +http://bethoven.af-stream.com:1600/s/kwtlxswl/nick-jr-il/video.m3u8$LR•IPV4•12『线路1』 #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•12『线路2』 +https://stream8.cinerama.uz/1501/playlist.m3u8$LR•IPV4•12『线路2』 #EXTINF:-1 tvg-id="Nick Jr" tvg-name="Nick Jr" group-title="港澳台",Nick Jr -https://stream8.cinerama.uz/1501/playlist.m3u8$LR•IPV4•12『线路3』 +http://40.160.24.55/NICK_JR/index.m3u8$LR•IPV4•12『线路3』 #EXTINF:-1 tvg-id="Nick Jr" tvg-name="Nick Jr" group-title="港澳台",Nick Jr -http://40.160.24.55/NICK_JR/index.m3u8$LR•IPV4•12『线路4』 +https://phcornerultralast.qzz.io/hls/laslo-serverless/dr_nickjr/index.m3u8$LR•IPV4•12『线路4』 #EXTINF:-1 tvg-id="Nick Jr" tvg-name="Nick Jr" group-title="港澳台",Nick Jr -https://phcornerultralast.qzz.io/hls/laslo-serverless/dr_nickjr/index.m3u8$LR•IPV4•12『线路5』 +https://jmp2.uk/plu-67f3eb1c443f0671bc03ece8.m3u8$LR•IPV4•12『线路5』 #EXTINF:-1 tvg-id="Nick Jr" tvg-name="Nick Jr" group-title="港澳台",Nick Jr -https://jmp2.uk/plu-67f3eb1c443f0671bc03ece8.m3u8$LR•IPV4•12『线路6』 +https://jmp2.uk/plu-6824ce95f09106f4b18f4114.m3u8$LR•IPV4•12『线路6』 #EXTINF:-1 tvg-id="Nick Jr" tvg-name="Nick Jr" group-title="港澳台",Nick Jr -https://jmp2.uk/plu-6824ce95f09106f4b18f4114.m3u8$LR•IPV4•12『线路7』 +https://jmp2.uk/plu-5ddd7cb2cbb9010009b4fe32.m3u8$LR•IPV4•12『线路7』 #EXTINF:-1 tvg-id="Nick Jr" tvg-name="Nick Jr" group-title="港澳台",Nick Jr -https://jmp2.uk/plu-5ddd7cb2cbb9010009b4fe32.m3u8$LR•IPV4•12『线路8』 +http://138.186.23.7:8082/NICKJR/index.m3u8$LR•IPV4•12『线路8』 #EXTINF:-1 tvg-id="Nick Jr" tvg-name="Nick Jr" group-title="港澳台",Nick Jr -http://138.186.23.7:8082/NICKJR/index.m3u8$LR•IPV4•12『线路9』 +https://jmp2.uk/plu-62bdb75c3afd1200079146a6.m3u8$LR•IPV4•12『线路9』 #EXTINF:-1 tvg-id="Nick Jr" tvg-name="Nick Jr" group-title="港澳台",Nick Jr -https://jmp2.uk/plu-62bdb75c3afd1200079146a6.m3u8$LR•IPV4•12『线路10』 +https://jmp2.uk/plu-5ca6748a37b88b269472dad9.m3u8$LR•IPV4•12『线路10』 #EXTINF:-1 tvg-id="Nick Jr" tvg-name="Nick Jr" group-title="港澳台",Nick Jr -https://jmp2.uk/plu-5ca6748a37b88b269472dad9.m3u8$LR•IPV4•12『线路11』 +http://103.137.83.62:9090/play/27/index.m3u8$LR•IPV4•12『线路11』 #EXTINF:-1 tvg-id="Nick Jr" tvg-name="Nick Jr" group-title="港澳台",Nick Jr -http://103.137.83.62:9090/play/27/index.m3u8$LR•IPV4•12『线路12』 +http://free.cnlive.club/channel/n75fc9ff7/index.m3u8?q=1752629214236$LR•IPV4•12『线路12』 #EXTINF:-1 tvg-id="Nickelodeon" tvg-name="Nickelodeon" group-title="港澳台",Nickelodeon -http://free.cnlive.club/channel/n6a165737/index.m3u8?q=1752629214236$LR•IPV4•27『线路1』 +http://213.91.179.28:8000/play/a056$LR•IPV4•27『线路1』 #EXTINF:-1 tvg-id="Nickelodeon" tvg-name="Nickelodeon" group-title="港澳台",Nickelodeon -http://213.91.179.28:8000/play/a056$LR•IPV4•27『线路2』 +https://ma.anixa.tv/clips/stream/nickelodeon/playlist.php$LR•IPV4•27『线路2』 #EXTINF:-1 tvg-id="Nickelodeon" tvg-name="Nickelodeon" group-title="港澳台",Nickelodeon -https://ma.anixa.tv/clips/stream/nickelodeon/playlist.php$LR•IPV4•27『线路3』 +http://151.80.18.177:86/Nickelodeon_FR/index.m3u8$LR•IPV4•27『线路3』 #EXTINF:-1 tvg-id="Nickelodeon" tvg-name="Nickelodeon" group-title="港澳台",Nickelodeon -http://151.80.18.177:86/Nickelodeon_FR/index.m3u8$LR•IPV4•27『线路4』 +http://bethoven.af-stream.com:1600/s/kwtlxswl/yes-nickelodeon-il/video.m3u8$LR•IPV4•27『线路4』 #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『线路5』 +http://193.239.186.231/NICK/index.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://82.78.243.219:45739/play/a00o/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://23.237.104.106:8080/USA_NICKELODEON/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://103.137.83.62:9090/play/28/index.m3u8$LR•IPV4•27『线路8』 #EXTINF:-1 tvg-id="Nickelodeon" tvg-name="Nickelodeon" group-title="港澳台",Nickelodeon -http://103.137.83.62:9090/play/28/index.m3u8$LR•IPV4•27『线路9』 +https://stream8.cinerama.uz/1500/playlist.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』 +https://jmp2.uk/plu-6824cda00101510f9eeaa011.m3u8$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://jmp2.uk/plu-6824ce10c5d53e1351ceb8d1.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-67f3eb800a1beb98767ca748.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-5d8d08395f39465da6fb3ec4.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』 +http://46.149.191.217:9011/play/a018$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』 +http://151.80.18.177:86/Nickelodeon_Junior/index.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://138.186.23.7:8082/NICK/index.m3u8$LR•IPV4•27『线路16』 #EXTINF:-1 tvg-id="Nickelodeon" tvg-name="Nickelodeon" group-title="港澳台",Nickelodeon -http://138.186.23.7:8082/NICK/index.m3u8$LR•IPV4•27『线路17』 +https://jmp2.uk/plu-5f0d668b872e4400073acc68.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』 +https://jmp2.uk/plu-60f5fabf0721880007cd50e3.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-5fab09a8749b1a00077d35d2.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-5ede448d3d50590007a4419e.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-645951c0e94c38000802d2cb.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-645952687cb4b100084ed52e.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』 +http://108.181.20.255:27347/livehttpplay?channel_id=23019$LR•IPV4•27『线路23』 #EXTINF:-1 tvg-id="Nickelodeon" tvg-name="Nickelodeon" group-title="港澳台",Nickelodeon -http://108.181.20.255:27347/livehttpplay?channel_id=23019$LR•IPV4•27『线路24』 +https://jmp2.uk/plu-620ff46e0a576e0007dc2f89.m3u8$LR•IPV4•27『线路24』 #EXTINF:-1 tvg-id="Nickelodeon" tvg-name="Nickelodeon" group-title="港澳台",Nickelodeon -https://jmp2.uk/plu-620ff46e0a576e0007dc2f89.m3u8$LR•IPV4•27『线路25』 +https://jmp2.uk/plu-620ff0a01f9e8700076c6f9d.m3u8$LR•IPV4•27『线路25』 #EXTINF:-1 tvg-id="Nickelodeon" tvg-name="Nickelodeon" group-title="港澳台",Nickelodeon -https://jmp2.uk/plu-620ff0a01f9e8700076c6f9d.m3u8$LR•IPV4•27『线路26』 +https://jmp2.uk/plu-5ca673e0d0bd6c2689c94ce3.m3u8$LR•IPV4•27『线路26』 #EXTINF:-1 tvg-id="Nickelodeon" tvg-name="Nickelodeon" group-title="港澳台",Nickelodeon -https://jmp2.uk/plu-5ca673e0d0bd6c2689c94ce3.m3u8$LR•IPV4•27『线路27』 +http://free.cnlive.club/channel/n6a165737/index.m3u8?q=1752629214236$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 #EXTINF:-1 tvg-id="ZooMoo" tvg-name="ZooMoo" group-title="港澳台",ZooMoo @@ -6768,9 +6784,9 @@ 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 -p3p://167.114.175.6:55331/65ad274400000b46bd92da681fce74f2$LR•IPV4•2『线路1』 +http://nmk.ioapk.com:5050/4gtv-live138/index.m3u8$LR•IPV4•2『线路1』 #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『线路2』 +p3p://167.114.175.6:55331/65ad274400000b46bd92da681fce74f2$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•4『线路1』 #EXTINF:-1 tvg-id="TVB Plus" tvg-name="TVB Plus" group-title="港澳台",TVB Plus @@ -6780,59 +6796,59 @@ p3p://167.114.175.6:55331/6649bce20008d56453eeebfc022701f1$LR•IPV4•4『线 #EXTINF:-1 tvg-id="TVB Plus" tvg-name="TVB Plus" group-title="港澳台",TVB Plus p3p://167.114.175.6:55331/653e4d3e000b344f0c91357e73163f82$LR•IPV4•4『线路4』 #EXTINF:-1 tvg-id="AXN" tvg-name="AXN" group-title="港澳台",AXN -p3p://167.114.175.6:55331/66d23a53000d25d573c606e3274f26c5$LR•IPV4•24『线路1』 +http://45.190.28.50/AXN_HD/index.m3u8$LR•IPV4•24『线路1』 #EXTINF:-1 tvg-id="AXN" tvg-name="AXN" group-title="港澳台",AXN -p3p://167.114.175.6:55331/6258ddc5000ee8a40e1bc8f50dec545c$LR•IPV4•24『线路2』 +http://cdn.haititivi.com/AXN/index.m3u8$LR•IPV4•24『线路2』 #EXTINF:-1 tvg-id="AXN" tvg-name="AXN" group-title="港澳台",AXN -http://45.190.28.50/AXN_HD/index.m3u8$LR•IPV4•24『线路3』 +http://znty.dyndns.org:5010/hls/axn.m3u8$LR•IPV4•24『线路3』 #EXTINF:-1 tvg-id="AXN" tvg-name="AXN" group-title="港澳台",AXN -http://cdn.haititivi.com/AXN/index.m3u8$LR•IPV4•24『线路4』 +http://5.57.74.130:8000/play/a0at/index.m3u8$LR•IPV4•24『线路4』 #EXTINF:-1 tvg-id="AXN" tvg-name="AXN" group-title="港澳台",AXN -http://znty.dyndns.org:5010/hls/axn.m3u8$LR•IPV4•24『线路5』 +http://85.14.32.26:8800/udp/239.100.10.17:5000$LR•IPV4•24『线路5』 #EXTINF:-1 tvg-id="AXN" tvg-name="AXN" group-title="港澳台",AXN -http://5.57.74.130:8000/play/a0at/index.m3u8$LR•IPV4•24『线路6』 +http://88.212.15.19/live/test_black/playlist.m3u8$LR•IPV4•24『线路6』 #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•24『线路7』 +http://82.78.243.219:45739/play/a00e/index.m3u8$LR•IPV4•24『线路7』 #EXTINF:-1 tvg-id="AXN" tvg-name="AXN" group-title="港澳台",AXN -http://88.212.15.19/live/test_black/playlist.m3u8$LR•IPV4•24『线路8』 +http://46.149.191.217:9009/play/a02d$LR•IPV4•24『线路8』 #EXTINF:-1 tvg-id="AXN" tvg-name="AXN" group-title="港澳台",AXN -http://82.78.243.219:45739/play/a00e/index.m3u8$LR•IPV4•24『线路9』 +http://85.11.144.9:4222/AXN$LR•IPV4•24『线路9』 #EXTINF:-1 tvg-id="AXN" tvg-name="AXN" group-title="港澳台",AXN -http://46.149.191.217:9009/play/a02d$LR•IPV4•24『线路10』 +http://88.212.15.19/live/test_axn/playlist.m3u8$LR•IPV4•24『线路10』 #EXTINF:-1 tvg-id="AXN" tvg-name="AXN" group-title="港澳台",AXN -http://85.11.144.9:4222/AXN$LR•IPV4•24『线路11』 +http://82.78.243.219:45739/play/a01n/index.m3u8$LR•IPV4•24『线路11』 #EXTINF:-1 tvg-id="AXN" tvg-name="AXN" group-title="港澳台",AXN -http://88.212.15.19/live/test_axn/playlist.m3u8$LR•IPV4•24『线路12』 +http://138.121.15.230:9002/AXN/index.m3u8$LR•IPV4•24『线路12』 #EXTINF:-1 tvg-id="AXN" tvg-name="AXN" group-title="港澳台",AXN -http://82.78.243.219:45739/play/a01n/index.m3u8$LR•IPV4•24『线路13』 +http://138.186.23.7:8082/AXN/index.m3u8$LR•IPV4•24『线路13』 #EXTINF:-1 tvg-id="AXN" tvg-name="AXN" group-title="港澳台",AXN -http://138.121.15.230:9002/AXN/index.m3u8$LR•IPV4•24『线路14』 +http://177.245.131.133:8080/AXN/index.m3u8$LR•IPV4•24『线路14』 #EXTINF:-1 tvg-id="AXN" tvg-name="AXN" group-title="港澳台",AXN -http://138.186.23.7:8082/AXN/index.m3u8$LR•IPV4•24『线路15』 +http://45.228.235.116:8000/play/a0iy/index.m3u8$LR•IPV4•24『线路15』 #EXTINF:-1 tvg-id="AXN" tvg-name="AXN" group-title="港澳台",AXN -http://177.245.131.133:8080/AXN/index.m3u8$LR•IPV4•24『线路16』 +http://50.7.120.34:8080/AXN_BLACK/index.m3u8$LR•IPV4•24『线路16』 #EXTINF:-1 tvg-id="AXN" tvg-name="AXN" group-title="港澳台",AXN -http://45.228.235.116:8000/play/a0iy/index.m3u8$LR•IPV4•24『线路17』 +https://lb.dstvmultimedia.com/AXNSpin/index.m3u8$LR•IPV4•24『线路17』 #EXTINF:-1 tvg-id="AXN" tvg-name="AXN" group-title="港澳台",AXN -http://50.7.120.34:8080/AXN_BLACK/index.m3u8$LR•IPV4•24『线路18』 +http://82.78.243.219:45739/play/a00n/index.m3u8$LR•IPV4•24『线路18』 #EXTINF:-1 tvg-id="AXN" tvg-name="AXN" group-title="港澳台",AXN -https://lb.dstvmultimedia.com/AXNSpin/index.m3u8$LR•IPV4•24『线路19』 +http://85.14.32.26:8800/udp/239.100.10.18:5000$LR•IPV4•24『线路19』 #EXTINF:-1 tvg-id="AXN" tvg-name="AXN" group-title="港澳台",AXN -http://82.78.243.219:45739/play/a00n/index.m3u8$LR•IPV4•24『线路20』 +http://88.212.15.19/live/test_white/playlist.m3u8$LR•IPV4•24『线路20』 #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•24『线路21』 +http://50.7.120.34:8080/AXN_WHITE/index.m3u8$LR•IPV4•24『线路21』 #EXTINF:-1 tvg-id="AXN" tvg-name="AXN" group-title="港澳台",AXN -http://88.212.15.19/live/test_white/playlist.m3u8$LR•IPV4•24『线路22』 +http://103.137.83.62:9090/play/21/index.m3u8$LR•IPV4•24『线路22』 #EXTINF:-1 tvg-id="AXN" tvg-name="AXN" group-title="港澳台",AXN -http://50.7.120.34:8080/AXN_WHITE/index.m3u8$LR•IPV4•24『线路23』 +p3p://167.114.175.6:55331/66d23a53000d25d573c606e3274f26c5$LR•IPV4•24『线路23』 #EXTINF:-1 tvg-id="AXN" tvg-name="AXN" group-title="港澳台",AXN -http://103.137.83.62:9090/play/21/index.m3u8$LR•IPV4•24『线路24』 +p3p://167.114.175.6:55331/6258ddc5000ee8a40e1bc8f50dec545c$LR•IPV4•24『线路24』 #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="港澳台",澳门卫视 -http://61.244.22.4/ch1/ch1.live/playlist.m3u8$LR•IPV4•2『线路1』 +http://php.jdshipin.com:8880/TVOD/iptv.php?id=as$LR•IPV4•2『线路1』 #EXTINF:-1 tvg-id="澳门卫视" tvg-name="澳门卫视" group-title="港澳台",澳门卫视 -http://php.jdshipin.com:8880/TVOD/iptv.php?id=as$LR•IPV4•2『线路2』 +http://61.244.22.4/ch1/ch1.live/playlist.m3u8$LR•IPV4•2『线路2』 #EXTINF:-1 tvg-id="Pet Club TV" tvg-name="Pet Club TV" group-title="港澳台",Pet Club TV https://cdn-apse1-prod.tsv2.amagi.tv/linear/amg01076-lightningintern-petclub-samsungnz/playlist.m3u8$LR•IPV4•2『线路1』 #EXTINF:-1 tvg-id="Pet Club TV" tvg-name="Pet Club TV" group-title="港澳台",Pet Club TV @@ -6856,77 +6872,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 -http://live.streamingfast.net/hls-live/goodtv/_definst_/liveevent/live-ch1-3.m3u8$LR•IPV4•38『线路3』 +https://aajtaklive.vgcdn.net/v1/master/611d79b11b77e2f571934fd80ca1413453772ac7/3196cced-ce29-4219-9809-f07ccdaa02b9/vglive-sk-848805/master.m3u8$LR•IPV4•38『线路3』 #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『线路4』 +http://stream1.ai-net.net:1935/gtv1/_definst_/smil:gtv.smil/playlist.m3u8$LR•IPV4•38『线路4』 #EXTINF:-1 tvg-id="Good" tvg-name="Good" group-title="港澳台",Good -p3p://167.114.175.6:55331/63ed9f4900046160e96ffb5b44333476$LR•IPV4•38『线路5』 +https://58c04fb1d143f.streamlock.net/feel_good_radio_1/feel_good_radio_1/playlist.m3u8$LR•IPV4•38『线路5』 #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『线路6』 +https://live.streamingfast.net/osmflivech3.m3u8$LR•IPV4•38『线路6』 #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『线路7』 +https://live.streamingfast.net/osmflivech5.m3u8$LR•IPV4•38『线路7』 #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『线路8』 +https://live.streamingfast.net/osmflivech6.m3u8$LR•IPV4•38『线路8』 #EXTINF:-1 tvg-id="Good" tvg-name="Good" group-title="港澳台",Good -https://live.streamingfast.net/osmflivech3.m3u8$LR•IPV4•38『线路9』 +https://live.streamingfast.net/osmflivech7.m3u8$LR•IPV4•38『线路9』 #EXTINF:-1 tvg-id="Good" tvg-name="Good" group-title="港澳台",Good -https://live.streamingfast.net/osmflivech5.m3u8$LR•IPV4•38『线路10』 +https://live.streamingfast.net/osmflivech9.m3u8$LR•IPV4•38『线路10』 #EXTINF:-1 tvg-id="Good" tvg-name="Good" group-title="港澳台",Good -https://live.streamingfast.net/osmflivech6.m3u8$LR•IPV4•38『线路11』 +https://live.streamingfast.net/osmflivech12.m3u8$LR•IPV4•38『线路11』 #EXTINF:-1 tvg-id="Good" tvg-name="Good" group-title="港澳台",Good -https://live.streamingfast.net/osmflivech7.m3u8$LR•IPV4•38『线路12』 +https://live.streamingfast.net/osmflivech14.m3u8$LR•IPV4•38『线路12』 #EXTINF:-1 tvg-id="Good" tvg-name="Good" group-title="港澳台",Good -https://live.streamingfast.net/osmflivech9.m3u8$LR•IPV4•38『线路13』 +https://live.streamingfast.net/osmflivech15.m3u8$LR•IPV4•38『线路13』 #EXTINF:-1 tvg-id="Good" tvg-name="Good" group-title="港澳台",Good -https://live.streamingfast.net/osmflivech12.m3u8$LR•IPV4•38『线路14』 +https://live.streamingfast.net/osmflivech16.m3u8$LR•IPV4•38『线路14』 #EXTINF:-1 tvg-id="Good" tvg-name="Good" group-title="港澳台",Good -https://live.streamingfast.net/osmflivech14.m3u8$LR•IPV4•38『线路15』 +https://live.streamingfast.net/osmflivech17.m3u8$LR•IPV4•38『线路15』 #EXTINF:-1 tvg-id="Good" tvg-name="Good" group-title="港澳台",Good -https://live.streamingfast.net/osmflivech15.m3u8$LR•IPV4•38『线路16』 +https://live.streamingfast.net/osmflivech18.m3u8$LR•IPV4•38『线路16』 #EXTINF:-1 tvg-id="Good" tvg-name="Good" group-title="港澳台",Good -https://live.streamingfast.net/osmflivech16.m3u8$LR•IPV4•38『线路17』 +https://live.streamingfast.net/osmflivech20.m3u8$LR•IPV4•38『线路17』 #EXTINF:-1 tvg-id="Good" tvg-name="Good" group-title="港澳台",Good -https://live.streamingfast.net/osmflivech17.m3u8$LR•IPV4•38『线路18』 +https://live.streamingfast.net/osmflivech21.m3u8$LR•IPV4•38『线路18』 #EXTINF:-1 tvg-id="Good" tvg-name="Good" group-title="港澳台",Good -https://live.streamingfast.net/osmflivech18.m3u8$LR•IPV4•38『线路19』 +https://live.streamingfast.net/osmflivech24.m3u8$LR•IPV4•38『线路19』 #EXTINF:-1 tvg-id="Good" tvg-name="Good" group-title="港澳台",Good -https://live.streamingfast.net/osmflivech20.m3u8$LR•IPV4•38『线路20』 +https://live.streamingfast.net/osmflivech27.m3u8$LR•IPV4•38『线路20』 #EXTINF:-1 tvg-id="Good" tvg-name="Good" group-title="港澳台",Good -https://live.streamingfast.net/osmflivech21.m3u8$LR•IPV4•38『线路21』 +https://live.streamingfast.net/osmflivech28.m3u8$LR•IPV4•38『线路21』 #EXTINF:-1 tvg-id="Good" tvg-name="Good" group-title="港澳台",Good -https://live.streamingfast.net/osmflivech24.m3u8$LR•IPV4•38『线路22』 +https://live.streamingfast.net/osmflivech29.m3u8$LR•IPV4•38『线路22』 #EXTINF:-1 tvg-id="Good" tvg-name="Good" group-title="港澳台",Good -https://live.streamingfast.net/osmflivech27.m3u8$LR•IPV4•38『线路23』 +https://live.streamingfast.net/osmflivech30.m3u8$LR•IPV4•38『线路23』 #EXTINF:-1 tvg-id="Good" tvg-name="Good" group-title="港澳台",Good -https://live.streamingfast.net/osmflivech28.m3u8$LR•IPV4•38『线路24』 +https://live.streamingfast.net/osmflivech31.m3u8$LR•IPV4•38『线路24』 #EXTINF:-1 tvg-id="Good" tvg-name="Good" group-title="港澳台",Good -https://live.streamingfast.net/osmflivech29.m3u8$LR•IPV4•38『线路25』 +https://live.streamingfast.net/osmflivech32.m3u8$LR•IPV4•38『线路25』 #EXTINF:-1 tvg-id="Good" tvg-name="Good" group-title="港澳台",Good -https://live.streamingfast.net/osmflivech30.m3u8$LR•IPV4•38『线路26』 +https://live.streamingfast.net/osmflivech33.m3u8$LR•IPV4•38『线路26』 #EXTINF:-1 tvg-id="Good" tvg-name="Good" group-title="港澳台",Good -https://live.streamingfast.net/osmflivech31.m3u8$LR•IPV4•38『线路27』 +https://live.streamingfast.net/osmflivech38.m3u8$LR•IPV4•38『线路27』 #EXTINF:-1 tvg-id="Good" tvg-name="Good" group-title="港澳台",Good -https://live.streamingfast.net/osmflivech32.m3u8$LR•IPV4•38『线路28』 +https://live.streamingfast.net/osmflivech40.m3u8$LR•IPV4•38『线路28』 #EXTINF:-1 tvg-id="Good" tvg-name="Good" group-title="港澳台",Good -https://live.streamingfast.net/osmflivech33.m3u8$LR•IPV4•38『线路29』 +https://live.streamingfast.net/osmflivech45.m3u8$LR•IPV4•38『线路29』 #EXTINF:-1 tvg-id="Good" tvg-name="Good" group-title="港澳台",Good -https://live.streamingfast.net/osmflivech38.m3u8$LR•IPV4•38『线路30』 +https://live.streamingfast.net/osmflivech47.m3u8$LR•IPV4•38『线路30』 #EXTINF:-1 tvg-id="Good" tvg-name="Good" group-title="港澳台",Good -https://live.streamingfast.net/osmflivech40.m3u8$LR•IPV4•38『线路31』 +https://live.streamingfast.net/osmflivech49.m3u8$LR•IPV4•38『线路31』 #EXTINF:-1 tvg-id="Good" tvg-name="Good" group-title="港澳台",Good -https://live.streamingfast.net/osmflivech45.m3u8$LR•IPV4•38『线路32』 +https://live.streamingfast.net/osmflivech50.m3u8$LR•IPV4•38『线路32』 #EXTINF:-1 tvg-id="Good" tvg-name="Good" group-title="港澳台",Good -https://live.streamingfast.net/osmflivech47.m3u8$LR•IPV4•38『线路33』 +https://jmp2.uk/plu-65775af3b3801200084a3aa4.m3u8$LR•IPV4•38『线路33』 #EXTINF:-1 tvg-id="Good" tvg-name="Good" group-title="港澳台",Good -https://live.streamingfast.net/osmflivech49.m3u8$LR•IPV4•38『线路34』 +https://jmp2.uk/plu-685a995b460ac82fa504342c.m3u8$LR•IPV4•38『线路34』 #EXTINF:-1 tvg-id="Good" tvg-name="Good" group-title="港澳台",Good -https://live.streamingfast.net/osmflivech50.m3u8$LR•IPV4•38『线路35』 +https://amg01448-samsungin-ndtvgoodtimes-samsungin-ad-gp.amagi.tv/playlist/amg01448-samsungin-ndtvgoodtimes-samsungin/playlist.m3u8$LR•IPV4•38『线路35』 #EXTINF:-1 tvg-id="Good" tvg-name="Good" group-title="港澳台",Good -https://jmp2.uk/plu-65775af3b3801200084a3aa4.m3u8$LR•IPV4•38『线路36』 +http://live.streamingfast.net/hls-live/goodtv/_definst_/liveevent/live-ch1-3.m3u8$LR•IPV4•38『线路36』 #EXTINF:-1 tvg-id="Good" tvg-name="Good" group-title="港澳台",Good -https://jmp2.uk/plu-685a995b460ac82fa504342c.m3u8$LR•IPV4•38『线路37』 +http://live.streamingfast.net/hls-live/goodtv/_definst_/liveevent/live-ch2-3.m3u8$LR•IPV4•38『线路37』 #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『线路38』 +p3p://167.114.175.6:55331/63ed9f4900046160e96ffb5b44333476$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 @@ -6950,35 +6966,35 @@ https://raw.githubusercontent.com/ChiSheng9/iptv/master/TV28.m3u8$LR•IPV4 #EXTINF:-1 tvg-id="FTV News" tvg-name="FTV News" group-title="港澳台",FTV News 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•15『线路1』 +https://jmp2.uk/plu-62cbf063257170000724590c.m3u8$LR•IPV4•15『线路1』 #EXTINF:-1 tvg-id="Global News" tvg-name="Global News" group-title="港澳台",Global News -https://jmp2.uk/plu-62cbf063257170000724590c.m3u8$LR•IPV4•15『线路2』 +https://jmp2.uk/plu-62cbf23dcfb48300077f8348.m3u8$LR•IPV4•15『线路2』 #EXTINF:-1 tvg-id="Global News" tvg-name="Global News" group-title="港澳台",Global News -https://jmp2.uk/plu-62cbf23dcfb48300077f8348.m3u8$LR•IPV4•15『线路3』 +https://jmp2.uk/plu-62cbf2de1fba5f0007e47d9c.m3u8$LR•IPV4•15『线路3』 #EXTINF:-1 tvg-id="Global News" tvg-name="Global News" group-title="港澳台",Global News -https://jmp2.uk/plu-62cbf2de1fba5f0007e47d9c.m3u8$LR•IPV4•15『线路4』 +https://jmp2.uk/plu-62cbf398b8e02600071deda5.m3u8$LR•IPV4•15『线路4』 #EXTINF:-1 tvg-id="Global News" tvg-name="Global News" group-title="港澳台",Global News -https://jmp2.uk/plu-62cbf398b8e02600071deda5.m3u8$LR•IPV4•15『线路5』 +https://jmp2.uk/plu-62cbf4964446e2000742073e.m3u8$LR•IPV4•15『线路5』 #EXTINF:-1 tvg-id="Global News" tvg-name="Global News" group-title="港澳台",Global News -https://jmp2.uk/plu-62cbf4964446e2000742073e.m3u8$LR•IPV4•15『线路6』 +https://jmp2.uk/plu-62cbf7439cb58900088dc77b.m3u8$LR•IPV4•15『线路6』 #EXTINF:-1 tvg-id="Global News" tvg-name="Global News" group-title="港澳台",Global News -https://jmp2.uk/plu-62cbf7439cb58900088dc77b.m3u8$LR•IPV4•15『线路7』 +https://jmp2.uk/plu-62cbfbd6ad95670007f567af.m3u8$LR•IPV4•15『线路7』 #EXTINF:-1 tvg-id="Global News" tvg-name="Global News" group-title="港澳台",Global News -https://jmp2.uk/plu-62cbfbd6ad95670007f567af.m3u8$LR•IPV4•15『线路8』 +https://jmp2.uk/plu-62cbef9ebb857100072fc187.m3u8$LR•IPV4•15『线路8』 #EXTINF:-1 tvg-id="Global News" tvg-name="Global News" group-title="港澳台",Global News -https://jmp2.uk/plu-62cbef9ebb857100072fc187.m3u8$LR•IPV4•15『线路9』 +https://jmp2.uk/plu-62cbfc572dc3750007a493ce.m3u8$LR•IPV4•15『线路9』 #EXTINF:-1 tvg-id="Global News" tvg-name="Global News" group-title="港澳台",Global News -https://jmp2.uk/plu-62cbfc572dc3750007a493ce.m3u8$LR•IPV4•15『线路10』 +https://jmp2.uk/plu-62cbfcd8c2db990007861e43.m3u8$LR•IPV4•15『线路10』 #EXTINF:-1 tvg-id="Global News" tvg-name="Global News" group-title="港澳台",Global News -https://jmp2.uk/plu-62cbfcd8c2db990007861e43.m3u8$LR•IPV4•15『线路11』 +https://jmp2.uk/plu-62cbff53ca8f2200080253b5.m3u8$LR•IPV4•15『线路11』 #EXTINF:-1 tvg-id="Global News" tvg-name="Global News" group-title="港澳台",Global News -https://jmp2.uk/plu-62cbff53ca8f2200080253b5.m3u8$LR•IPV4•15『线路12』 +https://jmp2.uk/plu-62cc00359cb58900088dc840.m3u8$LR•IPV4•15『线路12』 #EXTINF:-1 tvg-id="Global News" tvg-name="Global News" group-title="港澳台",Global News -https://jmp2.uk/plu-62cc00359cb58900088dc840.m3u8$LR•IPV4•15『线路13』 +https://jmp2.uk/plu-62cc00b3b821cf00070f82c3.m3u8$LR•IPV4•15『线路13』 #EXTINF:-1 tvg-id="Global News" tvg-name="Global News" group-title="港澳台",Global News -https://jmp2.uk/plu-62cc00b3b821cf00070f82c3.m3u8$LR•IPV4•15『线路14』 +https://jmp2.uk/plu-62cc0120880c890007191016.m3u8$LR•IPV4•15『线路14』 #EXTINF:-1 tvg-id="Global News" tvg-name="Global News" group-title="港澳台",Global News -https://jmp2.uk/plu-62cc0120880c890007191016.m3u8$LR•IPV4•15『线路15』 +https://live.corusdigitaldev.com/groupb/live/3062d0e3-ed4c-4f47-8482-95648250f4b8/live.isml/.m3u8$LR•IPV4•15『线路15』 #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 @@ -7008,11 +7024,11 @@ 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 -p3p://167.114.175.6:55331/62184bc3000cd48f11e47b06202b7e18$LR•IPV4•3『线路1』 +https://hoytv-live-stream.hoy.tv/ch77/index.m3u8$LR•IPV4•3『线路1』 #EXTINF:-1 tvg-id="HOY TV" tvg-name="HOY TV" group-title="港澳台",HOY TV -http://php.jdshipin.com/TVOD/iptv.php?id=hoytv$LR•IPV4•3『线路2』 +p3p://167.114.175.6:55331/62184bc3000cd48f11e47b06202b7e18$LR•IPV4•3『线路2』 #EXTINF:-1 tvg-id="HOY TV" tvg-name="HOY TV" group-title="港澳台",HOY TV -https://hoytv-live-stream.hoy.tv/ch77/index.m3u8$LR•IPV4•3『线路3』 +http://php.jdshipin.com/TVOD/iptv.php?id=hoytv$LR•IPV4•3『线路3』 #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 @@ -7022,51 +7038,51 @@ p3p://167.114.175.6:55331/63eda04a0001f6fae973e6a334696980$LR•IPV4 #EXTINF:-1 tvg-id="大立" tvg-name="大立" group-title="港澳台",大立 p3p://167.114.175.6:55331/64c4d2ba00051d1d320d17d218503f93$LR•IPV4 #EXTINF:-1 tvg-id="National Geographic" tvg-name="National Geographic" group-title="港澳台",National Geographic -http://23.237.104.106:8080/USA_NAT_GEO/index.m3u8$LR•IPV4•23『线路1』 +http://213.91.179.28:8000/play/a0ct$LR•IPV4•23『线路1』 #EXTINF:-1 tvg-id="National Geographic" tvg-name="National Geographic" group-title="港澳台",National Geographic -http://213.91.179.28:8000/play/a0ct$LR•IPV4•23『线路2』 +http://167.250.126.140:7777/NATGEO-HD/index.m3u8$LR•IPV4•23『线路2』 #EXTINF:-1 tvg-id="National Geographic" tvg-name="National Geographic" group-title="港澳台",National Geographic -http://167.250.126.140:7777/NATGEO-HD/index.m3u8$LR•IPV4•23『线路3』 +http://185.102.171.218/NatGeo/index.m3u8$LR•IPV4•23『线路3』 #EXTINF:-1 tvg-id="National Geographic" tvg-name="National Geographic" group-title="港澳台",National Geographic -http://185.102.171.218/NatGeo/index.m3u8$LR•IPV4•23『线路4』 +http://138.121.15.230:9002/NAT-GEO/index.m3u8$LR•IPV4•23『线路4』 #EXTINF:-1 tvg-id="National Geographic" tvg-name="National Geographic" group-title="港澳台",National Geographic -http://138.121.15.230:9002/NAT-GEO/index.m3u8$LR•IPV4•23『线路5』 +https://saran-live.ercdn.net/natgeohd/index.m3u8$LR•IPV4•23『线路5』 #EXTINF:-1 tvg-id="National Geographic" tvg-name="National Geographic" group-title="港澳台",National Geographic -https://saran-live.ercdn.net/natgeohd/index.m3u8$LR•IPV4•23『线路6』 +http://40.160.24.53/NAT_GEO/index.m3u8$LR•IPV4•23『线路6』 #EXTINF:-1 tvg-id="National Geographic" tvg-name="National Geographic" group-title="港澳台",National Geographic -http://40.160.24.53/NAT_GEO/index.m3u8$LR•IPV4•23『线路7』 +https://live-fi.tvkaista.net/national-geographic/live.m3u8?hd=true$LR•IPV4•23『线路7』 #EXTINF:-1 tvg-id="National Geographic" tvg-name="National Geographic" group-title="港澳台",National Geographic -https://live-fi.tvkaista.net/national-geographic/live.m3u8?hd=true$LR•IPV4•23『线路8』 +http://149.71.34.166:8002/play/a013/index.m3u8$LR•IPV4•23『线路8』 #EXTINF:-1 tvg-id="National Geographic" tvg-name="National Geographic" group-title="港澳台",National Geographic -http://149.71.34.166:8002/play/a013/index.m3u8$LR•IPV4•23『线路9』 +http://46.32.176.50/NationalGeographicHD/index.m3u8$LR•IPV4•23『线路9』 #EXTINF:-1 tvg-id="National Geographic" tvg-name="National Geographic" group-title="港澳台",National Geographic -http://46.32.176.50/NationalGeographicHD/index.m3u8$LR•IPV4•23『线路10』 +http://198.58.104.90:8989/natgeo/index.m3u8$LR•IPV4•23『线路10』 #EXTINF:-1 tvg-id="National Geographic" tvg-name="National Geographic" group-title="港澳台",National Geographic -http://198.58.104.90:8989/natgeo/index.m3u8$LR•IPV4•23『线路11』 +http://45.162.193.35/NATGEO/index.m3u8$LR•IPV4•23『线路11』 #EXTINF:-1 tvg-id="National Geographic" tvg-name="National Geographic" group-title="港澳台",National Geographic -http://45.162.193.35/NATGEO/index.m3u8$LR•IPV4•23『线路12』 +http://bantel-cdn1.iptvperu.tv:1935/btnscrtn/NatGeo.stream/playlist.m3u8$LR•IPV4•23『线路12』 #EXTINF:-1 tvg-id="National Geographic" tvg-name="National Geographic" group-title="港澳台",National Geographic -http://bantel-cdn1.iptvperu.tv:1935/btnscrtn/NatGeo.stream/playlist.m3u8$LR•IPV4•23『线路13』 +http://206.212.244.63/122/index.m3u8$LR•IPV4•23『线路13』 #EXTINF:-1 tvg-id="National Geographic" tvg-name="National Geographic" group-title="港澳台",National Geographic -http://206.212.244.63/122/index.m3u8$LR•IPV4•23『线路14』 +http://213.91.179.28:8000/play/a0cu$LR•IPV4•23『线路14』 #EXTINF:-1 tvg-id="National Geographic" tvg-name="National Geographic" group-title="港澳台",National Geographic -http://213.91.179.28:8000/play/a0cu$LR•IPV4•23『线路15』 +http://41.205.77.102/NATGEO-WILD/index.m3u8$LR•IPV4•23『线路15』 #EXTINF:-1 tvg-id="National Geographic" tvg-name="National Geographic" group-title="港澳台",National Geographic -http://41.205.77.102/NATGEO-WILD/index.m3u8$LR•IPV4•23『线路16』 +http://185.102.171.218/NatGeoWild/index.m3u8$LR•IPV4•23『线路16』 #EXTINF:-1 tvg-id="National Geographic" tvg-name="National Geographic" group-title="港澳台",National Geographic -http://185.102.171.218/NatGeoWild/index.m3u8$LR•IPV4•23『线路17』 +http://hls127.freeott.top:8080/Nat_Geo_Wild_SD/video.m3u8$LR•IPV4•23『线路17』 #EXTINF:-1 tvg-id="National Geographic" tvg-name="National Geographic" group-title="港澳台",National Geographic -http://hls127.freeott.top:8080/Nat_Geo_Wild_SD/video.m3u8$LR•IPV4•23『线路18』 +https://saran-live.ercdn.net/natgeowild/index.m3u8$LR•IPV4•23『线路18』 #EXTINF:-1 tvg-id="National Geographic" tvg-name="National Geographic" group-title="港澳台",National Geographic -https://saran-live.ercdn.net/natgeowild/index.m3u8$LR•IPV4•23『线路19』 +http://46.32.176.50/natgeowild/index.m3u8$LR•IPV4•23『线路19』 #EXTINF:-1 tvg-id="National Geographic" tvg-name="National Geographic" group-title="港澳台",National Geographic -http://46.32.176.50/natgeowild/index.m3u8$LR•IPV4•23『线路20』 +http://40.160.24.53/NAT_GEO_WILD/index.m3u8$LR•IPV4•23『线路20』 #EXTINF:-1 tvg-id="National Geographic" tvg-name="National Geographic" group-title="港澳台",National Geographic -http://40.160.24.53/NAT_GEO_WILD/index.m3u8$LR•IPV4•23『线路21』 +http://149.71.34.166:8002/play/a012/index.m3u8$LR•IPV4•23『线路21』 #EXTINF:-1 tvg-id="National Geographic" tvg-name="National Geographic" group-title="港澳台",National Geographic -http://149.71.34.166:8002/play/a012/index.m3u8$LR•IPV4•23『线路22』 +http://198.58.104.90:8989/natgeowild/index.m3u8$LR•IPV4•23『线路22』 #EXTINF:-1 tvg-id="National Geographic" tvg-name="National Geographic" group-title="港澳台",National Geographic -http://198.58.104.90:8989/natgeowild/index.m3u8$LR•IPV4•23『线路23』 +http://23.237.104.106:8080/USA_NAT_GEO/index.m3u8$LR•IPV4•23『线路23』 #EXTINF:-1 tvg-id="東森新聞" tvg-name="東森新聞" group-title="港澳台",東森新聞 http://seb.sason.top/sc/dsxw_fhd.m3u8$LR•IPV4 #EXTINF:-1 tvg-id="Xite Hits" tvg-name="Xite Hits" group-title="港澳台",Xite Hits @@ -7080,17 +7096,17 @@ https://d198ro05q94rc4.cloudfront.net/XITE_Rock_On.m3u8$LR•IPV4 #EXTINF:-1 tvg-id="FIGHT SPORTS" tvg-name="FIGHT SPORTS" group-title="港澳台",FIGHT SPORTS p3p://167.114.175.6:55331/65a4480e000eb9449aeb1d5a33663b73$LR•IPV4 #EXTINF:-1 tvg-id="NBA TV" tvg-name="NBA TV" group-title="港澳台",NBA TV -https://stream1.freetv.fun/nba-tv-7.m3u8$LR•IPV4•6『线路1』 +https://amg00556-amg00556c3-firetv-us-6060.playouts.now.amagi.tv/playlist.m3u8$LR•IPV4•6『线路1』 #EXTINF:-1 tvg-id="NBA TV" tvg-name="NBA TV" group-title="港澳台",NBA TV -https://stream1.freetv.fun/nba-tv-5.m3u8$LR•IPV4•6『线路2』 +http://user.scalecdn.co:8080/live/54706135/09221986/3092.m3u8$LR•IPV4•6『线路2』 #EXTINF:-1 tvg-id="NBA TV" tvg-name="NBA TV" group-title="港澳台",NBA TV -http://170.yfvodcdn.com:19980/live/nbaTV2/hls.m3u8$LR•IPV4•6『线路3』 +https://stream1.freetv.fun/nba-tv-7.m3u8$LR•IPV4•6『线路3』 #EXTINF:-1 tvg-id="NBA TV" tvg-name="NBA TV" group-title="港澳台",NBA TV -p3p://167.114.175.6:55331/65a587500007bc039fca3566638e69af$LR•IPV4•6『线路4』 +https://stream1.freetv.fun/nba-tv-5.m3u8$LR•IPV4•6『线路4』 #EXTINF:-1 tvg-id="NBA TV" tvg-name="NBA TV" group-title="港澳台",NBA TV -https://amg00556-amg00556c3-firetv-us-6060.playouts.now.amagi.tv/playlist.m3u8$LR•IPV4•6『线路5』 +http://170.yfvodcdn.com:19980/live/nbaTV2/hls.m3u8$LR•IPV4•6『线路5』 #EXTINF:-1 tvg-id="NBA TV" tvg-name="NBA TV" group-title="港澳台",NBA TV -http://user.scalecdn.co:8080/live/54706135/09221986/3092.m3u8$LR•IPV4•6『线路6』 +p3p://167.114.175.6:55331/65a587500007bc039fca3566638e69af$LR•IPV4•6『线路6』 #EXTINF:-1 tvg-id="Sukan" tvg-name="Sukan" group-title="港澳台",Sukan https://d25tgymtnqzu8s.cloudfront.net/smil:sukan/manifest.mpd$LR•IPV4 #EXTINF:-1 tvg-id="TV9" tvg-name="TV9" group-title="港澳台",TV9 @@ -7116,303 +7132,303 @@ https://dash4.antik.sk/live/test_tv9/playlist.m3u8$LR•IPV4•11『线路10』 #EXTINF:-1 tvg-id="TV9" tvg-name="TV9" group-title="港澳台",TV9 https://5bf7b725107e5.streamlock.net/tv9/tv9/playlist.m3u8$LR•IPV4•11『线路11』 #EXTINF:-1 tvg-id="BBC" tvg-name="BBC" group-title="港澳台",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•97『线路1』 +https://vs-cmaf-pushb-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:bbc_alba/hevc_iptv_mse_v0.mpd$LR•IPV4•97『线路1』 #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•97『线路2』 +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•97『线路2』 #EXTINF:-1 tvg-id="BBC" tvg-name="BBC" group-title="港澳台",BBC -http://free.cnlive.club/channel/356e7ac6/index.m3u8?q=1752629214236$LR•IPV4•97『线路3』 +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•97『线路3』 #EXTINF:-1 tvg-id="BBC" tvg-name="BBC" group-title="港澳台",BBC -http://free.cnlive.club/channel/359a630b/index.m3u8?q=1752629214236$LR•IPV4•97『线路4』 +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•97『线路4』 #EXTINF:-1 tvg-id="BBC" tvg-name="BBC" group-title="港澳台",BBC -p3p://167.114.175.6:55331/64026f590000e9663abc652f25176282$LR•IPV4•97『线路5』 +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•97『线路5』 #EXTINF:-1 tvg-id="BBC" tvg-name="BBC" group-title="港澳台",BBC -p3p://167.114.175.6:55331/6444eb2e000921503e6ecfe873cd10b1$LR•IPV4•97『线路6』 +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•97『线路6』 #EXTINF:-1 tvg-id="BBC" tvg-name="BBC" group-title="港澳台",BBC -http://125.227.210.55:8165/VideoInput/play.ts$LR•IPV4•97『线路7』 +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•97『线路7』 #EXTINF:-1 tvg-id="BBC" tvg-name="BBC" group-title="港澳台",BBC -https://d2vnbkvjbims7j.cloudfront.net/containerA/LTN/playlist.m3u8$LR•IPV4•97『线路8』 +http://193.46.58.239:8080/BBCOneHD/index.m3u8$LR•IPV4•97『线路8』 #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•97『线路9』 +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•97『线路9』 #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•97『线路10』 +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•97『线路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_east/pc_hd_abr_v2.mpd$LR•IPV4•97『线路11』 +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•97『线路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_east_yorkshire/pc_hd_abr_v2.mpd$LR•IPV4•97『线路12』 +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•97『线路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_east_midlands/pc_hd_abr_v2.mpd$LR•IPV4•97『线路13』 +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•97『线路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_east_midlands/hevc_iptv_mse_v0.mpd$LR•IPV4•97『线路14』 +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•97『线路14』 #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•97『线路15』 +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•97『线路15』 #EXTINF:-1 tvg-id="BBC" tvg-name="BBC" group-title="港澳台",BBC -http://193.46.58.239:8080/BBCOneHD/index.m3u8$LR•IPV4•97『线路16』 +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•97『线路16』 #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•97『线路17』 +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•97『线路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_north_east/hevc_iptv_mse_v0.mpd$LR•IPV4•97『线路18』 +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•97『线路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_north_west/pc_hd_abr_v2.mpd$LR•IPV4•97『线路19』 +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•97『线路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_north_west/hevc_iptv_mse_v0.mpd$LR•IPV4•97『线路20』 +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•97『线路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_northern_ireland_hd/pc_hd_abr_v2.mpd$LR•IPV4•97『线路21』 +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•97『线路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_northern_ireland_hd/hevc_iptv_mse_v0.mpd$LR•IPV4•97『线路22』 +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•97『线路22』 #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•97『线路23』 +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•97『线路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_scotland_hd/pc_hd_abr_v2.mpd$LR•IPV4•97『线路24』 +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•97『线路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_south/pc_hd_abr_v2.mpd$LR•IPV4•97『线路25』 +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•97『线路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_one_south_east/pc_hd_abr_v2.mpd$LR•IPV4•97『线路26』 +http://193.46.58.239:8080/BBCTwoHD/index.m3u8$LR•IPV4•97『线路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_one_south_west/pc_hd_abr_v2.mpd$LR•IPV4•97『线路27』 +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•97『线路27』 #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•97『线路28』 +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•97『线路28』 #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•97『线路29』 +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•97『线路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_one_west_midlands/pc_hd_abr_v2.mpd$LR•IPV4•97『线路30』 +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•97『线路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_one_yorks/pc_hd_abr_v2.mpd$LR•IPV4•97『线路31』 +https://pb-iiczlgfysam0q.akamaized.net/v1/amcnetworks_bbcnews_1/samsungheadend_us/latest/main/hls/playlist.m3u8$LR•IPV4•97『线路31』 #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•97『线路32』 +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•97『线路32』 #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•97『线路33』 +http://138.121.15.230:9002/BBC-NEWS/index.m3u8$LR•IPV4•97『线路33』 #EXTINF:-1 tvg-id="BBC" tvg-name="BBC" group-title="港澳台",BBC -http://193.46.58.239:8080/BBCTwoHD/index.m3u8$LR•IPV4•97『线路34』 +http://23.237.104.106:8080/USA_BBC_NEWS/index.m3u8$LR•IPV4•97『线路34』 #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•97『线路35』 +http://45.153.96.44:8001$LR•IPV4•97『线路35』 #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•97『线路36』 +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•97『线路36』 #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•97『线路37』 +http://23.239.31.26:8989/bbcamerica/index.m3u8$LR•IPV4•97『线路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_arabic_tv/pc_hd_abr_v2.mpd$LR•IPV4•97『线路38』 +http://40.160.24.52/BBC_AMERICA/index.m3u8$LR•IPV4•97『线路38』 #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•97『线路39』 +http://91.146.94.234:10001/play/a087$LR•IPV4•97『线路39』 #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•97『线路40』 +https://d1em2hga7sgumq.cloudfront.net/playlist.m3u8$LR•IPV4•97『线路40』 #EXTINF:-1 tvg-id="BBC" tvg-name="BBC" group-title="港澳台",BBC -http://138.121.15.230:9002/BBC-NEWS/index.m3u8$LR•IPV4•97『线路41』 +https://pb-0ix3l1oxmg1fj.akamaized.net/playlist.m3u8$LR•IPV4•97『线路41』 #EXTINF:-1 tvg-id="BBC" tvg-name="BBC" group-title="港澳台",BBC -http://23.237.104.106:8080/USA_BBC_NEWS/index.m3u8$LR•IPV4•97『线路42』 +https://amg00793-amg00793c41-rakuten-it-5445.playouts.now.amagi.tv/playlist.m3u8$LR•IPV4•97『线路42』 #EXTINF:-1 tvg-id="BBC" tvg-name="BBC" group-title="港澳台",BBC -http://45.153.96.44:8001$LR•IPV4•97『线路43』 +https://bbc-impossible-1-us.xumo.wurl.tv/playlist.m3u8$LR•IPV4•97『线路43』 #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•97『线路44』 +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•97『线路44』 #EXTINF:-1 tvg-id="BBC" tvg-name="BBC" group-title="港澳台",BBC -http://23.239.31.26:8989/bbcamerica/index.m3u8$LR•IPV4•97『线路45』 +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•97『线路45』 #EXTINF:-1 tvg-id="BBC" tvg-name="BBC" group-title="港澳台",BBC -http://40.160.24.52/BBC_AMERICA/index.m3u8$LR•IPV4•97『线路46』 +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•97『线路46』 #EXTINF:-1 tvg-id="BBC" tvg-name="BBC" group-title="港澳台",BBC -http://91.146.94.234:10001/play/a087$LR•IPV4•97『线路47』 +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•97『线路47』 #EXTINF:-1 tvg-id="BBC" tvg-name="BBC" group-title="港澳台",BBC -https://d1em2hga7sgumq.cloudfront.net/playlist.m3u8$LR•IPV4•97『线路48』 +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•97『线路48』 #EXTINF:-1 tvg-id="BBC" tvg-name="BBC" group-title="港澳台",BBC -https://pb-0ix3l1oxmg1fj.akamaized.net/playlist.m3u8$LR•IPV4•97『线路49』 +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•97『线路49』 #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•97『线路50』 +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•97『线路50』 #EXTINF:-1 tvg-id="BBC" tvg-name="BBC" group-title="港澳台",BBC -https://bbc-impossible-1-us.xumo.wurl.tv/playlist.m3u8$LR•IPV4•97『线路51』 +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•97『线路51』 #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•97『线路52』 +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•97『线路52』 #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•97『线路53』 +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•97『线路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_002/iptv_hd_abr_v1.mpd$LR•IPV4•97『线路54』 +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•97『线路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_003/iptv_hd_abr_v1.mpd$LR•IPV4•97『线路55』 +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•97『线路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_004/iptv_hd_abr_v1.mpd$LR•IPV4•97『线路56』 +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•97『线路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_005/iptv_hd_abr_v1.mpd$LR•IPV4•97『线路57』 +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•97『线路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_006/iptv_hd_abr_v1.mpd$LR•IPV4•97『线路58』 +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•97『线路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_007/iptv_hd_abr_v1.mpd$LR•IPV4•97『线路59』 +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•97『线路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_008/iptv_hd_abr_v1.mpd$LR•IPV4•97『线路60』 +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•97『线路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_009/iptv_hd_abr_v1.mpd$LR•IPV4•97『线路61』 +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•97『线路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_010/iptv_hd_abr_v1.mpd$LR•IPV4•97『线路62』 +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•97『线路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_011/iptv_hd_abr_v1.mpd$LR•IPV4•97『线路63』 +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•97『线路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_012/iptv_hd_abr_v1.mpd$LR•IPV4•97『线路64』 +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•97『线路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_013/iptv_hd_abr_v1.mpd$LR•IPV4•97『线路65』 +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•97『线路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_014/iptv_hd_abr_v1.mpd$LR•IPV4•97『线路66』 +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•97『线路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_015/iptv_hd_abr_v1.mpd$LR•IPV4•97『线路67』 +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•97『线路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_016/iptv_hd_abr_v1.mpd$LR•IPV4•97『线路68』 +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•97『线路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_017/iptv_hd_abr_v1.mpd$LR•IPV4•97『线路69』 +https://jmp2.uk/plu-60dafb9a0df1ba000758d37b.m3u8$LR•IPV4•97『线路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_018/iptv_hd_abr_v1.mpd$LR•IPV4•97『线路70』 +https://jmp2.uk/plu-62e7fa5ab5062e0007dcf97d.m3u8$LR•IPV4•97『线路70』 #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•97『线路71』 +https://amg00793-amg00793c5-xumo-us-2664.playouts.now.amagi.tv/bbcstudios-bbctopgear8min-all/playlist.m3u8$LR•IPV4•97『线路71』 #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•97『线路72』 +https://amg00793-amg00793c5-firetv-us-4068.playouts.now.amagi.tv/playlist.m3u8$LR•IPV4•97『线路72』 #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•97『线路73』 +https://amg00793-amg00793c49-rakuten-fi-5848.playouts.now.amagi.tv/playlist.m3u8$LR•IPV4•97『线路73』 #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•97『线路74』 +https://amg00793-amg00793c45-rakuten-fr-5539.playouts.now.amagi.tv/playlist.m3u8$LR•IPV4•97『线路74』 #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•97『线路75』 +https://amg00793-amg00793c44-rakuten-de-5538.playouts.now.amagi.tv/playlist.m3u8$LR•IPV4•97『线路75』 #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•97『线路76』 +https://amg00793-amg00793c43-rakuten-it-5537.playouts.now.amagi.tv/playlist.m3u8$LR•IPV4•97『线路76』 #EXTINF:-1 tvg-id="BBC" tvg-name="BBC" group-title="港澳台",BBC -https://jmp2.uk/plu-60dafb9a0df1ba000758d37b.m3u8$LR•IPV4•97『线路77』 +https://dmr1h4skdal9h.cloudfront.net/playlist.m3u8$LR•IPV4•97『线路77』 #EXTINF:-1 tvg-id="BBC" tvg-name="BBC" group-title="港澳台",BBC -https://jmp2.uk/plu-62e7fa5ab5062e0007dcf97d.m3u8$LR•IPV4•97『线路78』 +https://bbc-classicdrwho-1-us.roku.wurl.tv/playlist.m3u8$LR•IPV4•97『线路78』 #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•97『线路79』 +https://amg00793-amg00793c40-rakuten-es-5444.playouts.now.amagi.tv/playlist.m3u8$LR•IPV4•97『线路79』 #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•97『线路80』 +https://d11r33s5i066xh.cloudfront.net/playlist.m3u8$LR•IPV4•97『线路80』 #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•97『线路81』 +https://cdn4.skygo.mn/live/disk1/BBC_lifestyle/HLSv3-FTA/BBC_lifestyle.m3u8$LR•IPV4•97『线路81』 #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•97『线路82』 +https://jmp2.uk/plu-60e4519e6873180007d3cddb.m3u8$LR•IPV4•97『线路82』 #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•97『线路83』 +https://amg00793-amg00793c6-xumo-us-2669.playouts.now.amagi.tv/BBCStudios-BBCEarthA-hls/playlist.m3u8$LR•IPV4•97『线路83』 #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•97『线路84』 +http://185.102.171.218/BBCEarth/index.m3u8$LR•IPV4•97『线路84』 #EXTINF:-1 tvg-id="BBC" tvg-name="BBC" group-title="港澳台",BBC -https://dmr1h4skdal9h.cloudfront.net/playlist.m3u8$LR•IPV4•97『线路85』 +https://vs-cmaf-pushb-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:bbc_parliament/iptv_hd_abr_v1.mpd$LR•IPV4•97『线路85』 #EXTINF:-1 tvg-id="BBC" tvg-name="BBC" group-title="港澳台",BBC -https://bbc-classicdrwho-1-us.roku.wurl.tv/playlist.m3u8$LR•IPV4•97『线路86』 +https://d1e9r0b71zfwk7.cloudfront.net/playlist.m3u8$LR•IPV4•97『线路86』 #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•97『线路87』 +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•97『线路87』 #EXTINF:-1 tvg-id="BBC" tvg-name="BBC" group-title="港澳台",BBC -https://d11r33s5i066xh.cloudfront.net/playlist.m3u8$LR•IPV4•97『线路88』 +http://193.46.58.239:8080/CbeebiesHD/index.m3u8$LR•IPV4•97『线路88』 #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•97『线路89』 +http://41.205.77.102/BBC-THREE/index.m3u8$LR•IPV4•97『线路89』 #EXTINF:-1 tvg-id="BBC" tvg-name="BBC" group-title="港澳台",BBC -https://jmp2.uk/plu-60e4519e6873180007d3cddb.m3u8$LR•IPV4•97『线路90』 +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•97『线路90』 #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•97『线路91』 +https://aegis-cloudfront-1.tubi.video/bb1fc6ad-9948-42ea-aaf3-20acfcdeecac/playlist.m3u8$LR•IPV4•97『线路91』 #EXTINF:-1 tvg-id="BBC" tvg-name="BBC" group-title="港澳台",BBC -http://185.102.171.218/BBCEarth/index.m3u8$LR•IPV4•97『线路92』 +http://free.cnlive.club/channel/356e7ac6/index.m3u8?q=1752629214236$LR•IPV4•97『线路92』 #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•97『线路93』 +http://free.cnlive.club/channel/359a630b/index.m3u8?q=1752629214236$LR•IPV4•97『线路93』 #EXTINF:-1 tvg-id="BBC" tvg-name="BBC" group-title="港澳台",BBC -https://d1e9r0b71zfwk7.cloudfront.net/playlist.m3u8$LR•IPV4•97『线路94』 +p3p://167.114.175.6:55331/64026f590000e9663abc652f25176282$LR•IPV4•97『线路94』 #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•97『线路95』 +p3p://167.114.175.6:55331/6444eb2e000921503e6ecfe873cd10b1$LR•IPV4•97『线路95』 #EXTINF:-1 tvg-id="BBC" tvg-name="BBC" group-title="港澳台",BBC -http://193.46.58.239:8080/CbeebiesHD/index.m3u8$LR•IPV4•97『线路96』 +http://125.227.210.55:8165/VideoInput/play.ts$LR•IPV4•97『线路96』 #EXTINF:-1 tvg-id="BBC" tvg-name="BBC" group-title="港澳台",BBC -http://41.205.77.102/BBC-THREE/index.m3u8$LR•IPV4•97『线路97』 +https://d2vnbkvjbims7j.cloudfront.net/containerA/LTN/playlist.m3u8$LR•IPV4•97『线路97』 #EXTINF:-1 tvg-id="CNA" tvg-name="CNA" group-title="港澳台",CNA -https://d2e1asnsl7br7b.cloudfront.net/7782e205e72f43aeb4a48ec97f66ebbe/index_5.m3u8$LR•IPV4•6『线路1』 +https://live1.mediadesk.al/cnatvlive.m3u8$LR•IPV4•6『线路1』 #EXTINF:-1 tvg-id="CNA" tvg-name="CNA" group-title="港澳台",CNA -http://d2e1asnsl7br7b.cloudfront.net/7782e205e72f43aeb4a48ec97f66ebbe/index_5.m3u8?zshijd$LR•IPV4•6『线路2』 +https://d2e1asnsl7br7b.cloudfront.net/7782e205e72f43aeb4a48ec97f66ebbe/index.m3u8$LR•IPV4•6『线路2』 #EXTINF:-1 tvg-id="CNA" tvg-name="CNA" group-title="港澳台",CNA -https://live1.mediadesk.al/cnatvlive.m3u8$LR•IPV4•6『线路3』 +https://live.creacast.com/cna/stream/playlist.m3u8$LR•IPV4•6『线路3』 #EXTINF:-1 tvg-id="CNA" tvg-name="CNA" group-title="港澳台",CNA -https://d2e1asnsl7br7b.cloudfront.net/7782e205e72f43aeb4a48ec97f66ebbe/index.m3u8$LR•IPV4•6『线路4』 +https://amg01082-cna-amg01082c1-rlaxx-us-11304.playouts.now.amagi.tv/playlist.m3u8$LR•IPV4•6『线路4』 #EXTINF:-1 tvg-id="CNA" tvg-name="CNA" group-title="港澳台",CNA -https://live.creacast.com/cna/stream/playlist.m3u8$LR•IPV4•6『线路5』 +https://d2e1asnsl7br7b.cloudfront.net/7782e205e72f43aeb4a48ec97f66ebbe/index_5.m3u8$LR•IPV4•6『线路5』 #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『线路6』 +http://d2e1asnsl7br7b.cloudfront.net/7782e205e72f43aeb4a48ec97f66ebbe/index_5.m3u8?zshijd$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•11『线路1』 +http://88.212.15.19/live/test_cnn_pirma_news/playlist.m3u8$LR•IPV4•11『线路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•11『线路2』 +https://jmp2.uk/plu-66c45c274f25dd00092739ee.m3u8$LR•IPV4•11『线路2』 #EXTINF:-1 tvg-id="CNN" tvg-name="CNN" group-title="港澳台",CNN -https://jmp2.uk/plu-66c45c274f25dd00092739ee.m3u8$LR•IPV4•11『线路3』 +https://jmp2.uk/plu-5421f71da6af422839419cb3.m3u8$LR•IPV4•11『线路3』 #EXTINF:-1 tvg-id="CNN" tvg-name="CNN" group-title="港澳台",CNN -https://jmp2.uk/plu-5421f71da6af422839419cb3.m3u8$LR•IPV4•11『线路4』 +https://jmp2.uk/plu-66337e365a402e00087eccaf.m3u8$LR•IPV4•11『线路4』 #EXTINF:-1 tvg-id="CNN" tvg-name="CNN" group-title="港澳台",CNN -https://jmp2.uk/plu-66337e365a402e00087eccaf.m3u8$LR•IPV4•11『线路5』 +https://jmp2.uk/plu-66c45c0de7f5e80008b82005.m3u8$LR•IPV4•11『线路5』 #EXTINF:-1 tvg-id="CNN" tvg-name="CNN" group-title="港澳台",CNN -https://jmp2.uk/plu-66c45c0de7f5e80008b82005.m3u8$LR•IPV4•11『线路6』 +https://jmp2.uk/plu-66c45b36a72e7b0008a2b291.m3u8$LR•IPV4•11『线路6』 #EXTINF:-1 tvg-id="CNN" tvg-name="CNN" group-title="港澳台",CNN -https://jmp2.uk/plu-66c45b36a72e7b0008a2b291.m3u8$LR•IPV4•11『线路7』 +https://jmp2.uk/plu-66c45ba803e3b20008d8c294.m3u8$LR•IPV4•11『线路7』 #EXTINF:-1 tvg-id="CNN" tvg-name="CNN" group-title="港澳台",CNN -https://jmp2.uk/plu-66c45ba803e3b20008d8c294.m3u8$LR•IPV4•11『线路8』 +https://jmp2.uk/plu-66dff9d46ad04d0008fda4de.m3u8$LR•IPV4•11『线路8』 #EXTINF:-1 tvg-id="CNN" tvg-name="CNN" group-title="港澳台",CNN -https://jmp2.uk/plu-66dff9d46ad04d0008fda4de.m3u8$LR•IPV4•11『线路9』 +https://jmp2.uk/plu-673248f9030a2c0008033af8.m3u8$LR•IPV4•11『线路9』 #EXTINF:-1 tvg-id="CNN" tvg-name="CNN" group-title="港澳台",CNN -https://jmp2.uk/plu-673248f9030a2c0008033af8.m3u8$LR•IPV4•11『线路10』 +https://jmp2.uk/plu-66e0b4536ad04d0008fff4b2.m3u8$LR•IPV4•11『线路10』 #EXTINF:-1 tvg-id="CNN" tvg-name="CNN" group-title="港澳台",CNN -https://jmp2.uk/plu-66e0b4536ad04d0008fff4b2.m3u8$LR•IPV4•11『线路11』 +https://ds2c506obo7m8.cloudfront.net/v1/master/3722c60a815c199d9c0ef36c5b73da68a62b09d1/cc-7zjq3tdqasbg8/index.m3u8$LR•IPV4•11『线路11』 #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『线路1』 +https://d2ny9lo79ujali.cloudfront.net/CBC_News_International.m3u8$LR•IPV4•8『线路1』 #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『线路2』 +https://jmp2.uk/plu-6536725167bd1a00084481bc.m3u8$LR•IPV4•8『线路2』 #EXTINF:-1 tvg-id="CBC News" tvg-name="CBC News" group-title="港澳台",CBC News -https://jmp2.uk/plu-6536725167bd1a00084481bc.m3u8$LR•IPV4•8『线路3』 +https://amagi-streams.akamaized.net/hls/live/2110960/cbcnewsbc/master.m3u8$LR•IPV4•8『线路3』 #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『线路4』 +https://jmp2.uk/plu-66a8f01914a2bb00084dd86c.m3u8$LR•IPV4•8『线路4』 #EXTINF:-1 tvg-id="CBC News" tvg-name="CBC News" group-title="港澳台",CBC News -https://jmp2.uk/plu-66a8f01914a2bb00084dd86c.m3u8$LR•IPV4•8『线路5』 +https://amagi-streams.akamaized.net/hls/live/2110962/cbcexplore/master.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/2110962/cbcexplore/master.m3u8$LR•IPV4•8『线路6』 +https://amagi-streams.akamaized.net/hls/live/2110961/cbctoronto/master.m3u8$LR•IPV4•8『线路6』 #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『线路7』 +https://jmp2.uk/plu-6536721dbfbaec00088687c0.m3u8$LR•IPV4•8『线路7』 #EXTINF:-1 tvg-id="CBC News" tvg-name="CBC News" group-title="港澳台",CBC News -https://jmp2.uk/plu-6536721dbfbaec00088687c0.m3u8$LR•IPV4•8『线路8』 +https://dbrb49pjoymg4.cloudfront.net/v1/master/3fec3e5cac39a52b2132f9c66c83dae043dc17d4/prod_default_xumo-ams-aws/master.m3u8?ads.xumo_channelId=99991276$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•11『线路1』 +http://41.205.77.102/SKYNEWS/index.m3u8$LR•IPV4•11『线路1』 #EXTINF:-1 tvg-id="Sky News" tvg-name="Sky News" group-title="港澳台",Sky News -http://41.205.77.102/SKYNEWS/index.m3u8$LR•IPV4•11『线路2』 +https://live-stream.skynewsarabia.com/c-horizontal-channel/horizontal-stream/index.m3u8$LR•IPV4•11『线路2』 #EXTINF:-1 tvg-id="Sky News" tvg-name="Sky News" group-title="港澳台",Sky News -https://live-stream.skynewsarabia.com/c-horizontal-channel/horizontal-stream/index.m3u8$LR•IPV4•11『线路3』 +https://stream.skynewsarabia.com/ott/ott.m3u8$LR•IPV4•11『线路3』 #EXTINF:-1 tvg-id="Sky News" tvg-name="Sky News" group-title="港澳台",Sky News -https://stream.skynewsarabia.com/ott/ott.m3u8$LR•IPV4•11『线路4』 +https://stream.skynewsarabia.com/vertical/vertical.m3u8$LR•IPV4•11『线路4』 #EXTINF:-1 tvg-id="Sky News" tvg-name="Sky News" group-title="港澳台",Sky News -https://stream.skynewsarabia.com/vertical/vertical.m3u8$LR•IPV4•11『线路5』 +https://live-stream.skynewsarabia.com/c-vertical-channel/vertical-stream/index.m3u8$LR•IPV4•11『线路5』 #EXTINF:-1 tvg-id="Sky News" tvg-name="Sky News" group-title="港澳台",Sky News -https://live-stream.skynewsarabia.com/c-vertical-channel/vertical-stream/index.m3u8$LR•IPV4•11『线路6』 +https://skynewsau-live.akamaized.net/hls/live/2002689/skynewsau-extra1/master.m3u8$LR•IPV4•11『线路6』 #EXTINF:-1 tvg-id="Sky News" tvg-name="Sky News" group-title="港澳台",Sky News -https://skynewsau-live.akamaized.net/hls/live/2002689/skynewsau-extra1/master.m3u8$LR•IPV4•11『线路7』 +https://skynewsau-live.akamaized.net/hls/live/2002690/skynewsau-extra2/master.m3u8$LR•IPV4•11『线路7』 #EXTINF:-1 tvg-id="Sky News" tvg-name="Sky News" group-title="港澳台",Sky News -https://skynewsau-live.akamaized.net/hls/live/2002690/skynewsau-extra2/master.m3u8$LR•IPV4•11『线路8』 +https://skynewsau-live.akamaized.net/hls/live/2002691/skynewsau-extra3/master.m3u8$LR•IPV4•11『线路8』 #EXTINF:-1 tvg-id="Sky News" tvg-name="Sky News" group-title="港澳台",Sky News -https://skynewsau-live.akamaized.net/hls/live/2002691/skynewsau-extra3/master.m3u8$LR•IPV4•11『线路9』 +https://lbgo.bozztv.com/ssh101/ssh101/skynews/playlist.m3u8$LR•IPV4•11『线路9』 #EXTINF:-1 tvg-id="Sky News" tvg-name="Sky News" group-title="港澳台",Sky News -https://lbgo.bozztv.com/ssh101/ssh101/skynews/playlist.m3u8$LR•IPV4•11『线路10』 +https://distro001-gb-hls1-prd.delivery.skycdp.com/easel_cdn/ngrp:weather_loop.stream_all/playlist.m3u8$LR•IPV4•11『线路10』 #EXTINF:-1 tvg-id="Sky News" tvg-name="Sky News" group-title="港澳台",Sky News -https://distro001-gb-hls1-prd.delivery.skycdp.com/easel_cdn/ngrp:weather_loop.stream_all/playlist.m3u8$LR•IPV4•11『线路11』 +https://d39chvnxm26pgp.cloudfront.net/v1/master/72588bff830dec7b26d7cbbf5f3c24928aec5c03/cc-sthen6ms4vxgv-stage/WNSFO/ABR.m3u8$LR•IPV4•11『线路11』 #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•8『线路1』 +https://live-hls-apps-aja-fa.getaj.net/AJA/01.m3u8$LR•IPV4•8『线路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•8『线路2』 +https://live-hls-web-aja2-gcp.thehlive.com/AJA2/index.m3u8$LR•IPV4•8『线路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•8『线路3』 +https://live-hls-apps-aje-fa.getaj.net/AJE/index.m3u8$LR•IPV4•8『线路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•8『线路4』 +https://live-hls-apps-ajm-fa.getaj.net/AJM/index.m3u8$LR•IPV4•8『线路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•8『线路5』 +https://live-hls-apps-ajm24-fa.getaj.net/AJM24/index.m3u8$LR•IPV4•8『线路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•8『线路6』 +https://live-hls-apps-ajm2-fa.getaj.net/AJM2/index.m3u8$LR•IPV4•8『线路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•8『线路7』 +https://live-hls-apps-ajd-fa.getaj.net/AJD/index.m3u8$LR•IPV4•8『线路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•8『线路8』 +https://live-hls-aje-ak.getaj.net/AJE/01.m3u8$LR•IPV4•8『线路8』 #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』 +http://amdlive-ch01.ctnd.com.edgesuite.net/arirang_3ch/smil:arirang_3ch.smil/playlist.m3u8$LR•IPV4•5『线路1』 #EXTINF:-1 tvg-id="Arirang" tvg-name="Arirang" group-title="港澳台",Arirang -http://amdlive-ch01.ctnd.com.edgesuite.net/arirang_3ch/smil:arirang_3ch.smil/playlist.m3u8$LR•IPV4•5『线路2』 +https://amdlive-ch02-ctnd-com.akamaized.net/arirang_2ch/smil:arirang_2ch.smil/playlist.m3u8$LR•IPV4•5『线路2』 #EXTINF:-1 tvg-id="Arirang" tvg-name="Arirang" group-title="港澳台",Arirang -https://amdlive-ch02-ctnd-com.akamaized.net/arirang_2ch/smil:arirang_2ch.smil/playlist.m3u8$LR•IPV4•5『线路3』 +http://amdlive-ch01.ctnd.com.edgesuite.net/arirang_1ch/smil:arirang_1ch.smil/playlist.m3u8$LR•IPV4•5『线路3』 #EXTINF:-1 tvg-id="Arirang" tvg-name="Arirang" group-title="港澳台",Arirang -http://amdlive-ch01.ctnd.com.edgesuite.net/arirang_1ch/smil:arirang_1ch.smil/playlist.m3u8$LR•IPV4•5『线路4』 +http://45.162.64.114/ARIRANG/index.m3u8$LR•IPV4•5『线路4』 #EXTINF:-1 tvg-id="Arirang" tvg-name="Arirang" group-title="港澳台",Arirang -http://45.162.64.114/ARIRANG/index.m3u8$LR•IPV4•5『线路5』 +https://amdlive-ch01-ctnd-com.akamaized.net/arirang_1ch/smil:arirang_1ch.smil/chunklist_b3256000_sleng.m3u8$LR•IPV4•5『线路5』 #EXTINF:-1 tvg-id="TRT World" tvg-name="TRT World" group-title="港澳台",TRT World -https://tv-trtworld.medya.trt.com.tr/master_1080.m3u8$LR•IPV4•3『线路1』 +https://tv-trtworld.medya.trt.com.tr/master.m3u8$LR•IPV4•3『线路1』 #EXTINF:-1 tvg-id="TRT World" tvg-name="TRT World" group-title="港澳台",TRT World -https://tv-trtworld.medya.trt.com.tr/master.m3u8$LR•IPV4•3『线路2』 +https://dash2.antik.sk/live/test_trt_world_atktv/playlist.m3u8$LR•IPV4•3『线路2』 #EXTINF:-1 tvg-id="TRT World" tvg-name="TRT World" group-title="港澳台",TRT World -https://dash2.antik.sk/live/test_trt_world_atktv/playlist.m3u8$LR•IPV4•3『线路3』 +https://tv-trtworld.medya.trt.com.tr/master_1080.m3u8$LR•IPV4•3『线路3』 #EXTINF:-1 tvg-id="Bloomberg Originals" tvg-name="Bloomberg Originals" group-title="港澳台",Bloomberg Originals https://e96a7526.wurl.com/master/f36d25e7e52f1ba8d7e56eb859c636563214f541/UmFrdXRlblRWLWV1X0Jsb29tYmVyZ09yaWdpbmFsc19ITFM/playlist.m3u8$LR•IPV4•3『线路1』 #EXTINF:-1 tvg-id="Bloomberg Originals" tvg-name="Bloomberg Originals" group-title="港澳台",Bloomberg Originals @@ -7420,61 +7436,61 @@ https://86fdc85a.wurl.com/master/f36d25e7e52f1ba8d7e56eb859c636563214f541/TEctZ2 #EXTINF:-1 tvg-id="Bloomberg Originals" tvg-name="Bloomberg Originals" group-title="港澳台",Bloomberg Originals https://bloomberg.com/media-manifest/streams/qt.m3u8$LR•IPV4•3『线路3』 #EXTINF:-1 tvg-id="Fashion TV" tvg-name="Fashion TV" group-title="港澳台",Fashion TV -http://free.cnlive.club/channel/n7852a99f/index.m3u8?q=1752629214236$LR•IPV4•2『线路1』 +https://cdn2.invivo.bg/Codefashion_5500/index.m3u8$LR•IPV4•2『线路1』 #EXTINF:-1 tvg-id="Fashion TV" tvg-name="Fashion TV" group-title="港澳台",Fashion TV -https://cdn2.invivo.bg/Codefashion_5500/index.m3u8$LR•IPV4•2『线路2』 +http://free.cnlive.club/channel/n7852a99f/index.m3u8?q=1752629214236$LR•IPV4•2『线路2』 #EXTINF:-1 tvg-id="SKY" tvg-name="SKY" group-title="港澳台",SKY -http://s.rocketdns.info:8080/live/monstercable/Dq6jjknxCr/2188.ts$LR•IPV4•26『线路1』 +https://cdn5.smart-tv-data.com/bluesky/bluesky-live/playlist.m3u8$LR•IPV4•26『线路1』 #EXTINF:-1 tvg-id="SKY" tvg-name="SKY" group-title="港澳台",SKY -http://s.rocketdns.info:8080/live/monstercable/Dq6jjknxCr/2179.ts$LR•IPV4•26『线路2』 +http://80.194.62.172:50002/stream/channelid/1848745953$LR•IPV4•26『线路2』 #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』 +https://primetv-prod.akamaized.net/v1/prime-freeview-aes128.m3u8$LR•IPV4•26『线路3』 #EXTINF:-1 tvg-id="SKY" tvg-name="SKY" group-title="港澳台",SKY -http://nocable.cc:8080//OURTV/OURTV@4806/35241$LR•IPV4•26『线路4』 +https://linear-p.media.skyone.co.nz/primeplus1.clear.m3u8$LR•IPV4•26『线路4』 #EXTINF:-1 tvg-id="SKY" tvg-name="SKY" group-title="港澳台",SKY -http://nocable.cc:8080//OURTV/OURTV@4806/35244$LR•IPV4•26『线路5』 +https://eu.live.skyfolk.mk/live.m3u8$LR•IPV4•26『线路5』 #EXTINF:-1 tvg-id="SKY" tvg-name="SKY" group-title="港澳台",SKY -http://ua-iptv.com:8080//zerubassman@yahoo.com/2MR879Z9PL/1001373$LR•IPV4•26『线路6』 +https://636ffd31f0e12.streamlock.net/RacingStream1/RacingStream1/playlist.m3u8$LR•IPV4•26『线路6』 #EXTINF:-1 tvg-id="SKY" tvg-name="SKY" group-title="港澳台",SKY -http://nocable.cc:8080//OURTV/OURTV@4806/35240$LR•IPV4•26『线路7』 +https://636ffd31f0e12.streamlock.net/RacingStream2/RacingStream2/playlist.m3u8$LR•IPV4•26『线路7』 #EXTINF:-1 tvg-id="SKY" tvg-name="SKY" group-title="港澳台",SKY -http://nocable.cc:8080//OURTV/OURTV@4806/137720$LR•IPV4•26『线路8』 +https://skylivetab-new.akamaized.net/hls/live/2038782/stcsd/index.m3u8$LR•IPV4•26『线路8』 #EXTINF:-1 tvg-id="SKY" tvg-name="SKY" group-title="港澳台",SKY -http://ua-iptv.com:8080//zerubassman@yahoo.com/2MR879Z9PL/1001376$LR•IPV4•26『线路9』 +http://s.rocketdns.info:8080/live/monstercable/Dq6jjknxCr/2188.ts$LR•IPV4•26『线路9』 #EXTINF:-1 tvg-id="SKY" tvg-name="SKY" group-title="港澳台",SKY -http://ua-iptv.com:8080//zerubassman@yahoo.com/2MR879Z9PL/1001378$LR•IPV4•26『线路10』 +http://s.rocketdns.info:8080/live/monstercable/Dq6jjknxCr/2179.ts$LR•IPV4•26『线路10』 #EXTINF:-1 tvg-id="SKY" tvg-name="SKY" group-title="港澳台",SKY -http://ua-iptv.com:8080//zerubassman@yahoo.com/2MR879Z9PL/1001379$LR•IPV4•26『线路11』 +http://s.rocketdns.info:8080/live/monstercable/Dq6jjknxCr/2182.ts$LR•IPV4•26『线路11』 #EXTINF:-1 tvg-id="SKY" tvg-name="SKY" group-title="港澳台",SKY -http://nocable.cc:8080//OURTV/OURTV@4806/53705$LR•IPV4•26『线路12』 +http://nocable.cc:8080//OURTV/OURTV@4806/35241$LR•IPV4•26『线路12』 #EXTINF:-1 tvg-id="SKY" tvg-name="SKY" group-title="港澳台",SKY -http://nocable.cc:8080//OURTV/OURTV@4806/35238$LR•IPV4•26『线路13』 +http://nocable.cc:8080//OURTV/OURTV@4806/35244$LR•IPV4•26『线路13』 #EXTINF:-1 tvg-id="SKY" tvg-name="SKY" group-title="港澳台",SKY -http://nocable.cc:8080//OURTV/OURTV@4806/53663$LR•IPV4•26『线路14』 +http://ua-iptv.com:8080//zerubassman@yahoo.com/2MR879Z9PL/1001373$LR•IPV4•26『线路14』 #EXTINF:-1 tvg-id="SKY" tvg-name="SKY" group-title="港澳台",SKY -http://nocable.cc:8080//OURTV/OURTV@4806/45940$LR•IPV4•26『线路15』 +http://nocable.cc:8080//OURTV/OURTV@4806/35240$LR•IPV4•26『线路15』 #EXTINF:-1 tvg-id="SKY" tvg-name="SKY" group-title="港澳台",SKY -http://vocotv.pro//revol/revol/276918$LR•IPV4•26『线路16』 +http://nocable.cc:8080//OURTV/OURTV@4806/137720$LR•IPV4•26『线路16』 #EXTINF:-1 tvg-id="SKY" tvg-name="SKY" group-title="港澳台",SKY -http://vocotv.pro//revol/revol/276924$LR•IPV4•26『线路17』 +http://ua-iptv.com:8080//zerubassman@yahoo.com/2MR879Z9PL/1001376$LR•IPV4•26『线路17』 #EXTINF:-1 tvg-id="SKY" tvg-name="SKY" group-title="港澳台",SKY -http://vocotv.pro//revol/revol/276906$LR•IPV4•26『线路18』 +http://ua-iptv.com:8080//zerubassman@yahoo.com/2MR879Z9PL/1001378$LR•IPV4•26『线路18』 #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『线路19』 +http://ua-iptv.com:8080//zerubassman@yahoo.com/2MR879Z9PL/1001379$LR•IPV4•26『线路19』 #EXTINF:-1 tvg-id="SKY" tvg-name="SKY" group-title="港澳台",SKY -http://80.194.62.172:50002/stream/channelid/1848745953$LR•IPV4•26『线路20』 +http://nocable.cc:8080//OURTV/OURTV@4806/53705$LR•IPV4•26『线路20』 #EXTINF:-1 tvg-id="SKY" tvg-name="SKY" group-title="港澳台",SKY -https://primetv-prod.akamaized.net/v1/prime-freeview-aes128.m3u8$LR•IPV4•26『线路21』 +http://nocable.cc:8080//OURTV/OURTV@4806/35238$LR•IPV4•26『线路21』 #EXTINF:-1 tvg-id="SKY" tvg-name="SKY" group-title="港澳台",SKY -https://linear-p.media.skyone.co.nz/primeplus1.clear.m3u8$LR•IPV4•26『线路22』 +http://nocable.cc:8080//OURTV/OURTV@4806/53663$LR•IPV4•26『线路22』 #EXTINF:-1 tvg-id="SKY" tvg-name="SKY" group-title="港澳台",SKY -https://eu.live.skyfolk.mk/live.m3u8$LR•IPV4•26『线路23』 +http://nocable.cc:8080//OURTV/OURTV@4806/45940$LR•IPV4•26『线路23』 #EXTINF:-1 tvg-id="SKY" tvg-name="SKY" group-title="港澳台",SKY -https://636ffd31f0e12.streamlock.net/RacingStream1/RacingStream1/playlist.m3u8$LR•IPV4•26『线路24』 +http://vocotv.pro//revol/revol/276918$LR•IPV4•26『线路24』 #EXTINF:-1 tvg-id="SKY" tvg-name="SKY" group-title="港澳台",SKY -https://636ffd31f0e12.streamlock.net/RacingStream2/RacingStream2/playlist.m3u8$LR•IPV4•26『线路25』 +http://vocotv.pro//revol/revol/276924$LR•IPV4•26『线路25』 #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『线路26』 +http://vocotv.pro//revol/revol/276906$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+ @@ -7496,27 +7512,27 @@ https://d2w9q46ikgrcwx.cloudfront.net/v1/master/3722c60a815c199d9c0ef36c5b73da68 #EXTINF:-1 tvg-id="FIFA+" tvg-name="FIFA+" group-title="港澳台",FIFA+ https://cffda8ff.wurl.com/master/f36d25e7e52f1ba8d7e56eb859c636563214f541/U2Ftc3VuZy1nYl9GSUZBUGx1c3dvbWVuX0hMUw/playlist.m3u8$LR•IPV4•9『线路9』 #EXTINF:-1 tvg-id="Newsmax" tvg-name="Newsmax" group-title="港澳台",Newsmax -https://nmx1ota.akamaized.net/hls/live/2107010/Live_1/3.m3u8$LR•IPV4•8『线路1』 +https://2-fss-2.streamhoster.com/pl_120/206858-4404556-1/playlist.m3u8$LR•IPV4•8『线路1』 #EXTINF:-1 tvg-id="Newsmax" tvg-name="Newsmax" group-title="港澳台",Newsmax -http://nmxlive.akamaized.net/hls/live/529965/Live_1/index.m3u8$LR•IPV4•8『线路2』 +https://amg00217-newsmax-newsmax-zeasn-022k9.amagi.tv/playlist.m3u8$LR•IPV4•8『线路2』 #EXTINF:-1 tvg-id="Newsmax" tvg-name="Newsmax" group-title="港澳台",Newsmax -https://nmxlive.akamaized.net/hls/live/529965/Live_1/index.m3u8$LR•IPV4•8『线路3』 +https://newsmaxadria.mts-si.tv/newsmaxadria/index.m3u8$LR•IPV4•8『线路3』 #EXTINF:-1 tvg-id="Newsmax" tvg-name="Newsmax" group-title="港澳台",Newsmax -https://2-fss-2.streamhoster.com/pl_120/206858-4404556-1/playlist.m3u8$LR•IPV4•8『线路4』 +https://n1ottesorkatv.akamaized.net/hls/live/2113795/Live_1/index.m3u8$LR•IPV4•8『线路4』 #EXTINF:-1 tvg-id="Newsmax" tvg-name="Newsmax" group-title="港澳台",Newsmax -https://amg00217-newsmax-newsmax-zeasn-022k9.amagi.tv/playlist.m3u8$LR•IPV4•8『线路5』 +http://40.160.24.53/NEWSMAX/index.m3u8$LR•IPV4•8『线路5』 #EXTINF:-1 tvg-id="Newsmax" tvg-name="Newsmax" group-title="港澳台",Newsmax -https://newsmaxadria.mts-si.tv/newsmaxadria/index.m3u8$LR•IPV4•8『线路6』 +https://nmx1ota.akamaized.net/hls/live/2107010/Live_1/3.m3u8$LR•IPV4•8『线路6』 #EXTINF:-1 tvg-id="Newsmax" tvg-name="Newsmax" group-title="港澳台",Newsmax -https://n1ottesorkatv.akamaized.net/hls/live/2113795/Live_1/index.m3u8$LR•IPV4•8『线路7』 +http://nmxlive.akamaized.net/hls/live/529965/Live_1/index.m3u8$LR•IPV4•8『线路7』 #EXTINF:-1 tvg-id="Newsmax" tvg-name="Newsmax" group-title="港澳台",Newsmax -http://40.160.24.53/NEWSMAX/index.m3u8$LR•IPV4•8『线路8』 +https://nmxlive.akamaized.net/hls/live/529965/Live_1/index.m3u8$LR•IPV4•8『线路8』 #EXTINF:-1 tvg-id="CBN News" tvg-name="CBN News" group-title="港澳台",CBN News https://fastly.live.brightcove.com/6380396819112/us-east-1/734546207001/eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJob3N0IjoiczFpM3ZpLmVncmVzcy50N2M3emwiLCJhY2NvdW50X2lkIjoiNzM0NTQ2MjA3MDAxIiwiZWhuIjoiZmFzdGx5LmxpdmUuYnJpZ2h0Y292ZS5jb20iLCJpc3MiOiJibGl2ZS1wbGF5YmFjay1zb3VyY2UtYXBpIiwic3ViIjoicGF0aG1hcHRva2VuIiwiYXVkIjpbIjczNDU0NjIwNzAwMSJdLCJqdGkiOiI2MzgwMzk2ODE5MTEyIn0.GDYp4IWtzwPkupEWeeOavnioVknO-Ev3UGlHvM1rE6I/playlist-hls.m3u8$LR•IPV4 #EXTINF:-1 tvg-id="GB News" tvg-name="GB News" group-title="港澳台",GB News -https://rakutenaa-lightning-gbnews-rakuten-ccoa9.amagi.tv/playlist/rakutenAA-lightning-gbnews-rakuten/playlist.m3u8$LR•IPV4•2『线路1』 +https://amg01076-lightningintern-gbnewsau-samsungau-et7fz.amagi.tv/playlist/amg01076-lightningintern-gbnewsau-samsungau/playlist.m3u8$LR•IPV4•2『线路1』 #EXTINF:-1 tvg-id="GB News" tvg-name="GB News" group-title="港澳台",GB News -https://amg01076-lightningintern-gbnewsau-samsungau-et7fz.amagi.tv/playlist/amg01076-lightningintern-gbnewsau-samsungau/playlist.m3u8$LR•IPV4•2『线路2』 +https://rakutenaa-lightning-gbnews-rakuten-ccoa9.amagi.tv/playlist/rakutenAA-lightning-gbnews-rakuten/playlist.m3u8$LR•IPV4•2『线路2』 #EXTINF:-1 tvg-id="TBS" tvg-name="TBS" group-title="港澳台",TBS https://cdntv.tbs.seoul.kr/tbs/tbs_tv_web.smil/playlist.m3u8$LR•IPV4 #EXTINF:-1 tvg-id="ION Plus" tvg-name="ION Plus" group-title="港澳台",ION Plus @@ -7532,19 +7548,19 @@ https://aegis-cloudfront-1.tubi.video/3b6afc3b-97f7-4f22-99f4-7bcff60fc39d/playl #EXTINF:-1 tvg-id="ION" tvg-name="ION" group-title="港澳台",ION https://pb-usmbvsgwcg8pc.akamaized.net/Ion_Mystery_US.m3u8$LR•IPV4•5『线路5』 #EXTINF:-1 tvg-id="Love Nature" tvg-name="Love Nature" group-title="港澳台",Love Nature -p3p://167.114.175.6:55331/655fa9280009c6278edfc1176731425f$LR•IPV4•7『线路1』 +https://amg01515-amg01515c17-xumo-us-2489.playouts.now.amagi.tv/bamus-lovenaturespanish-roku/playlist.m3u8$LR•IPV4•7『线路1』 #EXTINF:-1 tvg-id="Love Nature" tvg-name="Love Nature" group-title="港澳台",Love Nature -https://d18dyiwu97wm6q.cloudfront.net/playlist2160p.m3u8$LR•IPV4•7『线路2』 +https://aegis-cloudfront-1.tubi.video/6d6d0f24-8445-4b4c-bdf6-44f9e38beaa4/playlist.m3u8$LR•IPV4•7『线路2』 #EXTINF:-1 tvg-id="Love Nature" tvg-name="Love Nature" group-title="港澳台",Love Nature -http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=1761&tk=f6cc1e0a0e1a$LR•IPV4•7『线路3』 +https://pb-ehs1glsha1juy.akamaized.net/Love_Nature_4K.m3u8$LR•IPV4•7『线路3』 #EXTINF:-1 tvg-id="Love Nature" tvg-name="Love Nature" group-title="港澳台",Love Nature -https://amg01515-amg01515c17-xumo-us-2489.playouts.now.amagi.tv/bamus-lovenaturespanish-roku/playlist.m3u8$LR•IPV4•7『线路4』 +http://185.246.209.113/LOVENATUREHD/index.m3u8$LR•IPV4•7『线路4』 #EXTINF:-1 tvg-id="Love Nature" tvg-name="Love Nature" group-title="港澳台",Love Nature -https://aegis-cloudfront-1.tubi.video/6d6d0f24-8445-4b4c-bdf6-44f9e38beaa4/playlist.m3u8$LR•IPV4•7『线路5』 +p3p://167.114.175.6:55331/655fa9280009c6278edfc1176731425f$LR•IPV4•7『线路5』 #EXTINF:-1 tvg-id="Love Nature" tvg-name="Love Nature" group-title="港澳台",Love Nature -https://pb-ehs1glsha1juy.akamaized.net/Love_Nature_4K.m3u8$LR•IPV4•7『线路6』 +https://d18dyiwu97wm6q.cloudfront.net/playlist2160p.m3u8$LR•IPV4•7『线路6』 #EXTINF:-1 tvg-id="Love Nature" tvg-name="Love Nature" group-title="港澳台",Love Nature -http://185.246.209.113/LOVENATUREHD/index.m3u8$LR•IPV4•7『线路7』 +http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=1761&tk=f6cc1e0a0e1a$LR•IPV4•7『线路7』 #EXTINF:-1 tvg-id="Fight Network" tvg-name="Fight Network" group-title="港澳台",Fight Network https://d12a2vxqkkh1bo.cloudfront.net/hls/main.m3u8$LR•IPV4 #EXTINF:-1 tvg-id="Wild Earth" tvg-name="Wild Earth" group-title="港澳台",Wild Earth @@ -7632,81 +7648,81 @@ https://tastemadees16us-xumo.amagi.tv/playlist.m3u8$LR•IPV4•15『线路14』 #EXTINF:-1 tvg-id="Tastemade" tvg-name="Tastemade" group-title="港澳台",Tastemade https://d6ef3usc6d9cl.cloudfront.net/Tastemade_Travel.m3u8$LR•IPV4•15『线路15』 #EXTINF:-1 tvg-id="MovieSphere" tvg-name="MovieSphere" group-title="港澳台",MovieSphere -https://moviesphereuk-samsunguk.amagi.tv/playlist.m3u8$LR•IPV4•5『线路1』 +https://jmp2.uk/plu-6401d85a49839300087b116c.m3u8$LR•IPV4•5『线路1』 #EXTINF:-1 tvg-id="MovieSphere" tvg-name="MovieSphere" group-title="港澳台",MovieSphere -https://jmp2.uk/plu-6401d85a49839300087b116c.m3u8$LR•IPV4•5『线路2』 +https://amg00353-lionsgatestudio-moviesphere-xumo-zh5u0.amagi.tv/playlist.m3u8$LR•IPV4•5『线路2』 #EXTINF:-1 tvg-id="MovieSphere" tvg-name="MovieSphere" group-title="港澳台",MovieSphere -https://amg00353-lionsgatestudio-moviesphere-xumo-zh5u0.amagi.tv/playlist.m3u8$LR•IPV4•5『线路3』 +https://amg00353-lionsgatefilmsi-moviesphereaus-samsungau-7qzhf.amagi.tv/playlist/amg00353-lionsgatefilmsi-moviesphereaus-samsungau/playlist.m3u8$LR•IPV4•5『线路3』 #EXTINF:-1 tvg-id="MovieSphere" tvg-name="MovieSphere" group-title="港澳台",MovieSphere -https://amg00353-lionsgatefilmsi-moviesphereaus-samsungau-7qzhf.amagi.tv/playlist/amg00353-lionsgatefilmsi-moviesphereaus-samsungau/playlist.m3u8$LR•IPV4•5『线路4』 +https://jmp2.uk/plu-64a3d96f060e830008af6745.m3u8$LR•IPV4•5『线路4』 #EXTINF:-1 tvg-id="MovieSphere" tvg-name="MovieSphere" group-title="港澳台",MovieSphere -https://jmp2.uk/plu-64a3d96f060e830008af6745.m3u8$LR•IPV4•5『线路5』 +https://moviesphereuk-samsunguk.amagi.tv/playlist.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://epg.pw/stream/d2edf469b9079064a283f4b0811cbf6f2597ebbb3d08dcf77036a4b5a791b7cf.m3u8$LR•IPV4•16『线路1』 +https://ciner.daioncdn.net/bloomberght/bloomberght.m3u8$LR•IPV4•16『线路1』 #EXTINF:-1 tvg-id="Bloomberg" tvg-name="Bloomberg" group-title="港澳台",Bloomberg -https://bloomberg-bloombergtv-3-nl.samsung.wurl.tv/playlist.m3u8$LR•IPV4•16『线路2』 +http://23.237.104.106:8080/USA_BLOOMBERG/index.m3u8$LR•IPV4•16『线路2』 #EXTINF:-1 tvg-id="Bloomberg" tvg-name="Bloomberg" group-title="港澳台",Bloomberg -https://bloomberg-bloombergtv-5-eu.plex.wurl.tv/3ea2c48ba0034cc276591c94a5b439c0.m3u8$LR•IPV4•16『线路3』 +https://bloomberg.com/media-manifest/streams/aus.m3u8$LR•IPV4•16『线路3』 #EXTINF:-1 tvg-id="Bloomberg" tvg-name="Bloomberg" group-title="港澳台",Bloomberg -https://liveprodusphoenixeast.akamaized.net/USPhx-HD/Channel-TX-USPhx-AWS-virginia-1/Source-USPhx-16k-1-s6lk2-BP-07-02-81ykIWnsMsg_live.m3u8$LR•IPV4•16『线路4』 +http://213.91.179.28:8000/play/a04m$LR•IPV4•16『线路4』 #EXTINF:-1 tvg-id="Bloomberg" tvg-name="Bloomberg" group-title="港澳台",Bloomberg -https://ciner.daioncdn.net/bloomberght/bloomberght.m3u8$LR•IPV4•16『线路5』 +https://bloomberg.com/media-manifest/streams/eu-event.m3u8$LR•IPV4•16『线路5』 #EXTINF:-1 tvg-id="Bloomberg" tvg-name="Bloomberg" group-title="港澳台",Bloomberg -http://23.237.104.106:8080/USA_BLOOMBERG/index.m3u8$LR•IPV4•16『线路6』 +https://bloomberg.com/media-manifest/streams/eu.m3u8$LR•IPV4•16『线路6』 #EXTINF:-1 tvg-id="Bloomberg" tvg-name="Bloomberg" group-title="港澳台",Bloomberg -https://bloomberg.com/media-manifest/streams/aus.m3u8$LR•IPV4•16『线路7』 +https://cdn4.skygo.mn/live/disk1/BloombergMon/DASH-FTA/BloombergMon.mpd$LR•IPV4•16『线路7』 #EXTINF:-1 tvg-id="Bloomberg" tvg-name="Bloomberg" group-title="港澳台",Bloomberg -http://213.91.179.28:8000/play/a04m$LR•IPV4•16『线路8』 +https://bloomberg.com/media-manifest/streams/us-event.m3u8$LR•IPV4•16『线路8』 #EXTINF:-1 tvg-id="Bloomberg" tvg-name="Bloomberg" group-title="港澳台",Bloomberg -https://bloomberg.com/media-manifest/streams/eu-event.m3u8$LR•IPV4•16『线路9』 +https://bloomberg.com/media-manifest/streams/politics.m3u8$LR•IPV4•16『线路9』 #EXTINF:-1 tvg-id="Bloomberg" tvg-name="Bloomberg" group-title="港澳台",Bloomberg -https://bloomberg.com/media-manifest/streams/eu.m3u8$LR•IPV4•16『线路10』 +https://d8975dc3.wurl.com/master/f36d25e7e52f1ba8d7e56eb859c636563214f541/U2Ftc3VuZy1nYl9CbG9vbWJlcmdUVlBsdXNfSExT/playlist.m3u8$LR•IPV4•16『线路10』 #EXTINF:-1 tvg-id="Bloomberg" tvg-name="Bloomberg" group-title="港澳台",Bloomberg -https://cdn4.skygo.mn/live/disk1/BloombergMon/DASH-FTA/BloombergMon.mpd$LR•IPV4•16『线路11』 +https://86ebec83.wurl.com/master/f36d25e7e52f1ba8d7e56eb859c636563214f541/UmFrdXRlblRWLWV1X0Jsb29tYmVyZ1RWUGx1c19ITFM/playlist.m3u8$LR•IPV4•16『线路11』 #EXTINF:-1 tvg-id="Bloomberg" tvg-name="Bloomberg" group-title="港澳台",Bloomberg -https://bloomberg.com/media-manifest/streams/us-event.m3u8$LR•IPV4•16『线路12』 +https://pe-ak-lp01a-9c9media.akamaized.net/live/News1BNNDigi/p/dash/00000001/1bba52dc66e4c68e/manifest.mpd$LR•IPV4•16『线路12』 #EXTINF:-1 tvg-id="Bloomberg" tvg-name="Bloomberg" group-title="港澳台",Bloomberg -https://bloomberg.com/media-manifest/streams/politics.m3u8$LR•IPV4•16『线路13』 +https://epg.pw/stream/d2edf469b9079064a283f4b0811cbf6f2597ebbb3d08dcf77036a4b5a791b7cf.m3u8$LR•IPV4•16『线路13』 #EXTINF:-1 tvg-id="Bloomberg" tvg-name="Bloomberg" group-title="港澳台",Bloomberg -https://d8975dc3.wurl.com/master/f36d25e7e52f1ba8d7e56eb859c636563214f541/U2Ftc3VuZy1nYl9CbG9vbWJlcmdUVlBsdXNfSExT/playlist.m3u8$LR•IPV4•16『线路14』 +https://bloomberg-bloombergtv-3-nl.samsung.wurl.tv/playlist.m3u8$LR•IPV4•16『线路14』 #EXTINF:-1 tvg-id="Bloomberg" tvg-name="Bloomberg" group-title="港澳台",Bloomberg -https://86ebec83.wurl.com/master/f36d25e7e52f1ba8d7e56eb859c636563214f541/UmFrdXRlblRWLWV1X0Jsb29tYmVyZ1RWUGx1c19ITFM/playlist.m3u8$LR•IPV4•16『线路15』 +https://bloomberg-bloombergtv-5-eu.plex.wurl.tv/3ea2c48ba0034cc276591c94a5b439c0.m3u8$LR•IPV4•16『线路15』 #EXTINF:-1 tvg-id="Bloomberg" tvg-name="Bloomberg" group-title="港澳台",Bloomberg -https://pe-ak-lp01a-9c9media.akamaized.net/live/News1BNNDigi/p/dash/00000001/1bba52dc66e4c68e/manifest.mpd$LR•IPV4•16『线路16』 +https://liveprodusphoenixeast.akamaized.net/USPhx-HD/Channel-TX-USPhx-AWS-virginia-1/Source-USPhx-16k-1-s6lk2-BP-07-02-81ykIWnsMsg_live.m3u8$LR•IPV4•16『线路16』 #EXTINF:-1 tvg-id="CNBC" tvg-name="CNBC" group-title="港澳台",CNBC -http://fl2.moveonjoy.com/CNBC/index.m3u8$LR•IPV4•16『线路1』 +https://cdn4.skygo.mn/live/disk1/CNBC/DASH-FTA/CNBC.mpd$LR•IPV4•16『线路1』 #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『线路2』 +https://jmp2.uk/plu-679a973a97782f0008ff4bb6.m3u8$LR•IPV4•16『线路2』 #EXTINF:-1 tvg-id="CNBC" tvg-name="CNBC" group-title="港澳台",CNBC -https://jmp2.uk/plu-679a973a97782f0008ff4bb6.m3u8$LR•IPV4•16『线路3』 +https://amg14891-amg14891c5-amgplt0020.playout.now3.amagi.tv/playlist.m3u8$LR•IPV4•16『线路3』 #EXTINF:-1 tvg-id="CNBC" tvg-name="CNBC" group-title="港澳台",CNBC -https://amg14891-amg14891c5-amgplt0020.playout.now3.amagi.tv/playlist.m3u8$LR•IPV4•16『线路4』 +http://40.160.24.52/CNBC/index.m3u8$LR•IPV4•16『线路4』 #EXTINF:-1 tvg-id="CNBC" tvg-name="CNBC" group-title="港澳台",CNBC -http://40.160.24.52/CNBC/index.m3u8$LR•IPV4•16『线路5』 +https://cnbc-live.akamaized.net/cnbc/master.m3u8$LR•IPV4•16『线路5』 #EXTINF:-1 tvg-id="CNBC" tvg-name="CNBC" group-title="港澳台",CNBC -https://cnbc-live.akamaized.net/cnbc/master.m3u8$LR•IPV4•16『线路6』 +https://liveh34.vtvprime.vn/hls/CNBC/03.m3u8$LR•IPV4•16『线路6』 #EXTINF:-1 tvg-id="CNBC" tvg-name="CNBC" group-title="港澳台",CNBC -https://liveh34.vtvprime.vn/hls/CNBC/03.m3u8$LR•IPV4•16『线路7』 +https://n18syndication.akamaized.net/bpk-tv/CNBC_Awaaz_NW18_MOB/output01/master.m3u8$LR•IPV4•16『线路7』 #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『线路8』 +https://n18syndication.akamaized.net/bpk-tv/CNBC_Bazaar_NW18_MOB/output01/master.m3u8$LR•IPV4•16『线路8』 #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『线路9』 +https://live.cnbcindonesia.com/livecnbc/smil:cnbctv.smil/master.m3u8$LR•IPV4•16『线路9』 #EXTINF:-1 tvg-id="CNBC" tvg-name="CNBC" group-title="港澳台",CNBC -https://live.cnbcindonesia.com/livecnbc/smil:cnbctv.smil/master.m3u8$LR•IPV4•16『线路10』 +https://n18syndication.akamaized.net/bpk-tv/CNBC_TV18_NW18_MOB/output01/index.m3u8$LR•IPV4•16『线路10』 #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『线路11』 +https://n18syndication.akamaized.net/bpk-tv/CNBC_Tv18_Prime_HD_NW18_MOB/output01/index.m3u8$LR•IPV4•16『线路11』 #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『线路12』 +http://108.181.20.255:27347/livehttpplay?channel_id=23117$LR•IPV4•16『线路12』 #EXTINF:-1 tvg-id="CNBC" tvg-name="CNBC" group-title="港澳台",CNBC -http://108.181.20.255:27347/livehttpplay?channel_id=23117$LR•IPV4•16『线路13』 +https://amg01079-nbcuuk-amg01079c2-samsung-gb-1258.playouts.now.amagi.tv/playlist.m3u8$LR•IPV4•16『线路13』 #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『线路14』 +https://cdn4.skygo.mn/live/disk1/CNBC/HLSv3-FTA/CNBC.m3u8$LR•IPV4•16『线路14』 #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『线路15』 +https://hnpsechtsc.turknet.ercdn.net/xpnvudnlsv/cnbc-e/cnbc-e.m3u8$LR•IPV4•16『线路15』 #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『线路16』 +http://fl2.moveonjoy.com/CNBC/index.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•6『线路1』 #EXTINF:-1 tvg-id="TV8" tvg-name="TV8" group-title="港澳台",TV8 @@ -7766,44 +7782,44 @@ p3p://167.114.175.6:55331/644f81c10003ba2367cad2610d3a2ab5$LR•IPV4•2『线 #EXTINF:-1 tvg-id="三立INEWS" tvg-name="三立INEWS" group-title="YouTube",三立INEWS p3p://167.114.175.6:55331/643a6b71000a47fb156c2a403510409b$LR•IPV4•2『线路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』 +https://abc-news-dmd-streams-1.akamaized.net/out/v1/701126012d044971b3fa89406a440133/index.m3u8$LR•IPV4•15『线路1』 #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『线路2』 +https://pb-0n3n2ej0w8pl9.akamaized.net/ABCNewsLive_Disney.m3u8$LR•IPV4•15『线路2』 #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『线路3』 +https://abcnews-streams.akamaized.net/hls/live/2023560/abcnewshudson1/master.m3u8$LR•IPV4•15『线路3』 #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『线路4』 +https://abcnews-streams.akamaized.net/hls/live/2023561/abcnewshudson2/master.m3u8$LR•IPV4•15『线路4』 #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『线路5』 +https://abcnews-streams.akamaized.net/hls/live/2023562/abcnewshudson3/master.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/2023560/abcnewshudson1/master.m3u8$LR•IPV4•15『线路6』 +https://abcnews-streams.akamaized.net/hls/live/2023563/abcnewshudson4/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/2023561/abcnewshudson2/master.m3u8$LR•IPV4•15『线路7』 +https://abcnews-streams.akamaized.net/hls/live/2023564/abcnewshudson5/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/2023562/abcnewshudson3/master.m3u8$LR•IPV4•15『线路8』 +https://abcnews-streams.akamaized.net/hls/live/2023565/abcnewshudson6/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/2023563/abcnewshudson4/master.m3u8$LR•IPV4•15『线路9』 +https://abcnews-streams.akamaized.net/hls/live/2023566/abcnewshudson7/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/2023564/abcnewshudson5/master.m3u8$LR•IPV4•15『线路10』 +https://abcnews-streams.akamaized.net/hls/live/2023567/abcnewshudson8/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/2023565/abcnewshudson6/master.m3u8$LR•IPV4•15『线路11』 +https://abcnews-streams.akamaized.net/hls/live/2023568/abcnewshudson9/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/2023566/abcnewshudson7/master.m3u8$LR•IPV4•15『线路12』 +https://abcnews-streams.akamaized.net/hls/live/2023569/abcnewshudson10/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/2023567/abcnewshudson8/master.m3u8$LR•IPV4•15『线路13』 +https://d4ybyqrhce41r.cloudfront.net/v1/master/3fec3e5cac39a52b2132f9c66c83dae043dc17d4/prod-xumo-linear-nbcu-hlsv3/master.m3u8?ads.channelId=99991626$LR•IPV4•15『线路13』 #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『线路14』 +https://stream1.freetv.fun/abc-news-australia-1.m3u8$LR•IPV4•15『线路14』 #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『线路15』 +https://stream1.freetv.fun/abc-news-australia-2.ctv$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 https://d1rc86nwwc9fag.cloudfront.net/vglive-sk-293160/master.m3u8$LR•IPV4 #EXTINF:-1 tvg-id="NBC NEWS" tvg-name="NBC NEWS" group-title="YouTube",NBC NEWS -https://livehub-voidnet.onrender.com/cluster/streamcore/us/NBC_REDIS.m3u8$LR•IPV4•3『线路1』 +https://d1si3n1st4nkgb.cloudfront.net/10502/88896001/hls/master.m3u8?ads.xumo_channelId=88896001$LR•IPV4•3『线路1』 #EXTINF:-1 tvg-id="NBC NEWS" tvg-name="NBC NEWS" group-title="YouTube",NBC NEWS -https://d1si3n1st4nkgb.cloudfront.net/10502/88896001/hls/master.m3u8?ads.xumo_channelId=88896001$LR•IPV4•3『线路2』 +http://206.212.244.63/127/index.m3u8$LR•IPV4•3『线路2』 #EXTINF:-1 tvg-id="NBC NEWS" tvg-name="NBC NEWS" group-title="YouTube",NBC NEWS -http://206.212.244.63/127/index.m3u8$LR•IPV4•3『线路3』 +https://livehub-voidnet.onrender.com/cluster/streamcore/us/NBC_REDIS.m3u8$LR•IPV4•3『线路3』 #EXTINF:-1 tvg-id="iHOT爱体育" tvg-name="iHOT爱体育" group-title="IHOT",iHOT爱体育 http://146.56.165.66:7788/TVOD/2000000004000000060/hnbblive/index.m3u8$LR•IPV4 diff --git a/tvbox/lib/iptv.txt b/tvbox/lib/iptv.txt index 052bea00..1b7c27ff 100755 --- a/tvbox/lib/iptv.txt +++ b/tvbox/lib/iptv.txt @@ -1,6 +1,6 @@ 4K,#genre# -东方卫视4K,http://bp-resource-dfl.bestv.cn/148/3/video.m3u8$LR•IPV4•2『线路1』 +东方卫视4K,https://bp-resource-dfl.bestv.cn/148/3/video.m3u8$LR•IPV4•2『线路1』 东方卫视4K,http://43.251.226.89:8080/play/926.m3u8$LR•IPV4•2『线路2』 湖南卫视4K,http://8.138.7.223/tv/api.php?id=hnws4k$LR•IPV4•3『线路1』 湖南卫视4K,http://43.251.226.89:8080/play/920.m3u8$LR•IPV4•3『线路2』 @@ -31,12 +31,13 @@ 北京卫视4K,http://8.138.7.223/tv/btime.php?id=bjws4k$LR•IPV4•5『线路3』 北京卫视4K,http://101.35.240.114:88/live.php?id=北京卫视$LR•IPV4•5『线路4』 北京卫视4K,http://106.53.99.30/tv/api.php?id=bjws4k$LR•IPV4•5『线路5』 -CCTV4K,http://101.43.145.141:12002/gaoma/cctv4k.m3u8$LR•IPV4•6『线路1』 -CCTV4K,https://live-play-hls.cctvnews.cctv.com/CCTVChannel/channel_cctv4k_mbd.m3u8?auth_key=1784329200-1-b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c-81ad4aefc95ce528b3da1112f0bc9ff2&yid=b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c$LR•IPV4•6『线路2』 -CCTV4K,https://live-play-hls.cctvnews.cctv.com/CCTVChannel/channel_cctv4k_mbd.m3u8?auth_key=1784322000-1-b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c-aa68fb06c12f53b71a4d170807f32df5&yid=b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c$LR•IPV4•6『线路3』 -CCTV4K,http://198.204.240.250:82/live/cctv4k.m3u8$LR•IPV4•6『线路4』 -CCTV4K,http://fn.tmde.top:35455/nptv/cctv4k.m3u8$LR•IPV4•6『线路5』 -CCTV4K,http://xc.mfykeke.top:35455/nptv/cctv4k.m3u8$LR•IPV4•6『线路6』 +CCTV4K,http://vip1.xinketongxun.fun:8082/tsfile/live/1026_1.m3u8$LR•IPV4•7『线路1』 +CCTV4K,http://101.43.145.141:12002/gaoma/cctv4k.m3u8$LR•IPV4•7『线路2』 +CCTV4K,https://live-play-hls.cctvnews.cctv.com/CCTVChannel/channel_cctv4k_mbd.m3u8?auth_key=1784332800-1-b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c-0240f422767495f3b4be3b54c6f0496a&yid=b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c$LR•IPV4•7『线路3』 +CCTV4K,https://live-play-hls.cctvnews.cctv.com/CCTVChannel/channel_cctv4k_mbd.m3u8?auth_key=1784336400-1-b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c-c68beb1a091dd48540f9056f3e86c7c2&yid=b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c$LR•IPV4•7『线路4』 +CCTV4K,http://198.204.240.250:82/live/cctv4k.m3u8$LR•IPV4•7『线路5』 +CCTV4K,http://fn.tmde.top:35455/nptv/cctv4k.m3u8$LR•IPV4•7『线路6』 +CCTV4K,http://xc.mfykeke.top:35455/nptv/cctv4k.m3u8$LR•IPV4•7『线路7』 8K,#genre# 北京纪实8K,https://gdcucc.v1.mk/gdcucc/brtv8k.m3u8$LR•IPV4•2『线路1』 @@ -76,33 +77,36 @@ CCTV3,http://112.46.105.20:8009/hls/3/index.m3u8$LR•IPV4•12『线路9』 CCTV3,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226471/1.m3u8?$LR•IPV6•12『线路10』 CCTV3,http://63.141.230.178:82/gslb/zbdq5.m3u8?id=cctv3hd$LR•IPV4•12『线路11』 CCTV3,http://207.56.13.146:81/cdnlive/cctv3.m3u8$LR•IPV4•12『线路12』 -CCTV4,http://112.123.243.37:50085/tsfile/live/0004_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•16『线路1』 -CCTV4,http://222.223.41.27:8888/hls/4/index.m3u8$LR•IPV4•16『线路2』 -CCTV4,http://221.226.51.220:50081/newlive/live/hls/4/live.m3u8$LR•IPV4•16『线路3』 -CCTV4,http://153.0.171.163:9901/tsfile/live/0004_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•16『线路4』 -CCTV4,https://dash2.antik.sk/live/test_cctv_tizen/playlist.m3u8$LR•IPV4•16『线路5』 -CCTV4,http://38.75.136.137:98/gslb/dsdqbv/cctv4hd.m3u8?auth=test20251009$LR•IPV4•16『线路6』 -CCTV4,http://112.46.105.20:8009/hls/4/index.m3u8$LR•IPV4•16『线路7』 -CCTV4,http://74.91.26.218:82/live/cctv4hd.m3u8$LR•IPV4•16『线路8』 -CCTV4,p3p://167.114.175.6:55331/61244d9c0006885d64b1b7591f6c12a0$LR•IPV4•16『线路9』 -CCTV4,https://live-play-hls.cctvnews.cctv.com/CCTVChannel/channel_cctv4_mbd.m3u8?auth_key=1784329200-1-b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c-2245971645866ed95972e22af68cc8d1&yid=b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c$LR•IPV4•16『线路10』 -CCTV4,https://live-play-hls.cctvnews.cctv.com/CCTVChannel/channel_cctv4_mbd.m3u8?auth_key=1784271600-1-b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c-6aec44040ec72def77e22587fc404005&yid=b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c$LR•IPV4•16『线路11』 -CCTV4,https://live-play-hls.cctvnews.cctv.com/CCTVChannel/channel_cctv4_mbd.m3u8?auth_key=1784322000-1-b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c-25fe408e6545f49f3d4eb7f92e97c764&yid=b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c$LR•IPV4•16『线路12』 -CCTV4,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226335/1.m3u8?$LR•IPV6•16『线路13』 -CCTV4,http://63.141.230.178:82/gslb/zbdq5.m3u8?id=cctv4hd$LR•IPV4•16『线路14』 -CCTV4,http://207.56.13.146:81/cdnlive/cctv4.m3u8$LR•IPV4•16『线路15』 -CCTV4,https://global.cgtn.cicc.media.caton.cloud/master/cgtn-america.m3u8$LR•IPV4•16『线路16』 +CCTV4,http://112.123.243.37:50085/tsfile/live/0004_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•19『线路1』 +CCTV4,http://222.223.41.27:8888/hls/4/index.m3u8$LR•IPV4•19『线路2』 +CCTV4,http://221.226.51.220:50081/newlive/live/hls/4/live.m3u8$LR•IPV4•19『线路3』 +CCTV4,http://153.0.171.163:9901/tsfile/live/0004_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•19『线路4』 +CCTV4,http://t.061899.xyz/tl/tl.php?id=cctv4$LR•IPV4•19『线路5』 +CCTV4,http://t.061899.xyz/tl/tl.php?id=cctv4o$LR•IPV4•19『线路6』 +CCTV4,http://t.061899.xyz/tl/tl.php?id=cctv4m$LR•IPV4•19『线路7』 +CCTV4,http://38.75.136.137:98/gslb/dsdqbv/cctv4hd.m3u8?auth=test20251009$LR•IPV4•19『线路8』 +CCTV4,http://112.46.105.20:8009/hls/4/index.m3u8$LR•IPV4•19『线路9』 +CCTV4,http://74.91.26.218:82/live/cctv4hd.m3u8$LR•IPV4•19『线路10』 +CCTV4,p3p://167.114.175.6:55331/61244d9c0006885d64b1b7591f6c12a0$LR•IPV4•19『线路11』 +CCTV4,https://live-play-hls.cctvnews.cctv.com/CCTVChannel/channel_cctv4_mbd.m3u8?auth_key=1784332800-1-b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c-1f6c18588a391e749b10db985cd21620&yid=b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c$LR•IPV4•19『线路12』 +CCTV4,https://live-play-hls.cctvnews.cctv.com/CCTVChannel/channel_cctv4_mbd.m3u8?auth_key=1784336400-1-b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c-49830e80d2c0d40fea8492a5581b9b73&yid=b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c$LR•IPV4•19『线路13』 +CCTV4,https://live-play-hls.cctvnews.cctv.com/CCTVChannel/channel_cctv4_mbd.m3u8?auth_key=1784271600-1-b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c-6aec44040ec72def77e22587fc404005&yid=b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c$LR•IPV4•19『线路14』 +CCTV4,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226335/1.m3u8?$LR•IPV6•19『线路15』 +CCTV4,http://63.141.230.178:82/gslb/zbdq5.m3u8?id=cctv4hd$LR•IPV4•19『线路16』 +CCTV4,http://207.56.13.146:81/cdnlive/cctv4.m3u8$LR•IPV4•19『线路17』 +CCTV4,https://global.cgtn.cicc.media.caton.cloud/master/cgtn-america.m3u8$LR•IPV4•19『线路18』 +CCTV4,https://dash2.antik.sk/live/test_cctv_tizen/playlist.m3u8$LR•IPV4•19『线路19』 CCTV5,http://222.223.41.27:8888/hls/5/index.m3u8$LR•IPV4•14『线路1』 CCTV5,http://183.223.157.33:9901/tsfile/live/0005_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•14『线路2』 CCTV5,http://221.226.51.220:50081/newlive/live/hls/5/live.m3u8$LR•IPV4•14『线路3』 -CCTV5,http://112.27.235.94:8000/hls/5/index.m3u8$LR•IPV4•14『线路4』 +CCTV5,http://t.061899.xyz/tl/tl.php?id=cctv5$LR•IPV4•14『线路4』 CCTV5,http://101.66.199.247:9901/tsfile/live/0005_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•14『线路5』 CCTV5,http://38.75.136.137:98/gslb/dsdqbv/cctv5hd.m3u8?auth=test20251009$LR•IPV4•14『线路6』 CCTV5,http://112.46.105.20:8009/hls/503/index.m3u8$LR•IPV4•14『线路7』 CCTV5,http://153.0.171.163:9901/tsfile/live/0005_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•14『线路8』 CCTV5,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226469/1.m3u8?$LR•IPV6•14『线路9』 CCTV5,http://183.129.255.66:8480/hls/6/index.m3u8$LR•IPV4•14『线路10』 -CCTV5,http://112.27.235.94:8000/hls/6/index.m3u8$LR•IPV4•14『线路11』 +CCTV5,http://t.061899.xyz/tl/tl.php?id=cctv5p$LR•IPV4•14『线路11』 CCTV5,http://112.123.243.37:50085/tsfile/live/0006_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•14『线路12』 CCTV5,http://38.75.136.137:98/gslb/dsdqbv/cctv5p.m3u8?auth=test20251009$LR•IPV4•14『线路13』 CCTV5,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226894/1.m3u8?$LR•IPV6•14『线路14』 @@ -111,7 +115,7 @@ CCTV6,http://183.129.255.66:8480/hls/7/index.m3u8$LR•IPV4•13『线路2』 CCTV6,http://107.150.60.122/live/cctv6hd.m3u8$LR•IPV4•13『线路3』 CCTV6,http://38.75.136.137:98/gslb/dsdqbv/cctv6hd.m3u8?auth=test20251009$LR•IPV4•13『线路4』 CCTV6,http://221.226.51.220:50081/newlive/live/hls/6/live.m3u8$LR•IPV4•13『线路5』 -CCTV6,http://112.27.235.94:8000/hls/7/index.m3u8$LR•IPV4•13『线路6』 +CCTV6,http://t.061899.xyz/tl/tl.php?id=cctv6$LR•IPV4•13『线路6』 CCTV6,http://112.46.105.20:8009/hls/6/index.m3u8$LR•IPV4•13『线路7』 CCTV6,http://153.0.171.163:9901/tsfile/live/0006_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•13『线路8』 CCTV6,http://74.91.26.218:82/live/cctv6hd.m3u8$LR•IPV4•13『线路9』 @@ -124,7 +128,7 @@ CCTV7,http://222.223.41.27:8888/hls/7/index.m3u8$LR•IPV4•10『线路2』 CCTV7,http://222.214.208.34:59901/tsfile/live/0007_1.m3u8$LR•IPV4•10『线路3』 CCTV7,http://183.129.255.66:8480/hls/8/index.m3u8$LR•IPV4•10『线路4』 CCTV7,http://153.0.171.163:9901/tsfile/live/0007_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•10『线路5』 -CCTV7,http://112.27.235.94:8000/hls/8/index.m3u8$LR•IPV4•10『线路6』 +CCTV7,http://t.061899.xyz/tl/tl.php?id=cctv7$LR•IPV4•10『线路6』 CCTV7,http://38.75.136.137:98/gslb/dsdqbv/cctv7hd.m3u8?auth=test20251009$LR•IPV4•10『线路7』 CCTV7,http://112.46.105.20:8009/hls/504/index.m3u8$LR•IPV4•10『线路8』 CCTV7,http://74.91.26.218:82/live/cctv7hd.m3u8$LR•IPV4•10『线路9』 @@ -137,7 +141,7 @@ CCTV8,http://120.202.94.181:9446/tsfile/live/0008_1.m3u8?key=txiptv$LR•IPV4• CCTV8,http://38.75.136.137:98/gslb/dsdqpub/cctv8hd.m3u8?auth=testpub$LR•IPV4•19『线路6』 CCTV8,http://120.198.95.220:9901/tsfile/live/1023_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•19『线路7』 CCTV8,https://ldocctvwbcdtxy.liveplay.myqcloud.com/ldocctvwbcd/cdrmldcctv8_1_hd.m3u8$LR•IPV4•19『线路8』 -CCTV8,http://112.27.235.94:8000/hls/9/index.m3u8$LR•IPV4•19『线路9』 +CCTV8,http://t.061899.xyz/tl/tl.php?id=cctv8$LR•IPV4•19『线路9』 CCTV8,http://38.75.136.137:98/gslb/dsdqbv/cctv8hd.m3u8?auth=test20251009$LR•IPV4•19『线路10』 CCTV8,http://112.46.105.20:8009/hls/8/index.m3u8$LR•IPV4•19『线路11』 CCTV8,http://153.0.171.163:9901/tsfile/live/1007_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•19『线路12』 @@ -155,30 +159,29 @@ CCTV9,http://38.75.136.137:98/gslb/dsdqbv/cctv9hd.m3u8?auth=test20251009$LR•IP CCTV9,http://74.91.26.218:82/live/cctv9hd.m3u8$LR•IPV4•12『线路5』 CCTV9,http://112.46.105.20:8009/hls/509/index.m3u8$LR•IPV4•12『线路6』 CCTV9,http://153.0.171.163:9901/tsfile/live/1008_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•12『线路7』 -CCTV9,https://v4-e6b1c5baf4e240fe63adbf68dda23435.livehwc4.com/play.kankanlive.com/live/1698423397390920.m3u8?sub_m3u8=true&edge_slice=true&user_session_id=8a921813ee3b23c82763145c9f291a3b$LR•IPV4•12『线路8』 -CCTV9,https://v4-e6b1c5baf4e240fe63adbf68dda23435.livehwc4.com/play.kankanlive.com/live/1698423397390920.m3u8?sub_m3u8=true&edge_slice=true&user_session_id=f3fb3ddaca05941087114cf6481e1c23$LR•IPV4•12『线路9』 +CCTV9,https://v4-702cae17a28d6e4f0c0002bba021d934.livehwc4.com/play.kankanlive.com/live/1698423397390920.m3u8?sub_m3u8=true&edge_slice=true&user_session_id=7b0844b76d8c951adb5f87864280aa1c$LR•IPV4•12『线路8』 +CCTV9,https://v4-e6b1c5baf4e240fe63adbf68dda23435.livehwc4.com/play.kankanlive.com/live/1698423397390920.m3u8?sub_m3u8=true&edge_slice=true&user_session_id=1c7b8d97d045399d92a9b9016e62d86b$LR•IPV4•12『线路9』 CCTV9,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226944/1.m3u8?$LR•IPV6•12『线路10』 CCTV9,http://222.223.41.27:8888/hls/9/index.m3u8$LR•IPV4•12『线路11』 CCTV9,https://xykt-fix.github.io/Y77.m3u8$LR•IPV4•12『线路12』 -CCTV10,http://222.223.41.27:8888/hls/10/index.m3u8$LR•IPV4•11『线路1』 -CCTV10,http://183.129.255.66:8480/hls/11/index.m3u8$LR•IPV4•11『线路2』 -CCTV10,http://107.150.60.122/live/cctv10hd.m3u8$LR•IPV4•11『线路3』 -CCTV10,http://153.0.171.163:9901/tsfile/live/1009_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•11『线路4』 -CCTV10,http://112.27.235.94:8000/hls/11/index.m3u8$LR•IPV4•11『线路5』 -CCTV10,http://38.75.136.137:98/gslb/dsdqbv/cctv10hd.m3u8?auth=test20251009$LR•IPV4•11『线路6』 -CCTV10,http://112.46.105.20:8009/hls/506/index.m3u8$LR•IPV4•11『线路7』 -CCTV10,http://74.91.26.218:82/live/cctv10hd.m3u8$LR•IPV4•11『线路8』 -CCTV10,https://jsv-live-play.sfccn.com/live/jsv_3920_fhd.m3u8$LR•IPV4•11『线路9』 -CCTV10,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226937/1.m3u8?$LR•IPV6•11『线路10』 -CCTV10,https://hwapi.yntv.net/ew265l/z1z6s5.m3u8$LR•IPV4•11『线路11』 +CCTV10,http://222.223.41.27:8888/hls/10/index.m3u8$LR•IPV4•10『线路1』 +CCTV10,http://183.129.255.66:8480/hls/11/index.m3u8$LR•IPV4•10『线路2』 +CCTV10,http://107.150.60.122/live/cctv10hd.m3u8$LR•IPV4•10『线路3』 +CCTV10,http://153.0.171.163:9901/tsfile/live/1009_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•10『线路4』 +CCTV10,http://t.061899.xyz/tl/tl.php?id=cctv10$LR•IPV4•10『线路5』 +CCTV10,http://38.75.136.137:98/gslb/dsdqbv/cctv10hd.m3u8?auth=test20251009$LR•IPV4•10『线路6』 +CCTV10,http://112.46.105.20:8009/hls/506/index.m3u8$LR•IPV4•10『线路7』 +CCTV10,http://74.91.26.218:82/live/cctv10hd.m3u8$LR•IPV4•10『线路8』 +CCTV10,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226937/1.m3u8?$LR•IPV6•10『线路9』 +CCTV10,https://hwapi.yntv.net/ew265l/z1z6s5.m3u8$LR•IPV4•10『线路10』 CCTV11,http://183.129.255.66:8480/hls/12/index.m3u8$LR•IPV4•8『线路1』 CCTV11,http://cd-live-stream.news.cctvplus.com/live/smil:CHANNEL1.smil/chunklist_w744036192_b1000000.m3u8$LR•IPV4•8『线路2』 CCTV11,http://153.0.171.163:9901/tsfile/live/1010_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•8『线路3』 -CCTV11,http://112.27.235.94:8000/hls/12/index.m3u8$LR•IPV4•8『线路4』 +CCTV11,http://t.061899.xyz/tl/tl.php?id=cctv11$LR•IPV4•8『线路4』 CCTV11,http://38.75.136.137:98/gslb/dsdqbv/cctv11hd.m3u8?auth=test20251009$LR•IPV4•8『线路5』 CCTV11,http://74.91.26.218:82/live/cctv11hd.m3u8$LR•IPV4•8『线路6』 -CCTV11,http://183.196.25.171:808/hls/11/index.m3u8$LR•IPV4•8『线路7』 -CCTV11,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226334/1.m3u8?$LR•IPV6•8『线路8』 +CCTV11,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226334/1.m3u8?$LR•IPV6•8『线路7』 +CCTV11,http://183.196.25.171:808/hls/11/index.m3u8$LR•IPV4•8『线路8』 CCTV12,http://112.123.243.37:50085/tsfile/live/0013_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•9『线路1』 CCTV12,http://183.223.157.33:9901/tsfile/live/0012_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•9『线路2』 CCTV12,http://183.129.255.66:8480/hls/13/index.m3u8$LR•IPV4•9『线路3』 @@ -194,7 +197,7 @@ CCTV13,http://183.129.255.66:8480/hls/14/index.m3u8$LR•IPV4•15『线路3』 CCTV13,http://183.223.157.33:9901/tsfile/live/0013_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•15『线路4』 CCTV13,http://38.75.136.137:98/gslb/dsdqbv/cctv13hd.m3u8?auth=test20251009$LR•IPV4•15『线路5』 CCTV13,http://153.0.171.163:9901/tsfile/live/1012_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•15『线路6』 -CCTV13,http://112.27.235.94:8000/hls/14/index.m3u8$LR•IPV4•15『线路7』 +CCTV13,http://t.061899.xyz/tl/tl.php?id=cctv13$LR•IPV4•15『线路7』 CCTV13,http://74.91.26.218:82/live/cctv13hd.m3u8$LR•IPV4•15『线路8』 CCTV13,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226316/1.m3u8?$LR•IPV6•15『线路9』 CCTV13,https://event.pull.hebtv.com/jishi/cp1.m3u8$LR•IPV4•15『线路10』 @@ -207,7 +210,7 @@ CCTV14,http://74.91.26.218:82/live/cctv14hd.m3u8$LR•IPV4•9『线路1』 CCTV14,http://222.223.41.27:8888/hls/14/index.m3u8$LR•IPV4•9『线路2』 CCTV14,http://183.129.255.66:8480/hls/15/index.m3u8$LR•IPV4•9『线路3』 CCTV14,http://153.0.171.163:9901/tsfile/live/1013_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•9『线路4』 -CCTV14,http://112.27.235.94:8000/hls/15/index.m3u8$LR•IPV4•9『线路5』 +CCTV14,http://t.061899.xyz/tl/tl.php?id=cctv14$LR•IPV4•9『线路5』 CCTV14,http://112.123.243.37:50085/tsfile/live/0015_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•9『线路6』 CCTV14,http://38.75.136.137:98/gslb/dsdqbv/cctv14hd.m3u8?auth=test20251009$LR•IPV4•9『线路7』 CCTV14,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226947/1.m3u8?$LR•IPV6•9『线路8』 @@ -218,24 +221,24 @@ CCTV15,http://74.91.26.218:82/live/cctv15hd.m3u8$LR•IPV4•11『线路3』 CCTV15,http://183.223.157.33:9901/tsfile/live/0015_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•11『线路4』 CCTV15,http://204.12.221.218:8181/3m1080p/cctv15.m3u8$LR•IPV4•11『线路5』 CCTV15,http://153.0.171.163:9901/tsfile/live/1014_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•11『线路6』 -CCTV15,http://112.27.235.94:8000/hls/16/index.m3u8$LR•IPV4•11『线路7』 +CCTV15,http://t.061899.xyz/tl/tl.php?id=cctv15$LR•IPV4•11『线路7』 CCTV15,http://38.75.136.137:98/gslb/dsdqbv/cctv15hd.m3u8?auth=test20251009$LR•IPV4•11『线路8』 CCTV15,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226333/1.m3u8?$LR•IPV6•11『线路9』 CCTV15,http://38.75.136.137:98/gslb/dsdqpub/cctv15hd.m3u8?auth=testpub$LR•IPV4•11『线路10』 CCTV15,https://xykt-fix.github.io/play/a02e/index.m3u8$LR•IPV4•11『线路11』 -CCTV16,http://drive.mxmy.net:8888/udp/239.3.1.184:8001$LR•IPV4•4『线路1』 +CCTV16,http://t.061899.xyz/tl/tl.php?id=cctv16$LR•IPV4•4『线路1』 CCTV16,http://38.75.136.137:98/gslb/dsdqbv/cctv16hd.m3u8?auth=test20251009$LR•IPV4•4『线路2』 CCTV16,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221227002/1.m3u8?$LR•IPV6•4『线路3』 CCTV16,http://74.91.26.218:82/live/cctv16hd.m3u8$LR•IPV4•4『线路4』 CCTV17,http://183.129.255.66:8480/hls/18/index.m3u8$LR•IPV4•9『线路1』 CCTV17,http://107.150.60.122/live/cctv17hd.m3u8$LR•IPV4•9『线路2』 CCTV17,http://59.39.89.130:60901/tsfile/live/0017_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•9『线路3』 -CCTV17,http://123.130.84.106:8154/tsfile/live/0019_1.m3u8$LR•IPV4•9『线路4』 +CCTV17,http://t.061899.xyz/tl/tl.php?id=cctv17$LR•IPV4•9『线路4』 CCTV17,http://38.75.136.137:98/gslb/dsdqbv/cctv17hd.m3u8?auth=test20251009$LR•IPV4•9『线路5』 CCTV17,http://74.91.26.218:82/live/cctv17hd.m3u8$LR•IPV4•9『线路6』 -CCTV17,http://183.196.25.171:808/hls/93/index.m3u8$LR•IPV4•9『线路7』 -CCTV17,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226318/1.m3u8?$LR•IPV6•9『线路8』 -CCTV17,http://38.75.136.137:98/gslb/dsdqpub/cctv17hd.m3u8?auth=testpub$LR•IPV4•9『线路9』 +CCTV17,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226318/1.m3u8?$LR•IPV6•9『线路7』 +CCTV17,http://38.75.136.137:98/gslb/dsdqpub/cctv17hd.m3u8?auth=testpub$LR•IPV4•9『线路8』 +CCTV17,http://183.196.25.171:808/hls/93/index.m3u8$LR•IPV4•9『线路9』 CCTV第一剧场,http://38.75.136.137:98/gslb/dsdqpub/dyjc.m3u8?auth=testpub$LR•IPV4 CCTV怀旧剧场,http://38.75.136.137:98/gslb/dsdqpub/hjjc.m3u8?auth=testpub$LR•IPV4 CCTV风云剧场,http://38.75.136.137:98/gslb/dsdqpub/fyjc.m3u8?auth=testpub$LR•IPV4 @@ -302,13 +305,13 @@ CGTN阿语,https://0472.org/hls/cgtna.m3u8$LR•IPV4 星空卫视,http://wouu.net:9977/udp/239.93.0.156:2193$LR•IPV4•7『线路5』 星空卫视,http://171.213.140.54:8123/udp/239.93.1.10:2193$LR•IPV4•7『线路6』 星空卫视,https://stream1.freetv.fun/xing-kong-wei-shi-4.ctv$LR•IPV4•7『线路7』 -湖南卫视,http://120.196.232.43:8088/rrs03.hw.gmcc.net/PLTV/651/224/3221226698/1.m3u8$LR•IPV4•16『线路1』 +湖南卫视,http://t.061899.xyz/tl/tl.php?id=hunws$LR•IPV4•16『线路1』 湖南卫视,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226509/1.m3u8?zoneoffset=480&servicetype=1&icpid=&limitflux=-1&limitdur=-1&tenantId=8601&accountinfo=%7E%7EV2.0%7EIGb_ib7rnBX9_sANRKq9sg%7EpK8OKM5JoJWWbLRyLfPcUMkwWZ90MzSI9S9PDltJsYzd0ZGcS3Tkh7syciNKJa-w60mDOdwtDyoNwCx9aRgzHNH9AUREV_qvNJtXHRPzYw0%7EExtInfo9bj61dxzlMXrsixrqcFYPg%3D%3D%3A20221022013542%2C915973%2C119.123.71.209%2C20221022013542%2C10000100000000050000000003873458%2C915973%2C-1%2C0%2C1%2C%2C%2C2%2C%2C%2C%2C2%2C%2C10000100000000060000000007253514_0%2CEND&GuardEncType=2$LR•IPV6•16『线路2』 湖南卫视,http://74.91.26.218:82/live/hnwshd.m3u8$LR•IPV4•16『线路3』 湖南卫视,http://204.12.221.218:8181/3m1080p/hnws.m3u8$LR•IPV4•16『线路4』 湖南卫视,http://173.208.212.130:8181/720p/hnws.m3u8$LR•IPV4•16『线路5』 湖南卫视,http://153.0.171.163:9901/tsfile/live/0128_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•16『线路6』 -湖南卫视,http://112.27.235.94:8000/hls/31/index.m3u8$LR•IPV4•16『线路7』 +湖南卫视,http://120.196.232.43:8088/rrs03.hw.gmcc.net/PLTV/651/224/3221226698/1.m3u8$LR•IPV4•16『线路7』 湖南卫视,http://38.75.136.137:98/gslb/dsdqpub/hnwshd.m3u8?auth=testpub$LR•IPV4•16『线路8』 湖南卫视,https://hlsbkmgsplive.miguvideo.com/wd-hunanhd-2500/01.m3u8?&HlsSubType=&encrypt=$LR•IPV4•16『线路9』 湖南卫视,https://hlsbkmgsplive.miguvideo.com/wd-hunanhd-1200/01.m3u8?&HlsSubType=&encrypt=$LR•IPV4•16『线路10』 @@ -318,95 +321,93 @@ CGTN阿语,https://0472.org/hls/cgtna.m3u8$LR•IPV4 湖南卫视,https://iptv.catvod.com/catvod.php?id=hunws$LR•IPV4•16『线路14』 湖南卫视,https://httop.top/ysp-湖南卫视$LR•IPV4•16『线路15』 湖南卫视,http://iptv.huuc.edu.cn/hls/hunanhd.m3u8$LR•IPV4•16『线路16』 -浙江卫视,http://zwebl02.cztv.com/live/channel01720Pnew.m3u8?auth_key=1784123883-f178167128c55cd66b7eca004ccca015-0-69f388bdaa594feb900510d687566182$LR•IPV4•17『线路1』 -浙江卫视,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226899/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7ETYfTgTra_pUx2cPrgZ_BDw%7EtP4-l0lmSfjwLWEfK_el1vH_mv-s1zo4AQJwdedaVwG9xkuFTDg8J26cwOrNJzn20BErrHdLhuZ9EzLUCD3PMW-OMx4MGteHV2vLeW6BqoY%2CEND$LR•IPV6•17『线路2』 -浙江卫视,http://112.123.243.37:50085/tsfile/live/0019_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•17『线路3』 -浙江卫视,http://ali-xwl.cztv.com/live/channel011080Plxw.m3u8$LR•IPV4•17『线路4』 -浙江卫视,http://204.12.221.218:8181/3m1080p/zjws.m3u8$LR•IPV4•17『线路5』 -浙江卫视,http://173.208.212.130:8181/720p/zjws.m3u8$LR•IPV4•17『线路6』 -浙江卫视,http://ali-xwl.cztv.com/live/channel01720Plxw.m3u8$LR•IPV4•17『线路7』 -浙江卫视,http://112.27.235.94:8000/hls/29/index.m3u8$LR•IPV4•17『线路8』 -浙江卫视,http://38.75.136.137:98/gslb/dsdqpub/zjwshd.m3u8?auth=testpub$LR•IPV4•17『线路9』 -浙江卫视,http://23.237.228.134/live6/zhejiang.m3u8$LR•IPV4•17『线路10』 -浙江卫视,http://gfr.x3322.net:9901/tsfile/live/1087_1.m3u8$LR•IPV4•17『线路11』 -浙江卫视,http://api.kkitv.itv888.cn:8080/hls/urjqjvyf41q/index.m3u8$LR•IPV4•17『线路12』 -浙江卫视,https://iptv.catvod.com/catvod.php?id=zjws$LR•IPV4•17『线路13』 -浙江卫视,https://httop.top/ysp-浙江卫视$LR•IPV4•17『线路14』 -浙江卫视,http://iptv.huuc.edu.cn/hls/zjhd.m3u8$LR•IPV4•17『线路15』 -浙江卫视,http://153.0.171.163:9901/tsfile/live/0124_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•17『线路16』 -浙江卫视,http://39.134.115.163:8080/PLTV/88888910/224/3221225703/index.m3u8$LR•IPV4•17『线路17』 -东方卫视,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226898/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7E0uh4lyjjBCCN7TCq21vSIQ%7EtP4-l0lmSfjwLWEfK_el1vH_mv-s1zo4AQJwdedaVwG9xkuFTDg8J26cwOrNJzn20BErrHdLhuZ9EzLUCD3PMW-OMx4MGteHV2vLeW6BqoY%2CEND$LR•IPV6•17『线路1』 -东方卫视,http://101.66.194.82:9901/tsfile/live/0018_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•17『线路2』 -东方卫视,http://38.75.136.137:98/gslb/dsdqpub/dfwshd.m3u8?auth=testpub$LR•IPV4•17『线路3』 -东方卫视,http://173.208.212.130:8181/720p/dfws.m3u8$LR•IPV4•17『线路4』 -东方卫视,https://txmov2.a.kwimgs.com/bs3/video-hls/5219953535631090825_hlsb.m3u8$LR•IPV4•17『线路5』 -东方卫视,http://38.75.136.137:98/gslb/dsdqbv/dfwshd.m3u8?auth=test20251009$LR•IPV4•17『线路6』 -东方卫视,http://23.237.228.134/live3/dongfang.m3u8$LR•IPV4•17『线路7』 -东方卫视,http://43.251.226.89:8080/play/36.m3u8$LR•IPV4•17『线路8』 -东方卫视,http://gfr.x3322.net:9901/tsfile/live/1085_1.m3u8$LR•IPV4•17『线路9』 -东方卫视,http://api.kkitv.itv888.cn:8080/hls/p269fvbehye/index.m3u8$LR•IPV4•17『线路10』 -东方卫视,https://iptv.catvod.com/catvod.php?id=dfws$LR•IPV4•17『线路11』 -东方卫视,https://httop.top/ysp-东方卫视$LR•IPV4•17『线路12』 -东方卫视,http://iptv.huuc.edu.cn/hls/dfhd.m3u8$LR•IPV4•17『线路13』 -东方卫视,http://mg.hmysapp.cn:177/ckmg/zb.php?id=dfws$LR•IPV4•17『线路14』 -东方卫视,http://153.0.171.163:9901/tsfile/live/0107_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•17『线路15』 -东方卫视,http://omnix.cn:4000/udp/225.1.8.45:8032$LR•IPV4•17『线路16』 -东方卫视,http://118.81.195.79:9003/hls/23/index.m3u8$LR•IPV4•17『线路17』 +浙江卫视,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•16『线路1』 +浙江卫视,http://112.123.243.37:50085/tsfile/live/0019_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•16『线路2』 +浙江卫视,http://ali-xwl.cztv.com/live/channel011080Plxw.m3u8$LR•IPV4•16『线路3』 +浙江卫视,http://204.12.221.218:8181/3m1080p/zjws.m3u8$LR•IPV4•16『线路4』 +浙江卫视,http://173.208.212.130:8181/720p/zjws.m3u8$LR•IPV4•16『线路5』 +浙江卫视,http://ali-xwl.cztv.com/live/channel01720Plxw.m3u8$LR•IPV4•16『线路6』 +浙江卫视,http://ali-m-l.cztv.com:80/channels/lantian/channel001/1080p.m3u8$LR•IPV4•16『线路7』 +浙江卫视,http://39.134.115.163:8080/PLTV/88888910/224/3221225703/index.m3u8$LR•IPV4•16『线路8』 +浙江卫视,http://38.75.136.137:98/gslb/dsdqpub/zjwshd.m3u8?auth=testpub$LR•IPV4•16『线路9』 +浙江卫视,http://23.237.228.134/live6/zhejiang.m3u8$LR•IPV4•16『线路10』 +浙江卫视,http://gfr.x3322.net:9901/tsfile/live/1087_1.m3u8$LR•IPV4•16『线路11』 +浙江卫视,http://api.kkitv.itv888.cn:8080/hls/urjqjvyf41q/index.m3u8$LR•IPV4•16『线路12』 +浙江卫视,https://iptv.catvod.com/catvod.php?id=zjws$LR•IPV4•16『线路13』 +浙江卫视,https://httop.top/ysp-浙江卫视$LR•IPV4•16『线路14』 +浙江卫视,http://iptv.huuc.edu.cn/hls/zjhd.m3u8$LR•IPV4•16『线路15』 +浙江卫视,http://153.0.171.163:9901/tsfile/live/0124_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•16『线路16』 +东方卫视,http://t.061899.xyz/tl/tl.php?id=dfws$LR•IPV4•17『线路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•17『线路2』 +东方卫视,http://101.66.194.82:9901/tsfile/live/0018_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•17『线路3』 +东方卫视,http://38.75.136.137:98/gslb/dsdqpub/dfwshd.m3u8?auth=testpub$LR•IPV4•17『线路4』 +东方卫视,http://173.208.212.130:8181/720p/dfws.m3u8$LR•IPV4•17『线路5』 +东方卫视,http://118.81.195.79:9003/hls/23/index.m3u8$LR•IPV4•17『线路6』 +东方卫视,http://38.75.136.137:98/gslb/dsdqbv/dfwshd.m3u8?auth=test20251009$LR•IPV4•17『线路7』 +东方卫视,http://23.237.228.134/live3/dongfang.m3u8$LR•IPV4•17『线路8』 +东方卫视,http://43.251.226.89:8080/play/36.m3u8$LR•IPV4•17『线路9』 +东方卫视,http://gfr.x3322.net:9901/tsfile/live/1085_1.m3u8$LR•IPV4•17『线路10』 +东方卫视,http://api.kkitv.itv888.cn:8080/hls/p269fvbehye/index.m3u8$LR•IPV4•17『线路11』 +东方卫视,https://iptv.catvod.com/catvod.php?id=dfws$LR•IPV4•17『线路12』 +东方卫视,https://httop.top/ysp-东方卫视$LR•IPV4•17『线路13』 +东方卫视,http://iptv.huuc.edu.cn/hls/dfhd.m3u8$LR•IPV4•17『线路14』 +东方卫视,http://mg.hmysapp.cn:177/ckmg/zb.php?id=dfws$LR•IPV4•17『线路15』 +东方卫视,http://153.0.171.163:9901/tsfile/live/0107_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•17『线路16』 +东方卫视,http://omnix.cn:4000/udp/225.1.8.45:8032$LR•IPV4•17『线路17』 北京卫视,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226900/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7EcYPi33WFyhvd6SjmqUKhJg%7EtP4-l0lmSfjwLWEfK_el1vH_mv-s1zo4AQJwdedaVwG9xkuFTDg8J26cwOrNJzn20BErrHdLhuZ9EzLUCD3PMW-OMx4MGteHV2vLeW6BqoY%2CEND$LR•IPV6•13『线路1』 北京卫视,http://101.66.194.63:9901/tsfile/live/0016_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•13『线路2』 北京卫视,http://153.0.171.163:9901/tsfile/live/0122_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•13『线路3』 北京卫视,http://112.27.235.94:8000/hls/27/index.m3u8$LR•IPV4•13『线路4』 -北京卫视,http://38.75.136.137:98/gslb/dsdqpub/bjwshd.m3u8?auth=testpub$LR•IPV4•13『线路5』 -北京卫视,http://23.237.228.134/live3/beijing.m3u8$LR•IPV4•13『线路6』 -北京卫视,http://43.251.226.89:8080/play/40.m3u8$LR•IPV4•13『线路7』 -北京卫视,http://gfr.x3322.net:9901/tsfile/live/1089_1.m3u8$LR•IPV4•13『线路8』 -北京卫视,http://api.kkitv.itv888.cn:8080/hls/h5uud1z84gn/index.m3u8$LR•IPV4•13『线路9』 -北京卫视,https://iptv.catvod.com/catvod.php?id=bjws$LR•IPV4•13『线路10』 -北京卫视,https://httop.top/ysp-北京卫视$LR•IPV4•13『线路11』 -北京卫视,http://iptv.huuc.edu.cn/hls/btv1hd.m3u8$LR•IPV4•13『线路12』 -北京卫视,http://go.bkpcp.top/mg/bjws$LR•IPV4•13『线路13』 -江苏卫视,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•15『线路1』 -江苏卫视,http://120.198.95.220:9901/tsfile/live/1046_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•15『线路2』 -江苏卫视,http://173.208.212.130:8181/720p/jsws.m3u8$LR•IPV4•15『线路3』 -江苏卫视,http://198.204.228.26/live/jswshd.m3u8$LR•IPV4•15『线路4』 -江苏卫视,http://112.27.235.94:8000/hls/32/index.m3u8$LR•IPV4•15『线路5』 -江苏卫视,http://38.75.136.137:98/gslb/dsdqbv/jswshd.m3u8?auth=test20251009$LR•IPV4•15『线路6』 -江苏卫视,https://hlsbkmgsplive.miguvideo.com/migu/kailu/jswshd265/55/20200407/01.m3u8?&HlsSubType=&encrypt=$LR•IPV4•15『线路7』 -江苏卫视,http://23.237.228.134/live3/jiangsu.m3u8$LR•IPV4•15『线路8』 -江苏卫视,http://43.251.226.89:8080/play/37.m3u8$LR•IPV4•15『线路9』 -江苏卫视,http://gfr.x3322.net:9901/tsfile/live/1086_1.m3u8$LR•IPV4•15『线路10』 -江苏卫视,http://api.kkitv.itv888.cn:8080/hls/g1upm1u239/index.m3u8$LR•IPV4•15『线路11』 -江苏卫视,https://httop.top/ysp-江苏卫视$LR•IPV4•15『线路12』 -江苏卫视,http://iptv.huuc.edu.cn/hls/jshd.m3u8$LR•IPV4•15『线路13』 -江苏卫视,http://mg.hmysapp.cn:177/ckmg/zb.php?id=jsws$LR•IPV4•15『线路14』 -江苏卫视,http://39.134.24.166/dbiptv.sn.chinamobile.com/PLTV/88888890/224/3221226200/index.m3u8$LR•IPV4•15『线路15』 -安徽卫视,https://piccpndks.v.kcdnvip.com/audio/anhui_2/index.m3u8$LR•IPV4•11『线路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•11『线路2』 -安徽卫视,http://101.66.194.63:9901/tsfile/live/0130_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•11『线路3』 -安徽卫视,http://112.27.235.94:8000/hls/26/index.m3u8$LR•IPV4•11『线路4』 -安徽卫视,http://23.237.228.134/live8/anhui.m3u8$LR•IPV4•11『线路5』 -安徽卫视,http://gfr.x3322.net:9901/tsfile/live/1092_1.m3u8$LR•IPV4•11『线路6』 -安徽卫视,http://api.kkitv.itv888.cn:8080/hls/m8hvytneunk/index.m3u8$LR•IPV4•11『线路7』 -安徽卫视,https://iptv.catvod.com/catvod.php?id=ahws$LR•IPV4•11『线路8』 -安徽卫视,https://httop.top/ysp-安徽卫视$LR•IPV4•11『线路9』 -安徽卫视,http://iptv.huuc.edu.cn/hls/ahhd.m3u8$LR•IPV4•11『线路10』 -安徽卫视,http://153.0.171.163:9901/tsfile/live/0130_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•11『线路11』 -重庆卫视,http://live2.plus.jinhua.com.cn/dsnc/playlist.m3u8$LR•IPV4•16『线路1』 +北京卫视,http://go.bkpcp.top/mg/bjws$LR•IPV4•13『线路5』 +北京卫视,http://38.75.136.137:98/gslb/dsdqpub/bjwshd.m3u8?auth=testpub$LR•IPV4•13『线路6』 +北京卫视,http://23.237.228.134/live3/beijing.m3u8$LR•IPV4•13『线路7』 +北京卫视,http://43.251.226.89:8080/play/40.m3u8$LR•IPV4•13『线路8』 +北京卫视,http://gfr.x3322.net:9901/tsfile/live/1089_1.m3u8$LR•IPV4•13『线路9』 +北京卫视,http://api.kkitv.itv888.cn:8080/hls/h5uud1z84gn/index.m3u8$LR•IPV4•13『线路10』 +北京卫视,https://iptv.catvod.com/catvod.php?id=bjws$LR•IPV4•13『线路11』 +北京卫视,https://httop.top/ysp-北京卫视$LR•IPV4•13『线路12』 +北京卫视,http://iptv.huuc.edu.cn/hls/btv1hd.m3u8$LR•IPV4•13『线路13』 +江苏卫视,http://t.061899.xyz/tl/tl.php?id=jsws$LR•IPV4•15『线路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•15『线路2』 +江苏卫视,http://120.198.95.220:9901/tsfile/live/1046_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•15『线路3』 +江苏卫视,http://173.208.212.130:8181/720p/jsws.m3u8$LR•IPV4•15『线路4』 +江苏卫视,http://198.204.228.26/live/jswshd.m3u8$LR•IPV4•15『线路5』 +江苏卫视,http://39.134.24.166/dbiptv.sn.chinamobile.com/PLTV/88888890/224/3221226200/index.m3u8$LR•IPV4•15『线路6』 +江苏卫视,http://38.75.136.137:98/gslb/dsdqbv/jswshd.m3u8?auth=test20251009$LR•IPV4•15『线路7』 +江苏卫视,https://hlsbkmgsplive.miguvideo.com/migu/kailu/jswshd265/55/20200407/01.m3u8?&HlsSubType=&encrypt=$LR•IPV4•15『线路8』 +江苏卫视,http://23.237.228.134/live3/jiangsu.m3u8$LR•IPV4•15『线路9』 +江苏卫视,http://43.251.226.89:8080/play/37.m3u8$LR•IPV4•15『线路10』 +江苏卫视,http://gfr.x3322.net:9901/tsfile/live/1086_1.m3u8$LR•IPV4•15『线路11』 +江苏卫视,http://api.kkitv.itv888.cn:8080/hls/g1upm1u239/index.m3u8$LR•IPV4•15『线路12』 +江苏卫视,https://httop.top/ysp-江苏卫视$LR•IPV4•15『线路13』 +江苏卫视,http://iptv.huuc.edu.cn/hls/jshd.m3u8$LR•IPV4•15『线路14』 +江苏卫视,http://mg.hmysapp.cn:177/ckmg/zb.php?id=jsws$LR•IPV4•15『线路15』 +安徽卫视,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•10『线路1』 +安徽卫视,http://101.66.194.63:9901/tsfile/live/0130_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•10『线路2』 +安徽卫视,http://112.27.235.94:8000/hls/26/index.m3u8$LR•IPV4•10『线路3』 +安徽卫视,http://23.237.228.134/live8/anhui.m3u8$LR•IPV4•10『线路4』 +安徽卫视,http://gfr.x3322.net:9901/tsfile/live/1092_1.m3u8$LR•IPV4•10『线路5』 +安徽卫视,http://api.kkitv.itv888.cn:8080/hls/m8hvytneunk/index.m3u8$LR•IPV4•10『线路6』 +安徽卫视,https://iptv.catvod.com/catvod.php?id=ahws$LR•IPV4•10『线路7』 +安徽卫视,https://httop.top/ysp-安徽卫视$LR•IPV4•10『线路8』 +安徽卫视,http://iptv.huuc.edu.cn/hls/ahhd.m3u8$LR•IPV4•10『线路9』 +安徽卫视,http://153.0.171.163:9901/tsfile/live/0130_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•10『线路10』 +重庆卫视,http://t.061899.xyz/tl/tl.php?id=cqws$LR•IPV4•16『线路1』 重庆卫视,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226963/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7EjTXsJprEx2nE38tdvu5lhA%7EtP4-l0lmSfjwLWEfK_el1vH_mv-s1zo4AQJwdedaVwG9xkuFTDg8J26cwOrNJzn20BErrHdLhuZ9EzLUCD3PMW-OMx4MGteHV2vLeW6BqoY%2CEND$LR•IPV6•16『线路2』 重庆卫视,http://192.151.150.154/live/cqwshd.m3u8$LR•IPV4•16『线路3』 重庆卫视,http://107.150.60.122/live/cqwshd.m3u8$LR•IPV4•16『线路4』 重庆卫视,http://112.123.243.37:50085/tsfile/live/0131_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•16『线路5』 重庆卫视,http://120.198.95.220:9901/tsfile/live/1066_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•16『线路6』 -重庆卫视,http://112.27.235.94:8000/hls/36/index.m3u8$LR•IPV4•16『线路7』 -重庆卫视,http://23.237.228.134/live6/chongqing.m3u8$LR•IPV4•16『线路8』 -重庆卫视,http://43.251.226.89:8080/play/55.m3u8$LR•IPV4•16『线路9』 -重庆卫视,http://gfr.x3322.net:9901/tsfile/live/1093_1.m3u8$LR•IPV4•16『线路10』 -重庆卫视,http://api.kkitv.itv888.cn:8080/hls/ogh3s6tbw6/index.m3u8$LR•IPV4•16『线路11』 -重庆卫视,https://iptv.catvod.com/catvod.php?id=cqws$LR•IPV4•16『线路12』 -重庆卫视,https://httop.top/ysp-重庆卫视$LR•IPV4•16『线路13』 -重庆卫视,http://iptv.huuc.edu.cn/hls/cqhd.m3u8$LR•IPV4•16『线路14』 -重庆卫视,http://153.0.171.163:9901/tsfile/live/0142_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•16『线路15』 -重庆卫视,http://118.81.195.79:9003/hls/22/index.m3u8$LR•IPV4•16『线路16』 +重庆卫视,http://live2.plus.jinhua.com.cn/dsnc/playlist.m3u8$LR•IPV4•16『线路7』 +重庆卫视,http://118.81.195.79:9003/hls/22/index.m3u8$LR•IPV4•16『线路8』 +重庆卫视,http://23.237.228.134/live6/chongqing.m3u8$LR•IPV4•16『线路9』 +重庆卫视,http://43.251.226.89:8080/play/55.m3u8$LR•IPV4•16『线路10』 +重庆卫视,http://gfr.x3322.net:9901/tsfile/live/1093_1.m3u8$LR•IPV4•16『线路11』 +重庆卫视,http://api.kkitv.itv888.cn:8080/hls/ogh3s6tbw6/index.m3u8$LR•IPV4•16『线路12』 +重庆卫视,https://iptv.catvod.com/catvod.php?id=cqws$LR•IPV4•16『线路13』 +重庆卫视,https://httop.top/ysp-重庆卫视$LR•IPV4•16『线路14』 +重庆卫视,http://iptv.huuc.edu.cn/hls/cqhd.m3u8$LR•IPV4•16『线路15』 +重庆卫视,http://153.0.171.163:9901/tsfile/live/0142_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•16『线路16』 四川卫视,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•15『线路1』 四川卫视,http://204.12.221.218:8181/3m1080p/scws.m3u8$LR•IPV4•15『线路2』 四川卫视,http://63.141.230.178:82/gslb/zbdq5.m3u8?id=scwshd$LR•IPV4•15『线路3』 @@ -416,30 +417,30 @@ CGTN阿语,https://0472.org/hls/cgtna.m3u8$LR•IPV4 四川卫视,http://153.0.171.163:9901/tsfile/live/0123_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•15『线路7』 四川卫视,http://153.0.171.163:85/tsfile/live/0123_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•15『线路8』 四川卫视,http://112.27.235.94:8000/hls/35/index.m3u8$LR•IPV4•15『线路9』 -四川卫视,http://38.75.136.137:98/gslb/dsdqpub/scwshd.m3u8?auth=testpub$LR•IPV4•15『线路10』 -四川卫视,http://api.kkitv.itv888.cn:8080/hls/p2npnppn96p/index.m3u8$LR•IPV4•15『线路11』 -四川卫视,https://iptv.catvod.com/catvod.php?id=scws$LR•IPV4•15『线路12』 -四川卫视,https://httop.top/ysp-四川卫视$LR•IPV4•15『线路13』 -四川卫视,http://iptv.huuc.edu.cn/hls/schd.m3u8$LR•IPV4•15『线路14』 -四川卫视,http://39.134.115.163:8080/PLTV/88888910/224/3221225733/index.m3u8$LR•IPV4•15『线路15』 -东南卫视,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•18『线路1』 -东南卫视,http://live.zohi.tv/video/s10001-fztv-3/index.m3u8$LR•IPV4•18『线路2』 -东南卫视,http://198.204.228.26/live/dnwshd.m3u8$LR•IPV4•18『线路3』 -东南卫视,http://204.12.221.218:8181/3m1080p/dnws.m3u8$LR•IPV4•18『线路4』 -东南卫视,http://112.123.243.37:50085/tsfile/live/0113_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•18『线路5』 -东南卫视,http://112.27.235.94:8000/hls/38/index.m3u8$LR•IPV4•18『线路6』 -东南卫视,http://38.75.136.137:98/gslb/dsdqpub/dnwshd.m3u8?auth=testpub$LR•IPV4•18『线路7』 -东南卫视,https://hlsbkmgsplive.miguvideo.com/migu/kailu/dongnanws/51/20230724/01.m3u8?&HlsSubType=&encrypt=$LR•IPV4•18『线路8』 -东南卫视,http://23.237.228.134/live6/dongnan.m3u8$LR•IPV4•18『线路9』 -东南卫视,http://23.237.228.134/live8/gansu.m3u8$LR•IPV4•18『线路10』 -东南卫视,http://43.251.226.89:8080/play/49.m3u8$LR•IPV4•18『线路11』 -东南卫视,http://gfr.x3322.net:9901/tsfile/live/1099_1.m3u8$LR•IPV4•18『线路12』 -东南卫视,http://api.kkitv.itv888.cn:8080/hls/jjt15bvbl7a/index.m3u8$LR•IPV4•18『线路13』 -东南卫视,https://iptv.catvod.com/catvod.php?id=dnws$LR•IPV4•18『线路14』 -东南卫视,https://httop.top/ysp-东南卫视$LR•IPV4•18『线路15』 -东南卫视,http://iptv.huuc.edu.cn/hls/dnhd.m3u8$LR•IPV4•18『线路16』 -东南卫视,http://153.0.171.163:9901/tsfile/live/0137_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•18『线路17』 -东南卫视,http://118.81.195.79:9003/hls/24/index.m3u8$LR•IPV4•18『线路18』 +四川卫视,http://39.134.115.163:8080/PLTV/88888910/224/3221225733/index.m3u8$LR•IPV4•15『线路10』 +四川卫视,http://38.75.136.137:98/gslb/dsdqpub/scwshd.m3u8?auth=testpub$LR•IPV4•15『线路11』 +四川卫视,http://api.kkitv.itv888.cn:8080/hls/p2npnppn96p/index.m3u8$LR•IPV4•15『线路12』 +四川卫视,https://iptv.catvod.com/catvod.php?id=scws$LR•IPV4•15『线路13』 +四川卫视,https://httop.top/ysp-四川卫视$LR•IPV4•15『线路14』 +四川卫视,http://iptv.huuc.edu.cn/hls/schd.m3u8$LR•IPV4•15『线路15』 +东南卫视,http://t.061899.xyz/tl/tl.php?id=dnws$LR•IPV4•18『线路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•18『线路2』 +东南卫视,http://live.zohi.tv/video/s10001-fztv-3/index.m3u8$LR•IPV4•18『线路3』 +东南卫视,http://198.204.228.26/live/dnwshd.m3u8$LR•IPV4•18『线路4』 +东南卫视,http://204.12.221.218:8181/3m1080p/dnws.m3u8$LR•IPV4•18『线路5』 +东南卫视,http://112.123.243.37:50085/tsfile/live/0113_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•18『线路6』 +东南卫视,http://118.81.195.79:9003/hls/24/index.m3u8$LR•IPV4•18『线路7』 +东南卫视,http://38.75.136.137:98/gslb/dsdqpub/dnwshd.m3u8?auth=testpub$LR•IPV4•18『线路8』 +东南卫视,https://hlsbkmgsplive.miguvideo.com/migu/kailu/dongnanws/51/20230724/01.m3u8?&HlsSubType=&encrypt=$LR•IPV4•18『线路9』 +东南卫视,http://23.237.228.134/live6/dongnan.m3u8$LR•IPV4•18『线路10』 +东南卫视,http://23.237.228.134/live8/gansu.m3u8$LR•IPV4•18『线路11』 +东南卫视,http://43.251.226.89:8080/play/49.m3u8$LR•IPV4•18『线路12』 +东南卫视,http://gfr.x3322.net:9901/tsfile/live/1099_1.m3u8$LR•IPV4•18『线路13』 +东南卫视,http://api.kkitv.itv888.cn:8080/hls/jjt15bvbl7a/index.m3u8$LR•IPV4•18『线路14』 +东南卫视,https://iptv.catvod.com/catvod.php?id=dnws$LR•IPV4•18『线路15』 +东南卫视,https://httop.top/ysp-东南卫视$LR•IPV4•18『线路16』 +东南卫视,http://iptv.huuc.edu.cn/hls/dnhd.m3u8$LR•IPV4•18『线路17』 +东南卫视,http://153.0.171.163:9901/tsfile/live/0137_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•18『线路18』 深圳卫视,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226959/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7EGrVNEZREjuNVKiTJo2mtwg%7EtP4-l0lmSfjwLWEfK_el1vH_mv-s1zo4AQJwdedaVwG9xkuFTDg8J26cwOrNJzn20BErrHdLhuZ9EzLUCD3PMW-OMx4MGteHV2vLeW6BqoY%2CEND$LR•IPV6•17『线路1』 深圳卫视,http://120.198.95.220:9901/tsfile/live/1048_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•17『线路2』 深圳卫视,http://120.198.95.220:9901/tsfile/live/1048_1.m3u8?key=txiptv$LR•IPV4•17『线路3』 @@ -457,65 +458,66 @@ CGTN阿语,https://0472.org/hls/cgtna.m3u8$LR•IPV4 深圳卫视,http://iptv.huuc.edu.cn/hls/szhd.m3u8$LR•IPV4•17『线路15』 深圳卫视,http://153.0.171.163:9901/tsfile/live/0126_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•17『线路16』 深圳卫视,http://38.64.72.148:80/hls/modn/list/4007/playlist.m3u8$LR•IPV4•17『线路17』 -广东卫视,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•12『线路1』 -广东卫视,http://112.27.235.94:8000/hls/30/index.m3u8$LR•IPV4•12『线路2』 -广东卫视,http://38.75.136.137:98/gslb/dsdqpub/gdwshd.m3u8?auth=testpub$LR•IPV4•12『线路3』 -广东卫视,http://23.237.228.134/live6/guangdong.m3u8$LR•IPV4•12『线路4』 -广东卫视,http://43.251.226.89:8080/play/38.m3u8$LR•IPV4•12『线路5』 -广东卫视,http://gfr.x3322.net:9901/tsfile/live/1096_1.m3u8$LR•IPV4•12『线路6』 -广东卫视,http://api.kkitv.itv888.cn:8080/hls/qr6872071g/index.m3u8$LR•IPV4•12『线路7』 -广东卫视,https://iptv.catvod.com/catvod.php?id=gdws$LR•IPV4•12『线路8』 -广东卫视,https://httop.top/ysp-广东卫视$LR•IPV4•12『线路9』 -广东卫视,http://iptv.huuc.edu.cn/hls/gdhd.m3u8$LR•IPV4•12『线路10』 -广东卫视,http://mg.hmysapp.cn:177/ckmg/zb.php?id=gdws$LR•IPV4•12『线路11』 -广东卫视,http://118.81.195.79:9003/hls/26/index.m3u8$LR•IPV4•12『线路12』 -广西卫视,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•16『线路1』 -广西卫视,http://113.15.109.216:59901/tsfile/live/0113_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•16『线路2』 -广西卫视,https://gd202.tv1288.xyz/tsfile/live/1028_1.m3u8$LR•IPV4•16『线路3』 -广西卫视,http://112.123.243.37:50085/tsfile/live/0137_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•16『线路4』 -广西卫视,http://101.66.194.63:9901/tsfile/live/0113_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•16『线路5』 -广西卫视,http://101.66.194.82:9901/tsfile/live/0113_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•16『线路6』 -广西卫视,http://36.136.38.87:9901/tsfile/live/0113_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•16『线路7』 -广西卫视,https://hlscdn.liangtv.cn/live/de0f97348eb84f62aa6b7d8cf0430770/dd505d87880c478f901f38560ca4d4e6.m3u8$LR•IPV4•16『线路8』 -广西卫视,http://38.75.136.137:98/gslb/dsdqpub/gxwshd.m3u8?auth=testpub$LR•IPV4•16『线路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•16『线路10』 -广西卫视,http://23.237.228.134/live6/guangxi.m3u8$LR•IPV4•16『线路11』 -广西卫视,http://23.237.228.134/live6/guizhou.m3u8$LR•IPV4•16『线路12』 -广西卫视,http://api.kkitv.itv888.cn:8080/hls/yvz4ndj9dqb/index.m3u8$LR•IPV4•16『线路13』 -广西卫视,https://iptv.catvod.com/catvod.php?id=gxws$LR•IPV4•16『线路14』 -广西卫视,https://httop.top/ysp-广西卫视$LR•IPV4•16『线路15』 -广西卫视,http://118.81.195.79:9003/hls/27/index.m3u8$LR•IPV4•16『线路16』 +广东卫视,http://t.061899.xyz/tl/tl.php?id=gdws$LR•IPV4•12『线路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•12『线路2』 +广东卫视,http://118.81.195.79:9003/hls/26/index.m3u8$LR•IPV4•12『线路3』 +广东卫视,http://38.75.136.137:98/gslb/dsdqpub/gdwshd.m3u8?auth=testpub$LR•IPV4•12『线路4』 +广东卫视,http://23.237.228.134/live6/guangdong.m3u8$LR•IPV4•12『线路5』 +广东卫视,http://43.251.226.89:8080/play/38.m3u8$LR•IPV4•12『线路6』 +广东卫视,http://gfr.x3322.net:9901/tsfile/live/1096_1.m3u8$LR•IPV4•12『线路7』 +广东卫视,http://api.kkitv.itv888.cn:8080/hls/qr6872071g/index.m3u8$LR•IPV4•12『线路8』 +广东卫视,https://iptv.catvod.com/catvod.php?id=gdws$LR•IPV4•12『线路9』 +广东卫视,https://httop.top/ysp-广东卫视$LR•IPV4•12『线路10』 +广东卫视,http://iptv.huuc.edu.cn/hls/gdhd.m3u8$LR•IPV4•12『线路11』 +广东卫视,http://mg.hmysapp.cn:177/ckmg/zb.php?id=gdws$LR•IPV4•12『线路12』 +广西卫视,http://t.061899.xyz/tl/tl.php?id=gxws$LR•IPV4•16『线路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•16『线路2』 +广西卫视,http://113.15.109.216:59901/tsfile/live/0113_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•16『线路3』 +广西卫视,https://gd202.tv1288.xyz/tsfile/live/1028_1.m3u8$LR•IPV4•16『线路4』 +广西卫视,http://112.123.243.37:50085/tsfile/live/0137_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•16『线路5』 +广西卫视,http://101.66.194.63:9901/tsfile/live/0113_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•16『线路6』 +广西卫视,http://101.66.194.82:9901/tsfile/live/0113_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•16『线路7』 +广西卫视,http://36.136.38.87:9901/tsfile/live/0113_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•16『线路8』 +广西卫视,http://118.81.195.79:9003/hls/27/index.m3u8$LR•IPV4•16『线路9』 +广西卫视,http://38.75.136.137:98/gslb/dsdqpub/gxwshd.m3u8?auth=testpub$LR•IPV4•16『线路10』 +广西卫视,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•16『线路11』 +广西卫视,http://23.237.228.134/live6/guangxi.m3u8$LR•IPV4•16『线路12』 +广西卫视,http://23.237.228.134/live6/guizhou.m3u8$LR•IPV4•16『线路13』 +广西卫视,http://api.kkitv.itv888.cn:8080/hls/yvz4ndj9dqb/index.m3u8$LR•IPV4•16『线路14』 +广西卫视,https://iptv.catvod.com/catvod.php?id=gxws$LR•IPV4•16『线路15』 +广西卫视,https://httop.top/ysp-广西卫视$LR•IPV4•16『线路16』 厦门卫视,http://183.11.239.36:808/hls/17/index.m3u8$LR•IPV4•4『线路1』 -厦门卫视,https://iptv.catvod.com/catvod.php?id=xmws$LR•IPV4•4『线路2』 -厦门卫视,http://223.110.245.159/ott.js.chinamobile.com/PLTV/3/224/3221226996/index.m3u8$LR•IPV4•4『线路3』 -厦门卫视,http://112.25.48.68/live/program/live/xmws/1300000/mnf.m3u8$LR•IPV4•4『线路4』 -甘肃卫视,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•5『线路1』 -甘肃卫视,http://112.123.243.37:50085/tsfile/live/0123_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•5『线路2』 -甘肃卫视,https://iptv.catvod.com/catvod.php?id=gsws$LR•IPV4•5『线路3』 -甘肃卫视,https://httop.top/ysp-甘肃卫视$LR•IPV4•5『线路4』 -甘肃卫视,http://118.81.195.79:9003/hls/25/index.m3u8$LR•IPV4•5『线路5』 -贵州卫视,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•16『线路1』 -贵州卫视,http://112.123.243.37:50085/tsfile/live/0130_2.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•16『线路2』 -贵州卫视,http://120.198.95.220:9901/tsfile/live/1052_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•16『线路3』 -贵州卫视,http://222.214.208.34:59901/tsfile/live/0120_1.m3u8$LR•IPV4•16『线路4』 -贵州卫视,http://198.204.228.26/live/gzwshd.m3u8$LR•IPV4•16『线路5』 -贵州卫视,http://36.136.38.87:9901/tsfile/live/0120_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•16『线路6』 -贵州卫视,http://112.27.235.94:8000/hls/46/index.m3u8$LR•IPV4•16『线路7』 -贵州卫视,http://38.75.136.137:98/gslb/dsdqpub/gzwshd.m3u8?auth=testpub$LR•IPV4•16『线路8』 -贵州卫视,http://23.237.228.134/live6/hainan.m3u8$LR•IPV4•16『线路9』 -贵州卫视,http://gfr.x3322.net:9901/tsfile/live/1100_1.m3u8$LR•IPV4•16『线路10』 -贵州卫视,http://api.kkitv.itv888.cn:8080/hls/5dqtpf3arun/index.m3u8$LR•IPV4•16『线路11』 -贵州卫视,https://iptv.catvod.com/catvod.php?id=gzws$LR•IPV4•16『线路12』 -贵州卫视,https://httop.top/ysp-贵州卫视$LR•IPV4•16『线路13』 -贵州卫视,http://153.0.171.163:9901/tsfile/live/0120_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•16『线路14』 -贵州卫视,http://183.207.248.71/gitv/live1/G_GUIZHOU/G_GUIZHOU$LR•IPV4•16『线路15』 -贵州卫视,http://39.134.115.163:8080/PLTV/88888910/224/3221225728/index.m3u8$LR•IPV4•16『线路16』 +厦门卫视,http://223.110.245.159/ott.js.chinamobile.com/PLTV/3/224/3221226996/index.m3u8$LR•IPV4•4『线路2』 +厦门卫视,http://112.25.48.68/live/program/live/xmws/1300000/mnf.m3u8$LR•IPV4•4『线路3』 +厦门卫视,https://iptv.catvod.com/catvod.php?id=xmws$LR•IPV4•4『线路4』 +甘肃卫视,http://t.061899.xyz/tl/tl.php?id=gsws$LR•IPV4•6『线路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•6『线路2』 +甘肃卫视,http://112.123.243.37:50085/tsfile/live/0123_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•6『线路3』 +甘肃卫视,http://118.81.195.79:9003/hls/25/index.m3u8$LR•IPV4•6『线路4』 +甘肃卫视,https://iptv.catvod.com/catvod.php?id=gsws$LR•IPV4•6『线路5』 +甘肃卫视,https://httop.top/ysp-甘肃卫视$LR•IPV4•6『线路6』 +贵州卫视,http://t.061899.xyz/tl/tl.php?id=gzws$LR•IPV4•16『线路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•16『线路2』 +贵州卫视,http://112.123.243.37:50085/tsfile/live/0130_2.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•16『线路3』 +贵州卫视,http://120.198.95.220:9901/tsfile/live/1052_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•16『线路4』 +贵州卫视,http://222.214.208.34:59901/tsfile/live/0120_1.m3u8$LR•IPV4•16『线路5』 +贵州卫视,http://198.204.228.26/live/gzwshd.m3u8$LR•IPV4•16『线路6』 +贵州卫视,http://36.136.38.87:9901/tsfile/live/0120_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•16『线路7』 +贵州卫视,http://183.207.248.71/gitv/live1/G_GUIZHOU/G_GUIZHOU$LR•IPV4•16『线路8』 +贵州卫视,http://39.134.115.163:8080/PLTV/88888910/224/3221225728/index.m3u8$LR•IPV4•16『线路9』 +贵州卫视,http://38.75.136.137:98/gslb/dsdqpub/gzwshd.m3u8?auth=testpub$LR•IPV4•16『线路10』 +贵州卫视,http://23.237.228.134/live6/hainan.m3u8$LR•IPV4•16『线路11』 +贵州卫视,http://gfr.x3322.net:9901/tsfile/live/1100_1.m3u8$LR•IPV4•16『线路12』 +贵州卫视,http://api.kkitv.itv888.cn:8080/hls/5dqtpf3arun/index.m3u8$LR•IPV4•16『线路13』 +贵州卫视,https://iptv.catvod.com/catvod.php?id=gzws$LR•IPV4•16『线路14』 +贵州卫视,https://httop.top/ysp-贵州卫视$LR•IPV4•16『线路15』 +贵州卫视,http://153.0.171.163:9901/tsfile/live/0120_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•16『线路16』 河北卫视,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•13『线路1』 河北卫视,http://101.66.194.63:9901/tsfile/live/0117_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•13『线路2』 河北卫视,http://101.66.199.247:9901/tsfile/live/0117_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•13『线路3』 河北卫视,http://204.12.221.218:8181/3m1080p/hews.m3u8$LR•IPV4•13『线路4』 河北卫视,http://event.pull.hebtv.com/jishi/weishi_tingyun.m3u8$LR•IPV4•13『线路5』 -河北卫视,http://120.76.248.139/live/bfgd/4200000108.m3u8$LR•IPV4•13『线路6』 +河北卫视,http://112.27.235.94:8000/hls/39/index.m3u8$LR•IPV4•13『线路6』 河北卫视,http://23.237.228.134/live8/hebei.m3u8$LR•IPV4•13『线路7』 河北卫视,http://43.251.226.89:8080/play/42.m3u8$LR•IPV4•13『线路8』 河北卫视,http://gfr.x3322.net:9901/tsfile/live/1091_1.m3u8$LR•IPV4•13『线路9』 @@ -523,211 +525,212 @@ CGTN阿语,https://0472.org/hls/cgtna.m3u8$LR•IPV4 河北卫视,https://httop.top/ysp-河北卫视$LR•IPV4•13『线路11』 河北卫视,http://iptv.huuc.edu.cn/hls/hebhd.m3u8$LR•IPV4•13『线路12』 河北卫视,http://153.0.171.163:9901/tsfile/live/0117_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•13『线路13』 -河南卫视,http://tvcdn.stream3.hndt.com/tv/65bd329b017e1000648cd2ed00000000_transios/playlist.m3u8?wsSecret=ca9a9194ec9a95ed2539e69d07b645d5&wsTime=1784134111$LR•IPV4•12『线路1』 +河南卫视,http://t.061899.xyz/tl/tl.php?id=hnws$LR•IPV4•12『线路1』 河南卫视,http://101.66.195.138:9901/tsfile/live/0139_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•12『线路2』 河南卫视,http://38.75.136.137:98/gslb/dsdqpub/hawshd.m3u8?auth=testpub$LR•IPV4•12『线路3』 河南卫视,http://63.141.230.178:82/gslb/zbdq5.m3u8?id=hawshd$LR•IPV4•12『线路4』 河南卫视,http://221.226.51.220:50081/newlive/live/hls/37/live.m3u8$LR•IPV4•12『线路5』 河南卫视,http://153.0.171.163:9901/tsfile/live/0139_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•12『线路6』 -河南卫视,http://112.27.235.94:8000/hls/37/index.m3u8$LR•IPV4•12『线路7』 -河南卫视,http://23.237.228.134/live6/henan.m3u8$LR•IPV4•12『线路8』 -河南卫视,http://43.251.226.89:8080/play/44.m3u8$LR•IPV4•12『线路9』 -河南卫视,https://iptv.catvod.com/catvod.php?id=hnws$LR•IPV4•12『线路10』 -河南卫视,https://httop.top/ysp-河南卫视$LR•IPV4•12『线路11』 -河南卫视,http://118.81.195.79:9003/hls/30/index.m3u8$LR•IPV4•12『线路12』 +河南卫视,http://tvcdn.stream3.hndt.com/tv/65bd329b017e1000648cd2ed00000000_transios/playlist.m3u8?wsSecret=ca9a9194ec9a95ed2539e69d07b645d5&wsTime=1784134111$LR•IPV4•12『线路7』 +河南卫视,http://118.81.195.79:9003/hls/30/index.m3u8$LR•IPV4•12『线路8』 +河南卫视,http://23.237.228.134/live6/henan.m3u8$LR•IPV4•12『线路9』 +河南卫视,http://43.251.226.89:8080/play/44.m3u8$LR•IPV4•12『线路10』 +河南卫视,https://iptv.catvod.com/catvod.php?id=hnws$LR•IPV4•12『线路11』 +河南卫视,https://httop.top/ysp-河南卫视$LR•IPV4•12『线路12』 黑龙江卫视,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226965/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7E7UiKL56-L86ihmTWaZ6csw%7EtP4-l0lmSfjwLWEfK_el1vH_mv-s1zo4AQJwdedaVwG9xkuFTDg8J26cwOrNJzn20BErrHdLhuZ9EzLUCD3PMW-OMx4MGteHV2vLeW6BqoY%2CEND$LR•IPV6•12『线路1』 黑龙江卫视,http://101.66.199.247:9901/tsfile/live/0143_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•12『线路2』 黑龙江卫视,http://38.75.136.137:98/gslb/dsdqpub/hljwshd.m3u8?auth=testpub$LR•IPV4•12『线路3』 黑龙江卫视,http://198.204.228.26/live/hljwshd.m3u8$LR•IPV4•12『线路4』 黑龙江卫视,http://112.27.235.94:8000/hls/48/index.m3u8$LR•IPV4•12『线路5』 -黑龙江卫视,http://23.237.228.134/live6/heilongjiang.m3u8$LR•IPV4•12『线路6』 -黑龙江卫视,http://gfr.x3322.net:9901/tsfile/live/1094_1.m3u8$LR•IPV4•12『线路7』 -黑龙江卫视,http://api.kkitv.itv888.cn:8080/hls/2a24lcvser/index.m3u8$LR•IPV4•12『线路8』 -黑龙江卫视,https://iptv.catvod.com/catvod.php?id=hljws$LR•IPV4•12『线路9』 -黑龙江卫视,https://httop.top/ysp-黑龙江卫视$LR•IPV4•12『线路10』 -黑龙江卫视,http://iptv.huuc.edu.cn/hls/hljhd.m3u8$LR•IPV4•12『线路11』 -黑龙江卫视,http://118.81.195.79:9003/hls/31/index.m3u8$LR•IPV4•12『线路12』 -湖北卫视,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226952/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7EREB40lnZnCEwjRy7LZuhIQ%7EtP4-l0lmSfjwLWEfK_el1vH_mv-s1zo4AQJwdedaVwG9xkuFTDg8J26cwOrNJzn20BErrHdLhuZ9EzLUCD3PMW-OMx4MGteHV2vLeW6BqoY%2CEND$LR•IPV6•14『线路1』 -湖北卫视,http://112.27.235.94:8000/hls/41/index.m3u8$LR•IPV4•14『线路2』 -湖北卫视,http://38.75.136.137:98/gslb/dsdqpub/hbwshd.m3u8?auth=testpub$LR•IPV4•14『线路3』 -湖北卫视,http://23.237.228.134/live6/hubei.m3u8$LR•IPV4•14『线路4』 -湖北卫视,http://43.251.226.89:8080/play/46.m3u8$LR•IPV4•14『线路5』 -湖北卫视,http://gfr.x3322.net:9901/tsfile/live/1088_1.m3u8$LR•IPV4•14『线路6』 -湖北卫视,http://api.kkitv.itv888.cn:8080/hls/qwummpaoaq/index.m3u8$LR•IPV4•14『线路7』 -湖北卫视,https://iptv.catvod.com/catvod.php?id=hubws$LR•IPV4•14『线路8』 -湖北卫视,https://httop.top/ysp-湖北卫视$LR•IPV4•14『线路9』 -湖北卫视,http://iptv.huuc.edu.cn/hls/hbhd.m3u8$LR•IPV4•14『线路10』 -湖北卫视,http://mg.hmysapp.cn:177/ckmg/zb.php?id=hubws$LR•IPV4•14『线路11』 -湖北卫视,http://153.0.171.163:9901/tsfile/live/0132_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•14『线路12』 -湖北卫视,http://www.745612.xyz:7788/rtp/235.254.198.72:1564$LR•IPV4•14『线路13』 -湖北卫视,http://118.81.195.79:9003/hls/32/index.m3u8$LR•IPV4•14『线路14』 -江西卫视,https://jsp-tv-live.jxtvcn.com.cn/live-jsp/tv_jxtv6.m3u8?t=1784004704&token=67a59c29-de6e-4407-90c8-39f7e099b3db&d=0a7a8c487c454bc7bb02a60298283c5e$LR•IPV4•16『线路1』 -江西卫视,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226956/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7Ei6ZIpVizXlewg-YfGvH8dA%7EtP4-l0lmSfjwLWEfK_el1vH_mv-s1zo4AQJwdedaVwG9xkuFTDg8J26cwOrNJzn20BErrHdLhuZ9EzLUCD3PMW-OMx4MGteHV2vLeW6BqoY%2CEND$LR•IPV6•16『线路2』 -江西卫视,http://101.66.199.247:9901/tsfile/live/0138_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•16『线路3』 -江西卫视,http://112.123.243.37:50085/tsfile/live/0132_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•16『线路4』 -江西卫视,http://124.228.160.210:9901/tsfile/live/0138_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•16『线路5』 -江西卫视,http://153.0.171.163:9901/tsfile/live/0138_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•16『线路6』 -江西卫视,http://112.27.235.94:8000/hls/44/index.m3u8$LR•IPV4•16『线路7』 -江西卫视,http://38.75.136.137:98/gslb/dsdqpub/jxwshd.m3u8?auth=testpub$LR•IPV4•16『线路8』 -江西卫视,http://23.237.228.134/live8/jiangxi.m3u8$LR•IPV4•16『线路9』 -江西卫视,http://43.251.226.89:8080/play/43.m3u8$LR•IPV4•16『线路10』 -江西卫视,http://api.kkitv.itv888.cn:8080/hls/pv0np60bpin/index.m3u8$LR•IPV4•16『线路11』 -江西卫视,https://iptv.catvod.com/catvod.php?id=jxws$LR•IPV4•16『线路12』 -江西卫视,https://httop.top/ysp-江西卫视$LR•IPV4•16『线路13』 -江西卫视,http://iptv.huuc.edu.cn/hls/jxhd.m3u8$LR•IPV4•16『线路14』 -江西卫视,http://mg.hmysapp.cn:177/ckmg/zb.php?id=jxws$LR•IPV4•16『线路15』 -江西卫视,http://39.134.115.163:8080/PLTV/88888910/224/3221225705/index.m3u8$LR•IPV4•16『线路16』 -吉林卫视,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•17『线路1』 -吉林卫视,http://204.12.221.218:8181/3m1080p/jlws.m3u8$LR•IPV4•17『线路2』 -吉林卫视,http://38.75.136.137:98/gslb/dsdqpub/jlwshd.m3u8?auth=testpub$LR•IPV4•17『线路3』 -吉林卫视,http://112.123.243.37:50085/tsfile/live/0116_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•17『线路4』 -吉林卫视,http://101.66.199.247:9901/tsfile/live/0116_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•17『线路5』 -吉林卫视,http://101.66.194.82:9901/tsfile/live/0116_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•17『线路6』 -吉林卫视,http://36.136.38.87:9901/tsfile/live/0116_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•17『线路7』 -吉林卫视,http://101.66.194.63:9901/tsfile/live/0116_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•17『线路8』 -吉林卫视,http://101.66.195.138:9901/tsfile/live/0116_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•17『线路9』 -吉林卫视,http://153.0.171.163:9901/tsfile/live/0116_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•17『线路10』 -吉林卫视,http://123.130.84.106:8154/tsfile/live/0116_1.m3u8$LR•IPV4•17『线路11』 -吉林卫视,http://23.237.228.134/live8/jilin.m3u8$LR•IPV4•17『线路12』 -吉林卫视,http://43.251.226.89:8080/play/47.m3u8$LR•IPV4•17『线路13』 -吉林卫视,http://api.kkitv.itv888.cn:8080/hls/b6dl8yuvu/index.m3u$LR•IPV4•17『线路14』 -吉林卫视,https://iptv.catvod.com/catvod.php?id=jlws$LR•IPV4•17『线路15』 -吉林卫视,https://httop.top/ysp-吉林卫视$LR•IPV4•17『线路16』 -吉林卫视,http://118.81.195.79:9003/hls/34/index.m3u8$LR•IPV4•17『线路17』 -内蒙古卫视,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•14『线路1』 -内蒙古卫视,http://198.204.228.26/live/nmgws.m3u8$LR•IPV4•14『线路2』 -内蒙古卫视,http://192.151.150.154/live/nmgws.m3u8$LR•IPV4•14『线路3』 -内蒙古卫视,http://112.123.243.37:50085/tsfile/live/0118_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•14『线路4』 -内蒙古卫视,http://59.39.89.130:60901/tsfile/live/0125_21.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•14『线路5』 -内蒙古卫视,http://153.0.171.163:9901/tsfile/live/0109_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•14『线路6』 -内蒙古卫视,http://112.27.235.94:8000/hls/49/index.m3u8$LR•IPV4•14『线路7』 -内蒙古卫视,http://23.237.228.134/live8/neimenggu.m3u8$LR•IPV4•14『线路8』 -内蒙古卫视,https://iptv.catvod.com/catvod.php?id=nmws$LR•IPV4•14『线路9』 -内蒙古卫视,https://httop.top/ysp-内蒙古卫视$LR•IPV4•14『线路10』 -内蒙古卫视,http://39.134.115.163:8080/PLTV/88888910/224/3221225667/index.m3u8$LR•IPV4•14『线路11』 -内蒙古卫视,http://117.169.120.140:8080/live/neimenggustv/.m3u8$LR•IPV4•14『线路12』 -内蒙古卫视,http://183.207.248.71/gitv/live1/G_NEIMENGGU/G_NEIMENGGU$LR•IPV4•14『线路13』 -内蒙古卫视,http://223.110.245.173/PLTV/4/224/3221225836/index.m3u8$LR•IPV4•14『线路14』 -辽宁卫视,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•16『线路1』 -辽宁卫视,http://101.66.195.138:9901/tsfile/live/0121_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•16『线路2』 -辽宁卫视,http://107.150.60.122/live/lnwshd.m3u8$LR•IPV4•16『线路3』 -辽宁卫视,http://204.12.221.218:8181/3m1080p/lnws.m3u8$LR•IPV4•16『线路4』 -辽宁卫视,http://153.0.171.163:9901/tsfile/live/0121_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•16『线路5』 -辽宁卫视,http://112.27.235.94:8000/hls/47/index.m3u8$LR•IPV4•16『线路6』 -辽宁卫视,http://38.75.136.137:98/gslb/dsdqpub/lnwshd.m3u8?auth=testpub$LR•IPV4•16『线路7』 -辽宁卫视,https://hlsbkmgsplive.miguvideo.com/migu/kailu/lnwshd265/54/20200407/01.m3u8?&HlsSubType=&encrypt=$LR•IPV4•16『线路8』 -辽宁卫视,http://23.237.228.134/live8/liaoning.m3u8$LR•IPV4•16『线路9』 -辽宁卫视,http://43.251.226.89:8080/play/41.m3u8$LR•IPV4•16『线路10』 -辽宁卫视,http://gfr.x3322.net:9901/tsfile/live/1097_1.m3u8$LR•IPV4•16『线路11』 -辽宁卫视,http://api.kkitv.itv888.cn:8080/hls/iibq0absdjr/index.m3u8$LR•IPV4•16『线路12』 -辽宁卫视,https://iptv.catvod.com/catvod.php?id=lnws$LR•IPV4•16『线路13』 -辽宁卫视,https://httop.top/ysp-辽宁卫视$LR•IPV4•16『线路14』 -辽宁卫视,http://iptv.huuc.edu.cn/hls/lnhd.m3u8$LR•IPV4•16『线路15』 -辽宁卫视,http://39.134.39.37/PLTV/88888888/224/3221226209/index.m3u8$LR•IPV4•16『线路16』 -宁夏卫视,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•10『线路1』 -宁夏卫视,http://107.150.60.122/live/nxws.m3u8$LR•IPV4•10『线路2』 -宁夏卫视,http://198.204.228.26/live/nxws.m3u8$LR•IPV4•10『线路3』 -宁夏卫视,http://112.123.243.37:50085/tsfile/live/0125_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•10『线路4』 -宁夏卫视,http://153.0.171.163:9901/tsfile/live/0112_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•10『线路5』 -宁夏卫视,http://120.76.248.139/live/bfgd/4200000118.m3u8$LR•IPV4•10『线路6』 -宁夏卫视,http://43.251.226.89:8080/play/54.m3u8$LR•IPV4•10『线路7』 -宁夏卫视,https://iptv.catvod.com/catvod.php?id=nxws$LR•IPV4•10『线路8』 -宁夏卫视,https://httop.top/ysp-宁夏卫视$LR•IPV4•10『线路9』 -宁夏卫视,http://39.134.115.163:8080/PLTV/88888910/224/3221225726/index.m3u8$LR•IPV4•10『线路10』 -青海卫视,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221227017/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7EacviHy_ucMT27Ymf2iLtZA%7EtP4-l0lmSfjwLWEfK_el1vH_mv-s1zo4AQJwdedaVwG9xkuFTDg8J26cwOrNJzn20BErrHdLhuZ9EzLUCD3PMW-OMx4MGteHV2vLeW6BqoY%2CEND$LR•IPV6•10『线路1』 -青海卫视,http://63.141.230.178:82/gslb/zbdq5.m3u8?id=qhws$LR•IPV4•10『线路2』 -青海卫视,http://107.150.60.122/live/qhws.m3u8$LR•IPV4•10『线路3』 -青海卫视,http://153.0.171.163:9901/tsfile/live/0140_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•10『线路4』 -青海卫视,http://123.130.84.106:8154/tsfile/live/0140_1.m3u8$LR•IPV4•10『线路5』 -青海卫视,http://23.237.228.134/live8/qinghai.m3u8$LR•IPV4•10『线路6』 -青海卫视,http://43.251.226.89:8080/play/48.m3u8$LR•IPV4•10『线路7』 -青海卫视,https://iptv.catvod.com/catvod.php?id=qhws$LR•IPV4•10『线路8』 -青海卫视,https://httop.top/ysp-青海卫视$LR•IPV4•10『线路9』 -青海卫视,http://live.geermurmt.com/qhws/sd/live.m3u8$LR•IPV4•10『线路10』 -山东卫视,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226957/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7EjW26v5VaHGy1jQuIA-4EbA%7EtP4-l0lmSfjwLWEfK_el1vH_mv-s1zo4AQJwdedaVwG9xkuFTDg8J26cwOrNJzn20BErrHdLhuZ9EzLUCD3PMW-OMx4MGteHV2vLeW6BqoY%2CEND$LR•IPV6•17『线路1』 -山东卫视,http://207.56.13.146:81/cdnlive/sdws.m3u8$LR•IPV4•17『线路2』 -山东卫视,http://63.141.230.178:82/gslb/zbdq5.m3u8?id=sdwshd$LR•IPV4•17『线路3』 -山东卫视,http://120.198.95.220:9901/tsfile/live/1063_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•17『线路4』 -山东卫视,http://153.0.171.163:9901/tsfile/live/0131_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•17『线路5』 -山东卫视,http://112.27.235.94:8000/hls/34/index.m3u8$LR•IPV4•17『线路6』 -山东卫视,http://38.75.136.137:98/gslb/dsdqpub/sdwshd.m3u8?auth=testpub$LR•IPV4•17『线路7』 -山东卫视,https://hlsbkmgsplive.miguvideo.com/wd_r4/yg/shandongwshd/3000/01.m3u8?&HlsSubType=&encrypt=$LR•IPV4•17『线路8』 -山东卫视,https://hlsbkmgsplive.miguvideo.com/wd-shandonghd-1200/01.m3u8?&HlsSubType=&encrypt=$LR•IPV4•17『线路9』 -山东卫视,http://23.237.228.134/live8/shandong.m3u8$LR•IPV4•17『线路10』 -山东卫视,http://gfr.x3322.net:9901/tsfile/live/1098_1.m3u8$LR•IPV4•17『线路11』 -山东卫视,http://api.kkitv.itv888.cn:8080/hls/6gcdai13om5/index.m3u8$LR•IPV4•17『线路12』 -山东卫视,https://iptv.catvod.com/catvod.php?id=sdws$LR•IPV4•17『线路13』 -山东卫视,https://httop.top/ysp-山东卫视$LR•IPV4•17『线路14』 -山东卫视,http://iptv.huuc.edu.cn/hls/sdhd.m3u8$LR•IPV4•17『线路15』 -山东卫视,http://125.210.152.18:9090/live/SDWSHD_H265.m3u8$LR•IPV4•17『线路16』 -山东卫视,http://39.134.115.163:8080/PLTV/88888910/224/3221225697/index.m3u8$LR•IPV4•17『线路17』 -天津卫视,https://piccpndks.v.kcdnvip.com/audio/tianjin_2/index.m3u8$LR•IPV4•18『线路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•18『线路2』 -天津卫视,http://204.12.221.218:8181/3m1080p/tjws.m3u8$LR•IPV4•18『线路3』 -天津卫视,http://107.150.60.122/live/tjwshd.m3u8$LR•IPV4•18『线路4』 -天津卫视,http://192.151.150.154/live/tjwshd.m3u8$LR•IPV4•18『线路5』 -天津卫视,http://38.75.136.137:98/gslb/dsdqpub/tjwshd.m3u8?auth=testpub$LR•IPV4•18『线路6』 -天津卫视,http://63.141.230.178:82/gslb/zbdq5.m3u8?id=tjwshd$LR•IPV4•18『线路7』 -天津卫视,http://207.56.13.146:81/cdnlive/tjws.m3u8$LR•IPV4•18『线路8』 -天津卫视,http://120.198.95.220:9901/tsfile/live/1067_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•18『线路9』 -天津卫视,http://112.27.235.94:8000/hls/42/index.m3u8$LR•IPV4•18『线路10』 -天津卫视,http://23.237.228.134/live8/tianjing.m3u8$LR•IPV4•18『线路11』 -天津卫视,http://gfr.x3322.net:9901/tsfile/live/1090_1.m3u8$LR•IPV4•18『线路12』 -天津卫视,http://api.kkitv.itv888.cn:8080/hls/z2lkdkrb4w/index.m3u8$LR•IPV4•18『线路13』 -天津卫视,https://iptv.catvod.com/catvod.php?id=tjws$LR•IPV4•18『线路14』 -天津卫视,https://httop.top/ysp-天津卫视$LR•IPV4•18『线路15』 -天津卫视,http://iptv.huuc.edu.cn/hls/tjhd.m3u8$LR•IPV4•18『线路16』 -天津卫视,http://153.0.171.163:9901/tsfile/live/0135_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•18『线路17』 -天津卫视,http://39.134.115.163:8080/PLTV/88888910/224/3221225698/index.m3u8$LR•IPV4•18『线路18』 -海南卫视,https://livelyws.chinamcache.com/lyws/zb03.m3u8$LR•IPV4•8『线路1』 +黑龙江卫视,http://118.81.195.79:9003/hls/31/index.m3u8$LR•IPV4•12『线路6』 +黑龙江卫视,http://23.237.228.134/live6/heilongjiang.m3u8$LR•IPV4•12『线路7』 +黑龙江卫视,http://gfr.x3322.net:9901/tsfile/live/1094_1.m3u8$LR•IPV4•12『线路8』 +黑龙江卫视,http://api.kkitv.itv888.cn:8080/hls/2a24lcvser/index.m3u8$LR•IPV4•12『线路9』 +黑龙江卫视,https://iptv.catvod.com/catvod.php?id=hljws$LR•IPV4•12『线路10』 +黑龙江卫视,https://httop.top/ysp-黑龙江卫视$LR•IPV4•12『线路11』 +黑龙江卫视,http://iptv.huuc.edu.cn/hls/hljhd.m3u8$LR•IPV4•12『线路12』 +湖北卫视,http://t.061899.xyz/tl/tl.php?id=hubws$LR•IPV4•14『线路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•14『线路2』 +湖北卫视,http://118.81.195.79:9003/hls/32/index.m3u8$LR•IPV4•14『线路3』 +湖北卫视,http://38.75.136.137:98/gslb/dsdqpub/hbwshd.m3u8?auth=testpub$LR•IPV4•14『线路4』 +湖北卫视,http://23.237.228.134/live6/hubei.m3u8$LR•IPV4•14『线路5』 +湖北卫视,http://43.251.226.89:8080/play/46.m3u8$LR•IPV4•14『线路6』 +湖北卫视,http://gfr.x3322.net:9901/tsfile/live/1088_1.m3u8$LR•IPV4•14『线路7』 +湖北卫视,http://api.kkitv.itv888.cn:8080/hls/qwummpaoaq/index.m3u8$LR•IPV4•14『线路8』 +湖北卫视,https://iptv.catvod.com/catvod.php?id=hubws$LR•IPV4•14『线路9』 +湖北卫视,https://httop.top/ysp-湖北卫视$LR•IPV4•14『线路10』 +湖北卫视,http://iptv.huuc.edu.cn/hls/hbhd.m3u8$LR•IPV4•14『线路11』 +湖北卫视,http://mg.hmysapp.cn:177/ckmg/zb.php?id=hubws$LR•IPV4•14『线路12』 +湖北卫视,http://153.0.171.163:9901/tsfile/live/0132_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•14『线路13』 +湖北卫视,http://www.745612.xyz:7788/rtp/235.254.198.72:1564$LR•IPV4•14『线路14』 +江西卫视,http://t.061899.xyz/tl/tl.php?id=jxws$LR•IPV4•15『线路1』 +江西卫视,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226956/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7Ei6ZIpVizXlewg-YfGvH8dA%7EtP4-l0lmSfjwLWEfK_el1vH_mv-s1zo4AQJwdedaVwG9xkuFTDg8J26cwOrNJzn20BErrHdLhuZ9EzLUCD3PMW-OMx4MGteHV2vLeW6BqoY%2CEND$LR•IPV6•15『线路2』 +江西卫视,http://101.66.199.247:9901/tsfile/live/0138_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•15『线路3』 +江西卫视,http://112.123.243.37:50085/tsfile/live/0132_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•15『线路4』 +江西卫视,http://124.228.160.210:9901/tsfile/live/0138_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•15『线路5』 +江西卫视,http://153.0.171.163:9901/tsfile/live/0138_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•15『线路6』 +江西卫视,http://39.134.115.163:8080/PLTV/88888910/224/3221225705/index.m3u8$LR•IPV4•15『线路7』 +江西卫视,http://38.75.136.137:98/gslb/dsdqpub/jxwshd.m3u8?auth=testpub$LR•IPV4•15『线路8』 +江西卫视,http://23.237.228.134/live8/jiangxi.m3u8$LR•IPV4•15『线路9』 +江西卫视,http://43.251.226.89:8080/play/43.m3u8$LR•IPV4•15『线路10』 +江西卫视,http://api.kkitv.itv888.cn:8080/hls/pv0np60bpin/index.m3u8$LR•IPV4•15『线路11』 +江西卫视,https://iptv.catvod.com/catvod.php?id=jxws$LR•IPV4•15『线路12』 +江西卫视,https://httop.top/ysp-江西卫视$LR•IPV4•15『线路13』 +江西卫视,http://iptv.huuc.edu.cn/hls/jxhd.m3u8$LR•IPV4•15『线路14』 +江西卫视,http://mg.hmysapp.cn:177/ckmg/zb.php?id=jxws$LR•IPV4•15『线路15』 +吉林卫视,http://t.061899.xyz/tl/tl.php?id=jlws$LR•IPV4•17『线路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•17『线路2』 +吉林卫视,http://204.12.221.218:8181/3m1080p/jlws.m3u8$LR•IPV4•17『线路3』 +吉林卫视,http://38.75.136.137:98/gslb/dsdqpub/jlwshd.m3u8?auth=testpub$LR•IPV4•17『线路4』 +吉林卫视,http://112.123.243.37:50085/tsfile/live/0116_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•17『线路5』 +吉林卫视,http://101.66.199.247:9901/tsfile/live/0116_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•17『线路6』 +吉林卫视,http://101.66.194.82:9901/tsfile/live/0116_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•17『线路7』 +吉林卫视,http://36.136.38.87:9901/tsfile/live/0116_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•17『线路8』 +吉林卫视,http://101.66.194.63:9901/tsfile/live/0116_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•17『线路9』 +吉林卫视,http://101.66.195.138:9901/tsfile/live/0116_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•17『线路10』 +吉林卫视,http://153.0.171.163:9901/tsfile/live/0116_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•17『线路11』 +吉林卫视,http://118.81.195.79:9003/hls/34/index.m3u8$LR•IPV4•17『线路12』 +吉林卫视,http://23.237.228.134/live8/jilin.m3u8$LR•IPV4•17『线路13』 +吉林卫视,http://43.251.226.89:8080/play/47.m3u8$LR•IPV4•17『线路14』 +吉林卫视,http://api.kkitv.itv888.cn:8080/hls/b6dl8yuvu/index.m3u$LR•IPV4•17『线路15』 +吉林卫视,https://iptv.catvod.com/catvod.php?id=jlws$LR•IPV4•17『线路16』 +吉林卫视,https://httop.top/ysp-吉林卫视$LR•IPV4•17『线路17』 +内蒙古卫视,http://t.061899.xyz/tl/tl.php?id=nmws$LR•IPV4•14『线路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•14『线路2』 +内蒙古卫视,http://198.204.228.26/live/nmgws.m3u8$LR•IPV4•14『线路3』 +内蒙古卫视,http://192.151.150.154/live/nmgws.m3u8$LR•IPV4•14『线路4』 +内蒙古卫视,http://112.123.243.37:50085/tsfile/live/0118_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•14『线路5』 +内蒙古卫视,http://59.39.89.130:60901/tsfile/live/0125_21.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•14『线路6』 +内蒙古卫视,http://153.0.171.163:9901/tsfile/live/0109_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•14『线路7』 +内蒙古卫视,http://39.134.115.163:8080/PLTV/88888910/224/3221225667/index.m3u8$LR•IPV4•14『线路8』 +内蒙古卫视,http://117.169.120.140:8080/live/neimenggustv/.m3u8$LR•IPV4•14『线路9』 +内蒙古卫视,http://183.207.248.71/gitv/live1/G_NEIMENGGU/G_NEIMENGGU$LR•IPV4•14『线路10』 +内蒙古卫视,http://223.110.245.173/PLTV/4/224/3221225836/index.m3u8$LR•IPV4•14『线路11』 +内蒙古卫视,http://23.237.228.134/live8/neimenggu.m3u8$LR•IPV4•14『线路12』 +内蒙古卫视,https://iptv.catvod.com/catvod.php?id=nmws$LR•IPV4•14『线路13』 +内蒙古卫视,https://httop.top/ysp-内蒙古卫视$LR•IPV4•14『线路14』 +辽宁卫视,http://t.061899.xyz/tl/tl.php?id=lnws$LR•IPV4•16『线路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•16『线路2』 +辽宁卫视,http://101.66.195.138:9901/tsfile/live/0121_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•16『线路3』 +辽宁卫视,http://107.150.60.122/live/lnwshd.m3u8$LR•IPV4•16『线路4』 +辽宁卫视,http://204.12.221.218:8181/3m1080p/lnws.m3u8$LR•IPV4•16『线路5』 +辽宁卫视,http://153.0.171.163:9901/tsfile/live/0121_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•16『线路6』 +辽宁卫视,http://39.134.39.37/PLTV/88888888/224/3221226209/index.m3u8$LR•IPV4•16『线路7』 +辽宁卫视,http://38.75.136.137:98/gslb/dsdqpub/lnwshd.m3u8?auth=testpub$LR•IPV4•16『线路8』 +辽宁卫视,https://hlsbkmgsplive.miguvideo.com/migu/kailu/lnwshd265/54/20200407/01.m3u8?&HlsSubType=&encrypt=$LR•IPV4•16『线路9』 +辽宁卫视,http://23.237.228.134/live8/liaoning.m3u8$LR•IPV4•16『线路10』 +辽宁卫视,http://43.251.226.89:8080/play/41.m3u8$LR•IPV4•16『线路11』 +辽宁卫视,http://gfr.x3322.net:9901/tsfile/live/1097_1.m3u8$LR•IPV4•16『线路12』 +辽宁卫视,http://api.kkitv.itv888.cn:8080/hls/iibq0absdjr/index.m3u8$LR•IPV4•16『线路13』 +辽宁卫视,https://iptv.catvod.com/catvod.php?id=lnws$LR•IPV4•16『线路14』 +辽宁卫视,https://httop.top/ysp-辽宁卫视$LR•IPV4•16『线路15』 +辽宁卫视,http://iptv.huuc.edu.cn/hls/lnhd.m3u8$LR•IPV4•16『线路16』 +宁夏卫视,http://t.061899.xyz/tl/tl.php?id=nxws$LR•IPV4•10『线路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•10『线路2』 +宁夏卫视,http://107.150.60.122/live/nxws.m3u8$LR•IPV4•10『线路3』 +宁夏卫视,http://198.204.228.26/live/nxws.m3u8$LR•IPV4•10『线路4』 +宁夏卫视,http://112.123.243.37:50085/tsfile/live/0125_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•10『线路5』 +宁夏卫视,http://153.0.171.163:9901/tsfile/live/0112_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•10『线路6』 +宁夏卫视,http://39.134.115.163:8080/PLTV/88888910/224/3221225726/index.m3u8$LR•IPV4•10『线路7』 +宁夏卫视,http://43.251.226.89:8080/play/54.m3u8$LR•IPV4•10『线路8』 +宁夏卫视,https://iptv.catvod.com/catvod.php?id=nxws$LR•IPV4•10『线路9』 +宁夏卫视,https://httop.top/ysp-宁夏卫视$LR•IPV4•10『线路10』 +青海卫视,http://t.061899.xyz/tl/tl.php?id=qhws$LR•IPV4•10『线路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•10『线路2』 +青海卫视,http://63.141.230.178:82/gslb/zbdq5.m3u8?id=qhws$LR•IPV4•10『线路3』 +青海卫视,http://107.150.60.122/live/qhws.m3u8$LR•IPV4•10『线路4』 +青海卫视,http://153.0.171.163:9901/tsfile/live/0140_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•10『线路5』 +青海卫视,http://live.geermurmt.com/qhws/sd/live.m3u8$LR•IPV4•10『线路6』 +青海卫视,http://23.237.228.134/live8/qinghai.m3u8$LR•IPV4•10『线路7』 +青海卫视,http://43.251.226.89:8080/play/48.m3u8$LR•IPV4•10『线路8』 +青海卫视,https://iptv.catvod.com/catvod.php?id=qhws$LR•IPV4•10『线路9』 +青海卫视,https://httop.top/ysp-青海卫视$LR•IPV4•10『线路10』 +山东卫视,http://t.061899.xyz/tl/tl.php?id=sdws$LR•IPV4•17『线路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•17『线路2』 +山东卫视,http://207.56.13.146:81/cdnlive/sdws.m3u8$LR•IPV4•17『线路3』 +山东卫视,http://63.141.230.178:82/gslb/zbdq5.m3u8?id=sdwshd$LR•IPV4•17『线路4』 +山东卫视,http://120.198.95.220:9901/tsfile/live/1063_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•17『线路5』 +山东卫视,http://153.0.171.163:9901/tsfile/live/0131_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•17『线路6』 +山东卫视,http://125.210.152.18:9090/live/SDWSHD_H265.m3u8$LR•IPV4•17『线路7』 +山东卫视,http://39.134.115.163:8080/PLTV/88888910/224/3221225697/index.m3u8$LR•IPV4•17『线路8』 +山东卫视,http://38.75.136.137:98/gslb/dsdqpub/sdwshd.m3u8?auth=testpub$LR•IPV4•17『线路9』 +山东卫视,https://hlsbkmgsplive.miguvideo.com/wd_r4/yg/shandongwshd/3000/01.m3u8?&HlsSubType=&encrypt=$LR•IPV4•17『线路10』 +山东卫视,https://hlsbkmgsplive.miguvideo.com/wd-shandonghd-1200/01.m3u8?&HlsSubType=&encrypt=$LR•IPV4•17『线路11』 +山东卫视,http://23.237.228.134/live8/shandong.m3u8$LR•IPV4•17『线路12』 +山东卫视,http://gfr.x3322.net:9901/tsfile/live/1098_1.m3u8$LR•IPV4•17『线路13』 +山东卫视,http://api.kkitv.itv888.cn:8080/hls/6gcdai13om5/index.m3u8$LR•IPV4•17『线路14』 +山东卫视,https://iptv.catvod.com/catvod.php?id=sdws$LR•IPV4•17『线路15』 +山东卫视,https://httop.top/ysp-山东卫视$LR•IPV4•17『线路16』 +山东卫视,http://iptv.huuc.edu.cn/hls/sdhd.m3u8$LR•IPV4•17『线路17』 +天津卫视,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•18『线路1』 +天津卫视,http://204.12.221.218:8181/3m1080p/tjws.m3u8$LR•IPV4•18『线路2』 +天津卫视,http://107.150.60.122/live/tjwshd.m3u8$LR•IPV4•18『线路3』 +天津卫视,http://192.151.150.154/live/tjwshd.m3u8$LR•IPV4•18『线路4』 +天津卫视,http://38.75.136.137:98/gslb/dsdqpub/tjwshd.m3u8?auth=testpub$LR•IPV4•18『线路5』 +天津卫视,http://63.141.230.178:82/gslb/zbdq5.m3u8?id=tjwshd$LR•IPV4•18『线路6』 +天津卫视,http://207.56.13.146:81/cdnlive/tjws.m3u8$LR•IPV4•18『线路7』 +天津卫视,http://120.198.95.220:9901/tsfile/live/1067_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•18『线路8』 +天津卫视,http://112.27.235.94:8000/hls/42/index.m3u8$LR•IPV4•18『线路9』 +天津卫视,https://piccpndks.v.kcdnvip.com/audio/tianjin_2/index.m3u8$LR•IPV4•18『线路10』 +天津卫视,http://39.134.115.163:8080/PLTV/88888910/224/3221225698/index.m3u8$LR•IPV4•18『线路11』 +天津卫视,http://23.237.228.134/live8/tianjing.m3u8$LR•IPV4•18『线路12』 +天津卫视,http://gfr.x3322.net:9901/tsfile/live/1090_1.m3u8$LR•IPV4•18『线路13』 +天津卫视,http://api.kkitv.itv888.cn:8080/hls/z2lkdkrb4w/index.m3u8$LR•IPV4•18『线路14』 +天津卫视,https://iptv.catvod.com/catvod.php?id=tjws$LR•IPV4•18『线路15』 +天津卫视,https://httop.top/ysp-天津卫视$LR•IPV4•18『线路16』 +天津卫视,http://iptv.huuc.edu.cn/hls/tjhd.m3u8$LR•IPV4•18『线路17』 +天津卫视,http://153.0.171.163:9901/tsfile/live/0135_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•18『线路18』 +海南卫视,http://t.061899.xyz/tl/tl.php?id=hinws$LR•IPV4•8『线路1』 海南卫视,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221227029/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7EEuBMjt2kLMD8fAO7QYER7Q%7EtP4-l0lmSfjwLWEfK_el1vH_mv-s1zo4AQJwdedaVwG9xkuFTDg8J26cwOrNJzn20BErrHdLhuZ9EzLUCD3PMW-OMx4MGteHV2vLeW6BqoY%2CEND$LR•IPV6•8『线路2』 -海南卫视,http://120.76.248.139/live/bfgd/4200000473.m3u8$LR•IPV4•8『线路3』 -海南卫视,http://43.251.226.89:8080/play/50.m3u8$LR•IPV4•8『线路4』 -海南卫视,http://api.kkitv.itv888.cn:8080/hls/c1cajhsgba8/index.m3u8$LR•IPV4•8『线路5』 -海南卫视,https://iptv.catvod.com/catvod.php?id=hinws$LR•IPV4•8『线路6』 -海南卫视,https://httop.top/ysp-海南卫视$LR•IPV4•8『线路7』 -海南卫视,http://118.81.195.79:9003/hls/28/index.m3u8$LR•IPV4•8『线路8』 -新疆卫视,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221227011/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7ExAUu61iVvo_xYbANWJhgXw%7EtP4-l0lmSfjwLWEfK_el1vH_mv-s1zo4AQJwdedaVwG9xkuFTDg8J26cwOrNJzn20BErrHdLhuZ9EzLUCD3PMW-OMx4MGteHV2vLeW6BqoY%2CEND$LR•IPV6•13『线路1』 -新疆卫视,http://218.84.12.186:8001/hls/main/playlist.m3u8?zxinjd;http://218.84.12.186:8001/hls/main/playlist.m3u8zxinjd$LR•IPV4•13『线路2』 -新疆卫视,http://112.123.243.37:50085/tsfile/live/0143_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•13『线路3』 -新疆卫视,http://59.39.89.130:60901/tsfile/live/0125_17.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•13『线路4』 -新疆卫视,http://live.wjyanghu.com/live/CH1.m3u8$LR•IPV4•13『线路5』 -新疆卫视,https://iptv.catvod.com/catvod.php?id=xjws$LR•IPV4•13『线路6』 -新疆卫视,https://httop.top/ysp-新疆卫视$LR•IPV4•13『线路7』 -新疆卫视,http://39.134.115.163:8080/PLTV/88888910/224/3221225725/index.m3u8$LR•IPV4•13『线路8』 -新疆卫视,http://183.207.248.71/cntv/live1/xinjiangstv/xinjiangstv$LR•IPV4•13『线路9』 -新疆卫视,http://183.207.248.71/gitv/live1/G_XINJIANG/G_XINJIANG$LR•IPV4•13『线路10』 -新疆卫视,http://183.207.249.15/PLTV/3/224/3221225523/index.m3u8$LR•IPV4•13『线路11』 -新疆卫视,http://223.110.243.136/PLTV/3/224/3221225523/index.m3u8$LR•IPV4•13『线路12』 -新疆卫视,http://112.25.48.68/live/program/live/xjws/1300000/mnf.m3u8$LR•IPV4•13『线路13』 -云南卫视,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•16『线路1』 -云南卫视,http://120.198.95.220:9901/tsfile/live/1056_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•16『线路2』 -云南卫视,http://38.75.136.137:98/gslb/dsdqpub/ynwshd.m3u8?auth=testpub$LR•IPV4•16『线路3』 -云南卫视,http://204.12.221.218:8181/3m1080p/ynws.m3u8$LR•IPV4•16『线路4』 -云南卫视,http://112.123.243.37:50085/tsfile/live/0117_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•16『线路5』 -云南卫视,http://101.66.194.82:9901/tsfile/live/0119_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•16『线路6』 -云南卫视,http://101.66.194.63:9901/tsfile/live/0119_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•16『线路7』 -云南卫视,http://36.136.38.87:9901/tsfile/live/0119_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•16『线路8』 -云南卫视,http://101.66.195.138:9901/tsfile/live/0119_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•16『线路9』 -云南卫视,http://101.66.199.247:9901/tsfile/live/0119_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•16『线路10』 -云南卫视,http://153.0.171.163:9901/tsfile/live/0119_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•16『线路11』 -云南卫视,http://123.130.84.106:8154/tsfile/live/0119_1.m3u8$LR•IPV4•16『线路12』 -云南卫视,http://23.237.228.134/live8/yunnan.m3u8$LR•IPV4•16『线路13』 -云南卫视,https://iptv.catvod.com/catvod.php?id=ynws$LR•IPV4•16『线路14』 -云南卫视,https://httop.top/ysp-云南卫视$LR•IPV4•16『线路15』 -云南卫视,https://hwapi.yunshicloud.com/8xughf/e0bx15.m3u8$LR•IPV4•16『线路16』 -西藏卫视,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•12『线路1』 -西藏卫视,http://59.39.89.130:60901/tsfile/live/0125_3.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•12『线路2』 -西藏卫视,http://198.204.228.26/live/xzws.m3u8$LR•IPV4•12『线路3』 -西藏卫视,http://63.141.230.178:82/gslb/zbdq5.m3u8?id=xzws$LR•IPV4•12『线路4』 -西藏卫视,http://107.150.60.122/live/xzws.m3u8$LR•IPV4•12『线路5』 -西藏卫视,http://112.123.243.37:50085/tsfile/live/0141_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•12『线路6』 -西藏卫视,http://59.39.89.130:60901/tsfile/live/0125_4.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•12『线路7』 -西藏卫视,http://cssbyd.imwork.net:8082/hls/46/index.m3u8$LR•IPV4•12『线路8』 -西藏卫视,https://iptv.catvod.com/catvod.php?id=xzws$LR•IPV4•12『线路9』 -西藏卫视,http://39.134.115.163:8080/PLTV/88888910/224/3221225723/index.m3u8$LR•IPV4•12『线路10』 -西藏卫视,http://117.169.120.140:8080/live/xizangstv/.m3u8$LR•IPV4•12『线路11』 -西藏卫视,http://183.207.249.16/PLTV/3/224/3221225523/index.m3u8$LR•IPV4•12『线路12』 +海南卫视,https://livelyws.chinamcache.com/lyws/zb03.m3u8$LR•IPV4•8『线路3』 +海南卫视,http://118.81.195.79:9003/hls/28/index.m3u8$LR•IPV4•8『线路4』 +海南卫视,http://43.251.226.89:8080/play/50.m3u8$LR•IPV4•8『线路5』 +海南卫视,http://api.kkitv.itv888.cn:8080/hls/c1cajhsgba8/index.m3u8$LR•IPV4•8『线路6』 +海南卫视,https://iptv.catvod.com/catvod.php?id=hinws$LR•IPV4•8『线路7』 +海南卫视,https://httop.top/ysp-海南卫视$LR•IPV4•8『线路8』 +新疆卫视,http://t.061899.xyz/tl/tl.php?id=xjws$LR•IPV4•14『线路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•14『线路2』 +新疆卫视,http://218.84.12.186:8001/hls/main/playlist.m3u8?zxinjd;http://218.84.12.186:8001/hls/main/playlist.m3u8zxinjd$LR•IPV4•14『线路3』 +新疆卫视,http://112.123.243.37:50085/tsfile/live/0143_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•14『线路4』 +新疆卫视,http://59.39.89.130:60901/tsfile/live/0125_17.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•14『线路5』 +新疆卫视,http://live.wjyanghu.com/live/CH1.m3u8$LR•IPV4•14『线路6』 +新疆卫视,http://39.134.115.163:8080/PLTV/88888910/224/3221225725/index.m3u8$LR•IPV4•14『线路7』 +新疆卫视,http://183.207.248.71/cntv/live1/xinjiangstv/xinjiangstv$LR•IPV4•14『线路8』 +新疆卫视,http://183.207.248.71/gitv/live1/G_XINJIANG/G_XINJIANG$LR•IPV4•14『线路9』 +新疆卫视,http://183.207.249.15/PLTV/3/224/3221225523/index.m3u8$LR•IPV4•14『线路10』 +新疆卫视,http://223.110.243.136/PLTV/3/224/3221225523/index.m3u8$LR•IPV4•14『线路11』 +新疆卫视,http://112.25.48.68/live/program/live/xjws/1300000/mnf.m3u8$LR•IPV4•14『线路12』 +新疆卫视,https://iptv.catvod.com/catvod.php?id=xjws$LR•IPV4•14『线路13』 +新疆卫视,https://httop.top/ysp-新疆卫视$LR•IPV4•14『线路14』 +云南卫视,http://t.061899.xyz/tl/tl.php?id=ynws$LR•IPV4•17『线路1』 +云南卫视,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•17『线路2』 +云南卫视,http://120.198.95.220:9901/tsfile/live/1056_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•17『线路3』 +云南卫视,http://38.75.136.137:98/gslb/dsdqpub/ynwshd.m3u8?auth=testpub$LR•IPV4•17『线路4』 +云南卫视,http://204.12.221.218:8181/3m1080p/ynws.m3u8$LR•IPV4•17『线路5』 +云南卫视,http://112.123.243.37:50085/tsfile/live/0117_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•17『线路6』 +云南卫视,http://101.66.194.82:9901/tsfile/live/0119_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•17『线路7』 +云南卫视,http://101.66.194.63:9901/tsfile/live/0119_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•17『线路8』 +云南卫视,http://36.136.38.87:9901/tsfile/live/0119_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•17『线路9』 +云南卫视,http://101.66.195.138:9901/tsfile/live/0119_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•17『线路10』 +云南卫视,http://101.66.199.247:9901/tsfile/live/0119_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•17『线路11』 +云南卫视,http://153.0.171.163:9901/tsfile/live/0119_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•17『线路12』 +云南卫视,https://jsv-live-play.sfccn.com/live/jsv_3920_fhd.m3u8$LR•IPV4•17『线路13』 +云南卫视,https://hwapi.yunshicloud.com/8xughf/e0bx15.m3u8$LR•IPV4•17『线路14』 +云南卫视,http://23.237.228.134/live8/yunnan.m3u8$LR•IPV4•17『线路15』 +云南卫视,https://iptv.catvod.com/catvod.php?id=ynws$LR•IPV4•17『线路16』 +云南卫视,https://httop.top/ysp-云南卫视$LR•IPV4•17『线路17』 +西藏卫视,http://t.061899.xyz/tl/tl.php?id=xzws$LR•IPV4•12『线路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•12『线路2』 +西藏卫视,http://59.39.89.130:60901/tsfile/live/0125_3.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•12『线路3』 +西藏卫视,http://198.204.228.26/live/xzws.m3u8$LR•IPV4•12『线路4』 +西藏卫视,http://63.141.230.178:82/gslb/zbdq5.m3u8?id=xzws$LR•IPV4•12『线路5』 +西藏卫视,http://107.150.60.122/live/xzws.m3u8$LR•IPV4•12『线路6』 +西藏卫视,http://112.123.243.37:50085/tsfile/live/0141_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•12『线路7』 +西藏卫视,http://59.39.89.130:60901/tsfile/live/0125_4.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•12『线路8』 +西藏卫视,http://39.134.115.163:8080/PLTV/88888910/224/3221225723/index.m3u8$LR•IPV4•12『线路9』 +西藏卫视,http://117.169.120.140:8080/live/xizangstv/.m3u8$LR•IPV4•12『线路10』 +西藏卫视,http://183.207.249.16/PLTV/3/224/3221225523/index.m3u8$LR•IPV4•12『线路11』 +西藏卫视,https://iptv.catvod.com/catvod.php?id=xzws$LR•IPV4•12『线路12』 海峡卫视,http://38.64.72.148:80/hls/modn/list/4009/chunklist0.m3u8$LR•IPV4•3『线路1』 海峡卫视,http://43.251.226.89:8080/play/51.m3u8$LR•IPV4•3『线路2』 海峡卫视,p3p://167.114.175.6:55331/63ec47390001586de42ffc1a7e1856a6$LR•IPV4•3『线路3』 @@ -737,19 +740,19 @@ CGTN阿语,https://0472.org/hls/cgtna.m3u8$LR•IPV4 兵团卫视,http://107.150.60.122/live/btws.m3u8$LR•IPV4•10『线路4』 兵团卫视,http://192.151.150.154/live/btws.m3u8$LR•IPV4•10『线路5』 兵团卫视,http://218.13.170.98:9901/tsfile/live/0115_1.m3u8$LR•IPV4•10『线路6』 -兵团卫视,http://43.251.226.89:8080/play/53.m3u8$LR•IPV4•10『线路7』 -兵团卫视,https://iptv.catvod.com/catvod.php?id=btws$LR•IPV4•10『线路8』 -兵团卫视,https://httop.top/ysp-兵团卫视$LR•IPV4•10『线路9』 -兵团卫视,http://112.25.48.68/live/program/live/btws/1300000/mnf.m3u8$LR•IPV4•10『线路10』 +兵团卫视,http://112.25.48.68/live/program/live/btws/1300000/mnf.m3u8$LR•IPV4•10『线路7』 +兵团卫视,http://43.251.226.89:8080/play/53.m3u8$LR•IPV4•10『线路8』 +兵团卫视,https://iptv.catvod.com/catvod.php?id=btws$LR•IPV4•10『线路9』 +兵团卫视,https://httop.top/ysp-兵团卫视$LR•IPV4•10『线路10』 安多卫视,https://liveout.xntv.tv/a65jur/96iln2.m3u8$LR•IPV4 康巴卫视,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221227027/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7EkHMvBpWz4rccMxNvSRekpQ%7EtP4-l0lmSfjwLWEfK_el1vH_mv-s1zo4AQJwdedaVwG9xkuFTDg8J26cwOrNJzn20BErrHdLhuZ9EzLUCD3PMW-OMx4MGteHV2vLeW6BqoY%2CEND$LR•IPV6•2『线路1』 康巴卫视,http://scgctvshow.sctv.com/hdlive/kangba/1.m3u8$LR•IPV4•2『线路2』 农林卫视,http://120.76.248.139/live/bfgd/4200000122.m3u8$LR•IPV4•2『线路1』 农林卫视,http://43.251.226.89:8080/play/52.m3u8$LR•IPV4•2『线路2』 -三沙卫视,https://srs.ssws.tv/video/sstv-10/index.m3u8$LR•IPV4•6『线路1』 -三沙卫视,http://107.150.60.122/live/ssws.m3u8$LR•IPV4•6『线路2』 -三沙卫视,http://38.75.136.137:98/gslb/dsdqpub/ssws.m3u8?auth=testpub$LR•IPV4•6『线路3』 -三沙卫视,http://221.226.51.220:50081/newlive/live/hls/38/live.m3u8$LR•IPV4•6『线路4』 +三沙卫视,http://107.150.60.122/live/ssws.m3u8$LR•IPV4•6『线路1』 +三沙卫视,http://38.75.136.137:98/gslb/dsdqpub/ssws.m3u8?auth=testpub$LR•IPV4•6『线路2』 +三沙卫视,http://221.226.51.220:50081/newlive/live/hls/38/live.m3u8$LR•IPV4•6『线路3』 +三沙卫视,https://srs.ssws.tv/video/sstv-10/index.m3u8$LR•IPV4•6『线路4』 三沙卫视,http://43.251.226.89:8080/play/56.m3u8$LR•IPV4•6『线路5』 三沙卫视,https://iptv.catvod.com/catvod.php?id=ssws$LR•IPV4•6『线路6』 延边卫视,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221227045/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7Eq0D3NdTUN7FuRzr8eJsbQA%7EtP4-l0lmSfjwLWEfK_el1vH_mv-s1zo4AQJwdedaVwG9xkuFTDg8J26cwOrNJzn20BErrHdLhuZ9EzLUCD3PMW-OMx4MGteHV2vLeW6BqoY%2CEND$LR•IPV6•4『线路1』 @@ -761,7 +764,7 @@ CGTN阿语,https://0472.org/hls/cgtna.m3u8$LR•IPV4 家庭理财,http://223.110.245.139/PLTV/4/224/3221227011/index.m3u8$LR•IPV4 梨园,https://dxtx.hntv.tv/live/lypd.m3u8?txSecret=10c771842a0be59e8b575d765173ec96&txTime=7B923E0A&wsSecret=41543190cdf375f1c73207222bb96542&wsTime=1769313549$LR•IPV4•2『线路1』 梨园,http://1.94.31.214/php/hntv.php?id=hnly$LR•IPV4•2『线路2』 -辽宁公共,http://120.76.248.139/live/bfgd/4200000077.m3u8$LR•IPV4 +辽宁公共,http://120.76.248.139/live/bfgd/4200000481.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』 @@ -778,11 +781,11 @@ CGTN阿语,https://0472.org/hls/cgtna.m3u8$LR•IPV4 山西卫视,http://101.66.199.247:9901/tsfile/live/0118_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•15『线路9』 山西卫视,http://153.0.171.163:9901/tsfile/live/0118_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•15『线路10』 山西卫视,http://112.27.235.94:8000/hls/45/index.m3u8$LR•IPV4•15『线路11』 -山西卫视,http://23.237.228.134/live8/shanxi.m3u8$LR•IPV4•15『线路12』 -山西卫视,https://iptv.catvod.com/catvod.php?id=sxiws$LR•IPV4•15『线路13』 -山西卫视,https://httop.top/ysp-山西卫视$LR•IPV4•15『线路14』 -山西卫视,http://118.81.195.79:9003/hls/19/index.m3u8$LR•IPV4•15『线路15』 -陕西卫视,http://stream.snrtv.com/sxbc-star-BLMOU4.m3u8$LR•IPV4•20『线路1』 +山西卫视,http://118.81.195.79:9003/hls/19/index.m3u8$LR•IPV4•15『线路12』 +山西卫视,http://23.237.228.134/live8/shanxi.m3u8$LR•IPV4•15『线路13』 +山西卫视,https://iptv.catvod.com/catvod.php?id=sxiws$LR•IPV4•15『线路14』 +山西卫视,https://httop.top/ysp-山西卫视$LR•IPV4•15『线路15』 +陕西卫视,http://t.061899.xyz/tl/tl.php?id=sxws$LR•IPV4•20『线路1』 陕西卫视,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226999/1.m3u8?GuardEncType=2&accountinfo=%7E%7EV2.0%7EsGLKaSqf0wDZMbAjeQtfyw%7EtP4-l0lmSfjwLWEfK_el1vH_mv-s1zo4AQJwdedaVwG9xkuFTDg8J26cwOrNJzn20BErrHdLhuZ9EzLUCD3PMW-OMx4MGteHV2vLeW6BqoY%2CEND$LR•IPV6•20『线路2』 陕西卫视,http://107.150.60.122/live/snwshd.m3u8$LR•IPV4•20『线路3』 陕西卫视,http://63.141.230.178:82/gslb/zbdq5.m3u8?id=snwshd$LR•IPV4•20『线路4』 @@ -792,19 +795,20 @@ CGTN阿语,https://0472.org/hls/cgtna.m3u8$LR•IPV4 陕西卫视,http://101.66.194.63:9901/tsfile/live/0136_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•20『线路8』 陕西卫视,http://36.136.38.87:9901/tsfile/live/0136_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•20『线路9』 陕西卫视,http://153.0.171.163:9901/tsfile/live/0136_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•20『线路10』 -陕西卫视,http://112.27.235.94:8000/hls/43/index.m3u8$LR•IPV4•20『线路11』 -陕西卫视,http://38.75.136.137:98/gslb/dsdqpub/sxwshd.m3u8?auth=testpub$LR•IPV4•20『线路12』 -陕西卫视,http://23.237.228.134/live6/sichuan.m3u8$LR•IPV4•20『线路13』 -陕西卫视,http://43.251.226.89:8080/play/45.m3u8$LR•IPV4•20『线路14』 -陕西卫视,https://iptv.catvod.com/catvod.php?id=sxws$LR•IPV4•20『线路15』 -陕西卫视,https://httop.top/ysp-陕西卫视$LR•IPV4•20『线路16』 -陕西卫视,http://mg.hmysapp.cn:177/ckmg/zb.php?id=sxws$LR•IPV4•20『线路17』 -陕西卫视,http://39.134.115.163:8080/PLTV/88888910/224/3221225729/index.m3u8$LR•IPV4•20『线路18』 -陕西卫视,http://223.110.245.139/PLTV/4/224/3221227022/index.m3u8$LR•IPV4•20『线路19』 -陕西卫视,http://112.25.48.68/live/program/live/sxws/1300000/mnf.m3u8$LR•IPV4•20『线路20』 +陕西卫视,http://stream.snrtv.com/sxbc-star-BLMOU4.m3u8$LR•IPV4•20『线路11』 +陕西卫视,http://39.134.115.163:8080/PLTV/88888910/224/3221225729/index.m3u8$LR•IPV4•20『线路12』 +陕西卫视,http://223.110.245.139/PLTV/4/224/3221227022/index.m3u8$LR•IPV4•20『线路13』 +陕西卫视,http://112.25.48.68/live/program/live/sxws/1300000/mnf.m3u8$LR•IPV4•20『线路14』 +陕西卫视,http://38.75.136.137:98/gslb/dsdqpub/sxwshd.m3u8?auth=testpub$LR•IPV4•20『线路15』 +陕西卫视,http://23.237.228.134/live6/sichuan.m3u8$LR•IPV4•20『线路16』 +陕西卫视,http://43.251.226.89:8080/play/45.m3u8$LR•IPV4•20『线路17』 +陕西卫视,https://iptv.catvod.com/catvod.php?id=sxws$LR•IPV4•20『线路18』 +陕西卫视,https://httop.top/ysp-陕西卫视$LR•IPV4•20『线路19』 +陕西卫视,http://mg.hmysapp.cn:177/ckmg/zb.php?id=sxws$LR•IPV4•20『线路20』 数字,#genre# CHC影迷电影,p3p://167.114.175.6:55331/63ec4caf00020428e445513c2d902fdb$LR•IPV4 +CHC动作电影,http://t.061899.xyz/tl/tl.php?id=chcdzdy$LR•IPV4 CHC家庭影院,http://61.162.52.6:8088/newlive/live/hls/60/live.m3u8$LR•IPV4 睛彩竞技,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=5735&tk=a0c4f6cfaba3$LR•IPV4•17『线路1』 睛彩竞技,http://dl.wifi942.com:66/jsyd/jsyd.php?id=HD-8000k-1080P-miguaoyun2$LR•IPV4•17『线路2』 @@ -847,8 +851,8 @@ CHC家庭影院,http://61.162.52.6:8088/newlive/live/hls/60/live.m3u8$LR•IPV4 睛彩篮球,http://dl.wifi942.com:66/jsyd/jsyd.php?id=HD-8000k-1080P-miguaoyun1$LR•IPV4•24『线路22』 睛彩篮球,http://drive.mxmy.net:8888/udp/239.3.1.126:8001$LR•IPV4•24『线路23』 睛彩篮球,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=8104&tk=b53028476470$LR•IPV4•24『线路24』 -SiTV 魅力足球,http://111.22.153.159:35455/itv/5000000011000031207.m3u8?cdn=bestzb$LR•IPV4•28『线路1』 -SiTV 魅力足球,http://t.061899.xyz/tl/tl.php?id=mlzq$LR•IPV4•28『线路2』 +SiTV 魅力足球,http://t.061899.xyz/tl/tl.php?id=mlzq$LR•IPV4•28『线路1』 +SiTV 魅力足球,http://111.22.153.159:35455/itv/5000000011000031207.m3u8?cdn=bestzb$LR•IPV4•28『线路2』 SiTV 魅力足球,https://www.freetv.top/migu/796070308.m3u8?migutoken=f4f71100ed3cd756f336e1f3b6d522c1338ee1ffd14316eea89e461d4e31e29395a265a9f1ec26b947fb0e7dc16296db47ae3bfea73caaee6901d17bfede63775878c0ab44c872939ba5b53baf$LR•IPV4•28『线路3』 SiTV 魅力足球,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=3624&tk=23a9aca1f79f$LR•IPV4•28『线路4』 SiTV 魅力足球,http://qjrhc.jydjd.top:2911/udp/224.1.100.133:11111$LR•IPV4•28『线路5』 @@ -875,14 +879,14 @@ SiTV 魅力足球,https://www.freetv.top/migu/796070308.m3u8?migutoken=aef1ffa94 SiTV 魅力足球,https://stream1.freetv.fun/ipv6-mei-li-zu-qiu-3.m3u8$LR•IPV4•28『线路26』 SiTV 魅力足球,https://stream1.freetv.fun/ipv6-mei-li-zu-qiu-5.m3u8$LR•IPV4•28『线路27』 SiTV 魅力足球,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=0934&tk=e640d0a1bf70$LR•IPV4•28『线路28』 -SiTV 劲爆体育,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=6808&tk=a0c4f6cfaba3$LR•IPV4•25『线路1』 -SiTV 劲爆体育,http://120.238.94.82:9901/tsfile/live/1086_1.m3u8$LR•IPV4•25『线路2』 -SiTV 劲爆体育,http://111.22.153.159:35455/itv/5000000002000029972.m3u8?cdn=bestzb$LR•IPV4•25『线路3』 -SiTV 劲爆体育,http://183.237.95.108:9901/tsfile/live/1074_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•25『线路4』 -SiTV 劲爆体育,http://119.32.12.32:2901/udp/224.1.100.129:11111$LR•IPV4•25『线路5』 -SiTV 劲爆体育,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=3011&tk=a0c4f6cfaba3$LR•IPV4•25『线路6』 -SiTV 劲爆体育,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=4995&tk=e503191f8e20$LR•IPV4•25『线路7』 -SiTV 劲爆体育,http://t.061899.xyz/tl/tl.php?id=jbty$LR•IPV4•25『线路8』 +SiTV 劲爆体育,http://t.061899.xyz/tl/tl.php?id=jbty$LR•IPV4•25『线路1』 +SiTV 劲爆体育,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=6808&tk=a0c4f6cfaba3$LR•IPV4•25『线路2』 +SiTV 劲爆体育,http://120.238.94.82:9901/tsfile/live/1086_1.m3u8$LR•IPV4•25『线路3』 +SiTV 劲爆体育,http://111.22.153.159:35455/itv/5000000002000029972.m3u8?cdn=bestzb$LR•IPV4•25『线路4』 +SiTV 劲爆体育,http://183.237.95.108:9901/tsfile/live/1074_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•25『线路5』 +SiTV 劲爆体育,http://119.32.12.32:2901/udp/224.1.100.129:11111$LR•IPV4•25『线路6』 +SiTV 劲爆体育,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=3011&tk=a0c4f6cfaba3$LR•IPV4•25『线路7』 +SiTV 劲爆体育,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=4995&tk=e503191f8e20$LR•IPV4•25『线路8』 SiTV 劲爆体育,http://146.56.165.66:7788/TVOD/5000000002000029972/bestzb/index.m3u8$LR•IPV4•25『线路9』 SiTV 劲爆体育,http://qjrhc.jydjd.top:2911/udp/224.1.100.130:11111$LR•IPV4•25『线路10』 SiTV 劲爆体育,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=9784&tk=b53028476470$LR•IPV4•25『线路11』 @@ -943,8 +947,8 @@ NewTV超级体育,http://[2409:8087:1a01:df::7005]:80/ottrrs.hl.chinamobile.com/ NewTV超级体育,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=0078&tk=a0c4f6cfaba3$LR•IPV4•5『线路3』 NewTV超级体育,http://feiyang.ak47s.top:35455/itv/1000000001000009601.m3u8?cdn=ystenlive$LR•IPV4•5『线路4』 NewTV超级体育,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=3188&tk=23a9aca1f79f$LR•IPV4•5『线路5』 -NewTV动作电影,http://live.metshop.top/huya/11602077?cdn=alicdn$LR•IPV4•2『线路1』 -NewTV动作电影,http://39.134.19.68/dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221226465/index.m3u8$LR•IPV4•2『线路2』 +NewTV动作电影,http://39.134.19.68/dbiptv.sn.chinamobile.com/PLTV/88888888/224/3221226465/index.m3u8$LR•IPV4•2『线路1』 +NewTV动作电影,http://live.metshop.top/huya/11602077?cdn=alicdn$LR•IPV4•2『线路2』 NewTV精品体育,https://epg.pw/stream/f7556eccd4ae06b0c2991fdc7a4f8388496559f728cc82459a8e50346040e226.m3u8$LR•IPV4•6『线路1』 NewTV精品体育,https://epg.pw/stream/866a097a0907c9832440f8df38272dd555abf05200dfbafcc137e214c9b30ca7.m3u8$LR•IPV4•6『线路2』 NewTV精品体育,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=5739&tk=23a9aca1f79f$LR•IPV4•6『线路3』 @@ -952,17 +956,18 @@ NewTV精品体育,https://epg.pw/stream/94ed0232b61ce8d89883160a4cdfbfc8f3225cae NewTV精品体育,http://146.56.165.66:7788/TVOD/2000000003000000021/hnbblive/index.m3u8$LR•IPV4•6『线路5』 NewTV精品体育,http://dl.wifi942.com:66/jsyd/jsyd.php?id=GITV-JS-65$LR•IPV4•6『线路6』 卡酷少儿,http://218.13.170.98:9901/tsfile/live/1021_1.m3u8$LR•IPV4 -优漫卡通,http://183.207.249.15/PLTV/4/224/3221225933/index.m3u8$LR•IPV4 +优漫卡通,http://t.061899.xyz/tl/tl.php?id=ymkt$LR•IPV4•2『线路1』 +优漫卡通,http://183.207.249.15/PLTV/4/224/3221225933/index.m3u8$LR•IPV4•2『线路2』 哈哈炫动,http://223.110.245.139/PLTV/4/224/3221226388/index.m3u8$LR•IPV4 嘉佳卡通,http://223.110.245.139/PLTV/4/224/3221227009/index.m3u8$LR•IPV4•2『线路1』 嘉佳卡通,http://112.25.48.68/live/program/live/jjkt/1300000/mnf.m3u8$LR•IPV4•2『线路2』 -金鹰卡通,http://phoneal.qing.mgtv.com/nn_live/nn_x64/Y2hzPSZkZWY9MSZ1aXA9MTA2LjE0LjM4LjU1JnRlcm09NSZtYWNpZD02ODZlOGNmOGM4OGU3N2VjOWEwNzkzMjg5ZjUzNDg0MmFiZWM0ZjNjJnFpZD0mcmF1dGhfZW5hYmxlPW9mZiZjZG5leF9pZD1hbF9waG9uZTMmZXM9MTc4Mzk3OTAxNiZ1dWlkPTU2NjdhZjJmOGNjNjM4MjMwZjFlYzVmY2RiMWIxNThmLTZhMGUyNjM3JnM9ZDg2NTFkYzBlZjdjOTcxMjUyMjMxMTYyOGQ5ODM4YjgmdWlkPSZuZHY9aW9zLTYuNS4wJnY9MiZhcz0wJl9jYXJDb2RlPTA,/JYKTMPP360.m3u8$LR•IPV4•7『线路1』 -金鹰卡通,http://183.11.239.36:808/hls/69/index.m3u8$LR•IPV4•7『线路2』 -金鹰卡通,http://101.66.194.82:9901/tsfile/live/1000_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•7『线路3』 -金鹰卡通,http://101.66.194.63:9901/tsfile/live/1000_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•7『线路4』 -金鹰卡通,http://101.66.199.247:9901/tsfile/live/1000_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•7『线路5』 -金鹰卡通,http://120.198.95.220:9901/tsfile/live/1033_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•7『线路6』 -金鹰卡通,http://223.110.245.145/ott.js.chinamobile.com/PLTV/3/224/3221226303/index.m3u8$LR•IPV4•7『线路7』 +金鹰卡通,http://183.11.239.36:808/hls/69/index.m3u8$LR•IPV4•7『线路1』 +金鹰卡通,http://phoneqq.qing.mgtv.com/nn_live/nn_x64/Y2hzPSZkZWY9MSZ1aXA9MTA2LjE0LjM4LjU1JnRlcm09NSZtYWNpZD02ODZlOGNmOGM4OGU3N2VjOWEwNzkzMjg5ZjUzNDg0MmFiZWM0ZjNjJnFpZD0mcmF1dGhfZW5hYmxlPW9mZiZjZG5leF9pZD1xcV9waG9uZV9saXZlJmVzPTE3ODQyNDYwMjImdXVpZD1kOGE5NDdhY2I3OGNhOWUxZWM1MzIwZTMxNTYxZmU5NS02YTBlMjYzNyZzPThlNWFhM2FhOGI5YzUwYzNmZjVhODk2NjBiODg3NjUyJnVpZD0mbmR2PWlvcy02LjUuMCZ2PTImYXM9MCZfY2FyQ29kZT0w/HNGGMPP360.m3u8$LR•IPV4•7『线路2』 +金鹰卡通,http://223.110.245.145/ott.js.chinamobile.com/PLTV/3/224/3221226303/index.m3u8$LR•IPV4•7『线路3』 +金鹰卡通,http://101.66.194.82:9901/tsfile/live/1000_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•7『线路4』 +金鹰卡通,http://101.66.194.63:9901/tsfile/live/1000_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•7『线路5』 +金鹰卡通,http://101.66.199.247:9901/tsfile/live/1000_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•7『线路6』 +金鹰卡通,http://120.198.95.220:9901/tsfile/live/1033_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•7『线路7』 金鹰纪实,http://iptv.huuc.edu.cn/hls/gedocu.m3u8$LR•IPV4•83『线路1』 金鹰纪实,https://live.264788.xyz/channel/jinyingjishi?streamid=4e14722244f78fc9c49bf260b10b3cad&livekey=01WgOR41rriMmMkzNsd0UoaxJRwetZdxIvtVk$LR•IPV4•83『线路2』 金鹰纪实,https://stream1.freetv.fun/jin-ying-ji-shi-16.m3u8$LR•IPV4•83『线路3』 @@ -1080,8 +1085,9 @@ NewTV精品体育,http://dl.wifi942.com:66/jsyd/jsyd.php?id=GITV-JS-65$LR•IPV4 快乐垂钓,https://migu.188766.xyz/?migutoken=c6b17aba558cf29b13242b5ae063e5ed&id=%E5%BF%AB%E4%B9%90%E5%9E%82%E9%92%93&type=yy$LR•IPV4•34『线路32』 快乐垂钓,http://27.12.12.183:1234/961930263$LR•IPV4•34『线路33』 快乐垂钓,http://8.153.110.51:3020/961930263$LR•IPV4•34『线路34』 -纪实人文,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://t.061899.xyz/tl/tl.php?id=shjsrw$LR•IPV4•3『线路1』 +纪实人文,http://39.135.138.59:18890/PLTV/88888910/224/3221225655/index.m3u8$LR•IPV4•3『线路2』 +纪实人文,http://8.138.7.223/tv/shtv.php?id=xjs$LR•IPV4•3『线路3』 天元围棋,http://120.76.248.139/live/bfgd/4200000633.m3u8$LR•IPV4•6『线路1』 天元围棋,http://wouu.net:9977/udp/239.93.42.55:5140$LR•IPV4•6『线路2』 天元围棋,http://63.141.230.178:82/gslb/zbdq5.m3u8?id=gztywq$LR•IPV4•6『线路3』 @@ -1091,11 +1097,11 @@ NewTV精品体育,http://dl.wifi942.com:66/jsyd/jsyd.php?id=GITV-JS-65$LR•IPV4 弈坛春秋,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://101.43.145.141:12002/itv/1000000004000011651.m3u8?cdn=ystenlive$LR•IPV4•5『线路1』 -纯享4K,https://live.264788.xyz/channel/chunxiang4k?streamid=c162e99191441b46592808f7f1afe8b0&livekey=01WgOR41rriMmMkzNsd0UoaxJRwetZdxIvtVk$LR•IPV4•5『线路2』 -纯享4K,https://live.264788.xyz/channel/chunxiang4k?streamid=a12e69928ae928860407d7ec7bfe4ac8&livekey=01WgOR41rriMmMkzNsd0UoaxJRwetZdxIvtVk$LR•IPV4•5『线路3』 -纯享4K,http://home.wwang.pw:35455/itv/1000000004000011651.m3u8?cdn=ystenlive$LR•IPV4•5『线路4』 -纯享4K,http://39.134.115.163:8080/PLTV/88888910/224/3221225786/index.m3u8$LR•IPV4•5『线路5』 +纯享4K,http://39.134.115.163:8080/PLTV/88888910/224/3221225786/index.m3u8$LR•IPV4•5『线路1』 +纯享4K,http://101.43.145.141:12002/itv/1000000004000011651.m3u8?cdn=ystenlive$LR•IPV4•5『线路2』 +纯享4K,https://live.264788.xyz/channel/chunxiang4k?streamid=c162e99191441b46592808f7f1afe8b0&livekey=01WgOR41rriMmMkzNsd0UoaxJRwetZdxIvtVk$LR•IPV4•5『线路3』 +纯享4K,https://live.264788.xyz/channel/chunxiang4k?streamid=a12e69928ae928860407d7ec7bfe4ac8&livekey=01WgOR41rriMmMkzNsd0UoaxJRwetZdxIvtVk$LR•IPV4•5『线路4』 +纯享4K,http://home.wwang.pw:35455/itv/1000000004000011651.m3u8?cdn=ystenlive$LR•IPV4•5『线路5』 安徽,#genre# 滁州新闻综合频道,http://183.167.193.45:1935/live/cztvzh/playlist.m3u8$LR•IPV4 @@ -1123,19 +1129,19 @@ NewTV精品体育,http://dl.wifi942.com:66/jsyd/jsyd.php?id=GITV-JS-65$LR•IPV4 南宁影视娱乐,http://hls.nntv.cn/nnlive/YSYL_244.m3u8$LR•IPV4 河北,#genre# -邢台综合,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』 -河北都市,https://radio.pull.hebtv.com/live/hebnczx.m3u8$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://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』 +河北都市,http://1.94.31.214/php/hebei.php?id=hbds$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』 鹿泉一套,http://hblq.chinashadt.com:2036/live/stream:luquan1.stream/playlist.m3u8$LR•IPV4 -河北经济,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://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://hblq.chinashadt.com:2036/live/stream:luquan2.stream/playlist.m3u8$LR•IPV4 内蒙古,#genre# @@ -1160,10 +1166,10 @@ NewTV精品体育,http://dl.wifi942.com:66/jsyd/jsyd.php?id=GITV-JS-65$LR•IPV4 江苏教育,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 -南京教科,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』 +南京教科,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 苏州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』 @@ -1258,22 +1264,22 @@ NewTV精品体育,http://dl.wifi942.com:66/jsyd/jsyd.php?id=GITV-JS-65$LR•IPV4 浙江民生,https://t.freetv.fun/live/zhe-jiang-min-sheng-4.m3u8$LR•IPV4•37『线路36』 浙江民生,https://stream1.freetv.fun/zhe-jiang-min-sheng-xiu-xian-5.m3u8$LR•IPV4•37『线路37』 浙江新闻,https://ali-m-l.cztv.com/channels/lantian/channel007/1080p.m3u8$LR•IPV4•34『线路1』 -浙江新闻,https://ali-m-l.cztv.com/channels/lantian/channel007/1080p.m3u8?$LR•IPV4•34『线路2』 -浙江新闻,http://ali-m-l.cztv.com/channels/lantian/channel007/720p.m3u8$LR•IPV4•34『线路3』 -浙江新闻,https://stream1.freetv.fun/zhe-jiang-xin-wen-11.m3u8$LR•IPV4•34『线路4』 -浙江新闻,http://ali-xwl.cztv.com/live/channel07720Plxw.m3u8$LR•IPV4•34『线路5』 -浙江新闻,https://stream1.freetv.fun/zhe-jiang-xin-wen-6.m3u8$LR•IPV4•34『线路6』 -浙江新闻,https://stream1.freetv.fun/zhe-jiang-xin-wen-4.m3u8$LR•IPV4•34『线路7』 -浙江新闻,https://stream1.freetv.fun/zhe-jiang-xin-wen-3.m3u8$LR•IPV4•34『线路8』 -浙江新闻,https://stream1.freetv.fun/zhe-jiang-xin-wen-1.m3u8$LR•IPV4•34『线路9』 -浙江新闻,https://t.freetv.fun/live/zhe-jiang-xin-wen-2.m3u8$LR•IPV4•34『线路10』 -浙江新闻,https://stream1.freetv.fun/zhe-jiang-xin-wen-2.m3u8$LR•IPV4•34『线路11』 -浙江新闻,https://t.freetv.fun/live/zhe-jiang-xin-wen-3.m3u8$LR•IPV4•34『线路12』 -浙江新闻,http://ali-xwl.cztv.com/live/channel071080Plxw.m3u8$LR•IPV4•34『线路13』 -浙江新闻,https://ali-m-l.cztv.com/channels/lantian/channel07/720p.m3u8$LR•IPV4•34『线路14』 -浙江新闻,https://stream1.freetv.fun/7fa07158e038a9bae3747a0cb9f8e8ff1aaba32669d28d99a498716f16569c1d.m3u8$LR•IPV4•34『线路15』 -浙江新闻,https://stream1.freetv.fun/zhe-jiang-xin-wen-9.m3u8$LR•IPV4•34『线路16』 -浙江新闻,https://stream1.freetv.fun/zhe-jiang-xin-wen-7.m3u8$LR•IPV4•34『线路17』 +浙江新闻,http://ali-m-l.cztv.com/channels/lantian/channel007/720p.m3u8$LR•IPV4•34『线路2』 +浙江新闻,https://stream1.freetv.fun/zhe-jiang-xin-wen-11.m3u8$LR•IPV4•34『线路3』 +浙江新闻,http://ali-xwl.cztv.com/live/channel07720Plxw.m3u8$LR•IPV4•34『线路4』 +浙江新闻,https://stream1.freetv.fun/zhe-jiang-xin-wen-6.m3u8$LR•IPV4•34『线路5』 +浙江新闻,https://stream1.freetv.fun/zhe-jiang-xin-wen-4.m3u8$LR•IPV4•34『线路6』 +浙江新闻,https://stream1.freetv.fun/zhe-jiang-xin-wen-3.m3u8$LR•IPV4•34『线路7』 +浙江新闻,https://stream1.freetv.fun/zhe-jiang-xin-wen-1.m3u8$LR•IPV4•34『线路8』 +浙江新闻,https://t.freetv.fun/live/zhe-jiang-xin-wen-2.m3u8$LR•IPV4•34『线路9』 +浙江新闻,https://stream1.freetv.fun/zhe-jiang-xin-wen-2.m3u8$LR•IPV4•34『线路10』 +浙江新闻,https://t.freetv.fun/live/zhe-jiang-xin-wen-3.m3u8$LR•IPV4•34『线路11』 +浙江新闻,http://ali-xwl.cztv.com/live/channel071080Plxw.m3u8$LR•IPV4•34『线路12』 +浙江新闻,https://ali-m-l.cztv.com/channels/lantian/channel07/720p.m3u8$LR•IPV4•34『线路13』 +浙江新闻,https://stream1.freetv.fun/7fa07158e038a9bae3747a0cb9f8e8ff1aaba32669d28d99a498716f16569c1d.m3u8$LR•IPV4•34『线路14』 +浙江新闻,https://stream1.freetv.fun/zhe-jiang-xin-wen-9.m3u8$LR•IPV4•34『线路15』 +浙江新闻,https://stream1.freetv.fun/zhe-jiang-xin-wen-7.m3u8$LR•IPV4•34『线路16』 +浙江新闻,https://ali-m-l.cztv.com/channels/lantian/channel007/1080p.m3u8?$LR•IPV4•34『线路17』 浙江新闻,http://ali-m-l.cztv.com/channels/lantian/channel007/1080p.m3u8?zzhed$LR•IPV4•34『线路18』 浙江新闻,http://ali-m-l.cztv.com/channels/lantian/channel007/1080p.m3u8$LR•IPV4•34『线路19』 浙江新闻,https://t.freetv.fun/live/zhe-jiang-xin-wen-1.m3u8$LR•IPV4•34『线路20』 @@ -1354,9 +1360,9 @@ NewTV精品体育,http://dl.wifi942.com:66/jsyd/jsyd.php?id=GITV-JS-65$LR•IPV4 浙江教科,http://ali-xwl.cztv.com/live/channel041080Plxw.m3u8$LR•IPV4•10『线路8』 浙江教科,http://ali-xwl.cztv.com/live/channel04720Plxw.m3u8$LR•IPV4•10『线路9』 浙江教科,http://ali-m-l.cztv.com/channels/lantian/channel04/1080p.m3u8$LR•IPV4•10『线路10』 -浙江经济,http://live.hznet.tv:1935/live/live2/500K/tzwj_video.m3u8?shandd$LR•IPV4•3『线路1』 -浙江经济,http://live.hznet.tv:1935/live/live2/500k/tzwj_video.m3u8$LR•IPV4•3『线路2』 -浙江经济,http://222.179.155.21:1935/ch0.m3u8$LR•IPV4•3『线路3』 +浙江经济,http://222.179.155.21:1935/ch0.m3u8$LR•IPV4•3『线路1』 +浙江经济,http://live.hznet.tv:1935/live/live2/500K/tzwj_video.m3u8?shandd$LR•IPV4•3『线路2』 +浙江经济,http://live.hznet.tv:1935/live/live2/500k/tzwj_video.m3u8$LR•IPV4•3『线路3』 之江纪录,https://ali-m-l.cztv.com/channels/lantian/channel012/1080p.m3u8$LR•IPV4•6『线路1』 之江纪录,http://ali-m-l.cztv.com/channels/lantian/channel12/1080p.m3u8$LR•IPV4•6『线路2』 之江纪录,http://zwebl02.cztv.com/live/channel121080P.m3u8?auth_key=2524708799-0-0-c33efdd495bcdd2ddc42e7c408405037$LR•IPV4•6『线路3』 @@ -1609,9 +1615,9 @@ NewTV精品体育,http://dl.wifi942.com:66/jsyd/jsyd.php?id=GITV-JS-65$LR•IPV4 余姚综合,http://l.cztvcloud.com/channels/lantian/SXyuyao1/720p.m3u8?zzhed$LR•IPV4•6『线路4』 余姚综合,http://l.cztvcloud.com/channels/lantian/SXyuyao1/720p.m3u8?cWlkPSZzPTg3OWMwYmMyZDMzYTFhZGY3NDQxMjgyYTg1MmUzNTY0JmVzPTE3MDY2Nzc4NzMmdXVpZD0yMjdiY2MzNGNiNGY0MThlYjRiY2IxYzcwNmZjODNkMS02NzQ3NDY2NyZ2PTImYXM9MCZjZG5leF9pZD10eF9waG9uZV9saXZl$LR•IPV4•6『线路5』 余姚综合,http://l.cztvcloud.com/channels/lantian/SXyuyao1/720p.m3u8?%E5%85%B3%E6%B3%A8%E5%BE%AE%E4%BF%A1%E5%85%AC%E4%BC%97%E5%8F%B7[%E6%99%B4%E5%9B%AD]$LR•IPV4•6『线路6』 -余姚姚江文化,http://l.cztvcloud.com/channels/lantian/SXyuyao3/720p.m3u8?zzhed$LR•IPV4•4『线路1』 +余姚姚江文化,https://l.cztvcloud.com/channels/lantian/SXyuyao3/720p.m3u8$LR•IPV4•4『线路1』 余姚姚江文化,http://l.cztvcloud.com/channels/lantian/SXyuyao3/720p.m3u8zzhed$LR•IPV4•4『线路2』 -余姚姚江文化,https://l.cztvcloud.com/channels/lantian/SXyuyao3/720p.m3u8$LR•IPV4•4『线路3』 +余姚姚江文化,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』 @@ -1801,8 +1807,8 @@ NewTV精品体育,http://dl.wifi942.com:66/jsyd/jsyd.php?id=GITV-JS-65$LR•IPV4 长沙新闻综合,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 -长沙政法,http://phonetx.qing.mgtv.com/nn_live/nn_x64/8.8&/CSZFMPP360.m3u8$LR•IPV4•2『线路1』 -长沙政法,http://35848.hlsplay.aodianyun.com/guangdianyun_35848/tv_channel_348.m3u8$LR•IPV4•2『线路2』 +长沙政法,http://35848.hlsplay.aodianyun.com/guangdianyun_35848/tv_channel_348.m3u8$LR•IPV4•2『线路1』 +长沙政法,http://phonetx.qing.mgtv.com/nn_live/nn_x64/8.8&/CSZFMPP360.m3u8$LR•IPV4•2『线路2』 长沙女性,http://35848.hlsplay.aodianyun.com/guangdianyun_35848/tv_channel_349.m3u8$LR•IPV4 衡阳新闻综合,https://liveplay-srs.voc.com.cn/hls/tv/183_554704.m3u8$LR•IPV4 @@ -2557,12 +2563,12 @@ NewTV精品体育,http://dl.wifi942.com:66/jsyd/jsyd.php?id=GITV-JS-65$LR•IPV4 江门侨乡生活,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://125.89.163.44:8888/udp/239.77.0.202:5146$LR•IPV4•4『线路3』 江门侨乡生活,http://120.77.205.62:8087/rtp/239.77.0.202:5146$LR•IPV4•4『线路4』 -河源综合,http://125.89.163.44:8888/udp/239.253.43.213:5146$LR•IPV4•6『线路1』 -河源综合,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=8947&tk=a0c4f6cfaba3$LR•IPV4•6『线路2』 -河源综合,http://120.234.5.28:6000/udp/239.21.0.48:3532$LR•IPV4•6『线路3』 -河源综合,https://tmpstream.hyrtv.cn/xwzh/sd/live.m3u8?_upt=f767206b1671099007$LR•IPV4•6『线路4』 -河源综合,http://tmpstream.hyrtv.cn/xwzh/sd/live.m3u8$LR•IPV4•6『线路5』 -河源综合,https://tmpstream.hyrtv.cn/xwzh/sd/live.m3u8$LR•IPV4•6『线路6』 +河源综合,https://tmpstream.hyrtv.cn/xwzh/sd/live.m3u8$LR•IPV4•6『线路1』 +河源综合,http://125.89.163.44:8888/udp/239.253.43.213:5146$LR•IPV4•6『线路2』 +河源综合,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=8947&tk=a0c4f6cfaba3$LR•IPV4•6『线路3』 +河源综合,http://120.234.5.28:6000/udp/239.21.0.48:3532$LR•IPV4•6『线路4』 +河源综合,https://tmpstream.hyrtv.cn/xwzh/sd/live.m3u8?_upt=f767206b1671099007$LR•IPV4•6『线路5』 +河源综合,http://tmpstream.hyrtv.cn/xwzh/sd/live.m3u8$LR•IPV4•6『线路6』 河源公共,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=5263&tk=a0c4f6cfaba3$LR•IPV4•6『线路1』 河源公共,http://120.234.5.28:6000/udp/239.21.0.49:3536$LR•IPV4•6『线路2』 河源公共,http://1b6467f415.iok.la:9931/tsfile/live/1079_1.m3u8$LR•IPV4•6『线路3』 @@ -2743,6 +2749,7 @@ NewTV精品体育,http://dl.wifi942.com:66/jsyd/jsyd.php?id=GITV-JS-65$LR•IPV4 南国都市,http://tencentplay.gztv.com/live/nanguodushi.m3u8?txSecret=140110ae3d6c936a77f94c4f4d85b0d3&txTime=18d57929bd4$LR•IPV4•8『线路8』 上海,#genre# +上海新闻,http://t.061899.xyz/tl/tl.php?id=shxwzh$LR•IPV4 上海都市,http://api3.52tb.xyz/info?id=372&token=20221127jxwhhemby$LR•IPV4•25『线路1』 上海都市,https://hls-gateway.vpstv.net/streams/708849.m3u8$LR•IPV4•25『线路2』 上海都市,https://zby.130519.xyz/PLTV/11/224/3221225749/index.m3u8$LR•IPV4•25『线路3』 @@ -2768,84 +2775,85 @@ NewTV精品体育,http://dl.wifi942.com:66/jsyd/jsyd.php?id=GITV-JS-65$LR•IPV4 上海都市,https://stream1.freetv.fun/ipv6-shang-hai-du-shi-10.m3u8$LR•IPV4•25『线路23』 上海都市,https://stream1.freetv.fun/shang-hai-du-shi-7.m3u8$LR•IPV4•25『线路24』 上海都市,https://stream1.freetv.fun/ipv6-shang-hai-du-shi-6.m3u8$LR•IPV4•25『线路25』 -上海外语,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=2446&tk=e640d0a1bf70$LR•IPV4•7『线路1』 -上海外语,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=1734&tk=b53028476470$LR•IPV4•7『线路2』 -上海外语,http://111.22.153.159:35455/itv/2000000002000000001.m3u8?cdn=hnbblive$LR•IPV4•7『线路3』 -上海外语,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=6608&tk=e503191f8e20$LR•IPV4•7『线路4』 -上海外语,http://150.158.112.123/公众号~玉玉软件库/mg.php?id=shics$LR•IPV4•7『线路5』 -上海外语,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=0017&tk=a0c4f6cfaba3$LR•IPV4•7『线路6』 -上海外语,http://t.061899.xyz/tl/tl.php?id=shics$LR•IPV4•7『线路7』 -五星体育,http://101.35.240.114:88/live.php?id=五星体育$LR•IPV4•41『线路1』 -五星体育,https://stream1.freetv.fun/wu-xing-ti-yu-5.m3u8$LR•IPV4•41『线路2』 -五星体育,https://stream1.freetv.fun/wu-xing-ti-yu-3.m3u8$LR•IPV4•41『线路3』 -五星体育,https://stream1.freetv.fun/ipv6-wu-xing-ti-yu-6.m3u8$LR•IPV4•41『线路4』 -五星体育,https://stream1.freetv.fun/wu-xing-ti-yu-14.m3u8$LR•IPV4•41『线路5』 -五星体育,https://other.ottiptv.cc/wxty.m3u8$LR•IPV4•41『线路6』 -五星体育,https://stream1.freetv.fun/ipv6-wu-xing-ti-yu-2.m3u8$LR•IPV4•41『线路7』 -五星体育,https://stream1.freetv.fun/ipv6-wu-xing-ti-yu-1.m3u8$LR•IPV4•41『线路8』 -五星体育,https://stream1.freetv.fun/ipv6-wu-xing-ti-yu-3.m3u8$LR•IPV4•41『线路9』 -五星体育,https://stream1.freetv.fun/wu-xing-ti-yu-9.m3u8$LR•IPV4•41『线路10』 -五星体育,https://stream1.freetv.fun/wu-xing-ti-yu-4.m3u8$LR•IPV4•41『线路11』 -五星体育,https://stream1.freetv.fun/wu-xing-ti-yu-7.m3u8$LR•IPV4•41『线路12』 -五星体育,http://home.wwang.pw:35455/itv/5000000010000017540.m3u8?cdn=bestzb$LR•IPV4•41『线路13』 -五星体育,https://stream1.freetv.fun/wu-xing-ti-yu-1.m3u8$LR•IPV4•41『线路14』 -五星体育,http://bp-livetytv.bestv.cn/ch/bestvwxty.m3u8$LR•IPV4•41『线路15』 -五星体育,https://hls-gateway.vpstv.net/streams/636980.m3u8$LR•IPV4•41『线路16』 -五星体育,https://stream1.freetv.fun/ipv6-wu-xing-ti-yu-14.m3u8$LR•IPV4•41『线路17』 -五星体育,http://36.105.100.208:35455/itv/5000000010000017540.m3u8?cdn=bestzb$LR•IPV4•41『线路18』 -五星体育,https://t.freetv.fun/live/wu-xing-ti-yu-4.m3u8$LR•IPV4•41『线路19』 -五星体育,https://stream1.freetv.fun/wu-xing-ti-yu-6.m3u8$LR•IPV4•41『线路20』 -五星体育,https://stream1.freetv.fun/wu-xing-ti-yu-13.m3u8$LR•IPV4•41『线路21』 -五星体育,https://stream1.freetv.fun/ipv6-wu-xing-ti-yu-7.m3u8$LR•IPV4•41『线路22』 -五星体育,https://stream1.freetv.fun/wu-xing-ti-yu-12.m3u8$LR•IPV4•41『线路23』 -五星体育,https://stream1.freetv.fun/wu-xing-ti-yu-15.m3u8$LR•IPV4•41『线路24』 -五星体育,http://63.141.230.178:82/gslb/zbdq5.m3u8?id=wxtyhd$LR•IPV4•41『线路25』 -五星体育,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=4759&tk=7d4ad8f156e3$LR•IPV4•41『线路26』 -五星体育,https://stream1.freetv.fun/wu-xing-ti-yu-10.m3u8$LR•IPV4•41『线路27』 -五星体育,https://migu.188766.xyz/?migutoken=ed5a02a3b87f3dcc808d4b733daf5cf9&id=%E4%BA%94%E6%98%9F%E4%BD%93%E8%82%B2&pp=1$LR•IPV4•41『线路28』 -五星体育,http://3501776.xyz:35455/itv/5000000010000017540.m3u8?cdn=bestzb$LR•IPV4•41『线路29』 -五星体育,https://stream1.freetv.fun/wu-xing-ti-yu-2.m3u8$LR•IPV4•41『线路30』 -五星体育,https://t.freetv.fun/live/wu-xing-ti-yu-1.m3u8$LR•IPV4•41『线路31』 -五星体育,https://stream1.freetv.fun/wu-xing-ti-yu-8.m3u8$LR•IPV4•41『线路32』 -五星体育,https://zby.130519.xyz/PLTV/11/224/3221225732/index.m3u8$LR•IPV4•41『线路33』 -五星体育,http://live.xmcdn.com/live/57/64.m3u8$LR•IPV4•41『线路34』 -五星体育,https://stream1.freetv.fun/wu-xing-ti-yu-11.m3u8$LR•IPV4•41『线路35』 -五星体育,http://8.138.7.223/tv/shtv.php?id=wxty$LR•IPV4•41『线路36』 -五星体育,https://stream1.freetv.fun/ipv6-wu-xing-ti-yu-10.m3u8$LR•IPV4•41『线路37』 -五星体育,https://stream1.freetv.fun/wu-xing-ti-yu-13.ctv$LR•IPV4•41『线路38』 -五星体育,http://api2.52tb.xyz/info?id=375&token=20230120rdbtgv$LR•IPV4•41『线路39』 -五星体育,https://stream1.freetv.fun/ipv6-wu-xing-ti-yu-8.m3u8$LR•IPV4•41『线路40』 -五星体育,http://223.110.245.147/ott.js.chinamobile.com/PLTV/3/224/3221226799/index.m3u8$LR•IPV4•41『线路41』 -东方影视,https://www.freetv.top/migu/617290047.m3u8?migutoken=86c02ad0875d5cc49d77bcc8bdb628f2c9d508ffc323b964a03c8f92dde4afafa0345cf5a8fefbdf915c748e3d11c6c18e27ae1e21a609cec31a45e6c437db26a7a243625f9cf35c271171a22c$LR•IPV4•31『线路1』 -东方影视,https://zby.130519.xyz/PLTV/11/224/3221225744/index.m3u8$LR•IPV4•31『线路2』 -东方影视,https://stream1.freetv.fun/dong-fang-ying-shi-4.ctv$LR•IPV4•31『线路3』 -东方影视,https://stream1.freetv.fun/dong-fang-ying-shi-6.ctv$LR•IPV4•31『线路4』 -东方影视,https://stream1.freetv.fun/dong-fang-ying-shi-2.m3u8$LR•IPV4•31『线路5』 -东方影视,https://stream1.freetv.fun/dong-fang-ying-shi-1.m3u8$LR•IPV4•31『线路6』 -东方影视,https://stream1.freetv.fun/dong-fang-ying-shi-6.m3u8$LR•IPV4•31『线路7』 -东方影视,https://stream1.freetv.fun/ipv6-dong-fang-ying-shi-13.m3u8$LR•IPV4•31『线路8』 -东方影视,http://111.228.4.117:6789/migu720p.php?id=617290047$LR•IPV4•31『线路9』 -东方影视,https://stream1.freetv.fun/dong-fang-ying-shi-10.m3u8$LR•IPV4•31『线路10』 -东方影视,https://stream1.freetv.fun/dong-fang-ying-shi-7.m3u8$LR•IPV4•31『线路11』 -东方影视,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=2690&tk=e640d0a1bf70$LR•IPV4•31『线路12』 -东方影视,https://stream1.freetv.fun/dong-fang-ying-shi-13.m3u8$LR•IPV4•31『线路13』 -东方影视,https://stream1.freetv.fun/ipv6-dong-fang-ying-shi-5.m3u8$LR•IPV4•31『线路14』 -东方影视,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=1407&tk=e503191f8e20$LR•IPV4•31『线路15』 -东方影视,https://stream1.freetv.fun/ipv6-dong-fang-ying-shi-6.m3u8$LR•IPV4•31『线路16』 -东方影视,https://stream1.freetv.fun/dong-fang-ying-shi-12.m3u8$LR•IPV4•31『线路17』 -东方影视,https://stream1.freetv.fun/ipv6-dong-fang-ying-shi-4.m3u8$LR•IPV4•31『线路18』 -东方影视,https://stream1.freetv.fun/ipv6-dong-fang-ying-shi-9.m3u8$LR•IPV4•31『线路19』 -东方影视,http://111.22.153.159:35455/itv/5000000010000032212.m3u8?cdn=bestzb$LR•IPV4•31『线路20』 -东方影视,https://stream1.freetv.fun/ipv6-dong-fang-ying-shi-7.m3u8$LR•IPV4•31『线路21』 -东方影视,http://150.158.112.123/公众号~玉玉软件库/mg.php?id=dfys$LR•IPV4•31『线路22』 -东方影视,http://hlsztemgsplive.miguvideo.com:8080/wd_r4/dfl/dianshijuhd/1200/index.m3u8?msisdn=2be6b2ec9fcf10d2c2457e2c710e172c&mdspid=&spid=699212&netType=0&sid=5500002274&pid=2028597139×tamp=20260717060205&Channel_ID=0116_2600034600-99000-201600010010028&ProgramID=617290047&ParentNodeID=-99&assertID=5500002274&client_ip=171.8.79.254&SecurityKey=20260717060205&promotionId=&mvid=5100001715&mcid=500020&playurlVersion=WX-A1-9.6.1.6-SNAPSHOT&userid=&jmhm=&videocodec=h264&appCode=miguvideo_android&bean=mgspad&tid=android&conFee=0&encrypt=c4b980e210525d128eccf975001aa253&sv=10004&ct=android$LR•IPV4•31『线路23』 -东方影视,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=6090&tk=b53028476470$LR•IPV4•31『线路24』 -东方影视,https://stream1.freetv.fun/ipv6-dong-fang-ying-shi-3.m3u8$LR•IPV4•31『线路25』 -东方影视,https://stream1.freetv.fun/ipv6-dong-fang-ying-shi-2.m3u8$LR•IPV4•31『线路26』 -东方影视,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=1285&tk=2aca1ad9a849$LR•IPV4•31『线路27』 -东方影视,https://stream1.freetv.fun/dong-fang-ying-shi-8.m3u8$LR•IPV4•31『线路28』 -东方影视,https://stream1.freetv.fun/ipv6-dong-fang-ying-shi-8.m3u8$LR•IPV4•31『线路29』 -东方影视,http://t.061899.xyz/tl/tl.php?id=dfys$LR•IPV4•31『线路30』 +上海外语,http://t.061899.xyz/tl/tl.php?id=shics$LR•IPV4•7『线路1』 +上海外语,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=2446&tk=e640d0a1bf70$LR•IPV4•7『线路2』 +上海外语,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=1734&tk=b53028476470$LR•IPV4•7『线路3』 +上海外语,http://111.22.153.159:35455/itv/2000000002000000001.m3u8?cdn=hnbblive$LR•IPV4•7『线路4』 +上海外语,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=6608&tk=e503191f8e20$LR•IPV4•7『线路5』 +上海外语,http://150.158.112.123/公众号~玉玉软件库/mg.php?id=shics$LR•IPV4•7『线路6』 +上海外语,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=0017&tk=a0c4f6cfaba3$LR•IPV4•7『线路7』 +七彩戏剧,http://t.061899.xyz/tl/tl.php?id=qcxj$LR•IPV4 +五星体育,http://223.110.245.147/ott.js.chinamobile.com/PLTV/3/224/3221226799/index.m3u8$LR•IPV4•41『线路1』 +五星体育,http://101.35.240.114:88/live.php?id=五星体育$LR•IPV4•41『线路2』 +五星体育,https://stream1.freetv.fun/wu-xing-ti-yu-5.m3u8$LR•IPV4•41『线路3』 +五星体育,https://stream1.freetv.fun/wu-xing-ti-yu-3.m3u8$LR•IPV4•41『线路4』 +五星体育,https://stream1.freetv.fun/ipv6-wu-xing-ti-yu-6.m3u8$LR•IPV4•41『线路5』 +五星体育,https://stream1.freetv.fun/wu-xing-ti-yu-14.m3u8$LR•IPV4•41『线路6』 +五星体育,https://other.ottiptv.cc/wxty.m3u8$LR•IPV4•41『线路7』 +五星体育,https://stream1.freetv.fun/ipv6-wu-xing-ti-yu-2.m3u8$LR•IPV4•41『线路8』 +五星体育,https://stream1.freetv.fun/ipv6-wu-xing-ti-yu-1.m3u8$LR•IPV4•41『线路9』 +五星体育,https://stream1.freetv.fun/ipv6-wu-xing-ti-yu-3.m3u8$LR•IPV4•41『线路10』 +五星体育,https://stream1.freetv.fun/wu-xing-ti-yu-9.m3u8$LR•IPV4•41『线路11』 +五星体育,https://stream1.freetv.fun/wu-xing-ti-yu-4.m3u8$LR•IPV4•41『线路12』 +五星体育,https://stream1.freetv.fun/wu-xing-ti-yu-7.m3u8$LR•IPV4•41『线路13』 +五星体育,http://home.wwang.pw:35455/itv/5000000010000017540.m3u8?cdn=bestzb$LR•IPV4•41『线路14』 +五星体育,https://stream1.freetv.fun/wu-xing-ti-yu-1.m3u8$LR•IPV4•41『线路15』 +五星体育,http://bp-livetytv.bestv.cn/ch/bestvwxty.m3u8$LR•IPV4•41『线路16』 +五星体育,https://hls-gateway.vpstv.net/streams/636980.m3u8$LR•IPV4•41『线路17』 +五星体育,https://stream1.freetv.fun/ipv6-wu-xing-ti-yu-14.m3u8$LR•IPV4•41『线路18』 +五星体育,http://36.105.100.208:35455/itv/5000000010000017540.m3u8?cdn=bestzb$LR•IPV4•41『线路19』 +五星体育,https://t.freetv.fun/live/wu-xing-ti-yu-4.m3u8$LR•IPV4•41『线路20』 +五星体育,https://stream1.freetv.fun/wu-xing-ti-yu-6.m3u8$LR•IPV4•41『线路21』 +五星体育,https://stream1.freetv.fun/wu-xing-ti-yu-13.m3u8$LR•IPV4•41『线路22』 +五星体育,https://stream1.freetv.fun/ipv6-wu-xing-ti-yu-7.m3u8$LR•IPV4•41『线路23』 +五星体育,https://stream1.freetv.fun/wu-xing-ti-yu-12.m3u8$LR•IPV4•41『线路24』 +五星体育,https://stream1.freetv.fun/wu-xing-ti-yu-15.m3u8$LR•IPV4•41『线路25』 +五星体育,http://63.141.230.178:82/gslb/zbdq5.m3u8?id=wxtyhd$LR•IPV4•41『线路26』 +五星体育,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=4759&tk=7d4ad8f156e3$LR•IPV4•41『线路27』 +五星体育,https://stream1.freetv.fun/wu-xing-ti-yu-10.m3u8$LR•IPV4•41『线路28』 +五星体育,https://migu.188766.xyz/?migutoken=ed5a02a3b87f3dcc808d4b733daf5cf9&id=%E4%BA%94%E6%98%9F%E4%BD%93%E8%82%B2&pp=1$LR•IPV4•41『线路29』 +五星体育,http://3501776.xyz:35455/itv/5000000010000017540.m3u8?cdn=bestzb$LR•IPV4•41『线路30』 +五星体育,https://stream1.freetv.fun/wu-xing-ti-yu-2.m3u8$LR•IPV4•41『线路31』 +五星体育,https://t.freetv.fun/live/wu-xing-ti-yu-1.m3u8$LR•IPV4•41『线路32』 +五星体育,https://stream1.freetv.fun/wu-xing-ti-yu-8.m3u8$LR•IPV4•41『线路33』 +五星体育,https://zby.130519.xyz/PLTV/11/224/3221225732/index.m3u8$LR•IPV4•41『线路34』 +五星体育,http://live.xmcdn.com/live/57/64.m3u8$LR•IPV4•41『线路35』 +五星体育,https://stream1.freetv.fun/wu-xing-ti-yu-11.m3u8$LR•IPV4•41『线路36』 +五星体育,http://8.138.7.223/tv/shtv.php?id=wxty$LR•IPV4•41『线路37』 +五星体育,https://stream1.freetv.fun/ipv6-wu-xing-ti-yu-10.m3u8$LR•IPV4•41『线路38』 +五星体育,https://stream1.freetv.fun/wu-xing-ti-yu-13.ctv$LR•IPV4•41『线路39』 +五星体育,http://api2.52tb.xyz/info?id=375&token=20230120rdbtgv$LR•IPV4•41『线路40』 +五星体育,https://stream1.freetv.fun/ipv6-wu-xing-ti-yu-8.m3u8$LR•IPV4•41『线路41』 +东方影视,http://t.061899.xyz/tl/tl.php?id=dfys$LR•IPV4•31『线路1』 +东方影视,https://www.freetv.top/migu/617290047.m3u8?migutoken=86c02ad0875d5cc49d77bcc8bdb628f2c9d508ffc323b964a03c8f92dde4afafa0345cf5a8fefbdf915c748e3d11c6c18e27ae1e21a609cec31a45e6c437db26a7a243625f9cf35c271171a22c$LR•IPV4•31『线路2』 +东方影视,https://zby.130519.xyz/PLTV/11/224/3221225744/index.m3u8$LR•IPV4•31『线路3』 +东方影视,https://stream1.freetv.fun/dong-fang-ying-shi-4.ctv$LR•IPV4•31『线路4』 +东方影视,https://stream1.freetv.fun/dong-fang-ying-shi-6.ctv$LR•IPV4•31『线路5』 +东方影视,https://stream1.freetv.fun/dong-fang-ying-shi-2.m3u8$LR•IPV4•31『线路6』 +东方影视,https://stream1.freetv.fun/dong-fang-ying-shi-1.m3u8$LR•IPV4•31『线路7』 +东方影视,https://stream1.freetv.fun/dong-fang-ying-shi-6.m3u8$LR•IPV4•31『线路8』 +东方影视,https://stream1.freetv.fun/ipv6-dong-fang-ying-shi-13.m3u8$LR•IPV4•31『线路9』 +东方影视,http://111.228.4.117:6789/migu720p.php?id=617290047$LR•IPV4•31『线路10』 +东方影视,https://stream1.freetv.fun/dong-fang-ying-shi-10.m3u8$LR•IPV4•31『线路11』 +东方影视,https://stream1.freetv.fun/dong-fang-ying-shi-7.m3u8$LR•IPV4•31『线路12』 +东方影视,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=2690&tk=e640d0a1bf70$LR•IPV4•31『线路13』 +东方影视,https://stream1.freetv.fun/dong-fang-ying-shi-13.m3u8$LR•IPV4•31『线路14』 +东方影视,https://stream1.freetv.fun/ipv6-dong-fang-ying-shi-5.m3u8$LR•IPV4•31『线路15』 +东方影视,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=1407&tk=e503191f8e20$LR•IPV4•31『线路16』 +东方影视,https://stream1.freetv.fun/ipv6-dong-fang-ying-shi-6.m3u8$LR•IPV4•31『线路17』 +东方影视,https://stream1.freetv.fun/dong-fang-ying-shi-12.m3u8$LR•IPV4•31『线路18』 +东方影视,https://stream1.freetv.fun/ipv6-dong-fang-ying-shi-4.m3u8$LR•IPV4•31『线路19』 +东方影视,https://stream1.freetv.fun/ipv6-dong-fang-ying-shi-9.m3u8$LR•IPV4•31『线路20』 +东方影视,http://111.22.153.159:35455/itv/5000000010000032212.m3u8?cdn=bestzb$LR•IPV4•31『线路21』 +东方影视,https://stream1.freetv.fun/ipv6-dong-fang-ying-shi-7.m3u8$LR•IPV4•31『线路22』 +东方影视,http://150.158.112.123/公众号~玉玉软件库/mg.php?id=dfys$LR•IPV4•31『线路23』 +东方影视,http://hlsztemgsplive.miguvideo.com:8080/wd_r4/dfl/dianshijuhd/1200/index.m3u8?msisdn=2be6b2ec9fcf10d2c2457e2c710e172c&mdspid=&spid=699212&netType=0&sid=5500002274&pid=2028597139×tamp=20260717060205&Channel_ID=0116_2600034600-99000-201600010010028&ProgramID=617290047&ParentNodeID=-99&assertID=5500002274&client_ip=171.8.79.254&SecurityKey=20260717060205&promotionId=&mvid=5100001715&mcid=500020&playurlVersion=WX-A1-9.6.1.6-SNAPSHOT&userid=&jmhm=&videocodec=h264&appCode=miguvideo_android&bean=mgspad&tid=android&conFee=0&encrypt=c4b980e210525d128eccf975001aa253&sv=10004&ct=android$LR•IPV4•31『线路24』 +东方影视,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=6090&tk=b53028476470$LR•IPV4•31『线路25』 +东方影视,https://stream1.freetv.fun/ipv6-dong-fang-ying-shi-3.m3u8$LR•IPV4•31『线路26』 +东方影视,https://stream1.freetv.fun/ipv6-dong-fang-ying-shi-2.m3u8$LR•IPV4•31『线路27』 +东方影视,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=1285&tk=2aca1ad9a849$LR•IPV4•31『线路28』 +东方影视,https://stream1.freetv.fun/dong-fang-ying-shi-8.m3u8$LR•IPV4•31『线路29』 +东方影视,https://stream1.freetv.fun/ipv6-dong-fang-ying-shi-8.m3u8$LR•IPV4•31『线路30』 东方影视,http://43.251.226.89:8080/play/58.m3u8$LR•IPV4•31『线路31』 东方财经,http://124.248.69.76:26781/douyu/9548279$LR•IPV4•10『线路1』 东方财经,http://wouu.net:9977/udp/239.93.1.165:5140$LR•IPV4•10『线路2』 @@ -2857,41 +2865,42 @@ NewTV精品体育,http://dl.wifi942.com:66/jsyd/jsyd.php?id=GITV-JS-65$LR•IPV4 东方财经,http://111.22.153.159:35455/itv/5000000007000010003.m3u8?cdn=bestzb$LR•IPV4•10『线路8』 东方财经,http://61.133.118.228:5001/douyu/9548279$LR•IPV4•10『线路9』 东方财经,https://live.264788.xyz/channel/dongfangcaijing?streamid=a031f2386ada4bc1264edce79c80dd18&livekey=01WgOR41rriMmMkzNsd0UoaxJRwetZdxIvtVk$LR•IPV4•10『线路10』 -第一财经,https://migu.188766.xyz/?migutoken=20bb1a06124bd6ea328162fe9605882d&id=dycj&type=sz$LR•IPV4•49『线路1』 -第一财经,https://stream1.freetv.fun/ipv6-di-yi-cai-jing-6.m3u8$LR•IPV4•49『线路2』 -第一财经,http://a1live.livecdn.yicai.com/live/radio_tv.m3u8$LR•IPV4•49『线路3』 -第一财经,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=4663&tk=f6cc1e0a0e1a$LR•IPV4•49『线路4』 -第一财经,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=4640&tk=e503191f8e20$LR•IPV4•49『线路5』 -第一财经,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=7436&tk=b53028476470$LR•IPV4•49『线路6』 -第一财经,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•49『线路7』 -第一财经,https://stream1.freetv.fun/di-yi-cai-jing-3.m3u8$LR•IPV4•49『线路8』 -第一财经,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=4810&tk=23a9aca1f79f$LR•IPV4•49『线路9』 -第一财经,http://43.251.226.89:8080/play/59.m3u8$LR•IPV4•49『线路10』 -第一财经,https://www.freetv.top/migu/608780988.m3u8?migutoken=62e21890acbd9928d0be0b4eae9f5e32e1879604b785ee7ce8751d5001a9ff431d7714025aa03d48a2b190ff214e5115dcb6ba455c3d26b1db0f5b3cb49c5967429ff3b1fe8e96e87cc6146543$LR•IPV4•49『线路11』 -第一财经,https://stream1.freetv.fun/di-yi-cai-jing-6.ctv$LR•IPV4•49『线路12』 -第一财经,https://satellitepull.cnr.cn/live/wx32dycjgb/playlist.m3u8$LR•IPV4•49『线路13』 -第一财经,https://stream1.freetv.fun/di-yi-cai-jing-10.m3u8$LR•IPV4•49『线路14』 -第一财经,https://stream1.freetv.fun/ipv6-di-yi-cai-jing-3.m3u8$LR•IPV4•49『线路15』 -第一财经,https://hls-gateway.vpstv.net/streams/708851.m3u8$LR•IPV4•49『线路16』 -第一财经,https://stream1.freetv.fun/di-yi-cai-jing-9.m3u8$LR•IPV4•49『线路17』 -第一财经,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=8321&tk=e640d0a1bf70$LR•IPV4•49『线路18』 -第一财经,http://47.104.178.59:3566/608780988$LR•IPV4•49『线路19』 -第一财经,http://satellitepull.cnr.cn/live/wx32dycjgb/playlist.m3u8$LR•IPV4•49『线路20』 -第一财经,https://stream1.freetv.fun/ipv6-di-yi-cai-jing-11.m3u8$LR•IPV4•49『线路21』 -第一财经,https://mgtv.ottiptv.cc/migu/608780988.m3u8?migutoken=0c7df30d952e5d120406d3eb259cd5e26ec6aa86037008719de147cc6fbc34e877c3e3d7b9617267f35521bdddc4c5995e6fc0583816a5df1bfe19814868525e736733676761a4b2d4db618e84$LR•IPV4•49『线路22』 -第一财经,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=0917&tk=2aca1ad9a849$LR•IPV4•49『线路23』 -第一财经,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=6806&tk=a0c4f6cfaba3$LR•IPV4•49『线路24』 -第一财经,https://stream1.freetv.fun/di-yi-cai-jing-7.m3u8$LR•IPV4•49『线路25』 -第一财经,https://stream1.freetv.fun/di-yi-cai-jing-13.m3u8$LR•IPV4•49『线路26』 -第一财经,http://101.43.145.141:12002/itv/5000000010000027146.m3u8?cdn=bestzb$LR•IPV4•49『线路27』 -第一财经,http://123.113.205.253:3000/608780988$LR•IPV4•49『线路28』 -第一财经,https://zby.130519.xyz/PLTV/11/224/3221225737/index.m3u8$LR•IPV4•49『线路29』 -第一财经,http://111.228.4.117:6789/migu720p.php?id=608780988$LR•IPV4•49『线路30』 -第一财经,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=0771&tk=a0c4f6cfaba3$LR•IPV4•49『线路31』 -第一财经,http://bp-livetytv.bestv.cn/ch/bestvdycj.m3u8$LR•IPV4•49『线路32』 -第一财经,https://stream1.freetv.fun/di-yi-cai-jing-2.m3u8$LR•IPV4•49『线路33』 -第一财经,https://www.freetv.top/migu/608780988.m3u8?migutoken=94882e783c75b9369ca6a018f97fe3a3c0018f9da123958e316bb810ef22e907f0672a7d63496e5cb5041eb125b1f1ee6996ac856b0c0c9828348878b8a4101384b9a851fb1dea60a7fafeea35$LR•IPV4•49『线路34』 -第一财经,http://t.061899.xyz/tl/tl.php?id=dycj$LR•IPV4•49『线路35』 +法治天地,http://t.061899.xyz/tl/tl.php?id=fztd$LR•IPV4 +第一财经,http://t.061899.xyz/tl/tl.php?id=dycj$LR•IPV4•49『线路1』 +第一财经,https://migu.188766.xyz/?migutoken=20bb1a06124bd6ea328162fe9605882d&id=dycj&type=sz$LR•IPV4•49『线路2』 +第一财经,https://stream1.freetv.fun/ipv6-di-yi-cai-jing-6.m3u8$LR•IPV4•49『线路3』 +第一财经,http://a1live.livecdn.yicai.com/live/radio_tv.m3u8$LR•IPV4•49『线路4』 +第一财经,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=4663&tk=f6cc1e0a0e1a$LR•IPV4•49『线路5』 +第一财经,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=4640&tk=e503191f8e20$LR•IPV4•49『线路6』 +第一财经,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=7436&tk=b53028476470$LR•IPV4•49『线路7』 +第一财经,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•49『线路8』 +第一财经,https://stream1.freetv.fun/di-yi-cai-jing-3.m3u8$LR•IPV4•49『线路9』 +第一财经,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=4810&tk=23a9aca1f79f$LR•IPV4•49『线路10』 +第一财经,http://43.251.226.89:8080/play/59.m3u8$LR•IPV4•49『线路11』 +第一财经,https://www.freetv.top/migu/608780988.m3u8?migutoken=62e21890acbd9928d0be0b4eae9f5e32e1879604b785ee7ce8751d5001a9ff431d7714025aa03d48a2b190ff214e5115dcb6ba455c3d26b1db0f5b3cb49c5967429ff3b1fe8e96e87cc6146543$LR•IPV4•49『线路12』 +第一财经,https://stream1.freetv.fun/di-yi-cai-jing-6.ctv$LR•IPV4•49『线路13』 +第一财经,https://satellitepull.cnr.cn/live/wx32dycjgb/playlist.m3u8$LR•IPV4•49『线路14』 +第一财经,https://stream1.freetv.fun/di-yi-cai-jing-10.m3u8$LR•IPV4•49『线路15』 +第一财经,https://stream1.freetv.fun/ipv6-di-yi-cai-jing-3.m3u8$LR•IPV4•49『线路16』 +第一财经,https://hls-gateway.vpstv.net/streams/708851.m3u8$LR•IPV4•49『线路17』 +第一财经,https://stream1.freetv.fun/di-yi-cai-jing-9.m3u8$LR•IPV4•49『线路18』 +第一财经,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=8321&tk=e640d0a1bf70$LR•IPV4•49『线路19』 +第一财经,http://47.104.178.59:3566/608780988$LR•IPV4•49『线路20』 +第一财经,http://satellitepull.cnr.cn/live/wx32dycjgb/playlist.m3u8$LR•IPV4•49『线路21』 +第一财经,https://stream1.freetv.fun/ipv6-di-yi-cai-jing-11.m3u8$LR•IPV4•49『线路22』 +第一财经,https://mgtv.ottiptv.cc/migu/608780988.m3u8?migutoken=0c7df30d952e5d120406d3eb259cd5e26ec6aa86037008719de147cc6fbc34e877c3e3d7b9617267f35521bdddc4c5995e6fc0583816a5df1bfe19814868525e736733676761a4b2d4db618e84$LR•IPV4•49『线路23』 +第一财经,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=0917&tk=2aca1ad9a849$LR•IPV4•49『线路24』 +第一财经,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=6806&tk=a0c4f6cfaba3$LR•IPV4•49『线路25』 +第一财经,https://stream1.freetv.fun/di-yi-cai-jing-7.m3u8$LR•IPV4•49『线路26』 +第一财经,https://stream1.freetv.fun/di-yi-cai-jing-13.m3u8$LR•IPV4•49『线路27』 +第一财经,http://101.43.145.141:12002/itv/5000000010000027146.m3u8?cdn=bestzb$LR•IPV4•49『线路28』 +第一财经,http://123.113.205.253:3000/608780988$LR•IPV4•49『线路29』 +第一财经,https://zby.130519.xyz/PLTV/11/224/3221225737/index.m3u8$LR•IPV4•49『线路30』 +第一财经,http://111.228.4.117:6789/migu720p.php?id=608780988$LR•IPV4•49『线路31』 +第一财经,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=0771&tk=a0c4f6cfaba3$LR•IPV4•49『线路32』 +第一财经,http://bp-livetytv.bestv.cn/ch/bestvdycj.m3u8$LR•IPV4•49『线路33』 +第一财经,https://stream1.freetv.fun/di-yi-cai-jing-2.m3u8$LR•IPV4•49『线路34』 +第一财经,https://www.freetv.top/migu/608780988.m3u8?migutoken=94882e783c75b9369ca6a018f97fe3a3c0018f9da123958e316bb810ef22e907f0672a7d63496e5cb5041eb125b1f1ee6996ac856b0c0c9828348878b8a4101384b9a851fb1dea60a7fafeea35$LR•IPV4•49『线路35』 第一财经,https://stream1.freetv.fun/ipv6-di-yi-cai-jing-5.m3u8$LR•IPV4•49『线路36』 第一财经,http://mgsp-cty2.live.miguvideo.com:8088/wd_r1/2018/bestv/dycj/1000/index.m3u8?msisdn=2be6b2ec9fcf10d2c2457e2c710e172c&mdspid=&spid=699212&netType=0&sid=2201008312&pid=2028597139×tamp=20260717080210&Channel_ID=0116_2600034600-99000-201600010010028&ProgramID=608780988&ParentNodeID=-99&assertID=2201008312&client_ip=171.8.79.254&SecurityKey=20260717080210&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=b169350279c84ee287c0bfba0632efda&sv=10004&ct=android$LR•IPV4•49『线路37』 第一财经,http://115.190.247.176:1111/608780988$LR•IPV4•49『线路38』 @@ -2917,154 +2926,154 @@ NewTV精品体育,http://dl.wifi942.com:66/jsyd/jsyd.php?id=GITV-JS-65$LR•IPV4 上海纪实,https://stream1.freetv.fun/ipv6-shang-hai-ji-shi-ren-wen-2.m3u8$LR•IPV4•10『线路9』 上海纪实,http://wouu.net:9977/udp/239.93.1.137:5140$LR•IPV4•10『线路10』 新闻综合,http://l.cztvcloud.com/channels/lantian/SXshengzhou1/720p.m3u8?zzhed#http://l.cztvcloud.com/channels/lantian/SXshengzhou1/720p.m3u8$LR•IPV4•115『线路1』 -新闻综合,https://stream1.freetv.fun/ipv6-ji-nan-xin-wen-zong-he-8.m3u8$LR•IPV4•115『线路2』 -新闻综合,https://stream1.freetv.fun/ji-nan-xin-wen-zong-he-7.m3u8$LR•IPV4•115『线路3』 -新闻综合,http://stream.zztvzd.com/1/sd/live.m3u8$LR•IPV4•115『线路4』 -新闻综合,http://stream.zztvzd.com/1/sd/live.m3u8?shandd$LR•IPV4•115『线路5』 -新闻综合,https://stream1.freetv.fun/ipv6-wei-fang-xin-wen-zong-he-1.m3u8$LR•IPV4•115『线路6』 -新闻综合,https://stream1.freetv.fun/ipv6-wei-fang-xin-wen-zong-he-2.m3u8$LR•IPV4•115『线路7』 -新闻综合,http://live.yantaitv.cn/live/3e81a8879da44c5dadf3bd9c10468e1c/9b776d420ee4438199b7657c8eb88f07-1.m3u8$LR•IPV4•115『线路8』 -新闻综合,http://live.hznet.tv:1935/live/live1/500k/tzwj_video.m3u8$LR•IPV4•115『线路9』 -新闻综合,http://live.hznet.tv:1935/live/live1/500K/tzwj_video.m3u8?shandd$LR•IPV4•115『线路10』 -新闻综合,http://live.wanyuannews.com/wytv/hd/live.m3u8?zsicd$LR•IPV4•115『线路11』 -新闻综合,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•115『线路12』 -新闻综合,https://stream1.freetv.fun/xin-wen-zong-he-9.m3u8$LR•IPV4•115『线路13』 -新闻综合,http://150.158.112.123/公众号~玉玉软件库/mg.php?id=shxwzh$LR•IPV4•115『线路14』 -新闻综合,https://stream1.freetv.fun/shang-hai-xin-wen-zong-he-3.m3u8$LR•IPV4•115『线路15』 -新闻综合,https://stream1.freetv.fun/xin-wen-zong-he-13.m3u8$LR•IPV4•115『线路16』 -新闻综合,http://43.251.226.89:8080/play/57.m3u8$LR•IPV4•115『线路17』 -新闻综合,http://t.061899.xyz/tl/tl.php?id=shxwzh$LR•IPV4•115『线路18』 -新闻综合,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=2810&tk=a0c4f6cfaba3$LR•IPV4•115『线路19』 -新闻综合,http://123.113.205.253:3000/651632657$LR•IPV4•115『线路20』 -新闻综合,https://live.pzhkai.com/xwzhtl/sd/live.m3u8$LR•IPV4•115『线路21』 -新闻综合,https://stream1.freetv.fun/xin-wen-zong-he-14.m3u8$LR•IPV4•115『线路22』 -新闻综合,https://stream1.freetv.fun/ipv6-xin-wen-zong-he-14.m3u8$LR•IPV4•115『线路23』 -新闻综合,http://tvpull.dxhmt.cn:9081/tv/10326-1.m3u8$LR•IPV4•115『线路24』 -新闻综合,https://stream1.freetv.fun/shang-hai-xin-wen-zong-he-10.m3u8$LR•IPV4•115『线路25』 -新闻综合,https://stream1.freetv.fun/shang-hai-xin-wen-zong-he-1.m3u8$LR•IPV4•115『线路26』 -新闻综合,http://api2.52tb.xyz/info?id=371&token=20230218qkyjia$LR•IPV4•115『线路27』 -新闻综合,https://zby.130519.xyz/PLTV/11/224/3221226136/index.m3u8$LR•IPV4•115『线路28』 -新闻综合,https://m3u8-channel.lytv.tv/nmip-media/channellive/channel111841/playlist.m3u8$LR•IPV4•115『线路29』 -新闻综合,https://stream1.freetv.fun/shang-hai-xin-wen-zong-he-12.m3u8$LR•IPV4•115『线路30』 -新闻综合,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=2394&tk=e503191f8e20$LR•IPV4•115『线路31』 -新闻综合,https://stream1.freetv.fun/xin-wen-zong-he-11.ctv$LR•IPV4•115『线路32』 -新闻综合,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=0708&tk=23a9aca1f79f$LR•IPV4•115『线路33』 -新闻综合,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=5985&tk=e640d0a1bf70$LR•IPV4•115『线路34』 -新闻综合,https://stream1.freetv.fun/xin-wen-zong-he-5.m3u8$LR•IPV4•115『线路35』 -新闻综合,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=5014&tk=a0c4f6cfaba3$LR•IPV4•115『线路36』 -新闻综合,https://mgtv.ottiptv.cc/migu/651632657.m3u8?migutoken=348c9164063c2b1df215dd2fa7cd92cb119d8a335ae0edfb5d615a6c714e71b669eee2f5ff1730afa92af7ca41d0aa96e3a280d7e5f2069eb8a3b852f3ebc270147489d7c8bfb08a7c4b9c4d80$LR•IPV4•115『线路37』 -新闻综合,https://stream1.freetv.fun/shang-hai-xin-wen-zong-he-2.m3u8$LR•IPV4•115『线路38』 -新闻综合,http://p2.vzan.com/slowlive/596867413819827251/live.m3u8$LR•IPV4•115『线路39』 -新闻综合,https://www.freetv.top/migu/651632657.m3u8?migutoken=5ae42e8fda034ab7bf5171dafa0043e70cd12bcd716940c4572fde52ea92b0785f16f1bdbce4c83f5e075b250fe95668f19f8527dda57c27db24f95d412614d99c86a3a2d9341d88b5224b7068$LR•IPV4•115『线路40』 -新闻综合,https://qcfile.qcrmt.com/nmip-media/channellive/channel100933/playlist.m3u8$LR•IPV4•115『线路41』 -新闻综合,https://stream1.freetv.fun/xin-wen-zong-he-2.m3u8$LR•IPV4•115『线路42』 -新闻综合,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•115『线路43』 -新闻综合,https://stream1.freetv.fun/ipv6-shang-hai-xin-wen-zong-he-7.m3u8$LR•IPV4•115『线路44』 -新闻综合,https://hls-gateway.vpstv.net/streams/708847.m3u8$LR•IPV4•115『线路45』 -新闻综合,http://api3.52tb.xyz/info?id=371&token=20221127jxwhhemby$LR•IPV4•115『线路46』 -新闻综合,https://stream1.freetv.fun/xin-wen-zong-he-1.ctv$LR•IPV4•115『线路47』 -新闻综合,http://115.190.247.176:1111/651632657$LR•IPV4•115『线路48』 -新闻综合,https://stream1.freetv.fun/ipv6-shang-hai-xin-wen-zong-he-2.m3u8$LR•IPV4•115『线路49』 -新闻综合,https://xatv-yt.xiancity.cn/live/1/index.m3u8$LR•IPV4•115『线路50』 -新闻综合,https://stream1.freetv.fun/ipv6-xin-wen-zong-he-7.m3u8$LR•IPV4•115『线路51』 -新闻综合,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=5599&tk=2aca1ad9a849$LR•IPV4•115『线路52』 -新闻综合,https://stream1.freetv.fun/xin-wen-zong-he-3.m3u8$LR•IPV4•115『线路53』 -新闻综合,http://hlsztemgsplive.miguvideo.com:8080/migu/kailu/xwzhhd265/54/20200407/index.m3u8?msisdn=2be6b2ec9fcf10d2c2457e2c710e172c&mdspid=&spid=600697&netType=0&sid=5910022325&pid=2028597139×tamp=20260717080210&Channel_ID=0116_2600034600-99000-201600010010028&ProgramID=651632657&ParentNodeID=-99&assertID=5910022325&client_ip=171.8.79.254&SecurityKey=20260717080210&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=40d27e561dfff2850c5ba421b1844775&sv=10004&ct=android$LR•IPV4•115『线路54』 -新闻综合,https://stream1.freetv.fun/ipv6-shang-hai-xin-wen-zong-he-6.m3u8$LR•IPV4•115『线路55』 -新闻综合,https://cm-live.ntjoy.com/live/4f1.m3u8$LR•IPV4•115『线路56』 -新闻综合,https://stream1.freetv.fun/ipv6-shang-hai-xin-wen-zong-he-3.m3u8$LR•IPV4•115『线路57』 -新闻综合,http://bp-livetytv.bestv.cn/ch/bestvxwzh.m3u8$LR•IPV4•115『线路58』 -新闻综合,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=2441&tk=e640d0a1bf70$LR•IPV4•115『线路59』 -新闻综合,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=2865&tk=f6cc1e0a0e1a$LR•IPV4•115『线路60』 -新闻综合,http://47.104.178.59:3566/651632657$LR•IPV4•115『线路61』 -新闻综合,https://tvfile.scjgtv.cn:443/nmip-media/channellive/channel104126/playlist.m3u8"$LR•IPV4•115『线路62』 -新闻综合,https://www.freetv.top/migu/651632657.m3u8?migutoken=b4a3e55048f55ec1c8fc5b509fbdf32f2dc5d255f5f218e79e84ca9a87fb9f2239927cb11b448f18285b50b81b4cd50a1354e9be5a3283375e85372798c3f3eb3ad60adf45eb5615f68eb4825f$LR•IPV4•115『线路63』 -新闻综合,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=0610&tk=b53028476470$LR•IPV4•115『线路64』 -新闻综合,https://m3u8channel.yunxya.com/nmip-media/channellive/channel100028/playlist.m3u8$LR•IPV4•115『线路65』 -新闻综合,https://stream1.freetv.fun/xin-wen-zong-he-15.m3u8$LR•IPV4•115『线路66』 -新闻综合,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•115『线路67』 -新闻综合,http://111.228.4.117:6789/migu720p.php?id=651632657$LR•IPV4•115『线路68』 -新闻综合,https://stream1.freetv.fun/shang-hai-xin-wen-zong-he-8.m3u8$LR•IPV4•115『线路69』 -新闻综合,https://stream1.freetv.fun/ipv6-xin-wen-zong-he-10.m3u8$LR•IPV4•115『线路70』 -新闻综合,http://stream8.jlntv.cn/shulan/sd/live.m3u8?_upt=332db6421699196585$LR•IPV4•115『线路71』 -新闻综合,http://stream5.jlntv.cn/hn/sd/live.m3u8$LR•IPV4•115『线路72』 -新闻综合,http://pili-live-hls.ybcxjd.com/jdh-live/2108111201035597.m3u8?zsicd$LR•IPV4•115『线路73』 -新闻综合,http://live.spccmc.com:90/live/spxwzh.m3u8$LR•IPV4•115『线路74』 -新闻综合,http://live.iwcmt.cn:90/live/zhxw.m3u8$LR•IPV4•115『线路75』 -新闻综合,http://live.jinchuanrmt.com:90/live/zhxw.m3u8?zsicd$LR•IPV4•115『线路76』 -新闻综合,https://play.yunxya.com/channellive/xinwen.m3u8$LR•IPV4•115『线路77』 -新闻综合,http://ls.qingting.fm/live/267.m3u8$LR•IPV4•115『线路78』 -新闻综合,http://hslive.hsnewsnet.com/lsdream/hve9Wjs/1000/live.m3u8$LR•IPV4•115『线路79』 -新闻综合,https://p2.vzan.com/slowlive/596867413819827251/live.m3u8?zbid=1725814272&amp;tpid=1516989100&amp;type=0$LR•IPV4•115『线路80』 -新闻综合,https://tntgjhjb.live.sxmty.com/live/hls/3a4585ac11ec4e1bb07b419101b370c3/baf63e2b313440c2a25d7859f9b73b05-1.m3u8?zshanxd$LR•IPV4•115『线路81』 -新闻综合,http://uzoiczhh.live.sxmty.com/live/hls/0d41f1480c4042d49927858f01fde707/53130407737b417b9a6259b57246bae3.m3u8?zshanxd$LR•IPV4•115『线路82』 -新闻综合,https://ls.qingting.fm/live/5043/64k.m3u8$LR•IPV4•115『线路83』 -新闻综合,http://liveout.btzx.com.cn/62ds9e/4nxdih.m3u8?fbl=$LR•IPV4•115『线路84』 -新闻综合,http://nklive.nbs.cn/hls/d511bc9d-a694-4453-b3a2-4fc842cc97a1/index.m3u8$LR•IPV4•115『线路85』 -新闻综合,http://ls.qingting.fm/live/23797.m3u8$LR•IPV4•115『线路86』 -新闻综合,https://play.kankanlive.com/live/1720583434627241.m3u8$LR•IPV4•115『线路87』 -新闻综合,https://ls.qingting.fm/live/5022100/64k.m3u8$LR•IPV4•115『线路88』 -新闻综合,https://liveout.xntv.tv/a65jur/96iln2.m3u8?zqinghd$LR•IPV4•115『线路89』 -新闻综合,http://live.qthnews.org.cn:1935/live/live1/800k/tzwj_video.m3u8$LR•IPV4•115『线路90』 -新闻综合,http://stream.hrbtv.net/xwzh/sd/live.m3u8?zheild$LR•IPV4•115『线路91』 -新闻综合,https://stream2.jlntv.cn/baicheng1/sd/live.m3u8$LR•IPV4•115『线路92』 -新闻综合,http://live.cztv.cc:85/live/xwpd.m3u8$LR•IPV4•115『线路93』 -新闻综合,http://117.156.28.119/270000001111/1110000001/index.m3u8$LR•IPV4•115『线路94』 -新闻综合,http://pili-live-hls.hebitv.com/hebi/hebi.m3u8$LR•IPV4•115『线路95』 -新闻综合,https://stream2.jlntv.cn/naxw/sd/live.m3u8$LR•IPV4•115『线路96』 -新闻综合,http://uni6rtmp.tulix.tv:1935/vbstv/vbsabr.smil/chunklist_w439903609_b1228800.m3u8$LR•IPV4•115『线路97』 -新闻综合,http://221.5.213.4:30000/1111.m3u8$LR•IPV4•115『线路98』 -新闻综合,https://stream2.jlntv.cn/jilin1/sd/live.m3u8$LR•IPV4•115『线路99』 -新闻综合,http://30515.hlsplay.aodianyun.com/lms_30515/tv_channel_239.m3u8$LR•IPV4•115『线路100』 -新闻综合,https://stream2.jlntv.cn/sptv/sd/live.m3u8$LR•IPV4•115『线路101』 -新闻综合,http://live.ahsz.tv/video/s10001-szzh/index.m3u8$LR•IPV4•115『线路102』 -新闻综合,http://guangshui.live.tempsource.cjyun.org/videotmp/s10146-GSXW.m3u8$LR•IPV4•115『线路103』 -新闻综合,https://stream2.jlntv.cn/jlyb/sd/live.m3u8$LR•IPV4•115『线路104』 -新闻综合,https://stream2.jlntv.cn/sytv/sd/live.m3u8$LR•IPV4•115『线路105』 -新闻综合,http://222.179.155.21:1935/ch1.m3u8$LR•IPV4•115『线路106』 -新闻综合,http://117.172.215.250:8083/videos/live/35/39/GQVbrgob5CGJM/GQVbrgob5CGJM.m3u8$LR•IPV4•115『线路107』 -新闻综合,http://220.180.110.101:8083/videos/live/36/57/hwEHU4UVQ1Iv5/hwEHU4UVQ1Iv5.m3u8$LR•IPV4•115『线路108』 -新闻综合,http://live.hnxttv.com:9601/live/xwzh/800K/tzwj_video.m3u8$LR•IPV4•115『线路109』 -新闻综合,http://stream.bzcm.net/2/sd/live.m3u8$LR•IPV4•115『线路110』 -新闻综合,http://117.156.28.119/270000001111/1110000145/index.m3u8$LR•IPV4•115『线路111』 -新闻综合,https://stream2.jlntv.cn/baishan1/sd/live.m3u8$LR•IPV4•115『线路112』 -新闻综合,http://live1.wuhubtv.com/channel1/sd/live.m3u8$LR•IPV4•115『线路113』 -新闻综合,http://palive.patv123.com:8091/live/xwpd_800K.m3u8$LR•IPV4•115『线路114』 -新闻综合,https://stream2.jlntv.cn/liaoyuan1/sd/live.m3u8$LR•IPV4•115『线路115』 +新闻综合,https://stream2.jlntv.cn/baicheng1/sd/live.m3u8$LR•IPV4•115『线路2』 +新闻综合,http://live.cztv.cc:85/live/xwpd.m3u8$LR•IPV4•115『线路3』 +新闻综合,http://117.156.28.119/270000001111/1110000001/index.m3u8$LR•IPV4•115『线路4』 +新闻综合,http://pili-live-hls.hebitv.com/hebi/hebi.m3u8$LR•IPV4•115『线路5』 +新闻综合,https://stream2.jlntv.cn/naxw/sd/live.m3u8$LR•IPV4•115『线路6』 +新闻综合,http://uni6rtmp.tulix.tv:1935/vbstv/vbsabr.smil/chunklist_w439903609_b1228800.m3u8$LR•IPV4•115『线路7』 +新闻综合,http://221.5.213.4:30000/1111.m3u8$LR•IPV4•115『线路8』 +新闻综合,https://stream2.jlntv.cn/jilin1/sd/live.m3u8$LR•IPV4•115『线路9』 +新闻综合,http://30515.hlsplay.aodianyun.com/lms_30515/tv_channel_239.m3u8$LR•IPV4•115『线路10』 +新闻综合,https://stream2.jlntv.cn/sptv/sd/live.m3u8$LR•IPV4•115『线路11』 +新闻综合,http://live.ahsz.tv/video/s10001-szzh/index.m3u8$LR•IPV4•115『线路12』 +新闻综合,http://guangshui.live.tempsource.cjyun.org/videotmp/s10146-GSXW.m3u8$LR•IPV4•115『线路13』 +新闻综合,https://stream2.jlntv.cn/jlyb/sd/live.m3u8$LR•IPV4•115『线路14』 +新闻综合,https://stream2.jlntv.cn/sytv/sd/live.m3u8$LR•IPV4•115『线路15』 +新闻综合,http://222.179.155.21:1935/ch1.m3u8$LR•IPV4•115『线路16』 +新闻综合,http://117.172.215.250:8083/videos/live/35/39/GQVbrgob5CGJM/GQVbrgob5CGJM.m3u8$LR•IPV4•115『线路17』 +新闻综合,http://220.180.110.101:8083/videos/live/36/57/hwEHU4UVQ1Iv5/hwEHU4UVQ1Iv5.m3u8$LR•IPV4•115『线路18』 +新闻综合,http://live.hnxttv.com:9601/live/xwzh/800K/tzwj_video.m3u8$LR•IPV4•115『线路19』 +新闻综合,http://stream.bzcm.net/2/sd/live.m3u8$LR•IPV4•115『线路20』 +新闻综合,http://117.156.28.119/270000001111/1110000145/index.m3u8$LR•IPV4•115『线路21』 +新闻综合,https://stream2.jlntv.cn/baishan1/sd/live.m3u8$LR•IPV4•115『线路22』 +新闻综合,http://live1.wuhubtv.com/channel1/sd/live.m3u8$LR•IPV4•115『线路23』 +新闻综合,http://palive.patv123.com:8091/live/xwpd_800K.m3u8$LR•IPV4•115『线路24』 +新闻综合,https://stream2.jlntv.cn/liaoyuan1/sd/live.m3u8$LR•IPV4•115『线路25』 +新闻综合,https://stream1.freetv.fun/ipv6-ji-nan-xin-wen-zong-he-8.m3u8$LR•IPV4•115『线路26』 +新闻综合,https://stream1.freetv.fun/ji-nan-xin-wen-zong-he-7.m3u8$LR•IPV4•115『线路27』 +新闻综合,http://stream.zztvzd.com/1/sd/live.m3u8$LR•IPV4•115『线路28』 +新闻综合,http://stream.zztvzd.com/1/sd/live.m3u8?shandd$LR•IPV4•115『线路29』 +新闻综合,https://stream1.freetv.fun/ipv6-wei-fang-xin-wen-zong-he-1.m3u8$LR•IPV4•115『线路30』 +新闻综合,https://stream1.freetv.fun/ipv6-wei-fang-xin-wen-zong-he-2.m3u8$LR•IPV4•115『线路31』 +新闻综合,http://live.yantaitv.cn/live/3e81a8879da44c5dadf3bd9c10468e1c/9b776d420ee4438199b7657c8eb88f07-1.m3u8$LR•IPV4•115『线路32』 +新闻综合,http://live.hznet.tv:1935/live/live1/500k/tzwj_video.m3u8$LR•IPV4•115『线路33』 +新闻综合,http://live.hznet.tv:1935/live/live1/500K/tzwj_video.m3u8?shandd$LR•IPV4•115『线路34』 +新闻综合,http://live.wanyuannews.com/wytv/hd/live.m3u8?zsicd$LR•IPV4•115『线路35』 +新闻综合,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•115『线路36』 +新闻综合,https://stream1.freetv.fun/xin-wen-zong-he-9.m3u8$LR•IPV4•115『线路37』 +新闻综合,http://150.158.112.123/公众号~玉玉软件库/mg.php?id=shxwzh$LR•IPV4•115『线路38』 +新闻综合,https://stream1.freetv.fun/shang-hai-xin-wen-zong-he-3.m3u8$LR•IPV4•115『线路39』 +新闻综合,https://stream1.freetv.fun/xin-wen-zong-he-13.m3u8$LR•IPV4•115『线路40』 +新闻综合,http://43.251.226.89:8080/play/57.m3u8$LR•IPV4•115『线路41』 +新闻综合,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=2810&tk=a0c4f6cfaba3$LR•IPV4•115『线路42』 +新闻综合,http://123.113.205.253:3000/651632657$LR•IPV4•115『线路43』 +新闻综合,https://live.pzhkai.com/xwzhtl/sd/live.m3u8$LR•IPV4•115『线路44』 +新闻综合,https://stream1.freetv.fun/xin-wen-zong-he-14.m3u8$LR•IPV4•115『线路45』 +新闻综合,https://stream1.freetv.fun/ipv6-xin-wen-zong-he-14.m3u8$LR•IPV4•115『线路46』 +新闻综合,http://tvpull.dxhmt.cn:9081/tv/10326-1.m3u8$LR•IPV4•115『线路47』 +新闻综合,https://stream1.freetv.fun/shang-hai-xin-wen-zong-he-10.m3u8$LR•IPV4•115『线路48』 +新闻综合,https://stream1.freetv.fun/shang-hai-xin-wen-zong-he-1.m3u8$LR•IPV4•115『线路49』 +新闻综合,http://api2.52tb.xyz/info?id=371&token=20230218qkyjia$LR•IPV4•115『线路50』 +新闻综合,https://zby.130519.xyz/PLTV/11/224/3221226136/index.m3u8$LR•IPV4•115『线路51』 +新闻综合,https://m3u8-channel.lytv.tv/nmip-media/channellive/channel111841/playlist.m3u8$LR•IPV4•115『线路52』 +新闻综合,https://stream1.freetv.fun/shang-hai-xin-wen-zong-he-12.m3u8$LR•IPV4•115『线路53』 +新闻综合,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=2394&tk=e503191f8e20$LR•IPV4•115『线路54』 +新闻综合,https://stream1.freetv.fun/xin-wen-zong-he-11.ctv$LR•IPV4•115『线路55』 +新闻综合,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=0708&tk=23a9aca1f79f$LR•IPV4•115『线路56』 +新闻综合,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=5985&tk=e640d0a1bf70$LR•IPV4•115『线路57』 +新闻综合,https://stream1.freetv.fun/xin-wen-zong-he-5.m3u8$LR•IPV4•115『线路58』 +新闻综合,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=5014&tk=a0c4f6cfaba3$LR•IPV4•115『线路59』 +新闻综合,https://mgtv.ottiptv.cc/migu/651632657.m3u8?migutoken=348c9164063c2b1df215dd2fa7cd92cb119d8a335ae0edfb5d615a6c714e71b669eee2f5ff1730afa92af7ca41d0aa96e3a280d7e5f2069eb8a3b852f3ebc270147489d7c8bfb08a7c4b9c4d80$LR•IPV4•115『线路60』 +新闻综合,https://stream1.freetv.fun/shang-hai-xin-wen-zong-he-2.m3u8$LR•IPV4•115『线路61』 +新闻综合,http://p2.vzan.com/slowlive/596867413819827251/live.m3u8$LR•IPV4•115『线路62』 +新闻综合,https://www.freetv.top/migu/651632657.m3u8?migutoken=5ae42e8fda034ab7bf5171dafa0043e70cd12bcd716940c4572fde52ea92b0785f16f1bdbce4c83f5e075b250fe95668f19f8527dda57c27db24f95d412614d99c86a3a2d9341d88b5224b7068$LR•IPV4•115『线路63』 +新闻综合,https://qcfile.qcrmt.com/nmip-media/channellive/channel100933/playlist.m3u8$LR•IPV4•115『线路64』 +新闻综合,https://stream1.freetv.fun/xin-wen-zong-he-2.m3u8$LR•IPV4•115『线路65』 +新闻综合,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•115『线路66』 +新闻综合,https://stream1.freetv.fun/ipv6-shang-hai-xin-wen-zong-he-7.m3u8$LR•IPV4•115『线路67』 +新闻综合,https://hls-gateway.vpstv.net/streams/708847.m3u8$LR•IPV4•115『线路68』 +新闻综合,http://api3.52tb.xyz/info?id=371&token=20221127jxwhhemby$LR•IPV4•115『线路69』 +新闻综合,https://stream1.freetv.fun/xin-wen-zong-he-1.ctv$LR•IPV4•115『线路70』 +新闻综合,http://115.190.247.176:1111/651632657$LR•IPV4•115『线路71』 +新闻综合,https://stream1.freetv.fun/ipv6-shang-hai-xin-wen-zong-he-2.m3u8$LR•IPV4•115『线路72』 +新闻综合,https://xatv-yt.xiancity.cn/live/1/index.m3u8$LR•IPV4•115『线路73』 +新闻综合,https://stream1.freetv.fun/ipv6-xin-wen-zong-he-7.m3u8$LR•IPV4•115『线路74』 +新闻综合,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=5599&tk=2aca1ad9a849$LR•IPV4•115『线路75』 +新闻综合,https://stream1.freetv.fun/xin-wen-zong-he-3.m3u8$LR•IPV4•115『线路76』 +新闻综合,http://hlsztemgsplive.miguvideo.com:8080/migu/kailu/xwzhhd265/54/20200407/index.m3u8?msisdn=2be6b2ec9fcf10d2c2457e2c710e172c&mdspid=&spid=600697&netType=0&sid=5910022325&pid=2028597139×tamp=20260717080210&Channel_ID=0116_2600034600-99000-201600010010028&ProgramID=651632657&ParentNodeID=-99&assertID=5910022325&client_ip=171.8.79.254&SecurityKey=20260717080210&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=40d27e561dfff2850c5ba421b1844775&sv=10004&ct=android$LR•IPV4•115『线路77』 +新闻综合,https://stream1.freetv.fun/ipv6-shang-hai-xin-wen-zong-he-6.m3u8$LR•IPV4•115『线路78』 +新闻综合,https://cm-live.ntjoy.com/live/4f1.m3u8$LR•IPV4•115『线路79』 +新闻综合,https://stream1.freetv.fun/ipv6-shang-hai-xin-wen-zong-he-3.m3u8$LR•IPV4•115『线路80』 +新闻综合,http://bp-livetytv.bestv.cn/ch/bestvxwzh.m3u8$LR•IPV4•115『线路81』 +新闻综合,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=2441&tk=e640d0a1bf70$LR•IPV4•115『线路82』 +新闻综合,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=2865&tk=f6cc1e0a0e1a$LR•IPV4•115『线路83』 +新闻综合,http://47.104.178.59:3566/651632657$LR•IPV4•115『线路84』 +新闻综合,https://tvfile.scjgtv.cn:443/nmip-media/channellive/channel104126/playlist.m3u8"$LR•IPV4•115『线路85』 +新闻综合,https://www.freetv.top/migu/651632657.m3u8?migutoken=b4a3e55048f55ec1c8fc5b509fbdf32f2dc5d255f5f218e79e84ca9a87fb9f2239927cb11b448f18285b50b81b4cd50a1354e9be5a3283375e85372798c3f3eb3ad60adf45eb5615f68eb4825f$LR•IPV4•115『线路86』 +新闻综合,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=0610&tk=b53028476470$LR•IPV4•115『线路87』 +新闻综合,https://m3u8channel.yunxya.com/nmip-media/channellive/channel100028/playlist.m3u8$LR•IPV4•115『线路88』 +新闻综合,https://stream1.freetv.fun/xin-wen-zong-he-15.m3u8$LR•IPV4•115『线路89』 +新闻综合,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•115『线路90』 +新闻综合,http://111.228.4.117:6789/migu720p.php?id=651632657$LR•IPV4•115『线路91』 +新闻综合,https://stream1.freetv.fun/shang-hai-xin-wen-zong-he-8.m3u8$LR•IPV4•115『线路92』 +新闻综合,https://stream1.freetv.fun/ipv6-xin-wen-zong-he-10.m3u8$LR•IPV4•115『线路93』 +新闻综合,http://stream8.jlntv.cn/shulan/sd/live.m3u8?_upt=332db6421699196585$LR•IPV4•115『线路94』 +新闻综合,http://stream5.jlntv.cn/hn/sd/live.m3u8$LR•IPV4•115『线路95』 +新闻综合,http://pili-live-hls.ybcxjd.com/jdh-live/2108111201035597.m3u8?zsicd$LR•IPV4•115『线路96』 +新闻综合,http://live.spccmc.com:90/live/spxwzh.m3u8$LR•IPV4•115『线路97』 +新闻综合,http://live.iwcmt.cn:90/live/zhxw.m3u8$LR•IPV4•115『线路98』 +新闻综合,http://live.jinchuanrmt.com:90/live/zhxw.m3u8?zsicd$LR•IPV4•115『线路99』 +新闻综合,https://play.yunxya.com/channellive/xinwen.m3u8$LR•IPV4•115『线路100』 +新闻综合,http://traffic.jbh.tjbh.com/live/bhtv10/playlist.m3u8$LR•IPV4•115『线路101』 +新闻综合,http://ls.qingting.fm/live/267.m3u8$LR•IPV4•115『线路102』 +新闻综合,http://hslive.hsnewsnet.com/lsdream/hve9Wjs/1000/live.m3u8$LR•IPV4•115『线路103』 +新闻综合,https://p2.vzan.com/slowlive/596867413819827251/live.m3u8?zbid=1725814272&amp;tpid=1516989100&amp;type=0$LR•IPV4•115『线路104』 +新闻综合,https://tntgjhjb.live.sxmty.com/live/hls/3a4585ac11ec4e1bb07b419101b370c3/baf63e2b313440c2a25d7859f9b73b05-1.m3u8?zshanxd$LR•IPV4•115『线路105』 +新闻综合,http://uzoiczhh.live.sxmty.com/live/hls/0d41f1480c4042d49927858f01fde707/53130407737b417b9a6259b57246bae3.m3u8?zshanxd$LR•IPV4•115『线路106』 +新闻综合,https://ls.qingting.fm/live/5043/64k.m3u8$LR•IPV4•115『线路107』 +新闻综合,http://liveout.btzx.com.cn/62ds9e/4nxdih.m3u8?fbl=$LR•IPV4•115『线路108』 +新闻综合,http://nklive.nbs.cn/hls/d511bc9d-a694-4453-b3a2-4fc842cc97a1/index.m3u8$LR•IPV4•115『线路109』 +新闻综合,http://ls.qingting.fm/live/23797.m3u8$LR•IPV4•115『线路110』 +新闻综合,https://play.kankanlive.com/live/1720583434627241.m3u8$LR•IPV4•115『线路111』 +新闻综合,https://ls.qingting.fm/live/5022100/64k.m3u8$LR•IPV4•115『线路112』 +新闻综合,https://liveout.xntv.tv/a65jur/96iln2.m3u8?zqinghd$LR•IPV4•115『线路113』 +新闻综合,http://live.qthnews.org.cn:1935/live/live1/800k/tzwj_video.m3u8$LR•IPV4•115『线路114』 +新闻综合,http://stream.hrbtv.net/xwzh/sd/live.m3u8?zheild$LR•IPV4•115『线路115』 陕西,#genre# -西安新闻,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』 +西安新闻,http://stream2.xiancity.cn/xatv1/playlist.m3u8$LR•IPV4•2『线路1』 +西安新闻,http://112.46.105.20:8009/hls/28/index.m3u8$LR•IPV4•2『线路2』 山东,#genre# -山东少儿,http://123.129.70.178:9901/tsfile/live/1004_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•16『线路1』 -山东少儿,https://stream1.freetv.fun/shan-dong-shao-er-7.m3u8$LR•IPV4•16『线路2』 -山东少儿,http://58.57.40.22:9901/tsfile/live/1024_1.m3u8$LR•IPV4•16『线路3』 -山东少儿,https://stream1.freetv.fun/shan-dong-shao-er-2.m3u8$LR•IPV4•16『线路4』 -山东少儿,https://stream1.freetv.fun/shan-dong-shao-er-9.m3u8$LR•IPV4•16『线路5』 -山东少儿,http://221.2.148.205:8154/tsfile/live/1007_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•16『线路6』 -山东少儿,https://stream1.freetv.fun/shan-dong-shao-er-10.m3u8$LR•IPV4•16『线路7』 -山东少儿,http://111.14.181.15:9901/tsfile/live/1005_1.m3u8?key=tvbox6_com&playlive=1&authid=0$LR•IPV4•16『线路8』 -山东少儿,https://stream1.freetv.fun/shan-dong-shao-er-1.m3u8$LR•IPV4•16『线路9』 -山东少儿,http://111.14.181.15:9901/tsfile/live/1005_1.m3u8$LR•IPV4•16『线路10』 -山东少儿,https://stream1.freetv.fun/shan-dong-shao-er-5.m3u8$LR•IPV4•16『线路11』 -山东少儿,https://stream1.freetv.fun/shan-dong-shao-er-4.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-6.m3u8$LR•IPV4•16『线路14』 -山东少儿,https://stream1.freetv.fun/shan-dong-shao-er-8.m3u8$LR•IPV4•16『线路15』 -山东少儿,http://livealone302.iqilu.com/iqilu/sepd.m3u8$LR•IPV4•16『线路16』 -山东新闻,http://123.129.70.178:9901/tsfile/live/1000_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•12『线路1』 -山东新闻,https://stream1.freetv.fun/shan-dong-xin-wen-1.m3u8$LR•IPV4•12『线路2』 -山东新闻,http://ls.qingting.fm/live/60180.m3u8$LR•IPV4•12『线路3』 -山东新闻,https://stream1.freetv.fun/shan-dong-xin-wen-2.m3u8$LR•IPV4•12『线路4』 -山东新闻,http://221.2.148.205:8154/tsfile/live/1002_1.m3u8?key=txiptv&playlive=1&authid=0$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-3.m3u8$LR•IPV4•12『线路7』 -山东新闻,http://live.xmcdn.com/live/1440/64.m3u8$LR•IPV4•12『线路8』 -山东新闻,https://stream1.freetv.fun/shan-dong-xin-wen-10.m3u8$LR•IPV4•12『线路9』 -山东新闻,https://stream1.freetv.fun/shan-dong-xin-wen-7.m3u8$LR•IPV4•12『线路10』 -山东新闻,https://stream1.freetv.fun/shan-dong-xin-wen-6.m3u8$LR•IPV4•12『线路11』 -山东新闻,http://livealone302.iqilu.com/iqilu/ggpd.m3u8$LR•IPV4•12『线路12』 +山东少儿,http://livealone302.iqilu.com/iqilu/sepd.m3u8$LR•IPV4•16『线路1』 +山东少儿,http://123.129.70.178:9901/tsfile/live/1004_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•16『线路2』 +山东少儿,https://stream1.freetv.fun/shan-dong-shao-er-7.m3u8$LR•IPV4•16『线路3』 +山东少儿,http://58.57.40.22:9901/tsfile/live/1024_1.m3u8$LR•IPV4•16『线路4』 +山东少儿,https://stream1.freetv.fun/shan-dong-shao-er-2.m3u8$LR•IPV4•16『线路5』 +山东少儿,https://stream1.freetv.fun/shan-dong-shao-er-9.m3u8$LR•IPV4•16『线路6』 +山东少儿,http://221.2.148.205:8154/tsfile/live/1007_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•16『线路7』 +山东少儿,https://stream1.freetv.fun/shan-dong-shao-er-10.m3u8$LR•IPV4•16『线路8』 +山东少儿,http://111.14.181.15:9901/tsfile/live/1005_1.m3u8?key=tvbox6_com&playlive=1&authid=0$LR•IPV4•16『线路9』 +山东少儿,https://stream1.freetv.fun/shan-dong-shao-er-1.m3u8$LR•IPV4•16『线路10』 +山东少儿,http://111.14.181.15:9901/tsfile/live/1005_1.m3u8$LR•IPV4•16『线路11』 +山东少儿,https://stream1.freetv.fun/shan-dong-shao-er-5.m3u8$LR•IPV4•16『线路12』 +山东少儿,https://stream1.freetv.fun/shan-dong-shao-er-4.m3u8$LR•IPV4•16『线路13』 +山东少儿,http://123.132.233.194:352/tsfile/live/1002_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•16『线路14』 +山东少儿,https://stream1.freetv.fun/shan-dong-shao-er-6.m3u8$LR•IPV4•16『线路15』 +山东少儿,https://stream1.freetv.fun/shan-dong-shao-er-8.m3u8$LR•IPV4•16『线路16』 +山东新闻,http://livealone302.iqilu.com/iqilu/ggpd.m3u8$LR•IPV4•12『线路1』 +山东新闻,http://123.129.70.178:9901/tsfile/live/1000_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•12『线路2』 +山东新闻,https://stream1.freetv.fun/shan-dong-xin-wen-1.m3u8$LR•IPV4•12『线路3』 +山东新闻,http://ls.qingting.fm/live/60180.m3u8$LR•IPV4•12『线路4』 +山东新闻,https://stream1.freetv.fun/shan-dong-xin-wen-2.m3u8$LR•IPV4•12『线路5』 +山东新闻,http://221.2.148.205:8154/tsfile/live/1002_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•12『线路6』 +山东新闻,https://stream1.freetv.fun/shan-dong-xin-wen-4.m3u8$LR•IPV4•12『线路7』 +山东新闻,https://stream1.freetv.fun/shan-dong-xin-wen-3.m3u8$LR•IPV4•12『线路8』 +山东新闻,http://live.xmcdn.com/live/1440/64.m3u8$LR•IPV4•12『线路9』 +山东新闻,https://stream1.freetv.fun/shan-dong-xin-wen-10.m3u8$LR•IPV4•12『线路10』 +山东新闻,https://stream1.freetv.fun/shan-dong-xin-wen-7.m3u8$LR•IPV4•12『线路11』 +山东新闻,https://stream1.freetv.fun/shan-dong-xin-wen-6.m3u8$LR•IPV4•12『线路12』 山东教育,https://test1.live.sdetv.com.cn/live/dianshizhibo/playlist.m3u8$LR•IPV4•20『线路1』 山东教育,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=7973&tk=a0c4f6cfaba3$LR•IPV4•20『线路2』 山东教育,http://dassby.qqff.top:99/live/山东教育卫视/index.m3u8$LR•IPV4•20『线路3』 @@ -3085,25 +3094,25 @@ NewTV精品体育,http://dl.wifi942.com:66/jsyd/jsyd.php?id=GITV-JS-65$LR•IPV4 山东教育,http://123.113.205.253:3000/609154353$LR•IPV4•20『线路18』 山东教育,http://112.132.10.54:9901/tsfile/live/1018_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•20『线路19』 山东教育,http://hlsztemgsplive.miguvideo.com:8080/migu/kailu/sdjyws/51/20250915/index.m3u8?msisdn=2be6b2ec9fcf10d2c2457e2c710e172c&mdspid=&spid=600697&netType=0&sid=5910022199&pid=2028597139×tamp=20260717080217&Channel_ID=0116_2600034600-99000-201600010010028&ProgramID=609154353&ParentNodeID=-99&assertID=5910022199&client_ip=171.8.79.254&SecurityKey=20260717080217&promotionId=&mvid=2200208305&mcid=500020&playurlVersion=WX-A1-9.6.1.6-SNAPSHOT&userid=&jmhm=&videocodec=h264&appCode=miguvideo_android&bean=mgspad&tid=android&conFee=0&encrypt=7f8e7f82426d223c045795841359c106&sv=10004&ct=android$LR•IPV4•20『线路20』 -山东农科,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.132.233.194:352/tsfile/live/1019_1.m3u8$LR•IPV4•10『线路1』 -山东齐鲁,http://111.14.181.15:9901/tsfile/live/1000_1.m3u8?key=tvbox6_com&playlive=1&authid=0$LR•IPV4•10『线路2』 -山东齐鲁,http://123.129.70.178:9901/tsfile/live/0019_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•10『线路3』 -山东齐鲁,http://123.130.84.106:8154/tsfile/live/1001_1.m3u8$LR•IPV4•10『线路4』 -山东齐鲁,http://221.2.148.205:8154/tsfile/live/1001_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•10『线路5』 -山东齐鲁,http://123.130.84.106:8154/tsfile/live/1001_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•10『线路6』 -山东齐鲁,http://61.156.228.12:8154/tsfile/live/1001_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•10『线路7』 -山东齐鲁,http://111.14.181.15:9901/tsfile/live/1000_1.m3u8$LR•IPV4•10『线路8』 -山东齐鲁,http://61.156.228.12:8154/tsfile/live/1001_1.m3u8$LR•IPV4•10『线路9』 -山东齐鲁,http://livealone302.iqilu.com/iqilu/qlpd.m3u8$LR•IPV4•10『线路10』 -山东生活,http://api3.52tb.xyz/info?id=527&token=20221127jxwhhemby$LR•IPV4•7『线路1』 -山东生活,http://123.129.70.178:9901/tsfile/live/1002_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•7『线路2』 -山东生活,http://live.xmcdn.com/live/802/64.m3u8$LR•IPV4•7『线路3』 -山东生活,http://ls.qingting.fm/live/60260.m3u8$LR•IPV4•7『线路4』 -山东生活,http://221.2.148.205:8154/tsfile/live/1005_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•7『线路5』 -山东生活,http://58.57.40.22:9901/tsfile/live/1018_1.m3u8$LR•IPV4•7『线路6』 -山东生活,http://livealone302.iqilu.com/iqilu/shpd.m3u8$LR•IPV4•7『线路7』 +山东农科,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.132.233.194:352/tsfile/live/1019_1.m3u8$LR•IPV4•10『线路2』 +山东齐鲁,http://111.14.181.15:9901/tsfile/live/1000_1.m3u8?key=tvbox6_com&playlive=1&authid=0$LR•IPV4•10『线路3』 +山东齐鲁,http://123.129.70.178:9901/tsfile/live/0019_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•10『线路4』 +山东齐鲁,http://123.130.84.106:8154/tsfile/live/1001_1.m3u8$LR•IPV4•10『线路5』 +山东齐鲁,http://221.2.148.205:8154/tsfile/live/1001_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•10『线路6』 +山东齐鲁,http://123.130.84.106: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?key=txiptv&playlive=1&authid=0$LR•IPV4•10『线路8』 +山东齐鲁,http://111.14.181.15:9901/tsfile/live/1000_1.m3u8$LR•IPV4•10『线路9』 +山东齐鲁,http://61.156.228.12:8154/tsfile/live/1001_1.m3u8$LR•IPV4•10『线路10』 +山东生活,http://livealone302.iqilu.com/iqilu/shpd.m3u8$LR•IPV4•7『线路1』 +山东生活,http://api3.52tb.xyz/info?id=527&token=20221127jxwhhemby$LR•IPV4•7『线路2』 +山东生活,http://123.129.70.178:9901/tsfile/live/1002_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•7『线路3』 +山东生活,http://live.xmcdn.com/live/802/64.m3u8$LR•IPV4•7『线路4』 +山东生活,http://ls.qingting.fm/live/60260.m3u8$LR•IPV4•7『线路5』 +山东生活,http://221.2.148.205:8154/tsfile/live/1005_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•7『线路6』 +山东生活,http://58.57.40.22:9901/tsfile/live/1018_1.m3u8$LR•IPV4•7『线路7』 山东体育,http://livealone302.iqilu.com/iqilu/typd.m3u8$LR•IPV4•37『线路1』 山东体育,http://live.xmcdn.com/live/805/64.m3u8$LR•IPV4•37『线路2』 山东体育,http://123.130.84.106:8154/tsfile/live/1006_1.m3u8$LR•IPV4•37『线路3』 @@ -3141,12 +3150,12 @@ NewTV精品体育,http://dl.wifi942.com:66/jsyd/jsyd.php?id=GITV-JS-65$LR•IPV4 山东体育,https://stream1.freetv.fun/shan-dong-ti-yu-26.m3u8$LR•IPV4•37『线路35』 山东体育,https://satellitepull.cnr.cn/live/wxsdtyxxgb/playlist.m3u8$LR•IPV4•37『线路36』 山东体育,https://stream1.freetv.fun/shan-dong-ti-yu-5.m3u8$LR•IPV4•37『线路37』 -山东综艺,http://123.129.70.178:9901/tsfile/live/1001_1.m3u8$LR•IPV4•6『线路1』 -山东综艺,http://111.14.181.15:9901/tsfile/live/1004_1.m3u8?key=tvbox6_com&playlive=1&authid=0$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.132.233.194:352/tsfile/live/1000_1.m3u8$LR•IPV4•6『线路5』 -山东综艺,http://livealone302.iqilu.com/iqilu/zypd.m3u8$LR•IPV4•6『线路6』 +山东综艺,http://livealone302.iqilu.com/iqilu/zypd.m3u8$LR•IPV4•6『线路1』 +山东综艺,http://123.129.70.178:9901/tsfile/live/1001_1.m3u8$LR•IPV4•6『线路2』 +山东综艺,http://111.14.181.15:9901/tsfile/live/1004_1.m3u8?key=tvbox6_com&playlive=1&authid=0$LR•IPV4•6『线路3』 +山东综艺,http://221.2.148.205:8154/tsfile/live/1003_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•6『线路4』 +山东综艺,http://58.57.40.22:9901/tsfile/live/1021_1.m3u8$LR•IPV4•6『线路5』 +山东综艺,http://123.132.233.194:352/tsfile/live/1000_1.m3u8$LR•IPV4•6『线路6』 山东文旅,http://58.57.40.22:9901/tsfile/live/1023_1.m3u8$LR•IPV4•3『线路1』 山东文旅,http://221.2.148.205:8154/tsfile/live/1004_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•3『线路2』 山东文旅,http://60.209.125.254:352/tsfile/live/1004_1.m3u8?ace$LR•IPV4•3『线路3』 @@ -3167,29 +3176,29 @@ NewTV精品体育,http://dl.wifi942.com:66/jsyd/jsyd.php?id=GITV-JS-65$LR•IPV4 港澳台,#genre# 凤凰中文,http://api.mg.itv888.cn:8080/hls/2f80047f91e/index.m3u8$LR•IPV4•8『线路1』 -凤凰中文,http://zmgd.zyrnet.com:8888/hls/110/index.m3u8$LR•IPV4•8『线路2』 -凤凰中文,http://120.198.95.220:9901/tsfile/live/1036_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•8『线路3』 -凤凰中文,http://218.206.193.218:8888/hls/66/index.m3u8$LR•IPV4•8『线路4』 -凤凰中文,http://120.198.95.220:9901/tsfile/live/1036_1.m3u8?key=txiptv$LR•IPV4•8『线路5』 -凤凰中文,http://r.jdshipin.com/cCCzW$LR•IPV4•8『线路6』 -凤凰中文,http://cdn6.163189.xyz/163189/fhzw$LR•IPV4•8『线路7』 -凤凰中文,http://223.110.245.139/ott.js.chinamobile.com/PLTV/3/224/3221226922/index.m3u8$LR•IPV4•8『线路8』 +凤凰中文,http://223.110.245.139/ott.js.chinamobile.com/PLTV/3/224/3221226922/index.m3u8$LR•IPV4•8『线路2』 +凤凰中文,http://zmgd.zyrnet.com:8888/hls/110/index.m3u8$LR•IPV4•8『线路3』 +凤凰中文,http://120.198.95.220:9901/tsfile/live/1036_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•8『线路4』 +凤凰中文,http://218.206.193.218:8888/hls/66/index.m3u8$LR•IPV4•8『线路5』 +凤凰中文,http://120.198.95.220:9901/tsfile/live/1036_1.m3u8?key=txiptv$LR•IPV4•8『线路6』 +凤凰中文,http://r.jdshipin.com/cCCzW$LR•IPV4•8『线路7』 +凤凰中文,http://cdn6.163189.xyz/163189/fhzw$LR•IPV4•8『线路8』 凤凰资讯,http://api.mg.itv888.cn:8080/hls/11ef1dc70d8/index.m3u8$LR•IPV4•10『线路1』 -凤凰资讯,http://zmgd.zyrnet.com:8888/hls/109/index.m3u8$LR•IPV4•10『线路2』 -凤凰资讯,http://221.7.175.154:8445/tsfile/live/1021_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•10『线路3』 -凤凰资讯,http://120.198.95.220:9901/tsfile/live/1037_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•10『线路4』 -凤凰资讯,http://120.198.95.220:9901/tsfile/live/1037_1.m3u8?key=txiptv$LR•IPV4•10『线路5』 -凤凰资讯,p3p://167.114.175.6:55331/5fffbf860003807cedf4e1016c3c3ed2$LR•IPV4•10『线路6』 -凤凰资讯,http://r.jdshipin.com/0Rp07$LR•IPV4•10『线路7』 -凤凰资讯,http://php.jdshipin.com/TVOD/iptv.php?id=fhzx$LR•IPV4•10『线路8』 -凤凰资讯,http://cdn6.163189.xyz/163189/fhzx$LR•IPV4•10『线路9』 -凤凰资讯,http://223.110.245.167/ott.js.chinamobile.com/PLTV/3/224/3221226923/index.m3u8$LR•IPV4•10『线路10』 -凤凰香港,http://122.152.202.33/s/81a8a44f/index.m3u8?id=fhhk$LR•IPV4•6『线路1』 -凤凰香港,p3p://167.114.175.6:55331/5fe0b82c000cac9774c17f262e43314d$LR•IPV4•6『线路2』 -凤凰香港,http://r.jdshipin.com/yDoTN$LR•IPV4•6『线路3』 -凤凰香港,http://php.jdshipin.com/TVOD/iptv.php?id=fhhk$LR•IPV4•6『线路4』 -凤凰香港,http://cdn6.163189.xyz/163189/fhhk$LR•IPV4•6『线路5』 -凤凰香港,http://223.110.245.136/PLTV/3/224/3221226975/index.m3u8$LR•IPV4•6『线路6』 +凤凰资讯,http://223.110.245.167/ott.js.chinamobile.com/PLTV/3/224/3221226923/index.m3u8$LR•IPV4•10『线路2』 +凤凰资讯,http://zmgd.zyrnet.com:8888/hls/109/index.m3u8$LR•IPV4•10『线路3』 +凤凰资讯,http://221.7.175.154:8445/tsfile/live/1021_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•10『线路4』 +凤凰资讯,http://120.198.95.220:9901/tsfile/live/1037_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•10『线路5』 +凤凰资讯,http://120.198.95.220:9901/tsfile/live/1037_1.m3u8?key=txiptv$LR•IPV4•10『线路6』 +凤凰资讯,p3p://167.114.175.6:55331/5fffbf860003807cedf4e1016c3c3ed2$LR•IPV4•10『线路7』 +凤凰资讯,http://r.jdshipin.com/0Rp07$LR•IPV4•10『线路8』 +凤凰资讯,http://php.jdshipin.com/TVOD/iptv.php?id=fhzx$LR•IPV4•10『线路9』 +凤凰资讯,http://cdn6.163189.xyz/163189/fhzx$LR•IPV4•10『线路10』 +凤凰香港,http://223.110.245.136/PLTV/3/224/3221226975/index.m3u8$LR•IPV4•6『线路1』 +凤凰香港,http://122.152.202.33/s/81a8a44f/index.m3u8?id=fhhk$LR•IPV4•6『线路2』 +凤凰香港,p3p://167.114.175.6:55331/5fe0b82c000cac9774c17f262e43314d$LR•IPV4•6『线路3』 +凤凰香港,http://r.jdshipin.com/yDoTN$LR•IPV4•6『线路4』 +凤凰香港,http://php.jdshipin.com/TVOD/iptv.php?id=fhhk$LR•IPV4•6『线路5』 +凤凰香港,http://cdn6.163189.xyz/163189/fhhk$LR•IPV4•6『线路6』 TVB翡翠台,p3p://167.114.175.6:55331/653e4c02000ea0440c8c63fd3e5d709d$LR•IPV4•12『线路1』 TVB翡翠台,p3p://167.114.175.6:55331/66c04cec000a20ac2dbf03c71cf661c9$LR•IPV4•12『线路2』 TVB翡翠台,p3p://108.181.32.169:19673/6533f6560002787f2d01338b57197695$LR•IPV4•12『线路3』 @@ -3214,41 +3223,40 @@ TVB无线新闻,p3p://167.114.175.6:55331/653e4818000b73240c7d19181340415e$LR• TVB无线新闻,https://hls-gateway.vpstv.net/streams/708884.m3u8$LR•IPV4•7『线路5』 TVB无线新闻,http://r.jdshipin.com/CkuBd$LR•IPV4•7『线路6』 TVB无线新闻,http://php.jdshipin.com/TVOD/iptv.php?id=wxxw$LR•IPV4•7『线路7』 -TVB星河,p3p://167.114.175.6:55331/5fdee23d000b670a6d96428e4c334643$LR•IPV4•5『线路1』 -TVB星河,p3p://167.114.175.6:55331/6563174f0002ffaf9c45dd927c7d6df1$LR•IPV4•5『线路2』 -TVB星河,http://php.jdshipin.com/TVOD/iptv.php?id=xinghe$LR•IPV4•5『线路3』 -TVB星河,https://hls-gateway.vpstv.net/streams/709489.m3u8$LR•IPV4•5『线路4』 -TVB星河,https://live.ottiptv.cc/huya/23734169$LR•IPV4•5『线路5』 +TVB星河,p3p://167.114.175.6:55331/5fdee23d000b670a6d96428e4c334643$LR•IPV4•4『线路1』 +TVB星河,p3p://167.114.175.6:55331/6563174f0002ffaf9c45dd927c7d6df1$LR•IPV4•4『线路2』 +TVB星河,http://php.jdshipin.com/TVOD/iptv.php?id=xinghe$LR•IPV4•4『线路3』 +TVB星河,https://hls-gateway.vpstv.net/streams/709489.m3u8$LR•IPV4•4『线路4』 TVBS,http://38.64.72.148/hls/modn/list/4005/playlist.m3u8$LR•IPV4•13『线路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://74.91.26.218:82/live/ttvcj.m3u8$LR•IPV4•10『线路1』 -台视,http://74.91.26.218:82/live/ttvzh.m3u8$LR•IPV4•10『线路2』 -台视,http://38.64.72.148:80/hls/modn/list/4013/chunklist0.m3u8$LR•IPV4•10『线路3』 -台视,http://38.64.72.148:80/hls/modn/list/4013/chunklist1.m3u8$LR•IPV4•10『线路4』 -台视,http://38.64.72.148/hls/modn/list/4013/chunklist0.m3u8$LR•IPV4•10『线路5』 -台视,rtmp://f13h.mine.nu/sat/tv071$LR•IPV4•10『线路6』 -台视,p3p://167.114.175.6:55331/612ee2240008f3db8e0578dc59406f9e$LR•IPV4•10『线路7』 -台视,p3p://167.114.175.6:55331/6223b571000a13023e78ece5030b5b05$LR•IPV4•10『线路8』 -台视,http://38.64.72.148/hls/modn/list/4013/chunklist1.m3u8$LR•IPV4•10『线路9』 -台视,http://162.19.247.76:22222/live/taishi/index.m3u8$LR•IPV4•10『线路10』 +TVBS,http://seb.sason.top/sc/tvbsxw_fhd.m3u8$LR•IPV4•13『线路2』 +TVBS,http://61.221.215.25:8800/hls/9/index.m3u8$LR•IPV4•13『线路3』 +TVBS,http://38.64.72.148/hls/modn/list/4005/chunklist0.m3u8$LR•IPV4•13『线路4』 +TVBS,http://38.64.72.148:80/hls/modn/list/4005/chunklist1.m3u8$LR•IPV4•13『线路5』 +TVBS,http://38.64.72.148:80/hls/modn/list/4005/playlist.m3u8$LR•IPV4•13『线路6』 +TVBS,http://38.64.72.148/hls/modn/list/4005/chunklist1.m3u8$LR•IPV4•13『线路7』 +TVBS,http://38.64.72.148:80/hls/modn/list/4005/chunklist0.m3u8$LR•IPV4•13『线路8』 +TVBS,http://125.227.210.55:8188/VideoInput/play.ts$LR•IPV4•13『线路9』 +TVBS,http://125.227.210.55:8186/VideoInput/play.ts$LR•IPV4•13『线路10』 +TVBS,http://125.227.210.55:8187/VideoInput/play.ts$LR•IPV4•13『线路11』 +TVBS,p3p://167.114.175.6:55331/612ee5ef000f06f58e144b6727ec3efb$LR•IPV4•13『线路12』 +TVBS,p3p://167.114.175.6:55331/61efd0a100047e1a7f9fa38d29f5746d$LR•IPV4•13『线路13』 +台视,http://162.19.247.76:22222/live/taishi/index.m3u8$LR•IPV4•10『线路1』 +台视,http://74.91.26.218:82/live/ttvcj.m3u8$LR•IPV4•10『线路2』 +台视,http://74.91.26.218:82/live/ttvzh.m3u8$LR•IPV4•10『线路3』 +台视,http://38.64.72.148:80/hls/modn/list/4013/chunklist0.m3u8$LR•IPV4•10『线路4』 +台视,http://38.64.72.148:80/hls/modn/list/4013/chunklist1.m3u8$LR•IPV4•10『线路5』 +台视,http://38.64.72.148/hls/modn/list/4013/chunklist0.m3u8$LR•IPV4•10『线路6』 +台视,rtmp://f13h.mine.nu/sat/tv071$LR•IPV4•10『线路7』 +台视,p3p://167.114.175.6:55331/612ee2240008f3db8e0578dc59406f9e$LR•IPV4•10『线路8』 +台视,p3p://167.114.175.6:55331/6223b571000a13023e78ece5030b5b05$LR•IPV4•10『线路9』 +台视,http://38.64.72.148/hls/modn/list/4013/chunklist1.m3u8$LR•IPV4•10『线路10』 民视新闻,http://38.64.72.148:80/hls/modn/list/4012/chunklist0.m3u8$LR•IPV4•4『线路1』 民视新闻,http://38.64.72.148:80/hls/modn/list/4012/chunklist1.m3u8$LR•IPV4•4『线路2』 民视新闻,http://38.64.72.148/hls/modn/list/4012/chunklist0.m3u8$LR•IPV4•4『线路3』 民视新闻,http://38.64.72.148/hls/modn/list/4012/chunklist1.m3u8$LR•IPV4•4『线路4』 -耀才财经,https://v3.mediacast.hk/webcast/bshdlive-pc/playlist.m3u8$LR•IPV4•3『线路1』 -耀才财经,https://v3.mediacast.hk/webcast/bshdlive-pc/chunklist_w99771165.m3u8$LR•IPV4•3『线路2』 -耀才财经,http://202.69.67.66:443/webcast/bshdlive-mobile/playlist.m3u8$LR•IPV4•3『线路3』 +耀才财经,http://202.69.67.66:443/webcast/bshdlive-mobile/playlist.m3u8$LR•IPV4•3『线路1』 +耀才财经,https://v3.mediacast.hk/webcast/bshdlive-pc/playlist.m3u8$LR•IPV4•3『线路2』 +耀才财经,https://v3.mediacast.hk/webcast/bshdlive-pc/chunklist_w99771165.m3u8$LR•IPV4•3『线路3』 美亚C+,http://ottproxy2.ist.ooo/livehls/MOB-U1-NO/03.m3u8$LR•IPV4•3『线路1』 美亚C+,http://ottproxy2.ist.ooo/livehls/MOB-U1-NO/01.m3u8$LR•IPV4•3『线路2』 美亚C+,http://ottproxy2.ist.ooo/livehls/MOB-U1-NO/02.m3u8$LR•IPV4•3『线路3』 @@ -3296,70 +3304,70 @@ TVBS,http://seb.sason.top/sc/tvbsxw_fhd.m3u8$LR•IPV4•13『线路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,https://stream1.freetv.fun/tvn-3.m3u8$LR•IPV4•6『线路2』 -tvN,p3p://167.114.175.6:55331/6506c6930009ab3233ac2cd3018a6125$LR•IPV4•6『线路3』 -tvN,p3p://167.114.175.6:55331/644f9623000a4051681a72d66bfc0191$LR•IPV4•6『线路4』 -tvN,http://45.162.193.35/TVN/index.m3u8$LR•IPV4•6『线路5』 -tvN,https://bcovlive-a.akamaihd.net/628aecb4fccb4c52b4f9c8d5cc57fb73/us-west-2/6058004209001/playlist_dvr.m3u8$LR•IPV4•6『线路6』 +tvN,http://45.162.193.35/TVN/index.m3u8$LR•IPV4•6『线路2』 +tvN,https://bcovlive-a.akamaihd.net/628aecb4fccb4c52b4f9c8d5cc57fb73/us-west-2/6058004209001/playlist_dvr.m3u8$LR•IPV4•6『线路3』 +tvN,https://stream1.freetv.fun/tvn-3.m3u8$LR•IPV4•6『线路4』 +tvN,p3p://167.114.175.6:55331/6506c6930009ab3233ac2cd3018a6125$LR•IPV4•6『线路5』 +tvN,p3p://167.114.175.6:55331/644f9623000a4051681a72d66bfc0191$LR•IPV4•6『线路6』 華視,http://seb.sason.top/sc/hsxw_fhd.m3u8$LR•IPV4 DW,https://raw.githubusercontent.com/ChiSheng9/iptv/master/TV08.m3u8$LR•IPV4•8『线路1』 -DW,https://dwamdstream102.akamaized.net/hls/live/2015525/dwstream102/stream05/streamPlaylist.m3u8$LR•IPV4•8『线路2』 -DW,http://aktv.top/AKTV/live/aktv3/dw/AKTV.m3u8$LR•IPV4•8『线路3』 -DW,http://37.27.111.214:8080/live/46/hls.m3u8$LR•IPV4•8『线路4』 -DW,https://dwamdstream103.akamaized.net/hls/live/2015526/dwstream103/master.m3u8$LR•IPV4•8『线路5』 -DW,https://amg01644-amg01644c1-amgplt0343.playout.now3.amagi.tv/ts-eu-w1-n2/playlist/amg01644-amg01644c1-amgplt0343/playlist.m3u8$LR•IPV4•8『线路6』 -DW,http://177.234.249.178:8888/DW/index.m3u8$LR•IPV4•8『线路7』 -DW,https://dwamdstream110.akamaized.net/hls/live/2017971/dwstream110/master.m3u8$LR•IPV4•8『线路8』 +DW,https://dwamdstream103.akamaized.net/hls/live/2015526/dwstream103/master.m3u8$LR•IPV4•8『线路2』 +DW,https://amg01644-amg01644c1-amgplt0343.playout.now3.amagi.tv/ts-eu-w1-n2/playlist/amg01644-amg01644c1-amgplt0343/playlist.m3u8$LR•IPV4•8『线路3』 +DW,http://177.234.249.178:8888/DW/index.m3u8$LR•IPV4•8『线路4』 +DW,https://dwamdstream110.akamaized.net/hls/live/2017971/dwstream110/master.m3u8$LR•IPV4•8『线路5』 +DW,https://dwamdstream102.akamaized.net/hls/live/2015525/dwstream102/stream05/streamPlaylist.m3u8$LR•IPV4•8『线路6』 +DW,http://aktv.top/AKTV/live/aktv3/dw/AKTV.m3u8$LR•IPV4•8『线路7』 +DW,http://37.27.111.214:8080/live/46/hls.m3u8$LR•IPV4•8『线路8』 France 24,https://live.france24.com/hls/live/2037222-b/F24_AR_HI_HLS/master_5000.m3u8$LR•IPV4•5『线路1』 France 24,https://live.france24.com/hls/live/2037218-b/F24_EN_HI_HLS/master_5000.m3u8$LR•IPV4•5『线路2』 France 24,https://live.france24.com/hls/live/2037220-b/F24_ES_HI_HLS/master_5000.m3u8$LR•IPV4•5『线路3』 France 24,https://live.france24.com/hls/live/2037179-b/F24_FR_HI_HLS/master_5000.m3u8$LR•IPV4•5『线路4』 France 24,https://amg00106-amg00106c1-rakuten-uk-4654.playouts.now.amagi.tv/playlist/amg00106-france24fast-france24-rakutenuk/playlist.m3u8$LR•IPV4•5『线路5』 KIX,http://210.210.155.37/dr9445/h/h07/index.m3u8$LR•IPV4•3『线路1』 -KIX,p3p://167.114.175.6:55331/6444e9940006c03f3e688dba67767ffd$LR•IPV4•3『线路2』 -KIX,https://liveh34.vtvprime.vn/hls/KIX/04.m3u8$LR•IPV4•3『线路3』 -NHK World-Japan,http://aktv.top/AKTV/live/aktv3/nhkworldjapan/AKTV.m3u8$LR•IPV4•3『线路1』 -NHK World-Japan,https://masterpl.hls.nhkworld.jp/hls/w/live/smarttv.m3u8$LR•IPV4•3『线路2』 -NHK World-Japan,https://nhk.lls.pbs.org/index.m3u8$LR•IPV4•3『线路3』 -Nick Jr,http://free.cnlive.club/channel/n75fc9ff7/index.m3u8?q=1752629214236$LR•IPV4•12『线路1』 -Nick Jr,http://bethoven.af-stream.com:1600/s/kwtlxswl/nick-jr-il/video.m3u8$LR•IPV4•12『线路2』 -Nick Jr,https://stream8.cinerama.uz/1501/playlist.m3u8$LR•IPV4•12『线路3』 -Nick Jr,http://40.160.24.55/NICK_JR/index.m3u8$LR•IPV4•12『线路4』 -Nick Jr,https://phcornerultralast.qzz.io/hls/laslo-serverless/dr_nickjr/index.m3u8$LR•IPV4•12『线路5』 -Nick Jr,https://jmp2.uk/plu-67f3eb1c443f0671bc03ece8.m3u8$LR•IPV4•12『线路6』 -Nick Jr,https://jmp2.uk/plu-6824ce95f09106f4b18f4114.m3u8$LR•IPV4•12『线路7』 -Nick Jr,https://jmp2.uk/plu-5ddd7cb2cbb9010009b4fe32.m3u8$LR•IPV4•12『线路8』 -Nick Jr,http://138.186.23.7:8082/NICKJR/index.m3u8$LR•IPV4•12『线路9』 -Nick Jr,https://jmp2.uk/plu-62bdb75c3afd1200079146a6.m3u8$LR•IPV4•12『线路10』 -Nick Jr,https://jmp2.uk/plu-5ca6748a37b88b269472dad9.m3u8$LR•IPV4•12『线路11』 -Nick Jr,http://103.137.83.62:9090/play/27/index.m3u8$LR•IPV4•12『线路12』 -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://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://103.137.83.62:9090/play/28/index.m3u8$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://138.186.23.7:8082/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,http://108.181.20.255:27347/livehttpplay?channel_id=23019$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』 +KIX,https://liveh34.vtvprime.vn/hls/KIX/04.m3u8$LR•IPV4•3『线路2』 +KIX,p3p://167.114.175.6:55331/6444e9940006c03f3e688dba67767ffd$LR•IPV4•3『线路3』 +NHK World-Japan,https://masterpl.hls.nhkworld.jp/hls/w/live/smarttv.m3u8$LR•IPV4•3『线路1』 +NHK World-Japan,https://nhk.lls.pbs.org/index.m3u8$LR•IPV4•3『线路2』 +NHK World-Japan,http://aktv.top/AKTV/live/aktv3/nhkworldjapan/AKTV.m3u8$LR•IPV4•3『线路3』 +Nick Jr,http://bethoven.af-stream.com:1600/s/kwtlxswl/nick-jr-il/video.m3u8$LR•IPV4•12『线路1』 +Nick Jr,https://stream8.cinerama.uz/1501/playlist.m3u8$LR•IPV4•12『线路2』 +Nick Jr,http://40.160.24.55/NICK_JR/index.m3u8$LR•IPV4•12『线路3』 +Nick Jr,https://phcornerultralast.qzz.io/hls/laslo-serverless/dr_nickjr/index.m3u8$LR•IPV4•12『线路4』 +Nick Jr,https://jmp2.uk/plu-67f3eb1c443f0671bc03ece8.m3u8$LR•IPV4•12『线路5』 +Nick Jr,https://jmp2.uk/plu-6824ce95f09106f4b18f4114.m3u8$LR•IPV4•12『线路6』 +Nick Jr,https://jmp2.uk/plu-5ddd7cb2cbb9010009b4fe32.m3u8$LR•IPV4•12『线路7』 +Nick Jr,http://138.186.23.7:8082/NICKJR/index.m3u8$LR•IPV4•12『线路8』 +Nick Jr,https://jmp2.uk/plu-62bdb75c3afd1200079146a6.m3u8$LR•IPV4•12『线路9』 +Nick Jr,https://jmp2.uk/plu-5ca6748a37b88b269472dad9.m3u8$LR•IPV4•12『线路10』 +Nick Jr,http://103.137.83.62:9090/play/27/index.m3u8$LR•IPV4•12『线路11』 +Nick Jr,http://free.cnlive.club/channel/n75fc9ff7/index.m3u8?q=1752629214236$LR•IPV4•12『线路12』 +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://193.239.186.231/NICK/index.m3u8$LR•IPV4•27『线路5』 +Nickelodeon,http://82.78.243.219:45739/play/a00o/index.m3u8$LR•IPV4•27『线路6』 +Nickelodeon,http://23.237.104.106:8080/USA_NICKELODEON/index.m3u8$LR•IPV4•27『线路7』 +Nickelodeon,http://103.137.83.62:9090/play/28/index.m3u8$LR•IPV4•27『线路8』 +Nickelodeon,https://stream8.cinerama.uz/1500/playlist.m3u8$LR•IPV4•27『线路9』 +Nickelodeon,https://jmp2.uk/plu-6824cda00101510f9eeaa011.m3u8$LR•IPV4•27『线路10』 +Nickelodeon,https://jmp2.uk/plu-6824ce10c5d53e1351ceb8d1.m3u8$LR•IPV4•27『线路11』 +Nickelodeon,https://jmp2.uk/plu-67f3eb800a1beb98767ca748.m3u8$LR•IPV4•27『线路12』 +Nickelodeon,https://jmp2.uk/plu-5d8d08395f39465da6fb3ec4.m3u8$LR•IPV4•27『线路13』 +Nickelodeon,http://46.149.191.217:9011/play/a018$LR•IPV4•27『线路14』 +Nickelodeon,http://151.80.18.177:86/Nickelodeon_Junior/index.m3u8$LR•IPV4•27『线路15』 +Nickelodeon,http://138.186.23.7:8082/NICK/index.m3u8$LR•IPV4•27『线路16』 +Nickelodeon,https://jmp2.uk/plu-5f0d668b872e4400073acc68.m3u8$LR•IPV4•27『线路17』 +Nickelodeon,https://jmp2.uk/plu-60f5fabf0721880007cd50e3.m3u8$LR•IPV4•27『线路18』 +Nickelodeon,https://jmp2.uk/plu-5fab09a8749b1a00077d35d2.m3u8$LR•IPV4•27『线路19』 +Nickelodeon,https://jmp2.uk/plu-5ede448d3d50590007a4419e.m3u8$LR•IPV4•27『线路20』 +Nickelodeon,https://jmp2.uk/plu-645951c0e94c38000802d2cb.m3u8$LR•IPV4•27『线路21』 +Nickelodeon,https://jmp2.uk/plu-645952687cb4b100084ed52e.m3u8$LR•IPV4•27『线路22』 +Nickelodeon,http://108.181.20.255:27347/livehttpplay?channel_id=23019$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』 Thrill,https://cdn10jtedge.indihometv.com/atm/DASH/thrill/manifest.mpd$LR•IPV4 ZooMoo,p3p://167.114.175.6:55331/65679bc200084412adeb40284be664e6$LR•IPV4 华视,http://74.91.26.218:82/live/cts.m3u8$LR•IPV4•5『线路1』 @@ -3432,39 +3440,39 @@ RTHK32,http://php.jdshipin.com:8880/TVOD/iptv.php?id=rthk32$LR•IPV4 东森超视,http://38.64.72.148:80/hls/modn/list/2013/chunklist0.m3u8$LR•IPV4•3『线路1』 东森超视,http://38.64.72.148:80/hls/modn/list/2013/chunklist1.m3u8$LR•IPV4•3『线路2』 东森超视,rtmp://f13h.mine.nu/sat/tv331$LR•IPV4•3『线路3』 -ROCK Action,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』 +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•4『线路1』 TVB Plus,http://rihou.cc:555/tv/[Pd]Plus综合$LR•IPV4•4『线路2』 TVB Plus,p3p://167.114.175.6:55331/6649bce20008d56453eeebfc022701f1$LR•IPV4•4『线路3』 TVB Plus,p3p://167.114.175.6:55331/653e4d3e000b344f0c91357e73163f82$LR•IPV4•4『线路4』 -AXN,p3p://167.114.175.6:55331/66d23a53000d25d573c606e3274f26c5$LR•IPV4•24『线路1』 -AXN,p3p://167.114.175.6:55331/6258ddc5000ee8a40e1bc8f50dec545c$LR•IPV4•24『线路2』 -AXN,http://45.190.28.50/AXN_HD/index.m3u8$LR•IPV4•24『线路3』 -AXN,http://cdn.haititivi.com/AXN/index.m3u8$LR•IPV4•24『线路4』 -AXN,http://znty.dyndns.org:5010/hls/axn.m3u8$LR•IPV4•24『线路5』 -AXN,http://5.57.74.130:8000/play/a0at/index.m3u8$LR•IPV4•24『线路6』 -AXN,http://85.14.32.26:8800/udp/239.100.10.17:5000$LR•IPV4•24『线路7』 -AXN,http://88.212.15.19/live/test_black/playlist.m3u8$LR•IPV4•24『线路8』 -AXN,http://82.78.243.219:45739/play/a00e/index.m3u8$LR•IPV4•24『线路9』 -AXN,http://46.149.191.217:9009/play/a02d$LR•IPV4•24『线路10』 -AXN,http://85.11.144.9:4222/AXN$LR•IPV4•24『线路11』 -AXN,http://88.212.15.19/live/test_axn/playlist.m3u8$LR•IPV4•24『线路12』 -AXN,http://82.78.243.219:45739/play/a01n/index.m3u8$LR•IPV4•24『线路13』 -AXN,http://138.121.15.230:9002/AXN/index.m3u8$LR•IPV4•24『线路14』 -AXN,http://138.186.23.7:8082/AXN/index.m3u8$LR•IPV4•24『线路15』 -AXN,http://177.245.131.133:8080/AXN/index.m3u8$LR•IPV4•24『线路16』 -AXN,http://45.228.235.116:8000/play/a0iy/index.m3u8$LR•IPV4•24『线路17』 -AXN,http://50.7.120.34:8080/AXN_BLACK/index.m3u8$LR•IPV4•24『线路18』 -AXN,https://lb.dstvmultimedia.com/AXNSpin/index.m3u8$LR•IPV4•24『线路19』 -AXN,http://82.78.243.219:45739/play/a00n/index.m3u8$LR•IPV4•24『线路20』 -AXN,http://85.14.32.26:8800/udp/239.100.10.18:5000$LR•IPV4•24『线路21』 -AXN,http://88.212.15.19/live/test_white/playlist.m3u8$LR•IPV4•24『线路22』 -AXN,http://50.7.120.34:8080/AXN_WHITE/index.m3u8$LR•IPV4•24『线路23』 -AXN,http://103.137.83.62:9090/play/21/index.m3u8$LR•IPV4•24『线路24』 +AXN,http://45.190.28.50/AXN_HD/index.m3u8$LR•IPV4•24『线路1』 +AXN,http://cdn.haititivi.com/AXN/index.m3u8$LR•IPV4•24『线路2』 +AXN,http://znty.dyndns.org:5010/hls/axn.m3u8$LR•IPV4•24『线路3』 +AXN,http://5.57.74.130:8000/play/a0at/index.m3u8$LR•IPV4•24『线路4』 +AXN,http://85.14.32.26:8800/udp/239.100.10.17:5000$LR•IPV4•24『线路5』 +AXN,http://88.212.15.19/live/test_black/playlist.m3u8$LR•IPV4•24『线路6』 +AXN,http://82.78.243.219:45739/play/a00e/index.m3u8$LR•IPV4•24『线路7』 +AXN,http://46.149.191.217:9009/play/a02d$LR•IPV4•24『线路8』 +AXN,http://85.11.144.9:4222/AXN$LR•IPV4•24『线路9』 +AXN,http://88.212.15.19/live/test_axn/playlist.m3u8$LR•IPV4•24『线路10』 +AXN,http://82.78.243.219:45739/play/a01n/index.m3u8$LR•IPV4•24『线路11』 +AXN,http://138.121.15.230:9002/AXN/index.m3u8$LR•IPV4•24『线路12』 +AXN,http://138.186.23.7:8082/AXN/index.m3u8$LR•IPV4•24『线路13』 +AXN,http://177.245.131.133:8080/AXN/index.m3u8$LR•IPV4•24『线路14』 +AXN,http://45.228.235.116:8000/play/a0iy/index.m3u8$LR•IPV4•24『线路15』 +AXN,http://50.7.120.34:8080/AXN_BLACK/index.m3u8$LR•IPV4•24『线路16』 +AXN,https://lb.dstvmultimedia.com/AXNSpin/index.m3u8$LR•IPV4•24『线路17』 +AXN,http://82.78.243.219:45739/play/a00n/index.m3u8$LR•IPV4•24『线路18』 +AXN,http://85.14.32.26:8800/udp/239.100.10.18:5000$LR•IPV4•24『线路19』 +AXN,http://88.212.15.19/live/test_white/playlist.m3u8$LR•IPV4•24『线路20』 +AXN,http://50.7.120.34:8080/AXN_WHITE/index.m3u8$LR•IPV4•24『线路21』 +AXN,http://103.137.83.62:9090/play/21/index.m3u8$LR•IPV4•24『线路22』 +AXN,p3p://167.114.175.6:55331/66d23a53000d25d573c606e3274f26c5$LR•IPV4•24『线路23』 +AXN,p3p://167.114.175.6:55331/6258ddc5000ee8a40e1bc8f50dec545c$LR•IPV4•24『线路24』 娱乐新闻,https://hls-gateway.vpstv.net/streams/708904.m3u8$LR•IPV4 -澳门卫视,http://61.244.22.4/ch1/ch1.live/playlist.m3u8$LR•IPV4•2『线路1』 -澳门卫视,http://php.jdshipin.com:8880/TVOD/iptv.php?id=as$LR•IPV4•2『线路2』 +澳门卫视,http://php.jdshipin.com:8880/TVOD/iptv.php?id=as$LR•IPV4•2『线路1』 +澳门卫视,http://61.244.22.4/ch1/ch1.live/playlist.m3u8$LR•IPV4•2『线路2』 Pet Club TV,https://cdn-apse1-prod.tsv2.amagi.tv/linear/amg01076-lightningintern-petclub-samsungnz/playlist.m3u8$LR•IPV4•2『线路1』 Pet Club TV,https://petclub-samsungaus.amagi.tv/playlist.m3u8$LR•IPV4•2『线路2』 Bloomberg TV Asia,http://210.210.155.37/dr9445/h/h03/index.m3u8$LR•IPV4•3『线路1』 @@ -3476,42 +3484,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,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』 +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』 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』 @@ -3523,21 +3531,21 @@ Dali TV,http://www.dalitv.com.tw:4568/live/dali/index.m3u8$LR•IPV4 EBC YOYO,https://ythls.armelin.one/channel/UCiWRSesvSYmY7YOyz0tv_zQ.m3u8$LR•IPV4 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•15『线路1』 -Global News,https://jmp2.uk/plu-62cbf063257170000724590c.m3u8$LR•IPV4•15『线路2』 -Global News,https://jmp2.uk/plu-62cbf23dcfb48300077f8348.m3u8$LR•IPV4•15『线路3』 -Global News,https://jmp2.uk/plu-62cbf2de1fba5f0007e47d9c.m3u8$LR•IPV4•15『线路4』 -Global News,https://jmp2.uk/plu-62cbf398b8e02600071deda5.m3u8$LR•IPV4•15『线路5』 -Global News,https://jmp2.uk/plu-62cbf4964446e2000742073e.m3u8$LR•IPV4•15『线路6』 -Global News,https://jmp2.uk/plu-62cbf7439cb58900088dc77b.m3u8$LR•IPV4•15『线路7』 -Global News,https://jmp2.uk/plu-62cbfbd6ad95670007f567af.m3u8$LR•IPV4•15『线路8』 -Global News,https://jmp2.uk/plu-62cbef9ebb857100072fc187.m3u8$LR•IPV4•15『线路9』 -Global News,https://jmp2.uk/plu-62cbfc572dc3750007a493ce.m3u8$LR•IPV4•15『线路10』 -Global News,https://jmp2.uk/plu-62cbfcd8c2db990007861e43.m3u8$LR•IPV4•15『线路11』 -Global News,https://jmp2.uk/plu-62cbff53ca8f2200080253b5.m3u8$LR•IPV4•15『线路12』 -Global News,https://jmp2.uk/plu-62cc00359cb58900088dc840.m3u8$LR•IPV4•15『线路13』 -Global News,https://jmp2.uk/plu-62cc00b3b821cf00070f82c3.m3u8$LR•IPV4•15『线路14』 -Global News,https://jmp2.uk/plu-62cc0120880c890007191016.m3u8$LR•IPV4•15『线路15』 +Global News,https://jmp2.uk/plu-62cbf063257170000724590c.m3u8$LR•IPV4•15『线路1』 +Global News,https://jmp2.uk/plu-62cbf23dcfb48300077f8348.m3u8$LR•IPV4•15『线路2』 +Global News,https://jmp2.uk/plu-62cbf2de1fba5f0007e47d9c.m3u8$LR•IPV4•15『线路3』 +Global News,https://jmp2.uk/plu-62cbf398b8e02600071deda5.m3u8$LR•IPV4•15『线路4』 +Global News,https://jmp2.uk/plu-62cbf4964446e2000742073e.m3u8$LR•IPV4•15『线路5』 +Global News,https://jmp2.uk/plu-62cbf7439cb58900088dc77b.m3u8$LR•IPV4•15『线路6』 +Global News,https://jmp2.uk/plu-62cbfbd6ad95670007f567af.m3u8$LR•IPV4•15『线路7』 +Global News,https://jmp2.uk/plu-62cbef9ebb857100072fc187.m3u8$LR•IPV4•15『线路8』 +Global News,https://jmp2.uk/plu-62cbfc572dc3750007a493ce.m3u8$LR•IPV4•15『线路9』 +Global News,https://jmp2.uk/plu-62cbfcd8c2db990007861e43.m3u8$LR•IPV4•15『线路10』 +Global News,https://jmp2.uk/plu-62cbff53ca8f2200080253b5.m3u8$LR•IPV4•15『线路11』 +Global News,https://jmp2.uk/plu-62cc00359cb58900088dc840.m3u8$LR•IPV4•15『线路12』 +Global News,https://jmp2.uk/plu-62cc00b3b821cf00070f82c3.m3u8$LR•IPV4•15『线路13』 +Global News,https://jmp2.uk/plu-62cc0120880c890007191016.m3u8$LR•IPV4•15『线路14』 +Global News,https://live.corusdigitaldev.com/groupb/live/3062d0e3-ed4c-4f47-8482-95648250f4b8/live.isml/.m3u8$LR•IPV4•15『线路15』 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 @@ -3552,48 +3560,48 @@ 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,p3p://167.114.175.6:55331/62184bc3000cd48f11e47b06202b7e18$LR•IPV4•3『线路1』 -HOY TV,http://php.jdshipin.com/TVOD/iptv.php?id=hoytv$LR•IPV4•3『线路2』 -HOY TV,https://hoytv-live-stream.hoy.tv/ch77/index.m3u8$LR•IPV4•3『线路3』 +HOY TV,https://hoytv-live-stream.hoy.tv/ch77/index.m3u8$LR•IPV4•3『线路1』 +HOY TV,p3p://167.114.175.6:55331/62184bc3000cd48f11e47b06202b7e18$LR•IPV4•3『线路2』 +HOY TV,http://php.jdshipin.com/TVOD/iptv.php?id=hoytv$LR•IPV4•3『线路3』 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 大立,p3p://167.114.175.6:55331/64c4d2ba00051d1d320d17d218503f93$LR•IPV4 -National Geographic,http://23.237.104.106:8080/USA_NAT_GEO/index.m3u8$LR•IPV4•23『线路1』 -National Geographic,http://213.91.179.28:8000/play/a0ct$LR•IPV4•23『线路2』 -National Geographic,http://167.250.126.140:7777/NATGEO-HD/index.m3u8$LR•IPV4•23『线路3』 -National Geographic,http://185.102.171.218/NatGeo/index.m3u8$LR•IPV4•23『线路4』 -National Geographic,http://138.121.15.230:9002/NAT-GEO/index.m3u8$LR•IPV4•23『线路5』 -National Geographic,https://saran-live.ercdn.net/natgeohd/index.m3u8$LR•IPV4•23『线路6』 -National Geographic,http://40.160.24.53/NAT_GEO/index.m3u8$LR•IPV4•23『线路7』 -National Geographic,https://live-fi.tvkaista.net/national-geographic/live.m3u8?hd=true$LR•IPV4•23『线路8』 -National Geographic,http://149.71.34.166:8002/play/a013/index.m3u8$LR•IPV4•23『线路9』 -National Geographic,http://46.32.176.50/NationalGeographicHD/index.m3u8$LR•IPV4•23『线路10』 -National Geographic,http://198.58.104.90:8989/natgeo/index.m3u8$LR•IPV4•23『线路11』 -National Geographic,http://45.162.193.35/NATGEO/index.m3u8$LR•IPV4•23『线路12』 -National Geographic,http://bantel-cdn1.iptvperu.tv:1935/btnscrtn/NatGeo.stream/playlist.m3u8$LR•IPV4•23『线路13』 -National Geographic,http://206.212.244.63/122/index.m3u8$LR•IPV4•23『线路14』 -National Geographic,http://213.91.179.28:8000/play/a0cu$LR•IPV4•23『线路15』 -National Geographic,http://41.205.77.102/NATGEO-WILD/index.m3u8$LR•IPV4•23『线路16』 -National Geographic,http://185.102.171.218/NatGeoWild/index.m3u8$LR•IPV4•23『线路17』 -National Geographic,http://hls127.freeott.top:8080/Nat_Geo_Wild_SD/video.m3u8$LR•IPV4•23『线路18』 -National Geographic,https://saran-live.ercdn.net/natgeowild/index.m3u8$LR•IPV4•23『线路19』 -National Geographic,http://46.32.176.50/natgeowild/index.m3u8$LR•IPV4•23『线路20』 -National Geographic,http://40.160.24.53/NAT_GEO_WILD/index.m3u8$LR•IPV4•23『线路21』 -National Geographic,http://149.71.34.166:8002/play/a012/index.m3u8$LR•IPV4•23『线路22』 -National Geographic,http://198.58.104.90:8989/natgeowild/index.m3u8$LR•IPV4•23『线路23』 +National Geographic,http://213.91.179.28:8000/play/a0ct$LR•IPV4•23『线路1』 +National Geographic,http://167.250.126.140:7777/NATGEO-HD/index.m3u8$LR•IPV4•23『线路2』 +National Geographic,http://185.102.171.218/NatGeo/index.m3u8$LR•IPV4•23『线路3』 +National Geographic,http://138.121.15.230:9002/NAT-GEO/index.m3u8$LR•IPV4•23『线路4』 +National Geographic,https://saran-live.ercdn.net/natgeohd/index.m3u8$LR•IPV4•23『线路5』 +National Geographic,http://40.160.24.53/NAT_GEO/index.m3u8$LR•IPV4•23『线路6』 +National Geographic,https://live-fi.tvkaista.net/national-geographic/live.m3u8?hd=true$LR•IPV4•23『线路7』 +National Geographic,http://149.71.34.166:8002/play/a013/index.m3u8$LR•IPV4•23『线路8』 +National Geographic,http://46.32.176.50/NationalGeographicHD/index.m3u8$LR•IPV4•23『线路9』 +National Geographic,http://198.58.104.90:8989/natgeo/index.m3u8$LR•IPV4•23『线路10』 +National Geographic,http://45.162.193.35/NATGEO/index.m3u8$LR•IPV4•23『线路11』 +National Geographic,http://bantel-cdn1.iptvperu.tv:1935/btnscrtn/NatGeo.stream/playlist.m3u8$LR•IPV4•23『线路12』 +National Geographic,http://206.212.244.63/122/index.m3u8$LR•IPV4•23『线路13』 +National Geographic,http://213.91.179.28:8000/play/a0cu$LR•IPV4•23『线路14』 +National Geographic,http://41.205.77.102/NATGEO-WILD/index.m3u8$LR•IPV4•23『线路15』 +National Geographic,http://185.102.171.218/NatGeoWild/index.m3u8$LR•IPV4•23『线路16』 +National Geographic,http://hls127.freeott.top:8080/Nat_Geo_Wild_SD/video.m3u8$LR•IPV4•23『线路17』 +National Geographic,https://saran-live.ercdn.net/natgeowild/index.m3u8$LR•IPV4•23『线路18』 +National Geographic,http://46.32.176.50/natgeowild/index.m3u8$LR•IPV4•23『线路19』 +National Geographic,http://40.160.24.53/NAT_GEO_WILD/index.m3u8$LR•IPV4•23『线路20』 +National Geographic,http://149.71.34.166:8002/play/a012/index.m3u8$LR•IPV4•23『线路21』 +National Geographic,http://198.58.104.90:8989/natgeowild/index.m3u8$LR•IPV4•23『线路22』 +National Geographic,http://23.237.104.106:8080/USA_NAT_GEO/index.m3u8$LR•IPV4•23『线路23』 東森新聞,http://seb.sason.top/sc/dsxw_fhd.m3u8$LR•IPV4 Xite Hits,https://d726x48n2pd5h.cloudfront.net/XITE_Hits.m3u8$LR•IPV4•3『线路1』 Xite Hits,https://d726x48n2pd5h.cloudfront.net/v1/master/3722c60a815c199d9c0ef36c5b73da68a62b09d1/cc-skxr1pazhltvp/XITE_Hits.m3u8$LR•IPV4•3『线路2』 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://stream1.freetv.fun/nba-tv-7.m3u8$LR•IPV4•6『线路1』 -NBA TV,https://stream1.freetv.fun/nba-tv-5.m3u8$LR•IPV4•6『线路2』 -NBA TV,http://170.yfvodcdn.com:19980/live/nbaTV2/hls.m3u8$LR•IPV4•6『线路3』 -NBA TV,p3p://167.114.175.6:55331/65a587500007bc039fca3566638e69af$LR•IPV4•6『线路4』 -NBA TV,https://amg00556-amg00556c3-firetv-us-6060.playouts.now.amagi.tv/playlist.m3u8$LR•IPV4•6『线路5』 -NBA TV,http://user.scalecdn.co:8080/live/54706135/09221986/3092.m3u8$LR•IPV4•6『线路6』 +NBA TV,https://amg00556-amg00556c3-firetv-us-6060.playouts.now.amagi.tv/playlist.m3u8$LR•IPV4•6『线路1』 +NBA TV,http://user.scalecdn.co:8080/live/54706135/09221986/3092.m3u8$LR•IPV4•6『线路2』 +NBA TV,https://stream1.freetv.fun/nba-tv-7.m3u8$LR•IPV4•6『线路3』 +NBA TV,https://stream1.freetv.fun/nba-tv-5.m3u8$LR•IPV4•6『线路4』 +NBA TV,http://170.yfvodcdn.com:19980/live/nbaTV2/hls.m3u8$LR•IPV4•6『线路5』 +NBA TV,p3p://167.114.175.6:55331/65a587500007bc039fca3566638e69af$LR•IPV4•6『线路6』 Sukan,https://d25tgymtnqzu8s.cloudfront.net/smil:sukan/manifest.mpd$LR•IPV4 TV9,https://cdn4.skygo.mn/live/disk1/TV9HD/DASH-FTA/TV9HD.mpd$LR•IPV4•11『线路1』 TV9,https://dyjmyiv3bp2ez.cloudfront.net/pub-iotv9banaen8yq/liveabr/playlist.m3u8$LR•IPV4•11『线路2』 @@ -3606,186 +3614,186 @@ TV9,https://dyjmyiv3bp2ez.cloudfront.net/pub-iotv9telcmjhcs/liveabr/playlist.m3u TV9,https://tonton-live-switch-ssar.akamaized.net/stream-tv9/master.m3u8?bpkio_serviceid=6c0958d82a830a02ca0936d9cfab8311$LR•IPV4•11『线路9』 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•97『线路1』 -BBC,https://aegis-cloudfront-1.tubi.video/bb1fc6ad-9948-42ea-aaf3-20acfcdeecac/playlist.m3u8$LR•IPV4•97『线路2』 -BBC,http://free.cnlive.club/channel/356e7ac6/index.m3u8?q=1752629214236$LR•IPV4•97『线路3』 -BBC,http://free.cnlive.club/channel/359a630b/index.m3u8?q=1752629214236$LR•IPV4•97『线路4』 -BBC,p3p://167.114.175.6:55331/64026f590000e9663abc652f25176282$LR•IPV4•97『线路5』 -BBC,p3p://167.114.175.6:55331/6444eb2e000921503e6ecfe873cd10b1$LR•IPV4•97『线路6』 -BBC,http://125.227.210.55:8165/VideoInput/play.ts$LR•IPV4•97『线路7』 -BBC,https://d2vnbkvjbims7j.cloudfront.net/containerA/LTN/playlist.m3u8$LR•IPV4•97『线路8』 -BBC,https://vs-cmaf-pushb-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:bbc_alba/hevc_iptv_mse_v0.mpd$LR•IPV4•97『线路9』 -BBC,https://vs-cmaf-pushb-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:bbc_one_channel_islands/pc_hd_abr_v2.mpd$LR•IPV4•97『线路10』 -BBC,https://vs-cmaf-pushb-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:bbc_one_east/pc_hd_abr_v2.mpd$LR•IPV4•97『线路11』 -BBC,https://vs-cmaf-pushb-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:bbc_one_east_yorkshire/pc_hd_abr_v2.mpd$LR•IPV4•97『线路12』 -BBC,https://vs-cmaf-pushb-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:bbc_one_east_midlands/pc_hd_abr_v2.mpd$LR•IPV4•97『线路13』 -BBC,https://vs-cmaf-pushb-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:bbc_one_east_midlands/hevc_iptv_mse_v0.mpd$LR•IPV4•97『线路14』 -BBC,https://vs-cmaf-push-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:bbc_one_london/iptv_hd_abr_v1.mpd$LR•IPV4•97『线路15』 -BBC,http://193.46.58.239:8080/BBCOneHD/index.m3u8$LR•IPV4•97『线路16』 -BBC,https://vs-cmaf-pushb-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:bbc_one_north_east/pc_hd_abr_v2.mpd$LR•IPV4•97『线路17』 -BBC,https://vs-cmaf-pushb-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:bbc_one_north_east/hevc_iptv_mse_v0.mpd$LR•IPV4•97『线路18』 -BBC,https://vs-cmaf-pushb-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:bbc_one_north_west/pc_hd_abr_v2.mpd$LR•IPV4•97『线路19』 -BBC,https://vs-cmaf-pushb-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:bbc_one_north_west/hevc_iptv_mse_v0.mpd$LR•IPV4•97『线路20』 -BBC,https://vs-cmaf-pushb-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:bbc_one_northern_ireland_hd/pc_hd_abr_v2.mpd$LR•IPV4•97『线路21』 -BBC,https://vs-cmaf-pushb-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:bbc_one_northern_ireland_hd/hevc_iptv_mse_v0.mpd$LR•IPV4•97『线路22』 -BBC,https://vs-hls-pushb-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:bbc_one_scotland_hd/pc_hd_abr_v2.m3u8$LR•IPV4•97『线路23』 -BBC,https://vs-cmaf-pushb-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:bbc_one_scotland_hd/pc_hd_abr_v2.mpd$LR•IPV4•97『线路24』 -BBC,https://vs-cmaf-pushb-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:bbc_one_south/pc_hd_abr_v2.mpd$LR•IPV4•97『线路25』 -BBC,https://vs-cmaf-pushb-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:bbc_one_south_east/pc_hd_abr_v2.mpd$LR•IPV4•97『线路26』 -BBC,https://vs-cmaf-pushb-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:bbc_one_south_west/pc_hd_abr_v2.mpd$LR•IPV4•97『线路27』 -BBC,https://vs-cmaf-pushb-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:bbc_one_wales_hd/pc_hd_abr_v2.mpd$LR•IPV4•97『线路28』 -BBC,https://vs-cmaf-pushb-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:bbc_one_west/pc_hd_abr_v2.mpd$LR•IPV4•97『线路29』 -BBC,https://vs-cmaf-pushb-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:bbc_one_west_midlands/pc_hd_abr_v2.mpd$LR•IPV4•97『线路30』 -BBC,https://vs-cmaf-pushb-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:bbc_one_yorks/pc_hd_abr_v2.mpd$LR•IPV4•97『线路31』 -BBC,https://vs-cmaf-pushb-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:bbc_scotland_hd/iptv_hd_abr_v1.mpd$LR•IPV4•97『线路32』 -BBC,https://vs-cmaf-pushb-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:bbc_three_hd/iptv_hd_abr_v1.mpd$LR•IPV4•97『线路33』 -BBC,http://193.46.58.239:8080/BBCTwoHD/index.m3u8$LR•IPV4•97『线路34』 -BBC,https://vs-hls-pushb-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:bbc_two_northern_ireland_hd/pc_hd_abr_v2.m3u8$LR•IPV4•97『线路35』 -BBC,https://vs-cmaf-pushb-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:bbc_two_northern_ireland_hd/iptv_hd_abr_v1.mpd$LR•IPV4•97『线路36』 -BBC,https://vs-cmaf-pushb-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:bbc_two_wales_digital/iptv_hd_abr_v1.mpd$LR•IPV4•97『线路37』 -BBC,https://vs-cmaf-pushb-ww-live.akamaized.net/x=4/i=urn:bbc:pips:service:bbc_arabic_tv/pc_hd_abr_v2.mpd$LR•IPV4•97『线路38』 -BBC,https://pb-iiczlgfysam0q.akamaized.net/v1/amcnetworks_bbcnews_1/samsungheadend_us/latest/main/hls/playlist.m3u8$LR•IPV4•97『线路39』 -BBC,https://vs-cmaf-push-ww-live.akamaized.net/x=4/i=urn:bbc:pips:service:bbc_news_channel_hd/hevc_iptv_mse_v0.mpd$LR•IPV4•97『线路40』 -BBC,http://138.121.15.230:9002/BBC-NEWS/index.m3u8$LR•IPV4•97『线路41』 -BBC,http://23.237.104.106:8080/USA_BBC_NEWS/index.m3u8$LR•IPV4•97『线路42』 -BBC,http://45.153.96.44:8001$LR•IPV4•97『线路43』 -BBC,https://vs-cmaf-pushb-ww-live.akamaized.net/x=4/i=urn:bbc:pips:service:bbc_persian_tv/hevc_iptv_mse_v0.mpd$LR•IPV4•97『线路44』 -BBC,http://23.239.31.26:8989/bbcamerica/index.m3u8$LR•IPV4•97『线路45』 -BBC,http://40.160.24.52/BBC_AMERICA/index.m3u8$LR•IPV4•97『线路46』 -BBC,http://91.146.94.234:10001/play/a087$LR•IPV4•97『线路47』 -BBC,https://d1em2hga7sgumq.cloudfront.net/playlist.m3u8$LR•IPV4•97『线路48』 -BBC,https://pb-0ix3l1oxmg1fj.akamaized.net/playlist.m3u8$LR•IPV4•97『线路49』 -BBC,https://amg00793-amg00793c41-rakuten-it-5445.playouts.now.amagi.tv/playlist.m3u8$LR•IPV4•97『线路50』 -BBC,https://bbc-impossible-1-us.xumo.wurl.tv/playlist.m3u8$LR•IPV4•97『线路51』 -BBC,https://vs-cmaf-pushb-ww.live.cf.md.bbci.co.uk/x=4/i=urn:bbc:pips:service:bbc_afghan_tv/pc_hd_abr_v2.mpd$LR•IPV4•97『线路52』 -BBC,https://vs-cmaf-pushb-uk.live.cf.md.bbci.co.uk/x=4/i=urn:bbc:pips:service:red_button_one/iptv_hd_abr_v1.mpd$LR•IPV4•97『线路53』 -BBC,https://ve-cmaf-push-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:uk_bbc_stream_002/iptv_hd_abr_v1.mpd$LR•IPV4•97『线路54』 -BBC,https://ve-cmaf-push-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:uk_bbc_stream_003/iptv_hd_abr_v1.mpd$LR•IPV4•97『线路55』 -BBC,https://ve-cmaf-push-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:uk_bbc_stream_004/iptv_hd_abr_v1.mpd$LR•IPV4•97『线路56』 -BBC,https://ve-cmaf-push-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:uk_bbc_stream_005/iptv_hd_abr_v1.mpd$LR•IPV4•97『线路57』 -BBC,https://ve-cmaf-push-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:uk_bbc_stream_006/iptv_hd_abr_v1.mpd$LR•IPV4•97『线路58』 -BBC,https://ve-cmaf-push-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:uk_bbc_stream_007/iptv_hd_abr_v1.mpd$LR•IPV4•97『线路59』 -BBC,https://ve-cmaf-push-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:uk_bbc_stream_008/iptv_hd_abr_v1.mpd$LR•IPV4•97『线路60』 -BBC,https://ve-cmaf-push-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:uk_bbc_stream_009/iptv_hd_abr_v1.mpd$LR•IPV4•97『线路61』 -BBC,https://ve-cmaf-push-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:uk_bbc_stream_010/iptv_hd_abr_v1.mpd$LR•IPV4•97『线路62』 -BBC,https://ve-cmaf-push-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:uk_bbc_stream_011/iptv_hd_abr_v1.mpd$LR•IPV4•97『线路63』 -BBC,https://ve-cmaf-push-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:uk_bbc_stream_012/iptv_hd_abr_v1.mpd$LR•IPV4•97『线路64』 -BBC,https://ve-cmaf-push-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:uk_bbc_stream_013/iptv_hd_abr_v1.mpd$LR•IPV4•97『线路65』 -BBC,https://ve-cmaf-push-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:uk_bbc_stream_014/iptv_hd_abr_v1.mpd$LR•IPV4•97『线路66』 -BBC,https://ve-cmaf-push-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:uk_bbc_stream_015/iptv_hd_abr_v1.mpd$LR•IPV4•97『线路67』 -BBC,https://ve-cmaf-push-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:uk_bbc_stream_016/iptv_hd_abr_v1.mpd$LR•IPV4•97『线路68』 -BBC,https://ve-cmaf-push-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:uk_bbc_stream_017/iptv_hd_abr_v1.mpd$LR•IPV4•97『线路69』 -BBC,https://ve-cmaf-push-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:uk_bbc_stream_018/iptv_hd_abr_v1.mpd$LR•IPV4•97『线路70』 -BBC,https://ve-cmaf-push-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:uk_bbc_stream_019/iptv_hd_abr_v1.mpd$LR•IPV4•97『线路71』 -BBC,https://ve-cmaf-push-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:uk_bbc_stream_020/iptv_hd_abr_v1.mpd$LR•IPV4•97『线路72』 -BBC,https://ve-cmaf-push-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:uk_bbc_stream_021/iptv_hd_abr_v1.mpd$LR•IPV4•97『线路73』 -BBC,https://ve-cmaf-push-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:uk_bbc_stream_022/iptv_hd_abr_v1.mpd$LR•IPV4•97『线路74』 -BBC,https://ve-cmaf-push-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:uk_bbc_stream_023/iptv_hd_abr_v1.mpd$LR•IPV4•97『线路75』 -BBC,https://ve-cmaf-push-uk-live.akamaized.net/x=4/i=urn:bbc:pips:service:uk_bbc_stream_024/iptv_hd_abr_v1.mpd$LR•IPV4•97『线路76』 -BBC,https://jmp2.uk/plu-60dafb9a0df1ba000758d37b.m3u8$LR•IPV4•97『线路77』 -BBC,https://jmp2.uk/plu-62e7fa5ab5062e0007dcf97d.m3u8$LR•IPV4•97『线路78』 -BBC,https://amg00793-amg00793c5-xumo-us-2664.playouts.now.amagi.tv/bbcstudios-bbctopgear8min-all/playlist.m3u8$LR•IPV4•97『线路79』 -BBC,https://amg00793-amg00793c5-firetv-us-4068.playouts.now.amagi.tv/playlist.m3u8$LR•IPV4•97『线路80』 -BBC,https://amg00793-amg00793c49-rakuten-fi-5848.playouts.now.amagi.tv/playlist.m3u8$LR•IPV4•97『线路81』 -BBC,https://amg00793-amg00793c45-rakuten-fr-5539.playouts.now.amagi.tv/playlist.m3u8$LR•IPV4•97『线路82』 -BBC,https://amg00793-amg00793c44-rakuten-de-5538.playouts.now.amagi.tv/playlist.m3u8$LR•IPV4•97『线路83』 -BBC,https://amg00793-amg00793c43-rakuten-it-5537.playouts.now.amagi.tv/playlist.m3u8$LR•IPV4•97『线路84』 -BBC,https://dmr1h4skdal9h.cloudfront.net/playlist.m3u8$LR•IPV4•97『线路85』 -BBC,https://bbc-classicdrwho-1-us.roku.wurl.tv/playlist.m3u8$LR•IPV4•97『线路86』 -BBC,https://amg00793-amg00793c40-rakuten-es-5444.playouts.now.amagi.tv/playlist.m3u8$LR•IPV4•97『线路87』 -BBC,https://d11r33s5i066xh.cloudfront.net/playlist.m3u8$LR•IPV4•97『线路88』 -BBC,https://cdn4.skygo.mn/live/disk1/BBC_lifestyle/HLSv3-FTA/BBC_lifestyle.m3u8$LR•IPV4•97『线路89』 -BBC,https://jmp2.uk/plu-60e4519e6873180007d3cddb.m3u8$LR•IPV4•97『线路90』 -BBC,https://amg00793-amg00793c6-xumo-us-2669.playouts.now.amagi.tv/BBCStudios-BBCEarthA-hls/playlist.m3u8$LR•IPV4•97『线路91』 -BBC,http://185.102.171.218/BBCEarth/index.m3u8$LR•IPV4•97『线路92』 -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•97『线路93』 -BBC,https://d1e9r0b71zfwk7.cloudfront.net/playlist.m3u8$LR•IPV4•97『线路94』 -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•97『线路95』 -BBC,http://193.46.58.239:8080/CbeebiesHD/index.m3u8$LR•IPV4•97『线路96』 -BBC,http://41.205.77.102/BBC-THREE/index.m3u8$LR•IPV4•97『线路97』 -CNA,https://d2e1asnsl7br7b.cloudfront.net/7782e205e72f43aeb4a48ec97f66ebbe/index_5.m3u8$LR•IPV4•6『线路1』 -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•11『线路1』 -CNN,http://88.212.15.19/live/test_cnn_pirma_news/playlist.m3u8$LR•IPV4•11『线路2』 -CNN,https://jmp2.uk/plu-66c45c274f25dd00092739ee.m3u8$LR•IPV4•11『线路3』 -CNN,https://jmp2.uk/plu-5421f71da6af422839419cb3.m3u8$LR•IPV4•11『线路4』 -CNN,https://jmp2.uk/plu-66337e365a402e00087eccaf.m3u8$LR•IPV4•11『线路5』 -CNN,https://jmp2.uk/plu-66c45c0de7f5e80008b82005.m3u8$LR•IPV4•11『线路6』 -CNN,https://jmp2.uk/plu-66c45b36a72e7b0008a2b291.m3u8$LR•IPV4•11『线路7』 -CNN,https://jmp2.uk/plu-66c45ba803e3b20008d8c294.m3u8$LR•IPV4•11『线路8』 -CNN,https://jmp2.uk/plu-66dff9d46ad04d0008fda4de.m3u8$LR•IPV4•11『线路9』 -CNN,https://jmp2.uk/plu-673248f9030a2c0008033af8.m3u8$LR•IPV4•11『线路10』 -CNN,https://jmp2.uk/plu-66e0b4536ad04d0008fff4b2.m3u8$LR•IPV4•11『线路11』 -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•11『线路1』 -Sky News,http://41.205.77.102/SKYNEWS/index.m3u8$LR•IPV4•11『线路2』 -Sky News,https://live-stream.skynewsarabia.com/c-horizontal-channel/horizontal-stream/index.m3u8$LR•IPV4•11『线路3』 -Sky News,https://stream.skynewsarabia.com/ott/ott.m3u8$LR•IPV4•11『线路4』 -Sky News,https://stream.skynewsarabia.com/vertical/vertical.m3u8$LR•IPV4•11『线路5』 -Sky News,https://live-stream.skynewsarabia.com/c-vertical-channel/vertical-stream/index.m3u8$LR•IPV4•11『线路6』 -Sky News,https://skynewsau-live.akamaized.net/hls/live/2002689/skynewsau-extra1/master.m3u8$LR•IPV4•11『线路7』 -Sky News,https://skynewsau-live.akamaized.net/hls/live/2002690/skynewsau-extra2/master.m3u8$LR•IPV4•11『线路8』 -Sky News,https://skynewsau-live.akamaized.net/hls/live/2002691/skynewsau-extra3/master.m3u8$LR•IPV4•11『线路9』 -Sky News,https://lbgo.bozztv.com/ssh101/ssh101/skynews/playlist.m3u8$LR•IPV4•11『线路10』 -Sky News,https://distro001-gb-hls1-prd.delivery.skycdp.com/easel_cdn/ngrp:weather_loop.stream_all/playlist.m3u8$LR•IPV4•11『线路11』 -Al Jazeera,https://live-hls-aje-ak.getaj.net/AJE/01.m3u8$LR•IPV4•8『线路1』 -Al Jazeera,https://live-hls-apps-aja-fa.getaj.net/AJA/01.m3u8$LR•IPV4•8『线路2』 -Al Jazeera,https://live-hls-web-aja2-gcp.thehlive.com/AJA2/index.m3u8$LR•IPV4•8『线路3』 -Al Jazeera,https://live-hls-apps-aje-fa.getaj.net/AJE/index.m3u8$LR•IPV4•8『线路4』 -Al Jazeera,https://live-hls-apps-ajm-fa.getaj.net/AJM/index.m3u8$LR•IPV4•8『线路5』 -Al Jazeera,https://live-hls-apps-ajm24-fa.getaj.net/AJM24/index.m3u8$LR•IPV4•8『线路6』 -Al Jazeera,https://live-hls-apps-ajm2-fa.getaj.net/AJM2/index.m3u8$LR•IPV4•8『线路7』 -Al Jazeera,https://live-hls-apps-ajd-fa.getaj.net/AJD/index.m3u8$LR•IPV4•8『线路8』 -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』 -Arirang,http://amdlive-ch01.ctnd.com.edgesuite.net/arirang_1ch/smil:arirang_1ch.smil/playlist.m3u8$LR•IPV4•5『线路4』 -Arirang,http://45.162.64.114/ARIRANG/index.m3u8$LR•IPV4•5『线路5』 -TRT World,https://tv-trtworld.medya.trt.com.tr/master_1080.m3u8$LR•IPV4•3『线路1』 -TRT World,https://tv-trtworld.medya.trt.com.tr/master.m3u8$LR•IPV4•3『线路2』 -TRT World,https://dash2.antik.sk/live/test_trt_world_atktv/playlist.m3u8$LR•IPV4•3『线路3』 +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•97『线路1』 +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•97『线路2』 +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•97『线路3』 +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•97『线路4』 +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•97『线路5』 +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•97『线路6』 +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•97『线路7』 +BBC,http://193.46.58.239:8080/BBCOneHD/index.m3u8$LR•IPV4•97『线路8』 +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•97『线路9』 +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•97『线路10』 +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•97『线路11』 +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•97『线路12』 +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•97『线路13』 +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•97『线路14』 +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•97『线路15』 +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•97『线路16』 +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•97『线路17』 +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•97『线路18』 +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•97『线路19』 +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•97『线路20』 +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•97『线路21』 +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•97『线路22』 +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•97『线路23』 +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•97『线路24』 +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•97『线路25』 +BBC,http://193.46.58.239:8080/BBCTwoHD/index.m3u8$LR•IPV4•97『线路26』 +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•97『线路27』 +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•97『线路28』 +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•97『线路29』 +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•97『线路30』 +BBC,https://pb-iiczlgfysam0q.akamaized.net/v1/amcnetworks_bbcnews_1/samsungheadend_us/latest/main/hls/playlist.m3u8$LR•IPV4•97『线路31』 +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•97『线路32』 +BBC,http://138.121.15.230:9002/BBC-NEWS/index.m3u8$LR•IPV4•97『线路33』 +BBC,http://23.237.104.106:8080/USA_BBC_NEWS/index.m3u8$LR•IPV4•97『线路34』 +BBC,http://45.153.96.44:8001$LR•IPV4•97『线路35』 +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•97『线路36』 +BBC,http://23.239.31.26:8989/bbcamerica/index.m3u8$LR•IPV4•97『线路37』 +BBC,http://40.160.24.52/BBC_AMERICA/index.m3u8$LR•IPV4•97『线路38』 +BBC,http://91.146.94.234:10001/play/a087$LR•IPV4•97『线路39』 +BBC,https://d1em2hga7sgumq.cloudfront.net/playlist.m3u8$LR•IPV4•97『线路40』 +BBC,https://pb-0ix3l1oxmg1fj.akamaized.net/playlist.m3u8$LR•IPV4•97『线路41』 +BBC,https://amg00793-amg00793c41-rakuten-it-5445.playouts.now.amagi.tv/playlist.m3u8$LR•IPV4•97『线路42』 +BBC,https://bbc-impossible-1-us.xumo.wurl.tv/playlist.m3u8$LR•IPV4•97『线路43』 +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•97『线路44』 +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•97『线路45』 +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•97『线路46』 +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•97『线路47』 +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•97『线路48』 +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•97『线路49』 +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•97『线路50』 +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•97『线路51』 +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•97『线路52』 +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•97『线路53』 +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•97『线路54』 +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•97『线路55』 +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•97『线路56』 +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•97『线路57』 +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•97『线路58』 +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•97『线路59』 +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•97『线路60』 +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•97『线路61』 +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•97『线路62』 +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•97『线路63』 +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•97『线路64』 +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•97『线路65』 +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•97『线路66』 +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•97『线路67』 +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•97『线路68』 +BBC,https://jmp2.uk/plu-60dafb9a0df1ba000758d37b.m3u8$LR•IPV4•97『线路69』 +BBC,https://jmp2.uk/plu-62e7fa5ab5062e0007dcf97d.m3u8$LR•IPV4•97『线路70』 +BBC,https://amg00793-amg00793c5-xumo-us-2664.playouts.now.amagi.tv/bbcstudios-bbctopgear8min-all/playlist.m3u8$LR•IPV4•97『线路71』 +BBC,https://amg00793-amg00793c5-firetv-us-4068.playouts.now.amagi.tv/playlist.m3u8$LR•IPV4•97『线路72』 +BBC,https://amg00793-amg00793c49-rakuten-fi-5848.playouts.now.amagi.tv/playlist.m3u8$LR•IPV4•97『线路73』 +BBC,https://amg00793-amg00793c45-rakuten-fr-5539.playouts.now.amagi.tv/playlist.m3u8$LR•IPV4•97『线路74』 +BBC,https://amg00793-amg00793c44-rakuten-de-5538.playouts.now.amagi.tv/playlist.m3u8$LR•IPV4•97『线路75』 +BBC,https://amg00793-amg00793c43-rakuten-it-5537.playouts.now.amagi.tv/playlist.m3u8$LR•IPV4•97『线路76』 +BBC,https://dmr1h4skdal9h.cloudfront.net/playlist.m3u8$LR•IPV4•97『线路77』 +BBC,https://bbc-classicdrwho-1-us.roku.wurl.tv/playlist.m3u8$LR•IPV4•97『线路78』 +BBC,https://amg00793-amg00793c40-rakuten-es-5444.playouts.now.amagi.tv/playlist.m3u8$LR•IPV4•97『线路79』 +BBC,https://d11r33s5i066xh.cloudfront.net/playlist.m3u8$LR•IPV4•97『线路80』 +BBC,https://cdn4.skygo.mn/live/disk1/BBC_lifestyle/HLSv3-FTA/BBC_lifestyle.m3u8$LR•IPV4•97『线路81』 +BBC,https://jmp2.uk/plu-60e4519e6873180007d3cddb.m3u8$LR•IPV4•97『线路82』 +BBC,https://amg00793-amg00793c6-xumo-us-2669.playouts.now.amagi.tv/BBCStudios-BBCEarthA-hls/playlist.m3u8$LR•IPV4•97『线路83』 +BBC,http://185.102.171.218/BBCEarth/index.m3u8$LR•IPV4•97『线路84』 +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•97『线路85』 +BBC,https://d1e9r0b71zfwk7.cloudfront.net/playlist.m3u8$LR•IPV4•97『线路86』 +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•97『线路87』 +BBC,http://193.46.58.239:8080/CbeebiesHD/index.m3u8$LR•IPV4•97『线路88』 +BBC,http://41.205.77.102/BBC-THREE/index.m3u8$LR•IPV4•97『线路89』 +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•97『线路90』 +BBC,https://aegis-cloudfront-1.tubi.video/bb1fc6ad-9948-42ea-aaf3-20acfcdeecac/playlist.m3u8$LR•IPV4•97『线路91』 +BBC,http://free.cnlive.club/channel/356e7ac6/index.m3u8?q=1752629214236$LR•IPV4•97『线路92』 +BBC,http://free.cnlive.club/channel/359a630b/index.m3u8?q=1752629214236$LR•IPV4•97『线路93』 +BBC,p3p://167.114.175.6:55331/64026f590000e9663abc652f25176282$LR•IPV4•97『线路94』 +BBC,p3p://167.114.175.6:55331/6444eb2e000921503e6ecfe873cd10b1$LR•IPV4•97『线路95』 +BBC,http://125.227.210.55:8165/VideoInput/play.ts$LR•IPV4•97『线路96』 +BBC,https://d2vnbkvjbims7j.cloudfront.net/containerA/LTN/playlist.m3u8$LR•IPV4•97『线路97』 +CNA,https://live1.mediadesk.al/cnatvlive.m3u8$LR•IPV4•6『线路1』 +CNA,https://d2e1asnsl7br7b.cloudfront.net/7782e205e72f43aeb4a48ec97f66ebbe/index.m3u8$LR•IPV4•6『线路2』 +CNA,https://live.creacast.com/cna/stream/playlist.m3u8$LR•IPV4•6『线路3』 +CNA,https://amg01082-cna-amg01082c1-rlaxx-us-11304.playouts.now.amagi.tv/playlist.m3u8$LR•IPV4•6『线路4』 +CNA,https://d2e1asnsl7br7b.cloudfront.net/7782e205e72f43aeb4a48ec97f66ebbe/index_5.m3u8$LR•IPV4•6『线路5』 +CNA,http://d2e1asnsl7br7b.cloudfront.net/7782e205e72f43aeb4a48ec97f66ebbe/index_5.m3u8?zshijd$LR•IPV4•6『线路6』 +CNN,http://88.212.15.19/live/test_cnn_pirma_news/playlist.m3u8$LR•IPV4•11『线路1』 +CNN,https://jmp2.uk/plu-66c45c274f25dd00092739ee.m3u8$LR•IPV4•11『线路2』 +CNN,https://jmp2.uk/plu-5421f71da6af422839419cb3.m3u8$LR•IPV4•11『线路3』 +CNN,https://jmp2.uk/plu-66337e365a402e00087eccaf.m3u8$LR•IPV4•11『线路4』 +CNN,https://jmp2.uk/plu-66c45c0de7f5e80008b82005.m3u8$LR•IPV4•11『线路5』 +CNN,https://jmp2.uk/plu-66c45b36a72e7b0008a2b291.m3u8$LR•IPV4•11『线路6』 +CNN,https://jmp2.uk/plu-66c45ba803e3b20008d8c294.m3u8$LR•IPV4•11『线路7』 +CNN,https://jmp2.uk/plu-66dff9d46ad04d0008fda4de.m3u8$LR•IPV4•11『线路8』 +CNN,https://jmp2.uk/plu-673248f9030a2c0008033af8.m3u8$LR•IPV4•11『线路9』 +CNN,https://jmp2.uk/plu-66e0b4536ad04d0008fff4b2.m3u8$LR•IPV4•11『线路10』 +CNN,https://ds2c506obo7m8.cloudfront.net/v1/master/3722c60a815c199d9c0ef36c5b73da68a62b09d1/cc-7zjq3tdqasbg8/index.m3u8$LR•IPV4•11『线路11』 +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』 +Sky News,http://41.205.77.102/SKYNEWS/index.m3u8$LR•IPV4•11『线路1』 +Sky News,https://live-stream.skynewsarabia.com/c-horizontal-channel/horizontal-stream/index.m3u8$LR•IPV4•11『线路2』 +Sky News,https://stream.skynewsarabia.com/ott/ott.m3u8$LR•IPV4•11『线路3』 +Sky News,https://stream.skynewsarabia.com/vertical/vertical.m3u8$LR•IPV4•11『线路4』 +Sky News,https://live-stream.skynewsarabia.com/c-vertical-channel/vertical-stream/index.m3u8$LR•IPV4•11『线路5』 +Sky News,https://skynewsau-live.akamaized.net/hls/live/2002689/skynewsau-extra1/master.m3u8$LR•IPV4•11『线路6』 +Sky News,https://skynewsau-live.akamaized.net/hls/live/2002690/skynewsau-extra2/master.m3u8$LR•IPV4•11『线路7』 +Sky News,https://skynewsau-live.akamaized.net/hls/live/2002691/skynewsau-extra3/master.m3u8$LR•IPV4•11『线路8』 +Sky News,https://lbgo.bozztv.com/ssh101/ssh101/skynews/playlist.m3u8$LR•IPV4•11『线路9』 +Sky News,https://distro001-gb-hls1-prd.delivery.skycdp.com/easel_cdn/ngrp:weather_loop.stream_all/playlist.m3u8$LR•IPV4•11『线路10』 +Sky News,https://d39chvnxm26pgp.cloudfront.net/v1/master/72588bff830dec7b26d7cbbf5f3c24928aec5c03/cc-sthen6ms4vxgv-stage/WNSFO/ABR.m3u8$LR•IPV4•11『线路11』 +Al Jazeera,https://live-hls-apps-aja-fa.getaj.net/AJA/01.m3u8$LR•IPV4•8『线路1』 +Al Jazeera,https://live-hls-web-aja2-gcp.thehlive.com/AJA2/index.m3u8$LR•IPV4•8『线路2』 +Al Jazeera,https://live-hls-apps-aje-fa.getaj.net/AJE/index.m3u8$LR•IPV4•8『线路3』 +Al Jazeera,https://live-hls-apps-ajm-fa.getaj.net/AJM/index.m3u8$LR•IPV4•8『线路4』 +Al Jazeera,https://live-hls-apps-ajm24-fa.getaj.net/AJM24/index.m3u8$LR•IPV4•8『线路5』 +Al Jazeera,https://live-hls-apps-ajm2-fa.getaj.net/AJM2/index.m3u8$LR•IPV4•8『线路6』 +Al Jazeera,https://live-hls-apps-ajd-fa.getaj.net/AJD/index.m3u8$LR•IPV4•8『线路7』 +Al Jazeera,https://live-hls-aje-ak.getaj.net/AJE/01.m3u8$LR•IPV4•8『线路8』 +Arirang,http://amdlive-ch01.ctnd.com.edgesuite.net/arirang_3ch/smil:arirang_3ch.smil/playlist.m3u8$LR•IPV4•5『线路1』 +Arirang,https://amdlive-ch02-ctnd-com.akamaized.net/arirang_2ch/smil:arirang_2ch.smil/playlist.m3u8$LR•IPV4•5『线路2』 +Arirang,http://amdlive-ch01.ctnd.com.edgesuite.net/arirang_1ch/smil:arirang_1ch.smil/playlist.m3u8$LR•IPV4•5『线路3』 +Arirang,http://45.162.64.114/ARIRANG/index.m3u8$LR•IPV4•5『线路4』 +Arirang,https://amdlive-ch01-ctnd-com.akamaized.net/arirang_1ch/smil:arirang_1ch.smil/chunklist_b3256000_sleng.m3u8$LR•IPV4•5『线路5』 +TRT World,https://tv-trtworld.medya.trt.com.tr/master.m3u8$LR•IPV4•3『线路1』 +TRT World,https://dash2.antik.sk/live/test_trt_world_atktv/playlist.m3u8$LR•IPV4•3『线路2』 +TRT World,https://tv-trtworld.medya.trt.com.tr/master_1080.m3u8$LR•IPV4•3『线路3』 Bloomberg Originals,https://e96a7526.wurl.com/master/f36d25e7e52f1ba8d7e56eb859c636563214f541/UmFrdXRlblRWLWV1X0Jsb29tYmVyZ09yaWdpbmFsc19ITFM/playlist.m3u8$LR•IPV4•3『线路1』 Bloomberg Originals,https://86fdc85a.wurl.com/master/f36d25e7e52f1ba8d7e56eb859c636563214f541/TEctZ2JfQmxvb21iZXJnT3JpZ2luYWxzX0hMUw/playlist.m3u8$LR•IPV4•3『线路2』 Bloomberg Originals,https://bloomberg.com/media-manifest/streams/qt.m3u8$LR•IPV4•3『线路3』 -Fashion TV,http://free.cnlive.club/channel/n7852a99f/index.m3u8?q=1752629214236$LR•IPV4•2『线路1』 -Fashion TV,https://cdn2.invivo.bg/Codefashion_5500/index.m3u8$LR•IPV4•2『线路2』 -SKY,http://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,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』 +Fashion TV,https://cdn2.invivo.bg/Codefashion_5500/index.m3u8$LR•IPV4•2『线路1』 +Fashion TV,http://free.cnlive.club/channel/n7852a99f/index.m3u8?q=1752629214236$LR•IPV4•2『线路2』 +SKY,https://cdn5.smart-tv-data.com/bluesky/bluesky-live/playlist.m3u8$LR•IPV4•26『线路1』 +SKY,http://80.194.62.172:50002/stream/channelid/1848745953$LR•IPV4•26『线路2』 +SKY,https://primetv-prod.akamaized.net/v1/prime-freeview-aes128.m3u8$LR•IPV4•26『线路3』 +SKY,https://linear-p.media.skyone.co.nz/primeplus1.clear.m3u8$LR•IPV4•26『线路4』 +SKY,https://eu.live.skyfolk.mk/live.m3u8$LR•IPV4•26『线路5』 +SKY,https://636ffd31f0e12.streamlock.net/RacingStream1/RacingStream1/playlist.m3u8$LR•IPV4•26『线路6』 +SKY,https://636ffd31f0e12.streamlock.net/RacingStream2/RacingStream2/playlist.m3u8$LR•IPV4•26『线路7』 +SKY,https://skylivetab-new.akamaized.net/hls/live/2038782/stcsd/index.m3u8$LR•IPV4•26『线路8』 +SKY,http://s.rocketdns.info:8080/live/monstercable/Dq6jjknxCr/2188.ts$LR•IPV4•26『线路9』 +SKY,http://s.rocketdns.info:8080/live/monstercable/Dq6jjknxCr/2179.ts$LR•IPV4•26『线路10』 +SKY,http://s.rocketdns.info:8080/live/monstercable/Dq6jjknxCr/2182.ts$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』 KBS world,http://31.148.48.15/KBS_World/index.m3u8$LR•IPV4 FIFA+,https://jmp2.uk/plu-660c29b5aec9680008f5b4a4.m3u8$LR•IPV4•9『线路1』 FIFA+,https://37b4c228.wurl.com/master/f36d25e7e52f1ba8d7e56eb859c636563214f541/UmFrdXRlblRWLWZyX0ZJRkFQbHVzRnJlbmNoX0hMUw/playlist.m3u8$LR•IPV4•9『线路2』 @@ -3796,17 +3804,17 @@ FIFA+,https://e3be9ac5.wurl.com/master/f36d25e7e52f1ba8d7e56eb859c636563214f541/ FIFA+,https://d63fabad.wurl.com/master/f36d25e7e52f1ba8d7e56eb859c636563214f541/UmFrdXRlblRWLWVzX0ZJRkFQbHVzU3BhbmlzaF9ITFM/playlist.m3u8$LR•IPV4•9『线路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•9『线路8』 FIFA+,https://cffda8ff.wurl.com/master/f36d25e7e52f1ba8d7e56eb859c636563214f541/U2Ftc3VuZy1nYl9GSUZBUGx1c3dvbWVuX0hMUw/playlist.m3u8$LR•IPV4•9『线路9』 -Newsmax,https://nmx1ota.akamaized.net/hls/live/2107010/Live_1/3.m3u8$LR•IPV4•8『线路1』 -Newsmax,http://nmxlive.akamaized.net/hls/live/529965/Live_1/index.m3u8$LR•IPV4•8『线路2』 -Newsmax,https://nmxlive.akamaized.net/hls/live/529965/Live_1/index.m3u8$LR•IPV4•8『线路3』 -Newsmax,https://2-fss-2.streamhoster.com/pl_120/206858-4404556-1/playlist.m3u8$LR•IPV4•8『线路4』 -Newsmax,https://amg00217-newsmax-newsmax-zeasn-022k9.amagi.tv/playlist.m3u8$LR•IPV4•8『线路5』 -Newsmax,https://newsmaxadria.mts-si.tv/newsmaxadria/index.m3u8$LR•IPV4•8『线路6』 -Newsmax,https://n1ottesorkatv.akamaized.net/hls/live/2113795/Live_1/index.m3u8$LR•IPV4•8『线路7』 -Newsmax,http://40.160.24.53/NEWSMAX/index.m3u8$LR•IPV4•8『线路8』 +Newsmax,https://2-fss-2.streamhoster.com/pl_120/206858-4404556-1/playlist.m3u8$LR•IPV4•8『线路1』 +Newsmax,https://amg00217-newsmax-newsmax-zeasn-022k9.amagi.tv/playlist.m3u8$LR•IPV4•8『线路2』 +Newsmax,https://newsmaxadria.mts-si.tv/newsmaxadria/index.m3u8$LR•IPV4•8『线路3』 +Newsmax,https://n1ottesorkatv.akamaized.net/hls/live/2113795/Live_1/index.m3u8$LR•IPV4•8『线路4』 +Newsmax,http://40.160.24.53/NEWSMAX/index.m3u8$LR•IPV4•8『线路5』 +Newsmax,https://nmx1ota.akamaized.net/hls/live/2107010/Live_1/3.m3u8$LR•IPV4•8『线路6』 +Newsmax,http://nmxlive.akamaized.net/hls/live/529965/Live_1/index.m3u8$LR•IPV4•8『线路7』 +Newsmax,https://nmxlive.akamaized.net/hls/live/529965/Live_1/index.m3u8$LR•IPV4•8『线路8』 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』 +GB News,https://amg01076-lightningintern-gbnewsau-samsungau-et7fz.amagi.tv/playlist/amg01076-lightningintern-gbnewsau-samsungau/playlist.m3u8$LR•IPV4•2『线路1』 +GB News,https://rakutenaa-lightning-gbnews-rakuten-ccoa9.amagi.tv/playlist/rakutenAA-lightning-gbnews-rakuten/playlist.m3u8$LR•IPV4•2『线路2』 TBS,https://cdntv.tbs.seoul.kr/tbs/tbs_tv_web.smil/playlist.m3u8$LR•IPV4 ION Plus,https://cdn-uw2-prod.tsv2.amagi.tv/linear/amg01438-ewscrippscompan-ionplus-tablo/playlist.m3u8$LR•IPV4 ION,https://ap02.iqplay.tv:8082/iqb8002/i09/playlist.m3u8$LR•IPV4•5『线路1』 @@ -3814,13 +3822,13 @@ ION,https://pb-xhb3ic8b61whm.akamaized.net/Ion_US.m3u8$LR•IPV4•5『线路2 ION,https://jmp2.uk/plu-65453f30085df200085883d8.m3u8$LR•IPV4•5『线路3』 ION,https://aegis-cloudfront-1.tubi.video/3b6afc3b-97f7-4f22-99f4-7bcff60fc39d/playlist.m3u8$LR•IPV4•5『线路4』 ION,https://pb-usmbvsgwcg8pc.akamaized.net/Ion_Mystery_US.m3u8$LR•IPV4•5『线路5』 -Love Nature,p3p://167.114.175.6:55331/655fa9280009c6278edfc1176731425f$LR•IPV4•7『线路1』 -Love Nature,https://d18dyiwu97wm6q.cloudfront.net/playlist2160p.m3u8$LR•IPV4•7『线路2』 -Love Nature,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=1761&tk=f6cc1e0a0e1a$LR•IPV4•7『线路3』 -Love Nature,https://amg01515-amg01515c17-xumo-us-2489.playouts.now.amagi.tv/bamus-lovenaturespanish-roku/playlist.m3u8$LR•IPV4•7『线路4』 -Love Nature,https://aegis-cloudfront-1.tubi.video/6d6d0f24-8445-4b4c-bdf6-44f9e38beaa4/playlist.m3u8$LR•IPV4•7『线路5』 -Love Nature,https://pb-ehs1glsha1juy.akamaized.net/Love_Nature_4K.m3u8$LR•IPV4•7『线路6』 -Love Nature,http://185.246.209.113/LOVENATUREHD/index.m3u8$LR•IPV4•7『线路7』 +Love Nature,https://amg01515-amg01515c17-xumo-us-2489.playouts.now.amagi.tv/bamus-lovenaturespanish-roku/playlist.m3u8$LR•IPV4•7『线路1』 +Love Nature,https://aegis-cloudfront-1.tubi.video/6d6d0f24-8445-4b4c-bdf6-44f9e38beaa4/playlist.m3u8$LR•IPV4•7『线路2』 +Love Nature,https://pb-ehs1glsha1juy.akamaized.net/Love_Nature_4K.m3u8$LR•IPV4•7『线路3』 +Love Nature,http://185.246.209.113/LOVENATUREHD/index.m3u8$LR•IPV4•7『线路4』 +Love Nature,p3p://167.114.175.6:55331/655fa9280009c6278edfc1176731425f$LR•IPV4•7『线路5』 +Love Nature,https://d18dyiwu97wm6q.cloudfront.net/playlist2160p.m3u8$LR•IPV4•7『线路6』 +Love Nature,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=1761&tk=f6cc1e0a0e1a$LR•IPV4•7『线路7』 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 @@ -3864,44 +3872,44 @@ Tastemade,https://jmp2.uk/plu-5fd1419a3b4f4b000773ba85.m3u8$LR•IPV4•15『线 Tastemade,https://tmint-aus-samsungau.amagi.tv/playlist.m3u8$LR•IPV4•15『线路13』 Tastemade,https://tastemadees16us-xumo.amagi.tv/playlist.m3u8$LR•IPV4•15『线路14』 Tastemade,https://d6ef3usc6d9cl.cloudfront.net/Tastemade_Travel.m3u8$LR•IPV4•15『线路15』 -MovieSphere,https://moviesphereuk-samsunguk.amagi.tv/playlist.m3u8$LR•IPV4•5『线路1』 -MovieSphere,https://jmp2.uk/plu-6401d85a49839300087b116c.m3u8$LR•IPV4•5『线路2』 -MovieSphere,https://amg00353-lionsgatestudio-moviesphere-xumo-zh5u0.amagi.tv/playlist.m3u8$LR•IPV4•5『线路3』 -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』 +MovieSphere,https://jmp2.uk/plu-6401d85a49839300087b116c.m3u8$LR•IPV4•5『线路1』 +MovieSphere,https://amg00353-lionsgatestudio-moviesphere-xumo-zh5u0.amagi.tv/playlist.m3u8$LR•IPV4•5『线路2』 +MovieSphere,https://amg00353-lionsgatefilmsi-moviesphereaus-samsungau-7qzhf.amagi.tv/playlist/amg00353-lionsgatefilmsi-moviesphereaus-samsungau/playlist.m3u8$LR•IPV4•5『线路3』 +MovieSphere,https://jmp2.uk/plu-64a3d96f060e830008af6745.m3u8$LR•IPV4•5『线路4』 +MovieSphere,https://moviesphereuk-samsunguk.amagi.tv/playlist.m3u8$LR•IPV4•5『线路5』 香港国际财经,p3p://167.114.175.6:55331/64838620000cd8ed32fb0d6a414411f7$LR•IPV4 -Bloomberg,https://epg.pw/stream/d2edf469b9079064a283f4b0811cbf6f2597ebbb3d08dcf77036a4b5a791b7cf.m3u8$LR•IPV4•16『线路1』 -Bloomberg,https://bloomberg-bloombergtv-3-nl.samsung.wurl.tv/playlist.m3u8$LR•IPV4•16『线路2』 -Bloomberg,https://bloomberg-bloombergtv-5-eu.plex.wurl.tv/3ea2c48ba0034cc276591c94a5b439c0.m3u8$LR•IPV4•16『线路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•16『线路4』 -Bloomberg,https://ciner.daioncdn.net/bloomberght/bloomberght.m3u8$LR•IPV4•16『线路5』 -Bloomberg,http://23.237.104.106:8080/USA_BLOOMBERG/index.m3u8$LR•IPV4•16『线路6』 -Bloomberg,https://bloomberg.com/media-manifest/streams/aus.m3u8$LR•IPV4•16『线路7』 -Bloomberg,http://213.91.179.28:8000/play/a04m$LR•IPV4•16『线路8』 -Bloomberg,https://bloomberg.com/media-manifest/streams/eu-event.m3u8$LR•IPV4•16『线路9』 -Bloomberg,https://bloomberg.com/media-manifest/streams/eu.m3u8$LR•IPV4•16『线路10』 -Bloomberg,https://cdn4.skygo.mn/live/disk1/BloombergMon/DASH-FTA/BloombergMon.mpd$LR•IPV4•16『线路11』 -Bloomberg,https://bloomberg.com/media-manifest/streams/us-event.m3u8$LR•IPV4•16『线路12』 -Bloomberg,https://bloomberg.com/media-manifest/streams/politics.m3u8$LR•IPV4•16『线路13』 -Bloomberg,https://d8975dc3.wurl.com/master/f36d25e7e52f1ba8d7e56eb859c636563214f541/U2Ftc3VuZy1nYl9CbG9vbWJlcmdUVlBsdXNfSExT/playlist.m3u8$LR•IPV4•16『线路14』 -Bloomberg,https://86ebec83.wurl.com/master/f36d25e7e52f1ba8d7e56eb859c636563214f541/UmFrdXRlblRWLWV1X0Jsb29tYmVyZ1RWUGx1c19ITFM/playlist.m3u8$LR•IPV4•16『线路15』 -Bloomberg,https://pe-ak-lp01a-9c9media.akamaized.net/live/News1BNNDigi/p/dash/00000001/1bba52dc66e4c68e/manifest.mpd$LR•IPV4•16『线路16』 -CNBC,http://fl2.moveonjoy.com/CNBC/index.m3u8$LR•IPV4•16『线路1』 -CNBC,https://cdn4.skygo.mn/live/disk1/CNBC/DASH-FTA/CNBC.mpd$LR•IPV4•16『线路2』 -CNBC,https://jmp2.uk/plu-679a973a97782f0008ff4bb6.m3u8$LR•IPV4•16『线路3』 -CNBC,https://amg14891-amg14891c5-amgplt0020.playout.now3.amagi.tv/playlist.m3u8$LR•IPV4•16『线路4』 -CNBC,http://40.160.24.52/CNBC/index.m3u8$LR•IPV4•16『线路5』 -CNBC,https://cnbc-live.akamaized.net/cnbc/master.m3u8$LR•IPV4•16『线路6』 -CNBC,https://liveh34.vtvprime.vn/hls/CNBC/03.m3u8$LR•IPV4•16『线路7』 -CNBC,https://n18syndication.akamaized.net/bpk-tv/CNBC_Awaaz_NW18_MOB/output01/master.m3u8$LR•IPV4•16『线路8』 -CNBC,https://n18syndication.akamaized.net/bpk-tv/CNBC_Bazaar_NW18_MOB/output01/master.m3u8$LR•IPV4•16『线路9』 -CNBC,https://live.cnbcindonesia.com/livecnbc/smil:cnbctv.smil/master.m3u8$LR•IPV4•16『线路10』 -CNBC,https://n18syndication.akamaized.net/bpk-tv/CNBC_TV18_NW18_MOB/output01/index.m3u8$LR•IPV4•16『线路11』 -CNBC,https://n18syndication.akamaized.net/bpk-tv/CNBC_Tv18_Prime_HD_NW18_MOB/output01/index.m3u8$LR•IPV4•16『线路12』 -CNBC,http://108.181.20.255:27347/livehttpplay?channel_id=23117$LR•IPV4•16『线路13』 -CNBC,https://amg01079-nbcuuk-amg01079c2-samsung-gb-1258.playouts.now.amagi.tv/playlist.m3u8$LR•IPV4•16『线路14』 -CNBC,https://cdn4.skygo.mn/live/disk1/CNBC/HLSv3-FTA/CNBC.m3u8$LR•IPV4•16『线路15』 -CNBC,https://hnpsechtsc.turknet.ercdn.net/xpnvudnlsv/cnbc-e/cnbc-e.m3u8$LR•IPV4•16『线路16』 +Bloomberg,https://ciner.daioncdn.net/bloomberght/bloomberght.m3u8$LR•IPV4•16『线路1』 +Bloomberg,http://23.237.104.106:8080/USA_BLOOMBERG/index.m3u8$LR•IPV4•16『线路2』 +Bloomberg,https://bloomberg.com/media-manifest/streams/aus.m3u8$LR•IPV4•16『线路3』 +Bloomberg,http://213.91.179.28:8000/play/a04m$LR•IPV4•16『线路4』 +Bloomberg,https://bloomberg.com/media-manifest/streams/eu-event.m3u8$LR•IPV4•16『线路5』 +Bloomberg,https://bloomberg.com/media-manifest/streams/eu.m3u8$LR•IPV4•16『线路6』 +Bloomberg,https://cdn4.skygo.mn/live/disk1/BloombergMon/DASH-FTA/BloombergMon.mpd$LR•IPV4•16『线路7』 +Bloomberg,https://bloomberg.com/media-manifest/streams/us-event.m3u8$LR•IPV4•16『线路8』 +Bloomberg,https://bloomberg.com/media-manifest/streams/politics.m3u8$LR•IPV4•16『线路9』 +Bloomberg,https://d8975dc3.wurl.com/master/f36d25e7e52f1ba8d7e56eb859c636563214f541/U2Ftc3VuZy1nYl9CbG9vbWJlcmdUVlBsdXNfSExT/playlist.m3u8$LR•IPV4•16『线路10』 +Bloomberg,https://86ebec83.wurl.com/master/f36d25e7e52f1ba8d7e56eb859c636563214f541/UmFrdXRlblRWLWV1X0Jsb29tYmVyZ1RWUGx1c19ITFM/playlist.m3u8$LR•IPV4•16『线路11』 +Bloomberg,https://pe-ak-lp01a-9c9media.akamaized.net/live/News1BNNDigi/p/dash/00000001/1bba52dc66e4c68e/manifest.mpd$LR•IPV4•16『线路12』 +Bloomberg,https://epg.pw/stream/d2edf469b9079064a283f4b0811cbf6f2597ebbb3d08dcf77036a4b5a791b7cf.m3u8$LR•IPV4•16『线路13』 +Bloomberg,https://bloomberg-bloombergtv-3-nl.samsung.wurl.tv/playlist.m3u8$LR•IPV4•16『线路14』 +Bloomberg,https://bloomberg-bloombergtv-5-eu.plex.wurl.tv/3ea2c48ba0034cc276591c94a5b439c0.m3u8$LR•IPV4•16『线路15』 +Bloomberg,https://liveprodusphoenixeast.akamaized.net/USPhx-HD/Channel-TX-USPhx-AWS-virginia-1/Source-USPhx-16k-1-s6lk2-BP-07-02-81ykIWnsMsg_live.m3u8$LR•IPV4•16『线路16』 +CNBC,https://cdn4.skygo.mn/live/disk1/CNBC/DASH-FTA/CNBC.mpd$LR•IPV4•16『线路1』 +CNBC,https://jmp2.uk/plu-679a973a97782f0008ff4bb6.m3u8$LR•IPV4•16『线路2』 +CNBC,https://amg14891-amg14891c5-amgplt0020.playout.now3.amagi.tv/playlist.m3u8$LR•IPV4•16『线路3』 +CNBC,http://40.160.24.52/CNBC/index.m3u8$LR•IPV4•16『线路4』 +CNBC,https://cnbc-live.akamaized.net/cnbc/master.m3u8$LR•IPV4•16『线路5』 +CNBC,https://liveh34.vtvprime.vn/hls/CNBC/03.m3u8$LR•IPV4•16『线路6』 +CNBC,https://n18syndication.akamaized.net/bpk-tv/CNBC_Awaaz_NW18_MOB/output01/master.m3u8$LR•IPV4•16『线路7』 +CNBC,https://n18syndication.akamaized.net/bpk-tv/CNBC_Bazaar_NW18_MOB/output01/master.m3u8$LR•IPV4•16『线路8』 +CNBC,https://live.cnbcindonesia.com/livecnbc/smil:cnbctv.smil/master.m3u8$LR•IPV4•16『线路9』 +CNBC,https://n18syndication.akamaized.net/bpk-tv/CNBC_TV18_NW18_MOB/output01/index.m3u8$LR•IPV4•16『线路10』 +CNBC,https://n18syndication.akamaized.net/bpk-tv/CNBC_Tv18_Prime_HD_NW18_MOB/output01/index.m3u8$LR•IPV4•16『线路11』 +CNBC,http://108.181.20.255:27347/livehttpplay?channel_id=23117$LR•IPV4•16『线路12』 +CNBC,https://amg01079-nbcuuk-amg01079c2-samsung-gb-1258.playouts.now.amagi.tv/playlist.m3u8$LR•IPV4•16『线路13』 +CNBC,https://cdn4.skygo.mn/live/disk1/CNBC/HLSv3-FTA/CNBC.m3u8$LR•IPV4•16『线路14』 +CNBC,https://hnpsechtsc.turknet.ercdn.net/xpnvudnlsv/cnbc-e/cnbc-e.m3u8$LR•IPV4•16『线路15』 +CNBC,http://fl2.moveonjoy.com/CNBC/index.m3u8$LR•IPV4•16『线路16』 TV8,https://1740288887.rsc.cdn77.org/1740288887/index.m3u8$LR•IPV4•6『线路1』 TV8,https://k20.usastreams.com:8081/tv8/index.m3u8$LR•IPV4•6『线路2』 TV8,https://cdn4.skygo.mn/live/disk1/TV8HD/DASH-FTA/TV8HD.mpd$LR•IPV4•6『线路3』 @@ -3933,26 +3941,26 @@ NU2,https://raw.githubusercontent.com/ChiSheng9/iptv/master/TV14.m3u8$LR•IPV4 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://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』 +ABC NEWS,https://abc-news-dmd-streams-1.akamaized.net/out/v1/701126012d044971b3fa89406a440133/index.m3u8$LR•IPV4•15『线路1』 +ABC NEWS,https://pb-0n3n2ej0w8pl9.akamaized.net/ABCNewsLive_Disney.m3u8$LR•IPV4•15『线路2』 +ABC NEWS,https://abcnews-streams.akamaized.net/hls/live/2023560/abcnewshudson1/master.m3u8$LR•IPV4•15『线路3』 +ABC NEWS,https://abcnews-streams.akamaized.net/hls/live/2023561/abcnewshudson2/master.m3u8$LR•IPV4•15『线路4』 +ABC NEWS,https://abcnews-streams.akamaized.net/hls/live/2023562/abcnewshudson3/master.m3u8$LR•IPV4•15『线路5』 +ABC NEWS,https://abcnews-streams.akamaized.net/hls/live/2023563/abcnewshudson4/master.m3u8$LR•IPV4•15『线路6』 +ABC NEWS,https://abcnews-streams.akamaized.net/hls/live/2023564/abcnewshudson5/master.m3u8$LR•IPV4•15『线路7』 +ABC NEWS,https://abcnews-streams.akamaized.net/hls/live/2023565/abcnewshudson6/master.m3u8$LR•IPV4•15『线路8』 +ABC NEWS,https://abcnews-streams.akamaized.net/hls/live/2023566/abcnewshudson7/master.m3u8$LR•IPV4•15『线路9』 +ABC NEWS,https://abcnews-streams.akamaized.net/hls/live/2023567/abcnewshudson8/master.m3u8$LR•IPV4•15『线路10』 +ABC NEWS,https://abcnews-streams.akamaized.net/hls/live/2023568/abcnewshudson9/master.m3u8$LR•IPV4•15『线路11』 +ABC NEWS,https://abcnews-streams.akamaized.net/hls/live/2023569/abcnewshudson10/master.m3u8$LR•IPV4•15『线路12』 +ABC NEWS,https://d4ybyqrhce41r.cloudfront.net/v1/master/3fec3e5cac39a52b2132f9c66c83dae043dc17d4/prod-xumo-linear-nbcu-hlsv3/master.m3u8?ads.channelId=99991626$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』 大爱,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』 -NBC NEWS,https://d1si3n1st4nkgb.cloudfront.net/10502/88896001/hls/master.m3u8?ads.xumo_channelId=88896001$LR•IPV4•3『线路2』 -NBC NEWS,http://206.212.244.63/127/index.m3u8$LR•IPV4•3『线路3』 +NBC NEWS,https://d1si3n1st4nkgb.cloudfront.net/10502/88896001/hls/master.m3u8?ads.xumo_channelId=88896001$LR•IPV4•3『线路1』 +NBC NEWS,http://206.212.244.63/127/index.m3u8$LR•IPV4•3『线路2』 +NBC NEWS,https://livehub-voidnet.onrender.com/cluster/streamcore/us/NBC_REDIS.m3u8$LR•IPV4•3『线路3』 IHOT,#genre# iHOT爱体育,http://146.56.165.66:7788/TVOD/2000000004000000060/hnbblive/index.m3u8$LR•IPV4 diff --git a/tvbox/lib/iptv_test.m3u b/tvbox/lib/iptv_test.m3u index 5776f5e7..aa4884ea 100755 --- a/tvbox/lib/iptv_test.m3u +++ b/tvbox/lib/iptv_test.m3u @@ -1,8 +1,8 @@ #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=1784329200-1-b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c-81ad4aefc95ce528b3da1112f0bc9ff2&yid=b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c$LR•IPV4•3『线路1』 +https://live-play-hls.cctvnews.cctv.com/CCTVChannel/channel_cctv4k_mbd.m3u8?auth_key=1784332800-1-b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c-0240f422767495f3b4be3b54c6f0496a&yid=b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c$LR•IPV4•3『线路1』 #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=1784322000-1-b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c-aa68fb06c12f53b71a4d170807f32df5&yid=b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c$LR•IPV4•3『线路2』 +https://live-play-hls.cctvnews.cctv.com/CCTVChannel/channel_cctv4k_mbd.m3u8?auth_key=1784336400-1-b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c-c68beb1a091dd48540f9056f3e86c7c2&yid=b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c$LR•IPV4•3『线路2』 #EXTINF:-1 tvg-id="CCTV4K" tvg-name="CCTV4K" group-title="央视频道",CCTV-4K http://198.204.240.250:82/live/cctv4k.m3u8$LR•IPV4•3『线路3』 #EXTINF:-1 tvg-id="象山综合" tvg-name="象山综合" group-title="浙江频道",象山综合 @@ -28,7 +28,7 @@ http://live.metshop.top/huya/11352941?cdn=alicdn$LR•IPV4•4『线路4』 #EXTINF:-1 tvg-id="小草" tvg-name="小草" group-title="经典小品",小草 https://i.uik.cc/view.php/0bb3de0276d838610d458fd3379b33a0.mp4$LR•IPV4 #EXTINF:-1 tvg-id="东方卫视4K" tvg-name="东方卫视4K" group-title="4K频道",东方卫视4K -http://bp-resource-dfl.bestv.cn/148/3/video.m3u8$LR•IPV4•2『线路1』 +https://bp-resource-dfl.bestv.cn/148/3/video.m3u8$LR•IPV4•2『线路1』 #EXTINF:-1 tvg-id="东方卫视4K" tvg-name="东方卫视4K" group-title="4K频道",东方卫视4K http://43.251.226.89:8080/play/926.m3u8$LR•IPV4•2『线路2』 #EXTINF:-1 tvg-id="湖南卫视4K" tvg-name="湖南卫视4K" group-title="4K频道",湖南卫视4K @@ -79,8 +79,16 @@ https://live.264788.xyz/channel/shenzhenweishi4k?streamid=9828b90c3948bae63cb8de http://101.35.240.114:88/live.php?id=深圳卫视4K$LR•IPV4•8『线路8』 #EXTINF:-1 tvg-id="南国都市4K" tvg-name="南国都市4K" group-title="4K频道",南国都市4K https://tencentplay.gztv.com/live/nanguodushi.m3u8?txSecret=550af55c0ea34ce492748481415b6dfa&txTime=1903e7b17de$LR•IPV4 +#EXTINF:-1 tvg-id="CCTV4K" tvg-name="CCTV4K" group-title="4K频道",CCTV4K真4K +http://vip1.xinketongxun.fun:8082/tsfile/live/1026_1.m3u8$LR•IPV4 #EXTINF:-1 tvg-id="CCTV4K" tvg-name="CCTV4K" group-title="央视高清",CCTV4K http://101.43.145.141:12002/gaoma/cctv4k.m3u8$LR•IPV4 +#EXTINF:-1 tvg-id="CCTV发现之旅" tvg-name="CCTV发现之旅" group-title="咪咕央视",CCTV发现之旅 +http://t.061899.xyz/tl/tl.php?id=fxzl$LR•IPV4 +#EXTINF:-1 tvg-id="CCTV老故事" tvg-name="CCTV老故事" group-title="咪咕央视",CCTV老故事 +http://t.061899.xyz/tl/tl.php?id=lgs$LR•IPV4 +#EXTINF:-1 tvg-id="CCTV中学生" tvg-name="CCTV中学生" group-title="咪咕央视",CCTV中学生 +http://t.061899.xyz/tl/tl.php?id=zxs$LR•IPV4 #EXTINF:-1 tvg-id="NOW爆谷" tvg-name="NOW爆谷" group-title="BXTV频道",NOW爆谷 p3p://167.114.175.6:55331/65bf60df000777a004c3831b56247b8e$LR•IPV4•2『线路1』 #EXTINF:-1 tvg-id="NOW爆谷" tvg-name="NOW爆谷" group-title="BXTV频道",NOW爆谷 @@ -102,9 +110,7 @@ https://live.ottiptv.cc/huya/11601963$LR•IPV4•2『线路2』 #EXTINF:-1 tvg-id="蜡笔小新" tvg-name="蜡笔小新" group-title="动画频道",蜡笔小新 http://103.193.151.146/huya.php?id=11352970$LR•IPV4 #EXTINF:-1 tvg-id="喜羊羊与灰太狼" tvg-name="喜羊羊与灰太狼" group-title="动画频道",喜羊羊与灰太狼 -http://103.193.151.146/huya.php?id=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 #EXTINF:-1 tvg-id="精灵宝可梦" tvg-name="精灵宝可梦" group-title="动画频道",精灵宝可梦 http://103.193.151.146/huya.php?id=23749096$LR•IPV4•2『线路1』 #EXTINF:-1 tvg-id="精灵宝可梦" tvg-name="精灵宝可梦" group-title="动画频道",精灵宝可梦 @@ -113,8 +119,6 @@ https://live.ottiptv.cc/huya/23749096$LR•IPV4•2『线路2』 https://live.ottiptv.cc/huya/30080236$LR•IPV4 #EXTINF:-1 tvg-id="航海王" tvg-name="航海王" group-title="动画频道",航海王 http://103.193.151.146/huya.php?id=16913382$LR•IPV4 -#EXTINF:-1 tvg-id="宇宙科幻合集" tvg-name="宇宙科幻合集" group-title="虎牙影视",宇宙科幻合集 -http://cdn.jdshipin.com:8880/huya.php?id=11342428$LR•IPV4 #EXTINF:-1 tvg-id="古装武侠" tvg-name="古装武侠" group-title="斗鱼影视",古装武侠 http://www.goodiptv.club/douyu/2793084$LR•IPV4 #EXTINF:-1 tvg-id="冰冰影剧" tvg-name="冰冰影剧" group-title="斗鱼影视",冰冰影剧 @@ -130,9 +134,9 @@ http://www.goodiptv.club/douyu/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="斗鱼影视",橙记港剧 -http://huanqiuzhibo.cn/manifest/douyu.php?id=4549169$LR•IPV4•2『线路1』 +http://www.goodiptv.club/douyu/4549169$LR•IPV4•2『线路1』 #EXTINF:-1 tvg-id="橙记港剧" tvg-name="橙记港剧" group-title="斗鱼影视",橙记港剧 -http://www.goodiptv.club/douyu/4549169$LR•IPV4•2『线路2』 +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』 #EXTINF:-1 tvg-id="经典剧集" tvg-name="经典剧集" group-title="斗鱼影视",经典剧集 @@ -163,8 +167,6 @@ https://live.ottiptv.cc/yy/1382736814$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="电视剧频道",特种兵之火凤凰 https://live.ottiptv.cc/huya/29982636$LR•IPV4 #EXTINF:-1 tvg-id="士兵突击" tvg-name="士兵突击" group-title="电视剧频道",士兵突击 @@ -174,7 +176,7 @@ https://live.metshop.top/huya/11342430$LR•IPV4•2『线路2』 #EXTINF:-1 tvg-id="天龙八部" tvg-name="天龙八部" group-title="电视剧频道",天龙八部 https://live.ottiptv.cc/yy/1351814644$LR•IPV4 #EXTINF:-1 tvg-id="倚天屠龙记" tvg-name="倚天屠龙记" group-title="电视剧频道",倚天屠龙记 -http://cdn.jdshipin.com:8880/huya.php?id=23734246$LR•IPV4 +https://live.ottiptv.cc/huya/11342403$LR•IPV4 #EXTINF:-1 tvg-id="康熙王朝" tvg-name="康熙王朝" group-title="电视剧频道",康熙王朝 https://live.ottiptv.cc/huya/11352940$LR•IPV4 #EXTINF:-1 tvg-id="庆余年" tvg-name="庆余年" group-title="电视剧频道",庆余年 @@ -185,28 +187,16 @@ http://58.39.190.143:35455/huya/11352960$LR•IPV4•2『线路2』 https://live.ottiptv.cc/huya/11352871$LR•IPV4 #EXTINF:-1 tvg-id="鬼吹灯之怒晴湘西" tvg-name="鬼吹灯之怒晴湘西" group-title="电视剧频道",鬼吹灯之怒晴湘西 https://live.ottiptv.cc/huya/11602075$LR•IPV4 -#EXTINF:-1 tvg-id="鬼吹灯之云南虫谷" tvg-name="鬼吹灯之云南虫谷" group-title="电视剧频道",鬼吹灯之云南虫谷 -https://live.ottiptv.cc/huya/11352898$LR•IPV4 #EXTINF:-1 tvg-id="伪装者" tvg-name="伪装者" group-title="电视剧频道",伪装者 https://live.ottiptv.cc/yy/1354936244$LR•IPV4 #EXTINF:-1 tvg-id="仙剑奇侠传" tvg-name="仙剑奇侠传" group-title="电视剧频道",仙剑奇侠传 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="电视剧频道",柳舟计 -https://live.ottiptv.cc/huya/23860039$LR•IPV4 #EXTINF:-1 tvg-id="流水迢迢" tvg-name="流水迢迢" group-title="电视剧频道",流水迢迢 https://live.ottiptv.cc/huya/23865036$LR•IPV4 -#EXTINF:-1 tvg-id="唐诡之西行" tvg-name="唐诡之西行" group-title="电视剧频道",唐诡之西行 -https://live.ottiptv.cc/huya/26355763$LR•IPV4 -#EXTINF:-1 tvg-id="玫瑰的故事" tvg-name="玫瑰的故事" group-title="电视剧频道",玫瑰的故事 -https://live.ottiptv.cc/huya/23865142$LR•IPV4 -#EXTINF:-1 tvg-id="梦中的那片海" tvg-name="梦中的那片海" group-title="电视剧频道",梦中的那片海 -https://live.ottiptv.cc/huya/26355765$LR•IPV4 #EXTINF:-1 tvg-id="知否知否" tvg-name="知否知否" group-title="电视剧频道",知否知否 https://live.ottiptv.cc/yy/21881901$LR•IPV4 #EXTINF:-1 tvg-id="父母爱情" tvg-name="父母爱情" group-title="电视剧频道",父母爱情 @@ -215,18 +205,6 @@ https://live.ottiptv.cc/yy/1354926650$LR•IPV4 https://live.ottiptv.cc/huya/29465868$LR•IPV4 #EXTINF:-1 tvg-id="武林外传" tvg-name="武林外传" group-title="电视剧频道",武林外传 http://live.nctv.top/DJlio/huya.php?id=21059598$LR•IPV4 -#EXTINF:-1 tvg-id="楚汉骄雄" tvg-name="楚汉骄雄" group-title="埋堆堆频道",楚汉骄雄 -http://cdn.jdshipin.com:8880/huya.php?id=29465854$LR•IPV4 -#EXTINF:-1 tvg-id="西游记2" tvg-name="西游记2" group-title="埋堆堆频道",西游记2 -http://cdn.jdshipin.com:8880/huya.php?id=29465859$LR•IPV4 -#EXTINF:-1 tvg-id="活佛济公3" tvg-name="活佛济公3" group-title="埋堆堆频道",活佛济公3 -http://cdn.jdshipin.com:8880/huya.php?id=23903123$LR•IPV4 -#EXTINF:-1 tvg-id="无心法师" tvg-name="无心法师" group-title="埋堆堆频道",无心法师 -http://cdn.jdshipin.com:8880/huya.php?id=30080233$LR•IPV4 -#EXTINF:-1 tvg-id="法政先锋" tvg-name="法政先锋" group-title="埋堆堆频道",法政先锋 -http://cdn.jdshipin.com:8880/huya.php?id=23863804$LR•IPV4 -#EXTINF:-1 tvg-id="野蛮亲家" tvg-name="野蛮亲家" group-title="埋堆堆频道",野蛮亲家 -http://cdn.jdshipin.com:8880/huya.php?id=23863796$LR•IPV4 #EXTINF:-1 tvg-id="倩女幽魂人间道" tvg-name="倩女幽魂人间道" group-title="点播电影",倩女幽魂人间道 http://jsmov2.a.yximgs.com/bs3/video-hls/5250634317044855747_hlsb.m3u8$LR•IPV4 #EXTINF:-1 tvg-id="倩女幽魂道道道" tvg-name="倩女幽魂道道道" group-title="点播电影",倩女幽魂道道道 @@ -292,7 +270,7 @@ https://stream1.freetv.fun/qian-jiang-du-shi-1.m3u8$LR•IPV4•5『线路3』 #EXTINF:-1 tvg-id="钱江都市" tvg-name="钱江都市" group-title="☘️浙江频道",钱江都市 https://stream1.freetv.fun/qian-jiang-du-shi-2.m3u8$LR•IPV4•5『线路4』 #EXTINF:-1 tvg-id="钱江都市" tvg-name="钱江都市" group-title="☘️浙江频道",钱江都市 -http://ali-m-l.cztv.com/channels/lantian/channel002/1080p.m3u8$LR•IPV4•5『线路5』 +https://ali-m-l.cztv.com/channels/lantian/channel002/1080p.m3u8$LR•IPV4•5『线路5』 #EXTINF:-1 tvg-id="YMG未来" tvg-name="YMG未来" group-title="☘️浙江频道",YMG未来 http://l.cztvcloud.com/channels/lantian/SXyuhang3/720p.m3u8?$LR•IPV4 #EXTINF:-1 tvg-id="上虞文化" tvg-name="上虞文化" group-title="☘️浙江频道",上虞文化 @@ -348,13 +326,13 @@ http://l.cztvcloud.com/channels/lantian/SXlanxi1/720p.m3u8?zzhed$LR•IPV4•7 #EXTINF:-1 tvg-id="兰溪新闻" tvg-name="兰溪新闻" group-title="☘️浙江频道",兰溪新闻 http://l.cztvcloud.com/channels/lantian/SXlanxi1/720p.m3u8?zzhed?$LR•IPV4•7『线路7』 #EXTINF:-1 tvg-id="姚江文化" tvg-name="姚江文化" group-title="☘️浙江频道",姚江文化 -http://l.cztvcloud.com/channels/lantian/SXyuyao3/720p.m3u8?zzhed$LR•IPV4•5『线路1』 +https://l.cztvcloud.com/channels/lantian/SXyuyao3/720p.m3u8$LR•IPV4•5『线路1』 #EXTINF:-1 tvg-id="姚江文化" tvg-name="姚江文化" group-title="☘️浙江频道",姚江文化 -http://l.cztvcloud.com/channels/lantian/SXyuyao3/720p.m3u8zzhed$LR•IPV4•5『线路2』 +https://l.cztvcloud.com/channels/lantian/SXyuyao2/720p.m3u8$LR•IPV4•5『线路2』 #EXTINF:-1 tvg-id="姚江文化" tvg-name="姚江文化" group-title="☘️浙江频道",姚江文化 -https://l.cztvcloud.com/channels/lantian/SXyuyao3/720p.m3u8$LR•IPV4•5『线路3』 +http://l.cztvcloud.com/channels/lantian/SXyuyao3/720p.m3u8zzhed$LR•IPV4•5『线路3』 #EXTINF:-1 tvg-id="姚江文化" tvg-name="姚江文化" group-title="☘️浙江频道",姚江文化 -https://l.cztvcloud.com/channels/lantian/SXyuyao2/720p.m3u8$LR•IPV4•5『线路4』 +http://l.cztvcloud.com/channels/lantian/SXyuyao3/720p.m3u8?zzhed$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="☘️浙江频道",嵊州新闻 @@ -826,51 +804,51 @@ 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•8『线路1』 #EXTINF:-1 tvg-id="凤凰卫视中文台" tvg-name="凤凰卫视中文台" group-title="港澳台",凤凰卫视中文台 -http://zmgd.zyrnet.com:8888/hls/110/index.m3u8$LR•IPV4•8『线路2』 +http://223.110.245.139/ott.js.chinamobile.com/PLTV/3/224/3221226922/index.m3u8$LR•IPV4•8『线路2』 #EXTINF:-1 tvg-id="凤凰卫视中文台" tvg-name="凤凰卫视中文台" group-title="港澳台",凤凰卫视中文台 -http://120.198.95.220:9901/tsfile/live/1036_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•8『线路3』 +http://zmgd.zyrnet.com:8888/hls/110/index.m3u8$LR•IPV4•8『线路3』 #EXTINF:-1 tvg-id="凤凰卫视中文台" tvg-name="凤凰卫视中文台" group-title="港澳台",凤凰卫视中文台 -http://218.206.193.218:8888/hls/66/index.m3u8$LR•IPV4•8『线路4』 +http://120.198.95.220:9901/tsfile/live/1036_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•8『线路4』 #EXTINF:-1 tvg-id="凤凰卫视中文台" tvg-name="凤凰卫视中文台" group-title="港澳台",凤凰卫视中文台 -http://120.198.95.220:9901/tsfile/live/1036_1.m3u8?key=txiptv$LR•IPV4•8『线路5』 +http://218.206.193.218:8888/hls/66/index.m3u8$LR•IPV4•8『线路5』 #EXTINF:-1 tvg-id="凤凰卫视中文台" tvg-name="凤凰卫视中文台" group-title="港澳台",凤凰卫视中文台 -http://r.jdshipin.com/cCCzW$LR•IPV4•8『线路6』 +http://120.198.95.220:9901/tsfile/live/1036_1.m3u8?key=txiptv$LR•IPV4•8『线路6』 #EXTINF:-1 tvg-id="凤凰卫视中文台" tvg-name="凤凰卫视中文台" group-title="港澳台",凤凰卫视中文台 -http://cdn6.163189.xyz/163189/fhzw$LR•IPV4•8『线路7』 +http://r.jdshipin.com/cCCzW$LR•IPV4•8『线路7』 #EXTINF:-1 tvg-id="凤凰卫视中文台" tvg-name="凤凰卫视中文台" group-title="港澳台",凤凰卫视中文台 -http://223.110.245.139/ott.js.chinamobile.com/PLTV/3/224/3221226922/index.m3u8$LR•IPV4•8『线路8』 +http://cdn6.163189.xyz/163189/fhzw$LR•IPV4•8『线路8』 #EXTINF:-1 tvg-id="凤凰卫视资讯台" tvg-name="凤凰卫视资讯台" group-title="港澳台",凤凰卫视资讯台 http://api.mg.itv888.cn:8080/hls/11ef1dc70d8/index.m3u8$LR•IPV4•10『线路1』 #EXTINF:-1 tvg-id="凤凰卫视资讯台" tvg-name="凤凰卫视资讯台" group-title="港澳台",凤凰卫视资讯台 -http://zmgd.zyrnet.com:8888/hls/109/index.m3u8$LR•IPV4•10『线路2』 +http://223.110.245.167/ott.js.chinamobile.com/PLTV/3/224/3221226923/index.m3u8$LR•IPV4•10『线路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•10『线路3』 +http://zmgd.zyrnet.com:8888/hls/109/index.m3u8$LR•IPV4•10『线路3』 #EXTINF:-1 tvg-id="凤凰卫视资讯台" tvg-name="凤凰卫视资讯台" group-title="港澳台",凤凰卫视资讯台 -http://120.198.95.220:9901/tsfile/live/1037_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•10『线路4』 +http://221.7.175.154:8445/tsfile/live/1021_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•10『线路4』 #EXTINF:-1 tvg-id="凤凰卫视资讯台" tvg-name="凤凰卫视资讯台" group-title="港澳台",凤凰卫视资讯台 -http://120.198.95.220:9901/tsfile/live/1037_1.m3u8?key=txiptv$LR•IPV4•10『线路5』 +http://120.198.95.220:9901/tsfile/live/1037_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•10『线路5』 #EXTINF:-1 tvg-id="凤凰卫视资讯台" tvg-name="凤凰卫视资讯台" group-title="港澳台",凤凰卫视资讯台 -p3p://167.114.175.6:55331/5fffbf860003807cedf4e1016c3c3ed2$LR•IPV4•10『线路6』 +http://120.198.95.220:9901/tsfile/live/1037_1.m3u8?key=txiptv$LR•IPV4•10『线路6』 #EXTINF:-1 tvg-id="凤凰卫视资讯台" tvg-name="凤凰卫视资讯台" group-title="港澳台",凤凰卫视资讯台 -http://r.jdshipin.com/0Rp07$LR•IPV4•10『线路7』 +p3p://167.114.175.6:55331/5fffbf860003807cedf4e1016c3c3ed2$LR•IPV4•10『线路7』 #EXTINF:-1 tvg-id="凤凰卫视资讯台" tvg-name="凤凰卫视资讯台" group-title="港澳台",凤凰卫视资讯台 -http://php.jdshipin.com/TVOD/iptv.php?id=fhzx$LR•IPV4•10『线路8』 +http://r.jdshipin.com/0Rp07$LR•IPV4•10『线路8』 #EXTINF:-1 tvg-id="凤凰卫视资讯台" tvg-name="凤凰卫视资讯台" group-title="港澳台",凤凰卫视资讯台 -http://cdn6.163189.xyz/163189/fhzx$LR•IPV4•10『线路9』 +http://php.jdshipin.com/TVOD/iptv.php?id=fhzx$LR•IPV4•10『线路9』 #EXTINF:-1 tvg-id="凤凰卫视资讯台" tvg-name="凤凰卫视资讯台" group-title="港澳台",凤凰卫视资讯台 -http://223.110.245.167/ott.js.chinamobile.com/PLTV/3/224/3221226923/index.m3u8$LR•IPV4•10『线路10』 +http://cdn6.163189.xyz/163189/fhzx$LR•IPV4•10『线路10』 #EXTINF:-1 tvg-id="凤凰卫视香港台" tvg-name="凤凰卫视香港台" group-title="港澳台",凤凰卫视香港台 -http://122.152.202.33/s/81a8a44f/index.m3u8?id=fhhk$LR•IPV4•6『线路1』 +http://223.110.245.136/PLTV/3/224/3221226975/index.m3u8$LR•IPV4•6『线路1』 #EXTINF:-1 tvg-id="凤凰卫视香港台" tvg-name="凤凰卫视香港台" group-title="港澳台",凤凰卫视香港台 -p3p://167.114.175.6:55331/5fe0b82c000cac9774c17f262e43314d$LR•IPV4•6『线路2』 +http://122.152.202.33/s/81a8a44f/index.m3u8?id=fhhk$LR•IPV4•6『线路2』 #EXTINF:-1 tvg-id="凤凰卫视香港台" tvg-name="凤凰卫视香港台" group-title="港澳台",凤凰卫视香港台 -http://r.jdshipin.com/yDoTN$LR•IPV4•6『线路3』 +p3p://167.114.175.6:55331/5fe0b82c000cac9774c17f262e43314d$LR•IPV4•6『线路3』 #EXTINF:-1 tvg-id="凤凰卫视香港台" tvg-name="凤凰卫视香港台" group-title="港澳台",凤凰卫视香港台 -http://php.jdshipin.com/TVOD/iptv.php?id=fhhk$LR•IPV4•6『线路4』 +http://r.jdshipin.com/yDoTN$LR•IPV4•6『线路4』 #EXTINF:-1 tvg-id="凤凰卫视香港台" tvg-name="凤凰卫视香港台" group-title="港澳台",凤凰卫视香港台 -http://cdn6.163189.xyz/163189/fhhk$LR•IPV4•6『线路5』 +http://php.jdshipin.com/TVOD/iptv.php?id=fhhk$LR•IPV4•6『线路5』 #EXTINF:-1 tvg-id="凤凰卫视香港台" tvg-name="凤凰卫视香港台" group-title="港澳台",凤凰卫视香港台 -http://223.110.245.136/PLTV/3/224/3221226975/index.m3u8$LR•IPV4•6『线路6』 +http://cdn6.163189.xyz/163189/fhhk$LR•IPV4•6『线路6』 #EXTINF:-1 tvg-id="台视新闻" tvg-name="台视新闻" group-title="港澳台",台视新闻 http://38.64.72.148:80/hls/modn/list/4013/chunklist0.m3u8$LR•IPV4•4『线路1』 #EXTINF:-1 tvg-id="台视新闻" tvg-name="台视新闻" group-title="港澳台",台视新闻 @@ -888,41 +866,41 @@ 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•18『线路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•18『线路1』 #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•18『线路2』 +http://204.12.221.218:8181/3m1080p/tjws.m3u8$LR•IPV4•18『线路2』 #EXTINF:-1 tvg-id="天津" tvg-name="天津" group-title="☘️天津频道",天津 -http://204.12.221.218:8181/3m1080p/tjws.m3u8$LR•IPV4•18『线路3』 +http://107.150.60.122/live/tjwshd.m3u8$LR•IPV4•18『线路3』 #EXTINF:-1 tvg-id="天津" tvg-name="天津" group-title="☘️天津频道",天津 -http://107.150.60.122/live/tjwshd.m3u8$LR•IPV4•18『线路4』 +http://192.151.150.154/live/tjwshd.m3u8$LR•IPV4•18『线路4』 #EXTINF:-1 tvg-id="天津" tvg-name="天津" group-title="☘️天津频道",天津 -http://192.151.150.154/live/tjwshd.m3u8$LR•IPV4•18『线路5』 +http://38.75.136.137:98/gslb/dsdqpub/tjwshd.m3u8?auth=testpub$LR•IPV4•18『线路5』 #EXTINF:-1 tvg-id="天津" tvg-name="天津" group-title="☘️天津频道",天津 -http://38.75.136.137:98/gslb/dsdqpub/tjwshd.m3u8?auth=testpub$LR•IPV4•18『线路6』 +http://63.141.230.178:82/gslb/zbdq5.m3u8?id=tjwshd$LR•IPV4•18『线路6』 #EXTINF:-1 tvg-id="天津" tvg-name="天津" group-title="☘️天津频道",天津 -http://63.141.230.178:82/gslb/zbdq5.m3u8?id=tjwshd$LR•IPV4•18『线路7』 +http://207.56.13.146:81/cdnlive/tjws.m3u8$LR•IPV4•18『线路7』 #EXTINF:-1 tvg-id="天津" tvg-name="天津" group-title="☘️天津频道",天津 -http://207.56.13.146:81/cdnlive/tjws.m3u8$LR•IPV4•18『线路8』 +http://120.198.95.220:9901/tsfile/live/1067_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•18『线路8』 #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•18『线路9』 +http://112.27.235.94:8000/hls/42/index.m3u8$LR•IPV4•18『线路9』 #EXTINF:-1 tvg-id="天津" tvg-name="天津" group-title="☘️天津频道",天津 -http://112.27.235.94:8000/hls/42/index.m3u8$LR•IPV4•18『线路10』 +https://piccpndks.v.kcdnvip.com/audio/tianjin_2/index.m3u8$LR•IPV4•18『线路10』 #EXTINF:-1 tvg-id="天津" tvg-name="天津" group-title="☘️天津频道",天津 -http://23.237.228.134/live8/tianjing.m3u8$LR•IPV4•18『线路11』 +http://39.134.115.163:8080/PLTV/88888910/224/3221225698/index.m3u8$LR•IPV4•18『线路11』 #EXTINF:-1 tvg-id="天津" tvg-name="天津" group-title="☘️天津频道",天津 -http://gfr.x3322.net:9901/tsfile/live/1090_1.m3u8$LR•IPV4•18『线路12』 +http://23.237.228.134/live8/tianjing.m3u8$LR•IPV4•18『线路12』 #EXTINF:-1 tvg-id="天津" tvg-name="天津" group-title="☘️天津频道",天津 -http://api.kkitv.itv888.cn:8080/hls/z2lkdkrb4w/index.m3u8$LR•IPV4•18『线路13』 +http://gfr.x3322.net:9901/tsfile/live/1090_1.m3u8$LR•IPV4•18『线路13』 #EXTINF:-1 tvg-id="天津" tvg-name="天津" group-title="☘️天津频道",天津 -https://iptv.catvod.com/catvod.php?id=tjws$LR•IPV4•18『线路14』 +http://api.kkitv.itv888.cn:8080/hls/z2lkdkrb4w/index.m3u8$LR•IPV4•18『线路14』 #EXTINF:-1 tvg-id="天津" tvg-name="天津" group-title="☘️天津频道",天津 -https://httop.top/ysp-天津卫视$LR•IPV4•18『线路15』 +https://iptv.catvod.com/catvod.php?id=tjws$LR•IPV4•18『线路15』 #EXTINF:-1 tvg-id="天津" tvg-name="天津" group-title="☘️天津频道",天津 -http://iptv.huuc.edu.cn/hls/tjhd.m3u8$LR•IPV4•18『线路16』 +https://httop.top/ysp-天津卫视$LR•IPV4•18『线路16』 #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•18『线路17』 +http://iptv.huuc.edu.cn/hls/tjhd.m3u8$LR•IPV4•18『线路17』 #EXTINF:-1 tvg-id="天津" tvg-name="天津" group-title="☘️天津频道",天津 -http://39.134.115.163:8080/PLTV/88888910/224/3221225698/index.m3u8$LR•IPV4•18『线路18』 +http://153.0.171.163:9901/tsfile/live/0135_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•18『线路18』 #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="☘️甘肃频道",渭源新闻 @@ -1029,40 +1007,42 @@ https://vip.ffzy-play2.com/20221127/1567_f1965b4b/index.m3u8$LR•IPV4 https://vip.ffzy-play6.com/20221019/118_1367b8f6/index.m3u8$LR•IPV4 #EXTINF:-1 tvg-id="喜剧影院" tvg-name="喜剧影院" group-title="数字",喜剧影院 http://74.91.26.218:82/live/vlxjyy.m3u8$LR•IPV4 +#EXTINF:-1 tvg-id="CHC动作电影" tvg-name="CHC动作电影" group-title="数字",CHC动作电影 +http://t.061899.xyz/tl/tl.php?id=chcdzdy$LR•IPV4 #EXTINF:-1 tvg-id="卡酷少儿" tvg-name="卡酷少儿" group-title="数字",卡酷少儿 http://218.13.170.98:9901/tsfile/live/1021_1.m3u8$LR•IPV4 #EXTINF:-1 tvg-id="UFC" tvg-name="UFC" group-title="•特色",UFC -https://dbrb49pjoymg4.cloudfront.net/manifest/3fec3e5cac39a52b2132f9c66c83dae043dc17d4/prod_default_xumo-ams-aws/194a140c-0cf5-443e-b747-08bf621d75a8/0.m3u8$LR•IPV4•16『线路1』 +https://jmp2.uk/plu-6a037119f6ac24413f849d5b.m3u8$LR•IPV4•16『线路1』 #EXTINF:-1 tvg-id="UFC" tvg-name="UFC" group-title="•特色",UFC -https://jmp2.uk/plu-6a037119f6ac24413f849d5b.m3u8$LR•IPV4•16『线路2』 +https://aegis-cloudfront-1.tubi.video/a78ea283-8666-44a1-a0f6-fde5d229ac21/playlist.m3u8$LR•IPV4•16『线路2』 #EXTINF:-1 tvg-id="UFC" tvg-name="UFC" group-title="•特色",UFC -https://aegis-cloudfront-1.tubi.video/a78ea283-8666-44a1-a0f6-fde5d229ac21/playlist.m3u8$LR•IPV4•16『线路3』 +https://linear-893.frequency.stream/dist/xumo/893/hls/master/playlist.m3u8$LR•IPV4•16『线路3』 #EXTINF:-1 tvg-id="UFC" tvg-name="UFC" group-title="•特色",UFC -https://linear-893.frequency.stream/dist/xumo/893/hls/master/playlist.m3u8$LR•IPV4•16『线路4』 +https://pb-ljudrmfw5j68n.akamaized.net/playlist.m3u8$LR•IPV4•16『线路4』 #EXTINF:-1 tvg-id="UFC" tvg-name="UFC" group-title="•特色",UFC -https://pb-ljudrmfw5j68n.akamaized.net/playlist.m3u8$LR•IPV4•16『线路5』 +https://jmp2.uk/plu-66ed3eb27358ce000830df49.m3u8$LR•IPV4•16『线路5』 #EXTINF:-1 tvg-id="UFC" tvg-name="UFC" group-title="•特色",UFC -https://jmp2.uk/plu-66ed3eb27358ce000830df49.m3u8$LR•IPV4•16『线路6』 +https://jmp2.uk/plu-679203d4bc03978b9b4b79a6.m3u8$LR•IPV4•16『线路6』 #EXTINF:-1 tvg-id="UFC" tvg-name="UFC" group-title="•特色",UFC -https://jmp2.uk/plu-679203d4bc03978b9b4b79a6.m3u8$LR•IPV4•16『线路7』 +https://jmp2.uk/plu-67a52cd4ec91870008a62164.m3u8$LR•IPV4•16『线路7』 #EXTINF:-1 tvg-id="UFC" tvg-name="UFC" group-title="•特色",UFC -https://jmp2.uk/plu-67a52cd4ec91870008a62164.m3u8$LR•IPV4•16『线路8』 +https://jmp2.uk/plu-6792066f3de7c8cf941e7ce3.m3u8$LR•IPV4•16『线路8』 #EXTINF:-1 tvg-id="UFC" tvg-name="UFC" group-title="•特色",UFC -https://jmp2.uk/plu-6792066f3de7c8cf941e7ce3.m3u8$LR•IPV4•16『线路9』 +https://jmp2.uk/plu-66ed3e9d5e4a6e0008b346e0.m3u8$LR•IPV4•16『线路9』 #EXTINF:-1 tvg-id="UFC" tvg-name="UFC" group-title="•特色",UFC -https://jmp2.uk/plu-66ed3e9d5e4a6e0008b346e0.m3u8$LR•IPV4•16『线路10』 +https://jmp2.uk/plu-69a20556814d27f4ae630a92.m3u8$LR•IPV4•16『线路10』 #EXTINF:-1 tvg-id="UFC" tvg-name="UFC" group-title="•特色",UFC -https://jmp2.uk/plu-69a20556814d27f4ae630a92.m3u8$LR•IPV4•16『线路11』 +https://jmp2.uk/plu-6792044b680721c77c5b9ba2.m3u8$LR•IPV4•16『线路11』 #EXTINF:-1 tvg-id="UFC" tvg-name="UFC" group-title="•特色",UFC -https://jmp2.uk/plu-6792044b680721c77c5b9ba2.m3u8$LR•IPV4•16『线路12』 +https://jmp2.uk/plu-67921b873de7c8cf94233f52.m3u8$LR•IPV4•16『线路12』 #EXTINF:-1 tvg-id="UFC" tvg-name="UFC" group-title="•特色",UFC -https://jmp2.uk/plu-67921b873de7c8cf94233f52.m3u8$LR•IPV4•16『线路13』 +https://jmp2.uk/plu-67921b78b83355184c667770.m3u8$LR•IPV4•16『线路13』 #EXTINF:-1 tvg-id="UFC" tvg-name="UFC" group-title="•特色",UFC -https://jmp2.uk/plu-67921b78b83355184c667770.m3u8$LR•IPV4•16『线路14』 +https://jmp2.uk/plu-679205a13de7c8cf941e7857.m3u8$LR•IPV4•16『线路14』 #EXTINF:-1 tvg-id="UFC" tvg-name="UFC" group-title="•特色",UFC -https://jmp2.uk/plu-679205a13de7c8cf941e7857.m3u8$LR•IPV4•16『线路15』 +https://jmp2.uk/plu-677d9adfa9a51b0008497fa0.m3u8$LR•IPV4•16『线路15』 #EXTINF:-1 tvg-id="UFC" tvg-name="UFC" group-title="•特色",UFC -https://jmp2.uk/plu-677d9adfa9a51b0008497fa0.m3u8$LR•IPV4•16『线路16』 +https://dbrb49pjoymg4.cloudfront.net/manifest/3fec3e5cac39a52b2132f9c66c83dae043dc17d4/prod_default_xumo-ams-aws/194a140c-0cf5-443e-b747-08bf621d75a8/0.m3u8$LR•IPV4•16『线路16』 #EXTINF:-1 tvg-id="PMC" tvg-name="PMC" group-title="•音乐",PMC https://mumbai-edge.smartplaytv.in/PMC/index.m3u8$LR•IPV4•3『线路1』 #EXTINF:-1 tvg-id="PMC" tvg-name="PMC" group-title="•音乐",PMC @@ -1110,9 +1090,9 @@ https://jmp2.uk/plu-5d14fdb8ca91eedee1633117.m3u8$LR•IPV4•2『线路1』 #EXTINF:-1 tvg-id="MTV Spankin" tvg-name="MTV Spankin" group-title="•音乐",MTV Spankin https://jmp2.uk/plu-6541010f770cf1000866be98.m3u8$LR•IPV4•2『线路2』 #EXTINF:-1 tvg-id="RT News" tvg-name="RT News" group-title="•国际",RT News -https://rt-glb.rttv.com/dvr/rtnews/playlist_4500Kb.m3u8$LR•IPV4•2『线路1』 +https://cloud.odysee.live/content/fdd11cb3ab75f95efb7b3bc2d726aa13ac915b66/master.m3u8$LR•IPV4•2『线路1』 #EXTINF:-1 tvg-id="RT News" tvg-name="RT News" group-title="•国际",RT News -https://cloud.odysee.live/content/fdd11cb3ab75f95efb7b3bc2d726aa13ac915b66/master.m3u8$LR•IPV4•2『线路2』 +https://rt-glb.rttv.com/dvr/rtnews/playlist_4500Kb.m3u8$LR•IPV4•2『线路2』 #EXTINF:-1 tvg-id="MTN" tvg-name="MTN" group-title="•韩国",MTN http://183.110.27.87/mtnlive/720/playlist.m3u8$LR•IPV4 #EXTINF:-1 tvg-id="Job Plus TV" tvg-name="Job Plus TV" group-title="•韩国",Job Plus TV @@ -1210,23 +1190,23 @@ https://cdn-us-east-prod-ingest-infra-dacast-com.akamaized.net/624ff8f9-db18-da9 #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』 +http://1.222.207.80:1935/live/cjbtv/playlist.m3u8$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.82.49.4:1935/live/_definst_/tv.stream/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://123.140.197.22/stream/1/play.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.85.197.53:1935/jtv_live/myStream/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』 +https://vod.ikbc.co.kr/KBCTV/tv/playlist.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』 +https://stream1.knn.co.kr/hls/9ly4534y7dm2xfa123r2_tv/index.m3u8$LR•IPV4•9『线路6』 #EXTINF:-1 tvg-id="SBS" tvg-name="SBS" group-title="•韩国",SBS -https://stream1.knn.co.kr/hls/9ly4534y7dm2xfa123r2_tv/index.m3u8$LR•IPV4•9『线路7』 +http://203.251.91.122:1935/on-air-Backup/tv/playlist.m3u8$LR•IPV4•9『线路7』 #EXTINF:-1 tvg-id="SBS" tvg-name="SBS" group-title="•韩国",SBS -http://203.251.91.122:1935/on-air-Backup/tv/playlist.m3u8$LR•IPV4•9『线路8』 +https://stream.ubc.co.kr/hls/ubctvstream/index.m3u8$LR•IPV4•9『线路8』 #EXTINF:-1 tvg-id="SBS" tvg-name="SBS" group-title="•韩国",SBS -https://stream.ubc.co.kr/hls/ubctvstream/index.m3u8$LR•IPV4•9『线路9』 +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『线路9』 #EXTINF:-1 tvg-id="Shop Channel" tvg-name="Shop Channel" group-title="•日本",Shop Channel https://stream3.shopch.jp/HLS/master.m3u8$LR•IPV4 #EXTINF:-1 tvg-id="30A Investment Pitch" tvg-name="30A Investment Pitch" group-title="•杂货",30A Investment Pitch @@ -1300,9 +1280,9 @@ https://amg00654-itv-amg00654c20-rakuten-it-3615.playouts.now.amagi.tv/playlist. #EXTINF:-1 tvg-id="Hell's Kitchen" tvg-name="Hell's Kitchen" group-title="•杂货",Hell's Kitchen https://amg00654-itv-amg00654c1-samsung-au-1072.playouts.now.amagi.tv/itv-hellskitchen-samsung/playlist.m3u8$LR•IPV4•3『线路3』 #EXTINF:-1 tvg-id="HollyWire" tvg-name="HollyWire" group-title="•杂货",HollyWire -https://bozztv.com/hwotta/playlist/HD3400/HD3400.m3u8$LR•IPV4•2『线路1』 +https://bozztv.com/hwotta/playlist/playlist.m3u8$LR•IPV4•2『线路1』 #EXTINF:-1 tvg-id="HollyWire" tvg-name="HollyWire" group-title="•杂货",HollyWire -https://bozztv.com/hwotta/playlist/playlist.m3u8$LR•IPV4•2『线路2』 +https://bozztv.com/hwotta/playlist/HD3400/HD3400.m3u8$LR•IPV4•2『线路2』 #EXTINF:-1 tvg-id="Iqra TV" tvg-name="Iqra TV" group-title="•杂货",Iqra TV https://cdn149.anystream.uk:8082/app/iq53la/playlist.m3u8$LR•IPV4 #EXTINF:-1 tvg-id="KBEV Spectrum Channel 6" tvg-name="KBEV Spectrum Channel 6" group-title="•杂货",KBEV Spectrum Channel 6 [Beverly Hills] @@ -1330,9 +1310,9 @@ https://stream-us-east-1.getpublica.com/playlist.m3u8?network_id=15811$LR•IPV4 #EXTINF:-1 tvg-id="Realitatea Plus" tvg-name="Realitatea Plus" group-title="•杂货",Realitatea Plus https://dokagents.site/live/realitateatv/mono.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•2『线路1』 +https://amg00453-reuters-amg00453c1-rakuten-uk-2110.playouts.now.amagi.tv/playlist/amg00453-reuters-reuters-rakutenuk/playlist.m3u8$LR•IPV4•2『线路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•2『线路2』 +https://dbrb49pjoymg4.cloudfront.net/manifest/3fec3e5cac39a52b2132f9c66c83dae043dc17d4/prod_default_xumo-ams-aws/e7493ea5-5c1c-4d7a-a3f7-e95516048ad8/3.m3u8$LR•IPV4•2『线路2』 #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 @@ -1368,135 +1348,135 @@ https://live.kh.malimarcdn.com/live/tvk2.stream/playlist.m3u8$LR•IPV4•3『 #EXTINF:-1 tvg-id="TVK" tvg-name="TVK" group-title="•杂货",TVK https://stream.tvkstella.pl/stella/stella.m3u8$LR•IPV4•3『线路3』 #EXTINF:-1 tvg-id="UK" tvg-name="UK" group-title="•杂货",UK -http://nocable.cc:8080//OURTV/OURTV@4806/35241$LR•IPV4•52『线路1』 +https://moviesphereuk-samsunguk.amagi.tv/playlist.m3u8$LR•IPV4•52『线路1』 #EXTINF:-1 tvg-id="UK" tvg-name="UK" group-title="•杂货",UK -http://nocable.cc:8080//OURTV/OURTV@4806/35244$LR•IPV4•52『线路2』 +https://0145451975a64b35866170fd2e8fa486.mediatailor.eu-west-1.amazonaws.com/v1/master/0547f18649bd788bec7b67b746e47670f558b6b2/production-LiveChannel-5987/master.m3u8$LR•IPV4•52『线路2』 #EXTINF:-1 tvg-id="UK" tvg-name="UK" group-title="•杂货",UK -http://ua-iptv.com:8080//zerubassman@yahoo.com/2MR879Z9PL/1001373$LR•IPV4•52『线路3』 +https://54045f0c40fd442c8b06df076aaf1e85.mediatailor.eu-west-1.amazonaws.com/v1/master/0547f18649bd788bec7b67b746e47670f558b6b2/production-LiveChannel-6065/master.m3u8$LR•IPV4•52『线路3』 #EXTINF:-1 tvg-id="UK" tvg-name="UK" group-title="•杂货",UK -http://nocable.cc:8080//OURTV/OURTV@4806/35240$LR•IPV4•52『线路4』 +https://9be783d652cd4b099cf63e1dc134c4a3.mediatailor.eu-west-1.amazonaws.com/v1/master/0547f18649bd788bec7b67b746e47670f558b6b2/production-LiveChannel-6181/master.m3u8$LR•IPV4•52『线路4』 #EXTINF:-1 tvg-id="UK" tvg-name="UK" group-title="•杂货",UK -http://nocable.cc:8080//OURTV/OURTV@4806/137720$LR•IPV4•52『线路5』 +https://fee09fd665814f51b939b6d106cf5f66.mediatailor.eu-west-1.amazonaws.com/v1/master/0547f18649bd788bec7b67b746e47670f558b6b2/production-LiveChannel-6093/master.m3u8$LR•IPV4•52『线路5』 #EXTINF:-1 tvg-id="UK" tvg-name="UK" group-title="•杂货",UK -http://ua-iptv.com:8080//zerubassman@yahoo.com/2MR879Z9PL/1001376$LR•IPV4•52『线路6』 +http://41.223.30.230/ZEECINEMA/index.m3u8$LR•IPV4•52『线路6』 #EXTINF:-1 tvg-id="UK" tvg-name="UK" group-title="•杂货",UK -http://ua-iptv.com:8080//zerubassman@yahoo.com/2MR879Z9PL/1001378$LR•IPV4•52『线路7』 +https://app.ncare.live/c3VydmVyX8RpbEU9Mi8xNy8yMDE0GIDU6RgzQ6NTAgdEoaeFzbF92YWxIZTO0U0ezN1IzMyfvcGVMZEJCTEFWeVN3PTOmdFsaWRtaW51aiPhnPTI2/atnbanglauk-off.stream/playlist.m3u8$LR•IPV4•52『线路7』 #EXTINF:-1 tvg-id="UK" tvg-name="UK" group-title="•杂货",UK -http://ua-iptv.com:8080//zerubassman@yahoo.com/2MR879Z9PL/1001379$LR•IPV4•52『线路8』 +https://qvcuk-live.akamaized.net/hls/live/2097112/qvc/master.m3u8$LR•IPV4•52『线路8』 #EXTINF:-1 tvg-id="UK" tvg-name="UK" group-title="•杂货",UK -http://nocable.cc:8080//OURTV/OURTV@4806/53705$LR•IPV4•52『线路9』 +https://qvcuk-live.akamaized.net/hls/live/2097112/qby/master.m3u8$LR•IPV4•52『线路9』 #EXTINF:-1 tvg-id="UK" tvg-name="UK" group-title="•杂货",UK -http://nocable.cc:8080//OURTV/OURTV@4806/35238$LR•IPV4•52『线路10』 +https://qvcuk-live.akamaized.net/hls/live/2097112/qex/master.m3u8$LR•IPV4•52『线路10』 #EXTINF:-1 tvg-id="UK" tvg-name="UK" group-title="•杂货",UK -http://nocable.cc:8080//OURTV/OURTV@4806/53663$LR•IPV4•52『线路11』 +https://qvcuk-live.akamaized.net/hls/live/2097112/qst/master.m3u8$LR•IPV4•52『线路11』 #EXTINF:-1 tvg-id="UK" tvg-name="UK" group-title="•杂货",UK -http://nocable.cc:8080//OURTV/OURTV@4806/45940$LR•IPV4•52『线路12』 +http://45.153.96.44:8001$LR•IPV4•52『线路12』 #EXTINF:-1 tvg-id="UK" tvg-name="UK" group-title="•杂货",UK -http://vocotv.pro//revol/revol/276918$LR•IPV4•52『线路13』 +https://mini.allinonereborn.fun/tata.php?id=11783$LR•IPV4•52『线路13』 #EXTINF:-1 tvg-id="UK" tvg-name="UK" group-title="•杂货",UK -http://vocotv.pro//revol/revol/276924$LR•IPV4•52『线路14』 +https://cdn3.wowza.com/5/L1Uzd2FrbVlLRG1W/live/smil:lwukweb.smil/playlist.m3u8$LR•IPV4•52『线路14』 #EXTINF:-1 tvg-id="UK" tvg-name="UK" group-title="•杂货",UK -http://vocotv.pro//revol/revol/276906$LR•IPV4•52『线路15』 +https://d34z4embz0hjf6.cloudfront.net/out/v1/7ac2789ff9a544a49337d1ffc54ce61c/index.m3u8$LR•IPV4•52『线路15』 #EXTINF:-1 tvg-id="UK" tvg-name="UK" group-title="•杂货",UK -https://moviesphereuk-samsunguk.amagi.tv/playlist.m3u8$LR•IPV4•52『线路16』 +https://jmp2.uk/plu-638e10de75c3a30007092693.m3u8$LR•IPV4•52『线路16』 #EXTINF:-1 tvg-id="UK" tvg-name="UK" group-title="•杂货",UK -https://0145451975a64b35866170fd2e8fa486.mediatailor.eu-west-1.amazonaws.com/v1/master/0547f18649bd788bec7b67b746e47670f558b6b2/production-LiveChannel-5987/master.m3u8$LR•IPV4•52『线路17』 +https://jmp2.uk/plu-62bed7cb3279cb0007735327.m3u8$LR•IPV4•52『线路17』 #EXTINF:-1 tvg-id="UK" tvg-name="UK" group-title="•杂货",UK -https://54045f0c40fd442c8b06df076aaf1e85.mediatailor.eu-west-1.amazonaws.com/v1/master/0547f18649bd788bec7b67b746e47670f558b6b2/production-LiveChannel-6065/master.m3u8$LR•IPV4•52『线路18』 +https://d1nn4ic5ci0eid.cloudfront.net/MasterchefUKPoweredbyBanijay_GB.m3u8$LR•IPV4•52『线路18』 #EXTINF:-1 tvg-id="UK" tvg-name="UK" group-title="•杂货",UK -https://9be783d652cd4b099cf63e1dc134c4a3.mediatailor.eu-west-1.amazonaws.com/v1/master/0547f18649bd788bec7b67b746e47670f558b6b2/production-LiveChannel-6181/master.m3u8$LR•IPV4•52『线路19』 +https://dvqpty1sb3rry.cloudfront.net/PointlessUKPoweredbyBanijay_GB.m3u8$LR•IPV4•52『线路19』 #EXTINF:-1 tvg-id="UK" tvg-name="UK" group-title="•杂货",UK -https://fee09fd665814f51b939b6d106cf5f66.mediatailor.eu-west-1.amazonaws.com/v1/master/0547f18649bd788bec7b67b746e47670f558b6b2/production-LiveChannel-6093/master.m3u8$LR•IPV4•52『线路20』 +https://68f6dfd1f2bd415b9c42f1d383004b69.mediatailor.eu-west-1.amazonaws.com/v1/master/0547f18649bd788bec7b67b746e47670f558b6b2/production-LiveChannel-6233/master.m3u8$LR•IPV4•52『线路20』 #EXTINF:-1 tvg-id="UK" tvg-name="UK" group-title="•杂货",UK -http://41.223.30.230/ZEECINEMA/index.m3u8$LR•IPV4•52『线路21』 +https://2c88ed8c4df9479aa0c7138dc42115e2.mediatailor.eu-west-1.amazonaws.com/v1/master/0547f18649bd788bec7b67b746e47670f558b6b2/production-LiveChannel-6194/master.m3u8$LR•IPV4•52『线路21』 #EXTINF:-1 tvg-id="UK" tvg-name="UK" group-title="•杂货",UK -https://app.ncare.live/c3VydmVyX8RpbEU9Mi8xNy8yMDE0GIDU6RgzQ6NTAgdEoaeFzbF92YWxIZTO0U0ezN1IzMyfvcGVMZEJCTEFWeVN3PTOmdFsaWRtaW51aiPhnPTI2/atnbanglauk-off.stream/playlist.m3u8$LR•IPV4•52『线路22』 +https://sci-fi-rakuten-tv-uk.fast.rakuten.tv/v1/master/0547f18649bd788bec7b67b746e47670f558b6b2/production-LiveChannel-6241/master.m3u8$LR•IPV4•52『线路22』 #EXTINF:-1 tvg-id="UK" tvg-name="UK" group-title="•杂货",UK -https://qvcuk-live.akamaized.net/hls/live/2097112/qvc/master.m3u8$LR•IPV4•52『线路23』 +https://thriller-rakuten-tv-uk.fast.rakuten.tv/v1/master/0547f18649bd788bec7b67b746e47670f558b6b2/production-LiveChannel-6482/master.m3u8$LR•IPV4•52『线路23』 #EXTINF:-1 tvg-id="UK" tvg-name="UK" group-title="•杂货",UK -https://qvcuk-live.akamaized.net/hls/live/2097112/qby/master.m3u8$LR•IPV4•52『线路24』 +https://live-tbn-ssai.simplestreamcdn.com/v1/master/774d979dd66704abea7c5b62cb34c6815fda0d35/tbn-live/manifest.m3u8$LR•IPV4•52『线路24』 #EXTINF:-1 tvg-id="UK" tvg-name="UK" group-title="•杂货",UK -https://qvcuk-live.akamaized.net/hls/live/2097112/qex/master.m3u8$LR•IPV4•52『线路25』 +https://amg01131-tracetv-amg01131c5-stirr-us-4389.playouts.now.amagi.tv/playlist.m3u8$LR•IPV4•52『线路25』 #EXTINF:-1 tvg-id="UK" tvg-name="UK" group-title="•杂货",UK -https://qvcuk-live.akamaized.net/hls/live/2097112/qst/master.m3u8$LR•IPV4•52『线路26』 +https://d2n3779oy6efpi.cloudfront.net/playlist.m3u8$LR•IPV4•52『线路26』 #EXTINF:-1 tvg-id="UK" tvg-name="UK" group-title="•杂货",UK -http://45.153.96.44:8001$LR•IPV4•52『线路27』 +https://channels.trace.plus/Traceprod/UK_FAST_hd/index.m3u8$LR•IPV4•52『线路27』 #EXTINF:-1 tvg-id="UK" tvg-name="UK" group-title="•杂货",UK -https://mini.allinonereborn.fun/tata.php?id=11783$LR•IPV4•52『线路28』 +https://hls.vantagetv.co.uk/vmusicuk_stream/index.m3u8$LR•IPV4•52『线路28』 #EXTINF:-1 tvg-id="UK" tvg-name="UK" group-title="•杂货",UK -https://cdn3.wowza.com/5/L1Uzd2FrbVlLRG1W/live/smil:lwukweb.smil/playlist.m3u8$LR•IPV4•52『线路29』 +https://amg01243-xitenetworksint-hitsuk-samsunguk-mvovq.amagi.tv/playlist/amg01243-xitenetworksint-hitsuk-samsunguk/playlist.m3u8$LR•IPV4•52『线路29』 #EXTINF:-1 tvg-id="UK" tvg-name="UK" group-title="•杂货",UK -https://d34z4embz0hjf6.cloudfront.net/out/v1/7ac2789ff9a544a49337d1ffc54ce61c/index.m3u8$LR•IPV4•52『线路30』 +https://bbc-antiquesroadshowuk-1-us.roku.wurl.tv/playlist.m3u8$LR•IPV4•52『线路30』 #EXTINF:-1 tvg-id="UK" tvg-name="UK" group-title="•杂货",UK -https://jmp2.uk/plu-638e10de75c3a30007092693.m3u8$LR•IPV4•52『线路31』 +https://jmp2.uk/plu-692edc78d52ea9e4858cf78f.m3u8$LR•IPV4•52『线路31』 #EXTINF:-1 tvg-id="UK" tvg-name="UK" group-title="•杂货",UK -https://jmp2.uk/plu-62bed7cb3279cb0007735327.m3u8$LR•IPV4•52『线路32』 +https://jmp2.uk/plu-692edcff77f0147d69f19498.m3u8$LR•IPV4•52『线路32』 #EXTINF:-1 tvg-id="UK" tvg-name="UK" group-title="•杂货",UK -https://d1nn4ic5ci0eid.cloudfront.net/MasterchefUKPoweredbyBanijay_GB.m3u8$LR•IPV4•52『线路33』 +https://jmp2.uk/plu-692edd6bdb8695f63e14f3b9.m3u8$LR•IPV4•52『线路33』 #EXTINF:-1 tvg-id="UK" tvg-name="UK" group-title="•杂货",UK -https://dvqpty1sb3rry.cloudfront.net/PointlessUKPoweredbyBanijay_GB.m3u8$LR•IPV4•52『线路34』 +https://b6cca454.wurl.com/master/f36d25e7e52f1ba8d7e56eb859c636563214f541/U2Ftc3VuZy1nYl9UcnVlQ3JpbWVVS2Zyb21DQlNSZWFsaXR5X0hMUw/playlist.m3u8$LR•IPV4•52『线路34』 #EXTINF:-1 tvg-id="UK" tvg-name="UK" group-title="•杂货",UK -https://68f6dfd1f2bd415b9c42f1d383004b69.mediatailor.eu-west-1.amazonaws.com/v1/master/0547f18649bd788bec7b67b746e47670f558b6b2/production-LiveChannel-6233/master.m3u8$LR•IPV4•52『线路35』 +https://ntd02.akamaized.net/NTD-UK/index.m3u8$LR•IPV4•52『线路35』 #EXTINF:-1 tvg-id="UK" tvg-name="UK" group-title="•杂货",UK -https://2c88ed8c4df9479aa0c7138dc42115e2.mediatailor.eu-west-1.amazonaws.com/v1/master/0547f18649bd788bec7b67b746e47670f558b6b2/production-LiveChannel-6194/master.m3u8$LR•IPV4•52『线路36』 +https://e3207568b726401995c25670faaf32e4.mediatailor.eu-west-1.amazonaws.com/v1/master/0547f18649bd788bec7b67b746e47670f558b6b2/production-LiveChannel-6203/master.m3u8$LR•IPV4•52『线路36』 #EXTINF:-1 tvg-id="UK" tvg-name="UK" group-title="•杂货",UK -https://sci-fi-rakuten-tv-uk.fast.rakuten.tv/v1/master/0547f18649bd788bec7b67b746e47670f558b6b2/production-LiveChannel-6241/master.m3u8$LR•IPV4•52『线路37』 +https://1a3566cb46914c5499fbc86fbc4ac87e.mediatailor.us-west-2.amazonaws.com/v1/master/ba62fe743df0fe93366eba3a257d792884136c7f/LINEAR-932-WORBUKENFAST-WHALETVPLUS/932/whaletvplus/hls/master/playlist.m3u8$LR•IPV4•52『线路37』 #EXTINF:-1 tvg-id="UK" tvg-name="UK" group-title="•杂货",UK -https://thriller-rakuten-tv-uk.fast.rakuten.tv/v1/master/0547f18649bd788bec7b67b746e47670f558b6b2/production-LiveChannel-6482/master.m3u8$LR•IPV4•52『线路38』 +http://nocable.cc:8080//OURTV/OURTV@4806/35241$LR•IPV4•52『线路38』 #EXTINF:-1 tvg-id="UK" tvg-name="UK" group-title="•杂货",UK -https://live-tbn-ssai.simplestreamcdn.com/v1/master/774d979dd66704abea7c5b62cb34c6815fda0d35/tbn-live/manifest.m3u8$LR•IPV4•52『线路39』 +http://nocable.cc:8080//OURTV/OURTV@4806/35244$LR•IPV4•52『线路39』 #EXTINF:-1 tvg-id="UK" tvg-name="UK" group-title="•杂货",UK -https://amg01131-tracetv-amg01131c5-stirr-us-4389.playouts.now.amagi.tv/playlist.m3u8$LR•IPV4•52『线路40』 +http://ua-iptv.com:8080//zerubassman@yahoo.com/2MR879Z9PL/1001373$LR•IPV4•52『线路40』 #EXTINF:-1 tvg-id="UK" tvg-name="UK" group-title="•杂货",UK -https://d2n3779oy6efpi.cloudfront.net/playlist.m3u8$LR•IPV4•52『线路41』 +http://nocable.cc:8080//OURTV/OURTV@4806/35240$LR•IPV4•52『线路41』 #EXTINF:-1 tvg-id="UK" tvg-name="UK" group-title="•杂货",UK -https://channels.trace.plus/Traceprod/UK_FAST_hd/index.m3u8$LR•IPV4•52『线路42』 +http://nocable.cc:8080//OURTV/OURTV@4806/137720$LR•IPV4•52『线路42』 #EXTINF:-1 tvg-id="UK" tvg-name="UK" group-title="•杂货",UK -https://hls.vantagetv.co.uk/vmusicuk_stream/index.m3u8$LR•IPV4•52『线路43』 +http://ua-iptv.com:8080//zerubassman@yahoo.com/2MR879Z9PL/1001376$LR•IPV4•52『线路43』 #EXTINF:-1 tvg-id="UK" tvg-name="UK" group-title="•杂货",UK -https://amg01243-xitenetworksint-hitsuk-samsunguk-mvovq.amagi.tv/playlist/amg01243-xitenetworksint-hitsuk-samsunguk/playlist.m3u8$LR•IPV4•52『线路44』 +http://ua-iptv.com:8080//zerubassman@yahoo.com/2MR879Z9PL/1001378$LR•IPV4•52『线路44』 #EXTINF:-1 tvg-id="UK" tvg-name="UK" group-title="•杂货",UK -https://bbc-antiquesroadshowuk-1-us.roku.wurl.tv/playlist.m3u8$LR•IPV4•52『线路45』 +http://ua-iptv.com:8080//zerubassman@yahoo.com/2MR879Z9PL/1001379$LR•IPV4•52『线路45』 #EXTINF:-1 tvg-id="UK" tvg-name="UK" group-title="•杂货",UK -https://jmp2.uk/plu-692edc78d52ea9e4858cf78f.m3u8$LR•IPV4•52『线路46』 +http://nocable.cc:8080//OURTV/OURTV@4806/53705$LR•IPV4•52『线路46』 #EXTINF:-1 tvg-id="UK" tvg-name="UK" group-title="•杂货",UK -https://jmp2.uk/plu-692edcff77f0147d69f19498.m3u8$LR•IPV4•52『线路47』 +http://nocable.cc:8080//OURTV/OURTV@4806/35238$LR•IPV4•52『线路47』 #EXTINF:-1 tvg-id="UK" tvg-name="UK" group-title="•杂货",UK -https://jmp2.uk/plu-692edd6bdb8695f63e14f3b9.m3u8$LR•IPV4•52『线路48』 +http://nocable.cc:8080//OURTV/OURTV@4806/53663$LR•IPV4•52『线路48』 #EXTINF:-1 tvg-id="UK" tvg-name="UK" group-title="•杂货",UK -https://b6cca454.wurl.com/master/f36d25e7e52f1ba8d7e56eb859c636563214f541/U2Ftc3VuZy1nYl9UcnVlQ3JpbWVVS2Zyb21DQlNSZWFsaXR5X0hMUw/playlist.m3u8$LR•IPV4•52『线路49』 +http://nocable.cc:8080//OURTV/OURTV@4806/45940$LR•IPV4•52『线路49』 #EXTINF:-1 tvg-id="UK" tvg-name="UK" group-title="•杂货",UK -https://ntd02.akamaized.net/NTD-UK/index.m3u8$LR•IPV4•52『线路50』 +http://vocotv.pro//revol/revol/276918$LR•IPV4•52『线路50』 #EXTINF:-1 tvg-id="UK" tvg-name="UK" group-title="•杂货",UK -https://e3207568b726401995c25670faaf32e4.mediatailor.eu-west-1.amazonaws.com/v1/master/0547f18649bd788bec7b67b746e47670f558b6b2/production-LiveChannel-6203/master.m3u8$LR•IPV4•52『线路51』 +http://vocotv.pro//revol/revol/276924$LR•IPV4•52『线路51』 #EXTINF:-1 tvg-id="UK" tvg-name="UK" group-title="•杂货",UK -https://1a3566cb46914c5499fbc86fbc4ac87e.mediatailor.us-west-2.amazonaws.com/v1/master/ba62fe743df0fe93366eba3a257d792884136c7f/LINEAR-932-WORBUKENFAST-WHALETVPLUS/932/whaletvplus/hls/master/playlist.m3u8$LR•IPV4•52『线路52』 +http://vocotv.pro//revol/revol/276906$LR•IPV4•52『线路52』 #EXTINF:-1 tvg-id="US" tvg-name="US" group-title="•杂货",US -p3p://167.114.175.6:55331/63efe07e000c1db2f23eb46a4e00518a$LR•IPV4•17『线路1』 +http://138.121.15.230:9002/DEPELICULA/index.m3u8$LR•IPV4•17『线路1』 #EXTINF:-1 tvg-id="US" tvg-name="US" group-title="•杂货",US -p3p://167.114.175.6:55331/63efe0de000858baf2402a646c573e1b$LR•IPV4•17『线路2』 +https://amg17233-amg17233c1-wisptv-us-6409.playouts.now.amagi.tv/playlist.m3u8$LR•IPV4•17『线路2』 #EXTINF:-1 tvg-id="US" tvg-name="US" group-title="•杂货",US -p3p://167.114.175.6:55331/63efe252000a7658f245d81113e44b34$LR•IPV4•17『线路3』 +https://jmp2.uk/plu-6304f20c941c5d00089634e7.m3u8$LR•IPV4•17『线路3』 #EXTINF:-1 tvg-id="US" tvg-name="US" group-title="•杂货",US -p3p://167.114.175.6:55331/63efe2e2000d23b5f2480b4125294b9a$LR•IPV4•17『线路4』 +https://jmp2.uk/plu-63988b61c8d285000798a22a.m3u8$LR•IPV4•17『线路4』 #EXTINF:-1 tvg-id="US" tvg-name="US" group-title="•杂货",US -http://138.121.15.230:9002/DEPELICULA/index.m3u8$LR•IPV4•17『线路5』 +http://206.212.244.63/641/index.m3u8$LR•IPV4•17『线路5』 #EXTINF:-1 tvg-id="US" tvg-name="US" group-title="•杂货",US -https://amg17233-amg17233c1-wisptv-us-6409.playouts.now.amagi.tv/playlist.m3u8$LR•IPV4•17『线路6』 +https://janus.xpbroadcasting.com:8443/hls/xptvUS.m3u8$LR•IPV4•17『线路6』 #EXTINF:-1 tvg-id="US" tvg-name="US" group-title="•杂货",US -https://jmp2.uk/plu-6304f20c941c5d00089634e7.m3u8$LR•IPV4•17『线路7』 +https://bloomberg.com/media-manifest/streams/us-event.m3u8$LR•IPV4•17『线路7』 #EXTINF:-1 tvg-id="US" tvg-name="US" group-title="•杂货",US -https://jmp2.uk/plu-63988b61c8d285000798a22a.m3u8$LR•IPV4•17『线路8』 +https://bloomberg.com/media-manifest/streams/politics.m3u8$LR•IPV4•17『线路8』 #EXTINF:-1 tvg-id="US" tvg-name="US" group-title="•杂货",US -http://206.212.244.63/641/index.m3u8$LR•IPV4•17『线路9』 +https://0b73ace69ebb45eaa249bb87837cb958.mediatailor.us-west-2.amazonaws.com/v1/master/ba62fe743df0fe93366eba3a257d792884136c7f/LINEAR-644-WORBUSENFAST-LG_US/644/lgtv/hls/master/playlist.m3u8$LR•IPV4•17『线路9』 #EXTINF:-1 tvg-id="US" tvg-name="US" group-title="•杂货",US -https://janus.xpbroadcasting.com:8443/hls/xptvUS.m3u8$LR•IPV4•17『线路10』 +p3p://167.114.175.6:55331/63efe07e000c1db2f23eb46a4e00518a$LR•IPV4•17『线路10』 #EXTINF:-1 tvg-id="US" tvg-name="US" group-title="•杂货",US -https://bloomberg.com/media-manifest/streams/us-event.m3u8$LR•IPV4•17『线路11』 +p3p://167.114.175.6:55331/63efe0de000858baf2402a646c573e1b$LR•IPV4•17『线路11』 #EXTINF:-1 tvg-id="US" tvg-name="US" group-title="•杂货",US -https://bloomberg.com/media-manifest/streams/politics.m3u8$LR•IPV4•17『线路12』 +p3p://167.114.175.6:55331/63efe252000a7658f245d81113e44b34$LR•IPV4•17『线路12』 #EXTINF:-1 tvg-id="US" tvg-name="US" group-title="•杂货",US -https://0b73ace69ebb45eaa249bb87837cb958.mediatailor.us-west-2.amazonaws.com/v1/master/ba62fe743df0fe93366eba3a257d792884136c7f/LINEAR-644-WORBUSENFAST-LG_US/644/lgtv/hls/master/playlist.m3u8$LR•IPV4•17『线路13』 +p3p://167.114.175.6:55331/63efe2e2000d23b5f2480b4125294b9a$LR•IPV4•17『线路13』 #EXTINF:-1 tvg-id="US" tvg-name="US" group-title="•杂货",US https://amg01942-amg01942c5-stirr-us-10184.playouts.now.amagi.tv/playlist.m3u8$LR•IPV4•17『线路14』 #EXTINF:-1 tvg-id="US" tvg-name="US" group-title="•杂货",US @@ -1756,25 +1736,25 @@ https://gcwbndali.v.myalicdn.com/gcwbnd/ipanda1000_2/index.m3u8$LR•IPV4 #EXTINF:-1 tvg-id="钱塘江" tvg-name="钱塘江" group-title="💓专享源🅰️",钱塘江 http://gslbmgsplive.miguvideo.com/wd_r3/cnr/qiantangjiang/2000/index.m3u8?msisdn=20250923080124d2a289d7e8424ddd9ea0d2d29a9e0744&mdspid=&spid=800033&netType=0&sid=5500613479&pid=2028597139×tamp=20250923080124&Channel_ID=0116_2600000900-99000-201600010010027&ProgramID=647370520&ParentNodeID=-99&assertID=5500613479&client_ip=106.13.250.83&SecurityKey=20250923080124&promotionId=&mvid=5102115888&mcid=500020&playurlVersion=WX-A1-8.9.1-RELEASE&userid=&jmhm=&videocodec=h264&bean=mgspad&tid=android&conFee=0&puData=a4be52553a643d1013946a49db1f0e09&ddCalcu=9a04eeb20e7f5012b5d5934aa664439d3110$LR•IPV4 #EXTINF:-1 tvg-id="HBO" tvg-name="HBO" group-title="💓专享源🅰️",HBO -http://23.237.104.106:8080/USA_HBO/index.m3u8$LR•IPV4•10『线路1』 +https://live-manifest.production-public.tubi.io/live/9fe78734-1db2-49b4-af7b-3c89f5f256ad/playlist.m3u8$LR•IPV4•10『线路1』 #EXTINF:-1 tvg-id="HBO" tvg-name="HBO" group-title="💓专享源🅰️",HBO -http://23.237.104.106:8080/USA_HBO2/index.m3u8$LR•IPV4•10『线路2』 +http://23.237.104.106:8080/USA_HBO/index.m3u8$LR•IPV4•10『线路2』 #EXTINF:-1 tvg-id="HBO" tvg-name="HBO" group-title="💓专享源🅰️",HBO -p3p://167.114.175.6:55331/66d22f6b0001f87c739b69c977f063dd$LR•IPV4•10『线路3』 +http://23.237.104.106:8080/USA_HBO2/index.m3u8$LR•IPV4•10『线路3』 #EXTINF:-1 tvg-id="HBO" tvg-name="HBO" group-title="💓专享源🅰️",HBO -p3p://167.114.175.6:55331/623a6e38000091d497395ce957b27132$LR•IPV4•10『线路4』 +p3p://167.114.175.6:55331/66d22f6b0001f87c739b69c977f063dd$LR•IPV4•10『线路4』 #EXTINF:-1 tvg-id="HBO" tvg-name="HBO" group-title="💓专享源🅰️",HBO -p3p://167.114.175.6:55331/623a706d0003edf59741fcc023dc0089$LR•IPV4•10『线路5』 +p3p://167.114.175.6:55331/623a6e38000091d497395ce957b27132$LR•IPV4•10『线路5』 #EXTINF:-1 tvg-id="HBO" tvg-name="HBO" group-title="💓专享源🅰️",HBO -p3p://167.114.175.6:55331/623a700000069676974053b555b700d4$LR•IPV4•10『线路6』 +p3p://167.114.175.6:55331/623a706d0003edf59741fcc023dc0089$LR•IPV4•10『线路6』 #EXTINF:-1 tvg-id="HBO" tvg-name="HBO" group-title="💓专享源🅰️",HBO -p3p://167.114.175.6:55331/64e364fb000a0212a977a1cd342976da$LR•IPV4•10『线路7』 +p3p://167.114.175.6:55331/623a700000069676974053b555b700d4$LR•IPV4•10『线路7』 #EXTINF:-1 tvg-id="HBO" tvg-name="HBO" group-title="💓专享源🅰️",HBO -p3p://167.114.175.6:55331/65d07877000b028d4787830a723c4ce7$LR•IPV4•10『线路8』 +p3p://167.114.175.6:55331/64e364fb000a0212a977a1cd342976da$LR•IPV4•10『线路8』 #EXTINF:-1 tvg-id="HBO" tvg-name="HBO" group-title="💓专享源🅰️",HBO -http://125.227.210.55:8153/VideoInput/play.ts$LR•IPV4•10『线路9』 +p3p://167.114.175.6:55331/65d07877000b028d4787830a723c4ce7$LR•IPV4•10『线路9』 #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•10『线路10』 +http://125.227.210.55:8153/VideoInput/play.ts$LR•IPV4•10『线路10』 #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 @@ -2042,97 +2022,97 @@ http://50.7.234.10:8278/zhongshihd_twn/playlist.m3u8?ct=19226&tid=MB8B7313326473 #EXTINF:-1 tvg-id="生命电视" tvg-name="生命电视" group-title="💓台湾台📶",生命电视 http://61.216.67.119:1935/lifetv/lifetv.stream/manifest.m3u8$LR•IPV4 #EXTINF:-1 tvg-id="HISTORY" tvg-name="HISTORY" group-title="💓台湾台📶",HISTORY -https://cdn-ue1-prod.tsv2.amagi.tv/linear/ldsAAAAAA-timeline-samsungau/playlist.m3u8$LR•IPV4•46『线路1』 +https://d3181anftsyl2u.cloudfront.net/v1/aenetworks_alone_1/samsungheadend_us/latest/main/hls/playlist.m3u8$LR•IPV4•46『线路1』 #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』 +https://pb-k9ikw6ov8z4qi.akamaized.net/American_Pickers_by_History.m3u8$LR•IPV4•46『线路2』 #EXTINF:-1 tvg-id="HISTORY" tvg-name="HISTORY" group-title="💓台湾台📶",HISTORY -http://37.27.111.214:8080/live/27/hls.m3u8$LR•IPV4•46『线路3』 +https://jmp2.uk/plu-62fb9844db5a4a0007ebc2a3.m3u8$LR•IPV4•46『线路3』 #EXTINF:-1 tvg-id="HISTORY" tvg-name="HISTORY" group-title="💓台湾台📶",HISTORY -http://free.cnlive.club/channel/n20a85c83/index.m3u8?q=1752629214236$LR•IPV4•46『线路4』 +https://pb-162j8hrspp1iq.akamaized.net/History_365.m3u8$LR•IPV4•46『线路4』 #EXTINF:-1 tvg-id="HISTORY" tvg-name="HISTORY" group-title="💓台湾台📶",HISTORY -p3p://167.114.175.6:55331/6233e1a30007e08d7da4ab21717b3e79$LR•IPV4•46『线路5』 +https://jmp2.uk/plu-69dd5d7bfcb9bf5e3063cb16.m3u8$LR•IPV4•46『线路5』 #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『线路6』 +https://d1nzda2a2b3swt.cloudfront.net/History_Warfare_Now.m3u8$LR•IPV4•46『线路6』 #EXTINF:-1 tvg-id="HISTORY" tvg-name="HISTORY" group-title="💓台湾台📶",HISTORY -https://pb-k9ikw6ov8z4qi.akamaized.net/American_Pickers_by_History.m3u8$LR•IPV4•46『线路7』 +https://d28gzbv9fhdm3h.cloudfront.net/playlist/amg00376-magellantv-historyandwarfarenowaunzin-samsungau/playlist.m3u8$LR•IPV4•46『线路7』 #EXTINF:-1 tvg-id="HISTORY" tvg-name="HISTORY" group-title="💓台湾台📶",HISTORY -https://jmp2.uk/plu-62fb9844db5a4a0007ebc2a3.m3u8$LR•IPV4•46『线路8』 +https://amg00376-magellan-amg00376c19-samsung-nz-1735.playouts.now.amagi.tv/playlist/amg00376-magellantv-historyandwarfarenowaunzin-samsungnz/playlist.m3u8$LR•IPV4•46『线路8』 #EXTINF:-1 tvg-id="HISTORY" tvg-name="HISTORY" group-title="💓台湾台📶",HISTORY -https://pb-162j8hrspp1iq.akamaized.net/History_365.m3u8$LR•IPV4•46『线路9』 +https://amg00841-amg00841c7-rakuten-uk-2820.playouts.now.amagi.tv/playlist/amg00841-aeemeafast-historyhuntersrakuten-rakutenuk/playlist.m3u8$LR•IPV4•46『线路9』 #EXTINF:-1 tvg-id="HISTORY" tvg-name="HISTORY" group-title="💓台湾台📶",HISTORY -https://jmp2.uk/plu-69dd5d7bfcb9bf5e3063cb16.m3u8$LR•IPV4•46『线路10』 +https://amg00841-amg00841c9-samsung-gb-3032.playouts.now.amagi.tv/playlist/amg00841-aeemeafast-historyhunterssamsung-samsunggb/playlist.m3u8$LR•IPV4•46『线路10』 #EXTINF:-1 tvg-id="HISTORY" tvg-name="HISTORY" group-title="💓台湾台📶",HISTORY -https://d1nzda2a2b3swt.cloudfront.net/History_Warfare_Now.m3u8$LR•IPV4•46『线路11』 +https://jmp2.uk/plu-65819fc1b9adc4000813f37d.m3u8$LR•IPV4•46『线路11』 #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『线路12』 +https://jmp2.uk/plu-65775d29dfed030008cb3db2.m3u8$LR•IPV4•46『线路12』 #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『线路13』 +https://pb-m89wlp8flmjzf.akamaized.net/v1/aenetworks_modernmarvels_1/samsungheadend_us/latest/main/hls/playlist.m3u8$LR•IPV4•46『线路13』 #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『线路14』 +https://amg02333-pbs-amg02333c1-samsung-au-1253.playouts.now.amagi.tv/playlist/amg02333-pbsdistributionfast-pbshistory-samsungau/playlist.m3u8$LR•IPV4•46『线路14』 #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『线路15』 +https://amg02333-pbs-amg02333c1-samsung-nz-1254.playouts.now.amagi.tv/playlist/amg02333-pbsdistributionfast-pbshistory-samsungnz/playlist.m3u8$LR•IPV4•46『线路15』 #EXTINF:-1 tvg-id="HISTORY" tvg-name="HISTORY" group-title="💓台湾台📶",HISTORY -https://jmp2.uk/plu-65819fc1b9adc4000813f37d.m3u8$LR•IPV4•46『线路16』 +https://linear-188.frequency.stream/dist/glewedtv/188/hls/master/playlist.m3u8$LR•IPV4•46『线路16』 #EXTINF:-1 tvg-id="HISTORY" tvg-name="HISTORY" group-title="💓台湾台📶",HISTORY -https://jmp2.uk/plu-65775d29dfed030008cb3db2.m3u8$LR•IPV4•46『线路17』 +https://linear-188.frequency.stream/dist/xumo/188/hls/master/playlist.m3u8$LR•IPV4•46『线路17』 #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『线路18』 +https://jmp2.uk/plu-6000a6f4c3f8550008fc9b91.m3u8$LR•IPV4•46『线路18』 #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『线路19』 +https://dxagbr7yc4m1d.cloudfront.net/v1/aenetworks_skills_thrills_1/samsungheadend_us/latest/main/hls/playlist.m3u8$LR•IPV4•46『线路19』 #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『线路20』 +https://rpn.bozztv.com/gusa/gusa-tvshollywoohistory/index.m3u8$LR•IPV4•46『线路20』 #EXTINF:-1 tvg-id="HISTORY" tvg-name="HISTORY" group-title="💓台湾台📶",HISTORY -https://linear-188.frequency.stream/dist/glewedtv/188/hls/master/playlist.m3u8$LR•IPV4•46『线路21』 +https://9e754fa707344ccca6d84955c8fcaf36.mediatailor.us-east-1.amazonaws.com/v1/master/44f73ba4d03e9607dcd9bebdcb8494d86964f1d8/RlaxxTV-eu_AutenticHistory/playlist.m3u8$LR•IPV4•46『线路21』 #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『线路22』 +http://213.91.179.28:8000/play/a0c1$LR•IPV4•46『线路22』 #EXTINF:-1 tvg-id="HISTORY" tvg-name="HISTORY" group-title="💓台湾台📶",HISTORY -https://jmp2.uk/plu-6000a6f4c3f8550008fc9b91.m3u8$LR•IPV4•46『线路23』 +http://45.190.28.50/HISTORY_HD/index.m3u8$LR•IPV4•46『线路23』 #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『线路24』 +http://88.212.15.19/live/test_history/playlist.m3u8$LR•IPV4•46『线路24』 #EXTINF:-1 tvg-id="HISTORY" tvg-name="HISTORY" group-title="💓台湾台📶",HISTORY -https://rpn.bozztv.com/gusa/gusa-tvshollywoohistory/index.m3u8$LR•IPV4•46『线路25』 +http://82.78.243.219:45739/play/a01f/index.m3u8$LR•IPV4•46『线路25』 #EXTINF:-1 tvg-id="HISTORY" tvg-name="HISTORY" group-title="💓台湾台📶",HISTORY -http://213.91.179.28:8000/play/a0c1$LR•IPV4•46『线路26』 +http://40.160.24.53/HISTORY_CHANNEL/index.m3u8$LR•IPV4•46『线路26』 #EXTINF:-1 tvg-id="HISTORY" tvg-name="HISTORY" group-title="💓台湾台📶",HISTORY -http://45.190.28.50/HISTORY_HD/index.m3u8$LR•IPV4•46『线路27』 +http://138.121.15.230:9002/HISTORY-2/index.m3u8$LR•IPV4•46『线路27』 #EXTINF:-1 tvg-id="HISTORY" tvg-name="HISTORY" group-title="💓台湾台📶",HISTORY -http://88.212.15.19/live/test_history/playlist.m3u8$LR•IPV4•46『线路28』 +http://45.190.28.50/H2_HD/index.m3u8$LR•IPV4•46『线路28』 #EXTINF:-1 tvg-id="HISTORY" tvg-name="HISTORY" group-title="💓台湾台📶",HISTORY -http://82.78.243.219:45739/play/a01f/index.m3u8$LR•IPV4•46『线路29』 +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『线路29』 #EXTINF:-1 tvg-id="HISTORY" tvg-name="HISTORY" group-title="💓台湾台📶",HISTORY -http://40.160.24.53/HISTORY_CHANNEL/index.m3u8$LR•IPV4•46『线路30』 +https://lds-timeline-rakuten.amagi.tv/playlist.m3u8$LR•IPV4•46『线路30』 #EXTINF:-1 tvg-id="HISTORY" tvg-name="HISTORY" group-title="💓台湾台📶",HISTORY -http://138.121.15.230:9002/HISTORY-2/index.m3u8$LR•IPV4•46『线路31』 +http://138.121.15.230:9002/HISTORY-CHANNEL/index.m3u8$LR•IPV4•46『线路31』 #EXTINF:-1 tvg-id="HISTORY" tvg-name="HISTORY" group-title="💓台湾台📶",HISTORY -http://45.190.28.50/H2_HD/index.m3u8$LR•IPV4•46『线路32』 +http://103.72.101.252:8080/live/1471.m3u8$LR•IPV4•46『线路32』 #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『线路33』 +http://103.154.3.101:5001/live/577.m3u8$LR•IPV4•46『线路33』 #EXTINF:-1 tvg-id="HISTORY" tvg-name="HISTORY" group-title="💓台湾台📶",HISTORY -https://lds-timeline-rakuten.amagi.tv/playlist.m3u8$LR•IPV4•46『线路34』 +http://108.181.20.255:27347/livehttpplay?channel_id=23105$LR•IPV4•46『线路34』 #EXTINF:-1 tvg-id="HISTORY" tvg-name="HISTORY" group-title="💓台湾台📶",HISTORY -http://138.121.15.230:9002/HISTORY-CHANNEL/index.m3u8$LR•IPV4•46『线路35』 +https://jmp2.uk/plu-5d767b1c126c65d0a307355f.m3u8$LR•IPV4•46『线路35』 #EXTINF:-1 tvg-id="HISTORY" tvg-name="HISTORY" group-title="💓台湾台📶",HISTORY -http://103.72.101.252:8080/live/1471.m3u8$LR•IPV4•46『线路36』 +https://jmp2.uk/plu-5d4af1803e7983b391d73b13.m3u8$LR•IPV4•46『线路36』 #EXTINF:-1 tvg-id="HISTORY" tvg-name="HISTORY" group-title="💓台湾台📶",HISTORY -http://103.154.3.101:5001/live/577.m3u8$LR•IPV4•46『线路37』 +https://jmp2.uk/plu-5a4d35dfa5c02e717a234f86.m3u8$LR•IPV4•46『线路37』 #EXTINF:-1 tvg-id="HISTORY" tvg-name="HISTORY" group-title="💓台湾台📶",HISTORY -http://108.181.20.255:27347/livehttpplay?channel_id=23105$LR•IPV4•46『线路38』 +https://shift03.isp.bg/ViasatHistory_HD/index.m3u8$LR•IPV4•46『线路38』 #EXTINF:-1 tvg-id="HISTORY" tvg-name="HISTORY" group-title="💓台湾台📶",HISTORY -https://jmp2.uk/plu-5d767b1c126c65d0a307355f.m3u8$LR•IPV4•46『线路39』 +http://185.102.171.218/ViasatHistory/index.m3u8$LR•IPV4•46『线路39』 #EXTINF:-1 tvg-id="HISTORY" tvg-name="HISTORY" group-title="💓台湾台📶",HISTORY -https://jmp2.uk/plu-5d4af1803e7983b391d73b13.m3u8$LR•IPV4•46『线路40』 +http://315e5a5d.ottrast.com/iptv/8XFKA8883W9M5K/12101/index.m3u8$LR•IPV4•46『线路40』 #EXTINF:-1 tvg-id="HISTORY" tvg-name="HISTORY" group-title="💓台湾台📶",HISTORY -https://jmp2.uk/plu-5a4d35dfa5c02e717a234f86.m3u8$LR•IPV4•46『线路41』 +https://lb.dstvmultimedia.com/ViasatHistory/index.m3u8$LR•IPV4•46『线路41』 #EXTINF:-1 tvg-id="HISTORY" tvg-name="HISTORY" group-title="💓台湾台📶",HISTORY -https://shift03.isp.bg/ViasatHistory_HD/index.m3u8$LR•IPV4•46『线路42』 +http://178.124.179.122:8080/HistoryHD/index.m3u8$LR•IPV4•46『线路42』 #EXTINF:-1 tvg-id="HISTORY" tvg-name="HISTORY" group-title="💓台湾台📶",HISTORY -http://185.102.171.218/ViasatHistory/index.m3u8$LR•IPV4•46『线路43』 +https://cdn-ue1-prod.tsv2.amagi.tv/linear/ldsAAAAAA-timeline-samsungau/playlist.m3u8$LR•IPV4•46『线路43』 #EXTINF:-1 tvg-id="HISTORY" tvg-name="HISTORY" group-title="💓台湾台📶",HISTORY -http://315e5a5d.ottrast.com/iptv/8XFKA8883W9M5K/12101/index.m3u8$LR•IPV4•46『线路44』 +http://37.27.111.214:8080/live/27/hls.m3u8$LR•IPV4•46『线路44』 #EXTINF:-1 tvg-id="HISTORY" tvg-name="HISTORY" group-title="💓台湾台📶",HISTORY -https://lb.dstvmultimedia.com/ViasatHistory/index.m3u8$LR•IPV4•46『线路45』 +http://free.cnlive.club/channel/n20a85c83/index.m3u8?q=1752629214236$LR•IPV4•46『线路45』 #EXTINF:-1 tvg-id="HISTORY" tvg-name="HISTORY" group-title="💓台湾台📶",HISTORY -http://178.124.179.122:8080/HistoryHD/index.m3u8$LR•IPV4•46『线路46』 +p3p://167.114.175.6:55331/6233e1a30007e08d7da4ab21717b3e79$LR•IPV4•46『线路46』 #EXTINF:-1 tvg-id="视频8M1080咪视通1" tvg-name="视频8M1080咪视通1" group-title="🏈体育赛事🏆️",视频_8M1080_咪视通-1 http://jackgao.top:35455/itv/3000000001000005308.m3u8?cdn=FifastbLive$LR•IPV4•2『线路1』 #EXTINF:-1 tvg-id="视频8M1080咪视通1" tvg-name="视频8M1080咪视通1" group-title="🏈体育赛事🏆️",视频_8M1080_咪视通-1 @@ -2364,53 +2344,53 @@ https://stream1.freetv.fun/jsports-1-1.m3u8$LR•IPV4 #EXTINF:-1 tvg-id="JSPORTS2" tvg-name="JSPORTS2" group-title="⚽️SPORTS",JSPORTS2 https://stream1.freetv.fun/jsports-2-2.m3u8$LR•IPV4 #EXTINF:-1 tvg-id="MLB NETWORK" tvg-name="MLB NETWORK" group-title="⚽️SPORTS",MLB NETWORK -http://fl2.moveonjoy.com/MLB_NETWORK/index.m3u8$LR•IPV4•2『线路1』 +http://40.160.24.52/MLB_Network/index.m3u8$LR•IPV4•2『线路1』 #EXTINF:-1 tvg-id="MLB NETWORK" tvg-name="MLB NETWORK" group-title="⚽️SPORTS",MLB NETWORK -http://40.160.24.52/MLB_Network/index.m3u8$LR•IPV4•2『线路2』 +http://fl2.moveonjoy.com/MLB_NETWORK/index.m3u8$LR•IPV4•2『线路2』 #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『线路1』 +https://d1jzu95oc8fgt3.cloudfront.net/FOX_Sports.m3u8$LR•IPV4•8『线路1』 #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『线路2』 +https://amg02855-foxsports-amg02855c1-xumo-us-1755.playouts.now.amagi.tv/Fox-Sports-AmazonNews/playlist.m3u8$LR•IPV4•8『线路2』 #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『线路3』 +https://live-manifest.production-public.tubi.io/live/6035c7fd-efff-4ec7-93dc-aa0c7a58ba47/playlist.m3u8$LR•IPV4•8『线路3』 #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『线路4』 +https://jmp2.uk/plu-5a74b8e1e22a61737979c6bf.m3u8$LR•IPV4•8『线路4』 #EXTINF:-1 tvg-id="FOX Sports" tvg-name="FOX Sports" group-title="⚽️SPORTS",FOX Sports -https://jmp2.uk/plu-5a74b8e1e22a61737979c6bf.m3u8$LR•IPV4•8『线路5』 +http://85.237.89.160:9590/usa-s/FOX-SPORTS-1/index.m3u8$LR•IPV4•8『线路5』 #EXTINF:-1 tvg-id="FOX Sports" tvg-name="FOX Sports" group-title="⚽️SPORTS",FOX Sports -http://85.237.89.160:9590/usa-s/FOX-SPORTS-1/index.m3u8$LR•IPV4•8『线路6』 +https://streamvidex.qzz.io/videx/fox2usa/index.m3u8$LR•IPV4•8『线路6』 #EXTINF:-1 tvg-id="FOX Sports" tvg-name="FOX Sports" group-title="⚽️SPORTS",FOX Sports -https://streamvidex.qzz.io/videx/fox2usa/index.m3u8$LR•IPV4•8『线路7』 +http://108.181.20.255:27347/livehttpplay?channel_id=23054$LR•IPV4•8『线路7』 #EXTINF:-1 tvg-id="FOX Sports" tvg-name="FOX Sports" group-title="⚽️SPORTS",FOX Sports -http://108.181.20.255:27347/livehttpplay?channel_id=23054$LR•IPV4•8『线路8』 +http://fl2.moveonjoy.com/FOX_Sports_1/index.m3u8$LR•IPV4•8『线路8』 #EXTINF:-1 tvg-id="NBA" tvg-name="NBA" group-title="⚽️SPORTS",NBA -https://stream1.freetv.fun/nba-tv-7.m3u8$LR•IPV4•8『线路1』 +https://live-manifest.production-public.tubi.io/live/553b8d5e-fd2a-4a61-bdfa-73b34c299d75/playlist.m3u8$LR•IPV4•8『线路1』 #EXTINF:-1 tvg-id="NBA" tvg-name="NBA" group-title="⚽️SPORTS",NBA -https://stream1.freetv.fun/nba-tv-5.m3u8$LR•IPV4•8『线路2』 +https://jmp2.uk/plu-6792c30abc03978b9b8bb832.m3u8$LR•IPV4•8『线路2』 #EXTINF:-1 tvg-id="NBA" tvg-name="NBA" group-title="⚽️SPORTS",NBA -http://170.yfvodcdn.com:19980/live/nbaTV2/hls.m3u8$LR•IPV4•8『线路3』 +https://amg00556-amg00556c3-firetv-us-6060.playouts.now.amagi.tv/playlist.m3u8$LR•IPV4•8『线路3』 #EXTINF:-1 tvg-id="NBA" tvg-name="NBA" group-title="⚽️SPORTS",NBA -p3p://167.114.175.6:55331/65a587500007bc039fca3566638e69af$LR•IPV4•8『线路4』 +http://user.scalecdn.co:8080/live/54706135/09221986/3092.m3u8$LR•IPV4•8『线路4』 #EXTINF:-1 tvg-id="NBA" tvg-name="NBA" group-title="⚽️SPORTS",NBA -https://live-manifest.production-public.tubi.io/live/553b8d5e-fd2a-4a61-bdfa-73b34c299d75/playlist.m3u8$LR•IPV4•8『线路5』 +https://stream1.freetv.fun/nba-tv-7.m3u8$LR•IPV4•8『线路5』 #EXTINF:-1 tvg-id="NBA" tvg-name="NBA" group-title="⚽️SPORTS",NBA -https://jmp2.uk/plu-6792c30abc03978b9b8bb832.m3u8$LR•IPV4•8『线路6』 +https://stream1.freetv.fun/nba-tv-5.m3u8$LR•IPV4•8『线路6』 #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•8『线路7』 +http://170.yfvodcdn.com:19980/live/nbaTV2/hls.m3u8$LR•IPV4•8『线路7』 #EXTINF:-1 tvg-id="NBA" tvg-name="NBA" group-title="⚽️SPORTS",NBA -http://user.scalecdn.co:8080/live/54706135/09221986/3092.m3u8$LR•IPV4•8『线路8』 +p3p://167.114.175.6:55331/65a587500007bc039fca3566638e69af$LR•IPV4•8『线路8』 #EXTINF:-1 tvg-id="ESPN" tvg-name="ESPN" group-title="⚽️SPORTS",ESPN -http://41.205.93.154/ESPN/index.m3u8$LR•IPV4•6『线路1』 +http://181.78.197.59:8000/play/a07z/index.m3u8$LR•IPV4•6『线路1』 #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『线路2』 +http://181.78.197.59:8000/play/a081/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/a07z/index.m3u8$LR•IPV4•6『线路3』 +http://181.78.197.59:8000/play/a07n/index.m3u8$LR•IPV4•6『线路3』 #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『线路4』 +http://40.160.24.58/ESPN_DEPORTES/index.m3u8$LR•IPV4•6『线路4』 #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『线路5』 +http://41.205.93.154/ESPN/index.m3u8$LR•IPV4•6『线路5』 #EXTINF:-1 tvg-id="ESPN" tvg-name="ESPN" group-title="⚽️SPORTS",ESPN -http://40.160.24.58/ESPN_DEPORTES/index.m3u8$LR•IPV4•6『线路6』 +http://38.96.178.201:80/live/ESPNHD/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",緯來體育 @@ -2788,19 +2768,17 @@ https://vip.ffzy-play7.com/20221129/7714_a0c75de1/index.m3u8$LR•IPV4 #EXTINF:-1 tvg-id="音乐僵尸" tvg-name="音乐僵尸" group-title="🎞️电影点播",音乐僵尸 https://vip.ffzy-play6.com/20221207/10627_09b3f2e5/index.m3u8$LR•IPV4 #EXTINF:-1 tvg-id="英雄" tvg-name="英雄" group-title="🎞️电影点播",英雄 -http://cdn.jdshipin.com:8880/huya.php?id=23824164$LR•IPV4•7『线路1』 +https://live.ottiptv.cc/yy/1352475619$LR•IPV4•6『线路1』 #EXTINF:-1 tvg-id="英雄" tvg-name="英雄" group-title="🎞️电影点播",英雄 -https://live.ottiptv.cc/yy/1352475619$LR•IPV4•7『线路2』 +https://vip.ffzy-play7.com/20221227/9993_9681b67b/index.m3u8$LR•IPV4•6『线路2』 #EXTINF:-1 tvg-id="英雄" tvg-name="英雄" group-title="🎞️电影点播",英雄 -https://vip.ffzy-play7.com/20221227/9993_9681b67b/index.m3u8$LR•IPV4•7『线路3』 +https://vip.ffzy-play.com/20221015/981_2ca5b5f9/index.m3u8$LR•IPV4•6『线路3』 #EXTINF:-1 tvg-id="英雄" tvg-name="英雄" group-title="🎞️电影点播",英雄 -https://vip.ffzy-play.com/20221015/981_2ca5b5f9/index.m3u8$LR•IPV4•7『线路4』 +https://vip.ffzy-play6.com/20221207/10694_f9088e66/index.m3u8$LR•IPV4•6『线路4』 #EXTINF:-1 tvg-id="英雄" tvg-name="英雄" group-title="🎞️电影点播",英雄 -https://vip.ffzy-play6.com/20221207/10694_f9088e66/index.m3u8$LR•IPV4•7『线路5』 +https://vip.ffzy-play7.com/20221129/7743_4656dd25/index.m3u8$LR•IPV4•6『线路5』 #EXTINF:-1 tvg-id="英雄" tvg-name="英雄" group-title="🎞️电影点播",英雄 -https://vip.ffzy-play7.com/20221129/7743_4656dd25/index.m3u8$LR•IPV4•7『线路6』 -#EXTINF:-1 tvg-id="英雄" tvg-name="英雄" group-title="🎞️电影点播",英雄 -https://vip.ffzy-play6.com/20221112/6371_9b5bf930/index.m3u8$LR•IPV4•7『线路7』 +https://vip.ffzy-play6.com/20221112/6371_9b5bf930/index.m3u8$LR•IPV4•6『线路6』 #EXTINF:-1 tvg-id="赢钱专家" tvg-name="赢钱专家" group-title="🎞️电影点播",赢钱专家 https://vip.ffzy-play6.com/20221113/6794_d514b390/index.m3u8$LR•IPV4 #EXTINF:-1 tvg-id="有话好好说" tvg-name="有话好好说" group-title="🎞️电影点播",有话好好说 @@ -3014,13 +2992,15 @@ https://live.metshop.top/huya/11342388$LR•IPV4 #EXTINF:-1 tvg-id="联合抗日" tvg-name="联合抗日" group-title="💓电视剧🔁",联合抗日 https://live.metshop.top/huya/11352910$LR•IPV4 #EXTINF:-1 tvg-id="三国" tvg-name="三国" group-title="💓电视剧🔁",三国 -https://live.ottiptv.cc/huya/11602081$LR•IPV4•4『线路1』 +https://live.ottiptv.cc/huya/11602081$LR•IPV4•5『线路1』 #EXTINF:-1 tvg-id="三国" tvg-name="三国" group-title="💓电视剧🔁",三国 -https://live.ottiptv.cc/huya/11352944$LR•IPV4•4『线路2』 +https://live.ottiptv.cc/huya/11352944$LR•IPV4•5『线路2』 #EXTINF:-1 tvg-id="三国" tvg-name="三国" group-title="💓电视剧🔁",三国 -https://live.metshop.top/huya/11352944$LR•IPV4•4『线路3』 +https://goodiptv.club/douyu/5908256$LR•IPV4•5『线路3』 #EXTINF:-1 tvg-id="三国" tvg-name="三国" group-title="💓电视剧🔁",三国 -http://103.193.151.146/huya.php?id=29465871$LR•IPV4•4『线路4』 +https://live.metshop.top/huya/11352944$LR•IPV4•5『线路4』 +#EXTINF:-1 tvg-id="三国" tvg-name="三国" group-title="💓电视剧🔁",三国 +http://103.193.151.146/huya.php?id=29465871$LR•IPV4•5『线路5』 #EXTINF:-1 tvg-id="雍正皇帝" tvg-name="雍正皇帝" group-title="💓电视剧🔁",雍正皇帝 https://live.metshop.top/huya/11342439$LR•IPV4 #EXTINF:-1 tvg-id="许冠英合集" tvg-name="许冠英合集" group-title="💓电视剧🔁",许冠英合集 @@ -3080,11 +3060,11 @@ 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=8a921813ee3b23c82763145c9f291a3b$LR•IPV4•41『线路1』 +https://v4-702cae17a28d6e4f0c0002bba021d934.livehwc4.com/play.kankanlive.com/live/1698423397390920.m3u8?sub_m3u8=true&edge_slice=true&user_session_id=7b0844b76d8c951adb5f87864280aa1c$LR•IPV4•41『线路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=f3fb3ddaca05941087114cf6481e1c23$LR•IPV4•41『线路2』 +https://ali-m-l.cztv.com/channels/lantian/channel012/1080p.m3u8$LR•IPV4•41『线路2』 #EXTINF:-1 tvg-id="纪录" tvg-name="纪录" group-title="💓优质个源",纪录 -https://ali-m-l.cztv.com/channels/lantian/channel012/1080p.m3u8$LR•IPV4•41『线路3』 +https://v4-e6b1c5baf4e240fe63adbf68dda23435.livehwc4.com/play.kankanlive.com/live/1698423397390920.m3u8?sub_m3u8=true&edge_slice=true&user_session_id=1c7b8d97d045399d92a9b9016e62d86b$LR•IPV4•41『线路3』 #EXTINF:-1 tvg-id="纪录" tvg-name="纪录" group-title="💓优质个源",纪录 http://free.cnlive.club/channel/n3f497a4c/index.m3u8?q=1752629214236$LR•IPV4•41『线路4』 #EXTINF:-1 tvg-id="纪录" tvg-name="纪录" group-title="💓优质个源",纪录 @@ -3144,11 +3124,11 @@ https://rt-rtd.rttv.com/dvr/rtdoc/playlist_4500Kb.m3u8$LR•IPV4•41『线路31 #EXTINF:-1 tvg-id="纪录" tvg-name="纪录" group-title="💓优质个源",纪录 p3p://167.114.175.6:55331/623baf7a0004e5d79c2047cd46107be2$LR•IPV4•41『线路32』 #EXTINF:-1 tvg-id="纪录" tvg-name="纪录" group-title="💓优质个源",纪录 -http://23.237.104.106:8080/USA_DISCOVERY/index.m3u8$LR•IPV4•41『线路33』 +https://jmp2.uk/plu-6400f731d200410008f9b339.m3u8$LR•IPV4•41『线路33』 #EXTINF:-1 tvg-id="纪录" tvg-name="纪录" group-title="💓优质个源",纪录 -https://jmp2.uk/plu-6400f731d200410008f9b339.m3u8$LR•IPV4•41『线路34』 +https://svs.itworkscdn.net/asharqdiscoverylive/asharqd.smil/playlist_dvr.m3u8$LR•IPV4•41『线路34』 #EXTINF:-1 tvg-id="纪录" tvg-name="纪录" group-title="💓优质个源",纪录 -https://svs.itworkscdn.net/asharqdiscoverylive/asharqd.smil/playlist_dvr.m3u8$LR•IPV4•41『线路35』 +http://23.237.104.106:8080/USA_DISCOVERY/index.m3u8$LR•IPV4•41『线路35』 #EXTINF:-1 tvg-id="纪录" tvg-name="纪录" group-title="💓优质个源",纪录 p3p://167.114.175.6:55331/62c9a44500000cd3c69dc74b77c62c82$LR•IPV4•41『线路36』 #EXTINF:-1 tvg-id="纪录" tvg-name="纪录" group-title="💓优质个源",纪录 @@ -3156,9 +3136,9 @@ http://40.160.24.53/MTV_LIVE/index.m3u8$LR•IPV4•41『线路37』 #EXTINF:-1 tvg-id="纪录" tvg-name="纪录" group-title="💓优质个源",纪录 p3p://167.114.175.6:55331/5fe16de700083ba97787607e74d90cb5$LR•IPV4•41『线路38』 #EXTINF:-1 tvg-id="纪录" tvg-name="纪录" group-title="💓优质个源",纪录 -p3p://167.114.175.6:55331/644518fd0002d5953f21bedc56b6465f$LR•IPV4•41『线路39』 +https://i.mjh.nz/.r/sky-hgtv.m3u8$LR•IPV4•41『线路39』 #EXTINF:-1 tvg-id="纪录" tvg-name="纪录" group-title="💓优质个源",纪录 -https://i.mjh.nz/.r/sky-hgtv.m3u8$LR•IPV4•41『线路40』 +p3p://167.114.175.6:55331/644518fd0002d5953f21bedc56b6465f$LR•IPV4•41『线路40』 #EXTINF:-1 tvg-id="纪录" tvg-name="纪录" group-title="💓优质个源",纪录 p3p://167.114.175.6:55331/61e4f963000c710c55474e4e1e2273d9$LR•IPV4•41『线路41』 #EXTINF:-1 tvg-id="樱桃小丸子剧" tvg-name="樱桃小丸子剧" group-title="💓儿童专享",樱桃小丸子剧 @@ -3180,29 +3160,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://free.cnlive.club/channel/n59903092/index.m3u8?q=1752629214236$LR•IPV4•27『线路1』 +http://scgctvshow.sctv.com/hdlive/sctv7/index.m3u8$LR•IPV4•27『线路1』 #EXTINF:-1 tvg-id="儿童" tvg-name="儿童" group-title="💓儿童专享",儿童 -http://free.cnlive.club/channel/33dc4490/index.m3u8?q=1752629214236$LR•IPV4•27『线路2』 +http://free.cnlive.club/channel/n59903092/index.m3u8?q=1752629214236$LR•IPV4•27『线路2』 #EXTINF:-1 tvg-id="儿童" tvg-name="儿童" group-title="💓儿童专享",儿童 -http://free.cnlive.club/channel/n149d9627/index.m3u8?q=1752629214236$LR•IPV4•27『线路3』 +http://free.cnlive.club/channel/33dc4490/index.m3u8?q=1752629214236$LR•IPV4•27『线路3』 #EXTINF:-1 tvg-id="儿童" tvg-name="儿童" group-title="💓儿童专享",儿童 -http://free.cnlive.club/channel/5fe8f622/index.m3u8?q=1752629214236$LR•IPV4•27『线路4』 +http://free.cnlive.club/channel/n149d9627/index.m3u8?q=1752629214236$LR•IPV4•27『线路4』 #EXTINF:-1 tvg-id="儿童" tvg-name="儿童" group-title="💓儿童专享",儿童 -http://free.cnlive.club/channel/7af110c4/index.m3u8?q=1752629214236$LR•IPV4•27『线路5』 +http://free.cnlive.club/channel/5fe8f622/index.m3u8?q=1752629214236$LR•IPV4•27『线路5』 #EXTINF:-1 tvg-id="儿童" tvg-name="儿童" group-title="💓儿童专享",儿童 -http://free.cnlive.club/channel/18a1ad0/index.m3u8?q=1752629214236$LR•IPV4•27『线路6』 +http://free.cnlive.club/channel/7af110c4/index.m3u8?q=1752629214236$LR•IPV4•27『线路6』 #EXTINF:-1 tvg-id="儿童" tvg-name="儿童" group-title="💓儿童专享",儿童 -http://free.cnlive.club/channel/n70dedb3e/index.m3u8?q=1752629214236$LR•IPV4•27『线路7』 +http://free.cnlive.club/channel/18a1ad0/index.m3u8?q=1752629214236$LR•IPV4•27『线路7』 #EXTINF:-1 tvg-id="儿童" tvg-name="儿童" group-title="💓儿童专享",儿童 -http://free.cnlive.club/channel/n6567f5b8/index.m3u8?q=1752629214236$LR•IPV4•27『线路8』 +http://free.cnlive.club/channel/n70dedb3e/index.m3u8?q=1752629214236$LR•IPV4•27『线路8』 #EXTINF:-1 tvg-id="儿童" tvg-name="儿童" group-title="💓儿童专享",儿童 -http://free.cnlive.club/channel/n6a165737/index.m3u8?q=1752629214236$LR•IPV4•27『线路9』 +http://free.cnlive.club/channel/n6567f5b8/index.m3u8?q=1752629214236$LR•IPV4•27『线路9』 #EXTINF:-1 tvg-id="儿童" tvg-name="儿童" group-title="💓儿童专享",儿童 -http://free.cnlive.club/channel/n75fc9ff7/index.m3u8?q=1752629214236$LR•IPV4•27『线路10』 +http://free.cnlive.club/channel/n6a165737/index.m3u8?q=1752629214236$LR•IPV4•27『线路10』 #EXTINF:-1 tvg-id="儿童" tvg-name="儿童" group-title="💓儿童专享",儿童 -p3p://167.114.175.6:55331/6233e0ca0000ca8f7da159a76b755519$LR•IPV4•27『线路11』 +http://free.cnlive.club/channel/n75fc9ff7/index.m3u8?q=1752629214236$LR•IPV4•27『线路11』 #EXTINF:-1 tvg-id="儿童" tvg-name="儿童" group-title="💓儿童专享",儿童 -http://scgctvshow.sctv.com/hdlive/sctv7/index.m3u8$LR•IPV4•27『线路12』 +p3p://167.114.175.6:55331/6233e0ca0000ca8f7da159a76b755519$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="💓儿童专享",儿童 @@ -3226,19 +3206,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="💓儿童专享",儿童 -p3p://167.114.175.6:55331/6506d1a00000a99a33d7555a4b747caa$LR•IPV4•27『线路24』 +https://amg02159-kcglobal-amg02159c1-samsung-in-521.playouts.now.amagi.tv/playlist/amg02159-kcglobal-animax-samsungin/playlist.m3u8$LR•IPV4•27『线路24』 #EXTINF:-1 tvg-id="儿童" tvg-name="儿童" group-title="💓儿童专享",儿童 -p3p://167.114.175.6:55331/61e0f9f0000ec6db45a9e87848424184$LR•IPV4•27『线路25』 +p3p://167.114.175.6:55331/6506d1a00000a99a33d7555a4b747caa$LR•IPV4•27『线路25』 #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『线路26』 +p3p://167.114.175.6:55331/61e0f9f0000ec6db45a9e87848424184$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://www.douzhicloud.site:35455/douyu/4332$LR•IPV4•2『线路1』 +http://epg.112114.xyz/douyu/252802$LR•IPV4•2『线路1』 #EXTINF:-1 tvg-id="贝爷" tvg-name="贝爷" group-title="🍹定制台☕️",贝爷 -http://epg.112114.xyz/douyu/252802$LR•IPV4•2『线路2』 +http://www.douzhicloud.site:35455/douyu/4332$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 @@ -3328,15 +3308,15 @@ p3p://167.114.175.6:55331/657da67d0006060a0404d5987d1853db$LR•IPV4 #EXTINF:-1 tvg-id="Mytv Super18" tvg-name="Mytv Super18" group-title="🍹定制P3P☕️",Mytv Super18 p3p://167.114.175.6:55331/6506d591000d6d7733e6bdfb4725689e$LR•IPV4 #EXTINF:-1 tvg-id="Star Movies" tvg-name="Star Movies" group-title="🍹定制P3P☕️",Star Movies -p3p://167.114.175.6:55331/6506c5e500027c7f33a9834b5d937568$LR•IPV4•5『线路1』 +http://znty.dyndns.org:5010/hls/foxm.m3u8$LR•IPV4•5『线路1』 #EXTINF:-1 tvg-id="Star Movies" tvg-name="Star Movies" group-title="🍹定制P3P☕️",Star Movies -http://znty.dyndns.org:5010/hls/foxm.m3u8$LR•IPV4•5『线路2』 +http://92.36.202.5:10001/play/a01o$LR•IPV4•5『线路2』 #EXTINF:-1 tvg-id="Star Movies" tvg-name="Star Movies" group-title="🍹定制P3P☕️",Star Movies -http://92.36.202.5:10001/play/a01o$LR•IPV4•5『线路3』 +http://149.71.34.166:8000/play/a01f/index.m3u8$LR•IPV4•5『线路3』 #EXTINF:-1 tvg-id="Star Movies" tvg-name="Star Movies" group-title="🍹定制P3P☕️",Star Movies -http://149.71.34.166:8000/play/a01f/index.m3u8$LR•IPV4•5『线路4』 +http://149.71.34.166:8000/play/a01g/index.m3u8$LR•IPV4•5『线路4』 #EXTINF:-1 tvg-id="Star Movies" tvg-name="Star Movies" group-title="🍹定制P3P☕️",Star Movies -http://149.71.34.166:8000/play/a01g/index.m3u8$LR•IPV4•5『线路5』 +p3p://167.114.175.6:55331/6506c5e500027c7f33a9834b5d937568$LR•IPV4•5『线路5』 #EXTINF:-1 tvg-id="NOW 668跑马" tvg-name="NOW 668跑马" group-title="🍹定制P3P☕️",NOW 668跑马 p3p://167.114.175.6:55331/6318b7730000b372fb7ca7e170c66e54$LR•IPV4 #EXTINF:-1 tvg-id="Cinemax HK" tvg-name="Cinemax HK" group-title="🍹定制P3P☕️",Cinemax HK @@ -3370,9 +3350,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 -p3p://167.114.175.6:55331/6506d285000b06bd33dad67a652e2bfd$LR•IPV4•2『线路1』 +https://jmp2.uk/plu-652557d93fd33c000802f995.m3u8$LR•IPV4•2『线路1』 #EXTINF:-1 tvg-id="Super Kids" tvg-name="Super Kids" group-title="🍹定制P3P☕️",Super Kids -https://jmp2.uk/plu-652557d93fd33c000802f995.m3u8$LR•IPV4•2『线路2』 +p3p://167.114.175.6:55331/6506d285000b06bd33dad67a652e2bfd$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☕️",面包台 @@ -3412,27 +3392,27 @@ p3p://167.114.175.6:55331/62011f820008c9f3c33ae0231cf86a05$LR•IPV4 #EXTINF:-1 tvg-id="EL生活英语" tvg-name="EL生活英语" group-title="🍹定制P3P☕️",EL生活英语 p3p://167.114.175.6:55331/624888bb000b784ace507da37b7906ea$LR•IPV4 #EXTINF:-1 tvg-id="Z" tvg-name="Z" group-title="🍹定制P3P☕️",Z -p3p://167.114.175.6:55331/64c7ce3f000afa423db36d3f378c386d$LR•IPV4•11『线路1』 +https://live.artidijitalmedya.com/artidijital_kanalz/kanalz/playlist.m3u8$LR•IPV4•11『线路1』 #EXTINF:-1 tvg-id="Z" tvg-name="Z" group-title="🍹定制P3P☕️",Z -https://live.artidijitalmedya.com/artidijital_kanalz/kanalz/playlist.m3u8$LR•IPV4•11『线路2』 +http://s1.media-planet.sk/live/novezamky/BratuMarian.m3u8$LR•IPV4•11『线路2』 #EXTINF:-1 tvg-id="Z" tvg-name="Z" group-title="🍹定制P3P☕️",Z -http://s1.media-planet.sk/live/novezamky/BratuMarian.m3u8$LR•IPV4•11『线路3』 +https://jmp2.uk/plu-68e8fd7c3ede4398bc69af93.m3u8$LR•IPV4•11『线路3』 #EXTINF:-1 tvg-id="Z" tvg-name="Z" group-title="🍹定制P3P☕️",Z -https://jmp2.uk/plu-68e8fd7c3ede4398bc69af93.m3u8$LR•IPV4•11『线路4』 +https://d39g1vxj2ef6in.cloudfront.net/v1/master/3fec3e5cac39a52b2132f9c66c83dae043dc17d4/prod-rakuten-stitched/master.m3u8?ads.xumo_channelId=88883103$LR•IPV4•11『线路4』 #EXTINF:-1 tvg-id="Z" tvg-name="Z" group-title="🍹定制P3P☕️",Z -https://d39g1vxj2ef6in.cloudfront.net/v1/master/3fec3e5cac39a52b2132f9c66c83dae043dc17d4/prod-rakuten-stitched/master.m3u8?ads.xumo_channelId=88883103$LR•IPV4•11『线路5』 +https://amg02393-awpg-amg02393c3-rakuten-uk-2462.playouts.now.amagi.tv/playlist/amg02393-awpg-leszamours-rakutenuk/playlist.m3u8$LR•IPV4•11『线路5』 #EXTINF:-1 tvg-id="Z" tvg-name="Z" group-title="🍹定制P3P☕️",Z -https://amg02393-awpg-amg02393c3-rakuten-uk-2462.playouts.now.amagi.tv/playlist/amg02393-awpg-leszamours-rakutenuk/playlist.m3u8$LR•IPV4•11『线路6』 +https://jmp2.uk/plu-652d0b756208700008d758ad.m3u8$LR•IPV4•11『线路6』 #EXTINF:-1 tvg-id="Z" tvg-name="Z" group-title="🍹定制P3P☕️",Z -https://jmp2.uk/plu-652d0b756208700008d758ad.m3u8$LR•IPV4•11『线路7』 +https://stream.ztv.zp.ua/hls/live.m3u8$LR•IPV4•11『线路7』 #EXTINF:-1 tvg-id="Z" tvg-name="Z" group-title="🍹定制P3P☕️",Z -https://stream.ztv.zp.ua/hls/live.m3u8$LR•IPV4•11『线路8』 +https://jmp2.uk/plu-66b3af48d2d50d00083d6936.m3u8$LR•IPV4•11『线路8』 #EXTINF:-1 tvg-id="Z" tvg-name="Z" group-title="🍹定制P3P☕️",Z -https://jmp2.uk/plu-66b3af48d2d50d00083d6936.m3u8$LR•IPV4•11『线路9』 +https://d1hz1p2gea2zy4.cloudfront.net/live/rmgtv/RMG-TRENDSZFR-LIVE/index.m3u8$LR•IPV4•11『线路9』 #EXTINF:-1 tvg-id="Z" tvg-name="Z" group-title="🍹定制P3P☕️",Z -https://d1hz1p2gea2zy4.cloudfront.net/live/rmgtv/RMG-TRENDSZFR-LIVE/index.m3u8$LR•IPV4•11『线路10』 +https://d1hz1p2gea2zy4.cloudfront.net/live/rmgtv/RMG-TRENDSZNL-LIVE/index.m3u8$LR•IPV4•11『线路10』 #EXTINF:-1 tvg-id="Z" tvg-name="Z" group-title="🍹定制P3P☕️",Z -https://d1hz1p2gea2zy4.cloudfront.net/live/rmgtv/RMG-TRENDSZNL-LIVE/index.m3u8$LR•IPV4•11『线路11』 +p3p://167.114.175.6:55331/64c7ce3f000afa423db36d3f378c386d$LR•IPV4•11『线路11』 #EXTINF:-1 tvg-id="博斯无限1" tvg-name="博斯无限1" group-title="🍹定制P3P☕️",博斯无限1 p3p://167.114.175.6:55331/647cba27000a6f78186e481d11013645$LR•IPV4 #EXTINF:-1 tvg-id="博斯无限2" tvg-name="博斯无限2" group-title="🍹定制P3P☕️",博斯无限2 @@ -3440,59 +3420,59 @@ p3p://167.114.175.6:55331/6146901b0006875bea841df772893d7b$LR•IPV4 #EXTINF:-1 tvg-id="Star World" tvg-name="Star World" group-title="🍹定制P3P☕️",Star World p3p://167.114.175.6:55331/621dc4640002052a2743501031f65ed4$LR•IPV4 #EXTINF:-1 tvg-id="HITS" tvg-name="HITS" group-title="🍹定制P3P☕️",HITS -https://89514e758f814907be6d14bbc0aa66b7.mediatailor.us-west-2.amazonaws.com/v1/master/ba62fe743df0fe93366eba3a257d792884136c7f/LINEAR-800-UK-SONYONEACTIONHITS-LG_UK/playlist.m3u8$LR•IPV4•27『线路1』 +https://webtvstream.bhtelecom.ba/hls7/filmbox_premium.m3u8$LR•IPV4•27『线路1』 #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•27『线路2』 +http://88.212.15.19/live/test_film_boxpremium_hd_hevc/playlist.m3u8$LR•IPV4•27『线路2』 #EXTINF:-1 tvg-id="HITS" tvg-name="HITS" group-title="🍹定制P3P☕️",HITS -http://37.27.111.214:8080/live/28/hls.m3u8$LR•IPV4•27『线路3』 +http://46.149.191.217:9005/play/a01x$LR•IPV4•27『线路3』 #EXTINF:-1 tvg-id="HITS" tvg-name="HITS" group-title="🍹定制P3P☕️",HITS -p3p://167.114.175.6:55331/6233e648000735057db6cf734adf440d$LR•IPV4•27『线路4』 +https://cdn10jtedge.indihometv.com/atm/DASH/hitsmovie/manifest.mpd$LR•IPV4•27『线路4』 #EXTINF:-1 tvg-id="HITS" tvg-name="HITS" group-title="🍹定制P3P☕️",HITS -https://webtvstream.bhtelecom.ba/hls7/filmbox_premium.m3u8$LR•IPV4•27『线路5』 +http://40.160.24.52/EPIX_2/index.m3u8$LR•IPV4•27『线路5』 #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•27『线路6』 +https://5098a8b860504a3690fd2e7c0a18d68f.mediatailor.us-west-2.amazonaws.com/v1/master/ba62fe743df0fe93366eba3a257d792884136c7f/LINEAR-817-FR-SONYONEHITSACTION-LG_FR/playlist.m3u8$LR•IPV4•27『线路6』 #EXTINF:-1 tvg-id="HITS" tvg-name="HITS" group-title="🍹定制P3P☕️",HITS -http://46.149.191.217:9005/play/a01x$LR•IPV4•27『线路7』 +https://7aa9671895264ec9a384dfed1b992171.mediatailor.us-west-2.amazonaws.com/v1/master/ba62fe743df0fe93366eba3a257d792884136c7f/LINEAR-818-FR-SONYONEHITSCOMDIE-LG_FR/playlist.m3u8$LR•IPV4•27『线路7』 #EXTINF:-1 tvg-id="HITS" tvg-name="HITS" group-title="🍹定制P3P☕️",HITS -https://cdn10jtedge.indihometv.com/atm/DASH/hitsmovie/manifest.mpd$LR•IPV4•27『线路8』 +https://cdn10jtedge.indihometv.com/atm/DASH/hits/manifest.mpd$LR•IPV4•27『线路8』 #EXTINF:-1 tvg-id="HITS" tvg-name="HITS" group-title="🍹定制P3P☕️",HITS -http://40.160.24.52/EPIX_2/index.m3u8$LR•IPV4•27『线路9』 +https://stream.ads.ottera.tv/playlist.m3u8?network_id=1058$LR•IPV4•27『线路9』 #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•27『线路10』 +https://lotus.stingray.com/manifest/ose-237ads-montreal/samsungtvplus/master.m3u8$LR•IPV4•27『线路10』 #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•27『线路11』 +https://d2tuyivcrvbj81.cloudfront.net/XITE_Christian_Hits.m3u8$LR•IPV4•27『线路11』 #EXTINF:-1 tvg-id="HITS" tvg-name="HITS" group-title="🍹定制P3P☕️",HITS -https://cdn10jtedge.indihometv.com/atm/DASH/hits/manifest.mpd$LR•IPV4•27『线路12』 +http://31.148.48.15/Bridge_TV_Dance/index.m3u8$LR•IPV4•27『线路12』 #EXTINF:-1 tvg-id="HITS" tvg-name="HITS" group-title="🍹定制P3P☕️",HITS -https://stream.ads.ottera.tv/playlist.m3u8?network_id=1058$LR•IPV4•27『线路13』 +http://cm.hostlagarto.com:8081/hits360tv/hits360HD.myStream/playlist.m3u8$LR•IPV4•27『线路13』 #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•27『线路14』 +http://88.212.15.19/live/mb_hits/index.m3u8$LR•IPV4•27『线路14』 #EXTINF:-1 tvg-id="HITS" tvg-name="HITS" group-title="🍹定制P3P☕️",HITS -https://d2tuyivcrvbj81.cloudfront.net/XITE_Christian_Hits.m3u8$LR•IPV4•27『线路15』 +https://test.946985.filegear-sg.me/proxy/a23981548880f405$LR•IPV4•27『线路15』 #EXTINF:-1 tvg-id="HITS" tvg-name="HITS" group-title="🍹定制P3P☕️",HITS -http://31.148.48.15/Bridge_TV_Dance/index.m3u8$LR•IPV4•27『线路16』 +https://stream.ottlive.co.in/punjabihits/index.m3u8$LR•IPV4•27『线路16』 #EXTINF:-1 tvg-id="HITS" tvg-name="HITS" group-title="🍹定制P3P☕️",HITS -http://cm.hostlagarto.com:8081/hits360tv/hits360HD.myStream/playlist.m3u8$LR•IPV4•27『线路17』 +https://lotus.stingray.com/manifest/ose-214ads-montreal/samsungtvplus/master.m3u8$LR•IPV4•27『线路17』 #EXTINF:-1 tvg-id="HITS" tvg-name="HITS" group-title="🍹定制P3P☕️",HITS -http://88.212.15.19/live/mb_hits/index.m3u8$LR•IPV4•27『线路18』 +https://d39g1vxj2ef6in.cloudfront.net/v1/master/3fec3e5cac39a52b2132f9c66c83dae043dc17d4/prod-rakuten-stitched/master.m3u8?ads.xumo_channelId=88883053$LR•IPV4•27『线路18』 #EXTINF:-1 tvg-id="HITS" tvg-name="HITS" group-title="🍹定制P3P☕️",HITS -https://test.946985.filegear-sg.me/proxy/a23981548880f405$LR•IPV4•27『线路19』 +https://lotus.stingray.com/manifest/ose-155ads-montreal/samsungtvplus/master.m3u8$LR•IPV4•27『线路19』 #EXTINF:-1 tvg-id="HITS" tvg-name="HITS" group-title="🍹定制P3P☕️",HITS -https://stream.ottlive.co.in/punjabihits/index.m3u8$LR•IPV4•27『线路20』 +https://d39g1vxj2ef6in.cloudfront.net/v1/manifest/3fec3e5cac39a52b2132f9c66c83dae043dc17d4/prod-rakuten-stitched/54947915-6504-4548-aaef-eabd451f8607/1.m3u8$LR•IPV4•27『线路20』 #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•27『线路21』 +https://vglivessai.akamaized.net/sg/v1/master/611d79b11b77e2f571934fd80ca1413453772ac7/e11b0319-52e8-4190-ab03-3931cc68eac9/index.m3u8$LR•IPV4•27『线路21』 #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•27『线路22』 +https://d726x48n2pd5h.cloudfront.net/XITE_Hits.m3u8$LR•IPV4•27『线路22』 #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•27『线路23』 +https://d726x48n2pd5h.cloudfront.net/v1/master/3722c60a815c199d9c0ef36c5b73da68a62b09d1/cc-skxr1pazhltvp/XITE_Hits.m3u8$LR•IPV4•27『线路23』 #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•27『线路24』 +https://89514e758f814907be6d14bbc0aa66b7.mediatailor.us-west-2.amazonaws.com/v1/master/ba62fe743df0fe93366eba3a257d792884136c7f/LINEAR-800-UK-SONYONEACTIONHITS-LG_UK/playlist.m3u8$LR•IPV4•27『线路24』 #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•27『线路25』 +https://9f8e2ffcd87f4c469be7194e48f84874.mediatailor.us-west-2.amazonaws.com/v1/master/ba62fe743df0fe93366eba3a257d792884136c7f/LINEAR-802-UK-SONYONECOMEDYHITS-LG_UK/playlist.m3u8$LR•IPV4•27『线路25』 #EXTINF:-1 tvg-id="HITS" tvg-name="HITS" group-title="🍹定制P3P☕️",HITS -https://d726x48n2pd5h.cloudfront.net/XITE_Hits.m3u8$LR•IPV4•27『线路26』 +http://37.27.111.214:8080/live/28/hls.m3u8$LR•IPV4•27『线路26』 #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•27『线路27』 +p3p://167.114.175.6:55331/6233e648000735057db6cf734adf440d$LR•IPV4•27『线路27』 #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☕️",中旺电视 @@ -3560,11 +3540,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 -p3p://167.114.175.6:55331/644faccf000c7b6368730354764b17ed$LR•IPV4•4『线路2』 +https://stream8.cinerama.uz/1274/tracks-v1a1/mono.m3u8$LR•IPV4•4『线路2』 #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『线路3』 +https://channels.trace.plus/Traceprod/TRACE_SPORT_STARS_sd/index.m3u8$LR•IPV4•4『线路3』 #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『线路4』 +p3p://167.114.175.6:55331/644faccf000c7b6368730354764b17ed$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☕️",爱尔达娱乐 @@ -3592,9 +3572,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 -p3p://167.114.175.6:55331/6452bcb000039d52746907f4476f5e7b$LR•IPV4•2『线路1』 +https://test.946985.filegear-sg.me/proxy/749755700e4ed9c6$LR•IPV4•2『线路1』 #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『线路2』 +p3p://167.114.175.6:55331/6452bcb000039d52746907f4476f5e7b$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 @@ -3612,17 +3592,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 -p3p://167.114.175.6:55331/64e367a800053465a982145d191f168f$LR•IPV4•4『线路1』 +https://raw.githubusercontent.com/Sibprod/streams/main/ressources/dm/py/hls/bsmart.m3u8$LR•IPV4•4『线路1』 #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『线路2』 +https://amg16109-shgliving-amg16109c1-klowdtv-us-2235.playouts.now.amagi.tv/playlist/amg16109-shglivingnetwork-smarthealthygreenliving-klowdtvus/playlist.m3u8$LR•IPV4•4『线路2』 #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『线路3』 +https://brightstar-sls-pull-secure.akamaized.net/brightstarsls/stream.m3u8$LR•IPV4•4『线路3』 #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『线路4』 +p3p://167.114.175.6:55331/64e367a800053465a982145d191f168f$LR•IPV4•4『线路4』 #EXTINF:-1 tvg-id="CMUSIC" tvg-name="CMUSIC" group-title="🍹定制P3P☕️",CMUSIC -p3p://167.114.175.6:55331/64e368dc000e5b23a986c9d62f9604df$LR•IPV4•2『线路1』 +https://lotus.stingray.com/manifest/cmusic-cme004-montreal/samsungtvplus/master.m3u8$LR•IPV4•2『线路1』 #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『线路2』 +p3p://167.114.175.6:55331/64e368dc000e5b23a986c9d62f9604df$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☕️",台湾戏剧 @@ -3638,19 +3618,19 @@ p3p://167.114.175.6:55331/64bbca22000912200ec3b2631bca27c7$LR•IPV4 #EXTINF:-1 tvg-id="凤凰美洲" tvg-name="凤凰美洲" group-title="🍹定制P3P☕️",凤凰美洲 p3p://167.114.175.6:55331/5fe00fca0004e627722fbe5a480a642f$LR•IPV4 #EXTINF:-1 tvg-id="Red Bull TV" tvg-name="Red Bull TV" group-title="💓英语频道",Red Bull TV -http://rbmn-live.akamaized.net/hls/live/590964/BoRB-AT/master_6660.m3u8$LR•IPV4•7『线路1』 +https://3ea22335.wurl.com/master/f36d25e7e52f1ba8d7e56eb859c636563214f541/UmFrdXRlblRWLWdiX1JlZEJ1bGxUVl9ITFM/playlist.m3u8$LR•IPV4•7『线路1』 #EXTINF:-1 tvg-id="Red Bull TV" tvg-name="Red Bull TV" group-title="💓英语频道",Red Bull TV -https://3ea22335.wurl.com/master/f36d25e7e52f1ba8d7e56eb859c636563214f541/UmFrdXRlblRWLWdiX1JlZEJ1bGxUVl9ITFM/playlist.m3u8$LR•IPV4•7『线路2』 +https://rbmn-live.akamaized.net/hls/live/590964/BoRB-AT/master.m3u8$LR•IPV4•7『线路2』 #EXTINF:-1 tvg-id="Red Bull TV" tvg-name="Red Bull TV" group-title="💓英语频道",Red Bull TV -https://rbmn-live.akamaized.net/hls/live/590964/BoRB-AT/master.m3u8$LR•IPV4•7『线路3』 +https://db34cc6127ac459db55cab5f97cd66b9.mediatailor.us-west-2.amazonaws.com/v1/master/ba62fe743df0fe93366eba3a257d792884136c7f/LINEAR-680-WORBAUENFAST-WHALETVPLUS/680/whaletvplus/hls/master/playlist.m3u8$LR•IPV4•7『线路3』 #EXTINF:-1 tvg-id="Red Bull TV" tvg-name="Red Bull TV" group-title="💓英语频道",Red Bull TV -https://db34cc6127ac459db55cab5f97cd66b9.mediatailor.us-west-2.amazonaws.com/v1/master/ba62fe743df0fe93366eba3a257d792884136c7f/LINEAR-680-WORBAUENFAST-WHALETVPLUS/680/whaletvplus/hls/master/playlist.m3u8$LR•IPV4•7『线路4』 +https://d03ae6b5c6724c24867e97a3dc04934a.mediatailor.us-west-2.amazonaws.com/v1/master/ba62fe743df0fe93366eba3a257d792884136c7f/LINEAR-1026-WORBBRPTFAST-WHALETVPLUS/1026/hls/master/playlist.m3u8$LR•IPV4•7『线路4』 #EXTINF:-1 tvg-id="Red Bull TV" tvg-name="Red Bull TV" group-title="💓英语频道",Red Bull TV -https://d03ae6b5c6724c24867e97a3dc04934a.mediatailor.us-west-2.amazonaws.com/v1/master/ba62fe743df0fe93366eba3a257d792884136c7f/LINEAR-1026-WORBBRPTFAST-WHALETVPLUS/1026/hls/master/playlist.m3u8$LR•IPV4•7『线路5』 +https://46cfeb23c7f74853bba7a256655a3119.mediatailor.us-west-2.amazonaws.com/v1/master/ba62fe743df0fe93366eba3a257d792884136c7f/LINEAR-582-WORBDACHDEFAST-WHALETVPLUS/582/whaletvplus/hls/master/playlist.m3u8$LR•IPV4•7『线路5』 #EXTINF:-1 tvg-id="Red Bull TV" tvg-name="Red Bull TV" group-title="💓英语频道",Red Bull TV -https://46cfeb23c7f74853bba7a256655a3119.mediatailor.us-west-2.amazonaws.com/v1/master/ba62fe743df0fe93366eba3a257d792884136c7f/LINEAR-582-WORBDACHDEFAST-WHALETVPLUS/582/whaletvplus/hls/master/playlist.m3u8$LR•IPV4•7『线路6』 +https://886bd3fbc782459f8de7555d32d7e9ce.mediatailor.us-west-2.amazonaws.com/v1/master/ba62fe743df0fe93366eba3a257d792884136c7f/LINEAR-957-WORBLATAMESFAST-WHALETVPLUS/957/whaletvplus/hls/master/playlist.m3u8$LR•IPV4•7『线路6』 #EXTINF:-1 tvg-id="Red Bull TV" tvg-name="Red Bull TV" group-title="💓英语频道",Red Bull TV -https://886bd3fbc782459f8de7555d32d7e9ce.mediatailor.us-west-2.amazonaws.com/v1/master/ba62fe743df0fe93366eba3a257d792884136c7f/LINEAR-957-WORBLATAMESFAST-WHALETVPLUS/957/whaletvplus/hls/master/playlist.m3u8$LR•IPV4•7『线路7』 +http://rbmn-live.akamaized.net/hls/live/590964/BoRB-AT/master_6660.m3u8$LR•IPV4•7『线路7』 #EXTINF:-1 tvg-id="FRANCE24 English" tvg-name="FRANCE24 English" group-title="💓英语频道",FRANCE24 English http://aktv.top/AKTV/live/aktv3/france24/AKTV.m3u8$LR•IPV4 #EXTINF:-1 tvg-id="BAND NEWS" tvg-name="BAND NEWS" group-title="💓英语频道",BAND NEWS @@ -3684,199 +3664,195 @@ http://101.43.145.141:12002/itv/3000000010000015686.m3u8?cdn=FifastbLive$LR•IP #EXTINF:-1 tvg-id="CCTV兵器" tvg-name="CCTV兵器" group-title="🌐央视频道",CCTV兵器 http://38.75.136.137:98/gslb/dsdqpub/gfjs.m3u8?auth=testpub$LR•IPV4 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -https://live-play-hls.cctvnews.cctv.com/CCTVChannel/channel_cctv4_mbd.m3u8?auth_key=1784329200-1-b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c-2245971645866ed95972e22af68cc8d1&yid=b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c$LR•IPV4•90『线路1』 +http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226895/1.m3u8?$LR•IPV6•89『线路1』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://183.196.25.171:808/hls/77/index.m3u8$LR•IPV4•90『线路2』 +http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226893/1.m3u8?$LR•IPV6•89『线路2』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -https://jsv-live-play.sfccn.com/live/jsv_3920_fhd.m3u8$LR•IPV4•90『线路3』 +http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226471/1.m3u8?$LR•IPV6•89『线路3』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://183.196.25.171:808/hls/11/index.m3u8$LR•IPV4•90『线路4』 +http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226335/1.m3u8?$LR•IPV6•89『线路4』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://183.196.25.171:808/hls/93/index.m3u8$LR•IPV4•90『线路5』 +http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226469/1.m3u8?$LR•IPV6•89『线路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=1784271600-1-b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c-6aec44040ec72def77e22587fc404005&yid=b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c$LR•IPV4•90『线路6』 +http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226468/1.m3u8?$LR•IPV6•89『线路6』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226895/1.m3u8?$LR•IPV6•90『线路7』 +http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226946/1.m3u8?$LR•IPV6•89『线路7』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226893/1.m3u8?$LR•IPV6•90『线路8』 +http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226485/1.m3u8?$LR•IPV6•89『线路8』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226471/1.m3u8?$LR•IPV6•90『线路9』 +http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226944/1.m3u8?$LR•IPV6•89『线路9』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226335/1.m3u8?$LR•IPV6•90『线路10』 +http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226937/1.m3u8?$LR•IPV6•89『线路10』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226469/1.m3u8?$LR•IPV6•90『线路11』 +http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226334/1.m3u8?$LR•IPV6•89『线路11』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226468/1.m3u8?$LR•IPV6•90『线路12』 +http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226942/1.m3u8?$LR•IPV6•89『线路12』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226946/1.m3u8?$LR•IPV6•90『线路13』 +http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226316/1.m3u8?$LR•IPV6•89『线路13』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226485/1.m3u8?$LR•IPV6•90『线路14』 +http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226947/1.m3u8?$LR•IPV6•89『线路14』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226944/1.m3u8?$LR•IPV6•90『线路15』 +http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226333/1.m3u8?$LR•IPV6•89『线路15』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226937/1.m3u8?$LR•IPV6•90『线路16』 +http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221227002/1.m3u8?$LR•IPV6•89『线路16』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226334/1.m3u8?$LR•IPV6•90『线路17』 +http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226318/1.m3u8?$LR•IPV6•89『线路17』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226942/1.m3u8?$LR•IPV6•90『线路18』 +http://222.223.41.27:8888/hls/2/index.m3u8$LR•IPV4•89『线路18』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226316/1.m3u8?$LR•IPV6•90『线路19』 +http://116.128.243.121:85/tsfile/live/0002_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•89『线路19』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226947/1.m3u8?$LR•IPV6•90『线路20』 +http://63.141.230.178:82/gslb/zbdq5.m3u8?id=cctv3hd$LR•IPV4•89『线路20』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226333/1.m3u8?$LR•IPV6•90『线路21』 +http://207.56.13.146:81/cdnlive/cctv3.m3u8$LR•IPV4•89『线路21』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221227002/1.m3u8?$LR•IPV6•90『线路22』 +http://63.141.230.178:82/gslb/zbdq5.m3u8?id=cctv4hd$LR•IPV4•89『线路22』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226318/1.m3u8?$LR•IPV6•90『线路23』 +http://74.91.26.218:82/live/cctv4hd.m3u8$LR•IPV4•89『线路23』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://222.223.41.27:8888/hls/2/index.m3u8$LR•IPV4•90『线路24』 +http://207.56.13.146:81/cdnlive/cctv4.m3u8$LR•IPV4•89『线路24』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://116.128.243.121:85/tsfile/live/0002_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•90『线路25』 +http://38.75.136.137:98/gslb/dsdqbv/cctv5p.m3u8?auth=test20251009$LR•IPV4•89『线路25』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://63.141.230.178:82/gslb/zbdq5.m3u8?id=cctv3hd$LR•IPV4•90『线路26』 +http://204.12.221.218:8181/3m1080p/cctv6.m3u8$LR•IPV4•89『线路26』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://207.56.13.146:81/cdnlive/cctv3.m3u8$LR•IPV4•90『线路27』 +http://207.56.13.146:81/cdnlive/cctv6.m3u8$LR•IPV4•89『线路27』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://63.141.230.178:82/gslb/zbdq5.m3u8?id=cctv4hd$LR•IPV4•90『线路28』 +http://74.91.26.218:82/live/cctv7hd.m3u8$LR•IPV4•89『线路28』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://74.91.26.218:82/live/cctv4hd.m3u8$LR•IPV4•90『线路29』 +http://38.75.136.137:98/gslb/dsdqbv/cctv7hd.m3u8?auth=test20251009$LR•IPV4•89『线路29』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://207.56.13.146:81/cdnlive/cctv4.m3u8$LR•IPV4•90『线路30』 +http://192.151.150.154/live/cctv8k.m3u8$LR•IPV4•89『线路30』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://38.75.136.137:98/gslb/dsdqbv/cctv5p.m3u8?auth=test20251009$LR•IPV4•90『线路31』 +http://207.56.13.146:81/cdnlive/cctv8.m3u8$LR•IPV4•89『线路31』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://204.12.221.218:8181/3m1080p/cctv6.m3u8$LR•IPV4•90『线路32』 +http://173.208.212.130:8181/720p/cctv8.m3u8$LR•IPV4•89『线路32』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://207.56.13.146:81/cdnlive/cctv6.m3u8$LR•IPV4•90『线路33』 +http://38.75.136.137:98/gslb/dsdqbv/cctv8hd.m3u8?auth=test20251009$LR•IPV4•89『线路33』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://74.91.26.218:82/live/cctv7hd.m3u8$LR•IPV4•90『线路34』 +http://204.12.221.218:8181/3m1080p/cctv8.m3u8$LR•IPV4•89『线路34』 #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•90『线路35』 +http://69.30.245.50/live/cctv8.m3u8$LR•IPV4•89『线路35』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://192.151.150.154/live/cctv8k.m3u8$LR•IPV4•90『线路36』 +http://222.223.41.27:8888/hls/9/index.m3u8$LR•IPV4•89『线路36』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://207.56.13.146:81/cdnlive/cctv8.m3u8$LR•IPV4•90『线路37』 +https://hwapi.yntv.net/ew265l/z1z6s5.m3u8$LR•IPV4•89『线路37』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://173.208.212.130:8181/720p/cctv8.m3u8$LR•IPV4•90『线路38』 +http://74.91.26.218:82/live/cctv10hd.m3u8$LR•IPV4•89『线路38』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://38.75.136.137:98/gslb/dsdqbv/cctv8hd.m3u8?auth=test20251009$LR•IPV4•90『线路39』 +http://74.91.26.218:82/live/cctv11hd.m3u8$LR•IPV4•89『线路39』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://204.12.221.218:8181/3m1080p/cctv8.m3u8$LR•IPV4•90『线路40』 +http://38.75.136.137:98/gslb/dsdqpub/cctv12hd.m3u8?auth=testpub$LR•IPV4•89『线路40』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://69.30.245.50/live/cctv8.m3u8$LR•IPV4•90『线路41』 +https://event.pull.hebtv.com/jishi/cp1.m3u8$LR•IPV4•89『线路41』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://222.223.41.27:8888/hls/9/index.m3u8$LR•IPV4•90『线路42』 +http://pull-hls-f1.douyinliving.com/media/stream-696107587393815378/playlist.m3u8?keeptime=00093a80&wsSecret=bbbd054778ab532edfa97bf7c5395746&wsTime=6a544fee&arch_hrchy=s2&s_anchor=1&major_anchor_level=vip&t_id=037-2026071310394131FD5A22CCB9DDAFA77E-5XIF43$LR•IPV4•89『线路42』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -https://hwapi.yntv.net/ew265l/z1z6s5.m3u8$LR•IPV4•90『线路43』 +http://63.141.230.178:82/gslb/zbdq5.m3u8?id=cctv13hd$LR•IPV4•89『线路43』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://74.91.26.218:82/live/cctv10hd.m3u8$LR•IPV4•90『线路44』 +http://113.25.252.226:9901/tsfile/live/1017_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•89『线路44』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://74.91.26.218:82/live/cctv11hd.m3u8$LR•IPV4•90『线路45』 +https://event.pull.hebtv.com/jishi/cp2.m3u8$LR•IPV4•89『线路45』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://38.75.136.137:98/gslb/dsdqpub/cctv12hd.m3u8?auth=testpub$LR•IPV4•90『线路46』 +http://38.75.136.137:98/gslb/dsdqbv/cctv15hd.m3u8?auth=test20251009$LR•IPV4•89『线路46』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -https://event.pull.hebtv.com/jishi/cp1.m3u8$LR•IPV4•90『线路47』 +http://38.75.136.137:98/gslb/dsdqpub/cctv15hd.m3u8?auth=testpub$LR•IPV4•89『线路47』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://pull-hls-f1.douyinliving.com/media/stream-696107587393815378/playlist.m3u8?keeptime=00093a80&wsSecret=bbbd054778ab532edfa97bf7c5395746&wsTime=6a544fee&arch_hrchy=s2&s_anchor=1&major_anchor_level=vip&t_id=037-2026071310394131FD5A22CCB9DDAFA77E-5XIF43$LR•IPV4•90『线路48』 +http://38.75.136.137:98/gslb/dsdqpub/cctv17hd.m3u8?auth=testpub$LR•IPV4•89『线路48』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://63.141.230.178:82/gslb/zbdq5.m3u8?id=cctv13hd$LR•IPV4•90『线路49』 +https://live-play-hls.cctvnews.cctv.com/CCTVChannel/channel_cctv4_mbd.m3u8?auth_key=1784332800-1-b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c-1f6c18588a391e749b10db985cd21620&yid=b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c$LR•IPV4•89『线路49』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://113.25.252.226:9901/tsfile/live/1017_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•90『线路50』 +https://shcm-stream-cf1.stream.264788.xyz/cms001/ch00000090990000001620/index.m3u8?streamid=8a034b40397504e25b3775c772237996&streamkey=01vY5fRxC8VyKg4oq30vfikHXTCAKySLP29l6OG91kQlzDttHgzNLkUw5kivm3PfNsVHJv5FgdsPBYFYI2IWpt7tfRCuFHqLT2pvX67ubMds8jl2DHtvOh0&token=1775754349-4f33f4f84a4abeba-0-91687dc8c9325092efa1d00f330d2710$LR•IPV4•89『线路50』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -https://event.pull.hebtv.com/jishi/cp2.m3u8$LR•IPV4•90『线路51』 +https://epg.pw/stream/ac8062ec9484078061d3bef507c15a423ac57ae4144e3fcc4b0a198dd420f911.m3u8$LR•IPV4•89『线路51』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://38.75.136.137:98/gslb/dsdqbv/cctv15hd.m3u8?auth=test20251009$LR•IPV4•90『线路52』 +https://live-play-hls.cctvnews.cctv.com/CCTVChannel/channel_cctv4_mbd.m3u8?auth_key=1784336400-1-b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c-49830e80d2c0d40fea8492a5581b9b73&yid=b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c$LR•IPV4•89『线路52』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://38.75.136.137:98/gslb/dsdqpub/cctv15hd.m3u8?auth=testpub$LR•IPV4•90『线路53』 +http://183.196.25.171:808/hls/77/index.m3u8$LR•IPV4•89『线路53』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://38.75.136.137:98/gslb/dsdqpub/cctv17hd.m3u8?auth=testpub$LR•IPV4•90『线路54』 +http://183.196.25.171:808/hls/11/index.m3u8$LR•IPV4•89『线路54』 #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=1784322000-1-b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c-25fe408e6545f49f3d4eb7f92e97c764&yid=b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c$LR•IPV4•90『线路55』 +http://183.196.25.171:808/hls/93/index.m3u8$LR•IPV4•89『线路55』 #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•90『线路56』 +https://live-play-hls.cctvnews.cctv.com/CCTVChannel/channel_cctv4_mbd.m3u8?auth_key=1784271600-1-b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c-6aec44040ec72def77e22587fc404005&yid=b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c$LR•IPV4•89『线路56』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -https://epg.pw/stream/ac8062ec9484078061d3bef507c15a423ac57ae4144e3fcc4b0a198dd420f911.m3u8$LR•IPV4•90『线路57』 +http://69.30.245.50/live/cctv6.m3u8$LR•IPV4•89『线路57』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://69.30.245.50/live/cctv6.m3u8$LR•IPV4•90『线路58』 +http://38.75.136.137:98/gslb/dsdqpub/fyjc.m3u8?auth=testpub$LR•IPV4•89『线路58』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://74.91.26.218:82/live/cctv8hd.m3u8$LR•IPV4•90『线路59』 +http://38.75.136.137:98/gslb/dsdqpub/dyjc.m3u8?auth=testpub$LR•IPV4•89『线路59』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://74.91.26.218:82/live/cctv17hd.m3u8$LR•IPV4•90『线路60』 +http://69.30.245.50/live/cctv1.m3u8$LR•IPV4•89『线路60』 #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•90『线路61』 +http://74.91.26.218:82/live/cctv1hd.m3u8$LR•IPV4•89『线路61』 #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•90『线路62』 +https://global.cgtn.cicc.media.caton.cloud/master/cgtn-america.m3u8$LR•IPV4•89『线路62』 #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•90『线路63』 +https://dash2.antik.sk/live/test_cctv_tizen/playlist.m3u8$LR•IPV4•89『线路63』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://38.75.136.137:98/gslb/dsdqpub/fyjc.m3u8?auth=testpub$LR•IPV4•90『线路64』 +http://go.bkpcp.top/mg/cctv13$LR•IPV4•89『线路64』 #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•90『线路65』 +https://cdn3.163189.xyz/163189/cctv13$LR•IPV4•89『线路65』 #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•90『线路66』 +http://74.91.26.218:82/live/cctv8hd.m3u8$LR•IPV4•89『线路66』 #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•90『线路67』 +http://74.91.26.218:82/live/cctv3hd.m3u8$LR•IPV4•89『线路67』 #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•90『线路68』 +http://38.75.136.137:98/gslb/dsdqpub/ysjp.m3u8?auth=testpub$LR•IPV4•89『线路68』 #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•90『线路69』 +https://solo.disfrutaenlared.com:1936/redcctv/redcctv/playlist.m3u8$LR•IPV4•89『线路69』 #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•90『线路70』 +http://74.91.26.218:82/live/cctv14hd.m3u8$LR•IPV4•89『线路70』 #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•90『线路71』 +https://xykt-fix.github.io/play/a02e/index.m3u8$LR•IPV4•89『线路71』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://fn.tmde.top:35455/nptv/cctv4k.m3u8$LR•IPV4•90『线路72』 +http://38.75.136.137:98/gslb/dsdqpub/fyyy.m3u8?auth=testpub$LR•IPV4•89『线路72』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://fn.tmde.top:35455/nptv/cctv8k.m3u8$LR•IPV4•90『线路73』 +http://74.91.26.218:82/live/cctv12hd.m3u8$LR•IPV4•89『线路73』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://xc.mfykeke.top:35455/nptv/cctv4k.m3u8$LR•IPV4•90『线路74』 +http://38.75.136.137:98/gslb/dsdqpub/wsjk.m3u8?auth=testpub$LR•IPV4•89『线路74』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://xc.mfykeke.top:35455/nptv/cctv8k.m3u8$LR•IPV4•90『线路75』 +http://38.75.136.137:98/gslb/dsdqpub/nxss.m3u8?auth=testpub$LR•IPV4•89『线路75』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://69.30.245.50/live/cctv1.m3u8$LR•IPV4•90『线路76』 +http://38.75.136.137:98/gslb/dsdqpub/hjjc.m3u8?auth=testpub$LR•IPV4•89『线路76』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://74.91.26.218:82/live/cctv1hd.m3u8$LR•IPV4•90『线路77』 +http://74.91.26.218:82/live/cctv16hd.m3u8$LR•IPV4•89『线路77』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -https://global.cgtn.cicc.media.caton.cloud/master/cgtn-america.m3u8$LR•IPV4•90『线路78』 +http://38.75.136.137:98/gslb/dsdqpub/ystq.m3u8?auth=testpub$LR•IPV4•89『线路78』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -https://dash2.antik.sk/live/test_cctv_tizen/playlist.m3u8$LR•IPV4•90『线路79』 +http://38.75.136.137:98/gslb/dsdqpub/gefwq.m3u8?auth=testpub$LR•IPV4•89『线路79』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://go.bkpcp.top/mg/cctv13$LR•IPV4•90『线路80』 +http://38.75.136.137:98/gslb/dsdqpub/fyzq.m3u8?auth=testpub$LR•IPV4•89『线路80』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -https://cdn3.163189.xyz/163189/cctv13$LR•IPV4•90『线路81』 +http://74.91.26.218:82/live/cctv2hd.m3u8$LR•IPV4•89『线路81』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://74.91.26.218:82/live/cctv3hd.m3u8$LR•IPV4•90『线路82』 +https://xykt-fix.github.io/Y77.m3u8$LR•IPV4•89『线路82』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -https://solo.disfrutaenlared.com:1936/redcctv/redcctv/playlist.m3u8$LR•IPV4•90『线路83』 +http://38.75.136.137:98/gslb/dsdqpub/sjdl.m3u8?auth=testpub$LR•IPV4•89『线路83』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://74.91.26.218:82/live/cctv14hd.m3u8$LR•IPV4•90『线路84』 +http://74.91.26.218:82/live/cctv17hd.m3u8$LR•IPV4•89『线路84』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -https://xykt-fix.github.io/play/a02e/index.m3u8$LR•IPV4•90『线路85』 +http://38.75.136.137:98/gslb/dsdqpub/dszn.m3u8?auth=testpub$LR•IPV4•89『线路85』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://74.91.26.218:82/live/cctv12hd.m3u8$LR•IPV4•90『线路86』 +http://fn.tmde.top:35455/nptv/cctv4k.m3u8$LR•IPV4•89『线路86』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://74.91.26.218:82/live/cctv16hd.m3u8$LR•IPV4•90『线路87』 +http://fn.tmde.top:35455/nptv/cctv8k.m3u8$LR•IPV4•89『线路87』 #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•90『线路88』 +http://xc.mfykeke.top:35455/nptv/cctv4k.m3u8$LR•IPV4•89『线路88』 #EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -http://74.91.26.218:82/live/cctv2hd.m3u8$LR•IPV4•90『线路89』 -#EXTINF:-1 tvg-id="CCTV" tvg-name="CCTV" group-title="🌐央视频道",CCTV -https://xykt-fix.github.io/Y77.m3u8$LR•IPV4•90『线路90』 +http://xc.mfykeke.top:35455/nptv/cctv8k.m3u8$LR•IPV4•89『线路89』 #EXTINF:-1 tvg-id="周星星" tvg-name="周星星" group-title="明星",周星星 http://live.metshop.top/huya/11336587?cdn=alicdn$LR•IPV4 -#EXTINF:-1 tvg-id="周星驰" tvg-name="周星驰" group-title="明星",周星驰 -http://cdn.jdshipin.com:8880/huya.php?id=11342412$LR•IPV4 #EXTINF:-1 tvg-id="梁家辉" tvg-name="梁家辉" group-title="明星",梁家辉 http://live.metshop.top/huya/11342429?cdn=alicdn$LR•IPV4 #EXTINF:-1 tvg-id="刘德华" tvg-name="刘德华" group-title="明星",刘德华 -http://live.metshop.top/huya/11342424?cdn=alicdn$LR•IPV4•2『线路1』 +http://epg.112114.xyz/douyu/2516864$LR•IPV4•2『线路1』 #EXTINF:-1 tvg-id="刘德华" tvg-name="刘德华" group-title="明星",刘德华 -http://epg.112114.xyz/douyu/2516864$LR•IPV4•2『线路2』 +http://live.metshop.top/huya/11342424?cdn=alicdn$LR•IPV4•2『线路2』 #EXTINF:-1 tvg-id="林正英" tvg-name="林正英" group-title="明星",林正英 -http://zzy789.xyz/douyu1.php?id=7356023$LR•IPV4•2『线路1』 +http://epg.112114.xyz/douyu/218859$LR•IPV4•2『线路1』 #EXTINF:-1 tvg-id="林正英" tvg-name="林正英" group-title="明星",林正英 -http://epg.112114.xyz/douyu/218859$LR•IPV4•2『线路2』 +http://zzy789.xyz/douyu1.php?id=7356023$LR•IPV4•2『线路2』 #EXTINF:-1 tvg-id="谍战片" tvg-name="谍战片" group-title="主题片",谍战片 http://live.metshop.top/huya/21059587?cdn=alicdn$LR•IPV4 #EXTINF:-1 tvg-id="战争片" tvg-name="战争片" group-title="主题片",战争片 @@ -4208,37 +4184,37 @@ http://play-sh13.quklive.com/live/1699001836208185.m3u8?auth_key=2027429324-c77b #EXTINF:-1 tvg-id="浙江新闻" tvg-name="浙江新闻" group-title="浙江",浙江新闻 https://ali-m-l.cztv.com/channels/lantian/channel007/1080p.m3u8$LR•IPV4•34『线路1』 #EXTINF:-1 tvg-id="浙江新闻" tvg-name="浙江新闻" group-title="浙江",浙江新闻 -https://ali-m-l.cztv.com/channels/lantian/channel007/1080p.m3u8?$LR•IPV4•34『线路2』 +http://ali-m-l.cztv.com/channels/lantian/channel007/720p.m3u8$LR•IPV4•34『线路2』 #EXTINF:-1 tvg-id="浙江新闻" tvg-name="浙江新闻" group-title="浙江",浙江新闻 -http://ali-m-l.cztv.com/channels/lantian/channel007/720p.m3u8$LR•IPV4•34『线路3』 +https://stream1.freetv.fun/zhe-jiang-xin-wen-11.m3u8$LR•IPV4•34『线路3』 #EXTINF:-1 tvg-id="浙江新闻" tvg-name="浙江新闻" group-title="浙江",浙江新闻 -https://stream1.freetv.fun/zhe-jiang-xin-wen-11.m3u8$LR•IPV4•34『线路4』 +http://ali-xwl.cztv.com/live/channel07720Plxw.m3u8$LR•IPV4•34『线路4』 #EXTINF:-1 tvg-id="浙江新闻" tvg-name="浙江新闻" group-title="浙江",浙江新闻 -http://ali-xwl.cztv.com/live/channel07720Plxw.m3u8$LR•IPV4•34『线路5』 +https://stream1.freetv.fun/zhe-jiang-xin-wen-6.m3u8$LR•IPV4•34『线路5』 #EXTINF:-1 tvg-id="浙江新闻" tvg-name="浙江新闻" group-title="浙江",浙江新闻 -https://stream1.freetv.fun/zhe-jiang-xin-wen-6.m3u8$LR•IPV4•34『线路6』 +https://stream1.freetv.fun/zhe-jiang-xin-wen-4.m3u8$LR•IPV4•34『线路6』 #EXTINF:-1 tvg-id="浙江新闻" tvg-name="浙江新闻" group-title="浙江",浙江新闻 -https://stream1.freetv.fun/zhe-jiang-xin-wen-4.m3u8$LR•IPV4•34『线路7』 +https://stream1.freetv.fun/zhe-jiang-xin-wen-3.m3u8$LR•IPV4•34『线路7』 #EXTINF:-1 tvg-id="浙江新闻" tvg-name="浙江新闻" group-title="浙江",浙江新闻 -https://stream1.freetv.fun/zhe-jiang-xin-wen-3.m3u8$LR•IPV4•34『线路8』 +https://stream1.freetv.fun/zhe-jiang-xin-wen-1.m3u8$LR•IPV4•34『线路8』 #EXTINF:-1 tvg-id="浙江新闻" tvg-name="浙江新闻" group-title="浙江",浙江新闻 -https://stream1.freetv.fun/zhe-jiang-xin-wen-1.m3u8$LR•IPV4•34『线路9』 +https://t.freetv.fun/live/zhe-jiang-xin-wen-2.m3u8$LR•IPV4•34『线路9』 #EXTINF:-1 tvg-id="浙江新闻" tvg-name="浙江新闻" group-title="浙江",浙江新闻 -https://t.freetv.fun/live/zhe-jiang-xin-wen-2.m3u8$LR•IPV4•34『线路10』 +https://stream1.freetv.fun/zhe-jiang-xin-wen-2.m3u8$LR•IPV4•34『线路10』 #EXTINF:-1 tvg-id="浙江新闻" tvg-name="浙江新闻" group-title="浙江",浙江新闻 -https://stream1.freetv.fun/zhe-jiang-xin-wen-2.m3u8$LR•IPV4•34『线路11』 +https://t.freetv.fun/live/zhe-jiang-xin-wen-3.m3u8$LR•IPV4•34『线路11』 #EXTINF:-1 tvg-id="浙江新闻" tvg-name="浙江新闻" group-title="浙江",浙江新闻 -https://t.freetv.fun/live/zhe-jiang-xin-wen-3.m3u8$LR•IPV4•34『线路12』 +http://ali-xwl.cztv.com/live/channel071080Plxw.m3u8$LR•IPV4•34『线路12』 #EXTINF:-1 tvg-id="浙江新闻" tvg-name="浙江新闻" group-title="浙江",浙江新闻 -http://ali-xwl.cztv.com/live/channel071080Plxw.m3u8$LR•IPV4•34『线路13』 +https://ali-m-l.cztv.com/channels/lantian/channel07/720p.m3u8$LR•IPV4•34『线路13』 #EXTINF:-1 tvg-id="浙江新闻" tvg-name="浙江新闻" group-title="浙江",浙江新闻 -https://ali-m-l.cztv.com/channels/lantian/channel07/720p.m3u8$LR•IPV4•34『线路14』 +https://stream1.freetv.fun/7fa07158e038a9bae3747a0cb9f8e8ff1aaba32669d28d99a498716f16569c1d.m3u8$LR•IPV4•34『线路14』 #EXTINF:-1 tvg-id="浙江新闻" tvg-name="浙江新闻" group-title="浙江",浙江新闻 -https://stream1.freetv.fun/7fa07158e038a9bae3747a0cb9f8e8ff1aaba32669d28d99a498716f16569c1d.m3u8$LR•IPV4•34『线路15』 +https://stream1.freetv.fun/zhe-jiang-xin-wen-9.m3u8$LR•IPV4•34『线路15』 #EXTINF:-1 tvg-id="浙江新闻" tvg-name="浙江新闻" group-title="浙江",浙江新闻 -https://stream1.freetv.fun/zhe-jiang-xin-wen-9.m3u8$LR•IPV4•34『线路16』 +https://stream1.freetv.fun/zhe-jiang-xin-wen-7.m3u8$LR•IPV4•34『线路16』 #EXTINF:-1 tvg-id="浙江新闻" tvg-name="浙江新闻" group-title="浙江",浙江新闻 -https://stream1.freetv.fun/zhe-jiang-xin-wen-7.m3u8$LR•IPV4•34『线路17』 +https://ali-m-l.cztv.com/channels/lantian/channel007/1080p.m3u8?$LR•IPV4•34『线路17』 #EXTINF:-1 tvg-id="浙江新闻" tvg-name="浙江新闻" group-title="浙江",浙江新闻 http://ali-m-l.cztv.com/channels/lantian/channel007/1080p.m3u8?zzhed$LR•IPV4•34『线路18』 #EXTINF:-1 tvg-id="浙江新闻" tvg-name="浙江新闻" group-title="浙江",浙江新闻 @@ -4390,39 +4366,39 @@ http://ali-xwl.cztv.com/live/channel04720Plxw.m3u8$LR•IPV4•8『线路7』 #EXTINF:-1 tvg-id="浙江教科" tvg-name="浙江教科" group-title="浙江",浙江教科 http://ali-m-l.cztv.com/channels/lantian/channel04/1080p.m3u8$LR•IPV4•8『线路8』 #EXTINF:-1 tvg-id="浙江钱江" tvg-name="浙江钱江" group-title="浙江",浙江钱江 -https://ali-m-l.cztv.com/channels/lantian/channel002/1080p.m3u8$LR•IPV4•19『线路1』 +http://l.cztvcloud.com/channels/lantian/SXyuyao2/720p.m3u8$LR•IPV4•19『线路1』 #EXTINF:-1 tvg-id="浙江钱江" tvg-name="浙江钱江" group-title="浙江",浙江钱江 -http://l.cztvcloud.com/channels/lantian/SXyuyao2/720p.m3u8$LR•IPV4•19『线路2』 +http://ali-m-l.cztv.com/channels/lantian/channel02/1080p.m3u8$LR•IPV4•19『线路2』 #EXTINF:-1 tvg-id="浙江钱江" tvg-name="浙江钱江" group-title="浙江",浙江钱江 -http://ali-m-l.cztv.com/channels/lantian/channel02/1080p.m3u8$LR•IPV4•19『线路3』 +https://stream1.freetv.fun/zhe-jiang-qian-jiang-du-shi-2.m3u8$LR•IPV4•19『线路3』 #EXTINF:-1 tvg-id="浙江钱江" tvg-name="浙江钱江" group-title="浙江",浙江钱江 -https://stream1.freetv.fun/zhe-jiang-qian-jiang-du-shi-2.m3u8$LR•IPV4•19『线路4』 +https://stream1.freetv.fun/zhe-jiang-qian-jiang-du-shi-4.ctv$LR•IPV4•19『线路4』 #EXTINF:-1 tvg-id="浙江钱江" tvg-name="浙江钱江" group-title="浙江",浙江钱江 -https://stream1.freetv.fun/zhe-jiang-qian-jiang-du-shi-4.ctv$LR•IPV4•19『线路5』 +https://ali-m-l.cztv.com/channels/lantian/channel002/1080p.m3u8\r\n$LR•IPV4•19『线路5』 #EXTINF:-1 tvg-id="浙江钱江" tvg-name="浙江钱江" group-title="浙江",浙江钱江 -https://ali-m-l.cztv.com/channels/lantian/channel002/1080p.m3u8\r\n$LR•IPV4•19『线路6』 +http://ali-xwl.cztv.com/live/channel021080Plxw.m3u8$LR•IPV4•19『线路6』 #EXTINF:-1 tvg-id="浙江钱江" tvg-name="浙江钱江" group-title="浙江",浙江钱江 -http://ali-xwl.cztv.com/live/channel021080Plxw.m3u8$LR•IPV4•19『线路7』 +https://stream1.freetv.fun/zhe-jiang-qian-jiang-du-shi-1.m3u8$LR•IPV4•19『线路7』 #EXTINF:-1 tvg-id="浙江钱江" tvg-name="浙江钱江" group-title="浙江",浙江钱江 -https://stream1.freetv.fun/zhe-jiang-qian-jiang-du-shi-1.m3u8$LR•IPV4•19『线路8』 +https://stream1.freetv.fun/bf079ada709563bdd095159c02dfb5afb53c24e643b73f987100b9d25e9c8f41.m3u8$LR•IPV4•19『线路8』 #EXTINF:-1 tvg-id="浙江钱江" tvg-name="浙江钱江" group-title="浙江",浙江钱江 -https://stream1.freetv.fun/bf079ada709563bdd095159c02dfb5afb53c24e643b73f987100b9d25e9c8f41.m3u8$LR•IPV4•19『线路9』 +http://api3.52tb.xyz/info?id=436&token=20230226bgyszp$LR•IPV4•19『线路9』 #EXTINF:-1 tvg-id="浙江钱江" tvg-name="浙江钱江" group-title="浙江",浙江钱江 -http://api3.52tb.xyz/info?id=436&token=20230226bgyszp$LR•IPV4•19『线路10』 +https://stream1.freetv.fun/zhe-jiang-qian-jiang-du-shi-5.ctv$LR•IPV4•19『线路10』 #EXTINF:-1 tvg-id="浙江钱江" tvg-name="浙江钱江" group-title="浙江",浙江钱江 -https://stream1.freetv.fun/zhe-jiang-qian-jiang-du-shi-5.ctv$LR•IPV4•19『线路11』 +https://stream1.freetv.fun/zhe-jiang-qian-jiang-du-shi-3.ctv$LR•IPV4•19『线路11』 #EXTINF:-1 tvg-id="浙江钱江" tvg-name="浙江钱江" group-title="浙江",浙江钱江 -https://stream1.freetv.fun/zhe-jiang-qian-jiang-du-shi-3.ctv$LR•IPV4•19『线路12』 +https://t.freetv.fun/live/zhe-jiang-qian-jiang-du-shi-3.m3u8$LR•IPV4•19『线路12』 #EXTINF:-1 tvg-id="浙江钱江" tvg-name="浙江钱江" group-title="浙江",浙江钱江 -https://t.freetv.fun/live/zhe-jiang-qian-jiang-du-shi-3.m3u8$LR•IPV4•19『线路13』 +http://120.55.49.231:3095/rtp/233.50.201.132:5140$LR•IPV4•19『线路13』 #EXTINF:-1 tvg-id="浙江钱江" tvg-name="浙江钱江" group-title="浙江",浙江钱江 -http://120.55.49.231:3095/rtp/233.50.201.132:5140$LR•IPV4•19『线路14』 +https://t.freetv.fun/live/zhe-jiang-qian-jiang-du-shi-1.m3u8$LR•IPV4•19『线路14』 #EXTINF:-1 tvg-id="浙江钱江" tvg-name="浙江钱江" group-title="浙江",浙江钱江 -https://t.freetv.fun/live/zhe-jiang-qian-jiang-du-shi-1.m3u8$LR•IPV4•19『线路15』 +https://t.freetv.fun/live/zhe-jiang-qian-jiang-du-shi-2.m3u8$LR•IPV4•19『线路15』 #EXTINF:-1 tvg-id="浙江钱江" tvg-name="浙江钱江" group-title="浙江",浙江钱江 -https://t.freetv.fun/live/zhe-jiang-qian-jiang-du-shi-2.m3u8$LR•IPV4•19『线路16』 +http://ali-xwl.cztv.com/live/channel02720Plxw.m3u8$LR•IPV4•19『线路16』 #EXTINF:-1 tvg-id="浙江钱江" tvg-name="浙江钱江" group-title="浙江",浙江钱江 -http://ali-xwl.cztv.com/live/channel02720Plxw.m3u8$LR•IPV4•19『线路17』 +http://ali-m-l.cztv.com/channels/lantian/channel002/1080p.m3u8$LR•IPV4•19『线路17』 #EXTINF:-1 tvg-id="浙江钱江" tvg-name="浙江钱江" group-title="浙江",浙江钱江 https://t.freetv.fun/live/zhe-jiang-qian-jiang-du-shi.m3u8$LR•IPV4•19『线路18』 #EXTINF:-1 tvg-id="浙江钱江" tvg-name="浙江钱江" group-title="浙江",浙江钱江 @@ -4861,3 +4837,9 @@ https://stream1.freetv.fun/shan-tou-jing-ji-4.ctv$LR•IPV4•11『线路10』 https://stream1.freetv.fun/shan-tou-jing-ji-6.ctv$LR•IPV4•11『线路11』 #EXTINF:-1 tvg-id="广东少儿" tvg-name="广东少儿" group-title="广东",广东少儿 http://gmxw.7766.org:808/hls/175/index.m3u8$LR•IPV4 +#EXTINF:-1 tvg-id="上海新闻" tvg-name="上海新闻" group-title="上海",上海新闻 +http://t.061899.xyz/tl/tl.php?id=shxwzh$LR•IPV4 +#EXTINF:-1 tvg-id="七彩戏剧" tvg-name="七彩戏剧" group-title="上海",七彩戏剧 +http://t.061899.xyz/tl/tl.php?id=qcxj$LR•IPV4 +#EXTINF:-1 tvg-id="法治天地" tvg-name="法治天地" group-title="上海",法治天地 +http://t.061899.xyz/tl/tl.php?id=fztd$LR•IPV4 diff --git a/tvbox/lib/iptv_test.txt b/tvbox/lib/iptv_test.txt index 594c2fbb..80c64a1e 100755 --- a/tvbox/lib/iptv_test.txt +++ b/tvbox/lib/iptv_test.txt @@ -1,7 +1,7 @@ 央视频道,#genre# -CCTV-4K,https://live-play-hls.cctvnews.cctv.com/CCTVChannel/channel_cctv4k_mbd.m3u8?auth_key=1784329200-1-b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c-81ad4aefc95ce528b3da1112f0bc9ff2&yid=b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c$LR•IPV4•3『线路1』 -CCTV-4K,https://live-play-hls.cctvnews.cctv.com/CCTVChannel/channel_cctv4k_mbd.m3u8?auth_key=1784322000-1-b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c-aa68fb06c12f53b71a4d170807f32df5&yid=b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c$LR•IPV4•3『线路2』 +CCTV-4K,https://live-play-hls.cctvnews.cctv.com/CCTVChannel/channel_cctv4k_mbd.m3u8?auth_key=1784332800-1-b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c-0240f422767495f3b4be3b54c6f0496a&yid=b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c$LR•IPV4•3『线路1』 +CCTV-4K,https://live-play-hls.cctvnews.cctv.com/CCTVChannel/channel_cctv4k_mbd.m3u8?auth_key=1784336400-1-b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c-c68beb1a091dd48540f9056f3e86c7c2&yid=b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c$LR•IPV4•3『线路2』 CCTV-4K,http://198.204.240.250:82/live/cctv4k.m3u8$LR•IPV4•3『线路3』 浙江频道,#genre# @@ -24,7 +24,7 @@ CCTV-4K,http://198.204.240.250:82/live/cctv4k.m3u8$LR•IPV4•3『线路3』 小草,https://i.uik.cc/view.php/0bb3de0276d838610d458fd3379b33a0.mp4$LR•IPV4 4K频道,#genre# -东方卫视4K,http://bp-resource-dfl.bestv.cn/148/3/video.m3u8$LR•IPV4•2『线路1』 +东方卫视4K,https://bp-resource-dfl.bestv.cn/148/3/video.m3u8$LR•IPV4•2『线路1』 东方卫视4K,http://43.251.226.89:8080/play/926.m3u8$LR•IPV4•2『线路2』 湖南卫视4K,http://8.138.7.223/tv/api.php?id=hnws4k$LR•IPV4•3『线路1』 湖南卫视4K,http://43.251.226.89:8080/play/920.m3u8$LR•IPV4•3『线路2』 @@ -50,10 +50,16 @@ CCTV-4K,http://198.204.240.250:82/live/cctv4k.m3u8$LR•IPV4•3『线路3』 深圳卫视4K,https://live.264788.xyz/channel/shenzhenweishi4k?streamid=9828b90c3948bae63cb8de76cdccd646&livekey=01WgOR41rriMmMkzNsd0UoaxJRwetZdxIvtVk$LR•IPV4•8『线路7』 深圳卫视4K,http://101.35.240.114:88/live.php?id=深圳卫视4K$LR•IPV4•8『线路8』 南国都市4K,https://tencentplay.gztv.com/live/nanguodushi.m3u8?txSecret=550af55c0ea34ce492748481415b6dfa&txTime=1903e7b17de$LR•IPV4 +CCTV4K真4K,http://vip1.xinketongxun.fun:8082/tsfile/live/1026_1.m3u8$LR•IPV4 央视高清,#genre# CCTV4K,http://101.43.145.141:12002/gaoma/cctv4k.m3u8$LR•IPV4 +咪咕央视,#genre# +CCTV发现之旅,http://t.061899.xyz/tl/tl.php?id=fxzl$LR•IPV4 +CCTV老故事,http://t.061899.xyz/tl/tl.php?id=lgs$LR•IPV4 +CCTV中学生,http://t.061899.xyz/tl/tl.php?id=zxs$LR•IPV4 + BXTV频道,#genre# NOW爆谷,p3p://167.114.175.6:55331/65bf60df000777a004c3831b56247b8e$LR•IPV4•2『线路1』 NOW爆谷,p3p://167.114.175.6:55331/65423beb00082fd01bed887e0ae23bbf$LR•IPV4•2『线路2』 @@ -71,16 +77,12 @@ RTHK32,http://php.jdshipin.com:8880/TVOD/iptv.php?id=rthk32$LR•IPV4 哆啦A梦,http://103.193.151.146/huya.php?id=11601963$LR•IPV4•2『线路1』 哆啦A梦,https://live.ottiptv.cc/huya/11601963$LR•IPV4•2『线路2』 蜡笔小新,http://103.193.151.146/huya.php?id=11352970$LR•IPV4 -喜羊羊与灰太狼,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=23865080$LR•IPV4 精灵宝可梦,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/30080236$LR•IPV4 航海王,http://103.193.151.146/huya.php?id=16913382$LR•IPV4 -虎牙影视,#genre# -宇宙科幻合集,http://cdn.jdshipin.com:8880/huya.php?id=11342428$LR•IPV4 - 斗鱼影视,#genre# 古装武侠,http://www.goodiptv.club/douyu/2793084$LR•IPV4 冰冰影剧,http://www.goodiptv.club/douyu/74374$LR•IPV4 @@ -89,8 +91,8 @@ RTHK32,http://php.jdshipin.com:8880/TVOD/iptv.php?id=rthk32$LR•IPV4 华语影视,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/5061550$LR•IPV4 -橙记港剧,http://huanqiuzhibo.cn/manifest/douyu.php?id=4549169$LR•IPV4•2『线路1』 -橙记港剧,http://www.goodiptv.club/douyu/4549169$LR•IPV4•2『线路2』 +橙记港剧,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/5522351$LR•IPV4•3『线路1』 @@ -108,41 +110,26 @@ RTHK32,http://php.jdshipin.com:8880/TVOD/iptv.php?id=rthk32$LR•IPV4 少年包青天第三部,https://live.ottiptv.cc/yy/1382736814$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』 士兵突击,https://live.metshop.top/huya/11342430$LR•IPV4•2『线路2』 天龙八部,https://live.ottiptv.cc/yy/1351814644$LR•IPV4 -倚天屠龙记,http://cdn.jdshipin.com:8880/huya.php?id=23734246$LR•IPV4 +倚天屠龙记,https://live.ottiptv.cc/huya/11342403$LR•IPV4 康熙王朝,https://live.ottiptv.cc/huya/11352940$LR•IPV4 庆余年,https://live.ottiptv.cc/huya/11352960$LR•IPV4•2『线路1』 庆余年,http://58.39.190.143:35455/huya/11352960$LR•IPV4•2『线路2』 鬼吹灯之精绝古城,https://live.ottiptv.cc/huya/11352871$LR•IPV4 鬼吹灯之怒晴湘西,https://live.ottiptv.cc/huya/11602075$LR•IPV4 -鬼吹灯之云南虫谷,https://live.ottiptv.cc/huya/11352898$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 -唐诡之西行,https://live.ottiptv.cc/huya/26355763$LR•IPV4 -玫瑰的故事,https://live.ottiptv.cc/huya/23865142$LR•IPV4 -梦中的那片海,https://live.ottiptv.cc/huya/26355765$LR•IPV4 知否知否,https://live.ottiptv.cc/yy/21881901$LR•IPV4 父母爱情,https://live.ottiptv.cc/yy/1354926650$LR•IPV4 如懿传,https://live.ottiptv.cc/huya/29465868$LR•IPV4 武林外传,http://live.nctv.top/DJlio/huya.php?id=21059598$LR•IPV4 -埋堆堆频道,#genre# -楚汉骄雄,http://cdn.jdshipin.com:8880/huya.php?id=29465854$LR•IPV4 -西游记2,http://cdn.jdshipin.com:8880/huya.php?id=29465859$LR•IPV4 -活佛济公3,http://cdn.jdshipin.com:8880/huya.php?id=23903123$LR•IPV4 -无心法师,http://cdn.jdshipin.com:8880/huya.php?id=30080233$LR•IPV4 -法政先锋,http://cdn.jdshipin.com:8880/huya.php?id=23863804$LR•IPV4 -野蛮亲家,http://cdn.jdshipin.com:8880/huya.php?id=23863796$LR•IPV4 - 点播电影,#genre# 倩女幽魂人间道,http://jsmov2.a.yximgs.com/bs3/video-hls/5250634317044855747_hlsb.m3u8$LR•IPV4 倩女幽魂道道道,http://jsmov2.a.yximgs.com/bs3/video-hls/5216294367991385255_hlsb.m3u8$LR•IPV4 @@ -178,7 +165,7 @@ RTHK32,http://php.jdshipin.com:8880/TVOD/iptv.php?id=rthk32$LR•IPV4 钱江都市,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『线路3』 钱江都市,https://stream1.freetv.fun/qian-jiang-du-shi-2.m3u8$LR•IPV4•5『线路4』 -钱江都市,http://ali-m-l.cztv.com/channels/lantian/channel002/1080p.m3u8$LR•IPV4•5『线路5』 +钱江都市,https://ali-m-l.cztv.com/channels/lantian/channel002/1080p.m3u8$LR•IPV4•5『线路5』 YMG未来,http://l.cztvcloud.com/channels/lantian/SXyuhang3/720p.m3u8?$LR•IPV4 上虞文化,http://l.cztvcloud.com/channels/lantian/SXshangyu2/720p.m3u8$LR•IPV4•12『线路1』 上虞文化,https://stream1.freetv.fun/shang-yu-wen-hua-ying-yuan-1.m3u8$LR•IPV4•12『线路2』 @@ -206,10 +193,10 @@ YMG未来,http://l.cztvcloud.com/channels/lantian/SXyuhang3/720p.m3u8?$LR•IPV4 兰溪新闻,https://t.freetv.fun/live/lan-xi-xin-wen-zong-he.m3u8$LR•IPV4•7『线路5』 兰溪新闻,http://l.cztvcloud.com/channels/lantian/SXlanxi1/720p.m3u8?zzhed$LR•IPV4•7『线路6』 兰溪新闻,http://l.cztvcloud.com/channels/lantian/SXlanxi1/720p.m3u8?zzhed?$LR•IPV4•7『线路7』 -姚江文化,http://l.cztvcloud.com/channels/lantian/SXyuyao3/720p.m3u8?zzhed$LR•IPV4•5『线路1』 -姚江文化,http://l.cztvcloud.com/channels/lantian/SXyuyao3/720p.m3u8zzhed$LR•IPV4•5『线路2』 -姚江文化,https://l.cztvcloud.com/channels/lantian/SXyuyao3/720p.m3u8$LR•IPV4•5『线路3』 -姚江文化,https://l.cztvcloud.com/channels/lantian/SXyuyao2/720p.m3u8$LR•IPV4•5『线路4』 +姚江文化,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『线路3』 +姚江文化,http://l.cztvcloud.com/channels/lantian/SXyuyao3/720p.m3u8?zzhed$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』 @@ -463,29 +450,29 @@ Now星影,p3p://167.114.175.6:55331/65bf5e010005226704b84f4f048a4148$LR•IPV4 香港卫视,http://webcast.hkstv.tv/livestream/mutfysrq/playlist.m3u8$LR•IPV4•2『线路1』 香港卫视,https://hkstv.tv/api/m3u8-proxy?url=http%3A%2F%2Fwebcast.hkstv.tv%2Flivestream%2Fmutfysrq%2Fplaylist.m3u8$LR•IPV4•2『线路2』 凤凰卫视中文台,http://api.mg.itv888.cn:8080/hls/2f80047f91e/index.m3u8$LR•IPV4•8『线路1』 -凤凰卫视中文台,http://zmgd.zyrnet.com:8888/hls/110/index.m3u8$LR•IPV4•8『线路2』 -凤凰卫视中文台,http://120.198.95.220:9901/tsfile/live/1036_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•8『线路3』 -凤凰卫视中文台,http://218.206.193.218:8888/hls/66/index.m3u8$LR•IPV4•8『线路4』 -凤凰卫视中文台,http://120.198.95.220:9901/tsfile/live/1036_1.m3u8?key=txiptv$LR•IPV4•8『线路5』 -凤凰卫视中文台,http://r.jdshipin.com/cCCzW$LR•IPV4•8『线路6』 -凤凰卫视中文台,http://cdn6.163189.xyz/163189/fhzw$LR•IPV4•8『线路7』 -凤凰卫视中文台,http://223.110.245.139/ott.js.chinamobile.com/PLTV/3/224/3221226922/index.m3u8$LR•IPV4•8『线路8』 +凤凰卫视中文台,http://223.110.245.139/ott.js.chinamobile.com/PLTV/3/224/3221226922/index.m3u8$LR•IPV4•8『线路2』 +凤凰卫视中文台,http://zmgd.zyrnet.com:8888/hls/110/index.m3u8$LR•IPV4•8『线路3』 +凤凰卫视中文台,http://120.198.95.220:9901/tsfile/live/1036_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•8『线路4』 +凤凰卫视中文台,http://218.206.193.218:8888/hls/66/index.m3u8$LR•IPV4•8『线路5』 +凤凰卫视中文台,http://120.198.95.220:9901/tsfile/live/1036_1.m3u8?key=txiptv$LR•IPV4•8『线路6』 +凤凰卫视中文台,http://r.jdshipin.com/cCCzW$LR•IPV4•8『线路7』 +凤凰卫视中文台,http://cdn6.163189.xyz/163189/fhzw$LR•IPV4•8『线路8』 凤凰卫视资讯台,http://api.mg.itv888.cn:8080/hls/11ef1dc70d8/index.m3u8$LR•IPV4•10『线路1』 -凤凰卫视资讯台,http://zmgd.zyrnet.com:8888/hls/109/index.m3u8$LR•IPV4•10『线路2』 -凤凰卫视资讯台,http://221.7.175.154:8445/tsfile/live/1021_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•10『线路3』 -凤凰卫视资讯台,http://120.198.95.220:9901/tsfile/live/1037_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•10『线路4』 -凤凰卫视资讯台,http://120.198.95.220:9901/tsfile/live/1037_1.m3u8?key=txiptv$LR•IPV4•10『线路5』 -凤凰卫视资讯台,p3p://167.114.175.6:55331/5fffbf860003807cedf4e1016c3c3ed2$LR•IPV4•10『线路6』 -凤凰卫视资讯台,http://r.jdshipin.com/0Rp07$LR•IPV4•10『线路7』 -凤凰卫视资讯台,http://php.jdshipin.com/TVOD/iptv.php?id=fhzx$LR•IPV4•10『线路8』 -凤凰卫视资讯台,http://cdn6.163189.xyz/163189/fhzx$LR•IPV4•10『线路9』 -凤凰卫视资讯台,http://223.110.245.167/ott.js.chinamobile.com/PLTV/3/224/3221226923/index.m3u8$LR•IPV4•10『线路10』 -凤凰卫视香港台,http://122.152.202.33/s/81a8a44f/index.m3u8?id=fhhk$LR•IPV4•6『线路1』 -凤凰卫视香港台,p3p://167.114.175.6:55331/5fe0b82c000cac9774c17f262e43314d$LR•IPV4•6『线路2』 -凤凰卫视香港台,http://r.jdshipin.com/yDoTN$LR•IPV4•6『线路3』 -凤凰卫视香港台,http://php.jdshipin.com/TVOD/iptv.php?id=fhhk$LR•IPV4•6『线路4』 -凤凰卫视香港台,http://cdn6.163189.xyz/163189/fhhk$LR•IPV4•6『线路5』 -凤凰卫视香港台,http://223.110.245.136/PLTV/3/224/3221226975/index.m3u8$LR•IPV4•6『线路6』 +凤凰卫视资讯台,http://223.110.245.167/ott.js.chinamobile.com/PLTV/3/224/3221226923/index.m3u8$LR•IPV4•10『线路2』 +凤凰卫视资讯台,http://zmgd.zyrnet.com:8888/hls/109/index.m3u8$LR•IPV4•10『线路3』 +凤凰卫视资讯台,http://221.7.175.154:8445/tsfile/live/1021_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•10『线路4』 +凤凰卫视资讯台,http://120.198.95.220:9901/tsfile/live/1037_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•10『线路5』 +凤凰卫视资讯台,http://120.198.95.220:9901/tsfile/live/1037_1.m3u8?key=txiptv$LR•IPV4•10『线路6』 +凤凰卫视资讯台,p3p://167.114.175.6:55331/5fffbf860003807cedf4e1016c3c3ed2$LR•IPV4•10『线路7』 +凤凰卫视资讯台,http://r.jdshipin.com/0Rp07$LR•IPV4•10『线路8』 +凤凰卫视资讯台,http://php.jdshipin.com/TVOD/iptv.php?id=fhzx$LR•IPV4•10『线路9』 +凤凰卫视资讯台,http://cdn6.163189.xyz/163189/fhzx$LR•IPV4•10『线路10』 +凤凰卫视香港台,http://223.110.245.136/PLTV/3/224/3221226975/index.m3u8$LR•IPV4•6『线路1』 +凤凰卫视香港台,http://122.152.202.33/s/81a8a44f/index.m3u8?id=fhhk$LR•IPV4•6『线路2』 +凤凰卫视香港台,p3p://167.114.175.6:55331/5fe0b82c000cac9774c17f262e43314d$LR•IPV4•6『线路3』 +凤凰卫视香港台,http://r.jdshipin.com/yDoTN$LR•IPV4•6『线路4』 +凤凰卫视香港台,http://php.jdshipin.com/TVOD/iptv.php?id=fhhk$LR•IPV4•6『线路5』 +凤凰卫视香港台,http://cdn6.163189.xyz/163189/fhhk$LR•IPV4•6『线路6』 台视新闻,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』 @@ -500,24 +487,24 @@ 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•18『线路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•18『线路2』 -天津,http://204.12.221.218:8181/3m1080p/tjws.m3u8$LR•IPV4•18『线路3』 -天津,http://107.150.60.122/live/tjwshd.m3u8$LR•IPV4•18『线路4』 -天津,http://192.151.150.154/live/tjwshd.m3u8$LR•IPV4•18『线路5』 -天津,http://38.75.136.137:98/gslb/dsdqpub/tjwshd.m3u8?auth=testpub$LR•IPV4•18『线路6』 -天津,http://63.141.230.178:82/gslb/zbdq5.m3u8?id=tjwshd$LR•IPV4•18『线路7』 -天津,http://207.56.13.146:81/cdnlive/tjws.m3u8$LR•IPV4•18『线路8』 -天津,http://120.198.95.220:9901/tsfile/live/1067_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•18『线路9』 -天津,http://112.27.235.94:8000/hls/42/index.m3u8$LR•IPV4•18『线路10』 -天津,http://23.237.228.134/live8/tianjing.m3u8$LR•IPV4•18『线路11』 -天津,http://gfr.x3322.net:9901/tsfile/live/1090_1.m3u8$LR•IPV4•18『线路12』 -天津,http://api.kkitv.itv888.cn:8080/hls/z2lkdkrb4w/index.m3u8$LR•IPV4•18『线路13』 -天津,https://iptv.catvod.com/catvod.php?id=tjws$LR•IPV4•18『线路14』 -天津,https://httop.top/ysp-天津卫视$LR•IPV4•18『线路15』 -天津,http://iptv.huuc.edu.cn/hls/tjhd.m3u8$LR•IPV4•18『线路16』 -天津,http://153.0.171.163:9901/tsfile/live/0135_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•18『线路17』 -天津,http://39.134.115.163:8080/PLTV/88888910/224/3221225698/index.m3u8$LR•IPV4•18『线路18』 +天津,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•18『线路1』 +天津,http://204.12.221.218:8181/3m1080p/tjws.m3u8$LR•IPV4•18『线路2』 +天津,http://107.150.60.122/live/tjwshd.m3u8$LR•IPV4•18『线路3』 +天津,http://192.151.150.154/live/tjwshd.m3u8$LR•IPV4•18『线路4』 +天津,http://38.75.136.137:98/gslb/dsdqpub/tjwshd.m3u8?auth=testpub$LR•IPV4•18『线路5』 +天津,http://63.141.230.178:82/gslb/zbdq5.m3u8?id=tjwshd$LR•IPV4•18『线路6』 +天津,http://207.56.13.146:81/cdnlive/tjws.m3u8$LR•IPV4•18『线路7』 +天津,http://120.198.95.220:9901/tsfile/live/1067_1.m3u8?key=txiptv&playlive=1&down=1$LR•IPV4•18『线路8』 +天津,http://112.27.235.94:8000/hls/42/index.m3u8$LR•IPV4•18『线路9』 +天津,https://piccpndks.v.kcdnvip.com/audio/tianjin_2/index.m3u8$LR•IPV4•18『线路10』 +天津,http://39.134.115.163:8080/PLTV/88888910/224/3221225698/index.m3u8$LR•IPV4•18『线路11』 +天津,http://23.237.228.134/live8/tianjing.m3u8$LR•IPV4•18『线路12』 +天津,http://gfr.x3322.net:9901/tsfile/live/1090_1.m3u8$LR•IPV4•18『线路13』 +天津,http://api.kkitv.itv888.cn:8080/hls/z2lkdkrb4w/index.m3u8$LR•IPV4•18『线路14』 +天津,https://iptv.catvod.com/catvod.php?id=tjws$LR•IPV4•18『线路15』 +天津,https://httop.top/ysp-天津卫视$LR•IPV4•18『线路16』 +天津,http://iptv.huuc.edu.cn/hls/tjhd.m3u8$LR•IPV4•18『线路17』 +天津,http://153.0.171.163:9901/tsfile/live/0135_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•18『线路18』 ☘️甘肃频道,#genre# 西峰综合,https://play.kankanlive.com/live/1683944827526991.m3u8$LR•IPV4 @@ -599,25 +586,26 @@ CN卡通,p3p://167.114.175.6:55331/648353bb0006d4d93236315a766b692a$LR•IPV4• 数字,#genre# 喜剧影院,http://74.91.26.218:82/live/vlxjyy.m3u8$LR•IPV4 +CHC动作电影,http://t.061899.xyz/tl/tl.php?id=chcdzdy$LR•IPV4 卡酷少儿,http://218.13.170.98:9901/tsfile/live/1021_1.m3u8$LR•IPV4 •特色,#genre# -UFC,https://dbrb49pjoymg4.cloudfront.net/manifest/3fec3e5cac39a52b2132f9c66c83dae043dc17d4/prod_default_xumo-ams-aws/194a140c-0cf5-443e-b747-08bf621d75a8/0.m3u8$LR•IPV4•16『线路1』 -UFC,https://jmp2.uk/plu-6a037119f6ac24413f849d5b.m3u8$LR•IPV4•16『线路2』 -UFC,https://aegis-cloudfront-1.tubi.video/a78ea283-8666-44a1-a0f6-fde5d229ac21/playlist.m3u8$LR•IPV4•16『线路3』 -UFC,https://linear-893.frequency.stream/dist/xumo/893/hls/master/playlist.m3u8$LR•IPV4•16『线路4』 -UFC,https://pb-ljudrmfw5j68n.akamaized.net/playlist.m3u8$LR•IPV4•16『线路5』 -UFC,https://jmp2.uk/plu-66ed3eb27358ce000830df49.m3u8$LR•IPV4•16『线路6』 -UFC,https://jmp2.uk/plu-679203d4bc03978b9b4b79a6.m3u8$LR•IPV4•16『线路7』 -UFC,https://jmp2.uk/plu-67a52cd4ec91870008a62164.m3u8$LR•IPV4•16『线路8』 -UFC,https://jmp2.uk/plu-6792066f3de7c8cf941e7ce3.m3u8$LR•IPV4•16『线路9』 -UFC,https://jmp2.uk/plu-66ed3e9d5e4a6e0008b346e0.m3u8$LR•IPV4•16『线路10』 -UFC,https://jmp2.uk/plu-69a20556814d27f4ae630a92.m3u8$LR•IPV4•16『线路11』 -UFC,https://jmp2.uk/plu-6792044b680721c77c5b9ba2.m3u8$LR•IPV4•16『线路12』 -UFC,https://jmp2.uk/plu-67921b873de7c8cf94233f52.m3u8$LR•IPV4•16『线路13』 -UFC,https://jmp2.uk/plu-67921b78b83355184c667770.m3u8$LR•IPV4•16『线路14』 -UFC,https://jmp2.uk/plu-679205a13de7c8cf941e7857.m3u8$LR•IPV4•16『线路15』 -UFC,https://jmp2.uk/plu-677d9adfa9a51b0008497fa0.m3u8$LR•IPV4•16『线路16』 +UFC,https://jmp2.uk/plu-6a037119f6ac24413f849d5b.m3u8$LR•IPV4•16『线路1』 +UFC,https://aegis-cloudfront-1.tubi.video/a78ea283-8666-44a1-a0f6-fde5d229ac21/playlist.m3u8$LR•IPV4•16『线路2』 +UFC,https://linear-893.frequency.stream/dist/xumo/893/hls/master/playlist.m3u8$LR•IPV4•16『线路3』 +UFC,https://pb-ljudrmfw5j68n.akamaized.net/playlist.m3u8$LR•IPV4•16『线路4』 +UFC,https://jmp2.uk/plu-66ed3eb27358ce000830df49.m3u8$LR•IPV4•16『线路5』 +UFC,https://jmp2.uk/plu-679203d4bc03978b9b4b79a6.m3u8$LR•IPV4•16『线路6』 +UFC,https://jmp2.uk/plu-67a52cd4ec91870008a62164.m3u8$LR•IPV4•16『线路7』 +UFC,https://jmp2.uk/plu-6792066f3de7c8cf941e7ce3.m3u8$LR•IPV4•16『线路8』 +UFC,https://jmp2.uk/plu-66ed3e9d5e4a6e0008b346e0.m3u8$LR•IPV4•16『线路9』 +UFC,https://jmp2.uk/plu-69a20556814d27f4ae630a92.m3u8$LR•IPV4•16『线路10』 +UFC,https://jmp2.uk/plu-6792044b680721c77c5b9ba2.m3u8$LR•IPV4•16『线路11』 +UFC,https://jmp2.uk/plu-67921b873de7c8cf94233f52.m3u8$LR•IPV4•16『线路12』 +UFC,https://jmp2.uk/plu-67921b78b83355184c667770.m3u8$LR•IPV4•16『线路13』 +UFC,https://jmp2.uk/plu-679205a13de7c8cf941e7857.m3u8$LR•IPV4•16『线路14』 +UFC,https://jmp2.uk/plu-677d9adfa9a51b0008497fa0.m3u8$LR•IPV4•16『线路15』 +UFC,https://dbrb49pjoymg4.cloudfront.net/manifest/3fec3e5cac39a52b2132f9c66c83dae043dc17d4/prod_default_xumo-ams-aws/194a140c-0cf5-443e-b747-08bf621d75a8/0.m3u8$LR•IPV4•16『线路16』 •音乐,#genre# PMC,https://mumbai-edge.smartplaytv.in/PMC/index.m3u8$LR•IPV4•3『线路1』 @@ -645,8 +633,8 @@ MTV Spankin,https://jmp2.uk/plu-5d14fdb8ca91eedee1633117.m3u8$LR•IPV4•2『 MTV Spankin,https://jmp2.uk/plu-6541010f770cf1000866be98.m3u8$LR•IPV4•2『线路2』 •国际,#genre# -RT News,https://rt-glb.rttv.com/dvr/rtnews/playlist_4500Kb.m3u8$LR•IPV4•2『线路1』 -RT News,https://cloud.odysee.live/content/fdd11cb3ab75f95efb7b3bc2d726aa13ac915b66/master.m3u8$LR•IPV4•2『线路2』 +RT News,https://cloud.odysee.live/content/fdd11cb3ab75f95efb7b3bc2d726aa13ac915b66/master.m3u8$LR•IPV4•2『线路1』 +RT News,https://rt-glb.rttv.com/dvr/rtnews/playlist_4500Kb.m3u8$LR•IPV4•2『线路2』 •韩国,#genre# MTN,http://183.110.27.87/mtnlive/720/playlist.m3u8$LR•IPV4 @@ -697,15 +685,15 @@ MBC,https://shd-gcp-live.edgenextcdn.net/live/bitmovin-mbc-masr-drama/567b703c19 MBC,https://shd-gcp-live.edgenextcdn.net/live/bitmovin-mbc-5/ee6b000cee0629411b666ab26cb13e9b/index.m3u8$LR•IPV4•35『线路34』 MBC,https://cdn-us-east-prod-ingest-infra-dacast-com.akamaized.net/624ff8f9-db18-da92-4d42-896fa2ff3eb3/source/index.m3u8$LR•IPV4•35『线路35』 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,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』 -SBS,https://stream.ubc.co.kr/hls/ubctvstream/index.m3u8$LR•IPV4•9『线路9』 +SBS,http://1.222.207.80:1935/live/cjbtv/playlist.m3u8$LR•IPV4•9『线路1』 +SBS,http://61.82.49.4:1935/live/_definst_/tv.stream/playlist.m3u8$LR•IPV4•9『线路2』 +SBS,http://123.140.197.22/stream/1/play.m3u8$LR•IPV4•9『线路3』 +SBS,http://61.85.197.53:1935/jtv_live/myStream/playlist.m3u8$LR•IPV4•9『线路4』 +SBS,https://vod.ikbc.co.kr/KBCTV/tv/playlist.m3u8$LR•IPV4•9『线路5』 +SBS,https://stream1.knn.co.kr/hls/9ly4534y7dm2xfa123r2_tv/index.m3u8$LR•IPV4•9『线路6』 +SBS,http://203.251.91.122:1935/on-air-Backup/tv/playlist.m3u8$LR•IPV4•9『线路7』 +SBS,https://stream.ubc.co.kr/hls/ubctvstream/index.m3u8$LR•IPV4•9『线路8』 +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『线路9』 •日本,#genre# Shop Channel,https://stream3.shopch.jp/HLS/master.m3u8$LR•IPV4 @@ -746,8 +734,8 @@ Gusto TV,https://e75fc053c0d2406fb74cdd71d77e1a7f.mediatailor.us-east-1.amazonaw Hell's Kitchen,https://hellskitchengermany-rakuten.amagi.tv/playlist.m3u8$LR•IPV4•3『线路1』 Hell's Kitchen,https://amg00654-itv-amg00654c20-rakuten-it-3615.playouts.now.amagi.tv/playlist.m3u8$LR•IPV4•3『线路2』 Hell's Kitchen,https://amg00654-itv-amg00654c1-samsung-au-1072.playouts.now.amagi.tv/itv-hellskitchen-samsung/playlist.m3u8$LR•IPV4•3『线路3』 -HollyWire,https://bozztv.com/hwotta/playlist/HD3400/HD3400.m3u8$LR•IPV4•2『线路1』 -HollyWire,https://bozztv.com/hwotta/playlist/playlist.m3u8$LR•IPV4•2『线路2』 +HollyWire,https://bozztv.com/hwotta/playlist/playlist.m3u8$LR•IPV4•2『线路1』 +HollyWire,https://bozztv.com/hwotta/playlist/HD3400/HD3400.m3u8$LR•IPV4•2『线路2』 Iqra TV,https://cdn149.anystream.uk:8082/app/iq53la/playlist.m3u8$LR•IPV4 KBEV Spectrum Channel 6 [Beverly Hills],https://s3-us-west-2.amazonaws.com/beverly-hills-high-school.castus-vod/live/ch1/video.m3u8$LR•IPV4 Legislative Assembly of Ontario,https://temp2.isilive.ca/live/_definst_/ontla/committee_1-en/playlist.m3u8$LR•IPV4•4『线路1』 @@ -761,8 +749,8 @@ 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 NRBTV,https://stream-us-east-1.getpublica.com/playlist.m3u8?network_id=15811$LR•IPV4 Realitatea Plus,https://dokagents.site/live/realitateatv/mono.m3u8$LR•IPV4 -Reuters,https://dbrb49pjoymg4.cloudfront.net/manifest/3fec3e5cac39a52b2132f9c66c83dae043dc17d4/prod_default_xumo-ams-aws/e7493ea5-5c1c-4d7a-a3f7-e95516048ad8/3.m3u8$LR•IPV4•2『线路1』 -Reuters,https://amg00453-reuters-amg00453c1-rakuten-uk-2110.playouts.now.amagi.tv/playlist/amg00453-reuters-reuters-rakutenuk/playlist.m3u8$LR•IPV4•2『线路2』 +Reuters,https://amg00453-reuters-amg00453c1-rakuten-uk-2110.playouts.now.amagi.tv/playlist/amg00453-reuters-reuters-rakutenuk/playlist.m3u8$LR•IPV4•2『线路1』 +Reuters,https://dbrb49pjoymg4.cloudfront.net/manifest/3fec3e5cac39a52b2132f9c66c83dae043dc17d4/prod_default_xumo-ams-aws/e7493ea5-5c1c-4d7a-a3f7-e95516048ad8/3.m3u8$LR•IPV4•2『线路2』 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 @@ -780,71 +768,71 @@ TV Guará,https://video02.logicahost.com.br/tvguara23/tvguara23/playlist.m3u8$LR TVK,https://live.kh.malimarcdn.com/live/tvk.stream/playlist.m3u8$LR•IPV4•3『线路1』 TVK,https://live.kh.malimarcdn.com/live/tvk2.stream/playlist.m3u8$LR•IPV4•3『线路2』 TVK,https://stream.tvkstella.pl/stella/stella.m3u8$LR•IPV4•3『线路3』 -UK,http://nocable.cc:8080//OURTV/OURTV@4806/35241$LR•IPV4•52『线路1』 -UK,http://nocable.cc:8080//OURTV/OURTV@4806/35244$LR•IPV4•52『线路2』 -UK,http://ua-iptv.com:8080//zerubassman@yahoo.com/2MR879Z9PL/1001373$LR•IPV4•52『线路3』 -UK,http://nocable.cc:8080//OURTV/OURTV@4806/35240$LR•IPV4•52『线路4』 -UK,http://nocable.cc:8080//OURTV/OURTV@4806/137720$LR•IPV4•52『线路5』 -UK,http://ua-iptv.com:8080//zerubassman@yahoo.com/2MR879Z9PL/1001376$LR•IPV4•52『线路6』 -UK,http://ua-iptv.com:8080//zerubassman@yahoo.com/2MR879Z9PL/1001378$LR•IPV4•52『线路7』 -UK,http://ua-iptv.com:8080//zerubassman@yahoo.com/2MR879Z9PL/1001379$LR•IPV4•52『线路8』 -UK,http://nocable.cc:8080//OURTV/OURTV@4806/53705$LR•IPV4•52『线路9』 -UK,http://nocable.cc:8080//OURTV/OURTV@4806/35238$LR•IPV4•52『线路10』 -UK,http://nocable.cc:8080//OURTV/OURTV@4806/53663$LR•IPV4•52『线路11』 -UK,http://nocable.cc:8080//OURTV/OURTV@4806/45940$LR•IPV4•52『线路12』 -UK,http://vocotv.pro//revol/revol/276918$LR•IPV4•52『线路13』 -UK,http://vocotv.pro//revol/revol/276924$LR•IPV4•52『线路14』 -UK,http://vocotv.pro//revol/revol/276906$LR•IPV4•52『线路15』 -UK,https://moviesphereuk-samsunguk.amagi.tv/playlist.m3u8$LR•IPV4•52『线路16』 -UK,https://0145451975a64b35866170fd2e8fa486.mediatailor.eu-west-1.amazonaws.com/v1/master/0547f18649bd788bec7b67b746e47670f558b6b2/production-LiveChannel-5987/master.m3u8$LR•IPV4•52『线路17』 -UK,https://54045f0c40fd442c8b06df076aaf1e85.mediatailor.eu-west-1.amazonaws.com/v1/master/0547f18649bd788bec7b67b746e47670f558b6b2/production-LiveChannel-6065/master.m3u8$LR•IPV4•52『线路18』 -UK,https://9be783d652cd4b099cf63e1dc134c4a3.mediatailor.eu-west-1.amazonaws.com/v1/master/0547f18649bd788bec7b67b746e47670f558b6b2/production-LiveChannel-6181/master.m3u8$LR•IPV4•52『线路19』 -UK,https://fee09fd665814f51b939b6d106cf5f66.mediatailor.eu-west-1.amazonaws.com/v1/master/0547f18649bd788bec7b67b746e47670f558b6b2/production-LiveChannel-6093/master.m3u8$LR•IPV4•52『线路20』 -UK,http://41.223.30.230/ZEECINEMA/index.m3u8$LR•IPV4•52『线路21』 -UK,https://app.ncare.live/c3VydmVyX8RpbEU9Mi8xNy8yMDE0GIDU6RgzQ6NTAgdEoaeFzbF92YWxIZTO0U0ezN1IzMyfvcGVMZEJCTEFWeVN3PTOmdFsaWRtaW51aiPhnPTI2/atnbanglauk-off.stream/playlist.m3u8$LR•IPV4•52『线路22』 -UK,https://qvcuk-live.akamaized.net/hls/live/2097112/qvc/master.m3u8$LR•IPV4•52『线路23』 -UK,https://qvcuk-live.akamaized.net/hls/live/2097112/qby/master.m3u8$LR•IPV4•52『线路24』 -UK,https://qvcuk-live.akamaized.net/hls/live/2097112/qex/master.m3u8$LR•IPV4•52『线路25』 -UK,https://qvcuk-live.akamaized.net/hls/live/2097112/qst/master.m3u8$LR•IPV4•52『线路26』 -UK,http://45.153.96.44:8001$LR•IPV4•52『线路27』 -UK,https://mini.allinonereborn.fun/tata.php?id=11783$LR•IPV4•52『线路28』 -UK,https://cdn3.wowza.com/5/L1Uzd2FrbVlLRG1W/live/smil:lwukweb.smil/playlist.m3u8$LR•IPV4•52『线路29』 -UK,https://d34z4embz0hjf6.cloudfront.net/out/v1/7ac2789ff9a544a49337d1ffc54ce61c/index.m3u8$LR•IPV4•52『线路30』 -UK,https://jmp2.uk/plu-638e10de75c3a30007092693.m3u8$LR•IPV4•52『线路31』 -UK,https://jmp2.uk/plu-62bed7cb3279cb0007735327.m3u8$LR•IPV4•52『线路32』 -UK,https://d1nn4ic5ci0eid.cloudfront.net/MasterchefUKPoweredbyBanijay_GB.m3u8$LR•IPV4•52『线路33』 -UK,https://dvqpty1sb3rry.cloudfront.net/PointlessUKPoweredbyBanijay_GB.m3u8$LR•IPV4•52『线路34』 -UK,https://68f6dfd1f2bd415b9c42f1d383004b69.mediatailor.eu-west-1.amazonaws.com/v1/master/0547f18649bd788bec7b67b746e47670f558b6b2/production-LiveChannel-6233/master.m3u8$LR•IPV4•52『线路35』 -UK,https://2c88ed8c4df9479aa0c7138dc42115e2.mediatailor.eu-west-1.amazonaws.com/v1/master/0547f18649bd788bec7b67b746e47670f558b6b2/production-LiveChannel-6194/master.m3u8$LR•IPV4•52『线路36』 -UK,https://sci-fi-rakuten-tv-uk.fast.rakuten.tv/v1/master/0547f18649bd788bec7b67b746e47670f558b6b2/production-LiveChannel-6241/master.m3u8$LR•IPV4•52『线路37』 -UK,https://thriller-rakuten-tv-uk.fast.rakuten.tv/v1/master/0547f18649bd788bec7b67b746e47670f558b6b2/production-LiveChannel-6482/master.m3u8$LR•IPV4•52『线路38』 -UK,https://live-tbn-ssai.simplestreamcdn.com/v1/master/774d979dd66704abea7c5b62cb34c6815fda0d35/tbn-live/manifest.m3u8$LR•IPV4•52『线路39』 -UK,https://amg01131-tracetv-amg01131c5-stirr-us-4389.playouts.now.amagi.tv/playlist.m3u8$LR•IPV4•52『线路40』 -UK,https://d2n3779oy6efpi.cloudfront.net/playlist.m3u8$LR•IPV4•52『线路41』 -UK,https://channels.trace.plus/Traceprod/UK_FAST_hd/index.m3u8$LR•IPV4•52『线路42』 -UK,https://hls.vantagetv.co.uk/vmusicuk_stream/index.m3u8$LR•IPV4•52『线路43』 -UK,https://amg01243-xitenetworksint-hitsuk-samsunguk-mvovq.amagi.tv/playlist/amg01243-xitenetworksint-hitsuk-samsunguk/playlist.m3u8$LR•IPV4•52『线路44』 -UK,https://bbc-antiquesroadshowuk-1-us.roku.wurl.tv/playlist.m3u8$LR•IPV4•52『线路45』 -UK,https://jmp2.uk/plu-692edc78d52ea9e4858cf78f.m3u8$LR•IPV4•52『线路46』 -UK,https://jmp2.uk/plu-692edcff77f0147d69f19498.m3u8$LR•IPV4•52『线路47』 -UK,https://jmp2.uk/plu-692edd6bdb8695f63e14f3b9.m3u8$LR•IPV4•52『线路48』 -UK,https://b6cca454.wurl.com/master/f36d25e7e52f1ba8d7e56eb859c636563214f541/U2Ftc3VuZy1nYl9UcnVlQ3JpbWVVS2Zyb21DQlNSZWFsaXR5X0hMUw/playlist.m3u8$LR•IPV4•52『线路49』 -UK,https://ntd02.akamaized.net/NTD-UK/index.m3u8$LR•IPV4•52『线路50』 -UK,https://e3207568b726401995c25670faaf32e4.mediatailor.eu-west-1.amazonaws.com/v1/master/0547f18649bd788bec7b67b746e47670f558b6b2/production-LiveChannel-6203/master.m3u8$LR•IPV4•52『线路51』 -UK,https://1a3566cb46914c5499fbc86fbc4ac87e.mediatailor.us-west-2.amazonaws.com/v1/master/ba62fe743df0fe93366eba3a257d792884136c7f/LINEAR-932-WORBUKENFAST-WHALETVPLUS/932/whaletvplus/hls/master/playlist.m3u8$LR•IPV4•52『线路52』 -US,p3p://167.114.175.6:55331/63efe07e000c1db2f23eb46a4e00518a$LR•IPV4•17『线路1』 -US,p3p://167.114.175.6:55331/63efe0de000858baf2402a646c573e1b$LR•IPV4•17『线路2』 -US,p3p://167.114.175.6:55331/63efe252000a7658f245d81113e44b34$LR•IPV4•17『线路3』 -US,p3p://167.114.175.6:55331/63efe2e2000d23b5f2480b4125294b9a$LR•IPV4•17『线路4』 -US,http://138.121.15.230:9002/DEPELICULA/index.m3u8$LR•IPV4•17『线路5』 -US,https://amg17233-amg17233c1-wisptv-us-6409.playouts.now.amagi.tv/playlist.m3u8$LR•IPV4•17『线路6』 -US,https://jmp2.uk/plu-6304f20c941c5d00089634e7.m3u8$LR•IPV4•17『线路7』 -US,https://jmp2.uk/plu-63988b61c8d285000798a22a.m3u8$LR•IPV4•17『线路8』 -US,http://206.212.244.63/641/index.m3u8$LR•IPV4•17『线路9』 -US,https://janus.xpbroadcasting.com:8443/hls/xptvUS.m3u8$LR•IPV4•17『线路10』 -US,https://bloomberg.com/media-manifest/streams/us-event.m3u8$LR•IPV4•17『线路11』 -US,https://bloomberg.com/media-manifest/streams/politics.m3u8$LR•IPV4•17『线路12』 -US,https://0b73ace69ebb45eaa249bb87837cb958.mediatailor.us-west-2.amazonaws.com/v1/master/ba62fe743df0fe93366eba3a257d792884136c7f/LINEAR-644-WORBUSENFAST-LG_US/644/lgtv/hls/master/playlist.m3u8$LR•IPV4•17『线路13』 +UK,https://moviesphereuk-samsunguk.amagi.tv/playlist.m3u8$LR•IPV4•52『线路1』 +UK,https://0145451975a64b35866170fd2e8fa486.mediatailor.eu-west-1.amazonaws.com/v1/master/0547f18649bd788bec7b67b746e47670f558b6b2/production-LiveChannel-5987/master.m3u8$LR•IPV4•52『线路2』 +UK,https://54045f0c40fd442c8b06df076aaf1e85.mediatailor.eu-west-1.amazonaws.com/v1/master/0547f18649bd788bec7b67b746e47670f558b6b2/production-LiveChannel-6065/master.m3u8$LR•IPV4•52『线路3』 +UK,https://9be783d652cd4b099cf63e1dc134c4a3.mediatailor.eu-west-1.amazonaws.com/v1/master/0547f18649bd788bec7b67b746e47670f558b6b2/production-LiveChannel-6181/master.m3u8$LR•IPV4•52『线路4』 +UK,https://fee09fd665814f51b939b6d106cf5f66.mediatailor.eu-west-1.amazonaws.com/v1/master/0547f18649bd788bec7b67b746e47670f558b6b2/production-LiveChannel-6093/master.m3u8$LR•IPV4•52『线路5』 +UK,http://41.223.30.230/ZEECINEMA/index.m3u8$LR•IPV4•52『线路6』 +UK,https://app.ncare.live/c3VydmVyX8RpbEU9Mi8xNy8yMDE0GIDU6RgzQ6NTAgdEoaeFzbF92YWxIZTO0U0ezN1IzMyfvcGVMZEJCTEFWeVN3PTOmdFsaWRtaW51aiPhnPTI2/atnbanglauk-off.stream/playlist.m3u8$LR•IPV4•52『线路7』 +UK,https://qvcuk-live.akamaized.net/hls/live/2097112/qvc/master.m3u8$LR•IPV4•52『线路8』 +UK,https://qvcuk-live.akamaized.net/hls/live/2097112/qby/master.m3u8$LR•IPV4•52『线路9』 +UK,https://qvcuk-live.akamaized.net/hls/live/2097112/qex/master.m3u8$LR•IPV4•52『线路10』 +UK,https://qvcuk-live.akamaized.net/hls/live/2097112/qst/master.m3u8$LR•IPV4•52『线路11』 +UK,http://45.153.96.44:8001$LR•IPV4•52『线路12』 +UK,https://mini.allinonereborn.fun/tata.php?id=11783$LR•IPV4•52『线路13』 +UK,https://cdn3.wowza.com/5/L1Uzd2FrbVlLRG1W/live/smil:lwukweb.smil/playlist.m3u8$LR•IPV4•52『线路14』 +UK,https://d34z4embz0hjf6.cloudfront.net/out/v1/7ac2789ff9a544a49337d1ffc54ce61c/index.m3u8$LR•IPV4•52『线路15』 +UK,https://jmp2.uk/plu-638e10de75c3a30007092693.m3u8$LR•IPV4•52『线路16』 +UK,https://jmp2.uk/plu-62bed7cb3279cb0007735327.m3u8$LR•IPV4•52『线路17』 +UK,https://d1nn4ic5ci0eid.cloudfront.net/MasterchefUKPoweredbyBanijay_GB.m3u8$LR•IPV4•52『线路18』 +UK,https://dvqpty1sb3rry.cloudfront.net/PointlessUKPoweredbyBanijay_GB.m3u8$LR•IPV4•52『线路19』 +UK,https://68f6dfd1f2bd415b9c42f1d383004b69.mediatailor.eu-west-1.amazonaws.com/v1/master/0547f18649bd788bec7b67b746e47670f558b6b2/production-LiveChannel-6233/master.m3u8$LR•IPV4•52『线路20』 +UK,https://2c88ed8c4df9479aa0c7138dc42115e2.mediatailor.eu-west-1.amazonaws.com/v1/master/0547f18649bd788bec7b67b746e47670f558b6b2/production-LiveChannel-6194/master.m3u8$LR•IPV4•52『线路21』 +UK,https://sci-fi-rakuten-tv-uk.fast.rakuten.tv/v1/master/0547f18649bd788bec7b67b746e47670f558b6b2/production-LiveChannel-6241/master.m3u8$LR•IPV4•52『线路22』 +UK,https://thriller-rakuten-tv-uk.fast.rakuten.tv/v1/master/0547f18649bd788bec7b67b746e47670f558b6b2/production-LiveChannel-6482/master.m3u8$LR•IPV4•52『线路23』 +UK,https://live-tbn-ssai.simplestreamcdn.com/v1/master/774d979dd66704abea7c5b62cb34c6815fda0d35/tbn-live/manifest.m3u8$LR•IPV4•52『线路24』 +UK,https://amg01131-tracetv-amg01131c5-stirr-us-4389.playouts.now.amagi.tv/playlist.m3u8$LR•IPV4•52『线路25』 +UK,https://d2n3779oy6efpi.cloudfront.net/playlist.m3u8$LR•IPV4•52『线路26』 +UK,https://channels.trace.plus/Traceprod/UK_FAST_hd/index.m3u8$LR•IPV4•52『线路27』 +UK,https://hls.vantagetv.co.uk/vmusicuk_stream/index.m3u8$LR•IPV4•52『线路28』 +UK,https://amg01243-xitenetworksint-hitsuk-samsunguk-mvovq.amagi.tv/playlist/amg01243-xitenetworksint-hitsuk-samsunguk/playlist.m3u8$LR•IPV4•52『线路29』 +UK,https://bbc-antiquesroadshowuk-1-us.roku.wurl.tv/playlist.m3u8$LR•IPV4•52『线路30』 +UK,https://jmp2.uk/plu-692edc78d52ea9e4858cf78f.m3u8$LR•IPV4•52『线路31』 +UK,https://jmp2.uk/plu-692edcff77f0147d69f19498.m3u8$LR•IPV4•52『线路32』 +UK,https://jmp2.uk/plu-692edd6bdb8695f63e14f3b9.m3u8$LR•IPV4•52『线路33』 +UK,https://b6cca454.wurl.com/master/f36d25e7e52f1ba8d7e56eb859c636563214f541/U2Ftc3VuZy1nYl9UcnVlQ3JpbWVVS2Zyb21DQlNSZWFsaXR5X0hMUw/playlist.m3u8$LR•IPV4•52『线路34』 +UK,https://ntd02.akamaized.net/NTD-UK/index.m3u8$LR•IPV4•52『线路35』 +UK,https://e3207568b726401995c25670faaf32e4.mediatailor.eu-west-1.amazonaws.com/v1/master/0547f18649bd788bec7b67b746e47670f558b6b2/production-LiveChannel-6203/master.m3u8$LR•IPV4•52『线路36』 +UK,https://1a3566cb46914c5499fbc86fbc4ac87e.mediatailor.us-west-2.amazonaws.com/v1/master/ba62fe743df0fe93366eba3a257d792884136c7f/LINEAR-932-WORBUKENFAST-WHALETVPLUS/932/whaletvplus/hls/master/playlist.m3u8$LR•IPV4•52『线路37』 +UK,http://nocable.cc:8080//OURTV/OURTV@4806/35241$LR•IPV4•52『线路38』 +UK,http://nocable.cc:8080//OURTV/OURTV@4806/35244$LR•IPV4•52『线路39』 +UK,http://ua-iptv.com:8080//zerubassman@yahoo.com/2MR879Z9PL/1001373$LR•IPV4•52『线路40』 +UK,http://nocable.cc:8080//OURTV/OURTV@4806/35240$LR•IPV4•52『线路41』 +UK,http://nocable.cc:8080//OURTV/OURTV@4806/137720$LR•IPV4•52『线路42』 +UK,http://ua-iptv.com:8080//zerubassman@yahoo.com/2MR879Z9PL/1001376$LR•IPV4•52『线路43』 +UK,http://ua-iptv.com:8080//zerubassman@yahoo.com/2MR879Z9PL/1001378$LR•IPV4•52『线路44』 +UK,http://ua-iptv.com:8080//zerubassman@yahoo.com/2MR879Z9PL/1001379$LR•IPV4•52『线路45』 +UK,http://nocable.cc:8080//OURTV/OURTV@4806/53705$LR•IPV4•52『线路46』 +UK,http://nocable.cc:8080//OURTV/OURTV@4806/35238$LR•IPV4•52『线路47』 +UK,http://nocable.cc:8080//OURTV/OURTV@4806/53663$LR•IPV4•52『线路48』 +UK,http://nocable.cc:8080//OURTV/OURTV@4806/45940$LR•IPV4•52『线路49』 +UK,http://vocotv.pro//revol/revol/276918$LR•IPV4•52『线路50』 +UK,http://vocotv.pro//revol/revol/276924$LR•IPV4•52『线路51』 +UK,http://vocotv.pro//revol/revol/276906$LR•IPV4•52『线路52』 +US,http://138.121.15.230:9002/DEPELICULA/index.m3u8$LR•IPV4•17『线路1』 +US,https://amg17233-amg17233c1-wisptv-us-6409.playouts.now.amagi.tv/playlist.m3u8$LR•IPV4•17『线路2』 +US,https://jmp2.uk/plu-6304f20c941c5d00089634e7.m3u8$LR•IPV4•17『线路3』 +US,https://jmp2.uk/plu-63988b61c8d285000798a22a.m3u8$LR•IPV4•17『线路4』 +US,http://206.212.244.63/641/index.m3u8$LR•IPV4•17『线路5』 +US,https://janus.xpbroadcasting.com:8443/hls/xptvUS.m3u8$LR•IPV4•17『线路6』 +US,https://bloomberg.com/media-manifest/streams/us-event.m3u8$LR•IPV4•17『线路7』 +US,https://bloomberg.com/media-manifest/streams/politics.m3u8$LR•IPV4•17『线路8』 +US,https://0b73ace69ebb45eaa249bb87837cb958.mediatailor.us-west-2.amazonaws.com/v1/master/ba62fe743df0fe93366eba3a257d792884136c7f/LINEAR-644-WORBUSENFAST-LG_US/644/lgtv/hls/master/playlist.m3u8$LR•IPV4•17『线路9』 +US,p3p://167.114.175.6:55331/63efe07e000c1db2f23eb46a4e00518a$LR•IPV4•17『线路10』 +US,p3p://167.114.175.6:55331/63efe0de000858baf2402a646c573e1b$LR•IPV4•17『线路11』 +US,p3p://167.114.175.6:55331/63efe252000a7658f245d81113e44b34$LR•IPV4•17『线路12』 +US,p3p://167.114.175.6:55331/63efe2e2000d23b5f2480b4125294b9a$LR•IPV4•17『线路13』 US,https://amg01942-amg01942c5-stirr-us-10184.playouts.now.amagi.tv/playlist.m3u8$LR•IPV4•17『线路14』 US,https://content.uplynk.com/channel/64ca339f04964a5e961c3207a7771bf1.m3u8$LR•IPV4•17『线路15』 US,https://jmp2.uk/plu-62cebd7302478b00073a6b71.m3u8$LR•IPV4•17『线路16』 @@ -992,16 +980,16 @@ zonghe,#genre# 💓专享源🅰️,#genre# 🐼直播熊猫,https://gcwbndali.v.myalicdn.com/gcwbnd/ipanda1000_2/index.m3u8$LR•IPV4 钱塘江,http://gslbmgsplive.miguvideo.com/wd_r3/cnr/qiantangjiang/2000/index.m3u8?msisdn=20250923080124d2a289d7e8424ddd9ea0d2d29a9e0744&mdspid=&spid=800033&netType=0&sid=5500613479&pid=2028597139×tamp=20250923080124&Channel_ID=0116_2600000900-99000-201600010010027&ProgramID=647370520&ParentNodeID=-99&assertID=5500613479&client_ip=106.13.250.83&SecurityKey=20250923080124&promotionId=&mvid=5102115888&mcid=500020&playurlVersion=WX-A1-8.9.1-RELEASE&userid=&jmhm=&videocodec=h264&bean=mgspad&tid=android&conFee=0&puData=a4be52553a643d1013946a49db1f0e09&ddCalcu=9a04eeb20e7f5012b5d5934aa664439d3110$LR•IPV4 -HBO,http://23.237.104.106:8080/USA_HBO/index.m3u8$LR•IPV4•10『线路1』 -HBO,http://23.237.104.106:8080/USA_HBO2/index.m3u8$LR•IPV4•10『线路2』 -HBO,p3p://167.114.175.6:55331/66d22f6b0001f87c739b69c977f063dd$LR•IPV4•10『线路3』 -HBO,p3p://167.114.175.6:55331/623a6e38000091d497395ce957b27132$LR•IPV4•10『线路4』 -HBO,p3p://167.114.175.6:55331/623a706d0003edf59741fcc023dc0089$LR•IPV4•10『线路5』 -HBO,p3p://167.114.175.6:55331/623a700000069676974053b555b700d4$LR•IPV4•10『线路6』 -HBO,p3p://167.114.175.6:55331/64e364fb000a0212a977a1cd342976da$LR•IPV4•10『线路7』 -HBO,p3p://167.114.175.6:55331/65d07877000b028d4787830a723c4ce7$LR•IPV4•10『线路8』 -HBO,http://125.227.210.55:8153/VideoInput/play.ts$LR•IPV4•10『线路9』 -HBO,https://live-manifest.production-public.tubi.io/live/9fe78734-1db2-49b4-af7b-3c89f5f256ad/playlist.m3u8$LR•IPV4•10『线路10』 +HBO,https://live-manifest.production-public.tubi.io/live/9fe78734-1db2-49b4-af7b-3c89f5f256ad/playlist.m3u8$LR•IPV4•10『线路1』 +HBO,http://23.237.104.106:8080/USA_HBO/index.m3u8$LR•IPV4•10『线路2』 +HBO,http://23.237.104.106:8080/USA_HBO2/index.m3u8$LR•IPV4•10『线路3』 +HBO,p3p://167.114.175.6:55331/66d22f6b0001f87c739b69c977f063dd$LR•IPV4•10『线路4』 +HBO,p3p://167.114.175.6:55331/623a6e38000091d497395ce957b27132$LR•IPV4•10『线路5』 +HBO,p3p://167.114.175.6:55331/623a706d0003edf59741fcc023dc0089$LR•IPV4•10『线路6』 +HBO,p3p://167.114.175.6:55331/623a700000069676974053b555b700d4$LR•IPV4•10『线路7』 +HBO,p3p://167.114.175.6:55331/64e364fb000a0212a977a1cd342976da$LR•IPV4•10『线路8』 +HBO,p3p://167.114.175.6:55331/65d07877000b028d4787830a723c4ce7$LR•IPV4•10『线路9』 +HBO,http://125.227.210.55:8153/VideoInput/play.ts$LR•IPV4•10『线路10』 ▶️哪吒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 @@ -1141,52 +1129,52 @@ TVB生活,p3p://167.114.175.6:55331/6649aff000061a1753bc59f97f596d07$LR•IPV4 中视HD,rtmp://f13h.mine.nu/sat/tv091$LR•IPV4•2『线路1』 中视HD,http://50.7.234.10:8278/zhongshihd_twn/playlist.m3u8?ct=19226&tid=MB8B7313326473133264&tsum=ae7506028e559f3a6e2a3519b2f6a91e$LR•IPV4•2『线路2』 生命电视,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,http://37.27.111.214:8080/live/27/hls.m3u8$LR•IPV4•46『线路3』 -HISTORY,http://free.cnlive.club/channel/n20a85c83/index.m3u8?q=1752629214236$LR•IPV4•46『线路4』 -HISTORY,p3p://167.114.175.6:55331/6233e1a30007e08d7da4ab21717b3e79$LR•IPV4•46『线路5』 -HISTORY,https://d3181anftsyl2u.cloudfront.net/v1/aenetworks_alone_1/samsungheadend_us/latest/main/hls/playlist.m3u8$LR•IPV4•46『线路6』 -HISTORY,https://pb-k9ikw6ov8z4qi.akamaized.net/American_Pickers_by_History.m3u8$LR•IPV4•46『线路7』 -HISTORY,https://jmp2.uk/plu-62fb9844db5a4a0007ebc2a3.m3u8$LR•IPV4•46『线路8』 -HISTORY,https://pb-162j8hrspp1iq.akamaized.net/History_365.m3u8$LR•IPV4•46『线路9』 -HISTORY,https://jmp2.uk/plu-69dd5d7bfcb9bf5e3063cb16.m3u8$LR•IPV4•46『线路10』 -HISTORY,https://d1nzda2a2b3swt.cloudfront.net/History_Warfare_Now.m3u8$LR•IPV4•46『线路11』 -HISTORY,https://d28gzbv9fhdm3h.cloudfront.net/playlist/amg00376-magellantv-historyandwarfarenowaunzin-samsungau/playlist.m3u8$LR•IPV4•46『线路12』 -HISTORY,https://amg00376-magellan-amg00376c19-samsung-nz-1735.playouts.now.amagi.tv/playlist/amg00376-magellantv-historyandwarfarenowaunzin-samsungnz/playlist.m3u8$LR•IPV4•46『线路13』 -HISTORY,https://amg00841-amg00841c7-rakuten-uk-2820.playouts.now.amagi.tv/playlist/amg00841-aeemeafast-historyhuntersrakuten-rakutenuk/playlist.m3u8$LR•IPV4•46『线路14』 -HISTORY,https://amg00841-amg00841c9-samsung-gb-3032.playouts.now.amagi.tv/playlist/amg00841-aeemeafast-historyhunterssamsung-samsunggb/playlist.m3u8$LR•IPV4•46『线路15』 -HISTORY,https://jmp2.uk/plu-65819fc1b9adc4000813f37d.m3u8$LR•IPV4•46『线路16』 -HISTORY,https://jmp2.uk/plu-65775d29dfed030008cb3db2.m3u8$LR•IPV4•46『线路17』 -HISTORY,https://pb-m89wlp8flmjzf.akamaized.net/v1/aenetworks_modernmarvels_1/samsungheadend_us/latest/main/hls/playlist.m3u8$LR•IPV4•46『线路18』 -HISTORY,https://amg02333-pbs-amg02333c1-samsung-au-1253.playouts.now.amagi.tv/playlist/amg02333-pbsdistributionfast-pbshistory-samsungau/playlist.m3u8$LR•IPV4•46『线路19』 -HISTORY,https://amg02333-pbs-amg02333c1-samsung-nz-1254.playouts.now.amagi.tv/playlist/amg02333-pbsdistributionfast-pbshistory-samsungnz/playlist.m3u8$LR•IPV4•46『线路20』 -HISTORY,https://linear-188.frequency.stream/dist/glewedtv/188/hls/master/playlist.m3u8$LR•IPV4•46『线路21』 -HISTORY,https://linear-188.frequency.stream/dist/xumo/188/hls/master/playlist.m3u8$LR•IPV4•46『线路22』 -HISTORY,https://jmp2.uk/plu-6000a6f4c3f8550008fc9b91.m3u8$LR•IPV4•46『线路23』 -HISTORY,https://dxagbr7yc4m1d.cloudfront.net/v1/aenetworks_skills_thrills_1/samsungheadend_us/latest/main/hls/playlist.m3u8$LR•IPV4•46『线路24』 -HISTORY,https://rpn.bozztv.com/gusa/gusa-tvshollywoohistory/index.m3u8$LR•IPV4•46『线路25』 -HISTORY,http://213.91.179.28:8000/play/a0c1$LR•IPV4•46『线路26』 -HISTORY,http://45.190.28.50/HISTORY_HD/index.m3u8$LR•IPV4•46『线路27』 -HISTORY,http://88.212.15.19/live/test_history/playlist.m3u8$LR•IPV4•46『线路28』 -HISTORY,http://82.78.243.219:45739/play/a01f/index.m3u8$LR•IPV4•46『线路29』 -HISTORY,http://40.160.24.53/HISTORY_CHANNEL/index.m3u8$LR•IPV4•46『线路30』 -HISTORY,http://138.121.15.230:9002/HISTORY-2/index.m3u8$LR•IPV4•46『线路31』 -HISTORY,http://45.190.28.50/H2_HD/index.m3u8$LR•IPV4•46『线路32』 -HISTORY,https://streamer12.xploretv.si/__cl/cg:prod/__c/A1_SI_HISTORYHD_ott/__op/dash-default/__dci/__f/index.m3u8?admin=xploreTv_test_user&redirect=true$LR•IPV4•46『线路33』 -HISTORY,https://lds-timeline-rakuten.amagi.tv/playlist.m3u8$LR•IPV4•46『线路34』 -HISTORY,http://138.121.15.230:9002/HISTORY-CHANNEL/index.m3u8$LR•IPV4•46『线路35』 -HISTORY,http://103.72.101.252:8080/live/1471.m3u8$LR•IPV4•46『线路36』 -HISTORY,http://103.154.3.101:5001/live/577.m3u8$LR•IPV4•46『线路37』 -HISTORY,http://108.181.20.255:27347/livehttpplay?channel_id=23105$LR•IPV4•46『线路38』 -HISTORY,https://jmp2.uk/plu-5d767b1c126c65d0a307355f.m3u8$LR•IPV4•46『线路39』 -HISTORY,https://jmp2.uk/plu-5d4af1803e7983b391d73b13.m3u8$LR•IPV4•46『线路40』 -HISTORY,https://jmp2.uk/plu-5a4d35dfa5c02e717a234f86.m3u8$LR•IPV4•46『线路41』 -HISTORY,https://shift03.isp.bg/ViasatHistory_HD/index.m3u8$LR•IPV4•46『线路42』 -HISTORY,http://185.102.171.218/ViasatHistory/index.m3u8$LR•IPV4•46『线路43』 -HISTORY,http://315e5a5d.ottrast.com/iptv/8XFKA8883W9M5K/12101/index.m3u8$LR•IPV4•46『线路44』 -HISTORY,https://lb.dstvmultimedia.com/ViasatHistory/index.m3u8$LR•IPV4•46『线路45』 -HISTORY,http://178.124.179.122:8080/HistoryHD/index.m3u8$LR•IPV4•46『线路46』 +HISTORY,https://d3181anftsyl2u.cloudfront.net/v1/aenetworks_alone_1/samsungheadend_us/latest/main/hls/playlist.m3u8$LR•IPV4•46『线路1』 +HISTORY,https://pb-k9ikw6ov8z4qi.akamaized.net/American_Pickers_by_History.m3u8$LR•IPV4•46『线路2』 +HISTORY,https://jmp2.uk/plu-62fb9844db5a4a0007ebc2a3.m3u8$LR•IPV4•46『线路3』 +HISTORY,https://pb-162j8hrspp1iq.akamaized.net/History_365.m3u8$LR•IPV4•46『线路4』 +HISTORY,https://jmp2.uk/plu-69dd5d7bfcb9bf5e3063cb16.m3u8$LR•IPV4•46『线路5』 +HISTORY,https://d1nzda2a2b3swt.cloudfront.net/History_Warfare_Now.m3u8$LR•IPV4•46『线路6』 +HISTORY,https://d28gzbv9fhdm3h.cloudfront.net/playlist/amg00376-magellantv-historyandwarfarenowaunzin-samsungau/playlist.m3u8$LR•IPV4•46『线路7』 +HISTORY,https://amg00376-magellan-amg00376c19-samsung-nz-1735.playouts.now.amagi.tv/playlist/amg00376-magellantv-historyandwarfarenowaunzin-samsungnz/playlist.m3u8$LR•IPV4•46『线路8』 +HISTORY,https://amg00841-amg00841c7-rakuten-uk-2820.playouts.now.amagi.tv/playlist/amg00841-aeemeafast-historyhuntersrakuten-rakutenuk/playlist.m3u8$LR•IPV4•46『线路9』 +HISTORY,https://amg00841-amg00841c9-samsung-gb-3032.playouts.now.amagi.tv/playlist/amg00841-aeemeafast-historyhunterssamsung-samsunggb/playlist.m3u8$LR•IPV4•46『线路10』 +HISTORY,https://jmp2.uk/plu-65819fc1b9adc4000813f37d.m3u8$LR•IPV4•46『线路11』 +HISTORY,https://jmp2.uk/plu-65775d29dfed030008cb3db2.m3u8$LR•IPV4•46『线路12』 +HISTORY,https://pb-m89wlp8flmjzf.akamaized.net/v1/aenetworks_modernmarvels_1/samsungheadend_us/latest/main/hls/playlist.m3u8$LR•IPV4•46『线路13』 +HISTORY,https://amg02333-pbs-amg02333c1-samsung-au-1253.playouts.now.amagi.tv/playlist/amg02333-pbsdistributionfast-pbshistory-samsungau/playlist.m3u8$LR•IPV4•46『线路14』 +HISTORY,https://amg02333-pbs-amg02333c1-samsung-nz-1254.playouts.now.amagi.tv/playlist/amg02333-pbsdistributionfast-pbshistory-samsungnz/playlist.m3u8$LR•IPV4•46『线路15』 +HISTORY,https://linear-188.frequency.stream/dist/glewedtv/188/hls/master/playlist.m3u8$LR•IPV4•46『线路16』 +HISTORY,https://linear-188.frequency.stream/dist/xumo/188/hls/master/playlist.m3u8$LR•IPV4•46『线路17』 +HISTORY,https://jmp2.uk/plu-6000a6f4c3f8550008fc9b91.m3u8$LR•IPV4•46『线路18』 +HISTORY,https://dxagbr7yc4m1d.cloudfront.net/v1/aenetworks_skills_thrills_1/samsungheadend_us/latest/main/hls/playlist.m3u8$LR•IPV4•46『线路19』 +HISTORY,https://rpn.bozztv.com/gusa/gusa-tvshollywoohistory/index.m3u8$LR•IPV4•46『线路20』 +HISTORY,https://9e754fa707344ccca6d84955c8fcaf36.mediatailor.us-east-1.amazonaws.com/v1/master/44f73ba4d03e9607dcd9bebdcb8494d86964f1d8/RlaxxTV-eu_AutenticHistory/playlist.m3u8$LR•IPV4•46『线路21』 +HISTORY,http://213.91.179.28:8000/play/a0c1$LR•IPV4•46『线路22』 +HISTORY,http://45.190.28.50/HISTORY_HD/index.m3u8$LR•IPV4•46『线路23』 +HISTORY,http://88.212.15.19/live/test_history/playlist.m3u8$LR•IPV4•46『线路24』 +HISTORY,http://82.78.243.219:45739/play/a01f/index.m3u8$LR•IPV4•46『线路25』 +HISTORY,http://40.160.24.53/HISTORY_CHANNEL/index.m3u8$LR•IPV4•46『线路26』 +HISTORY,http://138.121.15.230:9002/HISTORY-2/index.m3u8$LR•IPV4•46『线路27』 +HISTORY,http://45.190.28.50/H2_HD/index.m3u8$LR•IPV4•46『线路28』 +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『线路29』 +HISTORY,https://lds-timeline-rakuten.amagi.tv/playlist.m3u8$LR•IPV4•46『线路30』 +HISTORY,http://138.121.15.230:9002/HISTORY-CHANNEL/index.m3u8$LR•IPV4•46『线路31』 +HISTORY,http://103.72.101.252:8080/live/1471.m3u8$LR•IPV4•46『线路32』 +HISTORY,http://103.154.3.101:5001/live/577.m3u8$LR•IPV4•46『线路33』 +HISTORY,http://108.181.20.255:27347/livehttpplay?channel_id=23105$LR•IPV4•46『线路34』 +HISTORY,https://jmp2.uk/plu-5d767b1c126c65d0a307355f.m3u8$LR•IPV4•46『线路35』 +HISTORY,https://jmp2.uk/plu-5d4af1803e7983b391d73b13.m3u8$LR•IPV4•46『线路36』 +HISTORY,https://jmp2.uk/plu-5a4d35dfa5c02e717a234f86.m3u8$LR•IPV4•46『线路37』 +HISTORY,https://shift03.isp.bg/ViasatHistory_HD/index.m3u8$LR•IPV4•46『线路38』 +HISTORY,http://185.102.171.218/ViasatHistory/index.m3u8$LR•IPV4•46『线路39』 +HISTORY,http://315e5a5d.ottrast.com/iptv/8XFKA8883W9M5K/12101/index.m3u8$LR•IPV4•46『线路40』 +HISTORY,https://lb.dstvmultimedia.com/ViasatHistory/index.m3u8$LR•IPV4•46『线路41』 +HISTORY,http://178.124.179.122:8080/HistoryHD/index.m3u8$LR•IPV4•46『线路42』 +HISTORY,https://cdn-ue1-prod.tsv2.amagi.tv/linear/ldsAAAAAA-timeline-samsungau/playlist.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』 🏈体育赛事🏆️,#genre# 视频_8M1080_咪视通-1,http://jackgao.top:35455/itv/3000000001000005308.m3u8?cdn=FifastbLive$LR•IPV4•2『线路1』 @@ -1308,30 +1296,30 @@ HISTORY,http://178.124.179.122:8080/HistoryHD/index.m3u8$LR•IPV4•46『线路 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•2『线路1』 -MLB NETWORK,http://40.160.24.52/MLB_Network/index.m3u8$LR•IPV4•2『线路2』 -FOX Sports,http://fl2.moveonjoy.com/FOX_Sports_1/index.m3u8$LR•IPV4•8『线路1』 -FOX Sports,https://d1jzu95oc8fgt3.cloudfront.net/FOX_Sports.m3u8$LR•IPV4•8『线路2』 -FOX Sports,https://amg02855-foxsports-amg02855c1-xumo-us-1755.playouts.now.amagi.tv/Fox-Sports-AmazonNews/playlist.m3u8$LR•IPV4•8『线路3』 -FOX Sports,https://live-manifest.production-public.tubi.io/live/6035c7fd-efff-4ec7-93dc-aa0c7a58ba47/playlist.m3u8$LR•IPV4•8『线路4』 -FOX Sports,https://jmp2.uk/plu-5a74b8e1e22a61737979c6bf.m3u8$LR•IPV4•8『线路5』 -FOX Sports,http://85.237.89.160:9590/usa-s/FOX-SPORTS-1/index.m3u8$LR•IPV4•8『线路6』 -FOX Sports,https://streamvidex.qzz.io/videx/fox2usa/index.m3u8$LR•IPV4•8『线路7』 -FOX Sports,http://108.181.20.255:27347/livehttpplay?channel_id=23054$LR•IPV4•8『线路8』 -NBA,https://stream1.freetv.fun/nba-tv-7.m3u8$LR•IPV4•8『线路1』 -NBA,https://stream1.freetv.fun/nba-tv-5.m3u8$LR•IPV4•8『线路2』 -NBA,http://170.yfvodcdn.com:19980/live/nbaTV2/hls.m3u8$LR•IPV4•8『线路3』 -NBA,p3p://167.114.175.6:55331/65a587500007bc039fca3566638e69af$LR•IPV4•8『线路4』 -NBA,https://live-manifest.production-public.tubi.io/live/553b8d5e-fd2a-4a61-bdfa-73b34c299d75/playlist.m3u8$LR•IPV4•8『线路5』 -NBA,https://jmp2.uk/plu-6792c30abc03978b9b8bb832.m3u8$LR•IPV4•8『线路6』 -NBA,https://amg00556-amg00556c3-firetv-us-6060.playouts.now.amagi.tv/playlist.m3u8$LR•IPV4•8『线路7』 -NBA,http://user.scalecdn.co:8080/live/54706135/09221986/3092.m3u8$LR•IPV4•8『线路8』 -ESPN,http://41.205.93.154/ESPN/index.m3u8$LR•IPV4•6『线路1』 -ESPN,http://38.96.178.201:80/live/ESPNHD/index.m3u8$LR•IPV4•6『线路2』 -ESPN,http://181.78.197.59:8000/play/a07z/index.m3u8$LR•IPV4•6『线路3』 -ESPN,http://181.78.197.59:8000/play/a081/index.m3u8$LR•IPV4•6『线路4』 -ESPN,http://181.78.197.59:8000/play/a07n/index.m3u8$LR•IPV4•6『线路5』 -ESPN,http://40.160.24.58/ESPN_DEPORTES/index.m3u8$LR•IPV4•6『线路6』 +MLB NETWORK,http://40.160.24.52/MLB_Network/index.m3u8$LR•IPV4•2『线路1』 +MLB NETWORK,http://fl2.moveonjoy.com/MLB_NETWORK/index.m3u8$LR•IPV4•2『线路2』 +FOX Sports,https://d1jzu95oc8fgt3.cloudfront.net/FOX_Sports.m3u8$LR•IPV4•8『线路1』 +FOX Sports,https://amg02855-foxsports-amg02855c1-xumo-us-1755.playouts.now.amagi.tv/Fox-Sports-AmazonNews/playlist.m3u8$LR•IPV4•8『线路2』 +FOX Sports,https://live-manifest.production-public.tubi.io/live/6035c7fd-efff-4ec7-93dc-aa0c7a58ba47/playlist.m3u8$LR•IPV4•8『线路3』 +FOX Sports,https://jmp2.uk/plu-5a74b8e1e22a61737979c6bf.m3u8$LR•IPV4•8『线路4』 +FOX Sports,http://85.237.89.160:9590/usa-s/FOX-SPORTS-1/index.m3u8$LR•IPV4•8『线路5』 +FOX Sports,https://streamvidex.qzz.io/videx/fox2usa/index.m3u8$LR•IPV4•8『线路6』 +FOX Sports,http://108.181.20.255:27347/livehttpplay?channel_id=23054$LR•IPV4•8『线路7』 +FOX Sports,http://fl2.moveonjoy.com/FOX_Sports_1/index.m3u8$LR•IPV4•8『线路8』 +NBA,https://live-manifest.production-public.tubi.io/live/553b8d5e-fd2a-4a61-bdfa-73b34c299d75/playlist.m3u8$LR•IPV4•8『线路1』 +NBA,https://jmp2.uk/plu-6792c30abc03978b9b8bb832.m3u8$LR•IPV4•8『线路2』 +NBA,https://amg00556-amg00556c3-firetv-us-6060.playouts.now.amagi.tv/playlist.m3u8$LR•IPV4•8『线路3』 +NBA,http://user.scalecdn.co:8080/live/54706135/09221986/3092.m3u8$LR•IPV4•8『线路4』 +NBA,https://stream1.freetv.fun/nba-tv-7.m3u8$LR•IPV4•8『线路5』 +NBA,https://stream1.freetv.fun/nba-tv-5.m3u8$LR•IPV4•8『线路6』 +NBA,http://170.yfvodcdn.com:19980/live/nbaTV2/hls.m3u8$LR•IPV4•8『线路7』 +NBA,p3p://167.114.175.6:55331/65a587500007bc039fca3566638e69af$LR•IPV4•8『线路8』 +ESPN,http://181.78.197.59:8000/play/a07z/index.m3u8$LR•IPV4•6『线路1』 +ESPN,http://181.78.197.59:8000/play/a081/index.m3u8$LR•IPV4•6『线路2』 +ESPN,http://181.78.197.59:8000/play/a07n/index.m3u8$LR•IPV4•6『线路3』 +ESPN,http://40.160.24.58/ESPN_DEPORTES/index.m3u8$LR•IPV4•6『线路4』 +ESPN,http://41.205.93.154/ESPN/index.m3u8$LR•IPV4•6『线路5』 +ESPN,http://38.96.178.201:80/live/ESPNHD/index.m3u8$LR•IPV4•6『线路6』 緯來體育,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 @@ -1522,13 +1510,12 @@ TraceSports,http://209.141.58.162:4994/proxy?url=http%3A//209.141.58.162%3A5050/ 义胆红唇,https://vip.ffzy-play6.com/20221116/7315_8765f39c/index.m3u8$LR•IPV4 义胆雄心,https://vip.ffzy-play7.com/20221129/7714_a0c75de1/index.m3u8$LR•IPV4 音乐僵尸,https://vip.ffzy-play6.com/20221207/10627_09b3f2e5/index.m3u8$LR•IPV4 -英雄,http://cdn.jdshipin.com:8880/huya.php?id=23824164$LR•IPV4•7『线路1』 -英雄,https://live.ottiptv.cc/yy/1352475619$LR•IPV4•7『线路2』 -英雄,https://vip.ffzy-play7.com/20221227/9993_9681b67b/index.m3u8$LR•IPV4•7『线路3』 -英雄,https://vip.ffzy-play.com/20221015/981_2ca5b5f9/index.m3u8$LR•IPV4•7『线路4』 -英雄,https://vip.ffzy-play6.com/20221207/10694_f9088e66/index.m3u8$LR•IPV4•7『线路5』 -英雄,https://vip.ffzy-play7.com/20221129/7743_4656dd25/index.m3u8$LR•IPV4•7『线路6』 -英雄,https://vip.ffzy-play6.com/20221112/6371_9b5bf930/index.m3u8$LR•IPV4•7『线路7』 +英雄,https://live.ottiptv.cc/yy/1352475619$LR•IPV4•6『线路1』 +英雄,https://vip.ffzy-play7.com/20221227/9993_9681b67b/index.m3u8$LR•IPV4•6『线路2』 +英雄,https://vip.ffzy-play.com/20221015/981_2ca5b5f9/index.m3u8$LR•IPV4•6『线路3』 +英雄,https://vip.ffzy-play6.com/20221207/10694_f9088e66/index.m3u8$LR•IPV4•6『线路4』 +英雄,https://vip.ffzy-play7.com/20221129/7743_4656dd25/index.m3u8$LR•IPV4•6『线路5』 +英雄,https://vip.ffzy-play6.com/20221112/6371_9b5bf930/index.m3u8$LR•IPV4•6『线路6』 赢钱专家,https://vip.ffzy-play6.com/20221113/6794_d514b390/index.m3u8$LR•IPV4 有话好好说,https://vip.ffzy-play7.com/20221112/3406_98dc6f14/index.m3u8$LR•IPV4 与龙共舞,https://vip.ffzy-play6.com/20221207/10859_1b02d27c/index.m3u8$LR•IPV4 @@ -1637,10 +1624,11 @@ A计划,https://vip.ffzy-play7.com/20221115/4412_bf4bdaf6/index.m3u8$LR•IPV4 贺岁合家欢剧场,https://live.metshop.top/huya/11602067$LR•IPV4 滇军抗战,https://live.metshop.top/huya/11342388$LR•IPV4 联合抗日,https://live.metshop.top/huya/11352910$LR•IPV4 -三国,https://live.ottiptv.cc/huya/11602081$LR•IPV4•4『线路1』 -三国,https://live.ottiptv.cc/huya/11352944$LR•IPV4•4『线路2』 -三国,https://live.metshop.top/huya/11352944$LR•IPV4•4『线路3』 -三国,http://103.193.151.146/huya.php?id=29465871$LR•IPV4•4『线路4』 +三国,https://live.ottiptv.cc/huya/11602081$LR•IPV4•5『线路1』 +三国,https://live.ottiptv.cc/huya/11352944$LR•IPV4•5『线路2』 +三国,https://goodiptv.club/douyu/5908256$LR•IPV4•5『线路3』 +三国,https://live.metshop.top/huya/11352944$LR•IPV4•5『线路4』 +三国,http://103.193.151.146/huya.php?id=29465871$LR•IPV4•5『线路5』 雍正皇帝,https://live.metshop.top/huya/11342439$LR•IPV4 许冠英合集,https://live.metshop.top/huya/11601972$LR•IPV4 未知1,http://58.39.190.143:35455/huya/23734246$LR•IPV4 @@ -1672,9 +1660,9 @@ 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=8a921813ee3b23c82763145c9f291a3b$LR•IPV4•41『线路1』 -纪录,https://v4-e6b1c5baf4e240fe63adbf68dda23435.livehwc4.com/play.kankanlive.com/live/1698423397390920.m3u8?sub_m3u8=true&edge_slice=true&user_session_id=f3fb3ddaca05941087114cf6481e1c23$LR•IPV4•41『线路2』 -纪录,https://ali-m-l.cztv.com/channels/lantian/channel012/1080p.m3u8$LR•IPV4•41『线路3』 +纪录,https://v4-702cae17a28d6e4f0c0002bba021d934.livehwc4.com/play.kankanlive.com/live/1698423397390920.m3u8?sub_m3u8=true&edge_slice=true&user_session_id=7b0844b76d8c951adb5f87864280aa1c$LR•IPV4•41『线路1』 +纪录,https://ali-m-l.cztv.com/channels/lantian/channel012/1080p.m3u8$LR•IPV4•41『线路2』 +纪录,https://v4-e6b1c5baf4e240fe63adbf68dda23435.livehwc4.com/play.kankanlive.com/live/1698423397390920.m3u8?sub_m3u8=true&edge_slice=true&user_session_id=1c7b8d97d045399d92a9b9016e62d86b$LR•IPV4•41『线路3』 纪录,http://free.cnlive.club/channel/n3f497a4c/index.m3u8?q=1752629214236$LR•IPV4•41『线路4』 纪录,http://free.cnlive.club/channel/2ae73b1a/index.m3u8?q=1752629214236$LR•IPV4•41『线路5』 纪录,http://free.cnlive.club/channel/nb957a7c/index.m3u8?q=1752629214236$LR•IPV4•41『线路6』 @@ -1704,14 +1692,14 @@ XXXXXXXXX粤,http://lxajh.top/tv/douyu.php?id=8912325$LR•IPV4 纪录,https://rt-doc.rttv.com/dvr/rtdru/rtdru1080.m3u8$LR•IPV4•41『线路30』 纪录,https://rt-rtd.rttv.com/dvr/rtdoc/playlist_4500Kb.m3u8$LR•IPV4•41『线路31』 纪录,p3p://167.114.175.6:55331/623baf7a0004e5d79c2047cd46107be2$LR•IPV4•41『线路32』 -纪录,http://23.237.104.106:8080/USA_DISCOVERY/index.m3u8$LR•IPV4•41『线路33』 -纪录,https://jmp2.uk/plu-6400f731d200410008f9b339.m3u8$LR•IPV4•41『线路34』 -纪录,https://svs.itworkscdn.net/asharqdiscoverylive/asharqd.smil/playlist_dvr.m3u8$LR•IPV4•41『线路35』 +纪录,https://jmp2.uk/plu-6400f731d200410008f9b339.m3u8$LR•IPV4•41『线路33』 +纪录,https://svs.itworkscdn.net/asharqdiscoverylive/asharqd.smil/playlist_dvr.m3u8$LR•IPV4•41『线路34』 +纪录,http://23.237.104.106:8080/USA_DISCOVERY/index.m3u8$LR•IPV4•41『线路35』 纪录,p3p://167.114.175.6:55331/62c9a44500000cd3c69dc74b77c62c82$LR•IPV4•41『线路36』 纪录,http://40.160.24.53/MTV_LIVE/index.m3u8$LR•IPV4•41『线路37』 纪录,p3p://167.114.175.6:55331/5fe16de700083ba97787607e74d90cb5$LR•IPV4•41『线路38』 -纪录,p3p://167.114.175.6:55331/644518fd0002d5953f21bedc56b6465f$LR•IPV4•41『线路39』 -纪录,https://i.mjh.nz/.r/sky-hgtv.m3u8$LR•IPV4•41『线路40』 +纪录,https://i.mjh.nz/.r/sky-hgtv.m3u8$LR•IPV4•41『线路39』 +纪录,p3p://167.114.175.6:55331/644518fd0002d5953f21bedc56b6465f$LR•IPV4•41『线路40』 纪录,p3p://167.114.175.6:55331/61e4f963000c710c55474e4e1e2273d9$LR•IPV4•41『线路41』 💓儿童专享,#genre# @@ -1724,18 +1712,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://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』 +儿童,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』 儿童,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』 @@ -1747,15 +1735,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』 -儿童,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』 +儿童,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/64bea3f00002bdf919e6522520650b26$LR•IPV4•27『线路27』 🍹定制台☕️,#genre# 韩国娱乐台,https://stream1.freetv.fun/glo-bet-1.ctv$LR•IPV4 -贝爷,http://www.douzhicloud.site:35455/douyu/4332$LR•IPV4•2『线路1』 -贝爷,http://epg.112114.xyz/douyu/252802$LR•IPV4•2『线路2』 +贝爷,http://epg.112114.xyz/douyu/252802$LR•IPV4•2『线路1』 +贝爷,http://www.douzhicloud.site:35455/douyu/4332$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 @@ -1802,11 +1790,11 @@ 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,p3p://167.114.175.6:55331/6506c5e500027c7f33a9834b5d937568$LR•IPV4•5『线路1』 -Star Movies,http://znty.dyndns.org:5010/hls/foxm.m3u8$LR•IPV4•5『线路2』 -Star Movies,http://92.36.202.5:10001/play/a01o$LR•IPV4•5『线路3』 -Star Movies,http://149.71.34.166:8000/play/a01f/index.m3u8$LR•IPV4•5『线路4』 -Star Movies,http://149.71.34.166:8000/play/a01g/index.m3u8$LR•IPV4•5『线路5』 +Star Movies,http://znty.dyndns.org:5010/hls/foxm.m3u8$LR•IPV4•5『线路1』 +Star Movies,http://92.36.202.5:10001/play/a01o$LR•IPV4•5『线路2』 +Star Movies,http://149.71.34.166:8000/play/a01f/index.m3u8$LR•IPV4•5『线路3』 +Star Movies,http://149.71.34.166:8000/play/a01g/index.m3u8$LR•IPV4•5『线路4』 +Star Movies,p3p://167.114.175.6:55331/6506c5e500027c7f33a9834b5d937568$LR•IPV4•5『线路5』 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 @@ -1823,8 +1811,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,p3p://167.114.175.6:55331/6506d285000b06bd33dad67a652e2bfd$LR•IPV4•2『线路1』 -Super Kids,https://jmp2.uk/plu-652557d93fd33c000802f995.m3u8$LR•IPV4•2『线路2』 +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』 创世电视,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 @@ -1844,47 +1832,47 @@ 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,p3p://167.114.175.6:55331/64c7ce3f000afa423db36d3f378c386d$LR•IPV4•11『线路1』 -Z,https://live.artidijitalmedya.com/artidijital_kanalz/kanalz/playlist.m3u8$LR•IPV4•11『线路2』 -Z,http://s1.media-planet.sk/live/novezamky/BratuMarian.m3u8$LR•IPV4•11『线路3』 -Z,https://jmp2.uk/plu-68e8fd7c3ede4398bc69af93.m3u8$LR•IPV4•11『线路4』 -Z,https://d39g1vxj2ef6in.cloudfront.net/v1/master/3fec3e5cac39a52b2132f9c66c83dae043dc17d4/prod-rakuten-stitched/master.m3u8?ads.xumo_channelId=88883103$LR•IPV4•11『线路5』 -Z,https://amg02393-awpg-amg02393c3-rakuten-uk-2462.playouts.now.amagi.tv/playlist/amg02393-awpg-leszamours-rakutenuk/playlist.m3u8$LR•IPV4•11『线路6』 -Z,https://jmp2.uk/plu-652d0b756208700008d758ad.m3u8$LR•IPV4•11『线路7』 -Z,https://stream.ztv.zp.ua/hls/live.m3u8$LR•IPV4•11『线路8』 -Z,https://jmp2.uk/plu-66b3af48d2d50d00083d6936.m3u8$LR•IPV4•11『线路9』 -Z,https://d1hz1p2gea2zy4.cloudfront.net/live/rmgtv/RMG-TRENDSZFR-LIVE/index.m3u8$LR•IPV4•11『线路10』 -Z,https://d1hz1p2gea2zy4.cloudfront.net/live/rmgtv/RMG-TRENDSZNL-LIVE/index.m3u8$LR•IPV4•11『线路11』 +Z,https://live.artidijitalmedya.com/artidijital_kanalz/kanalz/playlist.m3u8$LR•IPV4•11『线路1』 +Z,http://s1.media-planet.sk/live/novezamky/BratuMarian.m3u8$LR•IPV4•11『线路2』 +Z,https://jmp2.uk/plu-68e8fd7c3ede4398bc69af93.m3u8$LR•IPV4•11『线路3』 +Z,https://d39g1vxj2ef6in.cloudfront.net/v1/master/3fec3e5cac39a52b2132f9c66c83dae043dc17d4/prod-rakuten-stitched/master.m3u8?ads.xumo_channelId=88883103$LR•IPV4•11『线路4』 +Z,https://amg02393-awpg-amg02393c3-rakuten-uk-2462.playouts.now.amagi.tv/playlist/amg02393-awpg-leszamours-rakutenuk/playlist.m3u8$LR•IPV4•11『线路5』 +Z,https://jmp2.uk/plu-652d0b756208700008d758ad.m3u8$LR•IPV4•11『线路6』 +Z,https://stream.ztv.zp.ua/hls/live.m3u8$LR•IPV4•11『线路7』 +Z,https://jmp2.uk/plu-66b3af48d2d50d00083d6936.m3u8$LR•IPV4•11『线路8』 +Z,https://d1hz1p2gea2zy4.cloudfront.net/live/rmgtv/RMG-TRENDSZFR-LIVE/index.m3u8$LR•IPV4•11『线路9』 +Z,https://d1hz1p2gea2zy4.cloudfront.net/live/rmgtv/RMG-TRENDSZNL-LIVE/index.m3u8$LR•IPV4•11『线路10』 +Z,p3p://167.114.175.6:55331/64c7ce3f000afa423db36d3f378c386d$LR•IPV4•11『线路11』 博斯无限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•27『线路1』 -HITS,https://9f8e2ffcd87f4c469be7194e48f84874.mediatailor.us-west-2.amazonaws.com/v1/master/ba62fe743df0fe93366eba3a257d792884136c7f/LINEAR-802-UK-SONYONECOMEDYHITS-LG_UK/playlist.m3u8$LR•IPV4•27『线路2』 -HITS,http://37.27.111.214:8080/live/28/hls.m3u8$LR•IPV4•27『线路3』 -HITS,p3p://167.114.175.6:55331/6233e648000735057db6cf734adf440d$LR•IPV4•27『线路4』 -HITS,https://webtvstream.bhtelecom.ba/hls7/filmbox_premium.m3u8$LR•IPV4•27『线路5』 -HITS,http://88.212.15.19/live/test_film_boxpremium_hd_hevc/playlist.m3u8$LR•IPV4•27『线路6』 -HITS,http://46.149.191.217:9005/play/a01x$LR•IPV4•27『线路7』 -HITS,https://cdn10jtedge.indihometv.com/atm/DASH/hitsmovie/manifest.mpd$LR•IPV4•27『线路8』 -HITS,http://40.160.24.52/EPIX_2/index.m3u8$LR•IPV4•27『线路9』 -HITS,https://5098a8b860504a3690fd2e7c0a18d68f.mediatailor.us-west-2.amazonaws.com/v1/master/ba62fe743df0fe93366eba3a257d792884136c7f/LINEAR-817-FR-SONYONEHITSACTION-LG_FR/playlist.m3u8$LR•IPV4•27『线路10』 -HITS,https://7aa9671895264ec9a384dfed1b992171.mediatailor.us-west-2.amazonaws.com/v1/master/ba62fe743df0fe93366eba3a257d792884136c7f/LINEAR-818-FR-SONYONEHITSCOMDIE-LG_FR/playlist.m3u8$LR•IPV4•27『线路11』 -HITS,https://cdn10jtedge.indihometv.com/atm/DASH/hits/manifest.mpd$LR•IPV4•27『线路12』 -HITS,https://stream.ads.ottera.tv/playlist.m3u8?network_id=1058$LR•IPV4•27『线路13』 -HITS,https://lotus.stingray.com/manifest/ose-237ads-montreal/samsungtvplus/master.m3u8$LR•IPV4•27『线路14』 -HITS,https://d2tuyivcrvbj81.cloudfront.net/XITE_Christian_Hits.m3u8$LR•IPV4•27『线路15』 -HITS,http://31.148.48.15/Bridge_TV_Dance/index.m3u8$LR•IPV4•27『线路16』 -HITS,http://cm.hostlagarto.com:8081/hits360tv/hits360HD.myStream/playlist.m3u8$LR•IPV4•27『线路17』 -HITS,http://88.212.15.19/live/mb_hits/index.m3u8$LR•IPV4•27『线路18』 -HITS,https://test.946985.filegear-sg.me/proxy/a23981548880f405$LR•IPV4•27『线路19』 -HITS,https://stream.ottlive.co.in/punjabihits/index.m3u8$LR•IPV4•27『线路20』 -HITS,https://lotus.stingray.com/manifest/ose-214ads-montreal/samsungtvplus/master.m3u8$LR•IPV4•27『线路21』 -HITS,https://d39g1vxj2ef6in.cloudfront.net/v1/master/3fec3e5cac39a52b2132f9c66c83dae043dc17d4/prod-rakuten-stitched/master.m3u8?ads.xumo_channelId=88883053$LR•IPV4•27『线路22』 -HITS,https://lotus.stingray.com/manifest/ose-155ads-montreal/samsungtvplus/master.m3u8$LR•IPV4•27『线路23』 -HITS,https://d39g1vxj2ef6in.cloudfront.net/v1/manifest/3fec3e5cac39a52b2132f9c66c83dae043dc17d4/prod-rakuten-stitched/54947915-6504-4548-aaef-eabd451f8607/1.m3u8$LR•IPV4•27『线路24』 -HITS,https://vglivessai.akamaized.net/sg/v1/master/611d79b11b77e2f571934fd80ca1413453772ac7/e11b0319-52e8-4190-ab03-3931cc68eac9/index.m3u8$LR•IPV4•27『线路25』 -HITS,https://d726x48n2pd5h.cloudfront.net/XITE_Hits.m3u8$LR•IPV4•27『线路26』 -HITS,https://d726x48n2pd5h.cloudfront.net/v1/master/3722c60a815c199d9c0ef36c5b73da68a62b09d1/cc-skxr1pazhltvp/XITE_Hits.m3u8$LR•IPV4•27『线路27』 +HITS,https://webtvstream.bhtelecom.ba/hls7/filmbox_premium.m3u8$LR•IPV4•27『线路1』 +HITS,http://88.212.15.19/live/test_film_boxpremium_hd_hevc/playlist.m3u8$LR•IPV4•27『线路2』 +HITS,http://46.149.191.217:9005/play/a01x$LR•IPV4•27『线路3』 +HITS,https://cdn10jtedge.indihometv.com/atm/DASH/hitsmovie/manifest.mpd$LR•IPV4•27『线路4』 +HITS,http://40.160.24.52/EPIX_2/index.m3u8$LR•IPV4•27『线路5』 +HITS,https://5098a8b860504a3690fd2e7c0a18d68f.mediatailor.us-west-2.amazonaws.com/v1/master/ba62fe743df0fe93366eba3a257d792884136c7f/LINEAR-817-FR-SONYONEHITSACTION-LG_FR/playlist.m3u8$LR•IPV4•27『线路6』 +HITS,https://7aa9671895264ec9a384dfed1b992171.mediatailor.us-west-2.amazonaws.com/v1/master/ba62fe743df0fe93366eba3a257d792884136c7f/LINEAR-818-FR-SONYONEHITSCOMDIE-LG_FR/playlist.m3u8$LR•IPV4•27『线路7』 +HITS,https://cdn10jtedge.indihometv.com/atm/DASH/hits/manifest.mpd$LR•IPV4•27『线路8』 +HITS,https://stream.ads.ottera.tv/playlist.m3u8?network_id=1058$LR•IPV4•27『线路9』 +HITS,https://lotus.stingray.com/manifest/ose-237ads-montreal/samsungtvplus/master.m3u8$LR•IPV4•27『线路10』 +HITS,https://d2tuyivcrvbj81.cloudfront.net/XITE_Christian_Hits.m3u8$LR•IPV4•27『线路11』 +HITS,http://31.148.48.15/Bridge_TV_Dance/index.m3u8$LR•IPV4•27『线路12』 +HITS,http://cm.hostlagarto.com:8081/hits360tv/hits360HD.myStream/playlist.m3u8$LR•IPV4•27『线路13』 +HITS,http://88.212.15.19/live/mb_hits/index.m3u8$LR•IPV4•27『线路14』 +HITS,https://test.946985.filegear-sg.me/proxy/a23981548880f405$LR•IPV4•27『线路15』 +HITS,https://stream.ottlive.co.in/punjabihits/index.m3u8$LR•IPV4•27『线路16』 +HITS,https://lotus.stingray.com/manifest/ose-214ads-montreal/samsungtvplus/master.m3u8$LR•IPV4•27『线路17』 +HITS,https://d39g1vxj2ef6in.cloudfront.net/v1/master/3fec3e5cac39a52b2132f9c66c83dae043dc17d4/prod-rakuten-stitched/master.m3u8?ads.xumo_channelId=88883053$LR•IPV4•27『线路18』 +HITS,https://lotus.stingray.com/manifest/ose-155ads-montreal/samsungtvplus/master.m3u8$LR•IPV4•27『线路19』 +HITS,https://d39g1vxj2ef6in.cloudfront.net/v1/manifest/3fec3e5cac39a52b2132f9c66c83dae043dc17d4/prod-rakuten-stitched/54947915-6504-4548-aaef-eabd451f8607/1.m3u8$LR•IPV4•27『线路20』 +HITS,https://vglivessai.akamaized.net/sg/v1/master/611d79b11b77e2f571934fd80ca1413453772ac7/e11b0319-52e8-4190-ab03-3931cc68eac9/index.m3u8$LR•IPV4•27『线路21』 +HITS,https://d726x48n2pd5h.cloudfront.net/XITE_Hits.m3u8$LR•IPV4•27『线路22』 +HITS,https://d726x48n2pd5h.cloudfront.net/v1/master/3722c60a815c199d9c0ef36c5b73da68a62b09d1/cc-skxr1pazhltvp/XITE_Hits.m3u8$LR•IPV4•27『线路23』 +HITS,https://89514e758f814907be6d14bbc0aa66b7.mediatailor.us-west-2.amazonaws.com/v1/master/ba62fe743df0fe93366eba3a257d792884136c7f/LINEAR-800-UK-SONYONEACTIONHITS-LG_UK/playlist.m3u8$LR•IPV4•27『线路24』 +HITS,https://9f8e2ffcd87f4c469be7194e48f84874.mediatailor.us-west-2.amazonaws.com/v1/master/ba62fe743df0fe93366eba3a257d792884136c7f/LINEAR-802-UK-SONYONECOMEDYHITS-LG_UK/playlist.m3u8$LR•IPV4•27『线路25』 +HITS,http://37.27.111.214:8080/live/28/hls.m3u8$LR•IPV4•27『线路26』 +HITS,p3p://167.114.175.6:55331/6233e648000735057db6cf734adf440d$LR•IPV4•27『线路27』 探索亚洲,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 @@ -1918,9 +1906,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,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』 +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』 韩国娱乐,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 @@ -1934,8 +1922,8 @@ Boomerang,p3p://167.114.175.6:55331/621e313f0005594c28ec88582a49029c$LR•IPV4 原住民电视,p3p://167.114.175.6:55331/64450b180002b23d3eeb784a0aa62e20$LR•IPV4 EVE,p3p://167.114.175.6:55331/6445172e000920783f1aafee754f43e4$LR•IPV4 Classica古典音乐,p3p://167.114.175.6:55331/6452b4f1000c38e8744ac80744c33d67$LR•IPV4 -Mezzo Live,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』 +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』 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 @@ -1944,12 +1932,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,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』 +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』 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 @@ -1959,13 +1947,13 @@ Rock Entertainmen,p3p://167.114.175.6:55331/65ad27c7000dfceebd94ddb20bec19f4$LR 凤凰美洲,p3p://167.114.175.6:55331/5fe00fca0004e627722fbe5a480a642f$LR•IPV4 💓英语频道,#genre# -Red Bull TV,http://rbmn-live.akamaized.net/hls/live/590964/BoRB-AT/master_6660.m3u8$LR•IPV4•7『线路1』 -Red Bull TV,https://3ea22335.wurl.com/master/f36d25e7e52f1ba8d7e56eb859c636563214f541/UmFrdXRlblRWLWdiX1JlZEJ1bGxUVl9ITFM/playlist.m3u8$LR•IPV4•7『线路2』 -Red Bull TV,https://rbmn-live.akamaized.net/hls/live/590964/BoRB-AT/master.m3u8$LR•IPV4•7『线路3』 -Red Bull TV,https://db34cc6127ac459db55cab5f97cd66b9.mediatailor.us-west-2.amazonaws.com/v1/master/ba62fe743df0fe93366eba3a257d792884136c7f/LINEAR-680-WORBAUENFAST-WHALETVPLUS/680/whaletvplus/hls/master/playlist.m3u8$LR•IPV4•7『线路4』 -Red Bull TV,https://d03ae6b5c6724c24867e97a3dc04934a.mediatailor.us-west-2.amazonaws.com/v1/master/ba62fe743df0fe93366eba3a257d792884136c7f/LINEAR-1026-WORBBRPTFAST-WHALETVPLUS/1026/hls/master/playlist.m3u8$LR•IPV4•7『线路5』 -Red Bull TV,https://46cfeb23c7f74853bba7a256655a3119.mediatailor.us-west-2.amazonaws.com/v1/master/ba62fe743df0fe93366eba3a257d792884136c7f/LINEAR-582-WORBDACHDEFAST-WHALETVPLUS/582/whaletvplus/hls/master/playlist.m3u8$LR•IPV4•7『线路6』 -Red Bull TV,https://886bd3fbc782459f8de7555d32d7e9ce.mediatailor.us-west-2.amazonaws.com/v1/master/ba62fe743df0fe93366eba3a257d792884136c7f/LINEAR-957-WORBLATAMESFAST-WHALETVPLUS/957/whaletvplus/hls/master/playlist.m3u8$LR•IPV4•7『线路7』 +Red Bull TV,https://3ea22335.wurl.com/master/f36d25e7e52f1ba8d7e56eb859c636563214f541/UmFrdXRlblRWLWdiX1JlZEJ1bGxUVl9ITFM/playlist.m3u8$LR•IPV4•7『线路1』 +Red Bull TV,https://rbmn-live.akamaized.net/hls/live/590964/BoRB-AT/master.m3u8$LR•IPV4•7『线路2』 +Red Bull TV,https://db34cc6127ac459db55cab5f97cd66b9.mediatailor.us-west-2.amazonaws.com/v1/master/ba62fe743df0fe93366eba3a257d792884136c7f/LINEAR-680-WORBAUENFAST-WHALETVPLUS/680/whaletvplus/hls/master/playlist.m3u8$LR•IPV4•7『线路3』 +Red Bull TV,https://d03ae6b5c6724c24867e97a3dc04934a.mediatailor.us-west-2.amazonaws.com/v1/master/ba62fe743df0fe93366eba3a257d792884136c7f/LINEAR-1026-WORBBRPTFAST-WHALETVPLUS/1026/hls/master/playlist.m3u8$LR•IPV4•7『线路4』 +Red Bull TV,https://46cfeb23c7f74853bba7a256655a3119.mediatailor.us-west-2.amazonaws.com/v1/master/ba62fe743df0fe93366eba3a257d792884136c7f/LINEAR-582-WORBDACHDEFAST-WHALETVPLUS/582/whaletvplus/hls/master/playlist.m3u8$LR•IPV4•7『线路5』 +Red Bull TV,https://886bd3fbc782459f8de7555d32d7e9ce.mediatailor.us-west-2.amazonaws.com/v1/master/ba62fe743df0fe93366eba3a257d792884136c7f/LINEAR-957-WORBLATAMESFAST-WHALETVPLUS/957/whaletvplus/hls/master/playlist.m3u8$LR•IPV4•7『线路6』 +Red Bull TV,http://rbmn-live.akamaized.net/hls/live/590964/BoRB-AT/master_6660.m3u8$LR•IPV4•7『线路7』 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』 @@ -1988,105 +1976,103 @@ Loupe 4K,http://kkk.jjjj.jiduo.me/api.php?n=tttt&id=4726&tk=f6cc1e0a0e1a$LR•IP 🌐央视频道,#genre# CCTV兵器,http://38.75.136.137:98/gslb/dsdqpub/gfjs.m3u8?auth=testpub$LR•IPV4 -CCTV,https://live-play-hls.cctvnews.cctv.com/CCTVChannel/channel_cctv4_mbd.m3u8?auth_key=1784329200-1-b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c-2245971645866ed95972e22af68cc8d1&yid=b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c$LR•IPV4•90『线路1』 -CCTV,http://183.196.25.171:808/hls/77/index.m3u8$LR•IPV4•90『线路2』 -CCTV,https://jsv-live-play.sfccn.com/live/jsv_3920_fhd.m3u8$LR•IPV4•90『线路3』 -CCTV,http://183.196.25.171:808/hls/11/index.m3u8$LR•IPV4•90『线路4』 -CCTV,http://183.196.25.171:808/hls/93/index.m3u8$LR•IPV4•90『线路5』 -CCTV,https://live-play-hls.cctvnews.cctv.com/CCTVChannel/channel_cctv4_mbd.m3u8?auth_key=1784271600-1-b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c-6aec44040ec72def77e22587fc404005&yid=b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c$LR•IPV4•90『线路6』 -CCTV,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226895/1.m3u8?$LR•IPV6•90『线路7』 -CCTV,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226893/1.m3u8?$LR•IPV6•90『线路8』 -CCTV,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226471/1.m3u8?$LR•IPV6•90『线路9』 -CCTV,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226335/1.m3u8?$LR•IPV6•90『线路10』 -CCTV,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226469/1.m3u8?$LR•IPV6•90『线路11』 -CCTV,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226468/1.m3u8?$LR•IPV6•90『线路12』 -CCTV,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226946/1.m3u8?$LR•IPV6•90『线路13』 -CCTV,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226485/1.m3u8?$LR•IPV6•90『线路14』 -CCTV,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226944/1.m3u8?$LR•IPV6•90『线路15』 -CCTV,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226937/1.m3u8?$LR•IPV6•90『线路16』 -CCTV,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226334/1.m3u8?$LR•IPV6•90『线路17』 -CCTV,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226942/1.m3u8?$LR•IPV6•90『线路18』 -CCTV,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226316/1.m3u8?$LR•IPV6•90『线路19』 -CCTV,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226947/1.m3u8?$LR•IPV6•90『线路20』 -CCTV,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226333/1.m3u8?$LR•IPV6•90『线路21』 -CCTV,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221227002/1.m3u8?$LR•IPV6•90『线路22』 -CCTV,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226318/1.m3u8?$LR•IPV6•90『线路23』 -CCTV,http://222.223.41.27:8888/hls/2/index.m3u8$LR•IPV4•90『线路24』 -CCTV,http://116.128.243.121:85/tsfile/live/0002_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•90『线路25』 -CCTV,http://63.141.230.178:82/gslb/zbdq5.m3u8?id=cctv3hd$LR•IPV4•90『线路26』 -CCTV,http://207.56.13.146:81/cdnlive/cctv3.m3u8$LR•IPV4•90『线路27』 -CCTV,http://63.141.230.178:82/gslb/zbdq5.m3u8?id=cctv4hd$LR•IPV4•90『线路28』 -CCTV,http://74.91.26.218:82/live/cctv4hd.m3u8$LR•IPV4•90『线路29』 -CCTV,http://207.56.13.146:81/cdnlive/cctv4.m3u8$LR•IPV4•90『线路30』 -CCTV,http://38.75.136.137:98/gslb/dsdqbv/cctv5p.m3u8?auth=test20251009$LR•IPV4•90『线路31』 -CCTV,http://204.12.221.218:8181/3m1080p/cctv6.m3u8$LR•IPV4•90『线路32』 -CCTV,http://207.56.13.146:81/cdnlive/cctv6.m3u8$LR•IPV4•90『线路33』 -CCTV,http://74.91.26.218:82/live/cctv7hd.m3u8$LR•IPV4•90『线路34』 -CCTV,http://38.75.136.137:98/gslb/dsdqbv/cctv7hd.m3u8?auth=test20251009$LR•IPV4•90『线路35』 -CCTV,http://192.151.150.154/live/cctv8k.m3u8$LR•IPV4•90『线路36』 -CCTV,http://207.56.13.146:81/cdnlive/cctv8.m3u8$LR•IPV4•90『线路37』 -CCTV,http://173.208.212.130:8181/720p/cctv8.m3u8$LR•IPV4•90『线路38』 -CCTV,http://38.75.136.137:98/gslb/dsdqbv/cctv8hd.m3u8?auth=test20251009$LR•IPV4•90『线路39』 -CCTV,http://204.12.221.218:8181/3m1080p/cctv8.m3u8$LR•IPV4•90『线路40』 -CCTV,http://69.30.245.50/live/cctv8.m3u8$LR•IPV4•90『线路41』 -CCTV,http://222.223.41.27:8888/hls/9/index.m3u8$LR•IPV4•90『线路42』 -CCTV,https://hwapi.yntv.net/ew265l/z1z6s5.m3u8$LR•IPV4•90『线路43』 -CCTV,http://74.91.26.218:82/live/cctv10hd.m3u8$LR•IPV4•90『线路44』 -CCTV,http://74.91.26.218:82/live/cctv11hd.m3u8$LR•IPV4•90『线路45』 -CCTV,http://38.75.136.137:98/gslb/dsdqpub/cctv12hd.m3u8?auth=testpub$LR•IPV4•90『线路46』 -CCTV,https://event.pull.hebtv.com/jishi/cp1.m3u8$LR•IPV4•90『线路47』 -CCTV,http://pull-hls-f1.douyinliving.com/media/stream-696107587393815378/playlist.m3u8?keeptime=00093a80&wsSecret=bbbd054778ab532edfa97bf7c5395746&wsTime=6a544fee&arch_hrchy=s2&s_anchor=1&major_anchor_level=vip&t_id=037-2026071310394131FD5A22CCB9DDAFA77E-5XIF43$LR•IPV4•90『线路48』 -CCTV,http://63.141.230.178:82/gslb/zbdq5.m3u8?id=cctv13hd$LR•IPV4•90『线路49』 -CCTV,http://113.25.252.226:9901/tsfile/live/1017_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•90『线路50』 -CCTV,https://event.pull.hebtv.com/jishi/cp2.m3u8$LR•IPV4•90『线路51』 -CCTV,http://38.75.136.137:98/gslb/dsdqbv/cctv15hd.m3u8?auth=test20251009$LR•IPV4•90『线路52』 -CCTV,http://38.75.136.137:98/gslb/dsdqpub/cctv15hd.m3u8?auth=testpub$LR•IPV4•90『线路53』 -CCTV,http://38.75.136.137:98/gslb/dsdqpub/cctv17hd.m3u8?auth=testpub$LR•IPV4•90『线路54』 -CCTV,https://live-play-hls.cctvnews.cctv.com/CCTVChannel/channel_cctv4_mbd.m3u8?auth_key=1784322000-1-b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c-25fe408e6545f49f3d4eb7f92e97c764&yid=b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c$LR•IPV4•90『线路55』 -CCTV,https://shcm-stream-cf1.stream.264788.xyz/cms001/ch00000090990000001620/index.m3u8?streamid=8a034b40397504e25b3775c772237996&streamkey=01vY5fRxC8VyKg4oq30vfikHXTCAKySLP29l6OG91kQlzDttHgzNLkUw5kivm3PfNsVHJv5FgdsPBYFYI2IWpt7tfRCuFHqLT2pvX67ubMds8jl2DHtvOh0&token=1775754349-4f33f4f84a4abeba-0-91687dc8c9325092efa1d00f330d2710$LR•IPV4•90『线路56』 -CCTV,https://epg.pw/stream/ac8062ec9484078061d3bef507c15a423ac57ae4144e3fcc4b0a198dd420f911.m3u8$LR•IPV4•90『线路57』 -CCTV,http://69.30.245.50/live/cctv6.m3u8$LR•IPV4•90『线路58』 -CCTV,http://74.91.26.218:82/live/cctv8hd.m3u8$LR•IPV4•90『线路59』 -CCTV,http://74.91.26.218:82/live/cctv17hd.m3u8$LR•IPV4•90『线路60』 -CCTV,http://38.75.136.137:98/gslb/dsdqpub/wsjk.m3u8?auth=testpub$LR•IPV4•90『线路61』 -CCTV,http://38.75.136.137:98/gslb/dsdqpub/ystq.m3u8?auth=testpub$LR•IPV4•90『线路62』 -CCTV,http://38.75.136.137:98/gslb/dsdqpub/dyjc.m3u8?auth=testpub$LR•IPV4•90『线路63』 -CCTV,http://38.75.136.137:98/gslb/dsdqpub/fyjc.m3u8?auth=testpub$LR•IPV4•90『线路64』 -CCTV,http://38.75.136.137:98/gslb/dsdqpub/hjjc.m3u8?auth=testpub$LR•IPV4•90『线路65』 -CCTV,http://38.75.136.137:98/gslb/dsdqpub/fyzq.m3u8?auth=testpub$LR•IPV4•90『线路66』 -CCTV,http://38.75.136.137:98/gslb/dsdqpub/fyyy.m3u8?auth=testpub$LR•IPV4•90『线路67』 -CCTV,http://38.75.136.137:98/gslb/dsdqpub/sjdl.m3u8?auth=testpub$LR•IPV4•90『线路68』 -CCTV,http://38.75.136.137:98/gslb/dsdqpub/dszn.m3u8?auth=testpub$LR•IPV4•90『线路69』 -CCTV,http://38.75.136.137:98/gslb/dsdqpub/ysjp.m3u8?auth=testpub$LR•IPV4•90『线路70』 -CCTV,http://38.75.136.137:98/gslb/dsdqpub/nxss.m3u8?auth=testpub$LR•IPV4•90『线路71』 -CCTV,http://fn.tmde.top:35455/nptv/cctv4k.m3u8$LR•IPV4•90『线路72』 -CCTV,http://fn.tmde.top:35455/nptv/cctv8k.m3u8$LR•IPV4•90『线路73』 -CCTV,http://xc.mfykeke.top:35455/nptv/cctv4k.m3u8$LR•IPV4•90『线路74』 -CCTV,http://xc.mfykeke.top:35455/nptv/cctv8k.m3u8$LR•IPV4•90『线路75』 -CCTV,http://69.30.245.50/live/cctv1.m3u8$LR•IPV4•90『线路76』 -CCTV,http://74.91.26.218:82/live/cctv1hd.m3u8$LR•IPV4•90『线路77』 -CCTV,https://global.cgtn.cicc.media.caton.cloud/master/cgtn-america.m3u8$LR•IPV4•90『线路78』 -CCTV,https://dash2.antik.sk/live/test_cctv_tizen/playlist.m3u8$LR•IPV4•90『线路79』 -CCTV,http://go.bkpcp.top/mg/cctv13$LR•IPV4•90『线路80』 -CCTV,https://cdn3.163189.xyz/163189/cctv13$LR•IPV4•90『线路81』 -CCTV,http://74.91.26.218:82/live/cctv3hd.m3u8$LR•IPV4•90『线路82』 -CCTV,https://solo.disfrutaenlared.com:1936/redcctv/redcctv/playlist.m3u8$LR•IPV4•90『线路83』 -CCTV,http://74.91.26.218:82/live/cctv14hd.m3u8$LR•IPV4•90『线路84』 -CCTV,https://xykt-fix.github.io/play/a02e/index.m3u8$LR•IPV4•90『线路85』 -CCTV,http://74.91.26.218:82/live/cctv12hd.m3u8$LR•IPV4•90『线路86』 -CCTV,http://74.91.26.218:82/live/cctv16hd.m3u8$LR•IPV4•90『线路87』 -CCTV,http://38.75.136.137:98/gslb/dsdqpub/gefwq.m3u8?auth=testpub$LR•IPV4•90『线路88』 -CCTV,http://74.91.26.218:82/live/cctv2hd.m3u8$LR•IPV4•90『线路89』 -CCTV,https://xykt-fix.github.io/Y77.m3u8$LR•IPV4•90『线路90』 +CCTV,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226895/1.m3u8?$LR•IPV6•89『线路1』 +CCTV,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226893/1.m3u8?$LR•IPV6•89『线路2』 +CCTV,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226471/1.m3u8?$LR•IPV6•89『线路3』 +CCTV,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226335/1.m3u8?$LR•IPV6•89『线路4』 +CCTV,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226469/1.m3u8?$LR•IPV6•89『线路5』 +CCTV,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226468/1.m3u8?$LR•IPV6•89『线路6』 +CCTV,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226946/1.m3u8?$LR•IPV6•89『线路7』 +CCTV,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226485/1.m3u8?$LR•IPV6•89『线路8』 +CCTV,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226944/1.m3u8?$LR•IPV6•89『线路9』 +CCTV,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226937/1.m3u8?$LR•IPV6•89『线路10』 +CCTV,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226334/1.m3u8?$LR•IPV6•89『线路11』 +CCTV,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226942/1.m3u8?$LR•IPV6•89『线路12』 +CCTV,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226316/1.m3u8?$LR•IPV6•89『线路13』 +CCTV,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226947/1.m3u8?$LR•IPV6•89『线路14』 +CCTV,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226333/1.m3u8?$LR•IPV6•89『线路15』 +CCTV,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221227002/1.m3u8?$LR•IPV6•89『线路16』 +CCTV,http://[2409:8087:8:21::18]:6610/otttv.bj.chinamobile.com/PLTV/88888888/224/3221226318/1.m3u8?$LR•IPV6•89『线路17』 +CCTV,http://222.223.41.27:8888/hls/2/index.m3u8$LR•IPV4•89『线路18』 +CCTV,http://116.128.243.121:85/tsfile/live/0002_1.m3u8?key=txiptv&playlive=0&authid=0$LR•IPV4•89『线路19』 +CCTV,http://63.141.230.178:82/gslb/zbdq5.m3u8?id=cctv3hd$LR•IPV4•89『线路20』 +CCTV,http://207.56.13.146:81/cdnlive/cctv3.m3u8$LR•IPV4•89『线路21』 +CCTV,http://63.141.230.178:82/gslb/zbdq5.m3u8?id=cctv4hd$LR•IPV4•89『线路22』 +CCTV,http://74.91.26.218:82/live/cctv4hd.m3u8$LR•IPV4•89『线路23』 +CCTV,http://207.56.13.146:81/cdnlive/cctv4.m3u8$LR•IPV4•89『线路24』 +CCTV,http://38.75.136.137:98/gslb/dsdqbv/cctv5p.m3u8?auth=test20251009$LR•IPV4•89『线路25』 +CCTV,http://204.12.221.218:8181/3m1080p/cctv6.m3u8$LR•IPV4•89『线路26』 +CCTV,http://207.56.13.146:81/cdnlive/cctv6.m3u8$LR•IPV4•89『线路27』 +CCTV,http://74.91.26.218:82/live/cctv7hd.m3u8$LR•IPV4•89『线路28』 +CCTV,http://38.75.136.137:98/gslb/dsdqbv/cctv7hd.m3u8?auth=test20251009$LR•IPV4•89『线路29』 +CCTV,http://192.151.150.154/live/cctv8k.m3u8$LR•IPV4•89『线路30』 +CCTV,http://207.56.13.146:81/cdnlive/cctv8.m3u8$LR•IPV4•89『线路31』 +CCTV,http://173.208.212.130:8181/720p/cctv8.m3u8$LR•IPV4•89『线路32』 +CCTV,http://38.75.136.137:98/gslb/dsdqbv/cctv8hd.m3u8?auth=test20251009$LR•IPV4•89『线路33』 +CCTV,http://204.12.221.218:8181/3m1080p/cctv8.m3u8$LR•IPV4•89『线路34』 +CCTV,http://69.30.245.50/live/cctv8.m3u8$LR•IPV4•89『线路35』 +CCTV,http://222.223.41.27:8888/hls/9/index.m3u8$LR•IPV4•89『线路36』 +CCTV,https://hwapi.yntv.net/ew265l/z1z6s5.m3u8$LR•IPV4•89『线路37』 +CCTV,http://74.91.26.218:82/live/cctv10hd.m3u8$LR•IPV4•89『线路38』 +CCTV,http://74.91.26.218:82/live/cctv11hd.m3u8$LR•IPV4•89『线路39』 +CCTV,http://38.75.136.137:98/gslb/dsdqpub/cctv12hd.m3u8?auth=testpub$LR•IPV4•89『线路40』 +CCTV,https://event.pull.hebtv.com/jishi/cp1.m3u8$LR•IPV4•89『线路41』 +CCTV,http://pull-hls-f1.douyinliving.com/media/stream-696107587393815378/playlist.m3u8?keeptime=00093a80&wsSecret=bbbd054778ab532edfa97bf7c5395746&wsTime=6a544fee&arch_hrchy=s2&s_anchor=1&major_anchor_level=vip&t_id=037-2026071310394131FD5A22CCB9DDAFA77E-5XIF43$LR•IPV4•89『线路42』 +CCTV,http://63.141.230.178:82/gslb/zbdq5.m3u8?id=cctv13hd$LR•IPV4•89『线路43』 +CCTV,http://113.25.252.226:9901/tsfile/live/1017_1.m3u8?key=txiptv&playlive=1&authid=0$LR•IPV4•89『线路44』 +CCTV,https://event.pull.hebtv.com/jishi/cp2.m3u8$LR•IPV4•89『线路45』 +CCTV,http://38.75.136.137:98/gslb/dsdqbv/cctv15hd.m3u8?auth=test20251009$LR•IPV4•89『线路46』 +CCTV,http://38.75.136.137:98/gslb/dsdqpub/cctv15hd.m3u8?auth=testpub$LR•IPV4•89『线路47』 +CCTV,http://38.75.136.137:98/gslb/dsdqpub/cctv17hd.m3u8?auth=testpub$LR•IPV4•89『线路48』 +CCTV,https://live-play-hls.cctvnews.cctv.com/CCTVChannel/channel_cctv4_mbd.m3u8?auth_key=1784332800-1-b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c-1f6c18588a391e749b10db985cd21620&yid=b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c$LR•IPV4•89『线路49』 +CCTV,https://shcm-stream-cf1.stream.264788.xyz/cms001/ch00000090990000001620/index.m3u8?streamid=8a034b40397504e25b3775c772237996&streamkey=01vY5fRxC8VyKg4oq30vfikHXTCAKySLP29l6OG91kQlzDttHgzNLkUw5kivm3PfNsVHJv5FgdsPBYFYI2IWpt7tfRCuFHqLT2pvX67ubMds8jl2DHtvOh0&token=1775754349-4f33f4f84a4abeba-0-91687dc8c9325092efa1d00f330d2710$LR•IPV4•89『线路50』 +CCTV,https://epg.pw/stream/ac8062ec9484078061d3bef507c15a423ac57ae4144e3fcc4b0a198dd420f911.m3u8$LR•IPV4•89『线路51』 +CCTV,https://live-play-hls.cctvnews.cctv.com/CCTVChannel/channel_cctv4_mbd.m3u8?auth_key=1784336400-1-b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c-49830e80d2c0d40fea8492a5581b9b73&yid=b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c$LR•IPV4•89『线路52』 +CCTV,http://183.196.25.171:808/hls/77/index.m3u8$LR•IPV4•89『线路53』 +CCTV,http://183.196.25.171:808/hls/11/index.m3u8$LR•IPV4•89『线路54』 +CCTV,http://183.196.25.171:808/hls/93/index.m3u8$LR•IPV4•89『线路55』 +CCTV,https://live-play-hls.cctvnews.cctv.com/CCTVChannel/channel_cctv4_mbd.m3u8?auth_key=1784271600-1-b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c-6aec44040ec72def77e22587fc404005&yid=b59134a2ead43d7f783f943c8f535e7bb80c5169575b2e8efcd5b3ddea21b41c$LR•IPV4•89『线路56』 +CCTV,http://69.30.245.50/live/cctv6.m3u8$LR•IPV4•89『线路57』 +CCTV,http://38.75.136.137:98/gslb/dsdqpub/fyjc.m3u8?auth=testpub$LR•IPV4•89『线路58』 +CCTV,http://38.75.136.137:98/gslb/dsdqpub/dyjc.m3u8?auth=testpub$LR•IPV4•89『线路59』 +CCTV,http://69.30.245.50/live/cctv1.m3u8$LR•IPV4•89『线路60』 +CCTV,http://74.91.26.218:82/live/cctv1hd.m3u8$LR•IPV4•89『线路61』 +CCTV,https://global.cgtn.cicc.media.caton.cloud/master/cgtn-america.m3u8$LR•IPV4•89『线路62』 +CCTV,https://dash2.antik.sk/live/test_cctv_tizen/playlist.m3u8$LR•IPV4•89『线路63』 +CCTV,http://go.bkpcp.top/mg/cctv13$LR•IPV4•89『线路64』 +CCTV,https://cdn3.163189.xyz/163189/cctv13$LR•IPV4•89『线路65』 +CCTV,http://74.91.26.218:82/live/cctv8hd.m3u8$LR•IPV4•89『线路66』 +CCTV,http://74.91.26.218:82/live/cctv3hd.m3u8$LR•IPV4•89『线路67』 +CCTV,http://38.75.136.137:98/gslb/dsdqpub/ysjp.m3u8?auth=testpub$LR•IPV4•89『线路68』 +CCTV,https://solo.disfrutaenlared.com:1936/redcctv/redcctv/playlist.m3u8$LR•IPV4•89『线路69』 +CCTV,http://74.91.26.218:82/live/cctv14hd.m3u8$LR•IPV4•89『线路70』 +CCTV,https://xykt-fix.github.io/play/a02e/index.m3u8$LR•IPV4•89『线路71』 +CCTV,http://38.75.136.137:98/gslb/dsdqpub/fyyy.m3u8?auth=testpub$LR•IPV4•89『线路72』 +CCTV,http://74.91.26.218:82/live/cctv12hd.m3u8$LR•IPV4•89『线路73』 +CCTV,http://38.75.136.137:98/gslb/dsdqpub/wsjk.m3u8?auth=testpub$LR•IPV4•89『线路74』 +CCTV,http://38.75.136.137:98/gslb/dsdqpub/nxss.m3u8?auth=testpub$LR•IPV4•89『线路75』 +CCTV,http://38.75.136.137:98/gslb/dsdqpub/hjjc.m3u8?auth=testpub$LR•IPV4•89『线路76』 +CCTV,http://74.91.26.218:82/live/cctv16hd.m3u8$LR•IPV4•89『线路77』 +CCTV,http://38.75.136.137:98/gslb/dsdqpub/ystq.m3u8?auth=testpub$LR•IPV4•89『线路78』 +CCTV,http://38.75.136.137:98/gslb/dsdqpub/gefwq.m3u8?auth=testpub$LR•IPV4•89『线路79』 +CCTV,http://38.75.136.137:98/gslb/dsdqpub/fyzq.m3u8?auth=testpub$LR•IPV4•89『线路80』 +CCTV,http://74.91.26.218:82/live/cctv2hd.m3u8$LR•IPV4•89『线路81』 +CCTV,https://xykt-fix.github.io/Y77.m3u8$LR•IPV4•89『线路82』 +CCTV,http://38.75.136.137:98/gslb/dsdqpub/sjdl.m3u8?auth=testpub$LR•IPV4•89『线路83』 +CCTV,http://74.91.26.218:82/live/cctv17hd.m3u8$LR•IPV4•89『线路84』 +CCTV,http://38.75.136.137:98/gslb/dsdqpub/dszn.m3u8?auth=testpub$LR•IPV4•89『线路85』 +CCTV,http://fn.tmde.top:35455/nptv/cctv4k.m3u8$LR•IPV4•89『线路86』 +CCTV,http://fn.tmde.top:35455/nptv/cctv8k.m3u8$LR•IPV4•89『线路87』 +CCTV,http://xc.mfykeke.top:35455/nptv/cctv4k.m3u8$LR•IPV4•89『线路88』 +CCTV,http://xc.mfykeke.top:35455/nptv/cctv8k.m3u8$LR•IPV4•89『线路89』 明星,#genre# 周星星,http://live.metshop.top/huya/11336587?cdn=alicdn$LR•IPV4 -周星驰,http://cdn.jdshipin.com:8880/huya.php?id=11342412$LR•IPV4 梁家辉,http://live.metshop.top/huya/11342429?cdn=alicdn$LR•IPV4 -刘德华,http://live.metshop.top/huya/11342424?cdn=alicdn$LR•IPV4•2『线路1』 -刘德华,http://epg.112114.xyz/douyu/2516864$LR•IPV4•2『线路2』 -林正英,http://zzy789.xyz/douyu1.php?id=7356023$LR•IPV4•2『线路1』 -林正英,http://epg.112114.xyz/douyu/218859$LR•IPV4•2『线路2』 +刘德华,http://epg.112114.xyz/douyu/2516864$LR•IPV4•2『线路1』 +刘德华,http://live.metshop.top/huya/11342424?cdn=alicdn$LR•IPV4•2『线路2』 +林正英,http://epg.112114.xyz/douyu/218859$LR•IPV4•2『线路1』 +林正英,http://zzy789.xyz/douyu1.php?id=7356023$LR•IPV4•2『线路2』 主题片,#genre# 谍战片,http://live.metshop.top/huya/21059587?cdn=alicdn$LR•IPV4 @@ -2268,22 +2254,22 @@ YOUNG,https://s.emisoras.tv:8081/penielkids/index.m3u8$LR•IPV4•3『线路3 浙江教科影院,http://ali-m-l.cztv.com/channels/lantian/channel004/1080p.m3u8?zzhed$LR•IPV4•2『线路2』 舟山新闻综合,http://play-sh13.quklive.com/live/1699001836208185.m3u8?auth_key=2027429324-c77bb6a7063c4cdea57f09ca22f9ef12-0-39c19a21f73b823db2150ea45b147eb2$LR•IPV4 浙江新闻,https://ali-m-l.cztv.com/channels/lantian/channel007/1080p.m3u8$LR•IPV4•34『线路1』 -浙江新闻,https://ali-m-l.cztv.com/channels/lantian/channel007/1080p.m3u8?$LR•IPV4•34『线路2』 -浙江新闻,http://ali-m-l.cztv.com/channels/lantian/channel007/720p.m3u8$LR•IPV4•34『线路3』 -浙江新闻,https://stream1.freetv.fun/zhe-jiang-xin-wen-11.m3u8$LR•IPV4•34『线路4』 -浙江新闻,http://ali-xwl.cztv.com/live/channel07720Plxw.m3u8$LR•IPV4•34『线路5』 -浙江新闻,https://stream1.freetv.fun/zhe-jiang-xin-wen-6.m3u8$LR•IPV4•34『线路6』 -浙江新闻,https://stream1.freetv.fun/zhe-jiang-xin-wen-4.m3u8$LR•IPV4•34『线路7』 -浙江新闻,https://stream1.freetv.fun/zhe-jiang-xin-wen-3.m3u8$LR•IPV4•34『线路8』 -浙江新闻,https://stream1.freetv.fun/zhe-jiang-xin-wen-1.m3u8$LR•IPV4•34『线路9』 -浙江新闻,https://t.freetv.fun/live/zhe-jiang-xin-wen-2.m3u8$LR•IPV4•34『线路10』 -浙江新闻,https://stream1.freetv.fun/zhe-jiang-xin-wen-2.m3u8$LR•IPV4•34『线路11』 -浙江新闻,https://t.freetv.fun/live/zhe-jiang-xin-wen-3.m3u8$LR•IPV4•34『线路12』 -浙江新闻,http://ali-xwl.cztv.com/live/channel071080Plxw.m3u8$LR•IPV4•34『线路13』 -浙江新闻,https://ali-m-l.cztv.com/channels/lantian/channel07/720p.m3u8$LR•IPV4•34『线路14』 -浙江新闻,https://stream1.freetv.fun/7fa07158e038a9bae3747a0cb9f8e8ff1aaba32669d28d99a498716f16569c1d.m3u8$LR•IPV4•34『线路15』 -浙江新闻,https://stream1.freetv.fun/zhe-jiang-xin-wen-9.m3u8$LR•IPV4•34『线路16』 -浙江新闻,https://stream1.freetv.fun/zhe-jiang-xin-wen-7.m3u8$LR•IPV4•34『线路17』 +浙江新闻,http://ali-m-l.cztv.com/channels/lantian/channel007/720p.m3u8$LR•IPV4•34『线路2』 +浙江新闻,https://stream1.freetv.fun/zhe-jiang-xin-wen-11.m3u8$LR•IPV4•34『线路3』 +浙江新闻,http://ali-xwl.cztv.com/live/channel07720Plxw.m3u8$LR•IPV4•34『线路4』 +浙江新闻,https://stream1.freetv.fun/zhe-jiang-xin-wen-6.m3u8$LR•IPV4•34『线路5』 +浙江新闻,https://stream1.freetv.fun/zhe-jiang-xin-wen-4.m3u8$LR•IPV4•34『线路6』 +浙江新闻,https://stream1.freetv.fun/zhe-jiang-xin-wen-3.m3u8$LR•IPV4•34『线路7』 +浙江新闻,https://stream1.freetv.fun/zhe-jiang-xin-wen-1.m3u8$LR•IPV4•34『线路8』 +浙江新闻,https://t.freetv.fun/live/zhe-jiang-xin-wen-2.m3u8$LR•IPV4•34『线路9』 +浙江新闻,https://stream1.freetv.fun/zhe-jiang-xin-wen-2.m3u8$LR•IPV4•34『线路10』 +浙江新闻,https://t.freetv.fun/live/zhe-jiang-xin-wen-3.m3u8$LR•IPV4•34『线路11』 +浙江新闻,http://ali-xwl.cztv.com/live/channel071080Plxw.m3u8$LR•IPV4•34『线路12』 +浙江新闻,https://ali-m-l.cztv.com/channels/lantian/channel07/720p.m3u8$LR•IPV4•34『线路13』 +浙江新闻,https://stream1.freetv.fun/7fa07158e038a9bae3747a0cb9f8e8ff1aaba32669d28d99a498716f16569c1d.m3u8$LR•IPV4•34『线路14』 +浙江新闻,https://stream1.freetv.fun/zhe-jiang-xin-wen-9.m3u8$LR•IPV4•34『线路15』 +浙江新闻,https://stream1.freetv.fun/zhe-jiang-xin-wen-7.m3u8$LR•IPV4•34『线路16』 +浙江新闻,https://ali-m-l.cztv.com/channels/lantian/channel007/1080p.m3u8?$LR•IPV4•34『线路17』 浙江新闻,http://ali-m-l.cztv.com/channels/lantian/channel007/1080p.m3u8?zzhed$LR•IPV4•34『线路18』 浙江新闻,http://ali-m-l.cztv.com/channels/lantian/channel007/1080p.m3u8$LR•IPV4•34『线路19』 浙江新闻,https://t.freetv.fun/live/zhe-jiang-xin-wen-1.m3u8$LR•IPV4•34『线路20』 @@ -2359,23 +2345,23 @@ YOUNG,https://s.emisoras.tv:8081/penielkids/index.m3u8$LR•IPV4•3『线路3 浙江教科,http://ali-xwl.cztv.com/live/channel041080Plxw.m3u8$LR•IPV4•8『线路6』 浙江教科,http://ali-xwl.cztv.com/live/channel04720Plxw.m3u8$LR•IPV4•8『线路7』 浙江教科,http://ali-m-l.cztv.com/channels/lantian/channel04/1080p.m3u8$LR•IPV4•8『线路8』 -浙江钱江,https://ali-m-l.cztv.com/channels/lantian/channel002/1080p.m3u8$LR•IPV4•19『线路1』 -浙江钱江,http://l.cztvcloud.com/channels/lantian/SXyuyao2/720p.m3u8$LR•IPV4•19『线路2』 -浙江钱江,http://ali-m-l.cztv.com/channels/lantian/channel02/1080p.m3u8$LR•IPV4•19『线路3』 -浙江钱江,https://stream1.freetv.fun/zhe-jiang-qian-jiang-du-shi-2.m3u8$LR•IPV4•19『线路4』 -浙江钱江,https://stream1.freetv.fun/zhe-jiang-qian-jiang-du-shi-4.ctv$LR•IPV4•19『线路5』 -浙江钱江,https://ali-m-l.cztv.com/channels/lantian/channel002/1080p.m3u8\r\n$LR•IPV4•19『线路6』 -浙江钱江,http://ali-xwl.cztv.com/live/channel021080Plxw.m3u8$LR•IPV4•19『线路7』 -浙江钱江,https://stream1.freetv.fun/zhe-jiang-qian-jiang-du-shi-1.m3u8$LR•IPV4•19『线路8』 -浙江钱江,https://stream1.freetv.fun/bf079ada709563bdd095159c02dfb5afb53c24e643b73f987100b9d25e9c8f41.m3u8$LR•IPV4•19『线路9』 -浙江钱江,http://api3.52tb.xyz/info?id=436&token=20230226bgyszp$LR•IPV4•19『线路10』 -浙江钱江,https://stream1.freetv.fun/zhe-jiang-qian-jiang-du-shi-5.ctv$LR•IPV4•19『线路11』 -浙江钱江,https://stream1.freetv.fun/zhe-jiang-qian-jiang-du-shi-3.ctv$LR•IPV4•19『线路12』 -浙江钱江,https://t.freetv.fun/live/zhe-jiang-qian-jiang-du-shi-3.m3u8$LR•IPV4•19『线路13』 -浙江钱江,http://120.55.49.231:3095/rtp/233.50.201.132:5140$LR•IPV4•19『线路14』 -浙江钱江,https://t.freetv.fun/live/zhe-jiang-qian-jiang-du-shi-1.m3u8$LR•IPV4•19『线路15』 -浙江钱江,https://t.freetv.fun/live/zhe-jiang-qian-jiang-du-shi-2.m3u8$LR•IPV4•19『线路16』 -浙江钱江,http://ali-xwl.cztv.com/live/channel02720Plxw.m3u8$LR•IPV4•19『线路17』 +浙江钱江,http://l.cztvcloud.com/channels/lantian/SXyuyao2/720p.m3u8$LR•IPV4•19『线路1』 +浙江钱江,http://ali-m-l.cztv.com/channels/lantian/channel02/1080p.m3u8$LR•IPV4•19『线路2』 +浙江钱江,https://stream1.freetv.fun/zhe-jiang-qian-jiang-du-shi-2.m3u8$LR•IPV4•19『线路3』 +浙江钱江,https://stream1.freetv.fun/zhe-jiang-qian-jiang-du-shi-4.ctv$LR•IPV4•19『线路4』 +浙江钱江,https://ali-m-l.cztv.com/channels/lantian/channel002/1080p.m3u8\r\n$LR•IPV4•19『线路5』 +浙江钱江,http://ali-xwl.cztv.com/live/channel021080Plxw.m3u8$LR•IPV4•19『线路6』 +浙江钱江,https://stream1.freetv.fun/zhe-jiang-qian-jiang-du-shi-1.m3u8$LR•IPV4•19『线路7』 +浙江钱江,https://stream1.freetv.fun/bf079ada709563bdd095159c02dfb5afb53c24e643b73f987100b9d25e9c8f41.m3u8$LR•IPV4•19『线路8』 +浙江钱江,http://api3.52tb.xyz/info?id=436&token=20230226bgyszp$LR•IPV4•19『线路9』 +浙江钱江,https://stream1.freetv.fun/zhe-jiang-qian-jiang-du-shi-5.ctv$LR•IPV4•19『线路10』 +浙江钱江,https://stream1.freetv.fun/zhe-jiang-qian-jiang-du-shi-3.ctv$LR•IPV4•19『线路11』 +浙江钱江,https://t.freetv.fun/live/zhe-jiang-qian-jiang-du-shi-3.m3u8$LR•IPV4•19『线路12』 +浙江钱江,http://120.55.49.231:3095/rtp/233.50.201.132:5140$LR•IPV4•19『线路13』 +浙江钱江,https://t.freetv.fun/live/zhe-jiang-qian-jiang-du-shi-1.m3u8$LR•IPV4•19『线路14』 +浙江钱江,https://t.freetv.fun/live/zhe-jiang-qian-jiang-du-shi-2.m3u8$LR•IPV4•19『线路15』 +浙江钱江,http://ali-xwl.cztv.com/live/channel02720Plxw.m3u8$LR•IPV4•19『线路16』 +浙江钱江,http://ali-m-l.cztv.com/channels/lantian/channel002/1080p.m3u8$LR•IPV4•19『线路17』 浙江钱江,https://t.freetv.fun/live/zhe-jiang-qian-jiang-du-shi.m3u8$LR•IPV4•19『线路18』 浙江钱江,http://ali-m-l.cztv.com/channels/lantian/channel002/720p.m3u8$LR•IPV4•19『线路19』 公共新闻,https://stream1.freetv.fun/zhe-jiang-gong-gong-xin-wen-1.m3u8$LR•IPV4•6『线路1』 @@ -2597,3 +2583,8 @@ YOUNG,https://s.emisoras.tv:8081/penielkids/index.m3u8$LR•IPV4•3『线路3 汕头经济,https://stream1.freetv.fun/shan-tou-jing-ji-4.ctv$LR•IPV4•11『线路10』 汕头经济,https://stream1.freetv.fun/shan-tou-jing-ji-6.ctv$LR•IPV4•11『线路11』 广东少儿,http://gmxw.7766.org:808/hls/175/index.m3u8$LR•IPV4 + +上海,#genre# +上海新闻,http://t.061899.xyz/tl/tl.php?id=shxwzh$LR•IPV4 +七彩戏剧,http://t.061899.xyz/tl/tl.php?id=qcxj$LR•IPV4 +法治天地,http://t.061899.xyz/tl/tl.php?id=fztd$LR•IPV4 diff --git a/潇洒/README.md b/潇洒/README.md new file mode 100644 index 00000000..8b137891 --- /dev/null +++ b/潇洒/README.md @@ -0,0 +1 @@ + diff --git a/潇洒/TVBox接口加密解密.py b/潇洒/TVBox接口加密解密.py new file mode 100644 index 00000000..373f0ce6 --- /dev/null +++ b/潇洒/TVBox接口加密解密.py @@ -0,0 +1,154 @@ +import json +import os +import sys +from pathlib import Path +from Crypto.Cipher import AES +from Crypto.Util.Padding import pad, unpad + +class 文件加解密器: + def __init__(self, key="1234567890123", iv="1234567890123"): + self.key = key + self.iv = iv + + def 字符串转hex(self, 文本): + return 文本.encode().hex() + + def hex转字符串(self, hex文本): + return bytes.fromhex(hex文本).decode() + + def 加密文件(self, 输入文件, 输出文件): + """加密单个文件""" + try: + print(f"加密: {输入文件} -> {输出文件}") + + with open(输入文件, 'r', encoding='utf-8') as f: + data = json.load(f) + + # AES加密 + 填充key = self.key.ljust(16, '0').encode() + 填充iv = self.iv.ljust(16, '0').encode() + cipher = AES.new(填充key, AES.MODE_CBC, 填充iv) + encrypted = cipher.encrypt(pad(json.dumps(data, ensure_ascii=False).encode(), 16)) + + # 数据包装并转Hex + header_hex = self.字符串转hex(f"$#{self.key}#$") + cipher_hex = encrypted.hex() + iv_hex = self.字符串转hex(self.iv) + final_hex = header_hex + cipher_hex + iv_hex + + with open(输出文件, 'w') as f: + f.write(final_hex) + + print(f"✓ 加密成功: {输入文件}") + return True + + except Exception as e: + print(f"✗ 加密失败 {输入文件}: {e}") + return False + + def 解密文件(self, 输入文件, 输出文件): + """解密单个文件""" + try: + print(f"解密: {输入文件} -> {输出文件}") + + with open(输入文件, 'r', encoding='utf-8') as f: + hex数据 = f.read().strip() + + # 解析Hex数据 + header_end = hex数据.find(self.字符串转hex("#$")) + 4 + if header_end == -1: + raise ValueError("文件格式错误,未找到有效的头部标记") + + header_hex, iv_hex = hex数据[:header_end], hex数据[-26:] + cipher_hex = hex数据[header_end:-26] + + # 提取key和iv + real_key = self.hex转字符串(header_hex)[2:-2] + real_iv = self.hex转字符串(iv_hex) + + # AES解密 + 填充key = real_key.ljust(16, '0').encode() + 填充iv = real_iv.ljust(16, '0').encode() + cipher = AES.new(填充key, AES.MODE_CBC, 填充iv) + decrypted = unpad(cipher.decrypt(bytes.fromhex(cipher_hex)), 16) + + with open(输出文件, 'w', encoding='utf-8') as f: + json.dump(json.loads(decrypted.decode()), f, ensure_ascii=False, indent=2) + + print(f"✓ 解密成功: {输入文件}") + return True + + except Exception as e: + print(f"✗ 解密失败 {输入文件}: {e}") + return False + + def 批量处理(self, 输入目录, 输出目录, 模式="enc"): + """批量处理目录中的文件,保持原文件名""" + 输入路径 = Path(输入目录) + 输出路径 = Path(输出目录) + 输出路径.mkdir(parents=True, exist_ok=True) + + if 输入路径.is_file(): + # 如果输入是单个文件 + 文件列表 = [输入路径] + else: + # 获取目录中的所有文件 + 文件列表 = [f for f in 输入路径.iterdir() if f.is_file()] + + if not 文件列表: + print(f"在 {输入路径} 中未找到文件") + return + + print(f"找到 {len(文件列表)} 个文件进行处理...") + + 成功计数 = 0 + for 输入文件 in 文件列表: + # 保持原文件名,不添加后缀 + 输出文件 = 输出路径 / 输入文件.name + + if 模式 == "enc": + if self.加密文件(输入文件, 输出文件): + 成功计数 += 1 + else: + if self.解密文件(输入文件, 输出文件): + 成功计数 += 1 + + print(f"\n处理完成: 成功 {成功计数}/{len(文件列表)} 个文件") + +def main(): + if len(sys.argv) < 3: + print("用法:") + print(" 单个文件: python tvbox.py 输入文件 输出文件 [模式]") + print(" 批量处理: python tvbox.py 输入目录 输出目录 [模式] [--batch]") + print("模式: enc-加密(默认) / dec-解密") + print("说明: 加密和解密后的文件将保持原文件名") + print("示例:") + print(" 单个加密: python tvbox.py api.json api.json") + print(" 单个解密: python tvbox.py api.json api.json dec") + print(" 批量加密: python tvbox.py input_dir output_dir enc --batch") + print(" 批量解密: python tvbox.py input_dir output_dir dec --batch") + sys.exit(1) + + 输入路径, 输出路径 = sys.argv[1], sys.argv[2] + + # 判断模式 + 模式 = sys.argv[3] if len(sys.argv) > 3 else "enc" + + # 判断是否批量模式 + 批量模式 = len(sys.argv) > 4 and sys.argv[4] == "--batch" + + 加解密器 = 文件加解密器() + + # 自动判断是否为目录 + 输入路径是目录 = os.path.isdir(输入路径) + + if 批量模式 or 输入路径是目录: + 加解密器.批量处理(输入路径, 输出路径, 模式) + else: + if 模式 == "enc": + 加解密器.加密文件(输入路径, 输出路径) + else: + 加解密器.解密文件(输入路径, 输出路径) + +if __name__ == "__main__": + main() diff --git a/潇洒/anime/js/56DM.js b/潇洒/anime/js/56DM.js new file mode 100644 index 00000000..3ff0ad67 --- /dev/null +++ b/潇洒/anime/js/56DM.js @@ -0,0 +1 @@ +dmFyIHJ1bGUgPSB7CiAgICB0aXRsZTogJzU25Yqo5ryrJywKICAgIGhvc3Q6ICdodHRwczovL3d3dy41NmRtLmNjLycsCiAgICB1cmw6ICdodHRwczovL3d3dy41NmRtLmNjL3R5cGUvZnljbGFzcy1meXBhZ2UuaHRtbCcsCiAgICBzZWFyY2hVcmw6ICdodHRwczovL3d3dy41NmRtLmNjL3NlYXJjaC8qKi0tLS0tLS0tLS1meXBhZ2UtLS0uaHRtbCcsCiAgICBzZWFyY2hhYmxlOiAyLCAvL+aYr+WQpuWQr+eUqOWFqOWxgOaQnOe0oiwKICAgIHF1aWNrU2VhcmNoOiAwLCAvL+aYr+WQpuWQr+eUqOW/q+mAn+aQnOe0oiwKICAgIGZpbHRlcmFibGU6IDAsIC8v5piv5ZCm5ZCv55So5YiG57G7562b6YCJLAogICAgaGVhZGVyczogewogICAgICAgICdVc2VyLUFnZW50JzogJ1VDX1VBJywgLy8gIkNvb2tpZSI6ICIiCiAgICB9LCAvLyBjbGFzc19wYXJzZTonLnN0dWktaGVhZGVyX19tZW51IGxpOmd0KDApOmx0KDcpO2EmJlRleHQ7YSYmaHJlZjsvKFxcZCspLmh0bWwnLAogICAgY2xhc3NfcGFyc2U6ICcuc251aS1oZWFkZXItbWVudS1uYXYgbGk6Z3QoMCk6bHQoNik7YSYmVGV4dDthJiZocmVmOy4qLyguKj8pLmh0bWwnLAogICAgcGxheV9wYXJzZTogdHJ1ZSwKICAgIGxhenk6IGBqczoKICAgICAgICAgICAgaWYoL1xcLihtM3U4fG1wNCkvLnRlc3QoaW5wdXQpKXsKICAgICAgICAgICAgICAgIGlucHV0ID0ge3BhcnNlOjAsdXJsOmlucHV0fQogICAgICAgICAgICB9ZWxzZXsKICAgICAgICAgICAgICAgIGlmKHJ1bGUucGFyc2VfdXJsLnN0YXJ0c1dpdGgoJ2pzb246JykpewogICAgICAgICAgICAgICAgICAgIGxldCBwdXJsID0gcnVsZS5wYXJzZV91cmwucmVwbGFjZSgnanNvbjonLCcnKStpbnB1dDsKICAgICAgICAgICAgICAgICAgICBsZXQgaHRtbCA9IHJlcXVlc3QocHVybCk7CiAgICAgICAgICAgICAgICAgICAgaW5wdXQgPSB7cGFyc2U6MCx1cmw6SlNPTi5wYXJzZShodG1sKS51cmx9CiAgICAgICAgICAgICAgICB9ZWxzZXsKICAgICAgICAgICAgICAgICAgICBpbnB1dD0gcnVsZS5wYXJzZV91cmwraW5wdXQ7IAogICAgICAgICAgICAgICAgfQogICAgICAgICAgICB9CiAgICAgICAgICAgIGAsCiAgICBsaW1pdDogNiwKICAgIOaOqOiNkDogJy5jQ0JmX0ZBQUVmYmM7bGk7YSYmdGl0bGU7Lmxhenlsb2FkJiZkYXRhLW9yaWdpbmFsOy5kQURfQkJDSSYmVGV4dDthJiZocmVmJywKICAgIGRvdWJsZTogdHJ1ZSwgLy8g5o6o6I2Q5YaF5a655piv5ZCm5Y+M5bGC5a6a5L2NCiAgICDkuIDnuqc6ICcuY0NCZl9GQUFFZmJjIGxpO2EmJnRpdGxlO2EmJmRhdGEtb3JpZ2luYWw7LmRBRF9CQkNJJiZUZXh0O2EmJmhyZWYnLAogICAg5LqM57qnOiB7CiAgICAgICAgInRpdGxlIjogImgxJiZUZXh0IiwKICAgICAgICAiaW1nIjogIi5zdHVpLWNvbnRlbnRfX3RodW1iIC5sYXp5bG9hZCYmZGF0YS1vcmlnaW5hbCIsCiAgICAgICAgImRlc2MiOiAiLmNDQmZfREFCQ2NhY19faGNJZGVFIHA6ZXEoMCkmJlRleHQ7LmNDQmZfREFCQ2NhY19faGNJZGVFIHA6ZXEoMSkmJlRleHQ7LmNDQmZfREFCQ2NhY19faGNJZGVFIHA6ZXEoMikmJlRleHQ7LmNDQmZfREFCQ2NhY19faGNJZGVFIHA6ZXEoMykmJlRleHQ7LmNDQmZfREFCQ2NhY19faGNJZGVFIHA6ZXEoNCkmJlRleHQiLAogICAgICAgICJjb250ZW50IjogIi5kZXRhaWwmJlRleHQiLAogICAgICAgICJ0YWJzIjogIi5jaGFubmVsLXRhYiBsaSIsCiAgICAgICAgImxpc3RzIjogIi5wbGF5LWxpc3QtY29udGVudDplcSgjaWQpIGxpIgogICAgfSwKICAgIOaQnOe0ojogJy5jQ0JmX0ZBQUVmYmNfX2RiRDthJiZ0aXRsZTsubGF6eWxvYWQmJmRhdGEtb3JpZ2luYWw7LmRBRF9CQkNJJiZUZXh0O2EmJmhyZWY7LmNDQmZfRkFBRWZiY19faGNJZGVFJiZwOmVxKDApIHAmJlRleHQnLAp9 \ No newline at end of file diff --git a/潇洒/anime/js/ADM.js b/潇洒/anime/js/ADM.js new file mode 100644 index 00000000..e943b865 --- /dev/null +++ b/潇洒/anime/js/ADM.js @@ -0,0 +1,827 @@ +muban.短视2.二级.img = '.detail-pic&&img&&data-src'; +var rule = { + title: '爱弹幕', + 模板: '短视2', + host: 'https://bgm.girigirilove.com', + homeUrl: '/map/', + // url:'/show/fyclass--------fypage---/' + url: '/show/fyclassfyfilter/', + filterable: 1, //是否启用分类筛选, + filter_url: '-{{fl.area}}-{{fl.by}}-{{fl.class}}-{{fl.lang}}-{{fl.letter}}---fypage---{{fl.year}}', + filter: { + "2": [{ + "key": "class", + "name": "类型", + "value": [{ + "n": "全部", + "v": "" + }, { + "n": "喜剧", + "v": "喜剧" + }, { + "n": "爱情", + "v": "爱情" + }, { + "n": "恐怖", + "v": "恐怖" + }, { + "n": "动作", + "v": "动作" + }, { + "n": "科幻", + "v": "科幻" + }, { + "n": "剧情", + "v": "剧情" + }, { + "n": "战争", + "v": "战争" + }, { + "n": "奇幻", + "v": "奇幻" + }, { + "n": "冒险", + "v": "冒险" + }, { + "n": "悬疑", + "v": "悬疑" + }, { + "n": "校园", + "v": "校园" + }, { + "n": "后宫", + "v": "后宫" + }, { + "n": "热血", + "v": "热血" + }, { + "n": "运动", + "v": "运动" + }, { + "n": "百合", + "v": "百合" + }, { + "n": "乙女", + "v": "乙女" + }, { + "n": "机甲", + "v": "机甲" + }, { + "n": "日常", + "v": "日常" + }, { + "n": "魔法少女", + "v": "魔法少女" + }, { + "n": "异世界", + "v": "异世界" + }, { + "n": "爱抖露", + "v": "爱抖露" + }, { + "n": "音乐", + "v": "音乐" + }, { + "n": "萌", + "v": "萌" + }] + }, { + "key": "area", + "name": "地区", + "value": [{ + "n": "全部", + "v": "" + }, { + "n": "一月", + "v": "一月" + }, { + "n": "四月", + "v": "四月" + }, { + "n": "七月", + "v": "七月" + }, { + "n": "十月", + "v": "十月" + }] + }, { + "key": "year", + "name": "年份", + "value": [{ + "n": "全部", + "v": "" + }, { + "n": "2026", + "v": "2026" + }, { + "n": "2025", + "v": "2025" + }, { + "n": "2024", + "v": "2024" + }, { + "n": "2023", + "v": "2023" + }, { + "n": "2022", + "v": "2022" + }, { + "n": "2021", + "v": "2021" + }, { + "n": "2020", + "v": "2020" + }, { + "n": "2019", + "v": "2019" + }, { + "n": "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": "lang", + "name": "语言", + "value": [{ + "n": "全部", + "v": "" + }, { + "n": "日语", + "v": "日语" + }, { + "n": "国语", + "v": "国语" + }] + }, { + "key": "by", + "name": "排序", + "value": [{ + "n": "最新", + "v": "time" + }, { + "n": "最热", + "v": "hits" + }, { + "n": "评分", + "v": "score" + }] + }], + "3": [{ + "key": "class", + "name": "类型", + "value": [{ + "n": "全部", + "v": "" + }, { + "n": "搞笑", + "v": "搞笑" + }, { + "n": "爱情", + "v": "爱情" + }, { + "n": "恐怖", + "v": "恐怖" + }, { + "n": "动作", + "v": "动作" + }, { + "n": "科幻", + "v": "科幻" + }, { + "n": "剧情", + "v": "剧情" + }, { + "n": "战争", + "v": "战争" + }, { + "n": "奇幻", + "v": "奇幻" + }, { + "n": "冒险", + "v": "冒险" + }, { + "n": "悬疑", + "v": "悬疑" + }, { + "n": "校园", + "v": "校园" + }, { + "n": "后宫", + "v": "后宫" + }, { + "n": "热血", + "v": "热血" + }, { + "n": "运动", + "v": "运动" + }] + }, { + "key": "area", + "name": "地区", + "value": [{ + "n": "全部", + "v": "" + }, { + "n": "内地", + "v": "内地" + }, { + "n": "港台", + "v": "港台" + }, { + "n": "日韩", + "v": "日韩" + }, { + "n": "欧美", + "v": "欧美" + }] + }, { + "key": "year", + "name": "年份", + "value": [{ + "n": "全部", + "v": "" + }, { + "n": "2026", + "v": "2026" + }, { + "n": "2025", + "v": "2025" + }, { + "n": "2024", + "v": "2024" + }, { + "n": "2023", + "v": "2023" + }, { + "n": "2022", + "v": "2022" + }, { + "n": "2021", + "v": "2021" + }, { + "n": "2020", + "v": "2020" + }, { + "n": "2019", + "v": "2019" + }, { + "n": "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" + }] + }, { + "key": "lang", + "name": "语言", + "value": [{ + "n": "全部", + "v": "" + }, { + "n": "国语", + "v": "国语" + }, { + "n": "英语", + "v": "英语" + }] + }, { + "key": "by", + "name": "排序", + "value": [{ + "n": "最新", + "v": "time" + }, { + "n": "最热", + "v": "hits" + }, { + "n": "评分", + "v": "score" + }] + }], + "21": [{ + "key": "class", + "name": "类型", + "value": [{ + "n": "全部", + "v": "" + }, { + "n": "喜剧", + "v": "喜剧" + }, { + "n": "爱情", + "v": "爱情" + }, { + "n": "恐怖", + "v": "恐怖" + }, { + "n": "动作", + "v": "动作" + }, { + "n": "科幻", + "v": "科幻" + }, { + "n": "剧情", + "v": "剧情" + }, { + "n": "战争", + "v": "战争" + }, { + "n": "奇幻", + "v": "奇幻" + }, { + "n": "冒险", + "v": "冒险" + }, { + "n": "悬疑", + "v": "悬疑" + }, { + "n": "校园", + "v": "校园" + }, { + "n": "后宫", + "v": "后宫" + }, { + "n": "热血", + "v": "热血" + }, { + "n": "运动", + "v": "运动" + }, { + "n": "百合", + "v": "百合" + }, { + "n": "耽美", + "v": "耽美" + }, { + "n": "机甲", + "v": "机甲" + }, { + "n": "日常", + "v": "日常" + }, { + "n": "魔法少女", + "v": "魔法少女" + }, { + "n": "异世界", + "v": "异世界" + }, { + "n": "爱抖露", + "v": "爱抖露" + }] + }, { + "key": "year", + "name": "年份", + "value": [{ + "n": "全部", + "v": "" + }, { + "n": "2026", + "v": "2026" + }, { + "n": "2025", + "v": "2025" + }, { + "n": "2024", + "v": "2024" + }, { + "n": "2023", + "v": "2023" + }, { + "n": "2022", + "v": "2022" + }, { + "n": "2021", + "v": "2021" + }, { + "n": "2020", + "v": "2020" + }, { + "n": "2019", + "v": "2019" + }, { + "n": "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" + }] + }, { + "key": "lang", + "name": "语言", + "value": [{ + "n": "全部", + "v": "" + }, { + "n": "日语", + "v": "日语" + }, { + "n": "中文", + "v": "中文" + }, { + "n": "英语", + "v": "英语" + }] + }, { + "key": "by", + "name": "排序", + "value": [{ + "n": "最新", + "v": "time" + }, { + "n": "最热", + "v": "hits" + }, { + "n": "评分", + "v": "score" + }] + }], + "20": [{ + "key": "class", + "name": "类型", + "value": [{ + "n": "全部", + "v": "" + }, { + "n": "爱情", + "v": "爱情" + }, { + "n": "科幻", + "v": "科幻" + }, { + "n": "经典", + "v": "经典" + }, { + "n": "冒险", + "v": "冒险" + }, { + "n": "剧情", + "v": "剧情" + }, { + "n": "动作", + "v": "动作" + }, { + "n": "同性", + "v": "同性" + }, { + "n": "喜剧", + "v": "喜剧" + }, { + "n": "奇幻", + "v": "奇幻" + }, { + "n": "恐怖", + "v": "恐怖" + }, { + "n": "悬疑.惊悚", + "v": "悬疑.惊悚" + }, { + "n": "战争", + "v": "战争" + }, { + "n": "欧美", + "v": "欧美" + }, { + "n": "歌舞", + "v": "歌舞" + }, { + "n": "灾难", + "v": "灾难" + }, { + "n": "记录.泰剧", + "v": "记录.泰剧" + }, { + "n": "体育", + "v": "体育" + }, { + "n": "烧脑", + "v": "烧脑" + }] + }, { + "key": "area", + "name": "地区", + "value": [{ + "n": "全部", + "v": "" + }, { + "n": "日本", + "v": "日本" + }, { + "n": "欧美", + "v": "欧美" + }, { + "n": "泰国", + "v": "泰国" + }] + }, { + "key": "year", + "name": "年份", + "value": [{ + "n": "全部", + "v": "" + }, { + "n": "2026", + "v": "2026" + }, { + "n": "2025", + "v": "2025" + }, { + "n": "2024", + "v": "2024" + }, { + "n": "2023", + "v": "2023" + }, { + "n": "2022", + "v": "2022" + }, { + "n": "2021", + "v": "2021" + }, { + "n": "2020", + "v": "2020" + }, { + "n": "2019", + "v": "2019" + }, { + "n": "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.2003", + "v": "2004.2003" + }] + }, { + "key": "lang", + "name": "语言", + "value": [{ + "n": "全部", + "v": "" + }, { + "n": "日语", + "v": "日语" + }, { + "n": "英语", + "v": "英语" + }, { + "n": "泰语", + "v": "泰语" + }] + }, { + "key": "by", + "name": "排序", + "value": [{ + "n": "最新", + "v": "time" + }, { + "n": "最热", + "v": "hits" + }, { + "n": "评分", + "v": "score" + }] + }], + "24": [{ + "key": "by", + "name": "排序", + "value": [{ + "n": "最新", + "v": "time" + }, { + "n": "最热", + "v": "hits" + }, { + "n": "评分", + "v": "score" + }] + }], + "26": [{ + "key": "by", + "name": "排序", + "value": [{ + "n": "最新", + "v": "time" + }, { + "n": "最热", + "v": "hits" + }, { + "n": "评分", + "v": "score" + }] + }] + }, + searchUrl: '/search/**----------fypage---/', + class_name: '日番&美番&劇場版&真人番劇&BD副音軌&其他', + class_url: '2&3&21&20&24&26', + play_parse: true, + lazy: `js: + var html = JSON.parse(request(input).match(/r player_.*?=(.*?) { + input = { + parse: 1, + url: input, + //js:'try{let urls=Array.from(document.querySelectorAll("iframe")).filter(x=>x.src.includes("?url="));if(urls){location.href=urls[0].src}}catch{}document.querySelector("button").click()', + js: 'try{location.href=document.querySelector("#playleft iframe").src}catch{}document.querySelector("button.swal-button--confirm").click()', + parse_extra: '&is_pc=1&custom_regex=' + rule.is_video, + } + }), + limit: 6, + 推荐: '.list-vod.flex .public-list-box;a&&title;.lazy&&data-original;.public-list-prb&&Text;a&&href', + 一级: $js.toString(() => { + let body = input.split("#")[1]; + let t = Math.round(new Date / 1e3).toString(); + let key = md5("DS" + t + "DCC147D11943AF75"); + let url = input.split("#")[0]; + body = body + "&time=" + t + "&key=" + key; + print(body); + fetch_params.body = body; + let html = post(url, fetch_params); + let data = JSON.parse(html); + VODS = data.list.map(function(it) { + it.vod_pic = urljoin2(input.split("/i")[0], it.vod_pic); + return it + }); + }), + 二级: { + title: '.slide-info-title&&Text;.slide-info:eq(3)--strong&&Text', + img: '.detail-pic&&data-original', + desc: '.fraction&&Text;.slide-info-remarks:eq(1)&&Text;.slide-info-remarks:eq(2)&&Text;.slide-info:eq(2)--strong&&Text;.slide-info:eq(1)--strong&&Text', + content: '#height_limit&&Text', + tabs: '.anthology.wow.fadeInUp.animated&&.swiper-wrapper&&a', + tab_text: '.swiper-slide&&Text', + lists: '.anthology-list-box:eq(#id) li', + }, + 搜索: 'json:list;name;pic;;id', + 搜索: $js.toString(() => { + let html = fetch(input); + let list = pdfa(html, ".public-list-box"); + VODS = list.map(x => { + return { + vod_name: pdfh(x, ".thumb-txt&&Text"), + vod_pic: pdfh(x, ".lazy&&data-src"), + vod_remarks: pdfh(x, ".public-list-prb&&Text"), + vod_content: pdfh(x, ".thumb-blurb&&Text"), + vod_id: pdfh(x, "a&&href") + } + }); + }), + 图片替换: '&=>&' +} \ No newline at end of file diff --git a/潇洒/anime/js/LMM.js b/潇洒/anime/js/LMM.js new file mode 100644 index 00000000..f576b8d1 --- /dev/null +++ b/潇洒/anime/js/LMM.js @@ -0,0 +1,567 @@ +var rule = { + title: "路漫漫", + host: "https://www.lmm85.com", + url: "/vod/show/id/fyclassfyfilter.html", + searchUrl: '/vod/search/page/fypage/wd/**.html', + searchable: 2, + quickSearch: 0, + filterable: 1, + filter: { + "3": [{ + "key": "年代", + "name": "年代", + "value": [{ + "n": "全部", + "v": "" + }, { + "n": "2026", + "v": "/year/2026" + }, { + "n": "2025", + "v": "/year/2025" + }, { + "n": "2024", + "v": "/year/2024" + }, { + "n": "2023", + "v": "/year/2023" + }, { + "n": "2022", + "v": "/year/2022" + }, { + "n": "2021", + "v": "/year/2021" + }, { + "n": "2020", + "v": "/year/2020" + }, { + "n": "2019", + "v": "/year/2019" + }, { + "n": "2018", + "v": "/year/2018" + }, { + "n": "2017", + "v": "/year/2017" + }, { + "n": "2016", + "v": "/year/2016" + }, { + "n": "2015", + "v": "/year/2015" + }, { + "n": "更早", + "v": "/year/2014-1980" + }] + }, { + "key": "排序", + "name": "排序", + "value": [{ + "n": "最近更新", + "v": "/by/time" + }, { + "n": "最高人气", + "v": "/by/hits" + }, { + "n": "最高评分", + "v": "/by/score" + }, { + "n": "最多点赞", + "v": "/by/up" + }] + }], + "4": [{ + "key": "年代", + "name": "年代", + "value": [{ + "n": "全部", + "v": "" + }, { + "n": "2026", + "v": "/year/2026" + }, { + "n": "2025", + "v": "/year/2025" + }, { + "n": "2024", + "v": "/year/2024" + }, { + "n": "2023", + "v": "/year/2023" + }, { + "n": "2022", + "v": "/year/2022" + }, { + "n": "2021", + "v": "/year/2021" + }, { + "n": "2020", + "v": "/year/2020" + }, { + "n": "2019", + "v": "/year/2019" + }, { + "n": "2018", + "v": "/year/2018" + }, { + "n": "2017", + "v": "/year/2017" + }, { + "n": "2016", + "v": "/year/2016" + }, { + "n": "2015", + "v": "/year/2015" + }, { + "n": "更早", + "v": "/year/2014-1980" + }] + }, { + "key": "排序", + "name": "排序", + "value": [{ + "n": "最近更新", + "v": "/by/time" + }, { + "n": "最高人气", + "v": "/by/hits" + }, { + "n": "最高评分", + "v": "/by/score" + }, { + "n": "最多点赞", + "v": "/by/up" + }] + }], + "5": [{ + "key": "年代", + "name": "年代", + "value": [{ + "n": "全部", + "v": "" + }, { + "n": "2026", + "v": "/year/2026" + }, { + "n": "2025", + "v": "/year/2025" + }, { + "n": "2024", + "v": "/year/2024" + }, { + "n": "2023", + "v": "/year/2023" + }, { + "n": "2022", + "v": "/year/2022" + }, { + "n": "2021", + "v": "/year/2021" + }, { + "n": "2020", + "v": "/year/2020" + }, { + "n": "2019", + "v": "/year/2019" + }, { + "n": "2018", + "v": "/year/2018" + }, { + "n": "2017", + "v": "/year/2017" + }, { + "n": "2016", + "v": "/year/2016" + }, { + "n": "2015", + "v": "/year/2015" + }, { + "n": "更早", + "v": "/year/2014-1980" + }] + }, { + "key": "排序", + "name": "排序", + "value": [{ + "n": "最近更新", + "v": "/by/time" + }, { + "n": "最高人气", + "v": "/by/hits" + }, { + "n": "最高评分", + "v": "/by/score" + }, { + "n": "最多点赞", + "v": "/by/up" + }] + }], + "6": [{ + "key": "年代", + "name": "年代", + "value": [{ + "n": "全部", + "v": "" + }, { + "n": "2026", + "v": "/year/2026" + }, { + "n": "2025", + "v": "/year/2025" + }, { + "n": "2024", + "v": "/year/2024" + }, { + "n": "2023", + "v": "/year/2023" + }, { + "n": "2022", + "v": "/year/2022" + }, { + "n": "2021", + "v": "/year/2021" + }, { + "n": "2020", + "v": "/year/2020" + }, { + "n": "2019", + "v": "/year/2019" + }, { + "n": "2018", + "v": "/year/2018" + }, { + "n": "2017", + "v": "/year/2017" + }, { + "n": "2016", + "v": "/year/2016" + }, { + "n": "2015", + "v": "/year/2015" + }, { + "n": "更早", + "v": "/year/2014-1980" + }] + }, { + "key": "排序", + "name": "排序", + "value": [{ + "n": "最近更新", + "v": "/by/time" + }, { + "n": "最高人气", + "v": "/by/hits" + }, { + "n": "最高评分", + "v": "/by/score" + }, { + "n": "最多点赞", + "v": "/by/up" + }] + }], + "7": [{ + "key": "年代", + "name": "年代", + "value": [{ + "n": "全部", + "v": "" + }, { + "n": "2026", + "v": "/year/2026" + }, { + "n": "2025", + "v": "/year/2025" + }, { + "n": "2024", + "v": "/year/2024" + }, { + "n": "2023", + "v": "/year/2023" + }, { + "n": "2022", + "v": "/year/2022" + }, { + "n": "2021", + "v": "/year/2021" + }, { + "n": "2020", + "v": "/year/2020" + }, { + "n": "2019", + "v": "/year/2019" + }, { + "n": "2018", + "v": "/year/2018" + }, { + "n": "2017", + "v": "/year/2017" + }, { + "n": "2016", + "v": "/year/2016" + }, { + "n": "2015", + "v": "/year/2015" + }, { + "n": "更早", + "v": "/year/2014-1980" + }] + }, { + "key": "排序", + "name": "排序", + "value": [{ + "n": "最近更新", + "v": "/by/time" + }, { + "n": "最高人气", + "v": "/by/hits" + }, { + "n": "最高评分", + "v": "/by/score" + }, { + "n": "最多点赞", + "v": "/by/up" + }] + }], + "8": [{ + "key": "年代", + "name": "年代", + "value": [{ + "n": "全部", + "v": "" + }, { + "n": "2026", + "v": "/year/2026" + }, { + "n": "2025", + "v": "/year/2025" + }, { + "n": "2024", + "v": "/year/2024" + }, { + "n": "2023", + "v": "/year/2023" + }, { + "n": "2022", + "v": "/year/2022" + }, { + "n": "2021", + "v": "/year/2021" + }, { + "n": "2020", + "v": "/year/2020" + }, { + "n": "2019", + "v": "/year/2019" + }, { + "n": "2018", + "v": "/year/2018" + }, { + "n": "2017", + "v": "/year/2017" + }, { + "n": "2016", + "v": "/year/2016" + }, { + "n": "2015", + "v": "/year/2015" + }, { + "n": "更早", + "v": "/year/2014-1980" + }] + }, { + "key": "排序", + "name": "排序", + "value": [{ + "n": "最近更新", + "v": "/by/time" + }, { + "n": "最高人气", + "v": "/by/hits" + }, { + "n": "最高评分", + "v": "/by/score" + }, { + "n": "最多点赞", + "v": "/by/up" + }] + }] + }, + filter_url: "{{fl.排序}}{{fl.年代}}/page/fypage", + filter_def: "", + headers: { + "User-Agent": "MOBILE_UA" + }, + timeout: 5000, + class_name: "日本动漫&国产动漫&欧美动漫&日本动画电影&国产动画电影&欧美动画电影", + class_url: "6&7&8&3&4&5", + class_parse: "", + cate_exclude: "", + play_parse: true, + lazy: $js.toString(() => { + function getDAesString(token) { + eval(getCryptoJS()); + var key = CryptoJS.enc.Utf8.parse("ejjooopppqqqrwww"); + + var iv = CryptoJS.enc.Utf8.parse("1348987635684651"); + + var token = CryptoJS.AES.decrypt(token, key, { + iv: iv, + mode: CryptoJS.mode.CBC, + padding: CryptoJS.pad.Pkcs7, + }); + + return token.toString(CryptoJS.enc.Utf8); + } + + var html = JSON.parse(request(input).match(/r player_.*?=(.*?)", + "标题": "alt=\"&&\"", + "图片": "data-url=\"&&\"", + "链接": "href=\"&&\"", + "线路标题": "mt-0\">&&", + "播放数组": "class=\"card-body button-list\"&&
", + "播放列表": "", + "播放链接": "href=\"&&\"", + "播放标题": ">&&&&

", + "副标题": "zhuangtai\">&&", + "数组": "u-movie\">&&", + "线路标题": "ctitle\">&&在线播放", + "播放数组": "vlink&&", + "分类url": "https://www.yinghuadongman.com.cn/sxvodshow/{cateId}-{year}/page/{catePg}/;;d0", + "分类": "国漫$2#日漫$1#美漫$3" +} \ No newline at end of file diff --git a/潇洒/cloud/js/ABD.js b/潇洒/cloud/js/ABD.js new file mode 100644 index 00000000..2af4e5f0 --- /dev/null +++ b/潇洒/cloud/js/ABD.js @@ -0,0 +1,52 @@ +var rule = { + title: '爱搜', + host: 'https://www.esoua.com/', + hostJs: '', + headers: { + 'User-Agent': 'Mozilla/5.0 (Linux; Android 11; Pixel 5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/90.0.4430.91 Mobile Safari/537.36', + }, + 编码: 'utf-8', + timeout: 5000, + url: 'https://www.esoua.com/search?q=fyclass&format=video&type=BDY&page=fypage', + filter_url: '', + detailUrl: '', + searchUrl: 'https://www.esoua.com/search?q=**&format=video&type=BDY&page=fypage', + searchable: 1, + quickSearch: 1, + filterable: 1, + class_name: '剧集&电影&短剧&动漫&综艺', + class_url: '剧集&电影&短剧&动漫&综艺', + proxy_rule: '', + sniffer: false, + isVideo: '', + play_parse: true, + parse_url: '', + lazy: "js:\n input = 'push://' + input;\n ", + limit: 9, + double: false, + // 推荐: '*', + 一级: 'js:\n let html = fetch(input);\n let list = pdfa(html, "body&&.semi-space-medium-vertical");\n VODS = list.map(x => {\n let remarks = pdfh(x, "div&&img&&alt");\n let vodName = pdfh(x, "div&&a&&title");\n // 过滤条件:迅雷云盘、.txt后缀、空名称\n if(remarks.includes("迅雷云盘") || vodName.endsWith(".txt") || !vodName.trim()) return null;\n return {\n vod_name: vodName,\n vod_pic: "https://yx.aekgame.com/wp-content/uploads/2022/05/e27b-290abe63258be48d86b6676b6b0ba22d.jpg",\n vod_remarks: remarks,\n vod_content: remarks,\n vod_id: pdfh(x, "div&&a&&href")\n };\n }).filter(x => x !== null);\n ', + 二级: { + title: 'h1&&Text', + img: 'img&&src', + desc: '.card-text:eq(2)&&Text;;;;', + content: 'body&&.semi-space-loose-vertical&&a&&href', + tabs: "js:TABS = ['爱搜']", + lists: "js:\n LISTS = [];\n let lists1 = pdfa(html, 'body&&.semi-space-loose-vertical').map(it => {\n let _tt = pdfh(it, 'span&&title');\n let _uu = pdfh(it, 'a&&href');\n return _tt + '$' + _uu;\n });\n LISTS.push(lists1);\n ", + }, + 搜索: 'js:\n let html = fetch(input);\n let list = pdfa(html, "body&&.semi-space-medium-vertical");\n VODS = list.map(x => {\n let remarks = pdfh(x, "div&&img&&alt");\n let vodName = pdfh(x, "div&&a&&title");\n // 过滤条件:迅雷云盘、.txt后缀、空名称\n if(remarks.includes("迅雷云盘") || vodName.endsWith(".txt") || !vodName.trim()) return null;\n return {\n vod_name: vodName,\n vod_pic: "https://yx.aekgame.com/wp-content/uploads/2022/05/e27b-290abe63258be48d86b6676b6b0ba22d.jpg",\n vod_remarks: remarks,\n vod_content: remarks,\n vod_id: pdfh(x, "div&&a&&href")\n };\n }).filter(x => x !== null);\n ', + cate_exclude: '首页|留言|APP|下载|资讯|新闻|动态', + tab_exclude: '猜你|喜欢|下载|剧情|榜|评论', + 类型: '影视', + homeUrl: 'https://www.esoua.com/', + 二级访问前: '', + encoding: 'utf-8', + search_encoding: '', + 图片来源: '', + 图片替换: '', + play_json: [], + pagecount: {}, + tab_remove: [], + tab_order: [], + tab_rename: {}, +} \ No newline at end of file diff --git a/潇洒/cloud/js/AKK.js b/潇洒/cloud/js/AKK.js new file mode 100644 index 00000000..39183b26 --- /dev/null +++ b/潇洒/cloud/js/AKK.js @@ -0,0 +1,52 @@ +var rule = { + title: '爱搜', + host: 'https://www.esoua.com/', + hostJs: '', + headers: { + 'User-Agent': 'Mozilla/5.0 (Linux; Android 11; Pixel 5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/90.0.4430.91 Mobile Safari/537.36', + }, + 编码: 'utf-8', + timeout: 5000, + url: 'https://www.esoua.com/search?q=fyclass&format=video&type=QUARK&page=fypage', + filter_url: '', + detailUrl: '', + searchUrl: 'https://www.esoua.com/search?q=**&format=video&type=QUARK&page=fypage', + searchable: 1, + quickSearch: 1, + filterable: 1, + class_name: '剧集&电影&短剧&动漫&综艺', + class_url: '剧集&电影&短剧&动漫&综艺', + proxy_rule: '', + sniffer: false, + isVideo: '', + play_parse: true, + parse_url: '', + lazy: "js:\n input = 'push://' + input;\n ", + limit: 9, + double: false, + // 推荐: '*', + 一级: 'js:\n let html = fetch(input);\n let list = pdfa(html, "body&&.semi-space-medium-vertical");\n VODS = list.map(x => {\n let remarks = pdfh(x, "div&&img&&alt");\n let vodName = pdfh(x, "div&&a&&title");\n // 过滤条件:迅雷云盘、.txt后缀、空名称\n if(remarks.includes("迅雷云盘") || vodName.endsWith(".txt") || !vodName.trim()) return null;\n return {\n vod_name: vodName,\n vod_pic: "http://pic-smzy.oss-cn-beijing.aliyuncs.com/images/5e/2a/1410241152a3eca2eca7ace140ed1c0c01b12a5e.png",\n vod_remarks: remarks,\n vod_content: remarks,\n vod_id: pdfh(x, "div&&a&&href")\n };\n }).filter(x => x !== null);\n ', + 二级: { + title: 'h1&&Text', + img: 'img&&src', + desc: '.card-text:eq(2)&&Text;;;;', + content: 'body&&.semi-space-loose-vertical&&a&&href', + tabs: "js:TABS = ['爱搜']", + lists: "js:\n LISTS = [];\n let lists1 = pdfa(html, 'body&&.semi-space-loose-vertical').map(it => {\n let _tt = pdfh(it, 'span&&title');\n let _uu = pdfh(it, 'a&&href');\n return _tt + '$' + _uu;\n });\n LISTS.push(lists1);\n ", + }, + 搜索: 'js:\n let html = fetch(input);\n let list = pdfa(html, "body&&.semi-space-medium-vertical");\n VODS = list.map(x => {\n let remarks = pdfh(x, "div&&img&&alt");\n let vodName = pdfh(x, "div&&a&&title");\n // 过滤条件:迅雷云盘、.txt后缀、空名称\n if(remarks.includes("迅雷云盘") || vodName.endsWith(".txt") || !vodName.trim()) return null;\n return {\n vod_name: vodName,\n vod_pic: "http://pic-smzy.oss-cn-beijing.aliyuncs.com/images/5e/2a/1410241152a3eca2eca7ace140ed1c0c01b12a5e.png",\n vod_remarks: remarks,\n vod_content: remarks,\n vod_id: pdfh(x, "div&&a&&href")\n };\n }).filter(x => x !== null);\n ', + cate_exclude: '首页|留言|APP|下载|资讯|新闻|动态', + tab_exclude: '猜你|喜欢|下载|剧情|榜|评论', + 类型: '影视', + homeUrl: 'https://www.esoua.com/', + 二级访问前: '', + encoding: 'utf-8', + search_encoding: '', + 图片来源: '', + 图片替换: '', + play_json: [], + pagecount: {}, + tab_remove: [], + tab_order: [], + tab_rename: {}, +} \ No newline at end of file diff --git a/潇洒/cloud/js/AS.js b/潇洒/cloud/js/AS.js new file mode 100644 index 00000000..8a1d37a8 --- /dev/null +++ b/潇洒/cloud/js/AS.js @@ -0,0 +1 @@ +dmFyIHJ1bGUgPSB7CiAgICB0aXRsZTogJ+eIseaQnCcsCiAgICBob3N0OiAnaHR0cHM6Ly93d3cuZXNvdWEuY29tLycsCiAgICBob3N0SnM6ICcnLAogICAgaGVhZGVyczogewogICAgICAgICdVc2VyLUFnZW50JzogJ01vemlsbGEvNS4wIChMaW51eDsgQW5kcm9pZCAxMTsgUGl4ZWwgNSkgQXBwbGVXZWJLaXQvNTM3LjM2IChLSFRNTCwgbGlrZSBHZWNrbykgQ2hyb21lLzkwLjAuNDQzMC45MSBNb2JpbGUgU2FmYXJpLzUzNy4zNicsCiAgICB9LAogICAg57yW56CBOiAndXRmLTgnLAogICAgdGltZW91dDogNTAwMCwKICAgIHVybDogJ2h0dHBzOi8vd3d3LmVzb3VhLmNvbS9zZWFyY2g/cT1meWNsYXNzJmZvcm1hdD12aWRlbyZleGFjdD10cnVlJnBhZ2U9ZnlwYWdlJywKICAgIGZpbHRlcl91cmw6ICcnLAogICAgZGV0YWlsVXJsOiAnJywKICAgIHNlYXJjaFVybDogJ2h0dHBzOi8vd3d3LmVzb3VhLmNvbS9zZWFyY2g/cT0qKiZmb3JtYXQ9dmlkZW8mZXhhY3Q9dHJ1ZSZwYWdlPWZ5cGFnZScsCiAgICBzZWFyY2hhYmxlOiAxLAogICAgcXVpY2tTZWFyY2g6IDEsCiAgICBmaWx0ZXJhYmxlOiAxLAogICAgY2xhc3NfbmFtZTogJ+WJp+mbhibnlLXlvbEm55+t5YmnJuWKqOa8qybnu7zoibonLAogICAgY2xhc3NfdXJsOiAn5Ymn6ZuGJueUteW9sSbnn63liacm5Yqo5ryrJue7vOiJuicsCiAgICBwcm94eV9ydWxlOiAnJywKICAgIHNuaWZmZXI6IGZhbHNlLAogICAgaXNWaWRlbzogJycsCiAgICBwbGF5X3BhcnNlOiB0cnVlLAogICAgcGFyc2VfdXJsOiAnJywKICAgIGxhenk6ICJqczpcbiAgICAgICAgaW5wdXQgPSAncHVzaDovLycgKyBpbnB1dDtcbiAgICAiLAogICAgbGltaXQ6IDksCiAgICBkb3VibGU6IGZhbHNlLAogICAgLy8g5o6o6I2QOiAnKicsCiAgICDkuIDnuqc6ICdqczpcbiAgICAgICAgbGV0IGh0bWwgPSBmZXRjaChpbnB1dCk7XG4gICAgICAgIGxldCBsaXN0ID0gcGRmYShodG1sLCAiYm9keSYmLnNlbWktc3BhY2UtbWVkaXVtLXZlcnRpY2FsIik7XG4gICAgICAgIFZPRFMgPSBsaXN0Lm1hcCh4ID0+IHtcbiAgICAgICAgICAgIGxldCByZW1hcmtzID0gcGRmaCh4LCAiZGl2JiZpbWcmJmFsdCIpO1xuICAgICAgICAgICAgLy8g6L+H5ruk5o6J5YyF5ZCrIui/hembt+S6keebmCLnmoTlhoXlrrlcbiAgICAgICAgICAgIGlmKHJlbWFya3MuaW5jbHVkZXMoIui/hembt+S6keebmCIpIHx8IHJlbWFya3MuaW5jbHVkZXMoIjExNSIpIHx8IHJlbWFya3MuaW5jbHVkZXMoIumYv+mHjCIpKSByZXR1cm4gbnVsbDtcbiAgICAgICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICAgICAgdm9kX25hbWU6IHBkZmgoeCwgImRpdiYmYSYmdGl0bGUiKSxcbiAgICAgICAgICAgICAgICB2b2RfcGljOiBcJ1wnLFxuICAgICAgICAgICAgICAgIHZvZF9yZW1hcmtzOiByZW1hcmtzLFxuICAgICAgICAgICAgICAgIHZvZF9jb250ZW50OiByZW1hcmtzLFxuICAgICAgICAgICAgICAgIHZvZF9pZDogcGRmaCh4LCAiZGl2JiZhJiZocmVmIilcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSkuZmlsdGVyKHggPT4geCAhPT0gbnVsbCk7XG4gICAgJywKICAgIOS6jOe6pzogewogICAgICAgIHRpdGxlOiAnaDEmJlRleHQnLAogICAgICAgIGltZzogJ2ltZyYmc3JjJywKICAgICAgICBkZXNjOiAnLmNhcmQtdGV4dDplcSgyKSYmVGV4dDs7OzsnLAogICAgICAgIGNvbnRlbnQ6ICdib2R5JiYuc2VtaS1zcGFjZS1sb29zZS12ZXJ0aWNhbCYmYSYmaHJlZicsCiAgICAgICAgdGFiczogImpzOlRBQlMgPSBbJ+aHkuebmCddIiwKICAgICAgICBsaXN0czogImpzOlxuICAgICAgICAgICAgTElTVFMgPSBbXTtcbiAgICAgICAgICAgIGxldCBsaXN0czEgPSBwZGZhKGh0bWwsICdib2R5JiYuc2VtaS1zcGFjZS1sb29zZS12ZXJ0aWNhbCcpLm1hcChpdCA9PiB7XG4gICAgICAgICAgICAgICAgbGV0IF90dCA9IHBkZmgoaXQsICdzcGFuJiZ0aXRsZScpO1xuICAgICAgICAgICAgICAgIGxldCBfdXUgPSBwZGZoKGl0LCAnYSYmaHJlZicpO1xuICAgICAgICAgICAgICAgIHJldHVybiBfdHQgKyAnJCcgKyBfdXU7XG4gICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIExJU1RTLnB1c2gobGlzdHMxKTtcbiAgICAgICAgIiwKICAgIH0sCiAgICDmkJzntKI6ICdqczpcbiAgICAgICAgbGV0IGh0bWwgPSBmZXRjaChpbnB1dCk7XG4gICAgICAgIGxldCBsaXN0ID0gcGRmYShodG1sLCAiYm9keSYmLnNlbWktc3BhY2UtbWVkaXVtLXZlcnRpY2FsIik7XG4gICAgICAgIFZPRFMgPSBsaXN0Lm1hcCh4ID0+IHtcbiAgICAgICAgICAgIGxldCByZW1hcmtzID0gcGRmaCh4LCAiZGl2JiZpbWcmJmFsdCIpO1xuICAgICAgICAgICAgLy8g6L+H5ruk5o6J5YyF5ZCrIui/hembt+S6keebmCLnmoTlhoXlrrlcbiAgICAgICAgICAgIGlmKHJlbWFya3MuaW5jbHVkZXMoIui/hembt+S6keebmCIpIHx8IHJlbWFya3MuaW5jbHVkZXMoIjExNSIpIHx8IHJlbWFya3MuaW5jbHVkZXMoIumYv+mHjCIpKSByZXR1cm4gbnVsbDtsZXQgdm9kTmFtZSA9IHBkZmgoeCwgImRpdiYmYSYmdGl0bGUiKTtcbiAgICAgICAgICAgIC8vIOi/h+a7pOadoeS7tu+8mui/hembt+S6keebmOOAgS50eHTlkI7nvIDjgIHnqbrlkI3np7BcbiAgICAgICAgICAgIGlmKHZvZE5hbWUuZW5kc1dpdGgoIi56aXAiKSB8fCB2b2ROYW1lLmVuZHNXaXRoKCIudHh0IikgfHwgIXZvZE5hbWUudHJpbSgpKSByZXR1cm4gbnVsbDtcbiAgICAgICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICAgICAgdm9kX25hbWU6IHBkZmgoeCwgImRpdiYmYSYmdGl0bGUiKSxcbiAgICAgICAgICAgICAgICB2b2RfcGljOiBcJ1wnLFxuICAgICAgICAgICAgICAgIHZvZF9yZW1hcmtzOiByZW1hcmtzLFxuICAgICAgICAgICAgICAgIHZvZF9jb250ZW50OiByZW1hcmtzLFxuICAgICAgICAgICAgICAgIHZvZF9pZDogcGRmaCh4LCAiZGl2JiZhJiZocmVmIilcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSkuZmlsdGVyKHggPT4geCAhPT0gbnVsbCk7XG4gICAgJywKICAgIGNhdGVfZXhjbHVkZTogJ+mmlumhtXznlZnoqIB8QVBQfOS4i+i9vXzotYTorq985paw6Ze7fOWKqOaAgScsCiAgICB0YWJfZXhjbHVkZTogJ+eMnOS9oHzllpzmrKJ85LiL6L29fOWJp+aDhXzmppx86K+E6K66JywKICAgIOexu+WeizogJ+W9seinhicsCiAgICBob21lVXJsOiAnaHR0cHM6Ly93d3cuZXNvdWEuY29tLycsCiAgICDkuoznuqforr/pl67liY06ICcnLAogICAgZW5jb2Rpbmc6ICd1dGYtOCcsCiAgICBzZWFyY2hfZW5jb2Rpbmc6ICcnLAogICAg5Zu+54mH5p2l5rqQOiAnJywKICAgIOWbvueJh+abv+aNojogJycsCiAgICBwbGF5X2pzb246IFtdLAogICAgcGFnZWNvdW50OiB7fSwKICAgIHRhYl9yZW1vdmU6IFtdLAogICAgdGFiX29yZGVyOiBbXSwKICAgIHRhYl9yZW5hbWU6IHt9LAp9 \ No newline at end of file diff --git a/潇洒/cloud/js/AUC.js b/潇洒/cloud/js/AUC.js new file mode 100644 index 00000000..cf83676a --- /dev/null +++ b/潇洒/cloud/js/AUC.js @@ -0,0 +1,52 @@ +var rule = { + title: '爱搜', + host: 'https://www.esoua.com/', + hostJs: '', + headers: { + 'User-Agent': 'Mozilla/5.0 (Linux; Android 11; Pixel 5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/90.0.4430.91 Mobile Safari/537.36', + }, + 编码: 'utf-8', + timeout: 5000, + url: 'https://www.esoua.com/search?q=fyclass&format=video&type=UC&page=fypage', + filter_url: '', + detailUrl: '', + searchUrl: 'https://www.esoua.com/search?q=**&format=video&type=UC&page=fypage', + searchable: 1, + quickSearch: 1, + filterable: 1, + class_name: '剧集&电影&短剧&动漫&综艺', + class_url: '剧集&电影&短剧&动漫&综艺', + proxy_rule: '', + sniffer: false, + isVideo: '', + play_parse: true, + parse_url: '', + lazy: "js:\n input = 'push://' + input;\n ", + limit: 9, + double: false, + // 推荐: '*', + 一级: 'js:\n let html = fetch(input);\n let list = pdfa(html, "body&&.semi-space-medium-vertical");\n VODS = list.map(x => {\n let remarks = pdfh(x, "div&&img&&alt");\n let vodName = pdfh(x, "div&&a&&title");\n // 过滤条件:迅雷云盘、.txt后缀、空名称\n if(remarks.includes("迅雷云盘") || vodName.endsWith(".txt") || !vodName.trim()) return null;\n return {\n vod_name: vodName,\n vod_pic: "https://image.uc.cn/s/uae/g/3o/broccoli/resource/202312/f3868960-9255-11ee-b5b0-eb0fcd1347fe.png",\n vod_remarks: remarks,\n vod_content: remarks,\n vod_id: pdfh(x, "div&&a&&href")\n };\n }).filter(x => x !== null);\n ', + 二级: { + title: 'h1&&Text', + img: 'img&&src', + desc: '.card-text:eq(2)&&Text;;;;', + content: 'body&&.semi-space-loose-vertical&&a&&href', + tabs: "js:TABS = ['爱搜']", + lists: "js:\n LISTS = [];\n let lists1 = pdfa(html, 'body&&.semi-space-loose-vertical').map(it => {\n let _tt = pdfh(it, 'span&&title');\n let _uu = pdfh(it, 'a&&href');\n return _tt + '$' + _uu;\n });\n LISTS.push(lists1);\n ", + }, + 搜索: 'js:\n let html = fetch(input);\n let list = pdfa(html, "body&&.semi-space-medium-vertical");\n VODS = list.map(x => {\n let remarks = pdfh(x, "div&&img&&alt");\n let vodName = pdfh(x, "div&&a&&title");\n // 过滤条件:迅雷云盘、.txt后缀、空名称\n if(remarks.includes("迅雷云盘") || vodName.endsWith(".txt") || !vodName.trim()) return null;\n return {\n vod_name: vodName,\n vod_pic: "https://image.uc.cn/s/uae/g/3o/broccoli/resource/202312/f3868960-9255-11ee-b5b0-eb0fcd1347fe.png",\n vod_remarks: remarks,\n vod_content: remarks,\n vod_id: pdfh(x, "div&&a&&href")\n };\n }).filter(x => x !== null);\n ', + cate_exclude: '首页|留言|APP|下载|资讯|新闻|动态', + tab_exclude: '猜你|喜欢|下载|剧情|榜|评论', + 类型: '影视', + homeUrl: 'https://www.esoua.com/', + 二级访问前: '', + encoding: 'utf-8', + search_encoding: '', + 图片来源: '', + 图片替换: '', + play_json: [], + pagecount: {}, + tab_remove: [], + tab_order: [], + tab_rename: {}, +} \ No newline at end of file diff --git a/潇洒/cloud/js/BK.js b/潇洒/cloud/js/BK.js new file mode 100644 index 00000000..f07dda16 --- /dev/null +++ b/潇洒/cloud/js/BK.js @@ -0,0 +1 @@ +dmFyIHJ1bGUgPSB7CiAgICB0aXRsZTogJ+eZvumFt+efreWJpycsCiAgICBob3N0OiAnaHR0cHM6Ly9hcGkua3VsZXUuY29tLycsCiAgICBob3N0SnM6ICcnLAogICAgaGVhZGVyczogewogICAgICAgICdVc2VyLUFnZW50JzogJ01vemlsbGEvNS4wIChMaW51eDsgQW5kcm9pZCAxMTsgUGl4ZWwgNSkgQXBwbGVXZWJLaXQvNTM3LjM2IChLSFRNTCwgbGlrZSBHZWNrbykgQ2hyb21lLzkwLjAuNDQzMC45MSBNb2JpbGUgU2FmYXJpLzUzNy4zNicsCiAgICB9LAogICAg57yW56CBOiAndXRmLTgnLAogICAgdGltZW91dDogNTAwMCwKICAgIHVybDogJ2h0dHBzOi8vYXBpLmt1bGV1LmNvbS9meWNsYXNzJywKICAgIGZpbHRlcl91cmw6ICcnLAogICAgZGV0YWlsVXJsOiAnJywKICAgIHNlYXJjaFVybDogJ2h0dHBzOi8vYXBpLmt1bGV1LmNvbS9hcGkvYmRkaj90ZXh0PSoqJywKICAgIHNlYXJjaGFibGU6IDEsCiAgICBxdWlja1NlYXJjaDogMSwKICAgIGZpbHRlcmFibGU6IDEsCiAgICBjbGFzc19uYW1lOiAn5LuK5pel5pu05pawJueZvuW6puefreWJpybmr4/ml6Xmm7TmlrAm5aS45YWL55+t5YmnJuavj+aXpeabtOaWsCcsCiAgICBjbGFzc191cmw6ICdhcGkveWluZ3NoaSZhcGkvYmRkaj9saXN0JmFwaS9iZGRqP3RvZGF5JmFwaS9hY3Rpb24/bGlzdCZhcGkvYWN0aW9uP3RvZGF5JywKICAgIHByb3h5X3J1bGU6ICcnLAogICAgc25pZmZlcjogZmFsc2UsCiAgICBpc1ZpZGVvOiAnJywKICAgIHBsYXlfcGFyc2U6IHRydWUsCiAgICBwYXJzZV91cmw6ICcnLAogICAgbGF6eTogImpzOlxuICAgICAgICBpbnB1dCA9ICdwdXNoOi8vJyArIGlucHV0O1xuICAgICIsCiAgICBsaW1pdDogOSwKICAgIGRvdWJsZTogZmFsc2UsCiAgICAvLyDmjqjojZA6ICcqJywKICAgIOS4gOe6pzogJGpzLnRvU3RyaW5nKCgpID0+IHsKICAgIGxldCBjaWQgPSBNWV9DQVRFIHx8ICcxMDgnOwogICAgbGV0IHBnID0gTVlfUEFHRSB8fCAxOwogICAgbGV0IHVybCA9IGBodHRwczovL2FwaS5rdWxldS5jb20vJHtjaWR9YDsKICAgIGxldCBraHRtbCA9IGZldGNoKHVybCwge2hlYWRlcnM6IHJ1bGUuaGVhZGVyc30pOwogICAgbGV0IGtqc29uID0gSlNPTi5wYXJzZShraHRtbCk7CiAgICBWT0RTID0gW107CiAgICBranNvbi5kYXRhLmZvckVhY2goaXQgPT4gewogICAgICAgIFZPRFMucHVzaCh7CiAgICAgICAgICAgIHZvZF9uYW1lOiBpdC5uYW1lLAogICAgICAgICAgICB2b2RfcGljOiBgaHR0cHM6Ly90c2UzLW1tLmNuLmJpbmcubmV0L3RoL2lkL09JUC1DLnJsUU9ZdHNyaXdXS0h3b2ZHdWZKX0FIYVFkP3c9MTU3Jmg9MzUwJmM9NyZyPTAmbz03JmRwcj0zLjcmcGlkPTEuNyZybT0zYCwKICAgICAgICAgICAgdm9kX3JlbWFya3M6IGl0LmFkZHRpbWUsCiAgICAgICAgICAgIHZvZF9pZDogYHB1c2g6Ly8ke2l0LnZpZXdsaW5rfWAKICAgICAgICB9KTsKICAgIH0pOwp9KSwKICAgIOS6jOe6pzogJyonLAogICAg5pCc57SiOiRqcy50b1N0cmluZygoKSA9PiB7CiAgICBsZXQgdXJsID0gYGh0dHBzOi8vYXBpLmt1bGV1LmNvbS9hcGkvYmRkaj90ZXh0PSR7S0VZfWA7CiAgICBsZXQga2h0bWwgPSBmZXRjaCh1cmwpOwogICAgbGV0IGtqc29uID0gSlNPTi5wYXJzZShraHRtbCk7CiAgICBWT0RTID0gW107CiAgICBranNvbi5kYXRhLmZvckVhY2goaXQgPT4gewogICAgICAgIFZPRFMucHVzaCh7CiAgICAgICAgICAgIHZvZF9uYW1lOiBpdC5uYW1lLAogICAgICAgICAgICB2b2RfcGljOiBpdC5wUGljLAogICAgICAgICAgICB2b2RfcmVtYXJrczogaXQuYWRkdGltZSwKICAgICAgICAgICAgdm9kX2lkOiBgcHVzaDovLyR7aXQudmlld2xpbmt9YAogICAgICAgIH0pCiAgICB9KQp9KSwKICAgIGNhdGVfZXhjbHVkZTogJ+mmlumhtXznlZnoqIB8QVBQfOS4i+i9vXzotYTorq985paw6Ze7fOWKqOaAgScsCiAgICB0YWJfZXhjbHVkZTogJ+eMnOS9oHzllpzmrKJ85LiL6L29fOWJp+aDhXzmppx86K+E6K66JywKICAgIOexu+WeizogJ+W9seinhicsCiAgICBob21lVXJsOiAnaHR0cHM6Ly93d3cubHpwYW54LmNvbS8nLAogICAg5LqM57qn6K6/6Zeu5YmNOiAnJywKICAgIGVuY29kaW5nOiAndXRmLTgnLAogICAgc2VhcmNoX2VuY29kaW5nOiAnJywKICAgIOWbvueJh+adpea6kDogJycsCiAgICDlm77niYfmm7/mjaI6ICcnLAogICAgcGxheV9qc29uOiBbXSwKICAgIHBhZ2Vjb3VudDoge30sCiAgICB0YWJfcmVtb3ZlOiBbXSwKICAgIHRhYl9vcmRlcjogW10sCiAgICB0YWJfcmVuYW1lOiB7fSwKfQ== \ No newline at end of file diff --git a/潇洒/cloud/js/DJDQ.js b/潇洒/cloud/js/DJDQ.js new file mode 100644 index 00000000..cf012c58 --- /dev/null +++ b/潇洒/cloud/js/DJDQ.js @@ -0,0 +1 @@ +dmFyIHJ1bGUgPSB7CiAgICDnsbvlnos6ICflvbHop4YnLCAvL+W9seinhnzlkKzkuaZ85ryr55S7fOWwj+ivtAogICAgdGl0bGU6ICfnn63liacnLAogICAgaG9zdDogJ2h0dHBzOi8vYWktaW1nLnljdWJicy5jbi8nLAogICAgaG9tZVVybDogJy9hcGkvZHVhbmp1L2xpc3QnLAogICAgdXJsOiAnL2FwaS9kdWFuanUvbGlzdCcsCiAgICBzZWFyY2hVcmw6ICdodHRwczovL2FwaS5rdWxldS5jb20vYXBpL2FjdGlvbj90ZXh0PSoqJywKICAgIHNlYXJjaGFibGU6IDEsCiAgICBxdWlja1NlYXJjaDogMCwKICAgIGZpbHRlcmFibGU6IDAsCiAgICBoZWFkZXJzOiB7CiAgICAgICAgJ1VzZXItQWdlbnQnOiAnTU9CSUxFX1VBJywKICAgIH0sCiAgICBoaWtlckxpc3RDb2w6ICJ0ZXh0XzEiLAogICAgaGlrZXJDbGFzc0xpc3RDb2w6ICJ0ZXh0XzEiLAogICAgdGltZW91dDogNTAwMCwKICAgIGNsYXNzX25hbWU6ICcnLAogICAgY2xhc3NfdXJsOiAnJywKICAgIHBsYXlfcGFyc2U6IHRydWUsCiAgICBsYXp5OiAkanMudG9TdHJpbmcoKCkgPT4gewogICAgICAgIGlucHV0ID0gInB1c2g6Ly8iICsgaW5wdXQ7CiAgICB9KSwKICAgIGRvdWJsZTogZmFsc2UsCiAgICDmjqjojZA6ICcqJywKICAgIOS4gOe6pzogJ2pzb246ZGF0YTtuYW1lOzs7dXJsJywKICAgIOS6jOe6pzogJyonLAogICAg5pCc57SiOiAnanNvbjpkYXRhO25hbWU7Ozt2aWV3bGluaycsCn0= \ No newline at end of file diff --git a/潇洒/cloud/js/DJHJ.js b/潇洒/cloud/js/DJHJ.js new file mode 100644 index 00000000..953f3d31 --- /dev/null +++ b/潇洒/cloud/js/DJHJ.js @@ -0,0 +1 @@ +dmFyIHJ1bGUgPSB7CiAgICDnsbvlnos6ICflvbHop4YnLCAvL+W9seinhnzlkKzkuaZ85ryr55S7fOWwj+ivtAogICAgdGl0bGU6ICfniLHnnIvnn63liadb55uYXScsCiAgICBob3N0OiAnaHR0cHM6Ly95cy4xMTB0LmNuLycsCiAgICBob21lVXJsOiAnL2FwaS9hamF4LnBocD9hY3Q9cmVjb21tZW5kJywKICAgIGhvbWVVcmw6ICcvYXBpL2FqYXgucGhwP2FjdD1EYWlseScsCiAgICB1cmw6ICcvYXBpL2FqYXgucGhwP2FjdD1meWNsYXNzJywKICAgIHNlYXJjaFVybDogJy9hcGkvYWpheC5waHA/YWN0PXNlYXJjaCZuYW1lPSoqJywKICAgIHNlYXJjaGFibGU6IDEsCiAgICBxdWlja1NlYXJjaDogMCwKICAgIGZpbHRlcmFibGU6IDAsCiAgICBoZWFkZXJzOiB7CiAgICAgICAgJ1VzZXItQWdlbnQnOiAnTU9CSUxFX1VBJywKICAgIH0sCiAgICBoaWtlckxpc3RDb2w6ICJ0ZXh0XzEiLAogICAgaGlrZXJDbGFzc0xpc3RDb2w6ICJ0ZXh0XzEiLAogICAgdGltZW91dDogNTAwMCwKICAgIGNsYXNzX25hbWU6ICflhajpg6gnLAogICAgY2xhc3NfdXJsOiAneWluZ3NoaWxpc3QnLAogICAgcGxheV9wYXJzZTogdHJ1ZSwKICAgIGxhenk6ICRqcy50b1N0cmluZygoKSA9PiB7CiAgICAgICAgaW5wdXQgPSAicHVzaDovLyIgKyBpbnB1dDsKICAgIH0pLAogICAgZG91YmxlOiBmYWxzZSwKICAgIOaOqOiNkDogJyonLAogICAg5LiA57qnOiAnanNvbjpkYXRhO25hbWU7O2FkZHRpbWU7dXJsJywKICAgIOS6jOe6pzogJyonLAogICAg5pCc57SiOiAnKicsCn0= \ No newline at end of file diff --git a/潇洒/cloud/js/KKPS.js b/潇洒/cloud/js/KKPS.js new file mode 100644 index 00000000..9855768b --- /dev/null +++ b/潇洒/cloud/js/KKPS.js @@ -0,0 +1,52 @@ +var rule = { + title: '懒盘搜', + host: 'https://qkpanso.com/', + hostJs: '', + headers: { + 'User-Agent': 'Mozilla/5.0 (Linux; Android 11; Pixel 5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/90.0.4430.91 Mobile Safari/537.36', + }, + 编码: 'utf-8', + timeout: 5000, + url: 'https://qkpanso.com/search?q=fyclass&format=video&page=fypage', + filter_url: '', + detailUrl: '', + searchUrl: 'https://qkpanso.com/search?q=**&exact=true&format=video&page=fypage', + searchable: 1, + quickSearch: 1, + filterable: 1, + class_name: '', + class_url: '', + proxy_rule: '', + sniffer: false, + isVideo: '', + play_parse: true, + parse_url: '', + lazy: "js:\n input = 'push://' + input;\n ", + limit: 9, + double: false, + // 推荐: '*', + 一级: 'js:\n let html = fetch(input);\n let list = pdfa(html, "body&&.semi-space-medium-vertical");\n VODS = list.map(x => {\n let remarks = pdfh(x, "div&&img&&alt");\n // 过滤掉包含"迅雷云盘"的内容\n if(remarks.includes("迅雷云盘")) return null;\n return {\n vod_name: pdfh(x, "div&&a&&title"),\n vod_pic: \'http://pic-smzy.oss-cn-beijing.aliyuncs.com/images/5e/2a/1410241152a3eca2eca7ace140ed1c0c01b12a5e.png\',\n vod_remarks: remarks,\n vod_content: remarks,\n vod_id: pdfh(x, "div&&a&&href")\n }\n }).filter(x => x !== null);\n ', + 二级: { + title: 'h1&&Text', + img: 'img&&src', + desc: '.card-text:eq(2)&&Text;;;;', + content: 'body&&.semi-space-loose-vertical&&a&&href', + tabs: "js:TABS = ['夸克盘搜']", + lists: "js:\n LISTS = [];\n let lists1 = pdfa(html, 'body&&.semi-space-loose-vertical').map(it => {\n let _tt = pdfh(it, 'span&&title');\n let _uu = pdfh(it, 'a&&href');\n return _tt + '$' + _uu;\n });\n LISTS.push(lists1);\n ", + }, + 搜索: 'js:\n let html = fetch(input);\n let list = pdfa(html, "body&&.semi-space-medium-vertical");\n VODS = list.map(x => {\n let remarks = pdfh(x, "div&&img&&alt");\n // 过滤掉包含"迅雷云盘"的内容\n if(remarks.includes("迅雷云盘")) return null;\n return {\n vod_name: pdfh(x, "div&&a&&title"),\n vod_pic: \'http://pic-smzy.oss-cn-beijing.aliyuncs.com/images/5e/2a/1410241152a3eca2eca7ace140ed1c0c01b12a5e.png\',\n vod_remarks: remarks,\n vod_content: remarks,\n vod_id: pdfh(x, "div&&a&&href")\n }\n }).filter(x => x !== null);\n ', + cate_exclude: '首页|留言|APP|下载|资讯|新闻|动态', + tab_exclude: '猜你|喜欢|下载|剧情|榜|评论', + 类型: '影视', + homeUrl: 'https://qkpanso.com/', + 二级访问前: '', + encoding: 'utf-8', + search_encoding: '', + 图片来源: '', + 图片替换: '', + play_json: [], + pagecount: {}, + tab_remove: [], + tab_order: [], + tab_rename: {}, +} \ No newline at end of file diff --git a/潇洒/cloud/js/LP.js b/潇洒/cloud/js/LP.js new file mode 100644 index 00000000..fea1aa70 --- /dev/null +++ b/潇洒/cloud/js/LP.js @@ -0,0 +1 @@ +dmFyIHJ1bGUgPSB7CiAgICB0aXRsZTogJ+aHkuebmOaQnCcsCiAgICBob3N0OiAnaHR0cHM6Ly93d3cubHpwYW54LmNvbS8nLAogICAgaG9zdEpzOiAnJywKICAgIGhlYWRlcnM6IHsKICAgICAgICAnVXNlci1BZ2VudCc6ICdNb3ppbGxhLzUuMCAoTGludXg7IEFuZHJvaWQgMTE7IFBpeGVsIDUpIEFwcGxlV2ViS2l0LzUzNy4zNiAoS0hUTUwsIGxpa2UgR2Vja28pIENocm9tZS85MC4wLjQ0MzAuOTEgTW9iaWxlIFNhZmFyaS81MzcuMzYnLAogICAgfSwKICAgIOe8lueggTogJ3V0Zi04JywKICAgIHRpbWVvdXQ6IDUwMDAsCiAgICB1cmw6ICdodHRwczovL3d3dy5senBhbnguY29tL3NlYXJjaD9xPWZ5Y2xhc3MmZm9ybWF0PXZpZGVvJnBhZ2U9ZnlwYWdlJywKICAgIGZpbHRlcl91cmw6ICcnLAogICAgZGV0YWlsVXJsOiAnJywKICAgIHNlYXJjaFVybDogJ2h0dHBzOi8vd3d3Lmx6cGFueC5jb20vc2VhcmNoP3E9KiomZm9ybWF0PXZpZGVvJnBhZ2U9ZnlwYWdlJywKICAgIHNlYXJjaGFibGU6IDEsCiAgICBxdWlja1NlYXJjaDogMSwKICAgIGZpbHRlcmFibGU6IDEsCiAgICBjbGFzc19uYW1lOiAn5Ymn6ZuGJueUteW9sSbnn63liacm5Yqo5ryrJue7vOiJuicsCiAgICBjbGFzc191cmw6ICfliafpm4Ym55S15b2xJuefree9keWJpybliqjmvKsm57u86Im6JywKICAgIHByb3h5X3J1bGU6ICcnLAogICAgc25pZmZlcjogZmFsc2UsCiAgICBpc1ZpZGVvOiAnJywKICAgIHBsYXlfcGFyc2U6IHRydWUsCiAgICBwYXJzZV91cmw6ICcnLAogICAgbGF6eTogImpzOlxuICAgICAgICBpbnB1dCA9ICdwdXNoOi8vJyArIGlucHV0O1xuICAgICIsCiAgICBsaW1pdDogOSwKICAgIGRvdWJsZTogZmFsc2UsCiAgICAvLyDmjqjojZA6ICcqJywKICAgIOS4gOe6pzogJ2pzOlxuICAgICAgICBsZXQgaHRtbCA9IGZldGNoKGlucHV0KTtcbiAgICAgICAgbGV0IGxpc3QgPSBwZGZhKGh0bWwsICJib2R5JiYuc2VtaS1zcGFjZS1tZWRpdW0tdmVydGljYWwiKTtcbiAgICAgICAgVk9EUyA9IGxpc3QubWFwKHggPT4ge1xuICAgICAgICAgICAgbGV0IHJlbWFya3MgPSBwZGZoKHgsICJkaXYmJmltZyYmYWx0Iik7XG4gICAgICAgICAgICAvLyDov4fmu6TmjonljIXlkKsi6L+F6Zu35LqR55uYIueahOWGheWuuVxuICAgICAgICAgICAgaWYocmVtYXJrcy5pbmNsdWRlcygi6L+F6Zu35LqR55uYIikpIHJldHVybiBudWxsO1xuICAgICAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgICAgICB2b2RfbmFtZTogcGRmaCh4LCAiZGl2JiZhJiZ0aXRsZSIpLFxuICAgICAgICAgICAgICAgIHZvZF9waWM6IFwnaHR0cHM6Ly93dzEuc2luYWltZy5jbi9tdzY5MC8wMDZmYU1uZGx5MWh0bWIxbTA4YWRqMzBlMjBlMnEzbS5qcGdcJyxcbiAgICAgICAgICAgICAgICB2b2RfcmVtYXJrczogcmVtYXJrcyxcbiAgICAgICAgICAgICAgICB2b2RfY29udGVudDogcmVtYXJrcyxcbiAgICAgICAgICAgICAgICB2b2RfaWQ6IHBkZmgoeCwgImRpdiYmYSYmaHJlZiIpXG4gICAgICAgICAgICB9XG4gICAgICAgIH0pLmZpbHRlcih4ID0+IHggIT09IG51bGwpO1xuICAgICcsCiAgICDkuoznuqc6IHsKICAgICAgICB0aXRsZTogJ2gxJiZUZXh0JywKICAgICAgICBpbWc6ICdpbWcmJnNyYycsCiAgICAgICAgZGVzYzogJy5jYXJkLXRleHQ6ZXEoMikmJlRleHQ7Ozs7JywKICAgICAgICBjb250ZW50OiAnYm9keSYmLnNlbWktc3BhY2UtbG9vc2UtdmVydGljYWwmJmEmJmhyZWYnLAogICAgICAgIHRhYnM6ICJqczpUQUJTID0gWyfmh5Lnm5gnXSIsCiAgICAgICAgbGlzdHM6ICJqczpcbiAgICAgICAgICAgIExJU1RTID0gW107XG4gICAgICAgICAgICBsZXQgbGlzdHMxID0gcGRmYShodG1sLCAnYm9keSYmLnNlbWktc3BhY2UtbG9vc2UtdmVydGljYWwnKS5tYXAoaXQgPT4ge1xuICAgICAgICAgICAgICAgIGxldCBfdHQgPSBwZGZoKGl0LCAnc3BhbiYmdGl0bGUnKTtcbiAgICAgICAgICAgICAgICBsZXQgX3V1ID0gcGRmaChpdCwgJ2EmJmhyZWYnKTtcbiAgICAgICAgICAgICAgICByZXR1cm4gX3R0ICsgJyQnICsgX3V1O1xuICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICBMSVNUUy5wdXNoKGxpc3RzMSk7XG4gICAgICAgICIsCiAgICB9LAogICAg5pCc57SiOiAnanM6XG4gICAgICAgIGxldCBodG1sID0gZmV0Y2goaW5wdXQpO1xuICAgICAgICBsZXQgbGlzdCA9IHBkZmEoaHRtbCwgImJvZHkmJi5zZW1pLXNwYWNlLW1lZGl1bS12ZXJ0aWNhbCIpO1xuICAgICAgICBWT0RTID0gbGlzdC5tYXAoeCA9PiB7XG4gICAgICAgICAgICBsZXQgcmVtYXJrcyA9IHBkZmgoeCwgImRpdiYmaW1nJiZhbHQiKTtcbiAgICAgICAgICAgIC8vIOi/h+a7pOaOieWMheWQqyLov4Xpm7fkupHnm5gi55qE5YaF5a65XG4gICAgICAgICAgICBpZihyZW1hcmtzLmluY2x1ZGVzKCLov4Xpm7fkupHnm5giKSkgcmV0dXJuIG51bGw7XG4gICAgICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgICAgIHZvZF9uYW1lOiBwZGZoKHgsICJkaXYmJmEmJnRpdGxlIiksXG4gICAgICAgICAgICAgICAgdm9kX3BpYzogXCdodHRwczovL3d3MS5zaW5haW1nLmNuL213NjkwLzAwNmZhTW5kbHkxaHRtYjFtMDhhZGozMGUyMGUycTNtLmpwZ1wnLFxuICAgICAgICAgICAgICAgIHZvZF9yZW1hcmtzOiByZW1hcmtzLFxuICAgICAgICAgICAgICAgIHZvZF9jb250ZW50OiByZW1hcmtzLFxuICAgICAgICAgICAgICAgIHZvZF9pZDogcGRmaCh4LCAiZGl2JiZhJiZocmVmIilcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSkuZmlsdGVyKHggPT4geCAhPT0gbnVsbCk7XG4gICAgJywKICAgIGNhdGVfZXhjbHVkZTogJ+mmlumhtXznlZnoqIB8QVBQfOS4i+i9vXzotYTorq985paw6Ze7fOWKqOaAgScsCiAgICB0YWJfZXhjbHVkZTogJ+eMnOS9oHzllpzmrKJ85LiL6L29fOWJp+aDhXzmppx86K+E6K66JywKICAgIOexu+WeizogJ+W9seinhicsCiAgICBob21lVXJsOiAnaHR0cHM6Ly93d3cubHpwYW54LmNvbS8nLAogICAg5LqM57qn6K6/6Zeu5YmNOiAnJywKICAgIGVuY29kaW5nOiAndXRmLTgnLAogICAgc2VhcmNoX2VuY29kaW5nOiAnJywKICAgIOWbvueJh+adpea6kDogJycsCiAgICDlm77niYfmm7/mjaI6ICcnLAogICAgcGxheV9qc29uOiBbXSwKICAgIHBhZ2Vjb3VudDoge30sCiAgICB0YWJfcmVtb3ZlOiBbXSwKICAgIHRhYl9vcmRlcjogW10sCiAgICB0YWJfcmVuYW1lOiB7fSwKfQ== \ No newline at end of file diff --git a/潇洒/cloud/js/MS.js b/潇洒/cloud/js/MS.js new file mode 100644 index 00000000..9ec24f93 --- /dev/null +++ b/潇洒/cloud/js/MS.js @@ -0,0 +1 @@ +dmFyIHJ1bGUgPSB7CiAgICB0aXRsZTogJ+exs+aQnCcsCiAgICBob3N0OiAnaHR0cHM6Ly9taXNvc28uY2MvJywKICAgIGhvc3RKczogJycsCiAgICBoZWFkZXJzOiB7CiAgICAgICAgJ1VzZXItQWdlbnQnOiAnTW96aWxsYS81LjAgKExpbnV4OyBBbmRyb2lkIDExOyBQaXhlbCA1KSBBcHBsZVdlYktpdC81MzcuMzYgKEtIVE1MLCBsaWtlIEdlY2tvKSBDaHJvbWUvOTAuMC40NDMwLjkxIE1vYmlsZSBTYWZhcmkvNTM3LjM2JywKICAgIH0sCiAgICDnvJbnoIE6ICd1dGYtOCcsCiAgICB0aW1lb3V0OiA1MDAwLAogICAgdXJsOiAnaHR0cHM6Ly9taXNvc28uY2Mvc2VhcmNoP3E9ZnljbGFzcyZmb3JtYXQ9dmlkZW8mcGFnZT1meXBhZ2UnLAogICAgZmlsdGVyX3VybDogJycsCiAgICBkZXRhaWxVcmw6ICcnLAogICAgc2VhcmNoVXJsOiAnaHR0cHM6Ly9taXNvc28uY2Mvc2VhcmNoP3E9KiomZm9ybWF0PXZpZGVvJnBhZ2U9ZnlwYWdlJywKICAgIHNlYXJjaGFibGU6IDEsCiAgICBxdWlja1NlYXJjaDogMSwKICAgIGZpbHRlcmFibGU6IDEsCiAgICBjbGFzc19uYW1lOiAnJywKICAgIGNsYXNzX3VybDogJycsCiAgICBwcm94eV9ydWxlOiAnJywKICAgIHNuaWZmZXI6IGZhbHNlLAogICAgaXNWaWRlbzogJycsCiAgICBwbGF5X3BhcnNlOiB0cnVlLAogICAgcGFyc2VfdXJsOiAnJywKICAgIGxhenk6ICJqczpcbiAgICAgICAgaW5wdXQgPSAncHVzaDovLycgKyBpbnB1dDtcbiAgICAiLAogICAgbGltaXQ6IDksCiAgICBkb3VibGU6IGZhbHNlLAogICAgLy8g5o6o6I2QOiAnKicsCiAgICDkuIDnuqc6ICdqczpcbiAgICAgICAgbGV0IGh0bWwgPSBmZXRjaChpbnB1dCk7XG4gICAgICAgIGxldCBsaXN0ID0gcGRmYShodG1sLCAiYm9keSYmLnNlbWktc3BhY2UtbWVkaXVtLXZlcnRpY2FsIik7XG4gICAgICAgIFZPRFMgPSBsaXN0Lm1hcCh4ID0+IHtcbiAgICAgICAgICAgIGxldCByZW1hcmtzID0gcGRmaCh4LCAiZGl2JiZpbWcmJmFsdCIpO1xuICAgICAgICAgICAgLy8g6L+H5ruk5o6J5YyF5ZCrIui/hembt+S6keebmCLnmoTlhoXlrrlcbiAgICAgICAgICAgIGlmKHJlbWFya3MuaW5jbHVkZXMoIui/hembt+S6keebmCIpKSByZXR1cm4gbnVsbDtcbiAgICAgICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICAgICAgdm9kX25hbWU6IHBkZmgoeCwgImRpdiYmYSYmdGl0bGUiKSxcbiAgICAgICAgICAgICAgICB2b2RfcGljOiBcJ2h0dHBzOi8vaXMyLXNzbC5tenN0YXRpYy5jb20vaW1hZ2UvdGh1bWIvUHVycGxlMTIzL3Y0LzQ5LzI1Lzk3LzQ5MjU5Nzc1LTFhNmItYmE2Mi0zYzI4LWIyN2JmNjcxMmFkZS9zb3VyY2UvMTAyNHgxMDI0YmIuanBnXCcsXG4gICAgICAgICAgICAgICAgdm9kX3JlbWFya3M6IHJlbWFya3MsXG4gICAgICAgICAgICAgICAgdm9kX2NvbnRlbnQ6IHJlbWFya3MsXG4gICAgICAgICAgICAgICAgdm9kX2lkOiBwZGZoKHgsICJkaXYmJmEmJmhyZWYiKVxuICAgICAgICAgICAgfVxuICAgICAgICB9KS5maWx0ZXIoeCA9PiB4ICE9PSBudWxsKTtcbiAgICAnLAogICAg5LqM57qnOiB7CiAgICAgICAgdGl0bGU6ICdoMSYmVGV4dCcsCiAgICAgICAgaW1nOiAnaW1nJiZzcmMnLAogICAgICAgIGRlc2M6ICcuY2FyZC10ZXh0OmVxKDIpJiZUZXh0Ozs7OycsCiAgICAgICAgY29udGVudDogJ2JvZHkmJi5zZW1pLXNwYWNlLWxvb3NlLXZlcnRpY2FsJiZhJiZocmVmJywKICAgICAgICB0YWJzOiAianM6VEFCUyA9IFsn57Gz5pCcJ10iLAogICAgICAgIGxpc3RzOiAianM6XG4gICAgICAgICAgICBMSVNUUyA9IFtdO1xuICAgICAgICAgICAgbGV0IGxpc3RzMSA9IHBkZmEoaHRtbCwgJ2JvZHkmJi5zZW1pLXNwYWNlLWxvb3NlLXZlcnRpY2FsJykubWFwKGl0ID0+IHtcbiAgICAgICAgICAgICAgICBsZXQgX3R0ID0gcGRmaChpdCwgJ3NwYW4mJnRpdGxlJyk7XG4gICAgICAgICAgICAgICAgbGV0IF91dSA9IHBkZmgoaXQsICdhJiZocmVmJyk7XG4gICAgICAgICAgICAgICAgcmV0dXJuIF90dCArICckJyArIF91dTtcbiAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgTElTVFMucHVzaChsaXN0czEpO1xuICAgICAgICAiLAogICAgfSwKICAgIOaQnOe0ojogJ2pzOlxuICAgICAgICBsZXQgaHRtbCA9IGZldGNoKGlucHV0KTtcbiAgICAgICAgbGV0IGxpc3QgPSBwZGZhKGh0bWwsICJib2R5JiYuc2VtaS1zcGFjZS1tZWRpdW0tdmVydGljYWwiKTtcbiAgICAgICAgVk9EUyA9IGxpc3QubWFwKHggPT4ge1xuICAgICAgICAgICAgbGV0IHJlbWFya3MgPSBwZGZoKHgsICJkaXYmJmltZyYmYWx0Iik7XG4gICAgICAgICAgICAvLyDov4fmu6TmjonljIXlkKsi6L+F6Zu35LqR55uYIueahOWGheWuuVxuICAgICAgICAgICAgaWYocmVtYXJrcy5pbmNsdWRlcygi6L+F6Zu35LqR55uYIikpIHJldHVybiBudWxsO1xuICAgICAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgICAgICB2b2RfbmFtZTogcGRmaCh4LCAiZGl2JiZhJiZ0aXRsZSIpLFxuICAgICAgICAgICAgICAgIHZvZF9waWM6IFwnaHR0cHM6Ly9pczItc3NsLm16c3RhdGljLmNvbS9pbWFnZS90aHVtYi9QdXJwbGUxMjMvdjQvNDkvMjUvOTcvNDkyNTk3NzUtMWE2Yi1iYTYyLTNjMjgtYjI3YmY2NzEyYWRlL3NvdXJjZS8xMDI0eDEwMjRiYi5qcGdcJyxcbiAgICAgICAgICAgICAgICB2b2RfcmVtYXJrczogcmVtYXJrcyxcbiAgICAgICAgICAgICAgICB2b2RfY29udGVudDogcmVtYXJrcyxcbiAgICAgICAgICAgICAgICB2b2RfaWQ6IHBkZmgoeCwgImRpdiYmYSYmaHJlZiIpXG4gICAgICAgICAgICB9XG4gICAgICAgIH0pLmZpbHRlcih4ID0+IHggIT09IG51bGwpO1xuICAgICcsCiAgICBjYXRlX2V4Y2x1ZGU6ICfpppbpobV855WZ6KiAfEFQUHzkuIvovb186LWE6K6vfOaWsOmXu3zliqjmgIEnLAogICAgdGFiX2V4Y2x1ZGU6ICfnjJzkvaB85Zac5qyifOS4i+i9vXzliafmg4V85qacfOivhOiuuicsCiAgICDnsbvlnos6ICflvbHop4YnLAogICAgaG9tZVVybDogJ2h0dHBzOi8vbWlzb3NvLmNjLycsCiAgICDkuoznuqforr/pl67liY06ICcnLAogICAgZW5jb2Rpbmc6ICd1dGYtOCcsCiAgICBzZWFyY2hfZW5jb2Rpbmc6ICcnLAogICAg5Zu+54mH5p2l5rqQOiAnJywKICAgIOWbvueJh+abv+aNojogJycsCiAgICBwbGF5X2pzb246IFtdLAogICAgcGFnZWNvdW50OiB7fSwKICAgIHRhYl9yZW1vdmU6IFtdLAogICAgdGFiX29yZGVyOiBbXSwKICAgIHRhYl9yZW5hbWU6IHt9LAp9 \ No newline at end of file diff --git a/潇洒/cloud/js/QP.js b/潇洒/cloud/js/QP.js new file mode 100644 index 00000000..3509e7ef --- /dev/null +++ b/潇洒/cloud/js/QP.js @@ -0,0 +1,52 @@ +var rule = { + title: '懒盘搜', + host: 'https://so.yuneu.com/', + hostJs: '', + headers: { + 'User-Agent': 'Mozilla/5.0 (Linux; Android 11; Pixel 5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/90.0.4430.91 Mobile Safari/537.36', + }, + 编码: 'utf-8', + timeout: 5000, + url: 'https://so.yuneu.com/search?q=fyclass&format=video&page=fypage', + filter_url: '', + detailUrl: '', + searchUrl: 'https://so.yuneu.com/search?q=**&format=video&page=fypage', + searchable: 1, + quickSearch: 1, + filterable: 1, + class_name: '', + class_url: '', + proxy_rule: '', + sniffer: false, + isVideo: '', + play_parse: true, + parse_url: '', + lazy: "js:\n input = 'push://' + input;\n ", + limit: 9, + double: false, + // 推荐: '*', + 一级: 'js:\n let html = fetch(input);\n let list = pdfa(html, "body&&.semi-space-medium-vertical");\n VODS = list.map(x => {\n let remarks = pdfh(x, "div&&img&&alt");\n // 过滤掉包含"迅雷云盘"的内容\n if(remarks.includes("迅雷云盘")) return null;\n return {\n vod_name: pdfh(x, "div&&a&&title"),\n vod_pic: \'https://img0.baidu.com/it/u=2841223652,2325996620&fm=253&fmt=auto&app=138&f=JPEG?w=500&h=500\',\n vod_remarks: remarks,\n vod_content: remarks,\n vod_id: pdfh(x, "div&&a&&href")\n }\n }).filter(x => x !== null);\n ', + 二级: { + title: 'h1&&Text', + img: 'img&&src', + desc: '.card-text:eq(2)&&Text;;;;', + content: 'body&&.semi-space-loose-vertical&&a&&href', + tabs: "js:TABS = ['全盘搜']", + lists: "js:\n LISTS = [];\n let lists1 = pdfa(html, 'body&&.semi-space-loose-vertical').map(it => {\n let _tt = pdfh(it, 'span&&title');\n let _uu = pdfh(it, 'a&&href');\n return _tt + '$' + _uu;\n });\n LISTS.push(lists1);\n ", + }, + 搜索: 'js:\n let html = fetch(input);\n let list = pdfa(html, "body&&.semi-space-medium-vertical");\n VODS = list.map(x => {\n let remarks = pdfh(x, "div&&img&&alt");\n // 过滤掉包含"迅雷云盘"的内容\n if(remarks.includes("迅雷云盘")) return null;\n return {\n vod_name: pdfh(x, "div&&a&&title"),\n vod_pic: \'https://img0.baidu.com/it/u=2841223652,2325996620&fm=253&fmt=auto&app=138&f=JPEG?w=500&h=500\',\n vod_remarks: remarks,\n vod_content: remarks,\n vod_id: pdfh(x, "div&&a&&href")\n }\n }).filter(x => x !== null);\n ', + cate_exclude: '首页|留言|APP|下载|资讯|新闻|动态', + tab_exclude: '猜你|喜欢|下载|剧情|榜|评论', + 类型: '影视', + homeUrl: 'https://so.yuneu.com/', + 二级访问前: '', + encoding: 'utf-8', + search_encoding: '', + 图片来源: '', + 图片替换: '', + play_json: [], + pagecount: {}, + tab_remove: [], + tab_order: [], + tab_rename: {}, +} \ No newline at end of file diff --git a/潇洒/cloud/js/RR.js b/潇洒/cloud/js/RR.js new file mode 100644 index 00000000..db25fad3 --- /dev/null +++ b/潇洒/cloud/js/RR.js @@ -0,0 +1,102 @@ +var rule = { + title:'人人影视[搜]', + host:'https://yyets.click', + homeUrl:'/', + url:'*', + filter_url:'{{fl.class}}', + filter:{ + }, + searchUrl: '*', + searchable:2, + quickSearch:0, + filterable:0, + headers:{ + 'User-Agent': PC_UA, + 'Accept': '*/*', + 'Referer': 'https://yyets.click/', + 'Cookie':'http://127.0.0.1:9978/file:///tvbox/JS/lib/yyets.txt', + }, + timeout:5000, + class_name:'', + class_url:'', + play_parse:true, + play_json:[{ + re:'*', + json:{ + parse:0, + jx:0 + } + }], + lazy:'', + limit:6, + 推荐:'', + 一级:'', + 二级:`js: +VOD.vod_play_from = "人人分享站"; +VOD.vod_remarks = detailUrl; +VOD.vod_actor = "沒有二级,只有一级链接直接推送播放"; +VOD.vod_content = MY_URL; +VOD.vod_play_url = "人人分享站$" + detailUrl; +`, + 搜索:`js: +pdfh=jsp.pdfh;pdfa=jsp.pdfa;pd=jsp.pd; +if (rule_fetch_params.headers.Cookie.startsWith("http")){ + rule_fetch_params.headers.Cookie=fetch(rule_fetch_params.headers.Cookie); + let cookie = rule_fetch_params.headers.Cookie; + setItem(RULE_CK, cookie); +}; +log('yyets search cookie>>>>>>>>>>>>>>>' + rule_fetch_params.headers.Cookie); +let _fetch_params = JSON.parse(JSON.stringify(rule_fetch_params)); +_fetch_params.headers.Referer = 'http://yyets.click/search?keyword=' + encodeURIComponent(KEY) + '&type=default'; +log('yyets search params>>>>>>>>>>>>>>>' + JSON.stringify(_fetch_params)); +let new_html=request(rule.homeUrl + 'api/resource?keyword=' + encodeURIComponent(KEY) + '&type=default', _fetch_params); +//log("yyets search result>>>>>>>>>>>>>>>" + new_html); +let json=JSON.parse(new_html); +let d=[]; +for(const it in json.comment){ + if (json.comment.hasOwnProperty(it)){ + log("yyets search it>>>>>>>>>>>>>>>" + JSON.stringify(json.comment[it])); + if (/(www.aliyundrive.com|pan.quark.cn|www.alipan.com)/.test(json.comment[it].comment)){ + let its = json.comment[it].comment.split("\\n"); + let i=0; + while(i>>>>>>>>>>>>>>" + title); + while(++i>>>>>>>>>>>>>>" + its[i]); + let burl = its[i].trim().split(" ")[0]; + if (burl.length==0){ + continue; + } + if (burl.includes("https://")){ + urls.push("https:"+burl.split("https:")[1]); + }else{ + break; + } + } + if (urls.length>0){ + log("yyets search title,urls>>>>>>>>>>>>>>>" + title + ",[" + JSON.stringify(urls) + "]"); + if (title.includes(KEY)){ + urls.forEach(function (url) { + d.push({ + title:title, + img:'', + content:json.comment[it].comment, + desc:json.comment[it].date, + url:'push://'+url + }); + }); + } + } + } + } + } +} +setResult(d); +`, +} diff --git a/潇洒/cloud/js/RRDYW.js b/潇洒/cloud/js/RRDYW.js new file mode 100644 index 00000000..f8aaab0a --- /dev/null +++ b/潇洒/cloud/js/RRDYW.js @@ -0,0 +1,120 @@ +var rule = { + title: '人人电影网', + host: 'https://www.rrdynb.com', + homeUrl: '/', + url: '/fyclass_fypage.html?', + filter_url: '{{fl.class}}', + filter: {}, + searchUrl: '/plus/search.php?q=**&pagesize=10&submit=', + searchable: 2, + quickSearch: 1, + filterable: 0, + headers: { + 'User-Agent': 'PC_UA', + 'Cookie': '' + }, + timeout: 5000, + class_name: '影视&电视剧&老电影&动漫', + class_url: 'movie/list_2&dianshiju/list_6&zongyi/list_10&dongman/list_13', + play_parse: true, + play_json: [{ + re: '*', + json: { + parse: 0, + jx: 0 + } + }], + lazy: "js:\n input = 'push://' + input;\n ", + limit: 6, + 推荐: '', + 一级: 'li:has(img);img&&alt;img&&data-original;;a&&href', + 二级: { + title: "h1&&Text", + img: "img&&src", + desc: "", + content: "span&&Text", + tabs: `js: pdfh = jsp.pdfh; + pdfa = jsp.pdfa; + pd = jsp.pd; + TABS = [] + let d = pdfa(html, 'span a'); + let tabsa = []; + let tabsq = []; + let tabsm = false; + let tabse = false; + d.forEach(function(it) { + let burl = pdfh(it, 'a&&href'); + if (burl.startsWith("https://pan.quark.cn/s/")) { + tabsq.push("夸克网盘"); + } else if (burl.startsWith("magnet")) { + tabsm = true; + } else if (burl.startsWith("ed2k")) { + tabse = true; + } + }); + if (tabsm === true) { + TABS.push("磁力"); + } + if (tabse === true) { + TABS.push("电驴"); + } + let tmpIndex; + tmpIndex = 1; + tabsa.forEach(function(it) { + TABS.push(it + tmpIndex); + tmpIndex = tmpIndex + 1; + }); + tmpIndex = 1; + tabsq.forEach(function(it) { + TABS.push(it + tmpIndex); + tmpIndex = tmpIndex + 1; + }); + log('alyps TABS >>>>>>>>>>>>>>>>>>' + TABS);`, + lists: `js: log(TABS); + pdfh = jsp.pdfh; + pdfa = jsp.pdfa; + pd = jsp.pd; + LISTS = []; + let d = pdfa(html, 'span a'); + let lista = []; + let listq = []; + let listm = []; + let liste = []; + d.forEach(function(it) { + let burl = pdfh(it, 'a&&href'); + let title = pdfh(it, 'a&&Text'); + log('alyps title >>>>>>>>>>>>>>>>>>>>>>>>>>' + title); + log('alyps burl >>>>>>>>>>>>>>>>>>>>>>>>>>' + burl); + let loopresult = title + '$' + burl; + if (burl.startsWith("https://pan.quark.cn/s/")) { + if (TABS.length == 1) { + burl = burl.replace("?entry=sjss", ""), + burl = "http://127.0.0.1:9978/proxy?do=quark&type=push&confirm=0&url=" + encodeURIComponent(burl); + } else { + burl = burl.replace("?entry=sjss", ""), + burl = "http://127.0.0.1:9978/proxy?do=quark&type=push&url=" + encodeURIComponent(burl); + } + loopresult = title + '$' + burl; + listq.push(loopresult); + } else if (burl.startsWith("magnet")) { + listm.push(loopresult); + } else if (burl.startsWith("ed2k")) { + liste.push(loopresult); + } + }); + if (listm.length > 0) { + LISTS.push(listm.reverse()); + } + if (liste.length > 0) { + LISTS.push(liste.reverse()); + } + lista.forEach(function(it) { + LISTS.push([it]); + }); + listq.forEach(function(it) { + LISTS.push([it]); + });`, + + }, + 搜索: 'li:has(img);h2&&Text;img&&data-original;.tags&&Text;a&&href', +} diff --git a/潇洒/cloud/js/RRFXZ.js b/潇洒/cloud/js/RRFXZ.js new file mode 100644 index 00000000..db25fad3 --- /dev/null +++ b/潇洒/cloud/js/RRFXZ.js @@ -0,0 +1,102 @@ +var rule = { + title:'人人影视[搜]', + host:'https://yyets.click', + homeUrl:'/', + url:'*', + filter_url:'{{fl.class}}', + filter:{ + }, + searchUrl: '*', + searchable:2, + quickSearch:0, + filterable:0, + headers:{ + 'User-Agent': PC_UA, + 'Accept': '*/*', + 'Referer': 'https://yyets.click/', + 'Cookie':'http://127.0.0.1:9978/file:///tvbox/JS/lib/yyets.txt', + }, + timeout:5000, + class_name:'', + class_url:'', + play_parse:true, + play_json:[{ + re:'*', + json:{ + parse:0, + jx:0 + } + }], + lazy:'', + limit:6, + 推荐:'', + 一级:'', + 二级:`js: +VOD.vod_play_from = "人人分享站"; +VOD.vod_remarks = detailUrl; +VOD.vod_actor = "沒有二级,只有一级链接直接推送播放"; +VOD.vod_content = MY_URL; +VOD.vod_play_url = "人人分享站$" + detailUrl; +`, + 搜索:`js: +pdfh=jsp.pdfh;pdfa=jsp.pdfa;pd=jsp.pd; +if (rule_fetch_params.headers.Cookie.startsWith("http")){ + rule_fetch_params.headers.Cookie=fetch(rule_fetch_params.headers.Cookie); + let cookie = rule_fetch_params.headers.Cookie; + setItem(RULE_CK, cookie); +}; +log('yyets search cookie>>>>>>>>>>>>>>>' + rule_fetch_params.headers.Cookie); +let _fetch_params = JSON.parse(JSON.stringify(rule_fetch_params)); +_fetch_params.headers.Referer = 'http://yyets.click/search?keyword=' + encodeURIComponent(KEY) + '&type=default'; +log('yyets search params>>>>>>>>>>>>>>>' + JSON.stringify(_fetch_params)); +let new_html=request(rule.homeUrl + 'api/resource?keyword=' + encodeURIComponent(KEY) + '&type=default', _fetch_params); +//log("yyets search result>>>>>>>>>>>>>>>" + new_html); +let json=JSON.parse(new_html); +let d=[]; +for(const it in json.comment){ + if (json.comment.hasOwnProperty(it)){ + log("yyets search it>>>>>>>>>>>>>>>" + JSON.stringify(json.comment[it])); + if (/(www.aliyundrive.com|pan.quark.cn|www.alipan.com)/.test(json.comment[it].comment)){ + let its = json.comment[it].comment.split("\\n"); + let i=0; + while(i>>>>>>>>>>>>>>" + title); + while(++i>>>>>>>>>>>>>>" + its[i]); + let burl = its[i].trim().split(" ")[0]; + if (burl.length==0){ + continue; + } + if (burl.includes("https://")){ + urls.push("https:"+burl.split("https:")[1]); + }else{ + break; + } + } + if (urls.length>0){ + log("yyets search title,urls>>>>>>>>>>>>>>>" + title + ",[" + JSON.stringify(urls) + "]"); + if (title.includes(KEY)){ + urls.forEach(function (url) { + d.push({ + title:title, + img:'', + content:json.comment[it].comment, + desc:json.comment[it].date, + url:'push://'+url + }); + }); + } + } + } + } + } +} +setResult(d); +`, +} diff --git a/潇洒/cloud/js/SX.js b/潇洒/cloud/js/SX.js new file mode 100644 index 00000000..7d06c852 --- /dev/null +++ b/潇洒/cloud/js/SX.js @@ -0,0 +1 @@ +dmFyIHJ1bGUgPSB7CiAgICB0aXRsZTogJ+WPjOWtkOaYnycsCiAgICBob3N0OiAnaHR0cHM6Ly8xLnN0YXIyLmNuJywKICAgIGhvc3RKczogJycsCiAgICBoZWFkZXJzOiB7CiAgICAgICAgJ1VzZXItQWdlbnQnOiAnTW96aWxsYS81LjAgKExpbnV4OyBBbmRyb2lkIDExOyBQaXhlbCA1KSBBcHBsZVdlYktpdC81MzcuMzYgKEtIVE1MLCBsaWtlIEdlY2tvKSBDaHJvbWUvOTAuMC40NDMwLjkxIE1vYmlsZSBTYWZhcmkvNTM3LjM2JywKICAgIH0sCiAgICDnvJbnoIE6ICd1dGYtOCcsCiAgICB0aW1lb3V0OiA1MDAwLAogICAgdXJsOiAnaHR0cHM6Ly8xLnN0YXIyLmNuL2Z5Y2xhc3MvJywKICAgIGZpbHRlcl91cmw6ICcnLAogICAgZGV0YWlsVXJsOiAnJywKICAgIHNlYXJjaFVybDogJ2h0dHBzOi8vMS5zdGFyMi5jbi9zZWFyY2gvP2tleXdvcmQ9KionLAogICAgc2VhcmNoYWJsZTogMSwKICAgIHF1aWNrU2VhcmNoOiAxLAogICAgZmlsdGVyYWJsZTogMSwKICAgIGNsYXNzX25hbWU6ICfnn63liacm5Zu95YmnJue7vOiJuibnlLXlvbEm6Z+p5pelJuiLsee+jiblpJbliacm5Yqo5ryrJywKICAgIGNsYXNzX3VybDogJ2RqJmp1Jnp5Jm12JnJoJnltJndqJmRtJywKICAgIHByb3h5X3J1bGU6ICcnLAogICAgc25pZmZlcjogZmFsc2UsCiAgICBpc1ZpZGVvOiAnJywKICAgIHBsYXlfcGFyc2U6IHRydWUsCiAgICBwYXJzZV91cmw6ICcnLAogICAgbGF6eTogImpzOlxuICAgICAgICBpbnB1dCA9ICdwdXNoOi8vJyArIGlucHV0O1xuICAgICIsCiAgICBsaW1pdDogOSwKICAgIGRvdWJsZTogZmFsc2UsCiAgICDmjqjojZA6ICcqJywKICAgIOS4gOe6pzogJ2pzOlxuICAgICAgICBsZXQgaHRtbCA9IGZldGNoKGlucHV0KTtcbiAgICAgICAgbGV0IGxpc3QgPSBwZGZhKGh0bWwsICIuZXJ4LWxpc3QmJmxpIik7XG4gICAgICAgIFZPRFMgPSBsaXN0Lm1hcCh4ID0+IHtcbiAgICAgICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICAgICAgdm9kX25hbWU6IHBkZmgoeCwgImEmJlRleHQiKSxcbiAgICAgICAgICAgICAgICB2b2RfcGljOiBcJ2h0dHBzOi8vZnMtaW0ta2VmdS43bW9vci1mczEuY29tL2x5LzRkMmMzZjAwLTdkNGMtMTFlNS1hZjE1LTQxYmY2M2FlNGVhMC8xNzQ2MjY5ODI3MTIwLzEuanBlZ1wnLFxuICAgICAgICAgICAgICAgIHZvZF9yZW1hcmtzOiBwZGZoKHgsICJhJiZUZXh0IiksXG4gICAgICAgICAgICAgICAgdm9kX2NvbnRlbnQ6IHBkZmgoeCwgImEmJlRleHQiKSxcbiAgICAgICAgICAgICAgICB2b2RfaWQ6IHBkZmgoeCwgImEmJmhyZWYiKVxuICAgICAgICAgICAgfVxuICAgICAgICB9KTtcbiAgICAnLAogICAg5LqM57qnOiB7CiAgICAgICAgdGl0bGU6ICdoMSYmVGV4dCcsCiAgICAgICAgaW1nOiAnaHR0cHM6Ly9mcy1pbS1rZWZ1Ljdtb29yLWZzMS5jb20vbHkvNGQyYzNmMDAtN2Q0Yy0xMWU1LWFmMTUtNDFiZjYzYWU0ZWEwLzE3NDYyNjk4MjcxMjAvMS5qcGVnJywKICAgICAgICBkZXNjOiAnLmNhcmQtdGV4dDplcSgyKSYmVGV4dDs7OzsnLAogICAgICAgIGNvbnRlbnQ6ICcuY2FyZC10ZXh0OmVxKDApJiZUZXh0JywKICAgICAgICB0YWJzOiAianM6VEFCUyA9IFsn5Y+M5pifJ10iLAogICAgICAgIGxpc3RzOiAianM6XG4gICAgICAgICAgICBMSVNUUyA9IFtdO1xuICAgICAgICAgICAgbGV0IGxpc3RzMSA9IHBkZmEoaHRtbCwgJy5kbGlwcC1jb250LWJkJykubWFwKGl0ID0+IHtcbiAgICAgICAgICAgICAgICBsZXQgX3R0ID0gcGRmaChpdCwgJ2EmJlRleHQnKTtcbiAgICAgICAgICAgICAgICBsZXQgX3V1ID0gcGRmaChpdCwgJ2EmJmhyZWYnKTtcbiAgICAgICAgICAgICAgICByZXR1cm4gX3R0ICsgJyQnICsgX3V1O1xuICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICBMSVNUUy5wdXNoKGxpc3RzMSk7XG4gICAgICAgICIsCiAgICB9LAogICAg5pCc57SiOiAnanM6XG4gICAgICAgIGxldCBodG1sID0gZmV0Y2goaW5wdXQpO1xuICAgICAgICBsZXQgbGlzdCA9IHBkZmEoaHRtbCwgIi5lcngtbGlzdCYmbGkiKTtcbiAgICAgICAgVk9EUyA9IGxpc3QubWFwKHggPT4ge1xuICAgICAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgICAgICB2b2RfbmFtZTogcGRmaCh4LCAiYSYmVGV4dCIpLFxuICAgICAgICAgICAgICAgIHZvZF9waWM6IFwnaHR0cHM6Ly9mcy1pbS1rZWZ1Ljdtb29yLWZzMS5jb20vbHkvNGQyYzNmMDAtN2Q0Yy0xMWU1LWFmMTUtNDFiZjYzYWU0ZWEwLzE3NDYyNjk4MjcxMjAvMS5qcGVnXCcsIFxuICAgICAgICAgICAgICAgIHZvZF9yZW1hcmtzOiBwZGZoKHgsICJhJiZUZXh0IiksXG4gICAgICAgICAgICAgICAgdm9kX2NvbnRlbnQ6IHBkZmgoeCwgImEmJlRleHQiKSxcbiAgICAgICAgICAgICAgICB2b2RfaWQ6IHBkZmgoeCwgImEmJmhyZWYiKVxuICAgICAgICAgICAgfVxuICAgICAgICB9KTtcbiAgICAnLAogICAgY2F0ZV9leGNsdWRlOiAn6aaW6aG1fOeVmeiogHxBUFB85LiL6L29fOi1hOiur3zmlrDpl7t85Yqo5oCBJywKICAgIHRhYl9leGNsdWRlOiAn54yc5L2gfOWWnOasonzkuIvovb185Ymn5oOFfOamnHzor4TorronLAogICAg57G75Z6LOiAn5b2x6KeGJywKICAgIGhvbWVVcmw6ICdodHRwczovLzEuc3RhcjIuY24nLAogICAg5LqM57qn6K6/6Zeu5YmNOiAnJywKICAgIGVuY29kaW5nOiAndXRmLTgnLAogICAgc2VhcmNoX2VuY29kaW5nOiAnJywKICAgIOWbvueJh+adpea6kDogJycsCiAgICDlm77niYfmm7/mjaI6ICcnLAogICAgcGxheV9qc29uOiBbXSwKICAgIHBhZ2Vjb3VudDoge30sCiAgICB0YWJfcmVtb3ZlOiBbXSwKICAgIHRhYl9vcmRlcjogW10sCiAgICB0YWJfcmVuYW1lOiB7fSwKfQ== \ No newline at end of file diff --git a/潇洒/cloud/js/TT.js b/潇洒/cloud/js/TT.js new file mode 100644 index 00000000..167e5b9a --- /dev/null +++ b/潇洒/cloud/js/TT.js @@ -0,0 +1 @@ +dmFyIHJ1bGUgPSB7CiAgICB0aXRsZTogJ+ebmOaQnOWkqeWggicsCiAgICBob3N0OiAnaHR0cHM6Ly9wYW5zb3R0LmNvbS8nLAogICAgaG9zdEpzOiAnJywKICAgIGhlYWRlcnM6IHsKICAgICAgICAnVXNlci1BZ2VudCc6ICdNb3ppbGxhLzUuMCAoTGludXg7IEFuZHJvaWQgMTE7IFBpeGVsIDUpIEFwcGxlV2ViS2l0LzUzNy4zNiAoS0hUTUwsIGxpa2UgR2Vja28pIENocm9tZS85MC4wLjQ0MzAuOTEgTW9iaWxlIFNhZmFyaS81MzcuMzYnLAogICAgfSwKICAgIOe8lueggTogJ3V0Zi04JywKICAgIHRpbWVvdXQ6IDUwMDAsCiAgICB1cmw6ICdodHRwczovL3BhbnNvdHQuY29tL3NlYXJjaD9xPWZ5Y2xhc3MmZm9ybWF0PXZpZGVvJnBhZ2U9ZnlwYWdlJywKICAgIGZpbHRlcl91cmw6ICcnLAogICAgZGV0YWlsVXJsOiAnJywKICAgIHNlYXJjaFVybDogJ2h0dHBzOi8vcGFuc290dC5jb20vc2VhcmNoP3E9KiomZm9ybWF0PXZpZGVvJmV4YWN0PXRydWUmcGFnZT1meXBhZ2UnLAogICAgc2VhcmNoYWJsZTogMSwKICAgIHF1aWNrU2VhcmNoOiAxLAogICAgZmlsdGVyYWJsZTogMSwKICAgIGNsYXNzX25hbWU6ICfliafpm4Ym55S15b2xJuefreWJpybliqjmvKsm57u86Im6JywKICAgIGNsYXNzX3VybDogJ+WJp+mbhibnlLXlvbEm55+t572R5YmnJuWKqOa8qybnu7zoibonLAogICAgcHJveHlfcnVsZTogJycsCiAgICBzbmlmZmVyOiBmYWxzZSwKICAgIGlzVmlkZW86ICcnLAogICAgcGxheV9wYXJzZTogdHJ1ZSwKICAgIHBhcnNlX3VybDogJycsCiAgICBsYXp5OiAianM6XG4gICAgICAgIGlucHV0ID0gJ3B1c2g6Ly8nICsgaW5wdXQ7XG4gICAgIiwKICAgIGxpbWl0OiA5LAogICAgZG91YmxlOiBmYWxzZSwKICAgIC8vIOaOqOiNkDogJyonLAogICAg5LiA57qnOiAnanM6XG4gICAgICAgIGxldCBodG1sID0gZmV0Y2goaW5wdXQpO1xuICAgICAgICBsZXQgbGlzdCA9IHBkZmEoaHRtbCwgImJvZHkmJi5zZW1pLXNwYWNlLW1lZGl1bS12ZXJ0aWNhbCIpO1xuICAgICAgICBWT0RTID0gbGlzdC5tYXAoeCA9PiB7XG4gICAgICAgICAgICBsZXQgcmVtYXJrcyA9IHBkZmgoeCwgImRpdiYmaW1nJiZhbHQiKTtcbiAgICAgICAgICAgIC8vIOi/h+a7pOaOieWMheWQqyLov4Xpm7fkupHnm5gi5oiWIjExNSLnmoTlhoXlrrlcbiAgICAgICAgICAgIGlmKHJlbWFya3MuaW5jbHVkZXMoIui/hembt+S6keebmCIpIHx8IHJlbWFya3MuaW5jbHVkZXMoIjExNSIpIHx8IHJlbWFya3MuaW5jbHVkZXMoIumYv+mHjCIpKSByZXR1cm4gbnVsbDtcbiAgICAgICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICAgICAgdm9kX25hbWU6IHBkZmgoeCwgImRpdiYmYSYmdGl0bGUiKSxcbiAgICAgICAgICAgICAgICB2b2RfcGljOiBcJ1wnLFxuICAgICAgICAgICAgICAgIHZvZF9yZW1hcmtzOiByZW1hcmtzLFxuICAgICAgICAgICAgICAgIHZvZF9jb250ZW50OiByZW1hcmtzLFxuICAgICAgICAgICAgICAgIHZvZF9pZDogcGRmaCh4LCAiZGl2JiZhJiZocmVmIilcbiAgICAgICAgICAgIH1cbiAgICAgICAgfSkuZmlsdGVyKHggPT4geCAhPT0gbnVsbCk7XG4gICAgJywKICAgIOS6jOe6pzogewogICAgICAgIHRpdGxlOiAnaDEmJlRleHQnLAogICAgICAgIGltZzogJ2ltZyYmc3JjJywKICAgICAgICBkZXNjOiAnLmNhcmQtdGV4dDplcSgyKSYmVGV4dDs7OzsnLAogICAgICAgIGNvbnRlbnQ6ICdib2R5JiYuc2VtaS1zcGFjZS1sb29zZS12ZXJ0aWNhbCYmYSYmaHJlZicsCiAgICAgICAgdGFiczogImpzOlRBQlMgPSBbJ+WkqeWggiddIiwKICAgICAgICBsaXN0czogImpzOlxuICAgICAgICAgICAgTElTVFMgPSBbXTtcbiAgICAgICAgICAgIGxldCBsaXN0czEgPSBwZGZhKGh0bWwsICdib2R5JiYuc2VtaS1zcGFjZS1sb29zZS12ZXJ0aWNhbCcpLm1hcChpdCA9PiB7XG4gICAgICAgICAgICAgICAgbGV0IF90dCA9IHBkZmgoaXQsICdzcGFuJiZ0aXRsZScpO1xuICAgICAgICAgICAgICAgIGxldCBfdXUgPSBwZGZoKGl0LCAnYSYmaHJlZicpO1xuICAgICAgICAgICAgICAgIHJldHVybiBfdHQgKyAnJCcgKyBfdXU7XG4gICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIExJU1RTLnB1c2gobGlzdHMxKTtcbiAgICAgICAgIiwKICAgIH0sCiAgICDmkJzntKI6ICdqczpcbiAgICAgICAgbGV0IGh0bWwgPSBmZXRjaChpbnB1dCk7XG4gICAgICAgIGxldCBsaXN0ID0gcGRmYShodG1sLCAiYm9keSYmLnNlbWktc3BhY2UtbWVkaXVtLXZlcnRpY2FsIik7XG4gICAgICAgIFZPRFMgPSBsaXN0Lm1hcCh4ID0+IHtcbiAgICAgICAgICAgIGxldCByZW1hcmtzID0gcGRmaCh4LCAiZGl2JiZpbWcmJmFsdCIpO1xuICAgICAgICAgICAgLy8g6L+H5ruk5o6J5YyF5ZCrIui/hembt+S6keebmCLmiJYiMTE1IueahOWGheWuuVxuICAgICAgICAgICAgaWYocmVtYXJrcy5pbmNsdWRlcygi6L+F6Zu35LqR55uYIikgfHwgcmVtYXJrcy5pbmNsdWRlcygiMTE1IikgfHwgcmVtYXJrcy5pbmNsdWRlcygi6Zi/6YeMIikpIHJldHVybiBudWxsO1xuICAgICAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgICAgICB2b2RfbmFtZTogcGRmaCh4LCAiZGl2JiZhJiZ0aXRsZSIpLFxuICAgICAgICAgICAgICAgIHZvZF9waWM6IFwnXCcsXG4gICAgICAgICAgICAgICAgdm9kX3JlbWFya3M6IHJlbWFya3MsXG4gICAgICAgICAgICAgICAgdm9kX2NvbnRlbnQ6IHJlbWFya3MsXG4gICAgICAgICAgICAgICAgdm9kX2lkOiBwZGZoKHgsICJkaXYmJmEmJmhyZWYiKVxuICAgICAgICAgICAgfVxuICAgICAgICB9KS5maWx0ZXIoeCA9PiB4ICE9PSBudWxsKTtcbiAgICAnLAogICAgY2F0ZV9leGNsdWRlOiAn6aaW6aG1fOeVmeiogHxBUFB85LiL6L29fOi1hOiur3zmlrDpl7t85Yqo5oCBJywKICAgIHRhYl9leGNsdWRlOiAn54yc5L2gfOWWnOasonzkuIvovb185Ymn5oOFfOamnHzor4TorronLAogICAg57G75Z6LOiAn5b2x6KeGJywKICAgIGhvbWVVcmw6ICdodHRwczovL3BhbnNvdHQuY29tLycsCiAgICDkuoznuqforr/pl67liY06ICcnLAogICAgZW5jb2Rpbmc6ICd1dGYtOCcsCiAgICBzZWFyY2hfZW5jb2Rpbmc6ICcnLAogICAg5Zu+54mH5p2l5rqQOiAnJywKICAgIOWbvueJh+abv+aNojogJycsCiAgICBwbGF5X2pzb246IFtdLAogICAgcGFnZWNvdW50OiB7fSwKICAgIHRhYl9yZW1vdmU6IFtdLAogICAgdGFiX29yZGVyOiBbXSwKICAgIHRhYl9yZW5hbWU6IHt9LAp9 \ No newline at end of file diff --git a/潇洒/cloud/js/XZ.js b/潇洒/cloud/js/XZ.js new file mode 100644 index 00000000..c42e054e --- /dev/null +++ b/潇洒/cloud/js/XZ.js @@ -0,0 +1,162 @@ +var rule = { + title: '校长影视[云盘]', + host: 'https://xzys.fun', + homeUrl: '/', + url: '/fyclass.html?page=fypage', + filter_url: '{{fl.class}}', + filter: {}, + searchUrl: '/search.html?keyword=**', + searchable: 2, + quickSearch: 0, + filterable: 0, + headers: { + 'User-Agent': 'PC_UA', + 'Cookie': '' + }, + timeout: 5000, + class_name: '电视剧&电影&动漫&纪录片&综艺', + class_url: 'dsj&dy&dm&jlp&zy', + play_parse: true, + play_json: [{ + re: '*', + json: { + parse: 0, + jx: 0 + } + }], + lazy: "js:\n input = 'push://' + input;\n ", + limit: 6, + 推荐: 'div.container div.row a:has(>img);img&&alt;img&&src;img&&alt;a&&href', + 一级: 'div.container div.row div.list-boxes;img&&alt;img&&src;div.list-actions&&Text;a&&href', + 二级: { + title: "div.container div.row h1&&Text", + img: "div.container div.row img&&src", + desc: 'div.container div.row div.article-infobox&&Text', //remark + content: 'div.container div.row div#info&&Text', + tabs: `js: +pdfh=jsp.pdfh;pdfa=jsp.pdfa;pd=jsp.pd; +TABS=[] +let d = pdfa(html, 'div.container div.row a'); +let tabsa = []; +let tabsq = []; +let tabsm = false; +let tabse = false; +d.forEach(function(it) { + let burl = pdfh(it, 'a&&href'); + if (burl.startsWith("https://pan.quark.cn/s/")){ + tabsq.push("夸克网盘"); + }else if (burl.startsWith("magnet")){ + tabsm = true; + }else if (burl.startsWith("ed2k")){ + tabse = true; + } +}); +if (tabsm === true){ + TABS.push("磁力"); +} +if (tabse === true){ + TABS.push("电驴"); +} +if (false && tabsa.length + tabsq.length > 1){ + TABS.push("选择右侧线路"); +} +let tmpIndex; +tmpIndex=1; +tabsa.forEach(function(it){ + TABS.push(it + tmpIndex); + tmpIndex = tmpIndex + 1; +}); +tmpIndex=1; +tabsq.forEach(function(it){ + TABS.push(it + tmpIndex); + tmpIndex = tmpIndex + 1; +}); +log('xzys TABS >>>>>>>>>>>>>>>>>>' + TABS); +`, + lists: `js: +log(TABS); +pdfh=jsp.pdfh;pdfa=jsp.pdfa;pd=jsp.pd; +LISTS = []; +let d = pdfa(html, 'div.container div.row a'); +let lista = []; +let listq = []; +let listm = []; +let liste = []; +d.forEach(function(it){ + let burl = pdfh(it, 'a&&href'); + let title = pdfh(it, 'a&&Text'); + log('dygang title >>>>>>>>>>>>>>>>>>>>>>>>>>' + title); + log('dygang burl >>>>>>>>>>>>>>>>>>>>>>>>>>' + burl); + let loopresult = title + '$' + burl; + if (burl.startsWith("https://pan.quark.cn/s/")){ + if (true){ + if (TABS.length==1){ + burl = "http://127.0.0.1:9978/proxy?do=quark&type=push&confirm=0&url=" + encodeURIComponent(burl); + }else{ + burl = "http://127.0.0.1:9978/proxy?do=quark&type=push&url=" + encodeURIComponent(burl); + } + }else{ + burl = "push://" + burl; + } + loopresult = title + '$' + burl; + listq.push(loopresult); + }else if (burl.startsWith("magnet")){ + listm.push(loopresult); + }else if (burl.startsWith("ed2k")){ + liste.push(loopresult); + } +}); +if (listm.length>0){ + LISTS.push(listm); +} +if (liste.length>0){ + LISTS.push(liste); +} +if (false && lista.length + listq.length > 1){ + LISTS.push(["选择右侧线路,或3秒后自动跳过$http://127.0.0.1:10079/delay/"]); +} +lista.forEach(function(it){ + LISTS.push([it]); +}); +listq.forEach(function(it){ + LISTS.push([it]); +}); +`, + + }, + 搜索: `js: +pdfh=jsp.pdfh;pdfa=jsp.pdfa;pd=jsp.pd; +if (rule_fetch_params.headers.Cookie.startsWith("http")){ + rule_fetch_params.headers.Cookie=fetch(rule_fetch_params.headers.Cookie); + let cookie = rule_fetch_params.headers.Cookie; + setItem(RULE_CK, cookie); +}; +log('xzys seach cookie>>>>>>>>>>>>>' + rule_fetch_params.headers.Cookie); +let _fetch_params = JSON.parse(JSON.stringify(rule_fetch_params)); +log("xzys search params>>>>>>>>>>>>>>>" + JSON.stringify(_fetch_params)); +let search_html = request( HOST + '/search.html?keyword=' + encodeURIComponent(KEY), _fetch_params) +//log("xzys search result>>>>>>>>>>>>>>>" + search_html); +let d=[]; +let dlist = pdfa(search_html, 'div.container div.row div.list-boxes'); +dlist.forEach(function(it){ + let title = pdfh(it, 'h2 a img&&alt'); + if (searchObj.quick === true){ + if (title.includes(KEY)){ + title = KEY; + } + } + let img = pd(it, 'h2 a img&&src', HOST); + let content = pdfh(it, 'p.text_p&&Text'); + let desc = pdfh(it, 'div.list-actions&&Text'); //remark + let url = pd(it, 'h2 a&&href', HOST); + d.push({ + title:title, + img:img, + content:content, + desc:desc, + url:url + }) +}); +setResult(d); +`, +} \ No newline at end of file diff --git a/潇洒/cloud/json/123.json b/潇洒/cloud/json/123.json new file mode 100644 index 00000000..8ca8fcee --- /dev/null +++ b/潇洒/cloud/json/123.json @@ -0,0 +1,25 @@ +{ + "SiteUrl": "https://123panfx.com,https://pan1.me", + "Classes": [ + { + "type_name": "电影", + "type_id": "2" + }, + { + "type_name": "剧集", + "type_id": "48" + }, + { + "type_name": "4K原盘", + "type_id": "56" + }, + { + "type_name": "综艺", + "type_id": "52" + }, + { + "type_name": "动漫", + "type_id": "37" + } + ] +} \ No newline at end of file diff --git a/潇洒/cloud/json/aliShare.json b/潇洒/cloud/json/aliShare.json new file mode 100644 index 00000000..8e80e75b --- /dev/null +++ b/潇洒/cloud/json/aliShare.json @@ -0,0 +1,67 @@ +[ + { + "name": "我的网盘", + "folders": [ + { + "shareId": "", + "folder": "root" + } + ] + }, + { + "name": "短剧合集", + "folders": [ + { + "shareId": "Y5wMKfVDD6K", + "folder": "6616613853041ba53f2842918e02346943d980b4" + } + ] + }, + { + "name": "动漫合集", + "folders": [ + { + "shareId": "LEaepiYfxcw", + "folder": "61019a966975bfef583449a39b36da512384b2d7" + } + ] + }, + { + "name": "电影合集", + "folders": [ + { + "shareId": "ZHNChQfiPfk", + "folder": "root" + }, + { + "shareId": "e27BPgDwxeA", + "folder": "root" + }, + { + "shareId": "XUH7r6BZuML", + "folder": "root" + } + ] + }, + { + "name": "电视剧合集", + "folders": [ + { + "shareId": "ftMhRaKUfYp", + "folder": "root" + }, + { + "shareId": "8Fg4TNsd2A2", + "folder": "root" + }, + { + "shareId": "ar8Kg9azw1S", + "folder": "root" + }, + { + "shareId": "GMYSz3AHFaA", + "folder": "root" + } + ] + } +] \ No newline at end of file diff --git a/潇洒/cloud/json/alist.json b/潇洒/cloud/json/alist.json new file mode 100644 index 00000000..8f6631e7 --- /dev/null +++ b/潇洒/cloud/json/alist.json @@ -0,0 +1,21 @@ +{ + "vodPic": "https://rogsoft.ddnsto.com/softcenter/softcenter/res/icon-alist.png", + "drives": [ + { + "name": "小雅", + "server": "http://alist.xiaoya.pro" + }, + { + "name": "触光", + "server": "https://pan.ichuguang.com" + }, + { + "name": "魔都云", + "server": "https://cdn.modupan.com" + }, + { + "name": "七米蓝", + "server": "https://al.chirmyram.com" + } + ] +} \ No newline at end of file diff --git a/潇洒/cloud/json/aliyunpansearch.json b/潇洒/cloud/json/aliyunpansearch.json new file mode 100644 index 00000000..75d3ac2d --- /dev/null +++ b/潇洒/cloud/json/aliyunpansearch.json @@ -0,0 +1,199 @@ +{ + "classes": [ + { + "type_name": "电影", + "type_id": "dy" + }, + { + "type_name": "电视", + "type_id": "ds" + }, + { + "type_name": "短剧", + "type_id": "dj" + }, + { + "type_name": "综艺", + "type_id": "zy" + }, + { + "type_name": "动漫", + "type_id": "dm" + }, + { + "type_name": "音乐", + "type_id": "yy" + } + ], + "filters": { + "dy": [ + { + "key": "root", + "name": "来源", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "夸克", + "v": "2" + }, + { + "n": "UC", + "v": "5" + }, + { + "n": "阿里", + "v": "1" + }, + { + "n": "百度", + "v": "4" + } + ] + } + ], + "ds": [ + { + "key": "root", + "name": "来源", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "夸克", + "v": "2" + }, + { + "n": "UC", + "v": "5" + }, + { + "n": "阿里", + "v": "1" + }, + { + "n": "百度", + "v": "4" + } + ] + } + ], + "dj": [ + { + "key": "root", + "name": "来源", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "夸克", + "v": "2" + }, + { + "n": "UC", + "v": "5" + }, + { + "n": "阿里", + "v": "1" + }, + { + "n": "百度", + "v": "4" + } + ] + } + ], + "zy": [ + { + "key": "root", + "name": "来源", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "夸克", + "v": "2" + }, + { + "n": "UC", + "v": "5" + }, + { + "n": "阿里", + "v": "1" + }, + { + "n": "百度", + "v": "4" + } + ] + } + ], + "dm": [ + { + "key": "root", + "name": "来源", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "夸克", + "v": "2" + }, + { + "n": "UC", + "v": "5" + }, + { + "n": "阿里", + "v": "1" + }, + { + "n": "百度", + "v": "4" + } + ] + } + ], + "yy": [ + { + "key": "root", + "name": "来源", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "夸克", + "v": "2" + }, + { + "n": "UC", + "v": "5" + }, + { + "n": "阿里", + "v": "1" + }, + { + "n": "百度", + "v": "4" + } + ] + } + ] + }, + "siteUrl": "https://ysapi.yingso.fun/v7/ali/all" +} \ No newline at end of file diff --git a/潇洒/cloud/json/am.json b/潇洒/cloud/json/am.json new file mode 100644 index 00000000..d7aab284 --- /dev/null +++ b/潇洒/cloud/json/am.json @@ -0,0 +1,31 @@ +{ + "SiteUrl": "https://vip.omii.top", + "Domains": [ + "https://vip.omii.top", + "https://omtv.top" + ], + "SiteWord": "am", + "SiteName": "奥秘", + "Classes": [ + { + "type_name": "电影", + "type_id": "30" + }, + { + "type_name": "剧集", + "type_id": "31" + }, + { + "type_name": "动漫", + "type_id": "32" + }, + { + "type_name": "综艺", + "type_id": "33" + }, + { + "type_name": "短剧", + "type_id": "34" + } + ] +} \ No newline at end of file diff --git a/潇洒/cloud/json/bj.json b/潇洒/cloud/json/bj.json new file mode 100644 index 00000000..0881d6ea --- /dev/null +++ b/潇洒/cloud/json/bj.json @@ -0,0 +1,1465 @@ +{ + "SiteUrl": "https://baijia.banye.tech:7086", + "Domains": [ + "http://cj.jiexi.news", + "https://baijia.885525.xyz", + "http://baijia.dpdns.org", + "http://bj.baijia.ddns-ip.net", + "http://bj.885525.xyz", + "http://baijia.filegear-sg.me" + ], + "SiteWord": "bj", + "SiteName": "百家", + "Classes": [ + { + "type_name": "百家电影", + "type_id": "1" + }, + { + "type_name": "百家剧集", + "type_id": "2" + }, + { + "type_name": "百家综艺", + "type_id": "3" + }, + { + "type_name": "百家动漫", + "type_id": "4" + }, + { + "type_name": "臻彩世界", + "type_id": "39" + }, + { + "type_name": "天翼&123", + "type_id": "38" + } + ], + "Filters": { + "1": [ + { + "name": "剧情", + "value": [ + { + "v": "喜剧", + "n": "喜剧" + }, + { + "v": "爱情", + "n": "爱情" + }, + { + "v": "恐怖", + "n": "恐怖" + }, + { + "v": "动作", + "n": "动作" + }, + { + "v": "科幻", + "n": "科幻" + }, + { + "v": "剧情", + "n": "剧情" + }, + { + "v": "战争", + "n": "战争" + }, + { + "v": "警匪", + "n": "警匪" + }, + { + "v": "犯罪", + "n": "犯罪" + }, + { + "v": "动画", + "n": "动画" + }, + { + "v": "奇幻", + "n": "奇幻" + }, + { + "v": "武侠", + "n": "武侠" + }, + { + "v": "冒险", + "n": "冒险" + }, + { + "v": "枪战", + "n": "枪战" + }, + { + "v": "恐怖", + "n": "恐怖" + }, + { + "v": "悬疑", + "n": "悬疑" + }, + { + "v": "惊悚", + "n": "惊悚" + }, + { + "v": "经典", + "n": "经典" + }, + { + "v": "青春", + "n": "青春" + }, + { + "v": "文艺", + "n": "文艺" + }, + { + "v": "微电影", + "n": "微电影" + }, + { + "v": "古装", + "n": "古装" + }, + { + "v": "历史", + "n": "历史" + }, + { + "v": "运动", + "n": "运动" + }, + { + "v": "农村", + "n": "农村" + }, + { + "v": "儿童", + "n": "儿童" + }, + { + "v": "网络电影", + "n": "网络电影" + } + ], + "key": "class" + }, + { + "name": "地区", + "value": [ + { + "v": "大陆", + "n": "大陆" + }, + { + "v": "香港", + "n": "香港" + }, + { + "v": "台湾", + "n": "台湾" + }, + { + "v": "美国", + "n": "美国" + }, + { + "v": "法国", + "n": "法国" + }, + { + "v": "英国", + "n": "英国" + }, + { + "v": "日本", + "n": "日本" + }, + { + "v": "韩国", + "n": "韩国" + }, + { + "v": "德国", + "n": "德国" + }, + { + "v": "泰国", + "n": "泰国" + }, + { + "v": "印度", + "n": "印度" + }, + { + "v": "意大利", + "n": "意大利" + }, + { + "v": "西班牙", + "n": "西班牙" + }, + { + "v": "加拿大", + "n": "加拿大" + }, + { + "v": "其他", + "n": "其他" + } + ], + "key": "area" + }, + { + "name": "语言", + "value": [ + { + "v": "国语", + "n": "国语" + }, + { + "v": "英语", + "n": "英语" + }, + { + "v": "粤语", + "n": "粤语" + }, + { + "v": "闽南语", + "n": "闽南语" + }, + { + "v": "韩语", + "n": "韩语" + }, + { + "v": "日语", + "n": "日语" + }, + { + "v": "法语", + "n": "法语" + }, + { + "v": "德语", + "n": "德语" + }, + { + "v": "其它", + "n": "其它" + } + ], + "key": "lang" + }, + { + "name": "时间", + "value": [ + { + "v": "2024", + "n": "2024" + }, + { + "v": "2023", + "n": "2023" + }, + { + "v": "2022", + "n": "2022" + }, + { + "v": "2021", + "n": "2021" + }, + { + "v": "2020", + "n": "2020" + }, + { + "v": "2019", + "n": "2019" + }, + { + "v": "2018", + "n": "2018" + }, + { + "v": "2017", + "n": "2017" + }, + { + "v": "2016", + "n": "2016" + }, + { + "v": "2015", + "n": "2015" + }, + { + "v": "2014", + "n": "2014" + }, + { + "v": "2013", + "n": "2013" + }, + { + "v": "2012", + "n": "2012" + }, + { + "v": "2011", + "n": "2011" + }, + { + "v": "2010", + "n": "2010" + } + ], + "key": "year" + }, + { + "name": "字母查找", + "value": [ + { + "v": "A", + "n": "A" + }, + { + "v": "B", + "n": "B" + }, + { + "v": "C", + "n": "C" + }, + { + "v": "D", + "n": "D" + }, + { + "v": "E", + "n": "E" + }, + { + "v": "F", + "n": "F" + }, + { + "v": "G", + "n": "G" + }, + { + "v": "H", + "n": "H" + }, + { + "v": "I", + "n": "I" + }, + { + "v": "J", + "n": "J" + }, + { + "v": "K", + "n": "K" + }, + { + "v": "L", + "n": "L" + }, + { + "v": "M", + "n": "M" + }, + { + "v": "N", + "n": "N" + }, + { + "v": "O", + "n": "O" + }, + { + "v": "P", + "n": "P" + }, + { + "v": "Q", + "n": "Q" + }, + { + "v": "R", + "n": "R" + }, + { + "v": "S", + "n": "S" + }, + { + "v": "T", + "n": "T" + }, + { + "v": "U", + "n": "U" + }, + { + "v": "V", + "n": "V" + }, + { + "v": "W", + "n": "W" + }, + { + "v": "X", + "n": "X" + }, + { + "v": "Y", + "n": "Y" + }, + { + "v": "Z", + "n": "Z" + }, + { + "v": "0-9", + "n": "0-9" + } + ], + "key": "character" + }, + { + "name": "评分排序", + "value": [ + { + "v": "time", + "n": "时间排序" + }, + { + "v": "hits", + "n": "人气排序" + }, + { + "v": "score", + "n": "评分排序" + } + ], + "key": "order" + } + ], + "2": [ + { + "name": "类型", + "value": [ + { + "v": "13", + "n": "国产剧" + }, + { + "v": "14", + "n": "欧美剧" + }, + { + "v": "15", + "n": "日韩剧" + }, + { + "v": "16", + "n": "港台剧" + }, + { + "v": "23", + "n": "泰剧" + } + ], + "key": "type" + }, + { + "name": "剧情", + "value": [ + { + "v": "古装", + "n": "古装" + }, + { + "v": "战争", + "n": "战争" + }, + { + "v": "青春偶像", + "n": "青春偶像" + }, + { + "v": "喜剧", + "n": "喜剧" + }, + { + "v": "家庭", + "n": "家庭" + }, + { + "v": "犯罪", + "n": "犯罪" + }, + { + "v": "动作", + "n": "动作" + }, + { + "v": "奇幻", + "n": "奇幻" + }, + { + "v": "剧情", + "n": "剧情" + }, + { + "v": "历史", + "n": "历史" + }, + { + "v": "经典", + "n": "经典" + }, + { + "v": "乡村", + "n": "乡村" + }, + { + "v": "情景", + "n": "情景" + }, + { + "v": "商战", + "n": "商战" + }, + { + "v": "网剧", + "n": "网剧" + }, + { + "v": "其他", + "n": "其他" + } + ], + "key": "class" + }, + { + "name": "地区", + "value": [ + { + "v": "中国大陆", + "n": "中国大陆" + }, + { + "v": "大陆", + "n": "大陆" + }, + { + "v": "内地", + "n": "内地" + }, + { + "v": "韩国", + "n": "韩国" + }, + { + "v": "香港", + "n": "香港" + }, + { + "v": "台湾", + "n": "台湾" + }, + { + "v": "日本", + "n": "日本" + }, + { + "v": "美国", + "n": "美国" + }, + { + "v": "泰国", + "n": "泰国" + }, + { + "v": "英国", + "n": "英国" + }, + { + "v": "新加坡", + "n": "新加坡" + }, + { + "v": "其他", + "n": "其他" + } + ], + "key": "area" + }, + { + "name": "语言", + "value": [ + { + "v": "国语", + "n": "国语" + }, + { + "v": "英语", + "n": "英语" + }, + { + "v": "粤语", + "n": "粤语" + }, + { + "v": "闽南语", + "n": "闽南语" + }, + { + "v": "韩语", + "n": "韩语" + }, + { + "v": "日语", + "n": "日语" + }, + { + "v": "其它", + "n": "其它" + } + ], + "key": "lang" + }, + { + "name": "时间", + "value": [ + { + "v": "2024", + "n": "2024" + }, + { + "v": "2023", + "n": "2023" + }, + { + "v": "2022", + "n": "2022" + }, + { + "v": "2021", + "n": "2021" + }, + { + "v": "2020", + "n": "2020" + }, + { + "v": "2019", + "n": "2019" + }, + { + "v": "2018", + "n": "2018" + }, + { + "v": "2017", + "n": "2017" + }, + { + "v": "2016", + "n": "2016" + }, + { + "v": "2015", + "n": "2015" + }, + { + "v": "2014", + "n": "2014" + }, + { + "v": "2013", + "n": "2013" + }, + { + "v": "2012", + "n": "2012" + }, + { + "v": "2011", + "n": "2011" + }, + { + "v": "2010", + "n": "2010" + } + ], + "key": "year" + }, + { + "name": "字母查找", + "value": [ + { + "v": "A", + "n": "A" + }, + { + "v": "B", + "n": "B" + }, + { + "v": "C", + "n": "C" + }, + { + "v": "D", + "n": "D" + }, + { + "v": "E", + "n": "E" + }, + { + "v": "F", + "n": "F" + }, + { + "v": "G", + "n": "G" + }, + { + "v": "H", + "n": "H" + }, + { + "v": "I", + "n": "I" + }, + { + "v": "J", + "n": "J" + }, + { + "v": "K", + "n": "K" + }, + { + "v": "L", + "n": "L" + }, + { + "v": "M", + "n": "M" + }, + { + "v": "N", + "n": "N" + }, + { + "v": "O", + "n": "O" + }, + { + "v": "P", + "n": "P" + }, + { + "v": "Q", + "n": "Q" + }, + { + "v": "R", + "n": "R" + }, + { + "v": "S", + "n": "S" + }, + { + "v": "T", + "n": "T" + }, + { + "v": "U", + "n": "U" + }, + { + "v": "V", + "n": "V" + }, + { + "v": "W", + "n": "W" + }, + { + "v": "X", + "n": "X" + }, + { + "v": "Y", + "n": "Y" + }, + { + "v": "Z", + "n": "Z" + }, + { + "v": "0-9", + "n": "0-9" + } + ], + "key": "character" + }, + { + "name": "评分排序", + "value": [ + { + "v": "time", + "n": "时间排序" + }, + { + "v": "hits", + "n": "人气排序" + }, + { + "v": "score", + "n": "评分排序" + } + ], + "key": "order" + } + ], + "3": [ + { + "name": "类型", + "value": [ + { + "v": "20", + "n": "国产" + }, + { + "v": "21", + "n": "日韩" + }, + { + "v": "22", + "n": "欧美" + } + ], + "key": "type" + }, + { + "name": "时间", + "value": [ + { + "v": "2024", + "n": "2024" + }, + { + "v": "2023", + "n": "2023" + }, + { + "v": "2022", + "n": "2022" + }, + { + "v": "2021", + "n": "2021" + }, + { + "v": "2020", + "n": "2020" + }, + { + "v": "2019", + "n": "2019" + }, + { + "v": "2018", + "n": "2018" + }, + { + "v": "2017", + "n": "2017" + }, + { + "v": "2016", + "n": "2016" + }, + { + "v": "2015", + "n": "2015" + }, + { + "v": "2014", + "n": "2014" + }, + { + "v": "2013", + "n": "2013" + }, + { + "v": "2012", + "n": "2012" + }, + { + "v": "2011", + "n": "2011" + }, + { + "v": "2010", + "n": "2010" + } + ], + "key": "year" + }, + { + "name": "字母查找", + "value": [ + { + "v": "A", + "n": "A" + }, + { + "v": "B", + "n": "B" + }, + { + "v": "C", + "n": "C" + }, + { + "v": "D", + "n": "D" + }, + { + "v": "E", + "n": "E" + }, + { + "v": "F", + "n": "F" + }, + { + "v": "G", + "n": "G" + }, + { + "v": "H", + "n": "H" + }, + { + "v": "I", + "n": "I" + }, + { + "v": "J", + "n": "J" + }, + { + "v": "K", + "n": "K" + }, + { + "v": "L", + "n": "L" + }, + { + "v": "M", + "n": "M" + }, + { + "v": "N", + "n": "N" + }, + { + "v": "O", + "n": "O" + }, + { + "v": "P", + "n": "P" + }, + { + "v": "Q", + "n": "Q" + }, + { + "v": "R", + "n": "R" + }, + { + "v": "S", + "n": "S" + }, + { + "v": "T", + "n": "T" + }, + { + "v": "U", + "n": "U" + }, + { + "v": "V", + "n": "V" + }, + { + "v": "W", + "n": "W" + }, + { + "v": "X", + "n": "X" + }, + { + "v": "Y", + "n": "Y" + }, + { + "v": "Z", + "n": "Z" + }, + { + "v": "0-9", + "n": "0-9" + } + ], + "key": "character" + }, + { + "name": "评分排序", + "value": [ + { + "v": "time", + "n": "时间排序" + }, + { + "v": "hits", + "n": "人气排序" + }, + { + "v": "score", + "n": "评分排序" + } + ], + "key": "order" + } + ], + "25": [ + { + "name": "时间", + "value": [ + { + "v": "2024", + "n": "2024" + }, + { + "v": "2023", + "n": "2023" + }, + { + "v": "2022", + "n": "2022" + }, + { + "v": "2021", + "n": "2021" + }, + { + "v": "2020", + "n": "2020" + }, + { + "v": "2019", + "n": "2019" + }, + { + "v": "2018", + "n": "2018" + }, + { + "v": "2017", + "n": "2017" + }, + { + "v": "2016", + "n": "2016" + }, + { + "v": "2015", + "n": "2015" + }, + { + "v": "2014", + "n": "2014" + }, + { + "v": "2013", + "n": "2013" + }, + { + "v": "2012", + "n": "2012" + }, + { + "v": "2011", + "n": "2011" + }, + { + "v": "2010", + "n": "2010" + } + ], + "key": "year" + }, + { + "name": "字母查找", + "value": [ + { + "v": "A", + "n": "A" + }, + { + "v": "B", + "n": "B" + }, + { + "v": "C", + "n": "C" + }, + { + "v": "D", + "n": "D" + }, + { + "v": "E", + "n": "E" + }, + { + "v": "F", + "n": "F" + }, + { + "v": "G", + "n": "G" + }, + { + "v": "H", + "n": "H" + }, + { + "v": "I", + "n": "I" + }, + { + "v": "J", + "n": "J" + }, + { + "v": "K", + "n": "K" + }, + { + "v": "L", + "n": "L" + }, + { + "v": "M", + "n": "M" + }, + { + "v": "N", + "n": "N" + }, + { + "v": "O", + "n": "O" + }, + { + "v": "P", + "n": "P" + }, + { + "v": "Q", + "n": "Q" + }, + { + "v": "R", + "n": "R" + }, + { + "v": "S", + "n": "S" + }, + { + "v": "T", + "n": "T" + }, + { + "v": "U", + "n": "U" + }, + { + "v": "V", + "n": "V" + }, + { + "v": "W", + "n": "W" + }, + { + "v": "X", + "n": "X" + }, + { + "v": "Y", + "n": "Y" + }, + { + "v": "Z", + "n": "Z" + }, + { + "v": "0-9", + "n": "0-9" + } + ], + "key": "character" + }, + { + "name": "评分排序", + "value": [ + { + "v": "time", + "n": "时间排序" + }, + { + "v": "hits", + "n": "人气排序" + }, + { + "v": "score", + "n": "评分排序" + } + ], + "key": "order" + } + ], + "4": [ + { + "name": "时间", + "value": [ + { + "v": "2024", + "n": "2024" + }, + { + "v": "2023", + "n": "2023" + }, + { + "v": "2022", + "n": "2022" + }, + { + "v": "2021", + "n": "2021" + }, + { + "v": "2020", + "n": "2020" + }, + { + "v": "2019", + "n": "2019" + }, + { + "v": "2018", + "n": "2018" + }, + { + "v": "2017", + "n": "2017" + }, + { + "v": "2016", + "n": "2016" + }, + { + "v": "2015", + "n": "2015" + }, + { + "v": "2014", + "n": "2014" + }, + { + "v": "2013", + "n": "2013" + }, + { + "v": "2012", + "n": "2012" + }, + { + "v": "2011", + "n": "2011" + }, + { + "v": "2010", + "n": "2010" + } + ], + "key": "year" + }, + { + "name": "字母查找", + "value": [ + { + "v": "A", + "n": "A" + }, + { + "v": "B", + "n": "B" + }, + { + "v": "C", + "n": "C" + }, + { + "v": "D", + "n": "D" + }, + { + "v": "E", + "n": "E" + }, + { + "v": "F", + "n": "F" + }, + { + "v": "G", + "n": "G" + }, + { + "v": "H", + "n": "H" + }, + { + "v": "I", + "n": "I" + }, + { + "v": "J", + "n": "J" + }, + { + "v": "K", + "n": "K" + }, + { + "v": "L", + "n": "L" + }, + { + "v": "M", + "n": "M" + }, + { + "v": "N", + "n": "N" + }, + { + "v": "O", + "n": "O" + }, + { + "v": "P", + "n": "P" + }, + { + "v": "Q", + "n": "Q" + }, + { + "v": "R", + "n": "R" + }, + { + "v": "S", + "n": "S" + }, + { + "v": "T", + "n": "T" + }, + { + "v": "U", + "n": "U" + }, + { + "v": "V", + "n": "V" + }, + { + "v": "W", + "n": "W" + }, + { + "v": "X", + "n": "X" + }, + { + "v": "Y", + "n": "Y" + }, + { + "v": "Z", + "n": "Z" + }, + { + "v": "0-9", + "n": "0-9" + } + ], + "key": "character" + }, + { + "name": "评分排序", + "value": [ + { + "v": "time", + "n": "时间排序" + }, + { + "v": "hits", + "n": "人气排序" + }, + { + "v": "score", + "n": "评分排序" + } + ], + "key": "order" + } + ] + } +} \ No newline at end of file diff --git a/潇洒/cloud/json/dawo.json b/潇洒/cloud/json/dawo.json new file mode 100644 index 00000000..9e58679c --- /dev/null +++ b/潇洒/cloud/json/dawo.json @@ -0,0 +1,1470 @@ +{ + "SiteUrl": "https://dawo.banye.tech:7086", + "Domains": [ + "http://149.88.87.18:6688" + ], + "SiteWord": "dawo", + "SiteName": "大玩偶", + "Classes": [ + { + "type_name": "电影", + "type_id": "1" + }, + { + "type_name": "电视剧", + "type_id": "2" + }, + { + "type_name": "动漫", + "type_id": "3" + }, + { + "type_name": "综艺", + "type_id": "4" + }, + { + "type_name": "音乐", + "type_id": "5" + }, + { + "type_name": "短剧", + "type_id": "20" + }, + { + "type_name": "纪录片", + "type_id": "21" + }, + { + "type_name": "4k高码", + "type_id": "22" + } + ], + "Filters": { + "3": [ + { + "name": "类型", + "value": [ + { + "v": "37", + "n": "日韩动漫" + }, + { + "v": "38", + "n": "欧美动漫" + }, + { + "v": "36", + "n": "国产动漫" + } + ], + "key": "type" + }, + { + "name": "剧情", + "value": [ + { + "v": "古装", + "n": "古装" + }, + { + "v": "战争", + "n": "战争" + }, + { + "v": "青春偶像", + "n": "青春偶像" + }, + { + "v": "喜剧", + "n": "喜剧" + }, + { + "v": "家庭", + "n": "家庭" + }, + { + "v": "犯罪", + "n": "犯罪" + }, + { + "v": "动作", + "n": "动作" + }, + { + "v": "奇幻", + "n": "奇幻" + }, + { + "v": "剧情", + "n": "剧情" + }, + { + "v": "历史", + "n": "历史" + }, + { + "v": "经典", + "n": "经典" + }, + { + "v": "乡村", + "n": "乡村" + }, + { + "v": "情景", + "n": "情景" + }, + { + "v": "商战", + "n": "商战" + }, + { + "v": "网剧", + "n": "网剧" + }, + { + "v": "其他", + "n": "其他" + } + ], + "key": "class" + }, + { + "name": "地区", + "value": [ + { + "v": "内地", + "n": "内地" + }, + { + "v": "韩国", + "n": "韩国" + }, + { + "v": "香港", + "n": "香港" + }, + { + "v": "台湾", + "n": "台湾" + }, + { + "v": "日本", + "n": "日本" + }, + { + "v": "美国", + "n": "美国" + }, + { + "v": "泰国", + "n": "泰国" + }, + { + "v": "英国", + "n": "英国" + }, + { + "v": "新加坡", + "n": "新加坡" + }, + { + "v": "其他", + "n": "其他" + } + ], + "key": "area" + }, + { + "name": "语言", + "value": [ + { + "v": "国语", + "n": "国语" + }, + { + "v": "英语", + "n": "英语" + }, + { + "v": "粤语", + "n": "粤语" + }, + { + "v": "闽南语", + "n": "闽南语" + }, + { + "v": "韩语", + "n": "韩语" + }, + { + "v": "日语", + "n": "日语" + }, + { + "v": "其它", + "n": "其它" + } + ], + "key": "lang" + }, + { + "name": "时间", + "value": [ + { + "v": "2024", + "n": "2024" + }, + { + "v": "2023", + "n": "2023" + }, + { + "v": "2022", + "n": "2022" + }, + { + "v": "2021", + "n": "2021" + }, + { + "v": "2020", + "n": "2020" + }, + { + "v": "2019", + "n": "2019" + }, + { + "v": "2018", + "n": "2018" + }, + { + "v": "2017", + "n": "2017" + }, + { + "v": "2016", + "n": "2016" + }, + { + "v": "2015", + "n": "2015" + }, + { + "v": "2014", + "n": "2014" + }, + { + "v": "2013", + "n": "2013" + }, + { + "v": "2012", + "n": "2012" + }, + { + "v": "2011", + "n": "2011" + }, + { + "v": "2010", + "n": "2010" + } + ], + "key": "year" + }, + { + "name": "字母查找", + "value": [ + { + "v": "A", + "n": "A" + }, + { + "v": "B", + "n": "B" + }, + { + "v": "C", + "n": "C" + }, + { + "v": "D", + "n": "D" + }, + { + "v": "E", + "n": "E" + }, + { + "v": "F", + "n": "F" + }, + { + "v": "G", + "n": "G" + }, + { + "v": "H", + "n": "H" + }, + { + "v": "I", + "n": "I" + }, + { + "v": "J", + "n": "J" + }, + { + "v": "K", + "n": "K" + }, + { + "v": "L", + "n": "L" + }, + { + "v": "M", + "n": "M" + }, + { + "v": "N", + "n": "N" + }, + { + "v": "O", + "n": "O" + }, + { + "v": "P", + "n": "P" + }, + { + "v": "Q", + "n": "Q" + }, + { + "v": "R", + "n": "R" + }, + { + "v": "S", + "n": "S" + }, + { + "v": "T", + "n": "T" + }, + { + "v": "U", + "n": "U" + }, + { + "v": "V", + "n": "V" + }, + { + "v": "W", + "n": "W" + }, + { + "v": "X", + "n": "X" + }, + { + "v": "Y", + "n": "Y" + }, + { + "v": "Z", + "n": "Z" + }, + { + "v": "0-9", + "n": "0-9" + } + ], + "key": "character" + }, + { + "name": "评分排序", + "value": [ + { + "v": "time", + "n": "时间排序" + }, + { + "v": "hits", + "n": "人气排序" + }, + { + "v": "score", + "n": "评分排序" + } + ], + "key": "order" + } + ], + "4": [ + { + "name": "类型", + "value": [ + { + "v": "39", + "n": "国产综艺" + }, + { + "v": "40", + "n": "其他综艺" + } + ], + "key": "type" + }, + { + "name": "时间", + "value": [ + { + "v": "2024", + "n": "2024" + }, + { + "v": "2023", + "n": "2023" + }, + { + "v": "2022", + "n": "2022" + }, + { + "v": "2021", + "n": "2021" + }, + { + "v": "2020", + "n": "2020" + }, + { + "v": "2019", + "n": "2019" + }, + { + "v": "2018", + "n": "2018" + }, + { + "v": "2017", + "n": "2017" + }, + { + "v": "2016", + "n": "2016" + }, + { + "v": "2015", + "n": "2015" + }, + { + "v": "2014", + "n": "2014" + }, + { + "v": "2013", + "n": "2013" + }, + { + "v": "2012", + "n": "2012" + }, + { + "v": "2011", + "n": "2011" + }, + { + "v": "2010", + "n": "2010" + } + ], + "key": "year" + }, + { + "name": "字母查找", + "value": [ + { + "v": "A", + "n": "A" + }, + { + "v": "B", + "n": "B" + }, + { + "v": "C", + "n": "C" + }, + { + "v": "D", + "n": "D" + }, + { + "v": "E", + "n": "E" + }, + { + "v": "F", + "n": "F" + }, + { + "v": "G", + "n": "G" + }, + { + "v": "H", + "n": "H" + }, + { + "v": "I", + "n": "I" + }, + { + "v": "J", + "n": "J" + }, + { + "v": "K", + "n": "K" + }, + { + "v": "L", + "n": "L" + }, + { + "v": "M", + "n": "M" + }, + { + "v": "N", + "n": "N" + }, + { + "v": "O", + "n": "O" + }, + { + "v": "P", + "n": "P" + }, + { + "v": "Q", + "n": "Q" + }, + { + "v": "R", + "n": "R" + }, + { + "v": "S", + "n": "S" + }, + { + "v": "T", + "n": "T" + }, + { + "v": "U", + "n": "U" + }, + { + "v": "V", + "n": "V" + }, + { + "v": "W", + "n": "W" + }, + { + "v": "X", + "n": "X" + }, + { + "v": "Y", + "n": "Y" + }, + { + "v": "Z", + "n": "Z" + }, + { + "v": "0-9", + "n": "0-9" + } + ], + "key": "character" + }, + { + "name": "评分排序", + "value": [ + { + "v": "time", + "n": "时间排序" + }, + { + "v": "hits", + "n": "人气排序" + }, + { + "v": "score", + "n": "评分排序" + } + ], + "key": "order" + } + ], + "1": [ + { + "name": "类型", + "value": [ + { + "v": "25", + "n": "科幻" + }, + { + "v": "26", + "n": "战争" + }, + { + "v": "27", + "n": "爱情" + }, + { + "v": "28", + "n": "恐怖" + }, + { + "v": "29", + "n": "院线" + }, + { + "v": "30", + "n": "其他" + } + ], + "key": "type" + }, + { + "name": "剧情", + "value": [ + { + "v": "喜剧", + "n": "喜剧" + }, + { + "v": "爱情", + "n": "爱情" + }, + { + "v": "恐怖", + "n": "恐怖" + }, + { + "v": "动作", + "n": "动作" + }, + { + "v": "科幻", + "n": "科幻" + }, + { + "v": "剧情", + "n": "剧情" + }, + { + "v": "战争", + "n": "战争" + }, + { + "v": "警匪", + "n": "警匪" + }, + { + "v": "犯罪", + "n": "犯罪" + }, + { + "v": "动画", + "n": "动画" + }, + { + "v": "奇幻", + "n": "奇幻" + }, + { + "v": "武侠", + "n": "武侠" + }, + { + "v": "冒险", + "n": "冒险" + }, + { + "v": "枪战", + "n": "枪战" + }, + { + "v": "恐怖", + "n": "恐怖" + }, + { + "v": "悬疑", + "n": "悬疑" + }, + { + "v": "惊悚", + "n": "惊悚" + }, + { + "v": "经典", + "n": "经典" + }, + { + "v": "青春", + "n": "青春" + }, + { + "v": "文艺", + "n": "文艺" + }, + { + "v": "微电影", + "n": "微电影" + }, + { + "v": "古装", + "n": "古装" + }, + { + "v": "历史", + "n": "历史" + }, + { + "v": "运动", + "n": "运动" + }, + { + "v": "农村", + "n": "农村" + }, + { + "v": "儿童", + "n": "儿童" + }, + { + "v": "网络电影", + "n": "网络电影" + } + ], + "key": "class" + }, + { + "name": "地区", + "value": [ + { + "v": "内地", + "n": "内地" + }, + { + "v": "韩国", + "n": "韩国" + }, + { + "v": "香港", + "n": "香港" + }, + { + "v": "台湾", + "n": "台湾" + }, + { + "v": "日本", + "n": "日本" + }, + { + "v": "美国", + "n": "美国" + }, + { + "v": "泰国", + "n": "泰国" + }, + { + "v": "英国", + "n": "英国" + }, + { + "v": "新加坡", + "n": "新加坡" + }, + { + "v": "其他", + "n": "其他" + } + ], + "key": "area" + }, + { + "name": "语言", + "value": [ + { + "v": "国语", + "n": "国语" + }, + { + "v": "英语", + "n": "英语" + }, + { + "v": "粤语", + "n": "粤语" + }, + { + "v": "闽南语", + "n": "闽南语" + }, + { + "v": "韩语", + "n": "韩语" + }, + { + "v": "日语", + "n": "日语" + }, + { + "v": "其它", + "n": "其它" + } + ], + "key": "lang" + }, + { + "name": "时间", + "value": [ + { + "v": "2024", + "n": "2024" + }, + { + "v": "2023", + "n": "2023" + }, + { + "v": "2022", + "n": "2022" + }, + { + "v": "2021", + "n": "2021" + }, + { + "v": "2020", + "n": "2020" + }, + { + "v": "2019", + "n": "2019" + }, + { + "v": "2018", + "n": "2018" + }, + { + "v": "2017", + "n": "2017" + }, + { + "v": "2016", + "n": "2016" + }, + { + "v": "2015", + "n": "2015" + }, + { + "v": "2014", + "n": "2014" + }, + { + "v": "2013", + "n": "2013" + }, + { + "v": "2012", + "n": "2012" + }, + { + "v": "2011", + "n": "2011" + }, + { + "v": "2010", + "n": "2010" + } + ], + "key": "year" + }, + { + "name": "字母查找", + "value": [ + { + "v": "A", + "n": "A" + }, + { + "v": "B", + "n": "B" + }, + { + "v": "C", + "n": "C" + }, + { + "v": "D", + "n": "D" + }, + { + "v": "E", + "n": "E" + }, + { + "v": "F", + "n": "F" + }, + { + "v": "G", + "n": "G" + }, + { + "v": "H", + "n": "H" + }, + { + "v": "I", + "n": "I" + }, + { + "v": "J", + "n": "J" + }, + { + "v": "K", + "n": "K" + }, + { + "v": "L", + "n": "L" + }, + { + "v": "M", + "n": "M" + }, + { + "v": "N", + "n": "N" + }, + { + "v": "O", + "n": "O" + }, + { + "v": "P", + "n": "P" + }, + { + "v": "Q", + "n": "Q" + }, + { + "v": "R", + "n": "R" + }, + { + "v": "S", + "n": "S" + }, + { + "v": "T", + "n": "T" + }, + { + "v": "U", + "n": "U" + }, + { + "v": "V", + "n": "V" + }, + { + "v": "W", + "n": "W" + }, + { + "v": "X", + "n": "X" + }, + { + "v": "Y", + "n": "Y" + }, + { + "v": "Z", + "n": "Z" + }, + { + "v": "0-9", + "n": "0-9" + } + ], + "key": "character" + }, + { + "name": "评分排序", + "value": [ + { + "v": "time", + "n": "时间排序" + }, + { + "v": "hits", + "n": "人气排序" + }, + { + "v": "score", + "n": "评分排序" + } + ], + "key": "order" + } + ], + "2": [ + { + "name": "类型", + "value": [ + { + "v": "31", + "n": "国产剧" + }, + { + "v": "32", + "n": "欧美剧" + }, + { + "v": "33", + "n": "日韩剧" + }, + { + "v": "35", + "n": "其他剧" + }, + { + "v": "34", + "n": "港台剧" + } + ], + "key": "type" + }, + { + "name": "剧情", + "value": [ + { + "v": "喜剧", + "n": "喜剧" + }, + { + "v": "爱情", + "n": "爱情" + }, + { + "v": "恐怖", + "n": "恐怖" + }, + { + "v": "动作", + "n": "动作" + }, + { + "v": "科幻", + "n": "科幻" + }, + { + "v": "剧情", + "n": "剧情" + }, + { + "v": "战争", + "n": "战争" + }, + { + "v": "警匪", + "n": "警匪" + }, + { + "v": "犯罪", + "n": "犯罪" + }, + { + "v": "动画", + "n": "动画" + }, + { + "v": "奇幻", + "n": "奇幻" + }, + { + "v": "武侠", + "n": "武侠" + }, + { + "v": "冒险", + "n": "冒险" + }, + { + "v": "枪战", + "n": "枪战" + }, + { + "v": "恐怖", + "n": "恐怖" + }, + { + "v": "悬疑", + "n": "悬疑" + }, + { + "v": "惊悚", + "n": "惊悚" + }, + { + "v": "经典", + "n": "经典" + }, + { + "v": "青春", + "n": "青春" + }, + { + "v": "文艺", + "n": "文艺" + }, + { + "v": "微电影", + "n": "微电影" + }, + { + "v": "古装", + "n": "古装" + }, + { + "v": "历史", + "n": "历史" + }, + { + "v": "运动", + "n": "运动" + }, + { + "v": "农村", + "n": "农村" + }, + { + "v": "儿童", + "n": "儿童" + }, + { + "v": "网络电影", + "n": "网络电影" + } + ], + "key": "class" + }, + { + "name": "地区", + "value": [ + { + "v": "内地", + "n": "内地" + }, + { + "v": "韩国", + "n": "韩国" + }, + { + "v": "香港", + "n": "香港" + }, + { + "v": "台湾", + "n": "台湾" + }, + { + "v": "日本", + "n": "日本" + }, + { + "v": "美国", + "n": "美国" + }, + { + "v": "泰国", + "n": "泰国" + }, + { + "v": "英国", + "n": "英国" + }, + { + "v": "新加坡", + "n": "新加坡" + }, + { + "v": "其他", + "n": "其他" + } + ], + "key": "area" + }, + { + "name": "语言", + "value": [ + { + "v": "国语", + "n": "国语" + }, + { + "v": "英语", + "n": "英语" + }, + { + "v": "粤语", + "n": "粤语" + }, + { + "v": "闽南语", + "n": "闽南语" + }, + { + "v": "韩语", + "n": "韩语" + }, + { + "v": "日语", + "n": "日语" + }, + { + "v": "其它", + "n": "其它" + } + ], + "key": "lang" + }, + { + "name": "时间", + "value": [ + { + "v": "2024", + "n": "2024" + }, + { + "v": "2023", + "n": "2023" + }, + { + "v": "2022", + "n": "2022" + }, + { + "v": "2021", + "n": "2021" + }, + { + "v": "2020", + "n": "2020" + }, + { + "v": "2019", + "n": "2019" + }, + { + "v": "2018", + "n": "2018" + }, + { + "v": "2017", + "n": "2017" + }, + { + "v": "2016", + "n": "2016" + }, + { + "v": "2015", + "n": "2015" + }, + { + "v": "2014", + "n": "2014" + }, + { + "v": "2013", + "n": "2013" + }, + { + "v": "2012", + "n": "2012" + }, + { + "v": "2011", + "n": "2011" + }, + { + "v": "2010", + "n": "2010" + } + ], + "key": "year" + }, + { + "name": "字母查找", + "value": [ + { + "v": "A", + "n": "A" + }, + { + "v": "B", + "n": "B" + }, + { + "v": "C", + "n": "C" + }, + { + "v": "D", + "n": "D" + }, + { + "v": "E", + "n": "E" + }, + { + "v": "F", + "n": "F" + }, + { + "v": "G", + "n": "G" + }, + { + "v": "H", + "n": "H" + }, + { + "v": "I", + "n": "I" + }, + { + "v": "J", + "n": "J" + }, + { + "v": "K", + "n": "K" + }, + { + "v": "L", + "n": "L" + }, + { + "v": "M", + "n": "M" + }, + { + "v": "N", + "n": "N" + }, + { + "v": "O", + "n": "O" + }, + { + "v": "P", + "n": "P" + }, + { + "v": "Q", + "n": "Q" + }, + { + "v": "R", + "n": "R" + }, + { + "v": "S", + "n": "S" + }, + { + "v": "T", + "n": "T" + }, + { + "v": "U", + "n": "U" + }, + { + "v": "V", + "n": "V" + }, + { + "v": "W", + "n": "W" + }, + { + "v": "X", + "n": "X" + }, + { + "v": "Y", + "n": "Y" + }, + { + "v": "Z", + "n": "Z" + }, + { + "v": "0-9", + "n": "0-9" + } + ], + "key": "character" + }, + { + "name": "评分排序", + "value": [ + { + "v": "time", + "n": "时间排序" + }, + { + "v": "hits", + "n": "人气排序" + }, + { + "v": "score", + "n": "评分排序" + } + ], + "key": "order" + } + ] + } +} \ No newline at end of file diff --git a/潇洒/cloud/json/ex.json b/潇洒/cloud/json/ex.json new file mode 100644 index 00000000..1b0f880f --- /dev/null +++ b/潇洒/cloud/json/ex.json @@ -0,0 +1,33 @@ +{ + "SiteUrl": "https://xhww.net", + "Domains": [ + "https://xhww.net", + "https://erxiaofn.click", + "https://erxiaofn.site", + "https://www.xhww.net" + ], + "SiteWord": "ex", + "SiteName": "二小", + "Classes": [ + { + "type_name": "热播资源", + "type_id": "22" + }, + { + "type_name": "二小电影", + "type_id": "1" + }, + { + "type_name": "二小剧集", + "type_id": "2" + }, + { + "type_name": "二小动漫", + "type_id": "3" + }, + { + "type_name": "二小综艺", + "type_id": "17" + } + ] +} \ No newline at end of file diff --git a/潇洒/cloud/json/hb.json b/潇洒/cloud/json/hb.json new file mode 100644 index 00000000..d083b5a8 --- /dev/null +++ b/潇洒/cloud/json/hb.json @@ -0,0 +1,34 @@ +{ + "SiteUrl": "http://103.45.162.207:20720", + "Domains": [ + "http://103.45.162.207:20720" + ], + "SiteWord": "hb", + "SiteName": "虎斑", + "Classes": [ + { + "type_name": "小虎斑电影", + "type_id": "1" + }, + { + "type_name": "小虎斑剧集", + "type_id": "2" + }, + { + "type_name": "小虎斑综艺", + "type_id": "3" + }, + { + "type_name": "小虎斑动漫", + "type_id": "4" + }, + { + "type_name": "小虎斑精品", + "type_id": "5" + }, + { + "type_name": "小虎斑短剧", + "type_id": "6" + } + ] +} \ No newline at end of file diff --git a/潇洒/cloud/json/hm.json b/潇洒/cloud/json/hm.json new file mode 100644 index 00000000..0cfd2c03 --- /dev/null +++ b/潇洒/cloud/json/hm.json @@ -0,0 +1,25 @@ +{ + "SiteUrl": "https://www.haimianxz.com,https://www.hmxz.org,http://haimian.eu.org", + "Classes": [ + { + "type_name": "电影", + "type_id": "1" + }, + { + "type_name": "剧集", + "type_id": "2" + }, + { + "type_name": "动漫", + "type_id": "3" + }, + { + "type_name": "其它", + "type_id": "3" + }, + { + "type_name": "综艺", + "type_id": "5" + } + ] +} \ No newline at end of file diff --git a/潇洒/cloud/json/kf.json b/潇洒/cloud/json/kf.json new file mode 100644 index 00000000..1db2dc08 --- /dev/null +++ b/潇洒/cloud/json/kf.json @@ -0,0 +1,30 @@ +{ + "SiteUrl": "https://www.kuafuzy.com,https://www.kfzy.cc", + "Classes": [ + { + "type_name": "电影", + "type_id": "1" + }, + { + "type_name": "剧集", + "type_id": "2" + }, + { + "type_name": "4K电影", + "type_id": "3" + }, + { + "type_name": "4K剧集", + "type_id": "4" + }, + { + "type_name": "动漫", + "type_id": "5" + }, + { + "type_name": "短剧", + "type_id": "6" + } + ], + "Cookie": "bbs_sid=qtrfbfct9gs8e7qat96o3nf09t; isClose=yes; __mxau__c2-lS6GI0pR=de438e75-e385-47c4-acb1-6564b407c7b1; __mxaf__c2-lS6GI0pR=1761439615; bbs_token=9NqiBWxAvM2MN_2FST20QOg5g9gcyzm2Hqfd9YwaQjK6Y_3D; __mxas__c2-lS6GI0pR=%7B%22sid%22%3A%22e4f30c47-1290-431b-b228-b9116c4744bd%22%2C%22vd%22%3A5%2C%22stt%22%3A168%2C%22dr%22%3A3%2C%22expires%22%3A1761476207%2C%22ct%22%3A1761474407%7D; __mxav__c2-lS6GI0pR=13" +} \ No newline at end of file diff --git a/潇洒/cloud/json/lb.json b/潇洒/cloud/json/lb.json new file mode 100644 index 00000000..e4eaf294 --- /dev/null +++ b/潇洒/cloud/json/lb.json @@ -0,0 +1,40 @@ +{ + "SiteUrl": "http://www.labi88.sbs", + "Domains": [ + "http://www.labi88.sbs", + "https://feimao666.fun", + "http://feimao888.fun" + ], + "SiteWord": "labi", + "SiteName": "蜡笔", + "Classes": [ + { + "type_name": "蜡笔电影", + "type_id": "1" + }, + { + "type_name": "蜡笔剧集", + "type_id": "2" + }, + { + "type_name": "蜡笔动漫", + "type_id": "3" + }, + { + "type_name": "蜡笔综艺", + "type_id": "4" + }, + { + "type_name": "蜡笔短剧", + "type_id": "5" + }, + { + "type_name": "臻彩4K", + "type_id": "24" + }, + { + "type_name": "蜡笔臻彩", + "type_id": "29" + } + ] +} \ No newline at end of file diff --git a/潇洒/cloud/json/lj.json b/潇洒/cloud/json/lj.json new file mode 100644 index 00000000..f2a7f968 --- /dev/null +++ b/潇洒/cloud/json/lj.json @@ -0,0 +1,33 @@ +{ + "SiteUrl": "https://www.leijing.xyz,https://www.leijing1.com,https://leijing.xyz,https://leijing1.com", + "Classes": [ + { + "type_name": "电影", + "type_id": "42204681950354" + }, + { + "type_name": "剧集", + "type_id": "42204684250355" + }, + { + "type_name": "影视原盘", + "type_id": "42212287587456" + }, + { + "type_name": "综艺", + "type_id": "42210356650363" + }, + { + "type_name": "动漫", + "type_id": "42204792950357" + }, + { + "type_name": "纪录片", + "type_id": "42204697150356" + }, + { + "type_name": "演唱会", + "type_id": "42317879720298" + } + ] +} \ No newline at end of file diff --git a/潇洒/cloud/json/mogg.json b/潇洒/cloud/json/mogg.json new file mode 100644 index 00000000..c424655e --- /dev/null +++ b/潇洒/cloud/json/mogg.json @@ -0,0 +1,27 @@ +{ + "SiteUrl": "https://123.91muou.icu", + "Domains": [ + "https://123.91muou.icu", + "https://123.muouso.fun" + ], + "SiteWord": "mogg", + "SiteName": "木偶", + "Classes": [ + { + "type_name": "木偶电影", + "type_id": "1" + }, + { + "type_name": "木偶剧集", + "type_id": "2" + }, + { + "type_name": "木偶动漫", + "type_id": "3" + }, + { + "type_name": "木偶纪录片", + "type_id": "4" + } + ] +} \ No newline at end of file diff --git a/潇洒/cloud/json/og.json b/潇洒/cloud/json/og.json new file mode 100644 index 00000000..c51e0ca2 --- /dev/null +++ b/潇洒/cloud/json/og.json @@ -0,0 +1,30 @@ +{ + "SiteUrl": "https://woog.nxog.eu.org", + "Domains": [ + "https://woog.nxog.eu.org" + ], + "SiteWord": "og", + "SiteName": "欧歌", + "Classes": [ + { + "type_name": "电影", + "type_id": "1" + }, + { + "type_name": "剧集", + "type_id": "2" + }, + { + "type_name": "动漫", + "type_id": "3" + }, + { + "type_name": "综艺", + "type_id": "4" + }, + { + "type_name": "短剧", + "type_id": "5" + } + ] +} \ No newline at end of file diff --git a/潇洒/cloud/json/pan1.json b/潇洒/cloud/json/pan1.json new file mode 100644 index 00000000..f8fbfdbc --- /dev/null +++ b/潇洒/cloud/json/pan1.json @@ -0,0 +1,26 @@ +{ + "SiteUrl": "https://time.123in.link,https://pan1.me,https://123.panbox.my", + "Classes": [ + { + "type_name": "电影", + "type_id": "2" + }, + { + "type_name": "剧集", + "type_id": "48" + }, + { + "type_name": "4K原盘", + "type_id": "56" + }, + { + "type_name": "综艺", + "type_id": "52" + }, + { + "type_name": "动漫", + "type_id": "37" + } + ], + "Cookie": "bbs_sid=rrru52bda4v655kl9u1c87f00m; bbs_token=dZRAvHbHcUZkuJ7oHALqWoUs00C1fGqqXDXH7I8LH6hMddXP" +} \ No newline at end of file diff --git a/潇洒/cloud/json/quarkShare.json b/潇洒/cloud/json/quarkShare.json new file mode 100644 index 00000000..31ecc5b9 --- /dev/null +++ b/潇洒/cloud/json/quarkShare.json @@ -0,0 +1,111 @@ +[ + { + "name": "我的网盘", + "folders": [ + { + "shareId": "", + "folder": "0" + } + ] + }, + { + "name": "幼儿教育", + "folders": [ + { + "shareId": "a08f66152533", + "folder": "0" + } + ] + }, + { + "name": "短剧合集", + "folders": [ + { + "shareId": "885fd4ba2d92", + "folder": "0" + }, + { + "shareId": "a1cda418984f", + "folder": "0" + } + ] + }, + { + "name": "电影合集", + "folders": [ + { + "shareId": "49ab75d52e00", + "folder": "0" + }, + { + "shareId": "a632967760cf", + "folder": "0" + }, + { + "shareId": "2f59bb5d96b9", + "folder": "0" + }, + { + "shareId": "50828c368def", + "folder": "0" + }, + { + "shareId": "e07e26aecc08", + "folder": "0" + }, + { + "shareId": "0536a38a356e", + "folder": "0" + }, + { + "shareId": "e273ef697403", + "folder": "0" + }, + { + "shareId": "c8ac6c88e5d8", + "folder": "0" + } + ] + }, + { + "name": "电视剧合集", + "folders": [ + { + "shareId": "d19c4ebe1ff7", + "folder": "0" + }, + { + "shareId": "cd4c5ac7e830", + "folder": "0" + }, + { + "shareId": "e1b2ba8b6d6c", + "folder": "0" + }, + { + "shareId": "166fa0a7ca6f", + "folder": "0" + }, + { + "shareId": "37a92c0b7f10", + "folder": "0" + }, + { + "shareId": "fb3386e42af2", + "folder": "0" + }, + { + "shareId": "46ce214f4ed7", + "folder": "0" + }, + { + "shareId": "fe4681d7fb43", + "folder": "0" + }, + { + "shareId": "8d65e885b059", + "folder": "0" + } + ] + } +] \ No newline at end of file diff --git a/潇洒/cloud/json/sd.json b/潇洒/cloud/json/sd.json new file mode 100644 index 00000000..2941d7ec --- /dev/null +++ b/潇洒/cloud/json/sd.json @@ -0,0 +1,31 @@ +{ + "SiteUrl": "", + "Domains": [ + "http://1.95.79.193", + "http://1.95.79.193:666" + ], + "SiteWord": "sd", + "SiteName": "闪电", + "Classes": [ + { + "type_name": "闪电电影", + "type_id": "1" + }, + { + "type_name": "闪电剧集", + "type_id": "2" + }, + { + "type_name": "闪电综艺", + "type_id": "3" + }, + { + "type_name": "闪电动漫", + "type_id": "4" + }, + { + "type_name": "闪电短剧", + "type_id": "30" + } + ] +} \ No newline at end of file diff --git a/潇洒/cloud/json/ucShare.json b/潇洒/cloud/json/ucShare.json new file mode 100644 index 00000000..452f65ff --- /dev/null +++ b/潇洒/cloud/json/ucShare.json @@ -0,0 +1,47 @@ +[ + { + "name": "我的网盘", + "folders": [ + { + "shareId": "", + "folder": "0" + } + ] + }, + { + "name": "豆瓣TOP250部", + "folders": [ + { + "shareId": "c0503fdee6644", + "folder": "0" + } + ] + }, + { + "name": "日剧", + "folders": [ + { + "shareId": "391b86c09cd24", + "folder": "9df4921d548841199e625765413f8bd6" + } + ] + }, + { + "name": "韩剧", + "folders": [ + { + "shareId": "21f04a22052f4", + "folder": "950f5ca7d5e54d528c0dae1fddec5c78" + } + ] + }, + { + "name": "音乐", + "folders": [ + { + "shareId": "369e30038dae4", + "folder": "1b8a55dc18a54fb7aea8ed2b6fd6ad53" + } + ] + } +] \ No newline at end of file diff --git a/潇洒/cloud/json/wogg.json b/潇洒/cloud/json/wogg.json new file mode 100644 index 00000000..1e1adcb4 --- /dev/null +++ b/潇洒/cloud/json/wogg.json @@ -0,0 +1,2054 @@ +{ + "SiteUrl": "http://www.wogg.lol", + "Domains": [ + "http://www.wogg.lol", + "https://woggpan.888484.xyz", + "https://www.wogg.one", + "https://wogg.xxooo.cf" + ], + "SiteWord": "wogg", + "SiteName": "玩偶", + "Classes": [ + { + "type_name": "玩偶电影", + "type_id": "1" + }, + { + "type_name": "玩偶剧集", + "type_id": "2" + }, + { + "type_name": "臻彩视界", + "type_id": "44" + }, + { + "type_name": "动漫", + "type_id": "3" + }, + { + "type_name": "综艺", + "type_id": "4" + }, + { + "type_name": "音乐", + "type_id": "5" + }, + { + "type_name": "短剧", + "type_id": "6" + }, + { + "type_name": "纪录片", + "type_id": "46" + } + ], + "Filters": { + "1": [ + { + "name": "剧情", + "value": [ + { + "v": "喜剧", + "n": "喜剧" + }, + { + "v": "爱情", + "n": "爱情" + }, + { + "v": "恐怖", + "n": "恐怖" + }, + { + "v": "动作", + "n": "动作" + }, + { + "v": "科幻", + "n": "科幻" + }, + { + "v": "剧情", + "n": "剧情" + }, + { + "v": "战争", + "n": "战争" + }, + { + "v": "警匪", + "n": "警匪" + }, + { + "v": "犯罪", + "n": "犯罪" + }, + { + "v": "古装", + "n": "古装" + }, + { + "v": "奇幻", + "n": "奇幻" + }, + { + "v": "武侠", + "n": "武侠" + }, + { + "v": "冒险", + "n": "冒险" + }, + { + "v": "枪战", + "n": "枪战" + }, + { + "v": "恐怖", + "n": "恐怖" + }, + { + "v": "悬疑", + "n": "悬疑" + }, + { + "v": "惊悚", + "n": "惊悚" + }, + { + "v": "经典", + "n": "经典" + }, + { + "v": "青春", + "n": "青春" + }, + { + "v": "文艺", + "n": "文艺" + }, + { + "v": "微电影", + "n": "微电影" + }, + { + "v": "历史", + "n": "历史" + } + ], + "key": "class" + }, + { + "name": "地区", + "value": [ + { + "v": "中国大陆", + "n": "中国大陆" + }, + { + "v": "中国香港", + "n": "中国香港" + }, + { + "v": "中国台湾", + "n": "中国台湾" + }, + { + "v": "美国", + "n": "美国" + }, + { + "v": "西班牙", + "n": "西班牙" + }, + { + "v": "法国", + "n": "法国" + }, + { + "v": "英国", + "n": "英国" + }, + { + "v": "日本", + "n": "日本" + }, + { + "v": "韩国", + "n": "韩国" + }, + { + "v": "泰国", + "n": "泰国" + }, + { + "v": "德国", + "n": "德国" + }, + { + "v": "印度", + "n": "印度" + }, + { + "v": "意大利", + "n": "意大利" + }, + { + "v": "加拿大", + "n": "加拿大" + }, + { + "v": "其他", + "n": "其他" + } + ], + "key": "area" + }, + { + "name": "时间", + "value": [ + { + "v": "2025", + "n": "2025" + }, + { + "v": "2024", + "n": "2024" + }, + { + "v": "2023", + "n": "2023" + }, + { + "v": "2022", + "n": "2022" + }, + { + "v": "2021", + "n": "2021" + }, + { + "v": "2020", + "n": "2020" + }, + { + "v": "2019", + "n": "2019" + }, + { + "v": "2018", + "n": "2018" + }, + { + "v": "2017", + "n": "2017" + }, + { + "v": "2016", + "n": "2016" + }, + { + "v": "2015", + "n": "2015" + }, + { + "v": "2014", + "n": "2014" + }, + { + "v": "2013", + "n": "2013" + }, + { + "v": "2012", + "n": "2012" + }, + { + "v": "2011", + "n": "2011" + }, + { + "v": "2010", + "n": "2010" + } + ], + "key": "year" + }, + { + "name": "字母查找", + "value": [ + { + "v": "A", + "n": "A" + }, + { + "v": "B", + "n": "B" + }, + { + "v": "C", + "n": "C" + }, + { + "v": "D", + "n": "D" + }, + { + "v": "E", + "n": "E" + }, + { + "v": "F", + "n": "F" + }, + { + "v": "G", + "n": "G" + }, + { + "v": "H", + "n": "H" + }, + { + "v": "I", + "n": "I" + }, + { + "v": "J", + "n": "J" + }, + { + "v": "K", + "n": "K" + }, + { + "v": "L", + "n": "L" + }, + { + "v": "M", + "n": "M" + }, + { + "v": "N", + "n": "N" + }, + { + "v": "O", + "n": "O" + }, + { + "v": "P", + "n": "P" + }, + { + "v": "Q", + "n": "Q" + }, + { + "v": "R", + "n": "R" + }, + { + "v": "S", + "n": "S" + }, + { + "v": "T", + "n": "T" + }, + { + "v": "U", + "n": "U" + }, + { + "v": "V", + "n": "V" + }, + { + "v": "W", + "n": "W" + }, + { + "v": "X", + "n": "X" + }, + { + "v": "Y", + "n": "Y" + }, + { + "v": "Z", + "n": "Z" + }, + { + "v": "0-9", + "n": "0-9" + } + ], + "key": "character" + }, + { + "name": "评分排序", + "value": [ + { + "v": "time", + "n": "时间排序" + }, + { + "v": "hits", + "n": "人气排序" + }, + { + "v": "score", + "n": "评分排序" + } + ], + "key": "order" + } + ], + "2": [ + { + "name": "剧情", + "value": [ + { + "v": "喜剧", + "n": "喜剧" + }, + { + "v": "爱情", + "n": "爱情" + }, + { + "v": "恐怖", + "n": "恐怖" + }, + { + "v": "动作", + "n": "动作" + }, + { + "v": "科幻", + "n": "科幻" + }, + { + "v": "剧情", + "n": "剧情" + }, + { + "v": "战争", + "n": "战争" + }, + { + "v": "警匪", + "n": "警匪" + }, + { + "v": "犯罪", + "n": "犯罪" + }, + { + "v": "古装", + "n": "古装" + }, + { + "v": "奇幻", + "n": "奇幻" + }, + { + "v": "武侠", + "n": "武侠" + }, + { + "v": "冒险", + "n": "冒险" + }, + { + "v": "枪战", + "n": "枪战" + }, + { + "v": "恐怖", + "n": "恐怖" + }, + { + "v": "悬疑", + "n": "悬疑" + }, + { + "v": "惊悚", + "n": "惊悚" + }, + { + "v": "经典", + "n": "经典" + }, + { + "v": "青春", + "n": "青春" + }, + { + "v": "文艺", + "n": "文艺" + }, + { + "v": "微电影", + "n": "微电影" + }, + { + "v": "历史", + "n": "历史" + } + ], + "key": "class" + }, + { + "name": "地区", + "value": [ + { + "v": "中国大陆", + "n": "中国大陆" + }, + { + "v": "中国香港", + "n": "中国香港" + }, + { + "v": "中国台湾", + "n": "中国台湾" + }, + { + "v": "美国", + "n": "美国" + }, + { + "v": "西班牙", + "n": "西班牙" + }, + { + "v": "法国", + "n": "法国" + }, + { + "v": "英国", + "n": "英国" + }, + { + "v": "日本", + "n": "日本" + }, + { + "v": "韩国", + "n": "韩国" + }, + { + "v": "泰国", + "n": "泰国" + }, + { + "v": "德国", + "n": "德国" + }, + { + "v": "印度", + "n": "印度" + }, + { + "v": "意大利", + "n": "意大利" + }, + { + "v": "加拿大", + "n": "加拿大" + }, + { + "v": "其他", + "n": "其他" + } + ], + "key": "area" + }, + { + "name": "时间", + "value": [ + { + "v": "2025", + "n": "2025" + }, + { + "v": "2024", + "n": "2024" + }, + { + "v": "2023", + "n": "2023" + }, + { + "v": "2022", + "n": "2022" + }, + { + "v": "2021", + "n": "2021" + }, + { + "v": "2020", + "n": "2020" + }, + { + "v": "2019", + "n": "2019" + }, + { + "v": "2018", + "n": "2018" + }, + { + "v": "2017", + "n": "2017" + }, + { + "v": "2016", + "n": "2016" + }, + { + "v": "2015", + "n": "2015" + }, + { + "v": "2014", + "n": "2014" + }, + { + "v": "2013", + "n": "2013" + }, + { + "v": "2012", + "n": "2012" + }, + { + "v": "2011", + "n": "2011" + }, + { + "v": "2010", + "n": "2010" + } + ], + "key": "year" + }, + { + "name": "字母查找", + "value": [ + { + "v": "A", + "n": "A" + }, + { + "v": "B", + "n": "B" + }, + { + "v": "C", + "n": "C" + }, + { + "v": "D", + "n": "D" + }, + { + "v": "E", + "n": "E" + }, + { + "v": "F", + "n": "F" + }, + { + "v": "G", + "n": "G" + }, + { + "v": "H", + "n": "H" + }, + { + "v": "I", + "n": "I" + }, + { + "v": "J", + "n": "J" + }, + { + "v": "K", + "n": "K" + }, + { + "v": "L", + "n": "L" + }, + { + "v": "M", + "n": "M" + }, + { + "v": "N", + "n": "N" + }, + { + "v": "O", + "n": "O" + }, + { + "v": "P", + "n": "P" + }, + { + "v": "Q", + "n": "Q" + }, + { + "v": "R", + "n": "R" + }, + { + "v": "S", + "n": "S" + }, + { + "v": "T", + "n": "T" + }, + { + "v": "U", + "n": "U" + }, + { + "v": "V", + "n": "V" + }, + { + "v": "W", + "n": "W" + }, + { + "v": "X", + "n": "X" + }, + { + "v": "Y", + "n": "Y" + }, + { + "v": "Z", + "n": "Z" + }, + { + "v": "0-9", + "n": "0-9" + } + ], + "key": "character" + }, + { + "name": "评分排序", + "value": [ + { + "v": "time", + "n": "时间排序" + }, + { + "v": "hits", + "n": "人气排序" + }, + { + "v": "score", + "n": "评分排序" + } + ], + "key": "order" + } + ], + "3": [ + { + "name": "剧情", + "value": [ + { + "v": "情感", + "n": "情感" + }, + { + "v": "科幻", + "n": "科幻" + }, + { + "v": "热血", + "n": "热血" + }, + { + "v": "推理", + "n": "推理" + }, + { + "v": "搞笑", + "n": "搞笑" + }, + { + "v": "冒险", + "n": "冒险" + }, + { + "v": "萝莉", + "n": "萝莉" + }, + { + "v": "校园", + "n": "校园" + }, + { + "v": "动作", + "n": "动作" + }, + { + "v": "机战", + "n": "机战" + }, + { + "v": "运动", + "n": "运动" + }, + { + "v": "战争", + "n": "战争" + }, + { + "v": "少年", + "n": "少年" + }, + { + "v": "少女", + "n": "少女" + }, + { + "v": "社会", + "n": "社会" + }, + { + "v": "原创", + "n": "原创" + }, + { + "v": "亲子", + "n": "亲子" + }, + { + "v": "益智", + "n": "益智" + }, + { + "v": "励志", + "n": "励志" + }, + { + "v": "其他", + "n": "其他" + } + ], + "key": "class" + }, + { + "name": "地区", + "value": [ + { + "v": "中国大陆", + "n": "中国大陆" + }, + { + "v": "日本", + "n": "日本" + }, + { + "v": "美国", + "n": "美国" + }, + { + "v": "英国", + "n": "英国" + }, + { + "v": "西班牙", + "n": "西班牙" + }, + { + "v": "法国", + "n": "法国" + }, + { + "v": "其他", + "n": "其他" + } + ], + "key": "area" + }, + { + "name": "时间", + "value": [ + { + "v": "2025", + "n": "2025" + }, + { + "v": "2024", + "n": "2024" + }, + { + "v": "2023", + "n": "2023" + }, + { + "v": "2022", + "n": "2022" + }, + { + "v": "2021", + "n": "2021" + }, + { + "v": "2020", + "n": "2020" + }, + { + "v": "2019", + "n": "2019" + }, + { + "v": "2018", + "n": "2018" + }, + { + "v": "2017", + "n": "2017" + }, + { + "v": "2016", + "n": "2016" + }, + { + "v": "2015", + "n": "2015" + }, + { + "v": "2014", + "n": "2014" + }, + { + "v": "2013", + "n": "2013" + }, + { + "v": "2012", + "n": "2012" + }, + { + "v": "2011", + "n": "2011" + }, + { + "v": "2010", + "n": "2010" + } + ], + "key": "year" + }, + { + "name": "字母查找", + "value": [ + { + "v": "A", + "n": "A" + }, + { + "v": "B", + "n": "B" + }, + { + "v": "C", + "n": "C" + }, + { + "v": "D", + "n": "D" + }, + { + "v": "E", + "n": "E" + }, + { + "v": "F", + "n": "F" + }, + { + "v": "G", + "n": "G" + }, + { + "v": "H", + "n": "H" + }, + { + "v": "I", + "n": "I" + }, + { + "v": "J", + "n": "J" + }, + { + "v": "K", + "n": "K" + }, + { + "v": "L", + "n": "L" + }, + { + "v": "M", + "n": "M" + }, + { + "v": "N", + "n": "N" + }, + { + "v": "O", + "n": "O" + }, + { + "v": "P", + "n": "P" + }, + { + "v": "Q", + "n": "Q" + }, + { + "v": "R", + "n": "R" + }, + { + "v": "S", + "n": "S" + }, + { + "v": "T", + "n": "T" + }, + { + "v": "U", + "n": "U" + }, + { + "v": "V", + "n": "V" + }, + { + "v": "W", + "n": "W" + }, + { + "v": "X", + "n": "X" + }, + { + "v": "Y", + "n": "Y" + }, + { + "v": "Z", + "n": "Z" + }, + { + "v": "0-9", + "n": "0-9" + } + ], + "key": "character" + }, + { + "name": "评分排序", + "value": [ + { + "v": "time", + "n": "时间排序" + }, + { + "v": "hits", + "n": "人气排序" + }, + { + "v": "score", + "n": "评分排序" + } + ], + "key": "order" + } + ], + "4": [ + { + "name": "地区", + "value": [ + { + "v": "中国大陆", + "n": "中国大陆" + }, + { + "v": "中国台湾", + "n": "中国台湾" + }, + { + "v": "美国", + "n": "美国" + }, + { + "v": "法国", + "n": "法国" + }, + { + "v": "英国", + "n": "英国" + }, + { + "v": "日本", + "n": "日本" + }, + { + "v": "韩国", + "n": "韩国" + } + ], + "key": "area" + }, + { + "name": "时间", + "value": [ + { + "v": "2025", + "n": "2025" + }, + { + "v": "2024", + "n": "2024" + }, + { + "v": "2023", + "n": "2023" + }, + { + "v": "2022", + "n": "2022" + }, + { + "v": "2021", + "n": "2021" + }, + { + "v": "2020", + "n": "2020" + }, + { + "v": "2019", + "n": "2019" + }, + { + "v": "2018", + "n": "2018" + }, + { + "v": "2017", + "n": "2017" + }, + { + "v": "2016", + "n": "2016" + }, + { + "v": "2015", + "n": "2015" + }, + { + "v": "2014", + "n": "2014" + }, + { + "v": "2013", + "n": "2013" + }, + { + "v": "2012", + "n": "2012" + }, + { + "v": "2011", + "n": "2011" + }, + { + "v": "2010", + "n": "2010" + } + ], + "key": "year" + }, + { + "name": "字母查找", + "value": [ + { + "v": "A", + "n": "A" + }, + { + "v": "B", + "n": "B" + }, + { + "v": "C", + "n": "C" + }, + { + "v": "D", + "n": "D" + }, + { + "v": "E", + "n": "E" + }, + { + "v": "F", + "n": "F" + }, + { + "v": "G", + "n": "G" + }, + { + "v": "H", + "n": "H" + }, + { + "v": "I", + "n": "I" + }, + { + "v": "J", + "n": "J" + }, + { + "v": "K", + "n": "K" + }, + { + "v": "L", + "n": "L" + }, + { + "v": "M", + "n": "M" + }, + { + "v": "N", + "n": "N" + }, + { + "v": "O", + "n": "O" + }, + { + "v": "P", + "n": "P" + }, + { + "v": "Q", + "n": "Q" + }, + { + "v": "R", + "n": "R" + }, + { + "v": "S", + "n": "S" + }, + { + "v": "T", + "n": "T" + }, + { + "v": "U", + "n": "U" + }, + { + "v": "V", + "n": "V" + }, + { + "v": "W", + "n": "W" + }, + { + "v": "X", + "n": "X" + }, + { + "v": "Y", + "n": "Y" + }, + { + "v": "Z", + "n": "Z" + }, + { + "v": "0-9", + "n": "0-9" + } + ], + "key": "character" + }, + { + "name": "评分排序", + "value": [ + { + "v": "time", + "n": "时间排序" + }, + { + "v": "hits", + "n": "人气排序" + }, + { + "v": "score", + "n": "评分排序" + } + ], + "key": "order" + } + ], + "5": [ + { + "name": "字母查找", + "value": [ + { + "v": "A", + "n": "A" + }, + { + "v": "B", + "n": "B" + }, + { + "v": "C", + "n": "C" + }, + { + "v": "D", + "n": "D" + }, + { + "v": "E", + "n": "E" + }, + { + "v": "F", + "n": "F" + }, + { + "v": "G", + "n": "G" + }, + { + "v": "H", + "n": "H" + }, + { + "v": "I", + "n": "I" + }, + { + "v": "J", + "n": "J" + }, + { + "v": "K", + "n": "K" + }, + { + "v": "L", + "n": "L" + }, + { + "v": "M", + "n": "M" + }, + { + "v": "N", + "n": "N" + }, + { + "v": "O", + "n": "O" + }, + { + "v": "P", + "n": "P" + }, + { + "v": "Q", + "n": "Q" + }, + { + "v": "R", + "n": "R" + }, + { + "v": "S", + "n": "S" + }, + { + "v": "T", + "n": "T" + }, + { + "v": "U", + "n": "U" + }, + { + "v": "V", + "n": "V" + }, + { + "v": "W", + "n": "W" + }, + { + "v": "X", + "n": "X" + }, + { + "v": "Y", + "n": "Y" + }, + { + "v": "Z", + "n": "Z" + }, + { + "v": "0-9", + "n": "0-9" + } + ], + "key": "character" + }, + { + "name": "评分排序", + "value": [ + { + "v": "time", + "n": "时间排序" + }, + { + "v": "hits", + "n": "人气排序" + }, + { + "v": "score", + "n": "评分排序" + } + ], + "key": "order" + } + ], + "6": [ + { + "name": "剧情", + "value": [ + { + "v": "男频", + "n": "男频" + }, + { + "v": "女频", + "n": "女频" + }, + { + "v": "都市", + "n": "都市" + }, + { + "v": "甜宠", + "n": "甜宠" + }, + { + "v": "年代", + "n": "年代" + }, + { + "v": "穿越", + "n": "穿越" + }, + { + "v": "古装", + "n": "古装" + }, + { + "v": "亲情", + "n": "亲情" + }, + { + "v": "奇幻", + "n": "奇幻" + }, + { + "v": "萌宝", + "n": "萌宝" + }, + { + "v": "重生", + "n": "重生" + }, + { + "v": "冒险", + "n": "冒险" + }, + { + "v": "逆袭", + "n": "逆袭" + }, + { + "v": "虐恋", + "n": "虐恋" + }, + { + "v": "鉴宝", + "n": "鉴宝" + } + ], + "key": "class" + }, + { + "name": "时间", + "value": [ + { + "v": "2025", + "n": "2025" + }, + { + "v": "2024", + "n": "2024" + }, + { + "v": "2023", + "n": "2023" + }, + { + "v": "2022", + "n": "2022" + }, + { + "v": "2021", + "n": "2021" + } + ], + "key": "year" + }, + { + "name": "字母查找", + "value": [ + { + "v": "A", + "n": "A" + }, + { + "v": "B", + "n": "B" + }, + { + "v": "C", + "n": "C" + }, + { + "v": "D", + "n": "D" + }, + { + "v": "E", + "n": "E" + }, + { + "v": "F", + "n": "F" + }, + { + "v": "G", + "n": "G" + }, + { + "v": "H", + "n": "H" + }, + { + "v": "I", + "n": "I" + }, + { + "v": "J", + "n": "J" + }, + { + "v": "K", + "n": "K" + }, + { + "v": "L", + "n": "L" + }, + { + "v": "M", + "n": "M" + }, + { + "v": "N", + "n": "N" + }, + { + "v": "O", + "n": "O" + }, + { + "v": "P", + "n": "P" + }, + { + "v": "Q", + "n": "Q" + }, + { + "v": "R", + "n": "R" + }, + { + "v": "S", + "n": "S" + }, + { + "v": "T", + "n": "T" + }, + { + "v": "U", + "n": "U" + }, + { + "v": "V", + "n": "V" + }, + { + "v": "W", + "n": "W" + }, + { + "v": "X", + "n": "X" + }, + { + "v": "Y", + "n": "Y" + }, + { + "v": "Z", + "n": "Z" + }, + { + "v": "0-9", + "n": "0-9" + } + ], + "key": "character" + }, + { + "name": "评分排序", + "value": [ + { + "v": "time", + "n": "时间排序" + }, + { + "v": "hits", + "n": "人气排序" + }, + { + "v": "score", + "n": "评分排序" + } + ], + "key": "order" + } + ], + "44": [ + { + "name": "剧情", + "value": [ + { + "v": "爱情", + "n": "爱情" + }, + { + "v": "恐怖", + "n": "恐怖" + }, + { + "v": "动作", + "n": "动作" + }, + { + "v": "科幻", + "n": "科幻" + }, + { + "v": "剧情", + "n": "剧情" + }, + { + "v": "战争", + "n": "战争" + }, + { + "v": "警匪", + "n": "警匪" + }, + { + "v": "犯罪", + "n": "犯罪" + }, + { + "v": "古装", + "n": "古装" + }, + { + "v": "奇幻", + "n": "奇幻" + }, + { + "v": "武侠", + "n": "武侠" + }, + { + "v": "冒险", + "n": "冒险" + }, + { + "v": "枪战", + "n": "枪战" + }, + { + "v": "恐怖", + "n": "恐怖" + }, + { + "v": "悬疑", + "n": "悬疑" + }, + { + "v": "惊悚", + "n": "惊悚" + }, + { + "v": "经典", + "n": "经典" + }, + { + "v": "青春", + "n": "青春" + }, + { + "v": "文艺", + "n": "文艺" + }, + { + "v": "微电影", + "n": "微电影" + }, + { + "v": "历史", + "n": "历史" + } + ], + "key": "class" + }, + { + "name": "地区", + "value": [ + { + "v": "中国大陆", + "n": "中国大陆" + }, + { + "v": "中国香港", + "n": "中国香港" + }, + { + "v": "中国台湾", + "n": "中国台湾" + }, + { + "v": "美国", + "n": "美国" + }, + { + "v": "西班牙", + "n": "西班牙" + }, + { + "v": "法国", + "n": "法国" + }, + { + "v": "英国", + "n": "英国" + }, + { + "v": "日本", + "n": "日本" + }, + { + "v": "韩国", + "n": "韩国" + }, + { + "v": "泰国", + "n": "泰国" + }, + { + "v": "德国", + "n": "德国" + }, + { + "v": "印度", + "n": "印度" + }, + { + "v": "意大利", + "n": "意大利" + }, + { + "v": "加拿大", + "n": "加拿大" + }, + { + "v": "其他", + "n": "其他" + } + ], + "key": "area" + }, + { + "name": "时间", + "value": [ + { + "v": "2025", + "n": "2025" + }, + { + "v": "2024", + "n": "2024" + }, + { + "v": "2023", + "n": "2023" + }, + { + "v": "2022", + "n": "2022" + }, + { + "v": "2021", + "n": "2021" + }, + { + "v": "2020", + "n": "2020" + }, + { + "v": "2019", + "n": "2019" + }, + { + "v": "2018", + "n": "2018" + }, + { + "v": "2017", + "n": "2017" + }, + { + "v": "2016", + "n": "2016" + }, + { + "v": "2015", + "n": "2015" + }, + { + "v": "2014", + "n": "2014" + }, + { + "v": "2013", + "n": "2013" + }, + { + "v": "2012", + "n": "2012" + }, + { + "v": "2011", + "n": "2011" + }, + { + "v": "2010", + "n": "2010" + } + ], + "key": "year" + }, + { + "name": "字母查找", + "value": [ + { + "v": "A", + "n": "A" + }, + { + "v": "B", + "n": "B" + }, + { + "v": "C", + "n": "C" + }, + { + "v": "D", + "n": "D" + }, + { + "v": "E", + "n": "E" + }, + { + "v": "F", + "n": "F" + }, + { + "v": "G", + "n": "G" + }, + { + "v": "H", + "n": "H" + }, + { + "v": "I", + "n": "I" + }, + { + "v": "J", + "n": "J" + }, + { + "v": "K", + "n": "K" + }, + { + "v": "L", + "n": "L" + }, + { + "v": "M", + "n": "M" + }, + { + "v": "N", + "n": "N" + }, + { + "v": "O", + "n": "O" + }, + { + "v": "P", + "n": "P" + }, + { + "v": "Q", + "n": "Q" + }, + { + "v": "R", + "n": "R" + }, + { + "v": "S", + "n": "S" + }, + { + "v": "T", + "n": "T" + }, + { + "v": "U", + "n": "U" + }, + { + "v": "V", + "n": "V" + }, + { + "v": "W", + "n": "W" + }, + { + "v": "X", + "n": "X" + }, + { + "v": "Y", + "n": "Y" + }, + { + "v": "Z", + "n": "Z" + }, + { + "v": "0-9", + "n": "0-9" + } + ], + "key": "character" + }, + { + "name": "评分排序", + "value": [ + { + "n": "时间排序" + }, + { + "n": "人气排序" + }, + { + "n": "评分排序" + } + ], + "key": "order" + } + ] + } +} \ No newline at end of file diff --git a/潇洒/cloud/json/xbky.json b/潇洒/cloud/json/xbky.json new file mode 100644 index 00000000..93351bc7 --- /dev/null +++ b/潇洒/cloud/json/xbky.json @@ -0,0 +1,38 @@ +{ + "SiteUrl": "http://xsayang.fun:12512", + "Domains": [ + "http://xsayang.fun:12512" + ], + "SiteWord": "xbky", + "SiteName": "小斑快映", + "Classes": [ + { + "type_name": "电影", + "type_id": "1" + }, + { + "type_name": "剧集", + "type_id": "2" + }, + { + "type_name": "综艺", + "type_id": "3" + }, + { + "type_name": "动漫", + "type_id": "4" + }, + { + "type_name": "精品", + "type_id": "5" + }, + { + "type_name": "短剧", + "type_id": "6" + }, + { + "type_name": "123", + "type_id": "35" + } + ] +} \ No newline at end of file diff --git a/潇洒/cloud/json/xf.json b/潇洒/cloud/json/xf.json new file mode 100644 index 00000000..21882587 --- /dev/null +++ b/潇洒/cloud/json/xf.json @@ -0,0 +1,1461 @@ +{ + "SiteUrl": "https://xiafan.banye.tech:7086", + "Domains": [ + "http://154.204.177.231", + "http://www.xn--ghqy10g1w0a.xyz" + ], + "SiteWord": "xf", + "SiteName": "下饭", + "Classes": [ + { + "type_name": "下饭电影", + "type_id": "1" + }, + { + "type_name": "下饭剧集", + "type_id": "2" + }, + { + "type_name": "下饭综艺", + "type_id": "4" + }, + { + "type_name": "下饭动漫", + "type_id": "3" + }, + { + "type_name": "下饭记录片", + "type_id": "28" + }, + { + "type_name": "臻彩世界", + "type_id": "30" + } + ], + "Filters": { + "1": [ + { + "name": "剧情", + "value": [ + { + "v": "喜剧", + "n": "喜剧" + }, + { + "v": "爱情", + "n": "爱情" + }, + { + "v": "恐怖", + "n": "恐怖" + }, + { + "v": "动作", + "n": "动作" + }, + { + "v": "科幻", + "n": "科幻" + }, + { + "v": "剧情", + "n": "剧情" + }, + { + "v": "战争", + "n": "战争" + }, + { + "v": "警匪", + "n": "警匪" + }, + { + "v": "犯罪", + "n": "犯罪" + }, + { + "v": "动画", + "n": "动画" + }, + { + "v": "奇幻", + "n": "奇幻" + }, + { + "v": "武侠", + "n": "武侠" + }, + { + "v": "冒险", + "n": "冒险" + }, + { + "v": "枪战", + "n": "枪战" + }, + { + "v": "恐怖", + "n": "恐怖" + }, + { + "v": "悬疑", + "n": "悬疑" + }, + { + "v": "惊悚", + "n": "惊悚" + }, + { + "v": "经典", + "n": "经典" + }, + { + "v": "青春", + "n": "青春" + }, + { + "v": "文艺", + "n": "文艺" + }, + { + "v": "微电影", + "n": "微电影" + }, + { + "v": "古装", + "n": "古装" + }, + { + "v": "历史", + "n": "历史" + }, + { + "v": "运动", + "n": "运动" + }, + { + "v": "农村", + "n": "农村" + }, + { + "v": "儿童", + "n": "儿童" + }, + { + "v": "网络电影", + "n": "网络电影" + } + ], + "key": "class" + }, + { + "name": "地区", + "value": [ + { + "v": "大陆", + "n": "大陆" + }, + { + "v": "香港", + "n": "香港" + }, + { + "v": "台湾", + "n": "台湾" + }, + { + "v": "美国", + "n": "美国" + }, + { + "v": "法国", + "n": "法国" + }, + { + "v": "英国", + "n": "英国" + }, + { + "v": "日本", + "n": "日本" + }, + { + "v": "韩国", + "n": "韩国" + }, + { + "v": "德国", + "n": "德国" + }, + { + "v": "泰国", + "n": "泰国" + }, + { + "v": "印度", + "n": "印度" + }, + { + "v": "意大利", + "n": "意大利" + }, + { + "v": "西班牙", + "n": "西班牙" + }, + { + "v": "加拿大", + "n": "加拿大" + }, + { + "v": "其他", + "n": "其他" + } + ], + "key": "area" + }, + { + "name": "语言", + "value": [ + { + "v": "国语", + "n": "国语" + }, + { + "v": "英语", + "n": "英语" + }, + { + "v": "粤语", + "n": "粤语" + }, + { + "v": "闽南语", + "n": "闽南语" + }, + { + "v": "韩语", + "n": "韩语" + }, + { + "v": "日语", + "n": "日语" + }, + { + "v": "法语", + "n": "法语" + }, + { + "v": "德语", + "n": "德语" + }, + { + "v": "其它", + "n": "其它" + } + ], + "key": "lang" + }, + { + "name": "时间", + "value": [ + { + "v": "2024", + "n": "2024" + }, + { + "v": "2023", + "n": "2023" + }, + { + "v": "2022", + "n": "2022" + }, + { + "v": "2021", + "n": "2021" + }, + { + "v": "2020", + "n": "2020" + }, + { + "v": "2019", + "n": "2019" + }, + { + "v": "2018", + "n": "2018" + }, + { + "v": "2017", + "n": "2017" + }, + { + "v": "2016", + "n": "2016" + }, + { + "v": "2015", + "n": "2015" + }, + { + "v": "2014", + "n": "2014" + }, + { + "v": "2013", + "n": "2013" + }, + { + "v": "2012", + "n": "2012" + }, + { + "v": "2011", + "n": "2011" + }, + { + "v": "2010", + "n": "2010" + } + ], + "key": "year" + }, + { + "name": "字母查找", + "value": [ + { + "v": "A", + "n": "A" + }, + { + "v": "B", + "n": "B" + }, + { + "v": "C", + "n": "C" + }, + { + "v": "D", + "n": "D" + }, + { + "v": "E", + "n": "E" + }, + { + "v": "F", + "n": "F" + }, + { + "v": "G", + "n": "G" + }, + { + "v": "H", + "n": "H" + }, + { + "v": "I", + "n": "I" + }, + { + "v": "J", + "n": "J" + }, + { + "v": "K", + "n": "K" + }, + { + "v": "L", + "n": "L" + }, + { + "v": "M", + "n": "M" + }, + { + "v": "N", + "n": "N" + }, + { + "v": "O", + "n": "O" + }, + { + "v": "P", + "n": "P" + }, + { + "v": "Q", + "n": "Q" + }, + { + "v": "R", + "n": "R" + }, + { + "v": "S", + "n": "S" + }, + { + "v": "T", + "n": "T" + }, + { + "v": "U", + "n": "U" + }, + { + "v": "V", + "n": "V" + }, + { + "v": "W", + "n": "W" + }, + { + "v": "X", + "n": "X" + }, + { + "v": "Y", + "n": "Y" + }, + { + "v": "Z", + "n": "Z" + }, + { + "v": "0-9", + "n": "0-9" + } + ], + "key": "character" + }, + { + "name": "评分排序", + "value": [ + { + "v": "time", + "n": "时间排序" + }, + { + "v": "hits", + "n": "人气排序" + }, + { + "v": "score", + "n": "评分排序" + } + ], + "key": "order" + } + ], + "2": [ + { + "name": "类型", + "value": [ + { + "v": "13", + "n": "国产剧" + }, + { + "v": "14", + "n": "欧美剧" + }, + { + "v": "15", + "n": "日韩剧" + }, + { + "v": "16", + "n": "港台剧" + }, + { + "v": "23", + "n": "泰剧" + } + ], + "key": "type" + }, + { + "name": "剧情", + "value": [ + { + "v": "古装", + "n": "古装" + }, + { + "v": "战争", + "n": "战争" + }, + { + "v": "青春偶像", + "n": "青春偶像" + }, + { + "v": "喜剧", + "n": "喜剧" + }, + { + "v": "家庭", + "n": "家庭" + }, + { + "v": "犯罪", + "n": "犯罪" + }, + { + "v": "动作", + "n": "动作" + }, + { + "v": "奇幻", + "n": "奇幻" + }, + { + "v": "剧情", + "n": "剧情" + }, + { + "v": "历史", + "n": "历史" + }, + { + "v": "经典", + "n": "经典" + }, + { + "v": "乡村", + "n": "乡村" + }, + { + "v": "情景", + "n": "情景" + }, + { + "v": "商战", + "n": "商战" + }, + { + "v": "网剧", + "n": "网剧" + }, + { + "v": "其他", + "n": "其他" + } + ], + "key": "class" + }, + { + "name": "地区", + "value": [ + { + "v": "中国大陆", + "n": "中国大陆" + }, + { + "v": "大陆", + "n": "大陆" + }, + { + "v": "内地", + "n": "内地" + }, + { + "v": "韩国", + "n": "韩国" + }, + { + "v": "香港", + "n": "香港" + }, + { + "v": "台湾", + "n": "台湾" + }, + { + "v": "日本", + "n": "日本" + }, + { + "v": "美国", + "n": "美国" + }, + { + "v": "泰国", + "n": "泰国" + }, + { + "v": "英国", + "n": "英国" + }, + { + "v": "新加坡", + "n": "新加坡" + }, + { + "v": "其他", + "n": "其他" + } + ], + "key": "area" + }, + { + "name": "语言", + "value": [ + { + "v": "国语", + "n": "国语" + }, + { + "v": "英语", + "n": "英语" + }, + { + "v": "粤语", + "n": "粤语" + }, + { + "v": "闽南语", + "n": "闽南语" + }, + { + "v": "韩语", + "n": "韩语" + }, + { + "v": "日语", + "n": "日语" + }, + { + "v": "其它", + "n": "其它" + } + ], + "key": "lang" + }, + { + "name": "时间", + "value": [ + { + "v": "2024", + "n": "2024" + }, + { + "v": "2023", + "n": "2023" + }, + { + "v": "2022", + "n": "2022" + }, + { + "v": "2021", + "n": "2021" + }, + { + "v": "2020", + "n": "2020" + }, + { + "v": "2019", + "n": "2019" + }, + { + "v": "2018", + "n": "2018" + }, + { + "v": "2017", + "n": "2017" + }, + { + "v": "2016", + "n": "2016" + }, + { + "v": "2015", + "n": "2015" + }, + { + "v": "2014", + "n": "2014" + }, + { + "v": "2013", + "n": "2013" + }, + { + "v": "2012", + "n": "2012" + }, + { + "v": "2011", + "n": "2011" + }, + { + "v": "2010", + "n": "2010" + } + ], + "key": "year" + }, + { + "name": "字母查找", + "value": [ + { + "v": "A", + "n": "A" + }, + { + "v": "B", + "n": "B" + }, + { + "v": "C", + "n": "C" + }, + { + "v": "D", + "n": "D" + }, + { + "v": "E", + "n": "E" + }, + { + "v": "F", + "n": "F" + }, + { + "v": "G", + "n": "G" + }, + { + "v": "H", + "n": "H" + }, + { + "v": "I", + "n": "I" + }, + { + "v": "J", + "n": "J" + }, + { + "v": "K", + "n": "K" + }, + { + "v": "L", + "n": "L" + }, + { + "v": "M", + "n": "M" + }, + { + "v": "N", + "n": "N" + }, + { + "v": "O", + "n": "O" + }, + { + "v": "P", + "n": "P" + }, + { + "v": "Q", + "n": "Q" + }, + { + "v": "R", + "n": "R" + }, + { + "v": "S", + "n": "S" + }, + { + "v": "T", + "n": "T" + }, + { + "v": "U", + "n": "U" + }, + { + "v": "V", + "n": "V" + }, + { + "v": "W", + "n": "W" + }, + { + "v": "X", + "n": "X" + }, + { + "v": "Y", + "n": "Y" + }, + { + "v": "Z", + "n": "Z" + }, + { + "v": "0-9", + "n": "0-9" + } + ], + "key": "character" + }, + { + "name": "评分排序", + "value": [ + { + "v": "time", + "n": "时间排序" + }, + { + "v": "hits", + "n": "人气排序" + }, + { + "v": "score", + "n": "评分排序" + } + ], + "key": "order" + } + ], + "3": [ + { + "name": "类型", + "value": [ + { + "v": "20", + "n": "国产" + }, + { + "v": "21", + "n": "日韩" + }, + { + "v": "22", + "n": "欧美" + } + ], + "key": "type" + }, + { + "name": "时间", + "value": [ + { + "v": "2024", + "n": "2024" + }, + { + "v": "2023", + "n": "2023" + }, + { + "v": "2022", + "n": "2022" + }, + { + "v": "2021", + "n": "2021" + }, + { + "v": "2020", + "n": "2020" + }, + { + "v": "2019", + "n": "2019" + }, + { + "v": "2018", + "n": "2018" + }, + { + "v": "2017", + "n": "2017" + }, + { + "v": "2016", + "n": "2016" + }, + { + "v": "2015", + "n": "2015" + }, + { + "v": "2014", + "n": "2014" + }, + { + "v": "2013", + "n": "2013" + }, + { + "v": "2012", + "n": "2012" + }, + { + "v": "2011", + "n": "2011" + }, + { + "v": "2010", + "n": "2010" + } + ], + "key": "year" + }, + { + "name": "字母查找", + "value": [ + { + "v": "A", + "n": "A" + }, + { + "v": "B", + "n": "B" + }, + { + "v": "C", + "n": "C" + }, + { + "v": "D", + "n": "D" + }, + { + "v": "E", + "n": "E" + }, + { + "v": "F", + "n": "F" + }, + { + "v": "G", + "n": "G" + }, + { + "v": "H", + "n": "H" + }, + { + "v": "I", + "n": "I" + }, + { + "v": "J", + "n": "J" + }, + { + "v": "K", + "n": "K" + }, + { + "v": "L", + "n": "L" + }, + { + "v": "M", + "n": "M" + }, + { + "v": "N", + "n": "N" + }, + { + "v": "O", + "n": "O" + }, + { + "v": "P", + "n": "P" + }, + { + "v": "Q", + "n": "Q" + }, + { + "v": "R", + "n": "R" + }, + { + "v": "S", + "n": "S" + }, + { + "v": "T", + "n": "T" + }, + { + "v": "U", + "n": "U" + }, + { + "v": "V", + "n": "V" + }, + { + "v": "W", + "n": "W" + }, + { + "v": "X", + "n": "X" + }, + { + "v": "Y", + "n": "Y" + }, + { + "v": "Z", + "n": "Z" + }, + { + "v": "0-9", + "n": "0-9" + } + ], + "key": "character" + }, + { + "name": "评分排序", + "value": [ + { + "v": "time", + "n": "时间排序" + }, + { + "v": "hits", + "n": "人气排序" + }, + { + "v": "score", + "n": "评分排序" + } + ], + "key": "order" + } + ], + "25": [ + { + "name": "时间", + "value": [ + { + "v": "2024", + "n": "2024" + }, + { + "v": "2023", + "n": "2023" + }, + { + "v": "2022", + "n": "2022" + }, + { + "v": "2021", + "n": "2021" + }, + { + "v": "2020", + "n": "2020" + }, + { + "v": "2019", + "n": "2019" + }, + { + "v": "2018", + "n": "2018" + }, + { + "v": "2017", + "n": "2017" + }, + { + "v": "2016", + "n": "2016" + }, + { + "v": "2015", + "n": "2015" + }, + { + "v": "2014", + "n": "2014" + }, + { + "v": "2013", + "n": "2013" + }, + { + "v": "2012", + "n": "2012" + }, + { + "v": "2011", + "n": "2011" + }, + { + "v": "2010", + "n": "2010" + } + ], + "key": "year" + }, + { + "name": "字母查找", + "value": [ + { + "v": "A", + "n": "A" + }, + { + "v": "B", + "n": "B" + }, + { + "v": "C", + "n": "C" + }, + { + "v": "D", + "n": "D" + }, + { + "v": "E", + "n": "E" + }, + { + "v": "F", + "n": "F" + }, + { + "v": "G", + "n": "G" + }, + { + "v": "H", + "n": "H" + }, + { + "v": "I", + "n": "I" + }, + { + "v": "J", + "n": "J" + }, + { + "v": "K", + "n": "K" + }, + { + "v": "L", + "n": "L" + }, + { + "v": "M", + "n": "M" + }, + { + "v": "N", + "n": "N" + }, + { + "v": "O", + "n": "O" + }, + { + "v": "P", + "n": "P" + }, + { + "v": "Q", + "n": "Q" + }, + { + "v": "R", + "n": "R" + }, + { + "v": "S", + "n": "S" + }, + { + "v": "T", + "n": "T" + }, + { + "v": "U", + "n": "U" + }, + { + "v": "V", + "n": "V" + }, + { + "v": "W", + "n": "W" + }, + { + "v": "X", + "n": "X" + }, + { + "v": "Y", + "n": "Y" + }, + { + "v": "Z", + "n": "Z" + }, + { + "v": "0-9", + "n": "0-9" + } + ], + "key": "character" + }, + { + "name": "评分排序", + "value": [ + { + "v": "time", + "n": "时间排序" + }, + { + "v": "hits", + "n": "人气排序" + }, + { + "v": "score", + "n": "评分排序" + } + ], + "key": "order" + } + ], + "4": [ + { + "name": "时间", + "value": [ + { + "v": "2024", + "n": "2024" + }, + { + "v": "2023", + "n": "2023" + }, + { + "v": "2022", + "n": "2022" + }, + { + "v": "2021", + "n": "2021" + }, + { + "v": "2020", + "n": "2020" + }, + { + "v": "2019", + "n": "2019" + }, + { + "v": "2018", + "n": "2018" + }, + { + "v": "2017", + "n": "2017" + }, + { + "v": "2016", + "n": "2016" + }, + { + "v": "2015", + "n": "2015" + }, + { + "v": "2014", + "n": "2014" + }, + { + "v": "2013", + "n": "2013" + }, + { + "v": "2012", + "n": "2012" + }, + { + "v": "2011", + "n": "2011" + }, + { + "v": "2010", + "n": "2010" + } + ], + "key": "year" + }, + { + "name": "字母查找", + "value": [ + { + "v": "A", + "n": "A" + }, + { + "v": "B", + "n": "B" + }, + { + "v": "C", + "n": "C" + }, + { + "v": "D", + "n": "D" + }, + { + "v": "E", + "n": "E" + }, + { + "v": "F", + "n": "F" + }, + { + "v": "G", + "n": "G" + }, + { + "v": "H", + "n": "H" + }, + { + "v": "I", + "n": "I" + }, + { + "v": "J", + "n": "J" + }, + { + "v": "K", + "n": "K" + }, + { + "v": "L", + "n": "L" + }, + { + "v": "M", + "n": "M" + }, + { + "v": "N", + "n": "N" + }, + { + "v": "O", + "n": "O" + }, + { + "v": "P", + "n": "P" + }, + { + "v": "Q", + "n": "Q" + }, + { + "v": "R", + "n": "R" + }, + { + "v": "S", + "n": "S" + }, + { + "v": "T", + "n": "T" + }, + { + "v": "U", + "n": "U" + }, + { + "v": "V", + "n": "V" + }, + { + "v": "W", + "n": "W" + }, + { + "v": "X", + "n": "X" + }, + { + "v": "Y", + "n": "Y" + }, + { + "v": "Z", + "n": "Z" + }, + { + "v": "0-9", + "n": "0-9" + } + ], + "key": "character" + }, + { + "name": "评分排序", + "value": [ + { + "v": "time", + "n": "时间排序" + }, + { + "v": "hits", + "n": "人气排序" + }, + { + "v": "score", + "n": "评分排序" + } + ], + "key": "order" + } + ] + } +} \ No newline at end of file diff --git a/潇洒/cloud/json/yyds.json b/潇洒/cloud/json/yyds.json new file mode 100644 index 00000000..3c2cffa5 --- /dev/null +++ b/潇洒/cloud/json/yyds.json @@ -0,0 +1,36 @@ +{ + "SiteUrl": "https://tv.yydsys.top", + "Domains": [ + "https://tv.yydsys.top", + "https://tv.yydsys.cc", + "https://tv.214521.xyz" + ], + "SiteWord": "yyds", + "SiteName": "多多", + "Classes": [ + { + "type_name": "多多电影", + "type_id": "1" + }, + { + "type_name": "多多剧集", + "type_id": "2" + }, + { + "type_name": "综艺", + "type_id": "3" + }, + { + "type_name": "动漫", + "type_id": "4" + }, + { + "type_name": "短剧", + "type_id": "5" + }, + { + "type_name": "纪录", + "type_id": "20" + } + ] +} \ No newline at end of file diff --git a/潇洒/cloud/json/zz.json b/潇洒/cloud/json/zz.json new file mode 100644 index 00000000..22adc18b --- /dev/null +++ b/潇洒/cloud/json/zz.json @@ -0,0 +1,41 @@ +{ + "SiteUrl": "https://mihdr.top", + "Domains": [ + "https://mihdr.top", + "http://xiaomi666.fun", + "http://www.miqk.cc", + "https://xiaomiai.site" + ], + "SiteWord": "zz", + "SiteName": "至臻", + "Classes": [ + { + "type_name": "臻彩电影", + "type_id": "1" + }, + { + "type_name": "臻彩剧集", + "type_id": "2" + }, + { + "type_name": "臻彩动漫", + "type_id": "3" + }, + { + "type_name": "臻彩综艺", + "type_id": "4" + }, + { + "type_name": "短剧吃到饱", + "type_id": "5" + }, + { + "type_name": "老剧计划", + "type_id": "24" + }, + { + "type_name": "臻彩严选", + "type_id": "26" + } + ] +} \ No newline at end of file diff --git a/潇洒/education/js/BLH.js b/潇洒/education/js/BLH.js new file mode 100644 index 00000000..d726bd4a --- /dev/null +++ b/潇洒/education/js/BLH.js @@ -0,0 +1 @@ +dmFyIHJ1bGUgPSB7CiAgICDnsbvlnos6ICflvbHop4YnLCAvL+W9seinhnzlkKzkuaZ85ryr55S7fOWwj+ivtAogICAgdGl0bGU6ICfotJ3kuZDomY5b5YS/XScsCiAgICBob3N0OiAnaHR0cHM6Ly92ZC51YmVzdGtpZC5jb20nLAogICAgdXJsOiAnL2FwaS92MS9idi92aWRlbyNwZz1meXBhZ2UnLAogICAgaG9tZVVybDogJy9hcGkvdjEvYnYvdmlkZW8nLAogICAgc2VhcmNoYWJsZTogMCwKICAgIHF1aWNrU2VhcmNoOiAwLAogICAgZmlsdGVyYWJsZTogMCwKICAgIGhlYWRlcnM6IHsKICAgICAgICAnVXNlci1BZ2VudCc6ICdJT1NfVUEnLAogICAgfSwKICAgIHRpbWVvdXQ6IDUwMDAsCiAgICBjbGFzc19wYXJzZTogJGpzLnRvU3RyaW5nKCgpID0+IHsKICAgICAgICBpbnB1dCA9IEpTT04ucGFyc2UodW5nemlwKCdINHNJQUFBQUFBQUFBNFZVeTI3YVVCRDlGNit6d0tSQWsxK3BxcXBTc3VpaVZSZmRWRlVsVW5DQ3dVMUl3cU51SGdnRlExb3dPQ0dOakFud001NDdsMTAvb1plaVJtVHVvTzVzNlp5WmM4N00zQmVmakE4ZjMrKytlck5qYktkVEc4dWZkNi9mN2hyYnh1OUdlU0RPczZJV3hHRlJYTjRibnpkVzBLYTVxY1BqS0JKQkJYTytPUEdmd2xOcEhZM2pJN0JDN0hveXVDTEZOek02SEI2eU1Ndkp1NHQ0VkpidUlhblBxSUZwQ1lyWGtKOEozeUhvclhWcU9MU1pNSFc0dkxjdzZvaWJpWnkwVFJvTlUzNFZqNzFlSERuZ2E2NlprQ2d2dERYZUZqTzR2N2k2OGtSYmNEbU5IaGEyYlpYV1RCWXVxUmx1RktkNXZHaHlXV1VTaklYU2phZ2RzTW1hbk9QaUYxSDM0dkJ3OFJGVWlGZEdqZGdyejZkdUhOYXdTdWZNSktOV0FpdGp0RmxCS2E3OHJ6M1pkQlJVbk4xUytjOForZjhXRkN3UHpuelpEK2cyY1o0ZlNhME91bFBzSEQ4bHBaTnJGL2FvSlFkMWdtYUd2RVNMcWhWSEpTSW95YmtvT3dzMWZodUtEV2gxcVFWbXlqaitKczU3ZkFQbWZzZzFMM2NFN1FJWk41TVYxSzhmYVNKblFYVi9PVktxa1hHMUFOby81bzJoWW91N0tReEdWQ25YVHlPdEVXc211SFh6RHFEdDR2ZThqTHJ4NUpUMmUvWmZ4cHBtYVlZcCt5MXNlUEMxcWJhYlNtT2ZwQ3M0SG1JL2k3MktsbCtHaVU5VUEvV29zSWVjNU81K3NLL2d5c0w4cDZPSGxlVGVGVVU2Y1hFNGhzSXE3K1VmRkExSG9hY0dBQUE9JykpOwogICAgfSksCiAgICBwbGF5X3BhcnNlOiB0cnVlLAogICAgbGF6eTogJGpzLnRvU3RyaW5nKCgpID0+IHsKICAgICAgICBpbnB1dCA9IHsKICAgICAgICAgICAgcGFyc2U6IDAsCiAgICAgICAgICAgIHVybDogaW5wdXQgKyAnIy5tcDQnCiAgICAgICAgfTsKICAgIH0pLAogICAg5o6o6I2QOiAkanMudG9TdHJpbmcoKCkgPT4gewogICAgICAgIGxldCBwZGF0YSA9IHsKICAgICAgICAgICAgYWdlOiAxLAogICAgICAgICAgICBhcHB2ZXI6ICI2LjEuOSIsCiAgICAgICAgICAgIGVndmlwX3N0YXR1czogMCwKICAgICAgICAgICAgc3ZpcF9zdGF0dXM6IDAsCiAgICAgICAgICAgIHZwczogNjAsCiAgICAgICAgICAgIHN1YmNhdGVJZDogNTYsCiAgICAgICAgICAgIHA6IDEKICAgICAgICB9OwogICAgICAgIC8vICAgbGV0IHBib2R5ID0gYnVpbGRVcmwoJycscGRhdGEpLnNwbGl0KCc/JylbMV07CiAgICAgICAgLy8gICBsZXQgaHRtbCA9IHBvc3QoaW5wdXQse2JvZHk6cGJvZHl9KTsKICAgICAgICBsZXQgaHRtbCA9IHBvc3QoaW5wdXQsIHsKICAgICAgICAgICAgZGF0YTogcGRhdGEKICAgICAgICB9KTsKICAgICAgICBsZXQganNvbiA9IEpTT04ucGFyc2UoaHRtbCk7CiAgICAgICAgbGV0IGRhdGEgPSBqc29uLnJlc3VsdC5pdGVtczsKICAgICAgICBsZXQgZCA9IFtdOwogICAgICAgIGRhdGEuZm9yRWFjaChpdCA9PiB7CiAgICAgICAgICAgIGQucHVzaCh7CiAgICAgICAgICAgICAgICB2b2RfaWQ6IGl0LnVybCArICdAQCcgKyBpdC50aXRsZSArICdAQCcgKyBpdC5pbWFnZSwKICAgICAgICAgICAgICAgIHZvZF9uYW1lOiBpdC50aXRsZSwKICAgICAgICAgICAgICAgIHZvZF9waWM6IGl0LmltYWdlLAogICAgICAgICAgICAgICAgdm9kX3JlbWFya3M6ICfwn5GAJyArIGl0LnZpZXdjb3VudCB8fCAnJywKICAgICAgICAgICAgfSk7CiAgICAgICAgfSk7CiAgICAgICAgVk9EUyA9IGQ7CiAgICB9KSwKICAgIOS4gOe6pzogJGpzLnRvU3RyaW5nKCgpID0+IHsKICAgICAgICBsZXQgcGRhdGEgPSB7CiAgICAgICAgICAgIGFnZTogMSwKICAgICAgICAgICAgYXBwdmVyOiAiNi4xLjkiLAogICAgICAgICAgICBlZ3ZpcF9zdGF0dXM6IDAsCiAgICAgICAgICAgIHN2aXBfc3RhdHVzOiAwLAogICAgICAgICAgICB2cHM6IDYwLAogICAgICAgICAgICBzdWJjYXRlSWQ6IE1ZX0NBVEUsCiAgICAgICAgICAgIHA6IE1ZX1BBR0UKICAgICAgICB9OwogICAgICAgIGxldCBodG1sID0gcG9zdChpbnB1dC5zcGxpdCgnIycpWzBdLCB7CiAgICAgICAgICAgIGRhdGE6IHBkYXRhCiAgICAgICAgfSk7CiAgICAgICAgbGV0IGpzb24gPSBKU09OLnBhcnNlKGh0bWwpOwogICAgICAgIGxldCBkYXRhID0ganNvbi5yZXN1bHQuaXRlbXM7CiAgICAgICAgbGV0IGQgPSBbXTsKICAgICAgICBkYXRhLmZvckVhY2goaXQgPT4gewogICAgICAgICAgICBkLnB1c2goewogICAgICAgICAgICAgICAgdm9kX2lkOiBpdC51cmwgKyAnQEAnICsgaXQudGl0bGUgKyAnQEAnICsgaXQuaW1hZ2UsCiAgICAgICAgICAgICAgICB2b2RfbmFtZTogaXQudGl0bGUsCiAgICAgICAgICAgICAgICB2b2RfcGljOiBpdC5pbWFnZSwKICAgICAgICAgICAgICAgIHZvZF9yZW1hcmtzOiAn8J+RgCcgKyBpdC52aWV3Y291bnQgfHwgJycsCiAgICAgICAgICAgIH0pOwogICAgICAgIH0pOwogICAgICAgIFZPRFMgPSBkOwogICAgfSksCiAgICDkuoznuqc6ICcqJywKfQ== \ No newline at end of file diff --git a/潇洒/education/js/TXB.js b/潇洒/education/js/TXB.js new file mode 100644 index 00000000..2b008fc4 --- /dev/null +++ b/潇洒/education/js/TXB.js @@ -0,0 +1 @@ +dmFyIHJ1bGUgPSB7CiAgICB0aXRsZTogJ+WFlOWwj+i0nScsCiAgICBob3N0OiAnaHR0cHM6Ly93d3cudHV4aWFvYmVpLmNvbScsCiAgICBob21lVXJsOiAnJywKICAgIHVybDogJy9saXN0L21pcC1kYXRhP3R5cGVJZD1meWNsYXNzJnBhZ2U9ZnlwYWdlJmNhbGxiYWNrPScsCiAgICBkZXRhaWxVcmw6ICcvcGxheS9meWlkJywKICAgIHNlYXJjaFVybDogJy9zZWFyY2gvaW5kZXg/a2V5PSoqJywKICAgIHNlYXJjaGFibGU6IDIsCiAgICBoZWFkZXJzOiB7CiAgICAgICAgJ1VzZXItQWdlbnQnOiAnTU9CSUxFX1VBJwogICAgfSwKICAgIHRpbWVvdXQ6IDUwMDAsCiAgICBjbGFzc191cmw6ICcyJjMmNCYyNScsCiAgICBjbGFzc19uYW1lOiAn5YS/5q2MJuaVheS6iyblm73lraYm5ZCv6JKZJywKICAgIC8vY2xhc3NfbmFtZTonI3BhZ2Utdmlld3BvcnQmJnVsJiZsaTsudGV4dCYmVGV4dDthJiZocmVmOy8oLiopJywKICAgIGNhdGVfZXhjbHVkZTogJ+W6lOeUqCcsCiAgICDmjqjojZA6ICcucGljLWxpc3QubGlzdC1ib3g7Lml0ZW1zOy50ZXh0JiZUZXh0O21pcC1pbWcmJnNyYzsuYWxsJiZUZXh0O2EmJmhyZWYnLAogICAgZG91YmxlOiB0cnVlLAogICAgbGltaXQ6IDUsCiAgICBwbGF5X3BhcnNlOiB0cnVlLAogICAgbGF6eTogJ2pzOmZldGNoX3BhcmFtcy5oZWFkZXJzWyJ1c2VyLWFnZW50Il0gPSBJT1NfVUE7bGV0IGh0bWw9ZmV0Y2goaW5wdXQsZmV0Y2hfcGFyYW1zKTtsZXQgc3JjID0ganNwLnBkZmgoaHRtbCwiYm9keSYmI3ZpZGVvV3JhcCYmdmlkZW8tc3JjIik7aW5wdXQ9c3JjOycsCiAgICAvLyDkuIDnuqc6J2pzb246ZGF0YS5pdGVtcztuYW1lO2ltYWdlO2NvbGxlY3RfbnVtO2NhdGVnb3J5X2lkK3ZpZGVvX2lkJywKICAgIOS4gOe6pzogJ2pzb246ZGF0YS5pdGVtcztuYW1lO2ltYWdlO2R1cmF0aW9uX3N0cmluZzt2aWRlb19pZCcsCiAgICDkuoznuqc6ICcqJywKICAgIOaQnOe0ojogJy5saXN0LWNvbiYmLml0ZW1zOy50ZXh0JiZUZXh0O21pcC1pbWcmJnNyYzsudGltZSYmVGV4dDthJiZocmVmJywKfQ== \ No newline at end of file diff --git a/潇洒/education/json/CZKT.json b/潇洒/education/json/CZKT.json new file mode 100644 index 00000000..8e89f186 --- /dev/null +++ b/潇洒/education/json/CZKT.json @@ -0,0 +1,1398 @@ +{ + "class": [ + { + "type_name": "7年级语文", + "type_id": "7年级语文" + }, + { + "type_name": "7年级数学", + "type_id": "7年级数学" + }, + { + "type_name": "7年级英语", + "type_id": "7年级英语" + }, + { + "type_name": "7年级历史", + "type_id": "7年级历史" + }, + { + "type_name": "7年级地理", + "type_id": "7年级地理" + }, + { + "type_name": "7年级生物", + "type_id": "7年级生物" + }, + { + "type_name": "7年级物理", + "type_id": "7年级物理" + }, + { + "type_name": "7年级化学", + "type_id": "7年级化学" + }, + { + "type_name": "8年级语文", + "type_id": "8年级语文" + }, + { + "type_name": "8年级数学", + "type_id": "8年级数学" + }, + { + "type_name": "8年级英语", + "type_id": "8年级英语" + }, + { + "type_name": "8年级历史", + "type_id": "8年级历史" + }, + { + "type_name": "8年级地理", + "type_id": "8年级地理" + }, + { + "type_name": "8年级生物", + "type_id": "8年级生物" + }, + { + "type_name": "8年级物理", + "type_id": "8年级物理" + }, + { + "type_name": "8年级化学", + "type_id": "8年级化学" + }, + { + "type_name": "9年级语文", + "type_id": "9年级语文" + }, + { + "type_name": "9年级数学", + "type_id": "9年级数学" + }, + { + "type_name": "9年级英语", + "type_id": "9年级英语" + }, + { + "type_name": "9年级历史", + "type_id": "9年级历史" + }, + { + "type_name": "9年级地理", + "type_id": "9年级地理" + }, + { + "type_name": "9年级生物", + "type_id": "9年级生物" + }, + { + "type_name": "9年级物理", + "type_id": "9年级物理" + }, + { + "type_name": "9年级化学", + "type_id": "9年级化学" + } + ], + "filters": { + "7年级语文": [ + { + "key": "tid", + "name": "分类", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "沪教版", + "v": "沪教版7年级语文" + }, + { + "n": "人教版", + "v": "人教版7年级语文" + }, + { + "n": "北师大版", + "v": "北师大版7年级语文" + }, + { + "n": "苏教版", + "v": "苏教版7年级语文" + } + ] + }, + { + "key": "duration", + "name": "时长", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "60分钟以上", + "v": "4" + }, + { + "n": "30~60分钟", + "v": "3" + }, + { + "n": "10~30分钟", + "v": "2" + }, + { + "n": "10分钟以下", + "v": "1" + } + ] + } + ], + "7年级英语": [ + { + "key": "tid", + "name": "分类", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "沪教版", + "v": "沪教版7年级英语" + }, + { + "n": "人教版", + "v": "人教版7年级英语" + }, + { + "n": "北师大版", + "v": "北师大版7年级英语" + }, + { + "n": "苏教版", + "v": "苏教版7年级英语" + } + ] + }, + { + "key": "duration", + "name": "时长", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "60分钟以上", + "v": "4" + }, + { + "n": "30~60分钟", + "v": "3" + }, + { + "n": "10~30分钟", + "v": "2" + }, + { + "n": "10分钟以下", + "v": "1" + } + ] + } + ], + "7年级数学": [ + { + "key": "tid", + "name": "分类", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "沪教版", + "v": "沪教版7年级数学" + }, + { + "n": "人教版", + "v": "人教版7年级数学" + }, + { + "n": "北师大版", + "v": "北师大版7年级数学" + }, + { + "n": "苏教版", + "v": "苏教版7年级数学" + } + ] + }, + { + "key": "duration", + "name": "时长", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "60分钟以上", + "v": "4" + }, + { + "n": "30~60分钟", + "v": "3" + }, + { + "n": "10~30分钟", + "v": "2" + }, + { + "n": "10分钟以下", + "v": "1" + } + ] + } + ], + "7年级化学": [ + { + "key": "tid", + "name": "分类", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "沪教版", + "v": "沪教版7年级化学" + }, + { + "n": "人教版", + "v": "人教版7年级化学" + }, + { + "n": "北师大版", + "v": "北师大版7年级化学" + }, + { + "n": "苏教版", + "v": "苏教版7年级化学" + } + ] + }, + { + "key": "duration", + "name": "时长", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "60分钟以上", + "v": "4" + }, + { + "n": "30~60分钟", + "v": "3" + }, + { + "n": "10~30分钟", + "v": "2" + }, + { + "n": "10分钟以下", + "v": "1" + } + ] + } + ], + "7年级物理": [ + { + "key": "tid", + "name": "分类", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "沪教版", + "v": "沪教版7年级物理" + }, + { + "n": "人教版", + "v": "人教版7年级物理" + }, + { + "n": "北师大版", + "v": "北师大版7年级物理" + }, + { + "n": "苏教版", + "v": "苏教版7年级物理" + } + ] + }, + { + "key": "duration", + "name": "时长", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "60分钟以上", + "v": "4" + }, + { + "n": "30~60分钟", + "v": "3" + }, + { + "n": "10~30分钟", + "v": "2" + }, + { + "n": "10分钟以下", + "v": "1" + } + ] + } + ], + "7年级生物": [ + { + "key": "tid", + "name": "分类", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "沪教版", + "v": "沪教版7年级生物" + }, + { + "n": "人教版", + "v": "人教版7年级生物" + }, + { + "n": "北师大版", + "v": "北师大版7年级生物" + }, + { + "n": "苏教版", + "v": "苏教版7年级生物" + } + ] + }, + { + "key": "duration", + "name": "时长", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "60分钟以上", + "v": "4" + }, + { + "n": "30~60分钟", + "v": "3" + }, + { + "n": "10~30分钟", + "v": "2" + }, + { + "n": "10分钟以下", + "v": "1" + } + ] + } + ], + "7年级历史": [ + { + "key": "tid", + "name": "分类", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "沪教版", + "v": "沪教版7年级历史" + }, + { + "n": "人教版", + "v": "人教版7年级历史" + }, + { + "n": "北师大版", + "v": "北师大版7年级历史" + }, + { + "n": "苏教版", + "v": "苏教版7年级历史" + } + ] + }, + { + "key": "duration", + "name": "时长", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "60分钟以上", + "v": "4" + }, + { + "n": "30~60分钟", + "v": "3" + }, + { + "n": "10~30分钟", + "v": "2" + }, + { + "n": "10分钟以下", + "v": "1" + } + ] + } + ], + "7年级地理": [ + { + "key": "tid", + "name": "分类", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "沪教版", + "v": "沪教版7年级地理" + }, + { + "n": "人教版", + "v": "人教版7年级地理" + }, + { + "n": "北师大版", + "v": "北师大版7年级地理" + }, + { + "n": "苏教版", + "v": "苏教版7年级地理" + } + ] + }, + { + "key": "duration", + "name": "时长", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "60分钟以上", + "v": "4" + }, + { + "n": "30~60分钟", + "v": "3" + }, + { + "n": "10~30分钟", + "v": "2" + }, + { + "n": "10分钟以下", + "v": "1" + } + ] + } + ], + "8年级语文": [ + { + "key": "tid", + "name": "分类", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "沪教版", + "v": "沪教版8年级语文" + }, + { + "n": "人教版", + "v": "人教版8年级语文" + }, + { + "n": "北师大版", + "v": "北师大版8年级语文" + }, + { + "n": "苏教版", + "v": "苏教版8年级语文" + } + ] + }, + { + "key": "duration", + "name": "时长", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "60分钟以上", + "v": "4" + }, + { + "n": "30~60分钟", + "v": "3" + }, + { + "n": "10~30分钟", + "v": "2" + }, + { + "n": "10分钟以下", + "v": "1" + } + ] + } + ], + "8年级英语": [ + { + "key": "tid", + "name": "分类", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "沪教版", + "v": "沪教版8年级英语" + }, + { + "n": "人教版", + "v": "人教版8年级英语" + }, + { + "n": "北师大版", + "v": "北师大版8年级英语" + }, + { + "n": "苏教版", + "v": "苏教版8年级英语" + } + ] + }, + { + "key": "duration", + "name": "时长", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "60分钟以上", + "v": "4" + }, + { + "n": "30~60分钟", + "v": "3" + }, + { + "n": "10~30分钟", + "v": "2" + }, + { + "n": "10分钟以下", + "v": "1" + } + ] + } + ], + "8年级数学": [ + { + "key": "tid", + "name": "分类", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "沪教版", + "v": "沪教版8年级数学" + }, + { + "n": "人教版", + "v": "人教版8年级数学" + }, + { + "n": "北师大版", + "v": "北师大版8年级数学" + }, + { + "n": "苏教版", + "v": "苏教版8年级数学" + } + ] + }, + { + "key": "duration", + "name": "时长", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "60分钟以上", + "v": "4" + }, + { + "n": "30~60分钟", + "v": "3" + }, + { + "n": "10~30分钟", + "v": "2" + }, + { + "n": "10分钟以下", + "v": "1" + } + ] + } + ], + "8年级化学": [ + { + "key": "tid", + "name": "分类", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "沪教版", + "v": "沪教版8年级化学" + }, + { + "n": "人教版", + "v": "人教版8年级化学" + }, + { + "n": "北师大版", + "v": "北师大版8年级化学" + }, + { + "n": "苏教版", + "v": "苏教版8年级化学" + } + ] + }, + { + "key": "duration", + "name": "时长", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "60分钟以上", + "v": "4" + }, + { + "n": "30~60分钟", + "v": "3" + }, + { + "n": "10~30分钟", + "v": "2" + }, + { + "n": "10分钟以下", + "v": "1" + } + ] + } + ], + "8年级物理": [ + { + "key": "tid", + "name": "分类", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "沪教版", + "v": "沪教版8年级物理" + }, + { + "n": "人教版", + "v": "人教版8年级物理" + }, + { + "n": "北师大版", + "v": "北师大版8年级物理" + }, + { + "n": "苏教版", + "v": "苏教版8年级物理" + } + ] + }, + { + "key": "duration", + "name": "时长", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "60分钟以上", + "v": "4" + }, + { + "n": "30~60分钟", + "v": "3" + }, + { + "n": "10~30分钟", + "v": "2" + }, + { + "n": "10分钟以下", + "v": "1" + } + ] + } + ], + "8年级生物": [ + { + "key": "tid", + "name": "分类", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "沪教版", + "v": "沪教版8年级生物" + }, + { + "n": "人教版", + "v": "人教版8年级生物" + }, + { + "n": "北师大版", + "v": "北师大版8年级生物" + }, + { + "n": "苏教版", + "v": "苏教版8年级生物" + } + ] + }, + { + "key": "duration", + "name": "时长", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "60分钟以上", + "v": "4" + }, + { + "n": "30~60分钟", + "v": "3" + }, + { + "n": "10~30分钟", + "v": "2" + }, + { + "n": "10分钟以下", + "v": "1" + } + ] + } + ], + "8年级历史": [ + { + "key": "tid", + "name": "分类", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "沪教版", + "v": "沪教版8年级历史" + }, + { + "n": "人教版", + "v": "人教版8年级历史" + }, + { + "n": "北师大版", + "v": "北师大版8年级历史" + }, + { + "n": "苏教版", + "v": "苏教版8年级历史" + } + ] + }, + { + "key": "duration", + "name": "时长", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "60分钟以上", + "v": "4" + }, + { + "n": "30~60分钟", + "v": "3" + }, + { + "n": "10~30分钟", + "v": "2" + }, + { + "n": "10分钟以下", + "v": "1" + } + ] + } + ], + "8年级地理": [ + { + "key": "tid", + "name": "分类", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "沪教版", + "v": "沪教版8年级地理" + }, + { + "n": "人教版", + "v": "人教版8年级地理" + }, + { + "n": "北师大版", + "v": "北师大版8年级地理" + }, + { + "n": "苏教版", + "v": "苏教版8年级地理" + } + ] + }, + { + "key": "duration", + "name": "时长", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "60分钟以上", + "v": "4" + }, + { + "n": "30~60分钟", + "v": "3" + }, + { + "n": "10~30分钟", + "v": "2" + }, + { + "n": "10分钟以下", + "v": "1" + } + ] + } + ], + "9年级语文": [ + { + "key": "tid", + "name": "分类", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "沪教版", + "v": "沪教版9年级语文" + }, + { + "n": "人教版", + "v": "人教版9年级语文" + }, + { + "n": "北师大版", + "v": "北师大版9年级语文" + }, + { + "n": "苏教版", + "v": "苏教版9年级语文" + } + ] + }, + { + "key": "duration", + "name": "时长", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "60分钟以上", + "v": "4" + }, + { + "n": "30~60分钟", + "v": "3" + }, + { + "n": "10~30分钟", + "v": "2" + }, + { + "n": "10分钟以下", + "v": "1" + } + ] + } + ], + "9年级英语": [ + { + "key": "tid", + "name": "分类", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "沪教版", + "v": "沪教版9年级英语" + }, + { + "n": "人教版", + "v": "人教版9年级英语" + }, + { + "n": "北师大版", + "v": "北师大版9年级英语" + }, + { + "n": "苏教版", + "v": "苏教版9年级英语" + } + ] + }, + { + "key": "duration", + "name": "时长", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "60分钟以上", + "v": "4" + }, + { + "n": "30~60分钟", + "v": "3" + }, + { + "n": "10~30分钟", + "v": "2" + }, + { + "n": "10分钟以下", + "v": "1" + } + ] + } + ], + "9年级数学": [ + { + "key": "tid", + "name": "分类", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "沪教版", + "v": "沪教版9年级数学" + }, + { + "n": "人教版", + "v": "人教版9年级数学" + }, + { + "n": "北师大版", + "v": "北师大版9年级数学" + }, + { + "n": "苏教版", + "v": "苏教版9年级数学" + } + ] + }, + { + "key": "duration", + "name": "时长", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "60分钟以上", + "v": "4" + }, + { + "n": "30~60分钟", + "v": "3" + }, + { + "n": "10~30分钟", + "v": "2" + }, + { + "n": "10分钟以下", + "v": "1" + } + ] + } + ], + "9年级化学": [ + { + "key": "tid", + "name": "分类", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "沪教版", + "v": "沪教版9年级化学" + }, + { + "n": "人教版", + "v": "人教版9年级化学" + }, + { + "n": "北师大版", + "v": "北师大版9年级化学" + }, + { + "n": "苏教版", + "v": "苏教版9年级化学" + } + ] + }, + { + "key": "duration", + "name": "时长", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "60分钟以上", + "v": "4" + }, + { + "n": "30~60分钟", + "v": "3" + }, + { + "n": "10~30分钟", + "v": "2" + }, + { + "n": "10分钟以下", + "v": "1" + } + ] + } + ], + "9年级物理": [ + { + "key": "tid", + "name": "分类", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "沪教版", + "v": "沪教版9年级物理" + }, + { + "n": "人教版", + "v": "人教版9年级物理" + }, + { + "n": "北师大版", + "v": "北师大版9年级物理" + }, + { + "n": "苏教版", + "v": "苏教版9年级物理" + } + ] + }, + { + "key": "duration", + "name": "时长", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "60分钟以上", + "v": "4" + }, + { + "n": "30~60分钟", + "v": "3" + }, + { + "n": "10~30分钟", + "v": "2" + }, + { + "n": "10分钟以下", + "v": "1" + } + ] + } + ], + "9年级生物": [ + { + "key": "tid", + "name": "分类", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "沪教版", + "v": "沪教版9年级生物" + }, + { + "n": "人教版", + "v": "人教版9年级生物" + }, + { + "n": "北师大版", + "v": "北师大版9年级生物" + }, + { + "n": "苏教版", + "v": "苏教版9年级生物" + } + ] + }, + { + "key": "duration", + "name": "时长", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "60分钟以上", + "v": "4" + }, + { + "n": "30~60分钟", + "v": "3" + }, + { + "n": "10~30分钟", + "v": "2" + }, + { + "n": "10分钟以下", + "v": "1" + } + ] + } + ], + "9年级历史": [ + { + "key": "tid", + "name": "分类", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "沪教版", + "v": "沪教版9年级历史" + }, + { + "n": "人教版", + "v": "人教版9年级历史" + }, + { + "n": "北师大版", + "v": "北师大版9年级历史" + }, + { + "n": "苏教版", + "v": "苏教版9年级历史" + } + ] + }, + { + "key": "duration", + "name": "时长", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "60分钟以上", + "v": "4" + }, + { + "n": "30~60分钟", + "v": "3" + }, + { + "n": "10~30分钟", + "v": "2" + }, + { + "n": "10分钟以下", + "v": "1" + } + ] + } + ], + "9年级地理": [ + { + "key": "tid", + "name": "分类", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "沪教版", + "v": "沪教版9年级地理" + }, + { + "n": "人教版", + "v": "人教版9年级地理" + }, + { + "n": "北师大版", + "v": "北师大版9年级地理" + }, + { + "n": "苏教版", + "v": "苏教版9年级地理" + } + ] + }, + { + "key": "duration", + "name": "时长", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "60分钟以上", + "v": "4" + }, + { + "n": "30~60分钟", + "v": "3" + }, + { + "n": "10~30分钟", + "v": "2" + }, + { + "n": "10分钟以下", + "v": "1" + } + ] + } + ] + } +} \ No newline at end of file diff --git a/潇洒/education/json/ETBC.json b/潇洒/education/json/ETBC.json new file mode 100644 index 00000000..fe9d7872 --- /dev/null +++ b/潇洒/education/json/ETBC.json @@ -0,0 +1,16 @@ +{ + "class": [ + { + "type_name": "Sratch编程", + "type_id": "【123集】新版少儿编程scratch3.0从入门到精通" + }, + { + "type_name": "少儿Python", + "type_id": "少儿Python" + }, + { + "type_name": "少儿C++", + "type_id": "小学生《趣味C++入门》" + } + ] +} \ No newline at end of file diff --git a/潇洒/education/json/ETKC.json b/潇洒/education/json/ETKC.json new file mode 100644 index 00000000..18997a40 --- /dev/null +++ b/潇洒/education/json/ETKC.json @@ -0,0 +1,48 @@ +{ + "class": [ + { + "type_name": "幼儿识字", + "type_id": "幼儿识字" + }, + { + "type_name": "第一课:自我介绍", + "type_id": "少儿口才第一课:自我介绍" + }, + { + "type_name": "第二课:站姿训练", + "type_id": "少儿口才主持人第二课:站姿训练" + }, + { + "type_name": "第三课:坐姿训练", + "type_id": "少儿口才第三课:坐姿训练" + }, + { + "type_name": "第四课:眼神训练", + "type_id": "少儿口才演讲第四课:眼神训练" + }, + { + "type_name": "第五课:口部操", + "type_id": "少儿口才第五课:咋给娃们讲口部操" + }, + { + "type_name": "少儿口才_01", + "type_id": "01_01:少儿口才天天练_01" + }, + { + "type_name": "少儿口才_02", + "type_id": "01_02:少儿口才" + }, + { + "type_name": "少儿口才_03", + "type_id": "01_03:少儿口才" + }, + { + "type_name": "少儿口才_04", + "type_id": "01_04:少儿口才" + }, + { + "type_name": "【少儿口才训练系列】", + "type_id": "【少儿口才训练系列】" + } + ] +} \ No newline at end of file diff --git a/潇洒/education/json/ETPY.json b/潇洒/education/json/ETPY.json new file mode 100644 index 00000000..e1c2a462 --- /dev/null +++ b/潇洒/education/json/ETPY.json @@ -0,0 +1,40 @@ +{ + "class": [ + { + "type_name": "兔小贝拼音20集", + "type_id": "兔小贝拼音20集" + }, + { + "type_name": "拼音启蒙动画课", + "type_id": "拼音启蒙动画课" + }, + { + "type_name": "幼儿拼音全套", + "type_id": "幼儿拼音全套学习课程" + }, + { + "type_name": "跟我学拼音", + "type_id": "跟我学拼音" + }, + { + "type_name": "拼音必修课", + "type_id": "幼小衔接学拼音必修课" + }, + { + "type_name": "二十二天搞定拼音", + "type_id": "二十二天搞定拼音" + }, + { + "type_name": "芳妈教你学拼音", + "type_id": "【小学】芳妈教你学拼音" + }, + { + "type_name": "拼音启蒙动画", + "type_id": "拼音启蒙动画上下册23集" + }, + { + "type_name": "练宝宝学习拼音", + "type_id": "【拼音歌合集】练宝宝学习拼音" + } + ] +} \ No newline at end of file diff --git a/潇洒/education/json/ETSW.json b/潇洒/education/json/ETSW.json new file mode 100644 index 00000000..ca0ee1f4 --- /dev/null +++ b/潇洒/education/json/ETSW.json @@ -0,0 +1,36 @@ +{ + "class": [ + { + "type_name": "数学思维课", + "type_id": "幼小衔接数学思维课" + }, + { + "type_name": "摩比爱数学", + "type_id": "摩比爱数学" + }, + { + "type_name": "数理思维", + "type_id": "数理思维" + }, + { + "type_name": "火花思维", + "type_id": "火花思维" + }, + { + "type_name": "幼儿思维", + "type_id": "幼儿思维训练" + }, + { + "type_name": "数学思维培养", + "type_id": "数学思维培养" + }, + { + "type_name": "儿童思维", + "type_id": "儿童思维训练" + }, + { + "type_name": "幼儿思维推理训练", + "type_id": "幼儿思维推理训练" + } + ] +} \ No newline at end of file diff --git a/潇洒/education/json/ETSZ.json b/潇洒/education/json/ETSZ.json new file mode 100644 index 00000000..67107db4 --- /dev/null +++ b/潇洒/education/json/ETSZ.json @@ -0,0 +1,36 @@ +{ + "class": [ + { + "type_name": "幼儿识字", + "type_id": "幼儿识字" + }, + { + "type_name": "识字动画", + "type_id": "识字动画" + }, + { + "type_name": "悟空识字", + "type_id": "悟空识字" + }, + { + "type_name": "认字动画", + "type_id": "认字动画" + }, + { + "type_name": "汉字学习", + "type_id": "汉字学习" + }, + { + "type_name": "小灯塔神奇的汉字", + "type_id": "小灯塔神奇的汉字" + }, + { + "type_name": "汉字的演变", + "type_id": "汉字的演变" + }, + { + "type_name": "汉字宫", + "type_id": "汉字宫" + } + ] +} \ No newline at end of file diff --git a/潇洒/education/json/ETWS.json b/潇洒/education/json/ETWS.json new file mode 100644 index 00000000..5a0b4817 --- /dev/null +++ b/潇洒/education/json/ETWS.json @@ -0,0 +1,24 @@ +{ + "class": [ + { + "type_name": "剑术", + "type_id": "剑术一段《中国武术段位制教程剑术》" + }, + { + "type_name": "少儿武术", + "type_id": "少儿武术:五步拳" + }, + { + "type_name": "武术入门", + "type_id": "少儿武术入门" + }, + { + "type_name": "旭日东升武术", + "type_id": "少儿武术:旭日东升武术" + }, + { + "type_name": "散打", + "type_id": "武术散打教学视频" + } + ] +} \ No newline at end of file diff --git a/潇洒/education/json/ETYB.json b/潇洒/education/json/ETYB.json new file mode 100644 index 00000000..50e70011 --- /dev/null +++ b/潇洒/education/json/ETYB.json @@ -0,0 +1,28 @@ +{ + "class": [ + { + "type_name": "写字启蒙教程", + "type_id": "写字启蒙教程" + }, + { + "type_name": "叫叫硬笔书法", + "type_id": "叫叫硬笔书法" + }, + { + "type_name": "硬笔书法123节超好用", + "type_id": "硬笔书法123节超好用" + }, + { + "type_name": "王洪涛高效练字课", + "type_id": "王洪涛高效练字课" + }, + { + "type_name": "书法全套课【168集全】", + "type_id": "书法全套课【168集全】" + }, + { + "type_name": "1000+集全【汉字基本笔画部首入门】", + "type_id": "1000+集全【汉字基本笔画部首入门" + } + ] +} \ No newline at end of file diff --git a/潇洒/education/json/ETYY.json b/潇洒/education/json/ETYY.json new file mode 100644 index 00000000..579666f0 --- /dev/null +++ b/潇洒/education/json/ETYY.json @@ -0,0 +1,32 @@ +{ + "class": [ + { + "type_name": "英语音标", + "type_id": "幼儿音标教学" + }, + { + "type_name": "牛津阅读", + "type_id": "牛津阅读1-6级" + }, + { + "type_name": "洪恩幼儿英语", + "type_id": "洪恩幼儿英语" + }, + { + "type_name": "儿童英语", + "type_id": "儿童英语" + }, + { + "type_name": "英语动画", + "type_id": "英语动画" + }, + { + "type_name": "英文动画", + "type_id": "英文动画" + }, + { + "type_name": "幼儿园英语", + "type_id": "幼儿园英语" + } + ] +} \ No newline at end of file diff --git a/潇洒/education/json/GZKT.json b/潇洒/education/json/GZKT.json new file mode 100644 index 00000000..ea8a3e08 --- /dev/null +++ b/潇洒/education/json/GZKT.json @@ -0,0 +1,1576 @@ +{ + "class": [ + { + "type_name": "高一语文", + "type_id": "高一语文" + }, + { + "type_name": "高一数学", + "type_id": "高一数学" + }, + { + "type_name": "高一英语", + "type_id": "高一英语" + }, + { + "type_name": "高一历史", + "type_id": "高一历史" + }, + { + "type_name": "高一地理", + "type_id": "高一地理" + }, + { + "type_name": "高一生物", + "type_id": "高一生物" + }, + { + "type_name": "高一思想政治", + "type_id": "高一思想政治" + }, + { + "type_name": "高一物理", + "type_id": "高一物理" + }, + { + "type_name": "高一化学", + "type_id": "高一化学" + }, + { + "type_name": "高二语文", + "type_id": "高二语文" + }, + { + "type_name": "高二数学", + "type_id": "高二数学" + }, + { + "type_name": "高二英语", + "type_id": "高二英语" + }, + { + "type_name": "高二历史", + "type_id": "高二历史" + }, + { + "type_name": "高二地理", + "type_id": "高二地理" + }, + { + "type_name": "高二生物", + "type_id": "高二生物" + }, + { + "type_name": "高二思想政治", + "type_id": "高二思想政治" + }, + { + "type_name": "高二物理", + "type_id": "高二物理" + }, + { + "type_name": "高二化学", + "type_id": "高二化学" + }, + { + "type_name": "高三语文", + "type_id": "高三语文" + }, + { + "type_name": "高三数学", + "type_id": "高三数学" + }, + { + "type_name": "高三英语", + "type_id": "高三英语" + }, + { + "type_name": "高三历史", + "type_id": "高三历史" + }, + { + "type_name": "高三地理", + "type_id": "高三地理" + }, + { + "type_name": "高三生物", + "type_id": "高三生物" + }, + { + "type_name": "高三思想政治", + "type_id": "高三思想政治" + }, + { + "type_name": "高三物理", + "type_id": "高三物理" + }, + { + "type_name": "高三化学", + "type_id": "高三化学" + }, + { + "type_name": "高中信息技术", + "type_id": "高中信息技术" + } + ], + "filters": { + "高一语文": [ + { + "key": "tid", + "name": "分类", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "沪教版", + "v": "沪教版高一语文" + }, + { + "n": "人教版", + "v": "人教版高一语文" + }, + { + "n": "北师大版", + "v": "北师大版高一语文" + }, + { + "n": "苏教版", + "v": "苏教版高一语文" + } + ] + }, + { + "key": "duration", + "name": "时长", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "60分钟以上", + "v": "4" + }, + { + "n": "30~60分钟", + "v": "3" + }, + { + "n": "10~30分钟", + "v": "2" + }, + { + "n": "10分钟以下", + "v": "1" + } + ] + } + ], + "高一英语": [ + { + "key": "tid", + "name": "分类", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "沪教版", + "v": "沪教版高一英语" + }, + { + "n": "人教版", + "v": "人教版高一英语" + }, + { + "n": "北师大版", + "v": "北师大版高一英语" + }, + { + "n": "苏教版", + "v": "苏教版高一英语" + } + ] + }, + { + "key": "duration", + "name": "时长", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "60分钟以上", + "v": "4" + }, + { + "n": "30~60分钟", + "v": "3" + }, + { + "n": "10~30分钟", + "v": "2" + }, + { + "n": "10分钟以下", + "v": "1" + } + ] + } + ], + "高一数学": [ + { + "key": "tid", + "name": "分类", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "沪教版", + "v": "沪教版高一数学" + }, + { + "n": "人教版", + "v": "人教版高一数学" + }, + { + "n": "北师大版", + "v": "北师大版高一数学" + }, + { + "n": "苏教版", + "v": "苏教版高一数学" + } + ] + }, + { + "key": "duration", + "name": "时长", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "60分钟以上", + "v": "4" + }, + { + "n": "30~60分钟", + "v": "3" + }, + { + "n": "10~30分钟", + "v": "2" + }, + { + "n": "10分钟以下", + "v": "1" + } + ] + } + ], + "高一物理": [ + { + "key": "tid", + "name": "分类", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "沪教版", + "v": "沪教版高一物理" + }, + { + "n": "人教版", + "v": "人教版高一物理" + }, + { + "n": "北师大版", + "v": "北师大版高一物理" + }, + { + "n": "苏教版", + "v": "苏教版高一物理" + } + ] + }, + { + "key": "duration", + "name": "时长", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "60分钟以上", + "v": "4" + }, + { + "n": "30~60分钟", + "v": "3" + }, + { + "n": "10~30分钟", + "v": "2" + }, + { + "n": "10分钟以下", + "v": "1" + } + ] + } + ], + "高一化学": [ + { + "key": "tid", + "name": "分类", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "沪教版", + "v": "沪教版高一化学" + }, + { + "n": "人教版", + "v": "人教版高一化学" + }, + { + "n": "北师大版", + "v": "北师大版高一化学" + }, + { + "n": "苏教版", + "v": "苏教版高一化学" + } + ] + }, + { + "key": "duration", + "name": "时长", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "60分钟以上", + "v": "4" + }, + { + "n": "30~60分钟", + "v": "3" + }, + { + "n": "10~30分钟", + "v": "2" + }, + { + "n": "10分钟以下", + "v": "1" + } + ] + } + ], + "高一历史": [ + { + "key": "tid", + "name": "分类", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "沪教版", + "v": "沪教版高一历史" + }, + { + "n": "人教版", + "v": "人教版高一历史" + }, + { + "n": "北师大版", + "v": "北师大版高一历史" + }, + { + "n": "苏教版", + "v": "苏教版高一历史" + } + ] + }, + { + "key": "duration", + "name": "时长", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "60分钟以上", + "v": "4" + }, + { + "n": "30~60分钟", + "v": "3" + }, + { + "n": "10~30分钟", + "v": "2" + }, + { + "n": "10分钟以下", + "v": "1" + } + ] + } + ], + "高一生物": [ + { + "key": "tid", + "name": "分类", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "沪教版", + "v": "沪教版高一生物" + }, + { + "n": "人教版", + "v": "人教版高一生物" + }, + { + "n": "北师大版", + "v": "北师大版高一生物" + }, + { + "n": "苏教版", + "v": "苏教版高一生物" + } + ] + }, + { + "key": "duration", + "name": "时长", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "60分钟以上", + "v": "4" + }, + { + "n": "30~60分钟", + "v": "3" + }, + { + "n": "10~30分钟", + "v": "2" + }, + { + "n": "10分钟以下", + "v": "1" + } + ] + } + ], + "高一思想政治": [ + { + "key": "tid", + "name": "分类", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "沪教版", + "v": "沪教版高一思想政治" + }, + { + "n": "人教版", + "v": "人教版高一思想政治" + }, + { + "n": "北师大版", + "v": "北师大版高一思想政治" + }, + { + "n": "苏教版", + "v": "苏教版高一思想政治" + } + ] + }, + { + "key": "duration", + "name": "时长", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "60分钟以上", + "v": "4" + }, + { + "n": "30~60分钟", + "v": "3" + }, + { + "n": "10~30分钟", + "v": "2" + }, + { + "n": "10分钟以下", + "v": "1" + } + ] + } + ], + "高一地理": [ + { + "key": "tid", + "name": "分类", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "沪教版", + "v": "沪教版高一地理" + }, + { + "n": "人教版", + "v": "人教版高一地理" + }, + { + "n": "北师大版", + "v": "北师大版高一地理" + }, + { + "n": "苏教版", + "v": "苏教版高一地理" + } + ] + }, + { + "key": "duration", + "name": "时长", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "60分钟以上", + "v": "4" + }, + { + "n": "30~60分钟", + "v": "3" + }, + { + "n": "10~30分钟", + "v": "2" + }, + { + "n": "10分钟以下", + "v": "1" + } + ] + } + ], + "高二语文": [ + { + "key": "tid", + "name": "分类", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "沪教版", + "v": "沪教版高二语文" + }, + { + "n": "人教版", + "v": "人教版高二语文" + }, + { + "n": "北师大版", + "v": "北师大版高二语文" + }, + { + "n": "苏教版", + "v": "苏教版高二语文" + } + ] + }, + { + "key": "duration", + "name": "时长", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "60分钟以上", + "v": "4" + }, + { + "n": "30~60分钟", + "v": "3" + }, + { + "n": "10~30分钟", + "v": "2" + }, + { + "n": "10分钟以下", + "v": "1" + } + ] + } + ], + "高二英语": [ + { + "key": "tid", + "name": "分类", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "沪教版", + "v": "沪教版高二英语" + }, + { + "n": "人教版", + "v": "人教版高二英语" + }, + { + "n": "北师大版", + "v": "北师大版高二英语" + }, + { + "n": "苏教版", + "v": "苏教版高二英语" + } + ] + }, + { + "key": "duration", + "name": "时长", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "60分钟以上", + "v": "4" + }, + { + "n": "30~60分钟", + "v": "3" + }, + { + "n": "10~30分钟", + "v": "2" + }, + { + "n": "10分钟以下", + "v": "1" + } + ] + } + ], + "高二数学": [ + { + "key": "tid", + "name": "分类", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "沪教版", + "v": "沪教版高二数学" + }, + { + "n": "人教版", + "v": "人教版高二数学" + }, + { + "n": "北师大版", + "v": "北师大版高二数学" + }, + { + "n": "苏教版", + "v": "苏教版高二数学" + } + ] + }, + { + "key": "duration", + "name": "时长", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "60分钟以上", + "v": "4" + }, + { + "n": "30~60分钟", + "v": "3" + }, + { + "n": "10~30分钟", + "v": "2" + }, + { + "n": "10分钟以下", + "v": "1" + } + ] + } + ], + "高二物理": [ + { + "key": "tid", + "name": "分类", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "沪教版", + "v": "沪教版高二物理" + }, + { + "n": "人教版", + "v": "人教版高二物理" + }, + { + "n": "北师大版", + "v": "北师大版高二物理" + }, + { + "n": "苏教版", + "v": "苏教版高二物理" + } + ] + }, + { + "key": "duration", + "name": "时长", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "60分钟以上", + "v": "4" + }, + { + "n": "30~60分钟", + "v": "3" + }, + { + "n": "10~30分钟", + "v": "2" + }, + { + "n": "10分钟以下", + "v": "1" + } + ] + } + ], + "高二化学": [ + { + "key": "tid", + "name": "分类", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "沪教版", + "v": "沪教版高二化学" + }, + { + "n": "人教版", + "v": "人教版高二化学" + }, + { + "n": "北师大版", + "v": "北师大版高二化学" + }, + { + "n": "苏教版", + "v": "苏教版高二化学" + } + ] + }, + { + "key": "duration", + "name": "时长", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "60分钟以上", + "v": "4" + }, + { + "n": "30~60分钟", + "v": "3" + }, + { + "n": "10~30分钟", + "v": "2" + }, + { + "n": "10分钟以下", + "v": "1" + } + ] + } + ], + "高二历史": [ + { + "key": "tid", + "name": "分类", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "沪教版", + "v": "沪教版高二历史" + }, + { + "n": "人教版", + "v": "人教版高二历史" + }, + { + "n": "北师大版", + "v": "北师大版高二历史" + }, + { + "n": "苏教版", + "v": "苏教版高二历史" + } + ] + }, + { + "key": "duration", + "name": "时长", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "60分钟以上", + "v": "4" + }, + { + "n": "30~60分钟", + "v": "3" + }, + { + "n": "10~30分钟", + "v": "2" + }, + { + "n": "10分钟以下", + "v": "1" + } + ] + } + ], + "高二生物": [ + { + "key": "tid", + "name": "分类", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "沪教版", + "v": "沪教版高二生物" + }, + { + "n": "人教版", + "v": "人教版高二生物" + }, + { + "n": "北师大版", + "v": "北师大版高二生物" + }, + { + "n": "苏教版", + "v": "苏教版高二生物" + } + ] + }, + { + "key": "duration", + "name": "时长", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "60分钟以上", + "v": "4" + }, + { + "n": "30~60分钟", + "v": "3" + }, + { + "n": "10~30分钟", + "v": "2" + }, + { + "n": "10分钟以下", + "v": "1" + } + ] + } + ], + "高二思想政治": [ + { + "key": "tid", + "name": "分类", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "沪教版", + "v": "沪教版高二思想政治" + }, + { + "n": "人教版", + "v": "人教版高二思想政治" + }, + { + "n": "北师大版", + "v": "北师大版高二思想政治" + }, + { + "n": "苏教版", + "v": "苏教版高二思想政治" + } + ] + }, + { + "key": "duration", + "name": "时长", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "60分钟以上", + "v": "4" + }, + { + "n": "30~60分钟", + "v": "3" + }, + { + "n": "10~30分钟", + "v": "2" + }, + { + "n": "10分钟以下", + "v": "1" + } + ] + } + ], + "高二地理": [ + { + "key": "tid", + "name": "分类", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "沪教版", + "v": "沪教版高二地理" + }, + { + "n": "人教版", + "v": "人教版高二地理" + }, + { + "n": "北师大版", + "v": "北师大版高二地理" + }, + { + "n": "苏教版", + "v": "苏教版高二地理" + } + ] + }, + { + "key": "duration", + "name": "时长", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "60分钟以上", + "v": "4" + }, + { + "n": "30~60分钟", + "v": "3" + }, + { + "n": "10~30分钟", + "v": "2" + }, + { + "n": "10分钟以下", + "v": "1" + } + ] + } + ], + "高三语文": [ + { + "key": "tid", + "name": "分类", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "沪教版", + "v": "沪教版高三语文" + }, + { + "n": "人教版", + "v": "人教版高三语文" + }, + { + "n": "北师大版", + "v": "北师大版高三语文" + }, + { + "n": "苏教版", + "v": "苏教版高三语文" + } + ] + }, + { + "key": "duration", + "name": "时长", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "60分钟以上", + "v": "4" + }, + { + "n": "30~60分钟", + "v": "3" + }, + { + "n": "10~30分钟", + "v": "2" + }, + { + "n": "10分钟以下", + "v": "1" + } + ] + } + ], + "高三英语": [ + { + "key": "tid", + "name": "分类", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "沪教版", + "v": "沪教版高三英语" + }, + { + "n": "人教版", + "v": "人教版高三英语" + }, + { + "n": "北师大版", + "v": "北师大版高三英语" + }, + { + "n": "苏教版", + "v": "苏教版高三英语" + } + ] + }, + { + "key": "duration", + "name": "时长", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "60分钟以上", + "v": "4" + }, + { + "n": "30~60分钟", + "v": "3" + }, + { + "n": "10~30分钟", + "v": "2" + }, + { + "n": "10分钟以下", + "v": "1" + } + ] + } + ], + "高三数学": [ + { + "key": "tid", + "name": "分类", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "沪教版", + "v": "沪教版高三数学" + }, + { + "n": "人教版", + "v": "人教版高三数学" + }, + { + "n": "北师大版", + "v": "北师大版高三数学" + }, + { + "n": "苏教版", + "v": "苏教版高三数学" + } + ] + }, + { + "key": "duration", + "name": "时长", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "60分钟以上", + "v": "4" + }, + { + "n": "30~60分钟", + "v": "3" + }, + { + "n": "10~30分钟", + "v": "2" + }, + { + "n": "10分钟以下", + "v": "1" + } + ] + } + ], + "高三物理": [ + { + "key": "tid", + "name": "分类", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "沪教版", + "v": "沪教版高三物理" + }, + { + "n": "人教版", + "v": "人教版高三物理" + }, + { + "n": "北师大版", + "v": "北师大版高三物理" + }, + { + "n": "苏教版", + "v": "苏教版高三物理" + } + ] + }, + { + "key": "duration", + "name": "时长", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "60分钟以上", + "v": "4" + }, + { + "n": "30~60分钟", + "v": "3" + }, + { + "n": "10~30分钟", + "v": "2" + }, + { + "n": "10分钟以下", + "v": "1" + } + ] + } + ], + "高三化学": [ + { + "key": "tid", + "name": "分类", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "沪教版", + "v": "沪教版高三化学" + }, + { + "n": "人教版", + "v": "人教版高三化学" + }, + { + "n": "北师大版", + "v": "北师大版高三化学" + }, + { + "n": "苏教版", + "v": "苏教版高三化学" + } + ] + }, + { + "key": "duration", + "name": "时长", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "60分钟以上", + "v": "4" + }, + { + "n": "30~60分钟", + "v": "3" + }, + { + "n": "10~30分钟", + "v": "2" + }, + { + "n": "10分钟以下", + "v": "1" + } + ] + } + ], + "高三历史": [ + { + "key": "tid", + "name": "分类", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "沪教版", + "v": "沪教版高三历史" + }, + { + "n": "人教版", + "v": "人教版高三历史" + }, + { + "n": "北师大版", + "v": "北师大版高三历史" + }, + { + "n": "苏教版", + "v": "苏教版高三历史" + } + ] + }, + { + "key": "duration", + "name": "时长", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "60分钟以上", + "v": "4" + }, + { + "n": "30~60分钟", + "v": "3" + }, + { + "n": "10~30分钟", + "v": "2" + }, + { + "n": "10分钟以下", + "v": "1" + } + ] + } + ], + "高三生物": [ + { + "key": "tid", + "name": "分类", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "沪教版", + "v": "沪教版高三生物" + }, + { + "n": "人教版", + "v": "人教版高三生物" + }, + { + "n": "北师大版", + "v": "北师大版高三生物" + }, + { + "n": "苏教版", + "v": "苏教版高三生物" + } + ] + }, + { + "key": "duration", + "name": "时长", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "60分钟以上", + "v": "4" + }, + { + "n": "30~60分钟", + "v": "3" + }, + { + "n": "10~30分钟", + "v": "2" + }, + { + "n": "10分钟以下", + "v": "1" + } + ] + } + ], + "高三思想政治": [ + { + "key": "tid", + "name": "分类", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "沪教版", + "v": "沪教版高三思想政治" + }, + { + "n": "人教版", + "v": "人教版高三思想政治" + }, + { + "n": "北师大版", + "v": "北师大版高三思想政治" + }, + { + "n": "苏教版", + "v": "苏教版高三思想政治" + } + ] + }, + { + "key": "duration", + "name": "时长", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "60分钟以上", + "v": "4" + }, + { + "n": "30~60分钟", + "v": "3" + }, + { + "n": "10~30分钟", + "v": "2" + }, + { + "n": "10分钟以下", + "v": "1" + } + ] + } + ], + "高三地理": [ + { + "key": "tid", + "name": "分类", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "沪教版", + "v": "沪教版高三地理" + }, + { + "n": "人教版", + "v": "人教版高三地理" + }, + { + "n": "北师大版", + "v": "北师大版高三地理" + }, + { + "n": "苏教版", + "v": "苏教版高三地理" + } + ] + }, + { + "key": "duration", + "name": "时长", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "60分钟以上", + "v": "4" + }, + { + "n": "30~60分钟", + "v": "3" + }, + { + "n": "10~30分钟", + "v": "2" + }, + { + "n": "10分钟以下", + "v": "1" + } + ] + } + ] + } +} \ No newline at end of file diff --git a/潇洒/education/json/SEJY.json b/潇洒/education/json/SEJY.json new file mode 100644 index 00000000..db0d6849 --- /dev/null +++ b/潇洒/education/json/SEJY.json @@ -0,0 +1,454 @@ +{ + "class": [ + { + "type_name": "儿童早教", + "type_id": "儿童早教" + }, + { + "type_name": "儿童启蒙故事", + "type_id": "儿童启蒙故事" + }, + { + "type_name": "儿童英语启蒙", + "type_id": "儿童英语启蒙" + }, + { + "type_name": "儿童歌曲", + "type_id": "儿童歌曲" + }, + { + "type_name": "儿童绘画", + "type_id": "儿童绘画" + }, + { + "type_name": "睡前故事", + "type_id": "睡前故事" + }, + { + "type_name": "儿童动画", + "type_id": "儿童动画" + }, + { + "type_name": "儿童音乐", + "type_id": "儿童音乐" + }, + { + "type_name": "儿童安全教育", + "type_id": "儿童安全教育" + }, + { + "type_name": "贝瓦儿歌", + "type_id": "贝瓦儿歌" + }, + { + "type_name": "悟空识字", + "type_id": "悟空识字" + }, + { + "type_name": "宝宝巴士", + "type_id": "宝宝巴士" + }, + { + "type_name": "儿歌多多", + "type_id": "儿歌多多" + }, + { + "type_name": "学而思", + "type_id": "学而思" + } + ], + "filters": { + "儿童早教": [ + { + "key": "duration", + "name": "时长", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "60分钟以上", + "v": "4" + }, + { + "n": "30~60分钟", + "v": "3" + }, + { + "n": "10~30分钟", + "v": "2" + }, + { + "n": "10分钟以下", + "v": "1" + } + ] + } + ], + "儿童启蒙故事": [ + { + "key": "duration", + "name": "时长", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "60分钟以上", + "v": "4" + }, + { + "n": "30~60分钟", + "v": "3" + }, + { + "n": "10~30分钟", + "v": "2" + }, + { + "n": "10分钟以下", + "v": "1" + } + ] + } + ], + "儿童英语启蒙": [ + { + "key": "duration", + "name": "时长", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "60分钟以上", + "v": "4" + }, + { + "n": "30~60分钟", + "v": "3" + }, + { + "n": "10~30分钟", + "v": "2" + }, + { + "n": "10分钟以下", + "v": "1" + } + ] + } + ], + "儿童歌曲": [ + { + "key": "duration", + "name": "时长", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "60分钟以上", + "v": "4" + }, + { + "n": "30~60分钟", + "v": "3" + }, + { + "n": "10~30分钟", + "v": "2" + }, + { + "n": "10分钟以下", + "v": "1" + } + ] + } + ], + "儿童绘画": [ + { + "key": "duration", + "name": "时长", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "60分钟以上", + "v": "4" + }, + { + "n": "30~60分钟", + "v": "3" + }, + { + "n": "10~30分钟", + "v": "2" + }, + { + "n": "10分钟以下", + "v": "1" + } + ] + } + ], + "睡前故事": [ + { + "key": "duration", + "name": "时长", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "60分钟以上", + "v": "4" + }, + { + "n": "30~60分钟", + "v": "3" + }, + { + "n": "10~30分钟", + "v": "2" + }, + { + "n": "10分钟以下", + "v": "1" + } + ] + } + ], + "儿童动画": [ + { + "key": "duration", + "name": "时长", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "60分钟以上", + "v": "4" + }, + { + "n": "30~60分钟", + "v": "3" + }, + { + "n": "10~30分钟", + "v": "2" + }, + { + "n": "10分钟以下", + "v": "1" + } + ] + } + ], + "儿童音乐": [ + { + "key": "duration", + "name": "时长", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "60分钟以上", + "v": "4" + }, + { + "n": "30~60分钟", + "v": "3" + }, + { + "n": "10~30分钟", + "v": "2" + }, + { + "n": "10分钟以下", + "v": "1" + } + ] + } + ], + "儿童安全教育": [ + { + "key": "duration", + "name": "时长", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "60分钟以上", + "v": "4" + }, + { + "n": "30~60分钟", + "v": "3" + }, + { + "n": "10~30分钟", + "v": "2" + }, + { + "n": "10分钟以下", + "v": "1" + } + ] + } + ], + "贝瓦儿歌": [ + { + "key": "duration", + "name": "时长", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "60分钟以上", + "v": "4" + }, + { + "n": "30~60分钟", + "v": "3" + }, + { + "n": "10~30分钟", + "v": "2" + }, + { + "n": "10分钟以下", + "v": "1" + } + ] + } + ], + "悟空识字": [ + { + "key": "duration", + "name": "时长", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "60分钟以上", + "v": "4" + }, + { + "n": "30~60分钟", + "v": "3" + }, + { + "n": "10~30分钟", + "v": "2" + }, + { + "n": "10分钟以下", + "v": "1" + } + ] + } + ], + "宝宝巴士": [ + { + "key": "duration", + "name": "时长", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "60分钟以上", + "v": "4" + }, + { + "n": "30~60分钟", + "v": "3" + }, + { + "n": "10~30分钟", + "v": "2" + }, + { + "n": "10分钟以下", + "v": "1" + } + ] + } + ], + "儿歌多多": [ + { + "key": "duration", + "name": "时长", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "60分钟以上", + "v": "4" + }, + { + "n": "30~60分钟", + "v": "3" + }, + { + "n": "10~30分钟", + "v": "2" + }, + { + "n": "10分钟以下", + "v": "1" + } + ] + } + ], + "学而思": [ + { + "key": "duration", + "name": "时长", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "60分钟以上", + "v": "4" + }, + { + "n": "30~60分钟", + "v": "3" + }, + { + "n": "10~30分钟", + "v": "2" + }, + { + "n": "10分钟以下", + "v": "1" + } + ] + } + ] + } +} \ No newline at end of file diff --git a/潇洒/education/json/WYKT.json b/潇洒/education/json/WYKT.json new file mode 100644 index 00000000..862e2946 --- /dev/null +++ b/潇洒/education/json/WYKT.json @@ -0,0 +1,834 @@ +{ + "class": [ + { + "type_name": "英语", + "type_id": "英语学习" + }, + { + "type_name": "法语", + "type_id": "法语" + }, + { + "type_name": "德语", + "type_id": "德语" + }, + { + "type_name": "俄语", + "type_id": "俄语" + }, + { + "type_name": "韩语", + "type_id": "韩语" + }, + { + "type_name": "日语", + "type_id": "日语" + }, + { + "type_name": "阿拉伯语", + "type_id": "阿拉伯语" + }, + { + "type_name": "西班牙语", + "type_id": "西班牙语" + }, + { + "type_name": "意大利语", + "type_id": "意大利语" + } + ], + "filters": { + "英语学习": [ + { + "key": "order", + "name": "排序", + "value": [ + { + "n": "综合排序", + "v": "0" + }, + { + "n": "最多点击", + "v": "click" + }, + { + "n": "最新发布", + "v": "pubdate" + }, + { + "n": "最多弹幕", + "v": "dm" + }, + { + "n": "最多收藏", + "v": "stow" + } + ] + }, + { + "key": "tid", + "name": "分类", + "value": [ + { + "n": "英语语法", + "v": "英语语法" + }, + { + "n": "英语口语", + "v": "英语口语" + }, + { + "n": "英语基础", + "v": "英语基础" + }, + { + "n": "英语字母", + "v": "英语字母" + }, + { + "n": "英语词汇", + "v": "英语词汇" + }, + { + "n": "英语听力", + "v": "英语听力" + }, + { + "n": "英语考试", + "v": "英语考试" + } + ] + }, + { + "key": "duration", + "name": "时长", + "value": [ + { + "n": "全部时长", + "v": "0" + }, + { + "n": "60分钟以上", + "v": "4" + }, + { + "n": "30~60分钟", + "v": "3" + }, + { + "n": "10~30分钟", + "v": "2" + }, + { + "n": "10分钟以下", + "v": "1" + } + ] + } + ], + "法语": [ + { + "key": "order", + "name": "排序", + "value": [ + { + "n": "综合排序", + "v": "0" + }, + { + "n": "最多点击", + "v": "click" + }, + { + "n": "最新发布", + "v": "pubdate" + }, + { + "n": "最多弹幕", + "v": "dm" + }, + { + "n": "最多收藏", + "v": "stow" + } + ] + }, + { + "key": "tid", + "name": "分类", + "value": [ + { + "n": "法语语法", + "v": "法语语法" + }, + { + "n": "法语口语", + "v": "法语口语" + }, + { + "n": "法语基础", + "v": "法语基础" + }, + { + "n": "法语字母", + "v": "法语字母" + }, + { + "n": "法语词汇", + "v": "法语词汇" + }, + { + "n": "法语听力", + "v": "法语听力" + }, + { + "n": "法语考试", + "v": "法语考试" + } + ] + }, + { + "key": "duration", + "name": "时长", + "value": [ + { + "n": "全部时长", + "v": "0" + }, + { + "n": "60分钟以上", + "v": "4" + }, + { + "n": "30~60分钟", + "v": "3" + }, + { + "n": "10~30分钟", + "v": "2" + }, + { + "n": "10分钟以下", + "v": "1" + } + ] + } + ], + "德语": [ + { + "key": "order", + "name": "排序", + "value": [ + { + "n": "综合排序", + "v": "0" + }, + { + "n": "最多点击", + "v": "click" + }, + { + "n": "最新发布", + "v": "pubdate" + }, + { + "n": "最多弹幕", + "v": "dm" + }, + { + "n": "最多收藏", + "v": "stow" + } + ] + }, + { + "key": "tid", + "name": "分类", + "value": [ + { + "n": "德语语法", + "v": "德语语法" + }, + { + "n": "德语口语", + "v": "德语口语" + }, + { + "n": "德语基础", + "v": "德语基础" + }, + { + "n": "德语字母", + "v": "德语字母" + }, + { + "n": "德语词汇", + "v": "德语词汇" + }, + { + "n": "德语听力", + "v": "德语听力" + }, + { + "n": "德语考试", + "v": "德语考试" + } + ] + }, + { + "key": "duration", + "name": "时长", + "value": [ + { + "n": "全部时长", + "v": "0" + }, + { + "n": "60分钟以上", + "v": "4" + }, + { + "n": "30~60分钟", + "v": "3" + }, + { + "n": "10~30分钟", + "v": "2" + }, + { + "n": "10分钟以下", + "v": "1" + } + ] + } + ], + "俄语": [ + { + "key": "order", + "name": "排序", + "value": [ + { + "n": "综合排序", + "v": "0" + }, + { + "n": "最多点击", + "v": "click" + }, + { + "n": "最新发布", + "v": "pubdate" + }, + { + "n": "最多弹幕", + "v": "dm" + }, + { + "n": "最多收藏", + "v": "stow" + } + ] + }, + { + "key": "tid", + "name": "分类", + "value": [ + { + "n": "俄语语法", + "v": "俄语语法" + }, + { + "n": "俄语口语", + "v": "俄语口语" + }, + { + "n": "俄语基础", + "v": "俄语基础" + }, + { + "n": "俄语字母", + "v": "俄语字母" + }, + { + "n": "俄语词汇", + "v": "俄语词汇" + }, + { + "n": "俄语听力", + "v": "俄语听力" + }, + { + "n": "俄语考试", + "v": "俄语考试" + } + ] + }, + { + "key": "duration", + "name": "时长", + "value": [ + { + "n": "全部时长", + "v": "0" + }, + { + "n": "60分钟以上", + "v": "4" + }, + { + "n": "30~60分钟", + "v": "3" + }, + { + "n": "10~30分钟", + "v": "2" + }, + { + "n": "10分钟以下", + "v": "1" + } + ] + } + ], + "韩语": [ + { + "key": "order", + "name": "排序", + "value": [ + { + "n": "综合排序", + "v": "0" + }, + { + "n": "最多点击", + "v": "click" + }, + { + "n": "最新发布", + "v": "pubdate" + }, + { + "n": "最多弹幕", + "v": "dm" + }, + { + "n": "最多收藏", + "v": "stow" + } + ] + }, + { + "key": "tid", + "name": "分类", + "value": [ + { + "n": "韩语语法", + "v": "韩语语法" + }, + { + "n": "韩语口语", + "v": "韩语口语" + }, + { + "n": "韩语基础", + "v": "韩语基础" + }, + { + "n": "韩语字母", + "v": "韩语字母" + }, + { + "n": "韩语词汇", + "v": "韩语词汇" + }, + { + "n": "韩语听力", + "v": "韩语听力" + }, + { + "n": "韩语考试", + "v": "韩语考试" + } + ] + }, + { + "key": "duration", + "name": "时长", + "value": [ + { + "n": "全部时长", + "v": "0" + }, + { + "n": "60分钟以上", + "v": "4" + }, + { + "n": "30~60分钟", + "v": "3" + }, + { + "n": "10~30分钟", + "v": "2" + }, + { + "n": "10分钟以下", + "v": "1" + } + ] + } + ], + "日语": [ + { + "key": "order", + "name": "排序", + "value": [ + { + "n": "综合排序", + "v": "0" + }, + { + "n": "最多点击", + "v": "click" + }, + { + "n": "最新发布", + "v": "pubdate" + }, + { + "n": "最多弹幕", + "v": "dm" + }, + { + "n": "最多收藏", + "v": "stow" + } + ] + }, + { + "key": "tid", + "name": "分类", + "value": [ + { + "n": "日语语法", + "v": "日语语法" + }, + { + "n": "日语口语", + "v": "日语口语" + }, + { + "n": "日语基础", + "v": "日语基础" + }, + { + "n": "日语字母", + "v": "日语字母" + }, + { + "n": "日语词汇", + "v": "日语词汇" + }, + { + "n": "日语听力", + "v": "日语听力" + }, + { + "n": "日语考试", + "v": "日语考试" + } + ] + }, + { + "key": "duration", + "name": "时长", + "value": [ + { + "n": "全部时长", + "v": "0" + }, + { + "n": "60分钟以上", + "v": "4" + }, + { + "n": "30~60分钟", + "v": "3" + }, + { + "n": "10~30分钟", + "v": "2" + }, + { + "n": "10分钟以下", + "v": "1" + } + ] + } + ], + "阿拉伯语": [ + { + "key": "order", + "name": "排序", + "value": [ + { + "n": "综合排序", + "v": "0" + }, + { + "n": "最多点击", + "v": "click" + }, + { + "n": "最新发布", + "v": "pubdate" + }, + { + "n": "最多弹幕", + "v": "dm" + }, + { + "n": "最多收藏", + "v": "stow" + } + ] + }, + { + "key": "tid", + "name": "分类", + "value": [ + { + "n": "阿拉伯语语法", + "v": "阿拉伯语语法" + }, + { + "n": "阿拉伯语口语", + "v": "阿拉伯语口语" + }, + { + "n": "阿拉伯语基础", + "v": "阿拉伯语基础" + }, + { + "n": "阿拉伯语字母", + "v": "阿拉伯语字母" + }, + { + "n": "阿拉伯语词汇", + "v": "阿拉伯语词汇" + }, + { + "n": "阿拉伯语听力", + "v": "阿拉伯语听力" + }, + { + "n": "阿拉伯语考试", + "v": "阿拉伯语考试" + } + ] + }, + { + "key": "duration", + "name": "时长", + "value": [ + { + "n": "全部时长", + "v": "0" + }, + { + "n": "60分钟以上", + "v": "4" + }, + { + "n": "30~60分钟", + "v": "3" + }, + { + "n": "10~30分钟", + "v": "2" + }, + { + "n": "10分钟以下", + "v": "1" + } + ] + } + ], + "西班牙语": [ + { + "key": "order", + "name": "排序", + "value": [ + { + "n": "综合排序", + "v": "0" + }, + { + "n": "最多点击", + "v": "click" + }, + { + "n": "最新发布", + "v": "pubdate" + }, + { + "n": "最多弹幕", + "v": "dm" + }, + { + "n": "最多收藏", + "v": "stow" + } + ] + }, + { + "key": "tid", + "name": "分类", + "value": [ + { + "n": "西班牙语语法", + "v": "西班牙语语法" + }, + { + "n": "西班牙语口语", + "v": "西班牙语口语" + }, + { + "n": "西班牙语基础", + "v": "西班牙语基础" + }, + { + "n": "西班牙语字母", + "v": "西班牙语字母" + }, + { + "n": "西班牙语词汇", + "v": "西班牙语词汇" + }, + { + "n": "西班牙语听力", + "v": "西班牙语听力" + }, + { + "n": "西班牙语考试", + "v": "西班牙语考试" + } + ] + }, + { + "key": "duration", + "name": "时长", + "value": [ + { + "n": "全部时长", + "v": "0" + }, + { + "n": "60分钟以上", + "v": "4" + }, + { + "n": "30~60分钟", + "v": "3" + }, + { + "n": "10~30分钟", + "v": "2" + }, + { + "n": "10分钟以下", + "v": "1" + } + ] + } + ], + "意大利语": [ + { + "key": "order", + "name": "排序", + "value": [ + { + "n": "综合排序", + "v": "0" + }, + { + "n": "最多点击", + "v": "click" + }, + { + "n": "最新发布", + "v": "pubdate" + }, + { + "n": "最多弹幕", + "v": "dm" + }, + { + "n": "最多收藏", + "v": "stow" + } + ] + }, + { + "key": "tid", + "name": "分类", + "value": [ + { + "n": "意大利语语法", + "v": "意大利语语法" + }, + { + "n": "意大利语口语", + "v": "意大利语口语" + }, + { + "n": "意大利语基础", + "v": "意大利语基础" + }, + { + "n": "意大利语字母", + "v": "意大利语字母" + }, + { + "n": "意大利语词汇", + "v": "意大利语词汇" + }, + { + "n": "意大利语听力", + "v": "意大利语听力" + }, + { + "n": "意大利语考试", + "v": "意大利语考试" + } + ] + }, + { + "key": "duration", + "name": "时长", + "value": [ + { + "n": "全部时长", + "v": "0" + }, + { + "n": "60分钟以上", + "v": "4" + }, + { + "n": "30~60分钟", + "v": "3" + }, + { + "n": "10~30分钟", + "v": "2" + }, + { + "n": "10分钟以下", + "v": "1" + } + ] + } + ] + } +} \ No newline at end of file diff --git a/潇洒/education/json/XDTBK.json b/潇洒/education/json/XDTBK.json new file mode 100644 index 00000000..67ecc6f8 --- /dev/null +++ b/潇洒/education/json/XDTBK.json @@ -0,0 +1,636 @@ +{ + "class": [ + { + "type_name": "百科", + "type_id": "10天玩转世界top10博物馆" + }, + { + "type_name": "世界博物馆", + "type_id": "玩转世界博物馆第二季" + }, + { + "type_name": "探秘恐龙世界", + "type_id": "【合集】带孩子探秘恐龙世界 中文版" + }, + { + "type_name": "奇趣生物大百科", + "type_id": "奇趣生物大百科" + }, + { + "type_name": "动物世界", + "type_id": "玩转奇妙的动物世界" + }, + { + "type_name": "植物启蒙", + "type_id": "【小灯塔】给孩子的植物启蒙课" + }, + { + "type_name": "物种百科", + "type_id": "小灯塔给孩子的物种百科" + }, + { + "type_name": "昆虫记", + "type_id": "昆虫记" + }, + { + "type_name": "探秘故宫角落", + "type_id": "探秘故宫角落" + }, + { + "type_name": "top10名校", + "type_id": "10天游遍世界top10名校" + }, + { + "type_name": "top10名画", + "type_id": "看懂世界top10名画" + }, + { + "type_name": "地球", + "type_id": "【全8集】舌尖上的地球" + }, + { + "type_name": "地理", + "type_id": "给孩子的第一堂海洋课【完结】" + }, + { + "type_name": "海底世界", + "type_id": "穿越奇妙海底世界" + }, + { + "type_name": "地球生命史", + "type_id": "小灯塔地球生命史" + }, + { + "type_name": "探秘地球南北极", + "type_id": "小灯塔探秘地球南北极" + }, + { + "type_name": "世界十大名胜", + "type_id": "小灯塔探秘世界十大名胜" + }, + { + "type_name": "环球之旅", + "type_id": "小灯塔奇妙的环球之旅" + }, + { + "type_name": "华夏地理", + "type_id": "小灯塔探秘华夏地理" + }, + { + "type_name": "自然地理", + "type_id": "小灯塔自然地理大巡游" + }, + { + "type_name": "出发啦! 敦煌", + "type_id": "小灯塔出发啦! 敦煌" + }, + { + "type_name": "冲出亚马逊", + "type_id": "小灯塔冲出亚马逊" + }, + { + "type_name": "走进美国", + "type_id": "小灯塔走进美国" + }, + { + "type_name": " 非洲大冒险", + "type_id": "小灯塔 非洲大冒险" + }, + { + "type_name": "国学", + "type_id": "神奇的汉字故事 全20集" + }, + { + "type_name": "唐诗大世界", + "type_id": "穿越唐诗大世界" + }, + { + "type_name": "诗词大会", + "type_id": "【小灯塔】诗词大会" + }, + { + "type_name": "三字经", + "type_id": "三字经幼儿启蒙(56集超清全)" + }, + { + "type_name": "西游记", + "type_id": "30集西游记精选故事 给孩子看的经典神话" + }, + { + "type_name": "经典神话", + "type_id": "30集西游记精选故事 给孩子看的经典神话" + }, + { + "type_name": "成语故事", + "type_id": "【100集全】成语故事动画 小灯塔成语动画" + }, + { + "type_name": "中华名人故事", + "type_id": "【小灯塔】中华名人故事" + }, + { + "type_name": "山海经", + "type_id": "20集全【给孩子的山海经】小灯塔趣味动画" + }, + { + "type_name": "三国动画", + "type_id": "三国动画故事(24节全)" + }, + { + "type_name": "春节习俗", + "type_id": "【小灯塔】春节习俗追根溯源立春节" + }, + { + "type_name": "少儿版三国演义", + "type_id": "小灯塔少儿版三国演义" + }, + { + "type_name": "十二生肖", + "type_id": "【小灯塔】十二生肖" + }, + { + "type_name": "中华上下五千年", + "type_id": "【小灯塔】中华上下五千年" + }, + { + "type_name": "科学", + "type_id": "小灯塔.剑桥数学启蒙课(全)" + }, + { + "type_name": "奇趣科学实验室", + "type_id": "小灯塔奇趣科学实验室" + }, + { + "type_name": "剑桥数学启蒙课", + "type_id": "小灯塔剑桥数学启蒙课" + }, + { + "type_name": "宇宙探秘之旅", + "type_id": "小灯塔十大主题宇宙探秘之旅" + }, + { + "type_name": "跟动物老师学发明", + "type_id": "小灯塔跟动物老师学发明" + }, + { + "type_name": "天才发明家", + "type_id": "小灯塔天才发明家" + }, + { + "type_name": "剑桥博士讲物理", + "type_id": "小灯塔剑桥博士讲物理" + }, + { + "type_name": "STEM奇妙科学课", + "type_id": "小灯塔STEM奇妙科学课" + }, + { + "type_name": "出发吧,月球!", + "type_id": "小灯塔出发吧,月球!" + }, + { + "type_name": "十大世界未解之谜", + "type_id": "小灯塔探秘十大世界未解之谜" + }, + { + "type_name": "神奇的气象魔法", + "type_id": "小灯塔神奇的气象魔法" + }, + { + "type_name": "了不起的新科技", + "type_id": "小灯塔了不起的新科技" + }, + { + "type_name": "安全教育课", + "type_id": "给孩子的第一堂性教育课" + }, + { + "type_name": "影响十万少年的人际沟通课", + "type_id": "影响十万少年的人际沟通课" + }, + { + "type_name": "跟着棋圣学围棋", + "type_id": "小灯塔跟着棋圣学围棋" + }, + { + "type_name": "财商启蒙课", + "type_id": "小灯塔财商启蒙课" + }, + { + "type_name": "人体奥秘", + "type_id": "小灯塔人体奥秘" + }, + { + "type_name": "儿童性教育课", + "type_id": "给孩子的第一堂性教育课" + }, + { + "type_name": "讲给孩子的人类简史", + "type_id": "小灯塔讲给孩子的人类简史" + }, + { + "type_name": "讲给孩子的希腊神话故事", + "type_id": "小灯塔讲给孩子的希腊神话故事" + } + ], + "filters": { + "10天玩转世界top10博物馆": [ + { + "key": "tid", + "name": "分类", + "value": [ + { + "n": "【小灯塔】10天玩转世界top10博物馆卢浮宫博物馆", + "v": "【小灯塔】10天玩转世界top10博物馆卢浮宫博物馆" + }, + { + "n": "玩转世界博物馆第二季", + "v": "玩转世界博物馆第二季" + }, + { + "n": "【合集】带孩子探秘恐龙世界 中文版", + "v": "【合集】带孩子探秘恐龙世界 中文版" + }, + { + "n": "【小灯塔】带孩子探秘恐龙世界宇宙的起源(英文版)", + "v": "【小灯塔】带孩子探秘恐龙世界宇宙的起源(英文版)" + }, + { + "n": "奇趣生物大百科", + "v": "奇趣生物大百科" + }, + { + "n": "玩转奇妙的动物世界", + "v": "玩转奇妙的动物世界" + }, + { + "n": "【小灯塔】给孩子的植物启蒙课", + "v": "【小灯塔】给孩子的植物启蒙课" + }, + { + "n": "昆虫记", + "v": "昆虫记" + }, + { + "n": "【小灯塔】昆虫记走进昆虫世界", + "v": "【小灯塔】昆虫记走进昆虫世界" + }, + { + "n": "探秘故宫角落", + "v": "探秘故宫角落" + }, + { + "n": "10天游遍世界top10名校", + "v": "10天游遍世界top10名校" + }, + { + "n": "看懂世界top10名画", + "v": "看懂世界top10名画" + }, + { + "n": "【全8集】舌尖上的地球", + "v": "【全8集】舌尖上的地球" + } + ] + }, + { + "key": "duration", + "name": "时长", + "value": [ + { + "n": "100~200分钟", + "v": "0" + }, + { + "n": "60~100分钟", + "v": "1" + }, + { + "n": "40~60分钟", + "v": "2" + }, + { + "n": "200分钟以上", + "v": "3" + }, + { + "n": "40分钟以下", + "v": "4" + } + ] + } + ], + "神奇的汉字故事 全20集": [ + { + "key": "tid", + "name": "分类", + "value": [ + { + "n": "神奇的汉字故事 全20集", + "v": "神奇的汉字故事 全20集" + }, + { + "n": "穿越唐诗大世界", + "v": "穿越唐诗大世界" + }, + { + "n": "【小灯塔】诗词大会", + "v": "【小灯塔】诗词大会" + }, + { + "n": "三字经幼儿启蒙(56集超清全)", + "v": "三字经幼儿启蒙(56集超清全)" + }, + { + "n": "30集西游记精选故事 给孩子看的经典神话", + "v": "30集西游记精选故事 给孩子看的经典神话" + }, + { + "n": "【100集全】成语故事动画 小灯塔成语动画", + "v": "【100集全】成语故事动画 小灯塔成语动画" + }, + { + "n": "【小灯塔】中华名人故事", + "v": "【小灯塔】中华名人故事" + }, + { + "n": "20集全【给孩子的山海经】小灯塔趣味动画", + "v": "20集全【给孩子的山海经】小灯塔趣味动画" + }, + { + "n": "三国动画故事(24节全)", + "v": "三国动画故事(24节全)" + }, + { + "n": "【小灯塔】春节习俗追根溯源立春节", + "v": "【小灯塔】春节习俗追根溯源立春节" + }, + { + "n": "【小灯塔】十二生肖", + "v": "【小灯塔】十二生肖" + }, + { + "n": "【小灯塔】中华上下五千年", + "v": "【小灯塔】中华上下五千年" + } + ] + }, + { + "key": "duration", + "name": "时长", + "value": [ + { + "n": "100~200分钟", + "v": "0" + }, + { + "n": "60~100分钟", + "v": "1" + }, + { + "n": "40~60分钟", + "v": "2" + }, + { + "n": "200分钟以上", + "v": "3" + }, + { + "n": "40分钟以下", + "v": "4" + } + ] + } + ], + "给孩子的第一堂海洋课【完结】": [ + { + "key": "tid", + "name": "分类", + "value": [ + { + "n": "给孩子的第一堂海洋课【完结】", + "v": "给孩子的第一堂海洋课【完结】" + }, + { + "n": "穿越奇妙海底世界", + "v": "穿越奇妙海底世界" + }, + { + "n": "【小灯塔】地球生命史", + "v": "【小灯塔】地球生命史" + }, + { + "n": "探秘地球南北极", + "v": "小灯塔探秘地球南北极" + }, + { + "n": "世界十大名胜", + "v": "小灯塔探秘世界十大名胜" + }, + { + "n": "环球之旅", + "v": "小灯塔奇妙的环球之旅" + }, + { + "n": "华夏地理", + "v": "小灯塔探秘华夏地理" + }, + { + "n": "自然地理", + "v": "小灯塔自然地理大巡游" + }, + { + "n": "出发啦! 敦煌", + "v": "小灯塔出发啦! 敦煌" + }, + { + "n": "冲出亚马逊", + "v": "小灯塔冲出亚马逊" + }, + { + "n": "走进美国", + "v": "小灯塔走进美国" + }, + { + "n": " 非洲大冒险", + "v": "小灯塔 非洲大冒险" + } + ] + }, + { + "key": "duration", + "name": "时长", + "value": [ + { + "n": "100~200分钟", + "v": "0" + }, + { + "n": "60~100分钟", + "v": "1" + }, + { + "n": "40~60分钟", + "v": "2" + }, + { + "n": "200分钟以上", + "v": "3" + }, + { + "n": "40分钟以下", + "v": "4" + } + ] + } + ], + "小灯塔.剑桥数学启蒙课(全)": [ + { + "key": "tid", + "name": "分类", + "value": [ + { + "n": "小灯塔.剑桥数学启蒙课(全)", + "v": "小灯塔.剑桥数学启蒙课(全)" + }, + { + "n": "奇趣科学实验室", + "v": "小灯塔奇趣科学实验室" + }, + { + "n": "剑桥数学启蒙课", + "v": "小灯塔剑桥数学启蒙课" + }, + { + "n": "宇宙探秘之旅", + "v": "小灯塔十大主题宇宙探秘之旅" + }, + { + "n": "跟动物老师学发明", + "v": "小灯塔跟动物老师学发明" + }, + { + "n": "天才发明家", + "v": "小灯塔天才发明家" + }, + { + "n": "剑桥博士讲物理", + "v": "小灯塔剑桥博士讲物理" + }, + { + "n": "STEM奇妙科学课", + "v": "小灯塔STEM奇妙科学课" + }, + { + "n": "出发吧,月球!", + "v": "小灯塔出发吧,月球!" + }, + { + "n": "十大世界未解之谜", + "v": "小灯塔探秘十大世界未解之谜" + }, + { + "n": "神奇的气象魔法", + "v": "小灯塔神奇的气象魔法" + }, + { + "n": "了不起的新科技", + "v": "小灯塔了不起的新科技" + } + ] + }, + { + "key": "duration", + "name": "时长", + "value": [ + { + "n": "100~200分钟", + "v": "0" + }, + { + "n": "60~100分钟", + "v": "1" + }, + { + "n": "40~60分钟", + "v": "2" + }, + { + "n": "200分钟以上", + "v": "3" + }, + { + "n": "40分钟以下", + "v": "4" + } + ] + } + ], + "给孩子的第一堂性教育课": [ + { + "key": "tid", + "name": "分类", + "value": [ + { + "n": "给孩子的第一堂性教育课", + "v": "给孩子的第一堂性教育课" + }, + { + "n": "小灯塔安全教育课", + "v": "小灯塔安全教育课" + }, + { + "n": "影响十万少年的人际沟通课", + "v": "影响十万少年的人际沟通课" + }, + { + "n": "跟着棋圣学围棋", + "v": "小灯塔跟着棋圣学围棋" + }, + { + "n": "小灯塔财商启蒙课", + "v": "小灯塔财商启蒙课" + }, + { + "n": "小灯塔人体奥秘", + "v": "小灯塔人体奥秘" + }, + { + "n": "讲给孩子的人类简史", + "v": "小灯塔讲给孩子的人类简史" + }, + { + "n": "讲给孩子的希腊神话故事", + "v": "小灯塔讲给孩子的希腊神话故事" + } + ] + }, + { + "key": "duration", + "name": "时长", + "value": [ + { + "n": "100~200分钟", + "v": "0" + }, + { + "n": "60~100分钟", + "v": "1" + }, + { + "n": "40~60分钟", + "v": "2" + }, + { + "n": "200分钟以上", + "v": "3" + }, + { + "n": "40分钟以下", + "v": "4" + } + ] + } + ] + } +} \ No newline at end of file diff --git a/潇洒/education/json/XDTDL.json b/潇洒/education/json/XDTDL.json new file mode 100644 index 00000000..404d7172 --- /dev/null +++ b/潇洒/education/json/XDTDL.json @@ -0,0 +1,636 @@ +{ + "class": [ + { + "type_name": "地理", + "type_id": "给孩子的第一堂海洋课【完结】" + }, + { + "type_name": "海底世界", + "type_id": "穿越奇妙海底世界" + }, + { + "type_name": "地球生命史", + "type_id": "小灯塔地球生命史" + }, + { + "type_name": "探秘地球南北极", + "type_id": "小灯塔探秘地球南北极" + }, + { + "type_name": "世界十大名胜", + "type_id": "小灯塔探秘世界十大名胜" + }, + { + "type_name": "环球之旅", + "type_id": "小灯塔奇妙的环球之旅" + }, + { + "type_name": "华夏地理", + "type_id": "小灯塔探秘华夏地理" + }, + { + "type_name": "自然地理", + "type_id": "小灯塔自然地理大巡游" + }, + { + "type_name": "出发啦! 敦煌", + "type_id": "小灯塔出发啦! 敦煌" + }, + { + "type_name": "冲出亚马逊", + "type_id": "小灯塔冲出亚马逊" + }, + { + "type_name": "走进美国", + "type_id": "小灯塔走进美国" + }, + { + "type_name": " 非洲大冒险", + "type_id": "小灯塔 非洲大冒险" + }, + { + "type_name": "国学", + "type_id": "神奇的汉字故事 全20集" + }, + { + "type_name": "唐诗大世界", + "type_id": "穿越唐诗大世界" + }, + { + "type_name": "诗词大会", + "type_id": "【小灯塔】诗词大会" + }, + { + "type_name": "三字经", + "type_id": "三字经幼儿启蒙(56集超清全)" + }, + { + "type_name": "西游记", + "type_id": "30集西游记精选故事 给孩子看的经典神话" + }, + { + "type_name": "经典神话", + "type_id": "30集西游记精选故事 给孩子看的经典神话" + }, + { + "type_name": "成语故事", + "type_id": "【100集全】成语故事动画 小灯塔成语动画" + }, + { + "type_name": "中华名人故事", + "type_id": "【小灯塔】中华名人故事" + }, + { + "type_name": "山海经", + "type_id": "20集全【给孩子的山海经】小灯塔趣味动画" + }, + { + "type_name": "三国动画", + "type_id": "三国动画故事(24节全)" + }, + { + "type_name": "春节习俗", + "type_id": "【小灯塔】春节习俗追根溯源立春节" + }, + { + "type_name": "少儿版三国演义", + "type_id": "小灯塔少儿版三国演义" + }, + { + "type_name": "十二生肖", + "type_id": "【小灯塔】十二生肖" + }, + { + "type_name": "中华上下五千年", + "type_id": "【小灯塔】中华上下五千年" + }, + { + "type_name": "科学", + "type_id": "小灯塔.剑桥数学启蒙课(全)" + }, + { + "type_name": "奇趣科学实验室", + "type_id": "小灯塔奇趣科学实验室" + }, + { + "type_name": "剑桥数学启蒙课", + "type_id": "小灯塔剑桥数学启蒙课" + }, + { + "type_name": "宇宙探秘之旅", + "type_id": "小灯塔十大主题宇宙探秘之旅" + }, + { + "type_name": "跟动物老师学发明", + "type_id": "小灯塔跟动物老师学发明" + }, + { + "type_name": "天才发明家", + "type_id": "小灯塔天才发明家" + }, + { + "type_name": "剑桥博士讲物理", + "type_id": "小灯塔剑桥博士讲物理" + }, + { + "type_name": "STEM奇妙科学课", + "type_id": "小灯塔STEM奇妙科学课" + }, + { + "type_name": "出发吧,月球!", + "type_id": "小灯塔出发吧,月球!" + }, + { + "type_name": "十大世界未解之谜", + "type_id": "小灯塔探秘十大世界未解之谜" + }, + { + "type_name": "神奇的气象魔法", + "type_id": "小灯塔神奇的气象魔法" + }, + { + "type_name": "了不起的新科技", + "type_id": "小灯塔了不起的新科技" + }, + { + "type_name": "安全教育课", + "type_id": "给孩子的第一堂性教育课" + }, + { + "type_name": "影响十万少年的人际沟通课", + "type_id": "影响十万少年的人际沟通课" + }, + { + "type_name": "跟着棋圣学围棋", + "type_id": "小灯塔跟着棋圣学围棋" + }, + { + "type_name": "财商启蒙课", + "type_id": "小灯塔财商启蒙课" + }, + { + "type_name": "人体奥秘", + "type_id": "小灯塔人体奥秘" + }, + { + "type_name": "儿童性教育课", + "type_id": "给孩子的第一堂性教育课" + }, + { + "type_name": "讲给孩子的人类简史", + "type_id": "小灯塔讲给孩子的人类简史" + }, + { + "type_name": "讲给孩子的希腊神话故事", + "type_id": "小灯塔讲给孩子的希腊神话故事" + }, + { + "type_name": "百科", + "type_id": "10天玩转世界top10博物馆" + }, + { + "type_name": "世界博物馆", + "type_id": "玩转世界博物馆第二季" + }, + { + "type_name": "探秘恐龙世界", + "type_id": "【合集】带孩子探秘恐龙世界 中文版" + }, + { + "type_name": "奇趣生物大百科", + "type_id": "奇趣生物大百科" + }, + { + "type_name": "动物世界", + "type_id": "玩转奇妙的动物世界" + }, + { + "type_name": "植物启蒙", + "type_id": "【小灯塔】给孩子的植物启蒙课" + }, + { + "type_name": "物种百科", + "type_id": "小灯塔给孩子的物种百科" + }, + { + "type_name": "昆虫记", + "type_id": "昆虫记" + }, + { + "type_name": "探秘故宫角落", + "type_id": "探秘故宫角落" + }, + { + "type_name": "top10名校", + "type_id": "10天游遍世界top10名校" + }, + { + "type_name": "top10名画", + "type_id": "看懂世界top10名画" + }, + { + "type_name": "地球", + "type_id": "【全8集】舌尖上的地球" + } + ], + "filters": { + "10天玩转世界top10博物馆": [ + { + "key": "tid", + "name": "分类", + "value": [ + { + "n": "【小灯塔】10天玩转世界top10博物馆卢浮宫博物馆", + "v": "【小灯塔】10天玩转世界top10博物馆卢浮宫博物馆" + }, + { + "n": "玩转世界博物馆第二季", + "v": "玩转世界博物馆第二季" + }, + { + "n": "【合集】带孩子探秘恐龙世界 中文版", + "v": "【合集】带孩子探秘恐龙世界 中文版" + }, + { + "n": "【小灯塔】带孩子探秘恐龙世界宇宙的起源(英文版)", + "v": "【小灯塔】带孩子探秘恐龙世界宇宙的起源(英文版)" + }, + { + "n": "奇趣生物大百科", + "v": "奇趣生物大百科" + }, + { + "n": "玩转奇妙的动物世界", + "v": "玩转奇妙的动物世界" + }, + { + "n": "【小灯塔】给孩子的植物启蒙课", + "v": "【小灯塔】给孩子的植物启蒙课" + }, + { + "n": "昆虫记", + "v": "昆虫记" + }, + { + "n": "【小灯塔】昆虫记走进昆虫世界", + "v": "【小灯塔】昆虫记走进昆虫世界" + }, + { + "n": "探秘故宫角落", + "v": "探秘故宫角落" + }, + { + "n": "10天游遍世界top10名校", + "v": "10天游遍世界top10名校" + }, + { + "n": "看懂世界top10名画", + "v": "看懂世界top10名画" + }, + { + "n": "【全8集】舌尖上的地球", + "v": "【全8集】舌尖上的地球" + } + ] + }, + { + "key": "duration", + "name": "时长", + "value": [ + { + "n": "100~200分钟", + "v": "0" + }, + { + "n": "60~100分钟", + "v": "1" + }, + { + "n": "40~60分钟", + "v": "2" + }, + { + "n": "200分钟以上", + "v": "3" + }, + { + "n": "40分钟以下", + "v": "4" + } + ] + } + ], + "神奇的汉字故事 全20集": [ + { + "key": "tid", + "name": "分类", + "value": [ + { + "n": "神奇的汉字故事 全20集", + "v": "神奇的汉字故事 全20集" + }, + { + "n": "穿越唐诗大世界", + "v": "穿越唐诗大世界" + }, + { + "n": "【小灯塔】诗词大会", + "v": "【小灯塔】诗词大会" + }, + { + "n": "三字经幼儿启蒙(56集超清全)", + "v": "三字经幼儿启蒙(56集超清全)" + }, + { + "n": "30集西游记精选故事 给孩子看的经典神话", + "v": "30集西游记精选故事 给孩子看的经典神话" + }, + { + "n": "【100集全】成语故事动画 小灯塔成语动画", + "v": "【100集全】成语故事动画 小灯塔成语动画" + }, + { + "n": "【小灯塔】中华名人故事", + "v": "【小灯塔】中华名人故事" + }, + { + "n": "20集全【给孩子的山海经】小灯塔趣味动画", + "v": "20集全【给孩子的山海经】小灯塔趣味动画" + }, + { + "n": "三国动画故事(24节全)", + "v": "三国动画故事(24节全)" + }, + { + "n": "【小灯塔】春节习俗追根溯源立春节", + "v": "【小灯塔】春节习俗追根溯源立春节" + }, + { + "n": "【小灯塔】十二生肖", + "v": "【小灯塔】十二生肖" + }, + { + "n": "【小灯塔】中华上下五千年", + "v": "【小灯塔】中华上下五千年" + } + ] + }, + { + "key": "duration", + "name": "时长", + "value": [ + { + "n": "100~200分钟", + "v": "0" + }, + { + "n": "60~100分钟", + "v": "1" + }, + { + "n": "40~60分钟", + "v": "2" + }, + { + "n": "200分钟以上", + "v": "3" + }, + { + "n": "40分钟以下", + "v": "4" + } + ] + } + ], + "给孩子的第一堂海洋课【完结】": [ + { + "key": "tid", + "name": "分类", + "value": [ + { + "n": "给孩子的第一堂海洋课【完结】", + "v": "给孩子的第一堂海洋课【完结】" + }, + { + "n": "穿越奇妙海底世界", + "v": "穿越奇妙海底世界" + }, + { + "n": "【小灯塔】地球生命史", + "v": "【小灯塔】地球生命史" + }, + { + "n": "探秘地球南北极", + "v": "小灯塔探秘地球南北极" + }, + { + "n": "世界十大名胜", + "v": "小灯塔探秘世界十大名胜" + }, + { + "n": "环球之旅", + "v": "小灯塔奇妙的环球之旅" + }, + { + "n": "华夏地理", + "v": "小灯塔探秘华夏地理" + }, + { + "n": "自然地理", + "v": "小灯塔自然地理大巡游" + }, + { + "n": "出发啦! 敦煌", + "v": "小灯塔出发啦! 敦煌" + }, + { + "n": "冲出亚马逊", + "v": "小灯塔冲出亚马逊" + }, + { + "n": "走进美国", + "v": "小灯塔走进美国" + }, + { + "n": " 非洲大冒险", + "v": "小灯塔 非洲大冒险" + } + ] + }, + { + "key": "duration", + "name": "时长", + "value": [ + { + "n": "100~200分钟", + "v": "0" + }, + { + "n": "60~100分钟", + "v": "1" + }, + { + "n": "40~60分钟", + "v": "2" + }, + { + "n": "200分钟以上", + "v": "3" + }, + { + "n": "40分钟以下", + "v": "4" + } + ] + } + ], + "小灯塔.剑桥数学启蒙课(全)": [ + { + "key": "tid", + "name": "分类", + "value": [ + { + "n": "小灯塔.剑桥数学启蒙课(全)", + "v": "小灯塔.剑桥数学启蒙课(全)" + }, + { + "n": "奇趣科学实验室", + "v": "小灯塔奇趣科学实验室" + }, + { + "n": "剑桥数学启蒙课", + "v": "小灯塔剑桥数学启蒙课" + }, + { + "n": "宇宙探秘之旅", + "v": "小灯塔十大主题宇宙探秘之旅" + }, + { + "n": "跟动物老师学发明", + "v": "小灯塔跟动物老师学发明" + }, + { + "n": "天才发明家", + "v": "小灯塔天才发明家" + }, + { + "n": "剑桥博士讲物理", + "v": "小灯塔剑桥博士讲物理" + }, + { + "n": "STEM奇妙科学课", + "v": "小灯塔STEM奇妙科学课" + }, + { + "n": "出发吧,月球!", + "v": "小灯塔出发吧,月球!" + }, + { + "n": "十大世界未解之谜", + "v": "小灯塔探秘十大世界未解之谜" + }, + { + "n": "神奇的气象魔法", + "v": "小灯塔神奇的气象魔法" + }, + { + "n": "了不起的新科技", + "v": "小灯塔了不起的新科技" + } + ] + }, + { + "key": "duration", + "name": "时长", + "value": [ + { + "n": "100~200分钟", + "v": "0" + }, + { + "n": "60~100分钟", + "v": "1" + }, + { + "n": "40~60分钟", + "v": "2" + }, + { + "n": "200分钟以上", + "v": "3" + }, + { + "n": "40分钟以下", + "v": "4" + } + ] + } + ], + "给孩子的第一堂性教育课": [ + { + "key": "tid", + "name": "分类", + "value": [ + { + "n": "给孩子的第一堂性教育课", + "v": "给孩子的第一堂性教育课" + }, + { + "n": "小灯塔安全教育课", + "v": "小灯塔安全教育课" + }, + { + "n": "影响十万少年的人际沟通课", + "v": "影响十万少年的人际沟通课" + }, + { + "n": "跟着棋圣学围棋", + "v": "小灯塔跟着棋圣学围棋" + }, + { + "n": "小灯塔财商启蒙课", + "v": "小灯塔财商启蒙课" + }, + { + "n": "小灯塔人体奥秘", + "v": "小灯塔人体奥秘" + }, + { + "n": "讲给孩子的人类简史", + "v": "小灯塔讲给孩子的人类简史" + }, + { + "n": "讲给孩子的希腊神话故事", + "v": "小灯塔讲给孩子的希腊神话故事" + } + ] + }, + { + "key": "duration", + "name": "时长", + "value": [ + { + "n": "100~200分钟", + "v": "0" + }, + { + "n": "60~100分钟", + "v": "1" + }, + { + "n": "40~60分钟", + "v": "2" + }, + { + "n": "200分钟以上", + "v": "3" + }, + { + "n": "40分钟以下", + "v": "4" + } + ] + } + ] + } +} \ No newline at end of file diff --git a/潇洒/education/json/XDTGX.json b/潇洒/education/json/XDTGX.json new file mode 100644 index 00000000..e57fa7b5 --- /dev/null +++ b/潇洒/education/json/XDTGX.json @@ -0,0 +1,636 @@ +{ + "class": [ + { + "type_name": "国学", + "type_id": "神奇的汉字故事 全20集" + }, + { + "type_name": "唐诗大世界", + "type_id": "穿越唐诗大世界" + }, + { + "type_name": "诗词大会", + "type_id": "【小灯塔】诗词大会" + }, + { + "type_name": "三字经", + "type_id": "三字经幼儿启蒙(56集超清全)" + }, + { + "type_name": "西游记", + "type_id": "30集西游记精选故事 给孩子看的经典神话" + }, + { + "type_name": "经典神话", + "type_id": "30集西游记精选故事 给孩子看的经典神话" + }, + { + "type_name": "成语故事", + "type_id": "【100集全】成语故事动画 小灯塔成语动画" + }, + { + "type_name": "中华名人故事", + "type_id": "【小灯塔】中华名人故事" + }, + { + "type_name": "山海经", + "type_id": "20集全【给孩子的山海经】小灯塔趣味动画" + }, + { + "type_name": "三国动画", + "type_id": "三国动画故事(24节全)" + }, + { + "type_name": "春节习俗", + "type_id": "【小灯塔】春节习俗追根溯源立春节" + }, + { + "type_name": "少儿版三国演义", + "type_id": "小灯塔少儿版三国演义" + }, + { + "type_name": "十二生肖", + "type_id": "【小灯塔】十二生肖" + }, + { + "type_name": "中华上下五千年", + "type_id": "【小灯塔】中华上下五千年" + }, + { + "type_name": "科学", + "type_id": "小灯塔.剑桥数学启蒙课(全)" + }, + { + "type_name": "奇趣科学实验室", + "type_id": "小灯塔奇趣科学实验室" + }, + { + "type_name": "剑桥数学启蒙课", + "type_id": "小灯塔剑桥数学启蒙课" + }, + { + "type_name": "宇宙探秘之旅", + "type_id": "小灯塔十大主题宇宙探秘之旅" + }, + { + "type_name": "跟动物老师学发明", + "type_id": "小灯塔跟动物老师学发明" + }, + { + "type_name": "天才发明家", + "type_id": "小灯塔天才发明家" + }, + { + "type_name": "剑桥博士讲物理", + "type_id": "小灯塔剑桥博士讲物理" + }, + { + "type_name": "STEM奇妙科学课", + "type_id": "小灯塔STEM奇妙科学课" + }, + { + "type_name": "出发吧,月球!", + "type_id": "小灯塔出发吧,月球!" + }, + { + "type_name": "十大世界未解之谜", + "type_id": "小灯塔探秘十大世界未解之谜" + }, + { + "type_name": "神奇的气象魔法", + "type_id": "小灯塔神奇的气象魔法" + }, + { + "type_name": "了不起的新科技", + "type_id": "小灯塔了不起的新科技" + }, + { + "type_name": "安全教育课", + "type_id": "给孩子的第一堂性教育课" + }, + { + "type_name": "影响十万少年的人际沟通课", + "type_id": "影响十万少年的人际沟通课" + }, + { + "type_name": "跟着棋圣学围棋", + "type_id": "小灯塔跟着棋圣学围棋" + }, + { + "type_name": "财商启蒙课", + "type_id": "小灯塔财商启蒙课" + }, + { + "type_name": "人体奥秘", + "type_id": "小灯塔人体奥秘" + }, + { + "type_name": "儿童性教育课", + "type_id": "给孩子的第一堂性教育课" + }, + { + "type_name": "讲给孩子的人类简史", + "type_id": "小灯塔讲给孩子的人类简史" + }, + { + "type_name": "讲给孩子的希腊神话故事", + "type_id": "小灯塔讲给孩子的希腊神话故事" + }, + { + "type_name": "百科", + "type_id": "10天玩转世界top10博物馆" + }, + { + "type_name": "世界博物馆", + "type_id": "玩转世界博物馆第二季" + }, + { + "type_name": "探秘恐龙世界", + "type_id": "【合集】带孩子探秘恐龙世界 中文版" + }, + { + "type_name": "奇趣生物大百科", + "type_id": "奇趣生物大百科" + }, + { + "type_name": "动物世界", + "type_id": "玩转奇妙的动物世界" + }, + { + "type_name": "植物启蒙", + "type_id": "【小灯塔】给孩子的植物启蒙课" + }, + { + "type_name": "物种百科", + "type_id": "小灯塔给孩子的物种百科" + }, + { + "type_name": "昆虫记", + "type_id": "昆虫记" + }, + { + "type_name": "探秘故宫角落", + "type_id": "探秘故宫角落" + }, + { + "type_name": "top10名校", + "type_id": "10天游遍世界top10名校" + }, + { + "type_name": "top10名画", + "type_id": "看懂世界top10名画" + }, + { + "type_name": "地球", + "type_id": "【全8集】舌尖上的地球" + }, + { + "type_name": "地理", + "type_id": "给孩子的第一堂海洋课【完结】" + }, + { + "type_name": "海底世界", + "type_id": "穿越奇妙海底世界" + }, + { + "type_name": "地球生命史", + "type_id": "小灯塔地球生命史" + }, + { + "type_name": "探秘地球南北极", + "type_id": "小灯塔探秘地球南北极" + }, + { + "type_name": "世界十大名胜", + "type_id": "小灯塔探秘世界十大名胜" + }, + { + "type_name": "环球之旅", + "type_id": "小灯塔奇妙的环球之旅" + }, + { + "type_name": "华夏地理", + "type_id": "小灯塔探秘华夏地理" + }, + { + "type_name": "自然地理", + "type_id": "小灯塔自然地理大巡游" + }, + { + "type_name": "出发啦! 敦煌", + "type_id": "小灯塔出发啦! 敦煌" + }, + { + "type_name": "冲出亚马逊", + "type_id": "小灯塔冲出亚马逊" + }, + { + "type_name": "走进美国", + "type_id": "小灯塔走进美国" + }, + { + "type_name": " 非洲大冒险", + "type_id": "小灯塔 非洲大冒险" + } + ], + "filters": { + "10天玩转世界top10博物馆": [ + { + "key": "tid", + "name": "分类", + "value": [ + { + "n": "【小灯塔】10天玩转世界top10博物馆卢浮宫博物馆", + "v": "【小灯塔】10天玩转世界top10博物馆卢浮宫博物馆" + }, + { + "n": "玩转世界博物馆第二季", + "v": "玩转世界博物馆第二季" + }, + { + "n": "【合集】带孩子探秘恐龙世界 中文版", + "v": "【合集】带孩子探秘恐龙世界 中文版" + }, + { + "n": "【小灯塔】带孩子探秘恐龙世界宇宙的起源(英文版)", + "v": "【小灯塔】带孩子探秘恐龙世界宇宙的起源(英文版)" + }, + { + "n": "奇趣生物大百科", + "v": "奇趣生物大百科" + }, + { + "n": "玩转奇妙的动物世界", + "v": "玩转奇妙的动物世界" + }, + { + "n": "【小灯塔】给孩子的植物启蒙课", + "v": "【小灯塔】给孩子的植物启蒙课" + }, + { + "n": "昆虫记", + "v": "昆虫记" + }, + { + "n": "【小灯塔】昆虫记走进昆虫世界", + "v": "【小灯塔】昆虫记走进昆虫世界" + }, + { + "n": "探秘故宫角落", + "v": "探秘故宫角落" + }, + { + "n": "10天游遍世界top10名校", + "v": "10天游遍世界top10名校" + }, + { + "n": "看懂世界top10名画", + "v": "看懂世界top10名画" + }, + { + "n": "【全8集】舌尖上的地球", + "v": "【全8集】舌尖上的地球" + } + ] + }, + { + "key": "duration", + "name": "时长", + "value": [ + { + "n": "100~200分钟", + "v": "0" + }, + { + "n": "60~100分钟", + "v": "1" + }, + { + "n": "40~60分钟", + "v": "2" + }, + { + "n": "200分钟以上", + "v": "3" + }, + { + "n": "40分钟以下", + "v": "4" + } + ] + } + ], + "神奇的汉字故事 全20集": [ + { + "key": "tid", + "name": "分类", + "value": [ + { + "n": "神奇的汉字故事 全20集", + "v": "神奇的汉字故事 全20集" + }, + { + "n": "穿越唐诗大世界", + "v": "穿越唐诗大世界" + }, + { + "n": "【小灯塔】诗词大会", + "v": "【小灯塔】诗词大会" + }, + { + "n": "三字经幼儿启蒙(56集超清全)", + "v": "三字经幼儿启蒙(56集超清全)" + }, + { + "n": "30集西游记精选故事 给孩子看的经典神话", + "v": "30集西游记精选故事 给孩子看的经典神话" + }, + { + "n": "【100集全】成语故事动画 小灯塔成语动画", + "v": "【100集全】成语故事动画 小灯塔成语动画" + }, + { + "n": "【小灯塔】中华名人故事", + "v": "【小灯塔】中华名人故事" + }, + { + "n": "20集全【给孩子的山海经】小灯塔趣味动画", + "v": "20集全【给孩子的山海经】小灯塔趣味动画" + }, + { + "n": "三国动画故事(24节全)", + "v": "三国动画故事(24节全)" + }, + { + "n": "【小灯塔】春节习俗追根溯源立春节", + "v": "【小灯塔】春节习俗追根溯源立春节" + }, + { + "n": "【小灯塔】十二生肖", + "v": "【小灯塔】十二生肖" + }, + { + "n": "【小灯塔】中华上下五千年", + "v": "【小灯塔】中华上下五千年" + } + ] + }, + { + "key": "duration", + "name": "时长", + "value": [ + { + "n": "100~200分钟", + "v": "0" + }, + { + "n": "60~100分钟", + "v": "1" + }, + { + "n": "40~60分钟", + "v": "2" + }, + { + "n": "200分钟以上", + "v": "3" + }, + { + "n": "40分钟以下", + "v": "4" + } + ] + } + ], + "给孩子的第一堂海洋课【完结】": [ + { + "key": "tid", + "name": "分类", + "value": [ + { + "n": "给孩子的第一堂海洋课【完结】", + "v": "给孩子的第一堂海洋课【完结】" + }, + { + "n": "穿越奇妙海底世界", + "v": "穿越奇妙海底世界" + }, + { + "n": "【小灯塔】地球生命史", + "v": "【小灯塔】地球生命史" + }, + { + "n": "探秘地球南北极", + "v": "小灯塔探秘地球南北极" + }, + { + "n": "世界十大名胜", + "v": "小灯塔探秘世界十大名胜" + }, + { + "n": "环球之旅", + "v": "小灯塔奇妙的环球之旅" + }, + { + "n": "华夏地理", + "v": "小灯塔探秘华夏地理" + }, + { + "n": "自然地理", + "v": "小灯塔自然地理大巡游" + }, + { + "n": "出发啦! 敦煌", + "v": "小灯塔出发啦! 敦煌" + }, + { + "n": "冲出亚马逊", + "v": "小灯塔冲出亚马逊" + }, + { + "n": "走进美国", + "v": "小灯塔走进美国" + }, + { + "n": " 非洲大冒险", + "v": "小灯塔 非洲大冒险" + } + ] + }, + { + "key": "duration", + "name": "时长", + "value": [ + { + "n": "100~200分钟", + "v": "0" + }, + { + "n": "60~100分钟", + "v": "1" + }, + { + "n": "40~60分钟", + "v": "2" + }, + { + "n": "200分钟以上", + "v": "3" + }, + { + "n": "40分钟以下", + "v": "4" + } + ] + } + ], + "小灯塔.剑桥数学启蒙课(全)": [ + { + "key": "tid", + "name": "分类", + "value": [ + { + "n": "小灯塔.剑桥数学启蒙课(全)", + "v": "小灯塔.剑桥数学启蒙课(全)" + }, + { + "n": "奇趣科学实验室", + "v": "小灯塔奇趣科学实验室" + }, + { + "n": "剑桥数学启蒙课", + "v": "小灯塔剑桥数学启蒙课" + }, + { + "n": "宇宙探秘之旅", + "v": "小灯塔十大主题宇宙探秘之旅" + }, + { + "n": "跟动物老师学发明", + "v": "小灯塔跟动物老师学发明" + }, + { + "n": "天才发明家", + "v": "小灯塔天才发明家" + }, + { + "n": "剑桥博士讲物理", + "v": "小灯塔剑桥博士讲物理" + }, + { + "n": "STEM奇妙科学课", + "v": "小灯塔STEM奇妙科学课" + }, + { + "n": "出发吧,月球!", + "v": "小灯塔出发吧,月球!" + }, + { + "n": "十大世界未解之谜", + "v": "小灯塔探秘十大世界未解之谜" + }, + { + "n": "神奇的气象魔法", + "v": "小灯塔神奇的气象魔法" + }, + { + "n": "了不起的新科技", + "v": "小灯塔了不起的新科技" + } + ] + }, + { + "key": "duration", + "name": "时长", + "value": [ + { + "n": "100~200分钟", + "v": "0" + }, + { + "n": "60~100分钟", + "v": "1" + }, + { + "n": "40~60分钟", + "v": "2" + }, + { + "n": "200分钟以上", + "v": "3" + }, + { + "n": "40分钟以下", + "v": "4" + } + ] + } + ], + "给孩子的第一堂性教育课": [ + { + "key": "tid", + "name": "分类", + "value": [ + { + "n": "给孩子的第一堂性教育课", + "v": "给孩子的第一堂性教育课" + }, + { + "n": "小灯塔安全教育课", + "v": "小灯塔安全教育课" + }, + { + "n": "影响十万少年的人际沟通课", + "v": "影响十万少年的人际沟通课" + }, + { + "n": "跟着棋圣学围棋", + "v": "小灯塔跟着棋圣学围棋" + }, + { + "n": "小灯塔财商启蒙课", + "v": "小灯塔财商启蒙课" + }, + { + "n": "小灯塔人体奥秘", + "v": "小灯塔人体奥秘" + }, + { + "n": "讲给孩子的人类简史", + "v": "小灯塔讲给孩子的人类简史" + }, + { + "n": "讲给孩子的希腊神话故事", + "v": "小灯塔讲给孩子的希腊神话故事" + } + ] + }, + { + "key": "duration", + "name": "时长", + "value": [ + { + "n": "100~200分钟", + "v": "0" + }, + { + "n": "60~100分钟", + "v": "1" + }, + { + "n": "40~60分钟", + "v": "2" + }, + { + "n": "200分钟以上", + "v": "3" + }, + { + "n": "40分钟以下", + "v": "4" + } + ] + } + ] + } +} \ No newline at end of file diff --git a/潇洒/education/json/XDTKX.json b/潇洒/education/json/XDTKX.json new file mode 100644 index 00000000..3274c240 --- /dev/null +++ b/潇洒/education/json/XDTKX.json @@ -0,0 +1,636 @@ +{ + "class": [ + { + "type_name": "科学", + "type_id": "小灯塔.剑桥数学启蒙课(全)" + }, + { + "type_name": "奇趣科学实验室", + "type_id": "小灯塔奇趣科学实验室" + }, + { + "type_name": "剑桥数学启蒙课", + "type_id": "小灯塔剑桥数学启蒙课" + }, + { + "type_name": "宇宙探秘之旅", + "type_id": "小灯塔十大主题宇宙探秘之旅" + }, + { + "type_name": "跟动物老师学发明", + "type_id": "小灯塔跟动物老师学发明" + }, + { + "type_name": "天才发明家", + "type_id": "小灯塔天才发明家" + }, + { + "type_name": "剑桥博士讲物理", + "type_id": "小灯塔剑桥博士讲物理" + }, + { + "type_name": "STEM奇妙科学课", + "type_id": "小灯塔STEM奇妙科学课" + }, + { + "type_name": "出发吧,月球!", + "type_id": "小灯塔出发吧,月球!" + }, + { + "type_name": "十大世界未解之谜", + "type_id": "小灯塔探秘十大世界未解之谜" + }, + { + "type_name": "神奇的气象魔法", + "type_id": "小灯塔神奇的气象魔法" + }, + { + "type_name": "了不起的新科技", + "type_id": "小灯塔了不起的新科技" + }, + { + "type_name": "安全教育课", + "type_id": "给孩子的第一堂性教育课" + }, + { + "type_name": "影响十万少年的人际沟通课", + "type_id": "影响十万少年的人际沟通课" + }, + { + "type_name": "跟着棋圣学围棋", + "type_id": "小灯塔跟着棋圣学围棋" + }, + { + "type_name": "财商启蒙课", + "type_id": "小灯塔财商启蒙课" + }, + { + "type_name": "人体奥秘", + "type_id": "小灯塔人体奥秘" + }, + { + "type_name": "儿童性教育课", + "type_id": "给孩子的第一堂性教育课" + }, + { + "type_name": "讲给孩子的人类简史", + "type_id": "小灯塔讲给孩子的人类简史" + }, + { + "type_name": "讲给孩子的希腊神话故事", + "type_id": "小灯塔讲给孩子的希腊神话故事" + }, + { + "type_name": "百科", + "type_id": "10天玩转世界top10博物馆" + }, + { + "type_name": "世界博物馆", + "type_id": "玩转世界博物馆第二季" + }, + { + "type_name": "探秘恐龙世界", + "type_id": "【合集】带孩子探秘恐龙世界 中文版" + }, + { + "type_name": "奇趣生物大百科", + "type_id": "奇趣生物大百科" + }, + { + "type_name": "动物世界", + "type_id": "玩转奇妙的动物世界" + }, + { + "type_name": "植物启蒙", + "type_id": "【小灯塔】给孩子的植物启蒙课" + }, + { + "type_name": "物种百科", + "type_id": "小灯塔给孩子的物种百科" + }, + { + "type_name": "昆虫记", + "type_id": "昆虫记" + }, + { + "type_name": "探秘故宫角落", + "type_id": "探秘故宫角落" + }, + { + "type_name": "top10名校", + "type_id": "10天游遍世界top10名校" + }, + { + "type_name": "top10名画", + "type_id": "看懂世界top10名画" + }, + { + "type_name": "地球", + "type_id": "【全8集】舌尖上的地球" + }, + { + "type_name": "地理", + "type_id": "给孩子的第一堂海洋课【完结】" + }, + { + "type_name": "海底世界", + "type_id": "穿越奇妙海底世界" + }, + { + "type_name": "地球生命史", + "type_id": "小灯塔地球生命史" + }, + { + "type_name": "探秘地球南北极", + "type_id": "小灯塔探秘地球南北极" + }, + { + "type_name": "世界十大名胜", + "type_id": "小灯塔探秘世界十大名胜" + }, + { + "type_name": "环球之旅", + "type_id": "小灯塔奇妙的环球之旅" + }, + { + "type_name": "华夏地理", + "type_id": "小灯塔探秘华夏地理" + }, + { + "type_name": "自然地理", + "type_id": "小灯塔自然地理大巡游" + }, + { + "type_name": "出发啦! 敦煌", + "type_id": "小灯塔出发啦! 敦煌" + }, + { + "type_name": "冲出亚马逊", + "type_id": "小灯塔冲出亚马逊" + }, + { + "type_name": "走进美国", + "type_id": "小灯塔走进美国" + }, + { + "type_name": " 非洲大冒险", + "type_id": "小灯塔 非洲大冒险" + }, + { + "type_name": "国学", + "type_id": "神奇的汉字故事 全20集" + }, + { + "type_name": "唐诗大世界", + "type_id": "穿越唐诗大世界" + }, + { + "type_name": "诗词大会", + "type_id": "【小灯塔】诗词大会" + }, + { + "type_name": "三字经", + "type_id": "三字经幼儿启蒙(56集超清全)" + }, + { + "type_name": "西游记", + "type_id": "30集西游记精选故事 给孩子看的经典神话" + }, + { + "type_name": "经典神话", + "type_id": "30集西游记精选故事 给孩子看的经典神话" + }, + { + "type_name": "成语故事", + "type_id": "【100集全】成语故事动画 小灯塔成语动画" + }, + { + "type_name": "中华名人故事", + "type_id": "【小灯塔】中华名人故事" + }, + { + "type_name": "山海经", + "type_id": "20集全【给孩子的山海经】小灯塔趣味动画" + }, + { + "type_name": "三国动画", + "type_id": "三国动画故事(24节全)" + }, + { + "type_name": "春节习俗", + "type_id": "【小灯塔】春节习俗追根溯源立春节" + }, + { + "type_name": "少儿版三国演义", + "type_id": "小灯塔少儿版三国演义" + }, + { + "type_name": "十二生肖", + "type_id": "【小灯塔】十二生肖" + }, + { + "type_name": "中华上下五千年", + "type_id": "【小灯塔】中华上下五千年" + } + ], + "filters": { + "10天玩转世界top10博物馆": [ + { + "key": "tid", + "name": "分类", + "value": [ + { + "n": "【小灯塔】10天玩转世界top10博物馆卢浮宫博物馆", + "v": "【小灯塔】10天玩转世界top10博物馆卢浮宫博物馆" + }, + { + "n": "玩转世界博物馆第二季", + "v": "玩转世界博物馆第二季" + }, + { + "n": "【合集】带孩子探秘恐龙世界 中文版", + "v": "【合集】带孩子探秘恐龙世界 中文版" + }, + { + "n": "【小灯塔】带孩子探秘恐龙世界宇宙的起源(英文版)", + "v": "【小灯塔】带孩子探秘恐龙世界宇宙的起源(英文版)" + }, + { + "n": "奇趣生物大百科", + "v": "奇趣生物大百科" + }, + { + "n": "玩转奇妙的动物世界", + "v": "玩转奇妙的动物世界" + }, + { + "n": "【小灯塔】给孩子的植物启蒙课", + "v": "【小灯塔】给孩子的植物启蒙课" + }, + { + "n": "昆虫记", + "v": "昆虫记" + }, + { + "n": "【小灯塔】昆虫记走进昆虫世界", + "v": "【小灯塔】昆虫记走进昆虫世界" + }, + { + "n": "探秘故宫角落", + "v": "探秘故宫角落" + }, + { + "n": "10天游遍世界top10名校", + "v": "10天游遍世界top10名校" + }, + { + "n": "看懂世界top10名画", + "v": "看懂世界top10名画" + }, + { + "n": "【全8集】舌尖上的地球", + "v": "【全8集】舌尖上的地球" + } + ] + }, + { + "key": "duration", + "name": "时长", + "value": [ + { + "n": "100~200分钟", + "v": "0" + }, + { + "n": "60~100分钟", + "v": "1" + }, + { + "n": "40~60分钟", + "v": "2" + }, + { + "n": "200分钟以上", + "v": "3" + }, + { + "n": "40分钟以下", + "v": "4" + } + ] + } + ], + "神奇的汉字故事 全20集": [ + { + "key": "tid", + "name": "分类", + "value": [ + { + "n": "神奇的汉字故事 全20集", + "v": "神奇的汉字故事 全20集" + }, + { + "n": "穿越唐诗大世界", + "v": "穿越唐诗大世界" + }, + { + "n": "【小灯塔】诗词大会", + "v": "【小灯塔】诗词大会" + }, + { + "n": "三字经幼儿启蒙(56集超清全)", + "v": "三字经幼儿启蒙(56集超清全)" + }, + { + "n": "30集西游记精选故事 给孩子看的经典神话", + "v": "30集西游记精选故事 给孩子看的经典神话" + }, + { + "n": "【100集全】成语故事动画 小灯塔成语动画", + "v": "【100集全】成语故事动画 小灯塔成语动画" + }, + { + "n": "【小灯塔】中华名人故事", + "v": "【小灯塔】中华名人故事" + }, + { + "n": "20集全【给孩子的山海经】小灯塔趣味动画", + "v": "20集全【给孩子的山海经】小灯塔趣味动画" + }, + { + "n": "三国动画故事(24节全)", + "v": "三国动画故事(24节全)" + }, + { + "n": "【小灯塔】春节习俗追根溯源立春节", + "v": "【小灯塔】春节习俗追根溯源立春节" + }, + { + "n": "【小灯塔】十二生肖", + "v": "【小灯塔】十二生肖" + }, + { + "n": "【小灯塔】中华上下五千年", + "v": "【小灯塔】中华上下五千年" + } + ] + }, + { + "key": "duration", + "name": "时长", + "value": [ + { + "n": "100~200分钟", + "v": "0" + }, + { + "n": "60~100分钟", + "v": "1" + }, + { + "n": "40~60分钟", + "v": "2" + }, + { + "n": "200分钟以上", + "v": "3" + }, + { + "n": "40分钟以下", + "v": "4" + } + ] + } + ], + "给孩子的第一堂海洋课【完结】": [ + { + "key": "tid", + "name": "分类", + "value": [ + { + "n": "给孩子的第一堂海洋课【完结】", + "v": "给孩子的第一堂海洋课【完结】" + }, + { + "n": "穿越奇妙海底世界", + "v": "穿越奇妙海底世界" + }, + { + "n": "【小灯塔】地球生命史", + "v": "【小灯塔】地球生命史" + }, + { + "n": "探秘地球南北极", + "v": "小灯塔探秘地球南北极" + }, + { + "n": "世界十大名胜", + "v": "小灯塔探秘世界十大名胜" + }, + { + "n": "环球之旅", + "v": "小灯塔奇妙的环球之旅" + }, + { + "n": "华夏地理", + "v": "小灯塔探秘华夏地理" + }, + { + "n": "自然地理", + "v": "小灯塔自然地理大巡游" + }, + { + "n": "出发啦! 敦煌", + "v": "小灯塔出发啦! 敦煌" + }, + { + "n": "冲出亚马逊", + "v": "小灯塔冲出亚马逊" + }, + { + "n": "走进美国", + "v": "小灯塔走进美国" + }, + { + "n": " 非洲大冒险", + "v": "小灯塔 非洲大冒险" + } + ] + }, + { + "key": "duration", + "name": "时长", + "value": [ + { + "n": "100~200分钟", + "v": "0" + }, + { + "n": "60~100分钟", + "v": "1" + }, + { + "n": "40~60分钟", + "v": "2" + }, + { + "n": "200分钟以上", + "v": "3" + }, + { + "n": "40分钟以下", + "v": "4" + } + ] + } + ], + "小灯塔.剑桥数学启蒙课(全)": [ + { + "key": "tid", + "name": "分类", + "value": [ + { + "n": "小灯塔.剑桥数学启蒙课(全)", + "v": "小灯塔.剑桥数学启蒙课(全)" + }, + { + "n": "奇趣科学实验室", + "v": "小灯塔奇趣科学实验室" + }, + { + "n": "剑桥数学启蒙课", + "v": "小灯塔剑桥数学启蒙课" + }, + { + "n": "宇宙探秘之旅", + "v": "小灯塔十大主题宇宙探秘之旅" + }, + { + "n": "跟动物老师学发明", + "v": "小灯塔跟动物老师学发明" + }, + { + "n": "天才发明家", + "v": "小灯塔天才发明家" + }, + { + "n": "剑桥博士讲物理", + "v": "小灯塔剑桥博士讲物理" + }, + { + "n": "STEM奇妙科学课", + "v": "小灯塔STEM奇妙科学课" + }, + { + "n": "出发吧,月球!", + "v": "小灯塔出发吧,月球!" + }, + { + "n": "十大世界未解之谜", + "v": "小灯塔探秘十大世界未解之谜" + }, + { + "n": "神奇的气象魔法", + "v": "小灯塔神奇的气象魔法" + }, + { + "n": "了不起的新科技", + "v": "小灯塔了不起的新科技" + } + ] + }, + { + "key": "duration", + "name": "时长", + "value": [ + { + "n": "100~200分钟", + "v": "0" + }, + { + "n": "60~100分钟", + "v": "1" + }, + { + "n": "40~60分钟", + "v": "2" + }, + { + "n": "200分钟以上", + "v": "3" + }, + { + "n": "40分钟以下", + "v": "4" + } + ] + } + ], + "给孩子的第一堂性教育课": [ + { + "key": "tid", + "name": "分类", + "value": [ + { + "n": "给孩子的第一堂性教育课", + "v": "给孩子的第一堂性教育课" + }, + { + "n": "小灯塔安全教育课", + "v": "小灯塔安全教育课" + }, + { + "n": "影响十万少年的人际沟通课", + "v": "影响十万少年的人际沟通课" + }, + { + "n": "跟着棋圣学围棋", + "v": "小灯塔跟着棋圣学围棋" + }, + { + "n": "小灯塔财商启蒙课", + "v": "小灯塔财商启蒙课" + }, + { + "n": "小灯塔人体奥秘", + "v": "小灯塔人体奥秘" + }, + { + "n": "讲给孩子的人类简史", + "v": "小灯塔讲给孩子的人类简史" + }, + { + "n": "讲给孩子的希腊神话故事", + "v": "小灯塔讲给孩子的希腊神话故事" + } + ] + }, + { + "key": "duration", + "name": "时长", + "value": [ + { + "n": "100~200分钟", + "v": "0" + }, + { + "n": "60~100分钟", + "v": "1" + }, + { + "n": "40~60分钟", + "v": "2" + }, + { + "n": "200分钟以上", + "v": "3" + }, + { + "n": "40分钟以下", + "v": "4" + } + ] + } + ] + } +} \ No newline at end of file diff --git a/潇洒/education/json/XDTRW.json b/潇洒/education/json/XDTRW.json new file mode 100644 index 00000000..bf0140c8 --- /dev/null +++ b/潇洒/education/json/XDTRW.json @@ -0,0 +1,636 @@ +{ + "class": [ + { + "type_name": "安全教育课", + "type_id": "给孩子的第一堂性教育课" + }, + { + "type_name": "影响十万少年的人际沟通课", + "type_id": "影响十万少年的人际沟通课" + }, + { + "type_name": "跟着棋圣学围棋", + "type_id": "小灯塔跟着棋圣学围棋" + }, + { + "type_name": "财商启蒙课", + "type_id": "小灯塔财商启蒙课" + }, + { + "type_name": "人体奥秘", + "type_id": "小灯塔人体奥秘" + }, + { + "type_name": "儿童性教育课", + "type_id": "给孩子的第一堂性教育课" + }, + { + "type_name": "讲给孩子的人类简史", + "type_id": "小灯塔讲给孩子的人类简史" + }, + { + "type_name": "讲给孩子的希腊神话故事", + "type_id": "小灯塔讲给孩子的希腊神话故事" + }, + { + "type_name": "百科", + "type_id": "10天玩转世界top10博物馆" + }, + { + "type_name": "世界博物馆", + "type_id": "玩转世界博物馆第二季" + }, + { + "type_name": "探秘恐龙世界", + "type_id": "【合集】带孩子探秘恐龙世界 中文版" + }, + { + "type_name": "奇趣生物大百科", + "type_id": "奇趣生物大百科" + }, + { + "type_name": "动物世界", + "type_id": "玩转奇妙的动物世界" + }, + { + "type_name": "植物启蒙", + "type_id": "【小灯塔】给孩子的植物启蒙课" + }, + { + "type_name": "物种百科", + "type_id": "小灯塔给孩子的物种百科" + }, + { + "type_name": "昆虫记", + "type_id": "昆虫记" + }, + { + "type_name": "探秘故宫角落", + "type_id": "探秘故宫角落" + }, + { + "type_name": "top10名校", + "type_id": "10天游遍世界top10名校" + }, + { + "type_name": "top10名画", + "type_id": "看懂世界top10名画" + }, + { + "type_name": "地球", + "type_id": "【全8集】舌尖上的地球" + }, + { + "type_name": "地理", + "type_id": "给孩子的第一堂海洋课【完结】" + }, + { + "type_name": "海底世界", + "type_id": "穿越奇妙海底世界" + }, + { + "type_name": "地球生命史", + "type_id": "小灯塔地球生命史" + }, + { + "type_name": "探秘地球南北极", + "type_id": "小灯塔探秘地球南北极" + }, + { + "type_name": "世界十大名胜", + "type_id": "小灯塔探秘世界十大名胜" + }, + { + "type_name": "环球之旅", + "type_id": "小灯塔奇妙的环球之旅" + }, + { + "type_name": "华夏地理", + "type_id": "小灯塔探秘华夏地理" + }, + { + "type_name": "自然地理", + "type_id": "小灯塔自然地理大巡游" + }, + { + "type_name": "出发啦! 敦煌", + "type_id": "小灯塔出发啦! 敦煌" + }, + { + "type_name": "冲出亚马逊", + "type_id": "小灯塔冲出亚马逊" + }, + { + "type_name": "走进美国", + "type_id": "小灯塔走进美国" + }, + { + "type_name": " 非洲大冒险", + "type_id": "小灯塔 非洲大冒险" + }, + { + "type_name": "国学", + "type_id": "神奇的汉字故事 全20集" + }, + { + "type_name": "唐诗大世界", + "type_id": "穿越唐诗大世界" + }, + { + "type_name": "诗词大会", + "type_id": "【小灯塔】诗词大会" + }, + { + "type_name": "三字经", + "type_id": "三字经幼儿启蒙(56集超清全)" + }, + { + "type_name": "西游记", + "type_id": "30集西游记精选故事 给孩子看的经典神话" + }, + { + "type_name": "经典神话", + "type_id": "30集西游记精选故事 给孩子看的经典神话" + }, + { + "type_name": "成语故事", + "type_id": "【100集全】成语故事动画 小灯塔成语动画" + }, + { + "type_name": "中华名人故事", + "type_id": "【小灯塔】中华名人故事" + }, + { + "type_name": "山海经", + "type_id": "20集全【给孩子的山海经】小灯塔趣味动画" + }, + { + "type_name": "三国动画", + "type_id": "三国动画故事(24节全)" + }, + { + "type_name": "春节习俗", + "type_id": "【小灯塔】春节习俗追根溯源立春节" + }, + { + "type_name": "少儿版三国演义", + "type_id": "小灯塔少儿版三国演义" + }, + { + "type_name": "十二生肖", + "type_id": "【小灯塔】十二生肖" + }, + { + "type_name": "中华上下五千年", + "type_id": "【小灯塔】中华上下五千年" + }, + { + "type_name": "科学", + "type_id": "小灯塔.剑桥数学启蒙课(全)" + }, + { + "type_name": "奇趣科学实验室", + "type_id": "小灯塔奇趣科学实验室" + }, + { + "type_name": "剑桥数学启蒙课", + "type_id": "小灯塔剑桥数学启蒙课" + }, + { + "type_name": "宇宙探秘之旅", + "type_id": "小灯塔十大主题宇宙探秘之旅" + }, + { + "type_name": "跟动物老师学发明", + "type_id": "小灯塔跟动物老师学发明" + }, + { + "type_name": "天才发明家", + "type_id": "小灯塔天才发明家" + }, + { + "type_name": "剑桥博士讲物理", + "type_id": "小灯塔剑桥博士讲物理" + }, + { + "type_name": "STEM奇妙科学课", + "type_id": "小灯塔STEM奇妙科学课" + }, + { + "type_name": "出发吧,月球!", + "type_id": "小灯塔出发吧,月球!" + }, + { + "type_name": "十大世界未解之谜", + "type_id": "小灯塔探秘十大世界未解之谜" + }, + { + "type_name": "神奇的气象魔法", + "type_id": "小灯塔神奇的气象魔法" + }, + { + "type_name": "了不起的新科技", + "type_id": "小灯塔了不起的新科技" + } + ], + "filters": { + "10天玩转世界top10博物馆": [ + { + "key": "tid", + "name": "分类", + "value": [ + { + "n": "【小灯塔】10天玩转世界top10博物馆卢浮宫博物馆", + "v": "【小灯塔】10天玩转世界top10博物馆卢浮宫博物馆" + }, + { + "n": "玩转世界博物馆第二季", + "v": "玩转世界博物馆第二季" + }, + { + "n": "【合集】带孩子探秘恐龙世界 中文版", + "v": "【合集】带孩子探秘恐龙世界 中文版" + }, + { + "n": "【小灯塔】带孩子探秘恐龙世界宇宙的起源(英文版)", + "v": "【小灯塔】带孩子探秘恐龙世界宇宙的起源(英文版)" + }, + { + "n": "奇趣生物大百科", + "v": "奇趣生物大百科" + }, + { + "n": "玩转奇妙的动物世界", + "v": "玩转奇妙的动物世界" + }, + { + "n": "【小灯塔】给孩子的植物启蒙课", + "v": "【小灯塔】给孩子的植物启蒙课" + }, + { + "n": "昆虫记", + "v": "昆虫记" + }, + { + "n": "【小灯塔】昆虫记走进昆虫世界", + "v": "【小灯塔】昆虫记走进昆虫世界" + }, + { + "n": "探秘故宫角落", + "v": "探秘故宫角落" + }, + { + "n": "10天游遍世界top10名校", + "v": "10天游遍世界top10名校" + }, + { + "n": "看懂世界top10名画", + "v": "看懂世界top10名画" + }, + { + "n": "【全8集】舌尖上的地球", + "v": "【全8集】舌尖上的地球" + } + ] + }, + { + "key": "duration", + "name": "时长", + "value": [ + { + "n": "100~200分钟", + "v": "0" + }, + { + "n": "60~100分钟", + "v": "1" + }, + { + "n": "40~60分钟", + "v": "2" + }, + { + "n": "200分钟以上", + "v": "3" + }, + { + "n": "40分钟以下", + "v": "4" + } + ] + } + ], + "神奇的汉字故事 全20集": [ + { + "key": "tid", + "name": "分类", + "value": [ + { + "n": "神奇的汉字故事 全20集", + "v": "神奇的汉字故事 全20集" + }, + { + "n": "穿越唐诗大世界", + "v": "穿越唐诗大世界" + }, + { + "n": "【小灯塔】诗词大会", + "v": "【小灯塔】诗词大会" + }, + { + "n": "三字经幼儿启蒙(56集超清全)", + "v": "三字经幼儿启蒙(56集超清全)" + }, + { + "n": "30集西游记精选故事 给孩子看的经典神话", + "v": "30集西游记精选故事 给孩子看的经典神话" + }, + { + "n": "【100集全】成语故事动画 小灯塔成语动画", + "v": "【100集全】成语故事动画 小灯塔成语动画" + }, + { + "n": "【小灯塔】中华名人故事", + "v": "【小灯塔】中华名人故事" + }, + { + "n": "20集全【给孩子的山海经】小灯塔趣味动画", + "v": "20集全【给孩子的山海经】小灯塔趣味动画" + }, + { + "n": "三国动画故事(24节全)", + "v": "三国动画故事(24节全)" + }, + { + "n": "【小灯塔】春节习俗追根溯源立春节", + "v": "【小灯塔】春节习俗追根溯源立春节" + }, + { + "n": "【小灯塔】十二生肖", + "v": "【小灯塔】十二生肖" + }, + { + "n": "【小灯塔】中华上下五千年", + "v": "【小灯塔】中华上下五千年" + } + ] + }, + { + "key": "duration", + "name": "时长", + "value": [ + { + "n": "100~200分钟", + "v": "0" + }, + { + "n": "60~100分钟", + "v": "1" + }, + { + "n": "40~60分钟", + "v": "2" + }, + { + "n": "200分钟以上", + "v": "3" + }, + { + "n": "40分钟以下", + "v": "4" + } + ] + } + ], + "给孩子的第一堂海洋课【完结】": [ + { + "key": "tid", + "name": "分类", + "value": [ + { + "n": "给孩子的第一堂海洋课【完结】", + "v": "给孩子的第一堂海洋课【完结】" + }, + { + "n": "穿越奇妙海底世界", + "v": "穿越奇妙海底世界" + }, + { + "n": "【小灯塔】地球生命史", + "v": "【小灯塔】地球生命史" + }, + { + "n": "探秘地球南北极", + "v": "小灯塔探秘地球南北极" + }, + { + "n": "世界十大名胜", + "v": "小灯塔探秘世界十大名胜" + }, + { + "n": "环球之旅", + "v": "小灯塔奇妙的环球之旅" + }, + { + "n": "华夏地理", + "v": "小灯塔探秘华夏地理" + }, + { + "n": "自然地理", + "v": "小灯塔自然地理大巡游" + }, + { + "n": "出发啦! 敦煌", + "v": "小灯塔出发啦! 敦煌" + }, + { + "n": "冲出亚马逊", + "v": "小灯塔冲出亚马逊" + }, + { + "n": "走进美国", + "v": "小灯塔走进美国" + }, + { + "n": " 非洲大冒险", + "v": "小灯塔 非洲大冒险" + } + ] + }, + { + "key": "duration", + "name": "时长", + "value": [ + { + "n": "100~200分钟", + "v": "0" + }, + { + "n": "60~100分钟", + "v": "1" + }, + { + "n": "40~60分钟", + "v": "2" + }, + { + "n": "200分钟以上", + "v": "3" + }, + { + "n": "40分钟以下", + "v": "4" + } + ] + } + ], + "小灯塔.剑桥数学启蒙课(全)": [ + { + "key": "tid", + "name": "分类", + "value": [ + { + "n": "小灯塔.剑桥数学启蒙课(全)", + "v": "小灯塔.剑桥数学启蒙课(全)" + }, + { + "n": "奇趣科学实验室", + "v": "小灯塔奇趣科学实验室" + }, + { + "n": "剑桥数学启蒙课", + "v": "小灯塔剑桥数学启蒙课" + }, + { + "n": "宇宙探秘之旅", + "v": "小灯塔十大主题宇宙探秘之旅" + }, + { + "n": "跟动物老师学发明", + "v": "小灯塔跟动物老师学发明" + }, + { + "n": "天才发明家", + "v": "小灯塔天才发明家" + }, + { + "n": "剑桥博士讲物理", + "v": "小灯塔剑桥博士讲物理" + }, + { + "n": "STEM奇妙科学课", + "v": "小灯塔STEM奇妙科学课" + }, + { + "n": "出发吧,月球!", + "v": "小灯塔出发吧,月球!" + }, + { + "n": "十大世界未解之谜", + "v": "小灯塔探秘十大世界未解之谜" + }, + { + "n": "神奇的气象魔法", + "v": "小灯塔神奇的气象魔法" + }, + { + "n": "了不起的新科技", + "v": "小灯塔了不起的新科技" + } + ] + }, + { + "key": "duration", + "name": "时长", + "value": [ + { + "n": "100~200分钟", + "v": "0" + }, + { + "n": "60~100分钟", + "v": "1" + }, + { + "n": "40~60分钟", + "v": "2" + }, + { + "n": "200分钟以上", + "v": "3" + }, + { + "n": "40分钟以下", + "v": "4" + } + ] + } + ], + "给孩子的第一堂性教育课": [ + { + "key": "tid", + "name": "分类", + "value": [ + { + "n": "给孩子的第一堂性教育课", + "v": "给孩子的第一堂性教育课" + }, + { + "n": "小灯塔安全教育课", + "v": "小灯塔安全教育课" + }, + { + "n": "影响十万少年的人际沟通课", + "v": "影响十万少年的人际沟通课" + }, + { + "n": "跟着棋圣学围棋", + "v": "小灯塔跟着棋圣学围棋" + }, + { + "n": "小灯塔财商启蒙课", + "v": "小灯塔财商启蒙课" + }, + { + "n": "小灯塔人体奥秘", + "v": "小灯塔人体奥秘" + }, + { + "n": "讲给孩子的人类简史", + "v": "小灯塔讲给孩子的人类简史" + }, + { + "n": "讲给孩子的希腊神话故事", + "v": "小灯塔讲给孩子的希腊神话故事" + } + ] + }, + { + "key": "duration", + "name": "时长", + "value": [ + { + "n": "100~200分钟", + "v": "0" + }, + { + "n": "60~100分钟", + "v": "1" + }, + { + "n": "40~60分钟", + "v": "2" + }, + { + "n": "200分钟以上", + "v": "3" + }, + { + "n": "40分钟以下", + "v": "4" + } + ] + } + ] + } +} \ No newline at end of file diff --git a/潇洒/education/json/XXKT.json b/潇洒/education/json/XXKT.json new file mode 100644 index 00000000..7daba976 --- /dev/null +++ b/潇洒/education/json/XXKT.json @@ -0,0 +1,1050 @@ +{ + "class": [ + { + "type_name": "1年级语文", + "type_id": "1年级语文" + }, + { + "type_name": "1年级数学", + "type_id": "1年级数学" + }, + { + "type_name": "1年级英语", + "type_id": "1年级英语" + }, + { + "type_name": "2年级语文", + "type_id": "2年级语文" + }, + { + "type_name": "2年级数学", + "type_id": "2年级数学" + }, + { + "type_name": "2年级英语", + "type_id": "2年级英语" + }, + { + "type_name": "3年级语文", + "type_id": "3年级语文" + }, + { + "type_name": "3年级数学", + "type_id": "3年级数学" + }, + { + "type_name": "3年级英语", + "type_id": "3年级英语" + }, + { + "type_name": "4年级语文", + "type_id": "4年级语文" + }, + { + "type_name": "4年级数学", + "type_id": "4年级数学" + }, + { + "type_name": "4年级英语", + "type_id": "4年级英语" + }, + { + "type_name": "5年级语文", + "type_id": "5年级语文" + }, + { + "type_name": "5年级数学", + "type_id": "5年级数学" + }, + { + "type_name": "5年级英语", + "type_id": "5年级英语" + }, + { + "type_name": "6年级语文", + "type_id": "6年级语文" + }, + { + "type_name": "6年级数学", + "type_id": "6年级数学" + }, + { + "type_name": "6年级英语", + "type_id": "6年级英语" + } + ], + "filters": { + "1年级语文": [ + { + "key": "tid", + "name": "分类", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "沪教版", + "v": "沪教版1年级语文" + }, + { + "n": "人教版", + "v": "人教版1年级语文" + }, + { + "n": "北师大版", + "v": "北师大版1年级语文" + }, + { + "n": "苏教版", + "v": "苏教版1年级语文" + } + ] + }, + { + "key": "duration", + "name": "时长", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "60分钟以上", + "v": "4" + }, + { + "n": "30~60分钟", + "v": "3" + }, + { + "n": "10~30分钟", + "v": "2" + }, + { + "n": "10分钟以下", + "v": "1" + } + ] + } + ], + "1年级英语": [ + { + "key": "tid", + "name": "分类", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "沪教版", + "v": "沪教版1年级英语" + }, + { + "n": "人教版", + "v": "人教版1年级英语" + }, + { + "n": "北师大版", + "v": "北师大版1年级英语" + }, + { + "n": "苏教版", + "v": "苏教版1年级英语" + } + ] + }, + { + "key": "duration", + "name": "时长", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "60分钟以上", + "v": "4" + }, + { + "n": "30~60分钟", + "v": "3" + }, + { + "n": "10~30分钟", + "v": "2" + }, + { + "n": "10分钟以下", + "v": "1" + } + ] + } + ], + "1年级数学": [ + { + "key": "tid", + "name": "分类", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "沪教版", + "v": "沪教版1年级数学" + }, + { + "n": "人教版", + "v": "人教版1年级数学" + }, + { + "n": "北师大版", + "v": "北师大版1年级数学" + }, + { + "n": "苏教版", + "v": "苏教版1年级数学" + } + ] + }, + { + "key": "duration", + "name": "时长", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "60分钟以上", + "v": "4" + }, + { + "n": "30~60分钟", + "v": "3" + }, + { + "n": "10~30分钟", + "v": "2" + }, + { + "n": "10分钟以下", + "v": "1" + } + ] + } + ], + "2年级语文": [ + { + "key": "tid", + "name": "分类", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "沪教版", + "v": "沪教版2年级语文" + }, + { + "n": "人教版", + "v": "人教版2年级语文" + }, + { + "n": "北师大版", + "v": "北师大版2年级语文" + }, + { + "n": "苏教版", + "v": "苏教版2年级语文" + } + ] + }, + { + "key": "duration", + "name": "时长", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "60分钟以上", + "v": "4" + }, + { + "n": "30~60分钟", + "v": "3" + }, + { + "n": "10~30分钟", + "v": "2" + }, + { + "n": "10分钟以下", + "v": "1" + } + ] + } + ], + "2年级英语": [ + { + "key": "tid", + "name": "分类", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "沪教版", + "v": "沪教版2年级英语" + }, + { + "n": "人教版", + "v": "人教版2年级英语" + }, + { + "n": "北师大版", + "v": "北师大版2年级英语" + }, + { + "n": "苏教版", + "v": "苏教版2年级英语" + } + ] + }, + { + "key": "duration", + "name": "时长", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "60分钟以上", + "v": "4" + }, + { + "n": "30~60分钟", + "v": "3" + }, + { + "n": "10~30分钟", + "v": "2" + }, + { + "n": "10分钟以下", + "v": "1" + } + ] + } + ], + "2年级数学": [ + { + "key": "tid", + "name": "分类", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "沪教版", + "v": "沪教版2年级数学" + }, + { + "n": "人教版", + "v": "人教版2年级数学" + }, + { + "n": "北师大版", + "v": "北师大版2年级数学" + }, + { + "n": "苏教版", + "v": "苏教版2年级数学" + } + ] + }, + { + "key": "duration", + "name": "时长", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "60分钟以上", + "v": "4" + }, + { + "n": "30~60分钟", + "v": "3" + }, + { + "n": "10~30分钟", + "v": "2" + }, + { + "n": "10分钟以下", + "v": "1" + } + ] + } + ], + "3年级语文": [ + { + "key": "tid", + "name": "分类", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "沪教版", + "v": "沪教版3年级语文" + }, + { + "n": "人教版", + "v": "人教版3年级语文" + }, + { + "n": "北师大版", + "v": "北师大版3年级语文" + }, + { + "n": "苏教版", + "v": "苏教版3年级语文" + } + ] + }, + { + "key": "duration", + "name": "时长", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "60分钟以上", + "v": "4" + }, + { + "n": "30~60分钟", + "v": "3" + }, + { + "n": "10~30分钟", + "v": "2" + }, + { + "n": "10分钟以下", + "v": "1" + } + ] + } + ], + "3年级英语": [ + { + "key": "tid", + "name": "分类", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "沪教版", + "v": "沪教版3年级英语" + }, + { + "n": "人教版", + "v": "人教版3年级英语" + }, + { + "n": "北师大版", + "v": "北师大版3年级英语" + }, + { + "n": "苏教版", + "v": "苏教版3年级英语" + } + ] + }, + { + "key": "duration", + "name": "时长", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "60分钟以上", + "v": "4" + }, + { + "n": "30~60分钟", + "v": "3" + }, + { + "n": "10~30分钟", + "v": "2" + }, + { + "n": "10分钟以下", + "v": "1" + } + ] + } + ], + "3年级数学": [ + { + "key": "tid", + "name": "分类", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "沪教版", + "v": "沪教版3年级数学" + }, + { + "n": "人教版", + "v": "人教版3年级数学" + }, + { + "n": "北师大版", + "v": "北师大版3年级数学" + }, + { + "n": "苏教版", + "v": "苏教版3年级数学" + } + ] + }, + { + "key": "duration", + "name": "时长", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "60分钟以上", + "v": "4" + }, + { + "n": "30~60分钟", + "v": "3" + }, + { + "n": "10~30分钟", + "v": "2" + }, + { + "n": "10分钟以下", + "v": "1" + } + ] + } + ], + "4年级语文": [ + { + "key": "tid", + "name": "分类", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "沪教版", + "v": "沪教版4年级语文" + }, + { + "n": "人教版", + "v": "人教版4年级语文" + }, + { + "n": "北师大版", + "v": "北师大版4年级语文" + }, + { + "n": "苏教版", + "v": "苏教版4年级语文" + } + ] + }, + { + "key": "duration", + "name": "时长", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "60分钟以上", + "v": "4" + }, + { + "n": "30~60分钟", + "v": "3" + }, + { + "n": "10~30分钟", + "v": "2" + }, + { + "n": "10分钟以下", + "v": "1" + } + ] + } + ], + "4年级英语": [ + { + "key": "tid", + "name": "分类", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "沪教版", + "v": "沪教版4年级英语" + }, + { + "n": "人教版", + "v": "人教版4年级英语" + }, + { + "n": "北师大版", + "v": "北师大版4年级英语" + }, + { + "n": "苏教版", + "v": "苏教版4年级英语" + } + ] + }, + { + "key": "duration", + "name": "时长", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "60分钟以上", + "v": "4" + }, + { + "n": "30~60分钟", + "v": "3" + }, + { + "n": "10~30分钟", + "v": "2" + }, + { + "n": "10分钟以下", + "v": "1" + } + ] + } + ], + "4年级数学": [ + { + "key": "tid", + "name": "分类", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "沪教版", + "v": "沪教版4年级数学" + }, + { + "n": "人教版", + "v": "人教版4年级数学" + }, + { + "n": "北师大版", + "v": "北师大版4年级数学" + }, + { + "n": "苏教版", + "v": "苏教版4年级数学" + } + ] + }, + { + "key": "duration", + "name": "时长", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "60分钟以上", + "v": "4" + }, + { + "n": "30~60分钟", + "v": "3" + }, + { + "n": "10~30分钟", + "v": "2" + }, + { + "n": "10分钟以下", + "v": "1" + } + ] + } + ], + "5年级语文": [ + { + "key": "tid", + "name": "分类", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "沪教版", + "v": "沪教版5年级语文" + }, + { + "n": "人教版", + "v": "人教版5年级语文" + }, + { + "n": "北师大版", + "v": "北师大版5年级语文" + }, + { + "n": "苏教版", + "v": "苏教版5年级语文" + } + ] + }, + { + "key": "duration", + "name": "时长", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "60分钟以上", + "v": "4" + }, + { + "n": "30~60分钟", + "v": "3" + }, + { + "n": "10~30分钟", + "v": "2" + }, + { + "n": "10分钟以下", + "v": "1" + } + ] + } + ], + "5年级英语": [ + { + "key": "tid", + "name": "分类", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "沪教版", + "v": "沪教版5年级英语" + }, + { + "n": "人教版", + "v": "人教版5年级英语" + }, + { + "n": "北师大版", + "v": "北师大版5年级英语" + }, + { + "n": "苏教版", + "v": "苏教版5年级英语" + } + ] + }, + { + "key": "duration", + "name": "时长", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "60分钟以上", + "v": "4" + }, + { + "n": "30~60分钟", + "v": "3" + }, + { + "n": "10~30分钟", + "v": "2" + }, + { + "n": "10分钟以下", + "v": "1" + } + ] + } + ], + "5年级数学": [ + { + "key": "tid", + "name": "分类", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "沪教版", + "v": "沪教版5年级数学" + }, + { + "n": "人教版", + "v": "人教版5年级数学" + }, + { + "n": "北师大版", + "v": "北师大版5年级数学" + }, + { + "n": "苏教版", + "v": "苏教版5年级数学" + } + ] + }, + { + "key": "duration", + "name": "时长", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "60分钟以上", + "v": "4" + }, + { + "n": "30~60分钟", + "v": "3" + }, + { + "n": "10~30分钟", + "v": "2" + }, + { + "n": "10分钟以下", + "v": "1" + } + ] + } + ], + "6年级语文": [ + { + "key": "tid", + "name": "分类", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "沪教版", + "v": "沪教版6年级语文" + }, + { + "n": "人教版", + "v": "人教版6年级语文" + }, + { + "n": "北师大版", + "v": "北师大版6年级语文" + }, + { + "n": "苏教版", + "v": "苏教版6年级语文" + } + ] + }, + { + "key": "duration", + "name": "时长", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "60分钟以上", + "v": "4" + }, + { + "n": "30~60分钟", + "v": "3" + }, + { + "n": "10~30分钟", + "v": "2" + }, + { + "n": "10分钟以下", + "v": "1" + } + ] + } + ], + "6年级英语": [ + { + "key": "tid", + "name": "分类", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "沪教版", + "v": "沪教版6年级英语" + }, + { + "n": "人教版", + "v": "人教版6年级英语" + }, + { + "n": "北师大版", + "v": "北师大版6年级英语" + }, + { + "n": "苏教版", + "v": "苏教版6年级英语" + } + ] + }, + { + "key": "duration", + "name": "时长", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "60分钟以上", + "v": "4" + }, + { + "n": "30~60分钟", + "v": "3" + }, + { + "n": "10~30分钟", + "v": "2" + }, + { + "n": "10分钟以下", + "v": "1" + } + ] + } + ], + "6年级数学": [ + { + "key": "tid", + "name": "分类", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "沪教版", + "v": "沪教版6年级数学" + }, + { + "n": "人教版", + "v": "人教版6年级数学" + }, + { + "n": "北师大版", + "v": "北师大版6年级数学" + }, + { + "n": "苏教版", + "v": "苏教版6年级数学" + } + ] + }, + { + "key": "duration", + "name": "时长", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "60分钟以上", + "v": "4" + }, + { + "n": "30~60分钟", + "v": "3" + }, + { + "n": "10~30分钟", + "v": "2" + }, + { + "n": "10分钟以下", + "v": "1" + } + ] + } + ] + } +} \ No newline at end of file diff --git a/潇洒/js/drpy-core-lite.min.js b/潇洒/js/drpy-core-lite.min.js new file mode 100644 index 00000000..2aec8b04 --- /dev/null +++ b/潇洒/js/drpy-core-lite.min.js @@ -0,0 +1 @@ +var e={27:e=>{e.exports='(function(global,factory){typeof exports==="object"&&typeof module!=="undefined"?module.exports=factory():typeof define==="function"&&define.amd?define(factory):(global=typeof globalThis!=="undefined"?globalThis:global||self,global.JSON5=factory())})(this,function(){"use strict";function createCommonjsModule(fn,module){return module={exports:{}},fn(module,module.exports),module.exports}var _global=createCommonjsModule(function(module){var global=module.exports=typeof window!="undefined"&&window.Math==Math?window:typeof self!="undefined"&&self.Math==Math?self:Function("return this")();if(typeof __g=="number"){__g=global}});var _core=createCommonjsModule(function(module){var core=module.exports={version:"2.6.5"};if(typeof __e=="number"){__e=core}});var _core_1=_core.version;var _isObject=function(it){return typeof it==="object"?it!==null:typeof it==="function"};var _anObject=function(it){if(!_isObject(it)){throw TypeError(it+" is not an object!")}return it};var _fails=function(exec){try{return!!exec()}catch(e){return true}};var _descriptors=!_fails(function(){return Object.defineProperty({},"a",{get:function(){return 7}}).a!=7});var document=_global.document;var is=_isObject(document)&&_isObject(document.createElement);var _domCreate=function(it){return is?document.createElement(it):{}};var _ie8DomDefine=!_descriptors&&!_fails(function(){return Object.defineProperty(_domCreate("div"),"a",{get:function(){return 7}}).a!=7});var _toPrimitive=function(it,S){if(!_isObject(it)){return it}var fn,val;if(S&&typeof(fn=it.toString)=="function"&&!_isObject(val=fn.call(it))){return val}if(typeof(fn=it.valueOf)=="function"&&!_isObject(val=fn.call(it))){return val}if(!S&&typeof(fn=it.toString)=="function"&&!_isObject(val=fn.call(it))){return val}throw TypeError("Can\'t convert object to primitive value")};var dP=Object.defineProperty;var f=_descriptors?Object.defineProperty:function defineProperty(O,P,Attributes){_anObject(O);P=_toPrimitive(P,true);_anObject(Attributes);if(_ie8DomDefine){try{return dP(O,P,Attributes)}catch(e){}}if("get"in Attributes||"set"in Attributes){throw TypeError("Accessors not supported!")}if("value"in Attributes){O[P]=Attributes.value}return O};var _objectDp={f:f};var _propertyDesc=function(bitmap,value){return{enumerable:!(bitmap&1),configurable:!(bitmap&2),writable:!(bitmap&4),value:value}};var _hide=_descriptors?function(object,key,value){return _objectDp.f(object,key,_propertyDesc(1,value))}:function(object,key,value){object[key]=value;return object};var hasOwnProperty={}.hasOwnProperty;var _has=function(it,key){return hasOwnProperty.call(it,key)};var id=0;var px=Math.random();var _uid=function(key){return"Symbol(".concat(key===undefined?"":key,")_",(++id+px).toString(36))};var _library=false;var _shared=createCommonjsModule(function(module){var SHARED="__core-js_shared__";var store=_global[SHARED]||(_global[SHARED]={});(module.exports=function(key,value){return store[key]||(store[key]=value!==undefined?value:{})})("versions",[]).push({version:_core.version,mode:_library?"pure":"global",copyright:"© 2019 Denis Pushkarev (zloirock.ru)"})});var _functionToString=_shared("native-function-to-string",Function.toString);var _redefine=createCommonjsModule(function(module){var SRC=_uid("src");var TO_STRING="toString";var TPL=(""+_functionToString).split(TO_STRING);_core.inspectSource=function(it){return _functionToString.call(it)};(module.exports=function(O,key,val,safe){var isFunction=typeof val=="function";if(isFunction){_has(val,"name")||_hide(val,"name",key)}if(O[key]===val){return}if(isFunction){_has(val,SRC)||_hide(val,SRC,O[key]?""+O[key]:TPL.join(String(key)))}if(O===_global){O[key]=val}else if(!safe){delete O[key];_hide(O,key,val)}else if(O[key]){O[key]=val}else{_hide(O,key,val)}})(Function.prototype,TO_STRING,function toString(){return typeof this=="function"&&this[SRC]||_functionToString.call(this)})});var _aFunction=function(it){if(typeof it!="function"){throw TypeError(it+" is not a function!")}return it};var _ctx=function(fn,that,length){_aFunction(fn);if(that===undefined){return fn}switch(length){case 1:return function(a){return fn.call(that,a)};case 2:return function(a,b){return fn.call(that,a,b)};case 3:return function(a,b,c){return fn.call(that,a,b,c)}}return function(){return fn.apply(that,arguments)}};var PROTOTYPE="prototype";var $export=function(type,name,source){var IS_FORCED=type&$export.F;var IS_GLOBAL=type&$export.G;var IS_STATIC=type&$export.S;var IS_PROTO=type&$export.P;var IS_BIND=type&$export.B;var target=IS_GLOBAL?_global:IS_STATIC?_global[name]||(_global[name]={}):(_global[name]||{})[PROTOTYPE];var exports=IS_GLOBAL?_core:_core[name]||(_core[name]={});var expProto=exports[PROTOTYPE]||(exports[PROTOTYPE]={});var key,own,out,exp;if(IS_GLOBAL){source=name}for(key in source){own=!IS_FORCED&&target&&target[key]!==undefined;out=(own?target:source)[key];exp=IS_BIND&&own?_ctx(out,_global):IS_PROTO&&typeof out=="function"?_ctx(Function.call,out):out;if(target){_redefine(target,key,out,type&$export.U)}if(exports[key]!=out){_hide(exports,key,exp)}if(IS_PROTO&&expProto[key]!=out){expProto[key]=out}}};_global.core=_core;$export.F=1;$export.G=2;$export.S=4;$export.P=8;$export.B=16;$export.W=32;$export.U=64;$export.R=128;var _export=$export;var ceil=Math.ceil;var floor=Math.floor;var _toInteger=function(it){return isNaN(it=+it)?0:(it>0?floor:ceil)(it)};var _defined=function(it){if(it==undefined){throw TypeError("Can\'t call method on "+it)}return it};var _stringAt=function(TO_STRING){return function(that,pos){var s=String(_defined(that));var i=_toInteger(pos);var l=s.length;var a,b;if(i<0||i>=l){return TO_STRING?"":undefined}a=s.charCodeAt(i);return a<55296||a>56319||i+1===l||(b=s.charCodeAt(i+1))<56320||b>57343?TO_STRING?s.charAt(i):a:TO_STRING?s.slice(i,i+2):(a-55296<<10)+(b-56320)+65536}};var $at=_stringAt(false);_export(_export.P,"String",{codePointAt:function codePointAt(pos){return $at(this,pos)}});var codePointAt=_core.String.codePointAt;var max=Math.max;var min=Math.min;var _toAbsoluteIndex=function(index,length){index=_toInteger(index);return index<0?max(index+length,0):min(index,length)};var fromCharCode=String.fromCharCode;var $fromCodePoint=String.fromCodePoint;_export(_export.S+_export.F*(!!$fromCodePoint&&$fromCodePoint.length!=1),"String",{fromCodePoint:function fromCodePoint(x){var arguments$1=arguments;var res=[];var aLen=arguments.length;var i=0;var code;while(aLen>i){code=+arguments$1[i++];if(_toAbsoluteIndex(code,1114111)!==code){throw RangeError(code+" is not a valid code point")}res.push(code<65536?fromCharCode(code):fromCharCode(((code-=65536)>>10)+55296,code%1024+56320))}return res.join("")}});var fromCodePoint=_core.String.fromCodePoint;var Space_Separator=/[\\u1680\\u2000-\\u200A\\u202F\\u205F\\u3000]/;var ID_Start=/[\\xAA\\xB5\\xBA\\xC0-\\xD6\\xD8-\\xF6\\xF8-\\u02C1\\u02C6-\\u02D1\\u02E0-\\u02E4\\u02EC\\u02EE\\u0370-\\u0374\\u0376\\u0377\\u037A-\\u037D\\u037F\\u0386\\u0388-\\u038A\\u038C\\u038E-\\u03A1\\u03A3-\\u03F5\\u03F7-\\u0481\\u048A-\\u052F\\u0531-\\u0556\\u0559\\u0561-\\u0587\\u05D0-\\u05EA\\u05F0-\\u05F2\\u0620-\\u064A\\u066E\\u066F\\u0671-\\u06D3\\u06D5\\u06E5\\u06E6\\u06EE\\u06EF\\u06FA-\\u06FC\\u06FF\\u0710\\u0712-\\u072F\\u074D-\\u07A5\\u07B1\\u07CA-\\u07EA\\u07F4\\u07F5\\u07FA\\u0800-\\u0815\\u081A\\u0824\\u0828\\u0840-\\u0858\\u0860-\\u086A\\u08A0-\\u08B4\\u08B6-\\u08BD\\u0904-\\u0939\\u093D\\u0950\\u0958-\\u0961\\u0971-\\u0980\\u0985-\\u098C\\u098F\\u0990\\u0993-\\u09A8\\u09AA-\\u09B0\\u09B2\\u09B6-\\u09B9\\u09BD\\u09CE\\u09DC\\u09DD\\u09DF-\\u09E1\\u09F0\\u09F1\\u09FC\\u0A05-\\u0A0A\\u0A0F\\u0A10\\u0A13-\\u0A28\\u0A2A-\\u0A30\\u0A32\\u0A33\\u0A35\\u0A36\\u0A38\\u0A39\\u0A59-\\u0A5C\\u0A5E\\u0A72-\\u0A74\\u0A85-\\u0A8D\\u0A8F-\\u0A91\\u0A93-\\u0AA8\\u0AAA-\\u0AB0\\u0AB2\\u0AB3\\u0AB5-\\u0AB9\\u0ABD\\u0AD0\\u0AE0\\u0AE1\\u0AF9\\u0B05-\\u0B0C\\u0B0F\\u0B10\\u0B13-\\u0B28\\u0B2A-\\u0B30\\u0B32\\u0B33\\u0B35-\\u0B39\\u0B3D\\u0B5C\\u0B5D\\u0B5F-\\u0B61\\u0B71\\u0B83\\u0B85-\\u0B8A\\u0B8E-\\u0B90\\u0B92-\\u0B95\\u0B99\\u0B9A\\u0B9C\\u0B9E\\u0B9F\\u0BA3\\u0BA4\\u0BA8-\\u0BAA\\u0BAE-\\u0BB9\\u0BD0\\u0C05-\\u0C0C\\u0C0E-\\u0C10\\u0C12-\\u0C28\\u0C2A-\\u0C39\\u0C3D\\u0C58-\\u0C5A\\u0C60\\u0C61\\u0C80\\u0C85-\\u0C8C\\u0C8E-\\u0C90\\u0C92-\\u0CA8\\u0CAA-\\u0CB3\\u0CB5-\\u0CB9\\u0CBD\\u0CDE\\u0CE0\\u0CE1\\u0CF1\\u0CF2\\u0D05-\\u0D0C\\u0D0E-\\u0D10\\u0D12-\\u0D3A\\u0D3D\\u0D4E\\u0D54-\\u0D56\\u0D5F-\\u0D61\\u0D7A-\\u0D7F\\u0D85-\\u0D96\\u0D9A-\\u0DB1\\u0DB3-\\u0DBB\\u0DBD\\u0DC0-\\u0DC6\\u0E01-\\u0E30\\u0E32\\u0E33\\u0E40-\\u0E46\\u0E81\\u0E82\\u0E84\\u0E87\\u0E88\\u0E8A\\u0E8D\\u0E94-\\u0E97\\u0E99-\\u0E9F\\u0EA1-\\u0EA3\\u0EA5\\u0EA7\\u0EAA\\u0EAB\\u0EAD-\\u0EB0\\u0EB2\\u0EB3\\u0EBD\\u0EC0-\\u0EC4\\u0EC6\\u0EDC-\\u0EDF\\u0F00\\u0F40-\\u0F47\\u0F49-\\u0F6C\\u0F88-\\u0F8C\\u1000-\\u102A\\u103F\\u1050-\\u1055\\u105A-\\u105D\\u1061\\u1065\\u1066\\u106E-\\u1070\\u1075-\\u1081\\u108E\\u10A0-\\u10C5\\u10C7\\u10CD\\u10D0-\\u10FA\\u10FC-\\u1248\\u124A-\\u124D\\u1250-\\u1256\\u1258\\u125A-\\u125D\\u1260-\\u1288\\u128A-\\u128D\\u1290-\\u12B0\\u12B2-\\u12B5\\u12B8-\\u12BE\\u12C0\\u12C2-\\u12C5\\u12C8-\\u12D6\\u12D8-\\u1310\\u1312-\\u1315\\u1318-\\u135A\\u1380-\\u138F\\u13A0-\\u13F5\\u13F8-\\u13FD\\u1401-\\u166C\\u166F-\\u167F\\u1681-\\u169A\\u16A0-\\u16EA\\u16EE-\\u16F8\\u1700-\\u170C\\u170E-\\u1711\\u1720-\\u1731\\u1740-\\u1751\\u1760-\\u176C\\u176E-\\u1770\\u1780-\\u17B3\\u17D7\\u17DC\\u1820-\\u1877\\u1880-\\u1884\\u1887-\\u18A8\\u18AA\\u18B0-\\u18F5\\u1900-\\u191E\\u1950-\\u196D\\u1970-\\u1974\\u1980-\\u19AB\\u19B0-\\u19C9\\u1A00-\\u1A16\\u1A20-\\u1A54\\u1AA7\\u1B05-\\u1B33\\u1B45-\\u1B4B\\u1B83-\\u1BA0\\u1BAE\\u1BAF\\u1BBA-\\u1BE5\\u1C00-\\u1C23\\u1C4D-\\u1C4F\\u1C5A-\\u1C7D\\u1C80-\\u1C88\\u1CE9-\\u1CEC\\u1CEE-\\u1CF1\\u1CF5\\u1CF6\\u1D00-\\u1DBF\\u1E00-\\u1F15\\u1F18-\\u1F1D\\u1F20-\\u1F45\\u1F48-\\u1F4D\\u1F50-\\u1F57\\u1F59\\u1F5B\\u1F5D\\u1F5F-\\u1F7D\\u1F80-\\u1FB4\\u1FB6-\\u1FBC\\u1FBE\\u1FC2-\\u1FC4\\u1FC6-\\u1FCC\\u1FD0-\\u1FD3\\u1FD6-\\u1FDB\\u1FE0-\\u1FEC\\u1FF2-\\u1FF4\\u1FF6-\\u1FFC\\u2071\\u207F\\u2090-\\u209C\\u2102\\u2107\\u210A-\\u2113\\u2115\\u2119-\\u211D\\u2124\\u2126\\u2128\\u212A-\\u212D\\u212F-\\u2139\\u213C-\\u213F\\u2145-\\u2149\\u214E\\u2160-\\u2188\\u2C00-\\u2C2E\\u2C30-\\u2C5E\\u2C60-\\u2CE4\\u2CEB-\\u2CEE\\u2CF2\\u2CF3\\u2D00-\\u2D25\\u2D27\\u2D2D\\u2D30-\\u2D67\\u2D6F\\u2D80-\\u2D96\\u2DA0-\\u2DA6\\u2DA8-\\u2DAE\\u2DB0-\\u2DB6\\u2DB8-\\u2DBE\\u2DC0-\\u2DC6\\u2DC8-\\u2DCE\\u2DD0-\\u2DD6\\u2DD8-\\u2DDE\\u2E2F\\u3005-\\u3007\\u3021-\\u3029\\u3031-\\u3035\\u3038-\\u303C\\u3041-\\u3096\\u309D-\\u309F\\u30A1-\\u30FA\\u30FC-\\u30FF\\u3105-\\u312E\\u3131-\\u318E\\u31A0-\\u31BA\\u31F0-\\u31FF\\u3400-\\u4DB5\\u4E00-\\u9FEA\\uA000-\\uA48C\\uA4D0-\\uA4FD\\uA500-\\uA60C\\uA610-\\uA61F\\uA62A\\uA62B\\uA640-\\uA66E\\uA67F-\\uA69D\\uA6A0-\\uA6EF\\uA717-\\uA71F\\uA722-\\uA788\\uA78B-\\uA7AE\\uA7B0-\\uA7B7\\uA7F7-\\uA801\\uA803-\\uA805\\uA807-\\uA80A\\uA80C-\\uA822\\uA840-\\uA873\\uA882-\\uA8B3\\uA8F2-\\uA8F7\\uA8FB\\uA8FD\\uA90A-\\uA925\\uA930-\\uA946\\uA960-\\uA97C\\uA984-\\uA9B2\\uA9CF\\uA9E0-\\uA9E4\\uA9E6-\\uA9EF\\uA9FA-\\uA9FE\\uAA00-\\uAA28\\uAA40-\\uAA42\\uAA44-\\uAA4B\\uAA60-\\uAA76\\uAA7A\\uAA7E-\\uAAAF\\uAAB1\\uAAB5\\uAAB6\\uAAB9-\\uAABD\\uAAC0\\uAAC2\\uAADB-\\uAADD\\uAAE0-\\uAAEA\\uAAF2-\\uAAF4\\uAB01-\\uAB06\\uAB09-\\uAB0E\\uAB11-\\uAB16\\uAB20-\\uAB26\\uAB28-\\uAB2E\\uAB30-\\uAB5A\\uAB5C-\\uAB65\\uAB70-\\uABE2\\uAC00-\\uD7A3\\uD7B0-\\uD7C6\\uD7CB-\\uD7FB\\uF900-\\uFA6D\\uFA70-\\uFAD9\\uFB00-\\uFB06\\uFB13-\\uFB17\\uFB1D\\uFB1F-\\uFB28\\uFB2A-\\uFB36\\uFB38-\\uFB3C\\uFB3E\\uFB40\\uFB41\\uFB43\\uFB44\\uFB46-\\uFBB1\\uFBD3-\\uFD3D\\uFD50-\\uFD8F\\uFD92-\\uFDC7\\uFDF0-\\uFDFB\\uFE70-\\uFE74\\uFE76-\\uFEFC\\uFF21-\\uFF3A\\uFF41-\\uFF5A\\uFF66-\\uFFBE\\uFFC2-\\uFFC7\\uFFCA-\\uFFCF\\uFFD2-\\uFFD7\\uFFDA-\\uFFDC]|\\uD800[\\uDC00-\\uDC0B\\uDC0D-\\uDC26\\uDC28-\\uDC3A\\uDC3C\\uDC3D\\uDC3F-\\uDC4D\\uDC50-\\uDC5D\\uDC80-\\uDCFA\\uDD40-\\uDD74\\uDE80-\\uDE9C\\uDEA0-\\uDED0\\uDF00-\\uDF1F\\uDF2D-\\uDF4A\\uDF50-\\uDF75\\uDF80-\\uDF9D\\uDFA0-\\uDFC3\\uDFC8-\\uDFCF\\uDFD1-\\uDFD5]|\\uD801[\\uDC00-\\uDC9D\\uDCB0-\\uDCD3\\uDCD8-\\uDCFB\\uDD00-\\uDD27\\uDD30-\\uDD63\\uDE00-\\uDF36\\uDF40-\\uDF55\\uDF60-\\uDF67]|\\uD802[\\uDC00-\\uDC05\\uDC08\\uDC0A-\\uDC35\\uDC37\\uDC38\\uDC3C\\uDC3F-\\uDC55\\uDC60-\\uDC76\\uDC80-\\uDC9E\\uDCE0-\\uDCF2\\uDCF4\\uDCF5\\uDD00-\\uDD15\\uDD20-\\uDD39\\uDD80-\\uDDB7\\uDDBE\\uDDBF\\uDE00\\uDE10-\\uDE13\\uDE15-\\uDE17\\uDE19-\\uDE33\\uDE60-\\uDE7C\\uDE80-\\uDE9C\\uDEC0-\\uDEC7\\uDEC9-\\uDEE4\\uDF00-\\uDF35\\uDF40-\\uDF55\\uDF60-\\uDF72\\uDF80-\\uDF91]|\\uD803[\\uDC00-\\uDC48\\uDC80-\\uDCB2\\uDCC0-\\uDCF2]|\\uD804[\\uDC03-\\uDC37\\uDC83-\\uDCAF\\uDCD0-\\uDCE8\\uDD03-\\uDD26\\uDD50-\\uDD72\\uDD76\\uDD83-\\uDDB2\\uDDC1-\\uDDC4\\uDDDA\\uDDDC\\uDE00-\\uDE11\\uDE13-\\uDE2B\\uDE80-\\uDE86\\uDE88\\uDE8A-\\uDE8D\\uDE8F-\\uDE9D\\uDE9F-\\uDEA8\\uDEB0-\\uDEDE\\uDF05-\\uDF0C\\uDF0F\\uDF10\\uDF13-\\uDF28\\uDF2A-\\uDF30\\uDF32\\uDF33\\uDF35-\\uDF39\\uDF3D\\uDF50\\uDF5D-\\uDF61]|\\uD805[\\uDC00-\\uDC34\\uDC47-\\uDC4A\\uDC80-\\uDCAF\\uDCC4\\uDCC5\\uDCC7\\uDD80-\\uDDAE\\uDDD8-\\uDDDB\\uDE00-\\uDE2F\\uDE44\\uDE80-\\uDEAA\\uDF00-\\uDF19]|\\uD806[\\uDCA0-\\uDCDF\\uDCFF\\uDE00\\uDE0B-\\uDE32\\uDE3A\\uDE50\\uDE5C-\\uDE83\\uDE86-\\uDE89\\uDEC0-\\uDEF8]|\\uD807[\\uDC00-\\uDC08\\uDC0A-\\uDC2E\\uDC40\\uDC72-\\uDC8F\\uDD00-\\uDD06\\uDD08\\uDD09\\uDD0B-\\uDD30\\uDD46]|\\uD808[\\uDC00-\\uDF99]|\\uD809[\\uDC00-\\uDC6E\\uDC80-\\uDD43]|[\\uD80C\\uD81C-\\uD820\\uD840-\\uD868\\uD86A-\\uD86C\\uD86F-\\uD872\\uD874-\\uD879][\\uDC00-\\uDFFF]|\\uD80D[\\uDC00-\\uDC2E]|\\uD811[\\uDC00-\\uDE46]|\\uD81A[\\uDC00-\\uDE38\\uDE40-\\uDE5E\\uDED0-\\uDEED\\uDF00-\\uDF2F\\uDF40-\\uDF43\\uDF63-\\uDF77\\uDF7D-\\uDF8F]|\\uD81B[\\uDF00-\\uDF44\\uDF50\\uDF93-\\uDF9F\\uDFE0\\uDFE1]|\\uD821[\\uDC00-\\uDFEC]|\\uD822[\\uDC00-\\uDEF2]|\\uD82C[\\uDC00-\\uDD1E\\uDD70-\\uDEFB]|\\uD82F[\\uDC00-\\uDC6A\\uDC70-\\uDC7C\\uDC80-\\uDC88\\uDC90-\\uDC99]|\\uD835[\\uDC00-\\uDC54\\uDC56-\\uDC9C\\uDC9E\\uDC9F\\uDCA2\\uDCA5\\uDCA6\\uDCA9-\\uDCAC\\uDCAE-\\uDCB9\\uDCBB\\uDCBD-\\uDCC3\\uDCC5-\\uDD05\\uDD07-\\uDD0A\\uDD0D-\\uDD14\\uDD16-\\uDD1C\\uDD1E-\\uDD39\\uDD3B-\\uDD3E\\uDD40-\\uDD44\\uDD46\\uDD4A-\\uDD50\\uDD52-\\uDEA5\\uDEA8-\\uDEC0\\uDEC2-\\uDEDA\\uDEDC-\\uDEFA\\uDEFC-\\uDF14\\uDF16-\\uDF34\\uDF36-\\uDF4E\\uDF50-\\uDF6E\\uDF70-\\uDF88\\uDF8A-\\uDFA8\\uDFAA-\\uDFC2\\uDFC4-\\uDFCB]|\\uD83A[\\uDC00-\\uDCC4\\uDD00-\\uDD43]|\\uD83B[\\uDE00-\\uDE03\\uDE05-\\uDE1F\\uDE21\\uDE22\\uDE24\\uDE27\\uDE29-\\uDE32\\uDE34-\\uDE37\\uDE39\\uDE3B\\uDE42\\uDE47\\uDE49\\uDE4B\\uDE4D-\\uDE4F\\uDE51\\uDE52\\uDE54\\uDE57\\uDE59\\uDE5B\\uDE5D\\uDE5F\\uDE61\\uDE62\\uDE64\\uDE67-\\uDE6A\\uDE6C-\\uDE72\\uDE74-\\uDE77\\uDE79-\\uDE7C\\uDE7E\\uDE80-\\uDE89\\uDE8B-\\uDE9B\\uDEA1-\\uDEA3\\uDEA5-\\uDEA9\\uDEAB-\\uDEBB]|\\uD869[\\uDC00-\\uDED6\\uDF00-\\uDFFF]|\\uD86D[\\uDC00-\\uDF34\\uDF40-\\uDFFF]|\\uD86E[\\uDC00-\\uDC1D\\uDC20-\\uDFFF]|\\uD873[\\uDC00-\\uDEA1\\uDEB0-\\uDFFF]|\\uD87A[\\uDC00-\\uDFE0]|\\uD87E[\\uDC00-\\uDE1D]/;var ID_Continue=/[\\xAA\\xB5\\xBA\\xC0-\\xD6\\xD8-\\xF6\\xF8-\\u02C1\\u02C6-\\u02D1\\u02E0-\\u02E4\\u02EC\\u02EE\\u0300-\\u0374\\u0376\\u0377\\u037A-\\u037D\\u037F\\u0386\\u0388-\\u038A\\u038C\\u038E-\\u03A1\\u03A3-\\u03F5\\u03F7-\\u0481\\u0483-\\u0487\\u048A-\\u052F\\u0531-\\u0556\\u0559\\u0561-\\u0587\\u0591-\\u05BD\\u05BF\\u05C1\\u05C2\\u05C4\\u05C5\\u05C7\\u05D0-\\u05EA\\u05F0-\\u05F2\\u0610-\\u061A\\u0620-\\u0669\\u066E-\\u06D3\\u06D5-\\u06DC\\u06DF-\\u06E8\\u06EA-\\u06FC\\u06FF\\u0710-\\u074A\\u074D-\\u07B1\\u07C0-\\u07F5\\u07FA\\u0800-\\u082D\\u0840-\\u085B\\u0860-\\u086A\\u08A0-\\u08B4\\u08B6-\\u08BD\\u08D4-\\u08E1\\u08E3-\\u0963\\u0966-\\u096F\\u0971-\\u0983\\u0985-\\u098C\\u098F\\u0990\\u0993-\\u09A8\\u09AA-\\u09B0\\u09B2\\u09B6-\\u09B9\\u09BC-\\u09C4\\u09C7\\u09C8\\u09CB-\\u09CE\\u09D7\\u09DC\\u09DD\\u09DF-\\u09E3\\u09E6-\\u09F1\\u09FC\\u0A01-\\u0A03\\u0A05-\\u0A0A\\u0A0F\\u0A10\\u0A13-\\u0A28\\u0A2A-\\u0A30\\u0A32\\u0A33\\u0A35\\u0A36\\u0A38\\u0A39\\u0A3C\\u0A3E-\\u0A42\\u0A47\\u0A48\\u0A4B-\\u0A4D\\u0A51\\u0A59-\\u0A5C\\u0A5E\\u0A66-\\u0A75\\u0A81-\\u0A83\\u0A85-\\u0A8D\\u0A8F-\\u0A91\\u0A93-\\u0AA8\\u0AAA-\\u0AB0\\u0AB2\\u0AB3\\u0AB5-\\u0AB9\\u0ABC-\\u0AC5\\u0AC7-\\u0AC9\\u0ACB-\\u0ACD\\u0AD0\\u0AE0-\\u0AE3\\u0AE6-\\u0AEF\\u0AF9-\\u0AFF\\u0B01-\\u0B03\\u0B05-\\u0B0C\\u0B0F\\u0B10\\u0B13-\\u0B28\\u0B2A-\\u0B30\\u0B32\\u0B33\\u0B35-\\u0B39\\u0B3C-\\u0B44\\u0B47\\u0B48\\u0B4B-\\u0B4D\\u0B56\\u0B57\\u0B5C\\u0B5D\\u0B5F-\\u0B63\\u0B66-\\u0B6F\\u0B71\\u0B82\\u0B83\\u0B85-\\u0B8A\\u0B8E-\\u0B90\\u0B92-\\u0B95\\u0B99\\u0B9A\\u0B9C\\u0B9E\\u0B9F\\u0BA3\\u0BA4\\u0BA8-\\u0BAA\\u0BAE-\\u0BB9\\u0BBE-\\u0BC2\\u0BC6-\\u0BC8\\u0BCA-\\u0BCD\\u0BD0\\u0BD7\\u0BE6-\\u0BEF\\u0C00-\\u0C03\\u0C05-\\u0C0C\\u0C0E-\\u0C10\\u0C12-\\u0C28\\u0C2A-\\u0C39\\u0C3D-\\u0C44\\u0C46-\\u0C48\\u0C4A-\\u0C4D\\u0C55\\u0C56\\u0C58-\\u0C5A\\u0C60-\\u0C63\\u0C66-\\u0C6F\\u0C80-\\u0C83\\u0C85-\\u0C8C\\u0C8E-\\u0C90\\u0C92-\\u0CA8\\u0CAA-\\u0CB3\\u0CB5-\\u0CB9\\u0CBC-\\u0CC4\\u0CC6-\\u0CC8\\u0CCA-\\u0CCD\\u0CD5\\u0CD6\\u0CDE\\u0CE0-\\u0CE3\\u0CE6-\\u0CEF\\u0CF1\\u0CF2\\u0D00-\\u0D03\\u0D05-\\u0D0C\\u0D0E-\\u0D10\\u0D12-\\u0D44\\u0D46-\\u0D48\\u0D4A-\\u0D4E\\u0D54-\\u0D57\\u0D5F-\\u0D63\\u0D66-\\u0D6F\\u0D7A-\\u0D7F\\u0D82\\u0D83\\u0D85-\\u0D96\\u0D9A-\\u0DB1\\u0DB3-\\u0DBB\\u0DBD\\u0DC0-\\u0DC6\\u0DCA\\u0DCF-\\u0DD4\\u0DD6\\u0DD8-\\u0DDF\\u0DE6-\\u0DEF\\u0DF2\\u0DF3\\u0E01-\\u0E3A\\u0E40-\\u0E4E\\u0E50-\\u0E59\\u0E81\\u0E82\\u0E84\\u0E87\\u0E88\\u0E8A\\u0E8D\\u0E94-\\u0E97\\u0E99-\\u0E9F\\u0EA1-\\u0EA3\\u0EA5\\u0EA7\\u0EAA\\u0EAB\\u0EAD-\\u0EB9\\u0EBB-\\u0EBD\\u0EC0-\\u0EC4\\u0EC6\\u0EC8-\\u0ECD\\u0ED0-\\u0ED9\\u0EDC-\\u0EDF\\u0F00\\u0F18\\u0F19\\u0F20-\\u0F29\\u0F35\\u0F37\\u0F39\\u0F3E-\\u0F47\\u0F49-\\u0F6C\\u0F71-\\u0F84\\u0F86-\\u0F97\\u0F99-\\u0FBC\\u0FC6\\u1000-\\u1049\\u1050-\\u109D\\u10A0-\\u10C5\\u10C7\\u10CD\\u10D0-\\u10FA\\u10FC-\\u1248\\u124A-\\u124D\\u1250-\\u1256\\u1258\\u125A-\\u125D\\u1260-\\u1288\\u128A-\\u128D\\u1290-\\u12B0\\u12B2-\\u12B5\\u12B8-\\u12BE\\u12C0\\u12C2-\\u12C5\\u12C8-\\u12D6\\u12D8-\\u1310\\u1312-\\u1315\\u1318-\\u135A\\u135D-\\u135F\\u1380-\\u138F\\u13A0-\\u13F5\\u13F8-\\u13FD\\u1401-\\u166C\\u166F-\\u167F\\u1681-\\u169A\\u16A0-\\u16EA\\u16EE-\\u16F8\\u1700-\\u170C\\u170E-\\u1714\\u1720-\\u1734\\u1740-\\u1753\\u1760-\\u176C\\u176E-\\u1770\\u1772\\u1773\\u1780-\\u17D3\\u17D7\\u17DC\\u17DD\\u17E0-\\u17E9\\u180B-\\u180D\\u1810-\\u1819\\u1820-\\u1877\\u1880-\\u18AA\\u18B0-\\u18F5\\u1900-\\u191E\\u1920-\\u192B\\u1930-\\u193B\\u1946-\\u196D\\u1970-\\u1974\\u1980-\\u19AB\\u19B0-\\u19C9\\u19D0-\\u19D9\\u1A00-\\u1A1B\\u1A20-\\u1A5E\\u1A60-\\u1A7C\\u1A7F-\\u1A89\\u1A90-\\u1A99\\u1AA7\\u1AB0-\\u1ABD\\u1B00-\\u1B4B\\u1B50-\\u1B59\\u1B6B-\\u1B73\\u1B80-\\u1BF3\\u1C00-\\u1C37\\u1C40-\\u1C49\\u1C4D-\\u1C7D\\u1C80-\\u1C88\\u1CD0-\\u1CD2\\u1CD4-\\u1CF9\\u1D00-\\u1DF9\\u1DFB-\\u1F15\\u1F18-\\u1F1D\\u1F20-\\u1F45\\u1F48-\\u1F4D\\u1F50-\\u1F57\\u1F59\\u1F5B\\u1F5D\\u1F5F-\\u1F7D\\u1F80-\\u1FB4\\u1FB6-\\u1FBC\\u1FBE\\u1FC2-\\u1FC4\\u1FC6-\\u1FCC\\u1FD0-\\u1FD3\\u1FD6-\\u1FDB\\u1FE0-\\u1FEC\\u1FF2-\\u1FF4\\u1FF6-\\u1FFC\\u203F\\u2040\\u2054\\u2071\\u207F\\u2090-\\u209C\\u20D0-\\u20DC\\u20E1\\u20E5-\\u20F0\\u2102\\u2107\\u210A-\\u2113\\u2115\\u2119-\\u211D\\u2124\\u2126\\u2128\\u212A-\\u212D\\u212F-\\u2139\\u213C-\\u213F\\u2145-\\u2149\\u214E\\u2160-\\u2188\\u2C00-\\u2C2E\\u2C30-\\u2C5E\\u2C60-\\u2CE4\\u2CEB-\\u2CF3\\u2D00-\\u2D25\\u2D27\\u2D2D\\u2D30-\\u2D67\\u2D6F\\u2D7F-\\u2D96\\u2DA0-\\u2DA6\\u2DA8-\\u2DAE\\u2DB0-\\u2DB6\\u2DB8-\\u2DBE\\u2DC0-\\u2DC6\\u2DC8-\\u2DCE\\u2DD0-\\u2DD6\\u2DD8-\\u2DDE\\u2DE0-\\u2DFF\\u2E2F\\u3005-\\u3007\\u3021-\\u302F\\u3031-\\u3035\\u3038-\\u303C\\u3041-\\u3096\\u3099\\u309A\\u309D-\\u309F\\u30A1-\\u30FA\\u30FC-\\u30FF\\u3105-\\u312E\\u3131-\\u318E\\u31A0-\\u31BA\\u31F0-\\u31FF\\u3400-\\u4DB5\\u4E00-\\u9FEA\\uA000-\\uA48C\\uA4D0-\\uA4FD\\uA500-\\uA60C\\uA610-\\uA62B\\uA640-\\uA66F\\uA674-\\uA67D\\uA67F-\\uA6F1\\uA717-\\uA71F\\uA722-\\uA788\\uA78B-\\uA7AE\\uA7B0-\\uA7B7\\uA7F7-\\uA827\\uA840-\\uA873\\uA880-\\uA8C5\\uA8D0-\\uA8D9\\uA8E0-\\uA8F7\\uA8FB\\uA8FD\\uA900-\\uA92D\\uA930-\\uA953\\uA960-\\uA97C\\uA980-\\uA9C0\\uA9CF-\\uA9D9\\uA9E0-\\uA9FE\\uAA00-\\uAA36\\uAA40-\\uAA4D\\uAA50-\\uAA59\\uAA60-\\uAA76\\uAA7A-\\uAAC2\\uAADB-\\uAADD\\uAAE0-\\uAAEF\\uAAF2-\\uAAF6\\uAB01-\\uAB06\\uAB09-\\uAB0E\\uAB11-\\uAB16\\uAB20-\\uAB26\\uAB28-\\uAB2E\\uAB30-\\uAB5A\\uAB5C-\\uAB65\\uAB70-\\uABEA\\uABEC\\uABED\\uABF0-\\uABF9\\uAC00-\\uD7A3\\uD7B0-\\uD7C6\\uD7CB-\\uD7FB\\uF900-\\uFA6D\\uFA70-\\uFAD9\\uFB00-\\uFB06\\uFB13-\\uFB17\\uFB1D-\\uFB28\\uFB2A-\\uFB36\\uFB38-\\uFB3C\\uFB3E\\uFB40\\uFB41\\uFB43\\uFB44\\uFB46-\\uFBB1\\uFBD3-\\uFD3D\\uFD50-\\uFD8F\\uFD92-\\uFDC7\\uFDF0-\\uFDFB\\uFE00-\\uFE0F\\uFE20-\\uFE2F\\uFE33\\uFE34\\uFE4D-\\uFE4F\\uFE70-\\uFE74\\uFE76-\\uFEFC\\uFF10-\\uFF19\\uFF21-\\uFF3A\\uFF3F\\uFF41-\\uFF5A\\uFF66-\\uFFBE\\uFFC2-\\uFFC7\\uFFCA-\\uFFCF\\uFFD2-\\uFFD7\\uFFDA-\\uFFDC]|\\uD800[\\uDC00-\\uDC0B\\uDC0D-\\uDC26\\uDC28-\\uDC3A\\uDC3C\\uDC3D\\uDC3F-\\uDC4D\\uDC50-\\uDC5D\\uDC80-\\uDCFA\\uDD40-\\uDD74\\uDDFD\\uDE80-\\uDE9C\\uDEA0-\\uDED0\\uDEE0\\uDF00-\\uDF1F\\uDF2D-\\uDF4A\\uDF50-\\uDF7A\\uDF80-\\uDF9D\\uDFA0-\\uDFC3\\uDFC8-\\uDFCF\\uDFD1-\\uDFD5]|\\uD801[\\uDC00-\\uDC9D\\uDCA0-\\uDCA9\\uDCB0-\\uDCD3\\uDCD8-\\uDCFB\\uDD00-\\uDD27\\uDD30-\\uDD63\\uDE00-\\uDF36\\uDF40-\\uDF55\\uDF60-\\uDF67]|\\uD802[\\uDC00-\\uDC05\\uDC08\\uDC0A-\\uDC35\\uDC37\\uDC38\\uDC3C\\uDC3F-\\uDC55\\uDC60-\\uDC76\\uDC80-\\uDC9E\\uDCE0-\\uDCF2\\uDCF4\\uDCF5\\uDD00-\\uDD15\\uDD20-\\uDD39\\uDD80-\\uDDB7\\uDDBE\\uDDBF\\uDE00-\\uDE03\\uDE05\\uDE06\\uDE0C-\\uDE13\\uDE15-\\uDE17\\uDE19-\\uDE33\\uDE38-\\uDE3A\\uDE3F\\uDE60-\\uDE7C\\uDE80-\\uDE9C\\uDEC0-\\uDEC7\\uDEC9-\\uDEE6\\uDF00-\\uDF35\\uDF40-\\uDF55\\uDF60-\\uDF72\\uDF80-\\uDF91]|\\uD803[\\uDC00-\\uDC48\\uDC80-\\uDCB2\\uDCC0-\\uDCF2]|\\uD804[\\uDC00-\\uDC46\\uDC66-\\uDC6F\\uDC7F-\\uDCBA\\uDCD0-\\uDCE8\\uDCF0-\\uDCF9\\uDD00-\\uDD34\\uDD36-\\uDD3F\\uDD50-\\uDD73\\uDD76\\uDD80-\\uDDC4\\uDDCA-\\uDDCC\\uDDD0-\\uDDDA\\uDDDC\\uDE00-\\uDE11\\uDE13-\\uDE37\\uDE3E\\uDE80-\\uDE86\\uDE88\\uDE8A-\\uDE8D\\uDE8F-\\uDE9D\\uDE9F-\\uDEA8\\uDEB0-\\uDEEA\\uDEF0-\\uDEF9\\uDF00-\\uDF03\\uDF05-\\uDF0C\\uDF0F\\uDF10\\uDF13-\\uDF28\\uDF2A-\\uDF30\\uDF32\\uDF33\\uDF35-\\uDF39\\uDF3C-\\uDF44\\uDF47\\uDF48\\uDF4B-\\uDF4D\\uDF50\\uDF57\\uDF5D-\\uDF63\\uDF66-\\uDF6C\\uDF70-\\uDF74]|\\uD805[\\uDC00-\\uDC4A\\uDC50-\\uDC59\\uDC80-\\uDCC5\\uDCC7\\uDCD0-\\uDCD9\\uDD80-\\uDDB5\\uDDB8-\\uDDC0\\uDDD8-\\uDDDD\\uDE00-\\uDE40\\uDE44\\uDE50-\\uDE59\\uDE80-\\uDEB7\\uDEC0-\\uDEC9\\uDF00-\\uDF19\\uDF1D-\\uDF2B\\uDF30-\\uDF39]|\\uD806[\\uDCA0-\\uDCE9\\uDCFF\\uDE00-\\uDE3E\\uDE47\\uDE50-\\uDE83\\uDE86-\\uDE99\\uDEC0-\\uDEF8]|\\uD807[\\uDC00-\\uDC08\\uDC0A-\\uDC36\\uDC38-\\uDC40\\uDC50-\\uDC59\\uDC72-\\uDC8F\\uDC92-\\uDCA7\\uDCA9-\\uDCB6\\uDD00-\\uDD06\\uDD08\\uDD09\\uDD0B-\\uDD36\\uDD3A\\uDD3C\\uDD3D\\uDD3F-\\uDD47\\uDD50-\\uDD59]|\\uD808[\\uDC00-\\uDF99]|\\uD809[\\uDC00-\\uDC6E\\uDC80-\\uDD43]|[\\uD80C\\uD81C-\\uD820\\uD840-\\uD868\\uD86A-\\uD86C\\uD86F-\\uD872\\uD874-\\uD879][\\uDC00-\\uDFFF]|\\uD80D[\\uDC00-\\uDC2E]|\\uD811[\\uDC00-\\uDE46]|\\uD81A[\\uDC00-\\uDE38\\uDE40-\\uDE5E\\uDE60-\\uDE69\\uDED0-\\uDEED\\uDEF0-\\uDEF4\\uDF00-\\uDF36\\uDF40-\\uDF43\\uDF50-\\uDF59\\uDF63-\\uDF77\\uDF7D-\\uDF8F]|\\uD81B[\\uDF00-\\uDF44\\uDF50-\\uDF7E\\uDF8F-\\uDF9F\\uDFE0\\uDFE1]|\\uD821[\\uDC00-\\uDFEC]|\\uD822[\\uDC00-\\uDEF2]|\\uD82C[\\uDC00-\\uDD1E\\uDD70-\\uDEFB]|\\uD82F[\\uDC00-\\uDC6A\\uDC70-\\uDC7C\\uDC80-\\uDC88\\uDC90-\\uDC99\\uDC9D\\uDC9E]|\\uD834[\\uDD65-\\uDD69\\uDD6D-\\uDD72\\uDD7B-\\uDD82\\uDD85-\\uDD8B\\uDDAA-\\uDDAD\\uDE42-\\uDE44]|\\uD835[\\uDC00-\\uDC54\\uDC56-\\uDC9C\\uDC9E\\uDC9F\\uDCA2\\uDCA5\\uDCA6\\uDCA9-\\uDCAC\\uDCAE-\\uDCB9\\uDCBB\\uDCBD-\\uDCC3\\uDCC5-\\uDD05\\uDD07-\\uDD0A\\uDD0D-\\uDD14\\uDD16-\\uDD1C\\uDD1E-\\uDD39\\uDD3B-\\uDD3E\\uDD40-\\uDD44\\uDD46\\uDD4A-\\uDD50\\uDD52-\\uDEA5\\uDEA8-\\uDEC0\\uDEC2-\\uDEDA\\uDEDC-\\uDEFA\\uDEFC-\\uDF14\\uDF16-\\uDF34\\uDF36-\\uDF4E\\uDF50-\\uDF6E\\uDF70-\\uDF88\\uDF8A-\\uDFA8\\uDFAA-\\uDFC2\\uDFC4-\\uDFCB\\uDFCE-\\uDFFF]|\\uD836[\\uDE00-\\uDE36\\uDE3B-\\uDE6C\\uDE75\\uDE84\\uDE9B-\\uDE9F\\uDEA1-\\uDEAF]|\\uD838[\\uDC00-\\uDC06\\uDC08-\\uDC18\\uDC1B-\\uDC21\\uDC23\\uDC24\\uDC26-\\uDC2A]|\\uD83A[\\uDC00-\\uDCC4\\uDCD0-\\uDCD6\\uDD00-\\uDD4A\\uDD50-\\uDD59]|\\uD83B[\\uDE00-\\uDE03\\uDE05-\\uDE1F\\uDE21\\uDE22\\uDE24\\uDE27\\uDE29-\\uDE32\\uDE34-\\uDE37\\uDE39\\uDE3B\\uDE42\\uDE47\\uDE49\\uDE4B\\uDE4D-\\uDE4F\\uDE51\\uDE52\\uDE54\\uDE57\\uDE59\\uDE5B\\uDE5D\\uDE5F\\uDE61\\uDE62\\uDE64\\uDE67-\\uDE6A\\uDE6C-\\uDE72\\uDE74-\\uDE77\\uDE79-\\uDE7C\\uDE7E\\uDE80-\\uDE89\\uDE8B-\\uDE9B\\uDEA1-\\uDEA3\\uDEA5-\\uDEA9\\uDEAB-\\uDEBB]|\\uD869[\\uDC00-\\uDED6\\uDF00-\\uDFFF]|\\uD86D[\\uDC00-\\uDF34\\uDF40-\\uDFFF]|\\uD86E[\\uDC00-\\uDC1D\\uDC20-\\uDFFF]|\\uD873[\\uDC00-\\uDEA1\\uDEB0-\\uDFFF]|\\uD87A[\\uDC00-\\uDFE0]|\\uD87E[\\uDC00-\\uDE1D]|\\uDB40[\\uDD00-\\uDDEF]/;var unicode={Space_Separator:Space_Separator,ID_Start:ID_Start,ID_Continue:ID_Continue};var util={isSpaceSeparator:function isSpaceSeparator(c){return typeof c==="string"&&unicode.Space_Separator.test(c)},isIdStartChar:function isIdStartChar(c){return typeof c==="string"&&(c>="a"&&c<="z"||c>="A"&&c<="Z"||c==="$"||c==="_"||unicode.ID_Start.test(c))},isIdContinueChar:function isIdContinueChar(c){return typeof c==="string"&&(c>="a"&&c<="z"||c>="A"&&c<="Z"||c>="0"&&c<="9"||c==="$"||c==="_"||c==="‌"||c==="‍"||unicode.ID_Continue.test(c))},isDigit:function isDigit(c){return typeof c==="string"&&/[0-9]/.test(c)},isHexDigit:function isHexDigit(c){return typeof c==="string"&&/[0-9A-Fa-f]/.test(c)}};var source;var parseState;var stack;var pos;var line;var column;var token;var key;var root;var parse=function parse(text,reviver){source=String(text);parseState="start";stack=[];pos=0;line=1;column=0;token=undefined;key=undefined;root=undefined;do{token=lex();parseStates[parseState]()}while(token.type!=="eof");if(typeof reviver==="function"){return internalize({"":root},"",reviver)}return root};function internalize(holder,name,reviver){var value=holder[name];if(value!=null&&typeof value==="object"){if(Array.isArray(value)){for(var i=0;i0){var c=peek();if(!util.isHexDigit(c)){throw invalidChar(read())}buffer+=read()}return String.fromCodePoint(parseInt(buffer,16))}var parseStates={start:function start(){if(token.type==="eof"){throw invalidEOF()}push()},beforePropertyName:function beforePropertyName(){switch(token.type){case"identifier":case"string":key=token.value;parseState="afterPropertyName";return;case"punctuator":pop();return;case"eof":throw invalidEOF()}},afterPropertyName:function afterPropertyName(){if(token.type==="eof"){throw invalidEOF()}parseState="beforePropertyValue"},beforePropertyValue:function beforePropertyValue(){if(token.type==="eof"){throw invalidEOF()}push()},beforeArrayValue:function beforeArrayValue(){if(token.type==="eof"){throw invalidEOF()}if(token.type==="punctuator"&&token.value==="]"){pop();return}push()},afterPropertyValue:function afterPropertyValue(){if(token.type==="eof"){throw invalidEOF()}switch(token.value){case",":parseState="beforePropertyName";return;case"}":pop()}},afterArrayValue:function afterArrayValue(){if(token.type==="eof"){throw invalidEOF()}switch(token.value){case",":parseState="beforeArrayValue";return;case"]":pop()}},end:function end(){}};function push(){var value;switch(token.type){case"punctuator":switch(token.value){case"{":value={};break;case"[":value=[];break}break;case"null":case"boolean":case"numeric":case"string":value=token.value;break}if(root===undefined){root=value}else{var parent=stack[stack.length-1];if(Array.isArray(parent)){parent.push(value)}else{Object.defineProperty(parent,key,{value:value,writable:true,enumerable:true,configurable:true})}}if(value!==null&&typeof value==="object"){stack.push(value);if(Array.isArray(value)){parseState="beforeArrayValue"}else{parseState="beforePropertyName"}}else{var current=stack[stack.length-1];if(current==null){parseState="end"}else if(Array.isArray(current)){parseState="afterArrayValue"}else{parseState="afterPropertyValue"}}}function pop(){stack.pop();var current=stack[stack.length-1];if(current==null){parseState="end"}else if(Array.isArray(current)){parseState="afterArrayValue"}else{parseState="afterPropertyValue"}}function invalidChar(c){if(c===undefined){return syntaxError("JSON5: invalid end of input at "+line+":"+column)}return syntaxError("JSON5: invalid character \'"+formatChar(c)+"\' at "+line+":"+column)}function invalidEOF(){return syntaxError("JSON5: invalid end of input at "+line+":"+column)}function invalidIdentifier(){column-=5;return syntaxError("JSON5: invalid identifier character at "+line+":"+column)}function separatorChar(c){console.warn("JSON5: \'"+formatChar(c)+"\' in strings is not valid ECMAScript; consider escaping")}function formatChar(c){var replacements={"\'":"\\\\\'",\'"\':\'\\\\"\',"\\\\":"\\\\\\\\","\\b":"\\\\b","\\f":"\\\\f","\\n":"\\\\n","\\r":"\\\\r","\\t":"\\\\t","\\v":"\\\\v","\\0":"\\\\0","\\u2028":"\\\\u2028","\\u2029":"\\\\u2029"};if(replacements[c]){return replacements[c]}if(c<" "){var hexString=c.charCodeAt(0).toString(16);return"\\\\x"+("00"+hexString).substring(hexString.length)}return c}function syntaxError(message){var err=new SyntaxError(message);err.lineNumber=line;err.columnNumber=column;return err}var stringify=function stringify(value,replacer,space){var stack=[];var indent="";var propertyList;var replacerFunc;var gap="";var quote;if(replacer!=null&&typeof replacer==="object"&&!Array.isArray(replacer)){space=replacer.space;quote=replacer.quote;replacer=replacer.replacer}if(typeof replacer==="function"){replacerFunc=replacer}else if(Array.isArray(replacer)){propertyList=[];for(var i=0,list=replacer;i0){space=Math.min(10,Math.floor(space));gap=" ".substr(0,space)}}else if(typeof space==="string"){gap=space.substr(0,10)}return serializeProperty("",{"":value});function serializeProperty(key,holder){var value=holder[key];if(value!=null){if(typeof value.toJSON5==="function"){value=value.toJSON5(key)}else if(typeof value.toJSON==="function"){value=value.toJSON(key)}}if(replacerFunc){value=replacerFunc.call(holder,key,value)}if(value instanceof Number){value=Number(value)}else if(value instanceof String){value=String(value)}else if(value instanceof Boolean){value=value.valueOf()}switch(value){case null:return"null";case true:return"true";case false:return"false"}if(typeof value==="string"){return quoteString(value,false)}if(typeof value==="number"){return String(value)}if(typeof value==="object"){return Array.isArray(value)?serializeArray(value):serializeObject(value)}return undefined}function quoteString(value){var quotes={"\'":.1,\'"\':.2};var replacements={"\'":"\\\\\'",\'"\':\'\\\\"\',"\\\\":"\\\\\\\\","\\b":"\\\\b","\\f":"\\\\f","\\n":"\\\\n","\\r":"\\\\r","\\t":"\\\\t","\\v":"\\\\v","\\0":"\\\\0","\\u2028":"\\\\u2028","\\u2029":"\\\\u2029"};var product="";for(var i=0;i=0){throw TypeError("Converting circular structure to JSON5")}stack.push(value);var stepback=indent;indent=indent+gap;var keys=propertyList||Object.keys(value);var partial=[];for(var i=0,list=keys;i=0){throw TypeError("Converting circular structure to JSON5")}stack.push(value);var stepback=indent;indent=indent+gap;var partial=[];for(var i=0;i{e.exports='"use strict";(function(q){function y(){}function C(b){var d=b.charCodeAt(0)|0;if(55296<=d)if(56319>=d)if(b=b.charCodeAt(1)|0,56320<=b&&57343>=b){if(d=(d<<10)+b-56613888|0,65535>18,128|d>>12&63,128|d>>6&63,128|d&63)}else d=65533;else 57343>=d&&(d=65533);return 2047>=d?v(192|d>>6,128|d&63):v(224|d>>12,128|d>>6&63,128|d&63)}function z(){}function A(b,d){var g=void 0===b?"":(""+b).replace(D,C),c=g.length|0,a=0,k=0,f=d.length|0,h=b.length|0;f>4){case 0:case 1:case 2:case 3:case 4:case 5:case 6:case 7:k=k+1|0;case 8:case 9:case 10:case 11:break;case 12:case 13:if((a+1|0)>4){case 15:n=b[c=c+1|0]&255;if(2!==n>>6||247>6?r+4|0:24,h=h+256&768;case 13:case 12:n=b[c=c+1|0]&255,l<<=6,l|=(h&31)<<6|n&63,r=r+7|0,c>6&&l>>r&&1114112>l?(h=l,l=l-65536|0,0<=l&&(p=(l>>10)+55296|0,h=(l&1023)+56320|0,31>m?(e[m]=p,m=m+1|0,p=-1):(n=p,p=h,h=n))):(h>>=8,c=c-h-1|0,h=65533),l=r=0,f=c<=k?32:a-c|0;default:e[m]=h;continue;case 11:case 10:case 9:case 8:}e[m]=65533}g+=v(e[0],e[1],e[2],e[3],e[4],e[5],e[6],e[7],e[8],e[9],e[10],e[11],e[12],e[13],e[14],e[15],e[16],e[17],e[18],e[19],e[20],e[21],e[22],e[23],e[24],e[25],e[26],e[27],e[28],e[29],e[30],e[31]);32>m&&(g=g.slice(0,m-32|0));if(c>>31,p=-1,g.length=f)g[a]=f;else{if(2047>=f)g[a]=192|f>>6;else{a:{if(55296<=f)if(56319>=f){var h=b.charCodeAt(c=c+1|0)|0;if(56320<=h&&57343>=h){f=(f<<10)+h-56613888|0;if(65535>18;g[a=a+1|0]=128|f>>12&63;g[a=a+1|0]=128|f>>6&63;g[a=a+1|0]=128|f&63;continue}break a}f=65533}else 57343>=f&&(f=65533);!k&&c<<1>12;g[a=a+1|0]=128|f>>6&63}g[a=a+1|0]=128|f&63}}return t?g.subarray(0,a):g.slice(0,a)};B.encodeInto=A;if(!u)q.TextDecoder=y,q.TextEncoder=z;else if(!(q=u.prototype).encodeInto){var I=new u;q.encodeInto=function(b,d){var g=b.length|0,c=d.length|0;if(g>1){var a=I.encode(b);if((a.length|0){e.exports='(function(root,factory){if(typeof exports==="object"){module.exports=exports=factory()}else if(typeof define==="function"&&define.amd){define([],factory)}else{globalThis.CryptoJS=factory()}})(this,function(){var CryptoJS=CryptoJS||function(Math,undefined){var crypto;if(typeof window!=="undefined"&&window.crypto){crypto=window.crypto}if(typeof self!=="undefined"&&self.crypto){crypto=self.crypto}if(typeof globalThis!=="undefined"&&globalThis.crypto){crypto=globalThis.crypto}if(!crypto&&typeof window!=="undefined"&&window.msCrypto){crypto=window.msCrypto}if(!crypto&&typeof global!=="undefined"&&global.crypto){crypto=global.crypto}if(!crypto&&typeof require==="function"){try{crypto=require("crypto")}catch(err){}}var cryptoSecureRandomInt=function(){if(crypto){if(typeof crypto.getRandomValues==="function"){try{return crypto.getRandomValues(new Uint32Array(1))[0]}catch(err){}}if(typeof crypto.randomBytes==="function"){try{return crypto.randomBytes(4).readInt32LE()}catch(err){}}}throw new Error("Native crypto module could not be used to get secure random number.")};var create=Object.create||function(){function F(){}return function(obj){var subtype;F.prototype=obj;subtype=new F;F.prototype=null;return subtype}}();var C={};var C_lib=C.lib={};var Base=C_lib.Base=function(){return{extend:function(overrides){var subtype=create(this);if(overrides){subtype.mixIn(overrides)}if(!subtype.hasOwnProperty("init")||this.init===subtype.init){subtype.init=function(){subtype.$super.init.apply(this,arguments)}}subtype.init.prototype=subtype;subtype.$super=this;return subtype},create:function(){var instance=this.extend();instance.init.apply(instance,arguments);return instance},init:function(){},mixIn:function(properties){for(var propertyName in properties){if(properties.hasOwnProperty(propertyName)){this[propertyName]=properties[propertyName]}}if(properties.hasOwnProperty("toString")){this.toString=properties.toString}},clone:function(){return this.init.prototype.extend(this)}}}();var WordArray=C_lib.WordArray=Base.extend({init:function(words,sigBytes){words=this.words=words||[];if(sigBytes!=undefined){this.sigBytes=sigBytes}else{this.sigBytes=words.length*4}},toString:function(encoder){return(encoder||Hex).stringify(this)},concat:function(wordArray){var thisWords=this.words;var thatWords=wordArray.words;var thisSigBytes=this.sigBytes;var thatSigBytes=wordArray.sigBytes;this.clamp();if(thisSigBytes%4){for(var i=0;i>>2]>>>24-i%4*8&255;thisWords[thisSigBytes+i>>>2]|=thatByte<<24-(thisSigBytes+i)%4*8}}else{for(var j=0;j>>2]=thatWords[j>>>2]}}this.sigBytes+=thatSigBytes;return this},clamp:function(){var words=this.words;var sigBytes=this.sigBytes;words[sigBytes>>>2]&=4294967295<<32-sigBytes%4*8;words.length=Math.ceil(sigBytes/4)},clone:function(){var clone=Base.clone.call(this);clone.words=this.words.slice(0);return clone},random:function(nBytes){var words=[];for(var i=0;i>>2]>>>24-i%4*8&255;hexChars.push((bite>>>4).toString(16));hexChars.push((bite&15).toString(16))}return hexChars.join("")},parse:function(hexStr){var hexStrLength=hexStr.length;var words=[];for(var i=0;i>>3]|=parseInt(hexStr.substr(i,2),16)<<24-i%8*4}return new WordArray.init(words,hexStrLength/2)}};var Latin1=C_enc.Latin1={stringify:function(wordArray){var words=wordArray.words;var sigBytes=wordArray.sigBytes;var latin1Chars=[];for(var i=0;i>>2]>>>24-i%4*8&255;latin1Chars.push(String.fromCharCode(bite))}return latin1Chars.join("")},parse:function(latin1Str){var latin1StrLength=latin1Str.length;var words=[];for(var i=0;i>>2]|=(latin1Str.charCodeAt(i)&255)<<24-i%4*8}return new WordArray.init(words,latin1StrLength)}};var Utf8=C_enc.Utf8={stringify:function(wordArray){try{return decodeURIComponent(escape(Latin1.stringify(wordArray)))}catch(e){throw new Error("Malformed UTF-8 data")}},parse:function(utf8Str){return Latin1.parse(unescape(encodeURIComponent(utf8Str)))}};var BufferedBlockAlgorithm=C_lib.BufferedBlockAlgorithm=Base.extend({reset:function(){this._data=new WordArray.init;this._nDataBytes=0},_append:function(data){if(typeof data=="string"){data=Utf8.parse(data)}this._data.concat(data);this._nDataBytes+=data.sigBytes},_process:function(doFlush){var processedWords;var data=this._data;var dataWords=data.words;var dataSigBytes=data.sigBytes;var blockSize=this.blockSize;var blockSizeBytes=blockSize*4;var nBlocksReady=dataSigBytes/blockSizeBytes;if(doFlush){nBlocksReady=Math.ceil(nBlocksReady)}else{nBlocksReady=Math.max((nBlocksReady|0)-this._minBufferSize,0)}var nWordsReady=nBlocksReady*blockSize;var nBytesReady=Math.min(nWordsReady*4,dataSigBytes);if(nWordsReady){for(var offset=0;offset>>2]|=typedArray[i]<<24-i%4*8}superInit.call(this,words,typedArrayByteLength)}else{superInit.apply(this,arguments)}};subInit.prototype=WordArray})();(function(){var C=CryptoJS;var C_lib=C.lib;var WordArray=C_lib.WordArray;var C_enc=C.enc;var Utf16BE=C_enc.Utf16=C_enc.Utf16BE={stringify:function(wordArray){var words=wordArray.words;var sigBytes=wordArray.sigBytes;var utf16Chars=[];for(var i=0;i>>2]>>>16-i%4*8&65535;utf16Chars.push(String.fromCharCode(codePoint))}return utf16Chars.join("")},parse:function(utf16Str){var utf16StrLength=utf16Str.length;var words=[];for(var i=0;i>>1]|=utf16Str.charCodeAt(i)<<16-i%2*16}return WordArray.create(words,utf16StrLength*2)}};C_enc.Utf16LE={stringify:function(wordArray){var words=wordArray.words;var sigBytes=wordArray.sigBytes;var utf16Chars=[];for(var i=0;i>>2]>>>16-i%4*8&65535);utf16Chars.push(String.fromCharCode(codePoint))}return utf16Chars.join("")},parse:function(utf16Str){var utf16StrLength=utf16Str.length;var words=[];for(var i=0;i>>1]|=swapEndian(utf16Str.charCodeAt(i)<<16-i%2*16)}return WordArray.create(words,utf16StrLength*2)}};function swapEndian(word){return word<<8&4278255360|word>>>8&16711935}})();(function(){var C=CryptoJS;var C_lib=C.lib;var WordArray=C_lib.WordArray;var C_enc=C.enc;var Base64=C_enc.Base64={stringify:function(wordArray){var words=wordArray.words;var sigBytes=wordArray.sigBytes;var map=this._map;wordArray.clamp();var base64Chars=[];for(var i=0;i>>2]>>>24-i%4*8&255;var byte2=words[i+1>>>2]>>>24-(i+1)%4*8&255;var byte3=words[i+2>>>2]>>>24-(i+2)%4*8&255;var triplet=byte1<<16|byte2<<8|byte3;for(var j=0;j<4&&i+j*.75>>6*(3-j)&63))}}var paddingChar=map.charAt(64);if(paddingChar){while(base64Chars.length%4){base64Chars.push(paddingChar)}}return base64Chars.join("")},parse:function(base64Str){var base64StrLength=base64Str.length;var map=this._map;var reverseMap=this._reverseMap;if(!reverseMap){reverseMap=this._reverseMap=[];for(var j=0;j>>6-i%4*2;var bitsCombined=bits1|bits2;words[nBytes>>>2]|=bitsCombined<<24-nBytes%4*8;nBytes++}}return WordArray.create(words,nBytes)}})();(function(){var C=CryptoJS;var C_lib=C.lib;var WordArray=C_lib.WordArray;var C_enc=C.enc;var Base64url=C_enc.Base64url={stringify:function(wordArray,urlSafe=true){var words=wordArray.words;var sigBytes=wordArray.sigBytes;var map=urlSafe?this._safe_map:this._map;wordArray.clamp();var base64Chars=[];for(var i=0;i>>2]>>>24-i%4*8&255;var byte2=words[i+1>>>2]>>>24-(i+1)%4*8&255;var byte3=words[i+2>>>2]>>>24-(i+2)%4*8&255;var triplet=byte1<<16|byte2<<8|byte3;for(var j=0;j<4&&i+j*.75>>6*(3-j)&63))}}var paddingChar=map.charAt(64);if(paddingChar){while(base64Chars.length%4){base64Chars.push(paddingChar)}}return base64Chars.join("")},parse:function(base64Str,urlSafe=true){var base64StrLength=base64Str.length;var map=urlSafe?this._safe_map:this._map;var reverseMap=this._reverseMap;if(!reverseMap){reverseMap=this._reverseMap=[];for(var j=0;j>>6-i%4*2;var bitsCombined=bits1|bits2;words[nBytes>>>2]|=bitsCombined<<24-nBytes%4*8;nBytes++}}return WordArray.create(words,nBytes)}})();(function(Math){var C=CryptoJS;var C_lib=C.lib;var WordArray=C_lib.WordArray;var Hasher=C_lib.Hasher;var C_algo=C.algo;var T=[];(function(){for(var i=0;i<64;i++){T[i]=Math.abs(Math.sin(i+1))*4294967296|0}})();var MD5=C_algo.MD5=Hasher.extend({_doReset:function(){this._hash=new WordArray.init([1732584193,4023233417,2562383102,271733878])},_doProcessBlock:function(M,offset){for(var i=0;i<16;i++){var offset_i=offset+i;var M_offset_i=M[offset_i];M[offset_i]=(M_offset_i<<8|M_offset_i>>>24)&16711935|(M_offset_i<<24|M_offset_i>>>8)&4278255360}var H=this._hash.words;var M_offset_0=M[offset+0];var M_offset_1=M[offset+1];var M_offset_2=M[offset+2];var M_offset_3=M[offset+3];var M_offset_4=M[offset+4];var M_offset_5=M[offset+5];var M_offset_6=M[offset+6];var M_offset_7=M[offset+7];var M_offset_8=M[offset+8];var M_offset_9=M[offset+9];var M_offset_10=M[offset+10];var M_offset_11=M[offset+11];var M_offset_12=M[offset+12];var M_offset_13=M[offset+13];var M_offset_14=M[offset+14];var M_offset_15=M[offset+15];var a=H[0];var b=H[1];var c=H[2];var d=H[3];a=FF(a,b,c,d,M_offset_0,7,T[0]);d=FF(d,a,b,c,M_offset_1,12,T[1]);c=FF(c,d,a,b,M_offset_2,17,T[2]);b=FF(b,c,d,a,M_offset_3,22,T[3]);a=FF(a,b,c,d,M_offset_4,7,T[4]);d=FF(d,a,b,c,M_offset_5,12,T[5]);c=FF(c,d,a,b,M_offset_6,17,T[6]);b=FF(b,c,d,a,M_offset_7,22,T[7]);a=FF(a,b,c,d,M_offset_8,7,T[8]);d=FF(d,a,b,c,M_offset_9,12,T[9]);c=FF(c,d,a,b,M_offset_10,17,T[10]);b=FF(b,c,d,a,M_offset_11,22,T[11]);a=FF(a,b,c,d,M_offset_12,7,T[12]);d=FF(d,a,b,c,M_offset_13,12,T[13]);c=FF(c,d,a,b,M_offset_14,17,T[14]);b=FF(b,c,d,a,M_offset_15,22,T[15]);a=GG(a,b,c,d,M_offset_1,5,T[16]);d=GG(d,a,b,c,M_offset_6,9,T[17]);c=GG(c,d,a,b,M_offset_11,14,T[18]);b=GG(b,c,d,a,M_offset_0,20,T[19]);a=GG(a,b,c,d,M_offset_5,5,T[20]);d=GG(d,a,b,c,M_offset_10,9,T[21]);c=GG(c,d,a,b,M_offset_15,14,T[22]);b=GG(b,c,d,a,M_offset_4,20,T[23]);a=GG(a,b,c,d,M_offset_9,5,T[24]);d=GG(d,a,b,c,M_offset_14,9,T[25]);c=GG(c,d,a,b,M_offset_3,14,T[26]);b=GG(b,c,d,a,M_offset_8,20,T[27]);a=GG(a,b,c,d,M_offset_13,5,T[28]);d=GG(d,a,b,c,M_offset_2,9,T[29]);c=GG(c,d,a,b,M_offset_7,14,T[30]);b=GG(b,c,d,a,M_offset_12,20,T[31]);a=HH(a,b,c,d,M_offset_5,4,T[32]);d=HH(d,a,b,c,M_offset_8,11,T[33]);c=HH(c,d,a,b,M_offset_11,16,T[34]);b=HH(b,c,d,a,M_offset_14,23,T[35]);a=HH(a,b,c,d,M_offset_1,4,T[36]);d=HH(d,a,b,c,M_offset_4,11,T[37]);c=HH(c,d,a,b,M_offset_7,16,T[38]);b=HH(b,c,d,a,M_offset_10,23,T[39]);a=HH(a,b,c,d,M_offset_13,4,T[40]);d=HH(d,a,b,c,M_offset_0,11,T[41]);c=HH(c,d,a,b,M_offset_3,16,T[42]);b=HH(b,c,d,a,M_offset_6,23,T[43]);a=HH(a,b,c,d,M_offset_9,4,T[44]);d=HH(d,a,b,c,M_offset_12,11,T[45]);c=HH(c,d,a,b,M_offset_15,16,T[46]);b=HH(b,c,d,a,M_offset_2,23,T[47]);a=II(a,b,c,d,M_offset_0,6,T[48]);d=II(d,a,b,c,M_offset_7,10,T[49]);c=II(c,d,a,b,M_offset_14,15,T[50]);b=II(b,c,d,a,M_offset_5,21,T[51]);a=II(a,b,c,d,M_offset_12,6,T[52]);d=II(d,a,b,c,M_offset_3,10,T[53]);c=II(c,d,a,b,M_offset_10,15,T[54]);b=II(b,c,d,a,M_offset_1,21,T[55]);a=II(a,b,c,d,M_offset_8,6,T[56]);d=II(d,a,b,c,M_offset_15,10,T[57]);c=II(c,d,a,b,M_offset_6,15,T[58]);b=II(b,c,d,a,M_offset_13,21,T[59]);a=II(a,b,c,d,M_offset_4,6,T[60]);d=II(d,a,b,c,M_offset_11,10,T[61]);c=II(c,d,a,b,M_offset_2,15,T[62]);b=II(b,c,d,a,M_offset_9,21,T[63]);H[0]=H[0]+a|0;H[1]=H[1]+b|0;H[2]=H[2]+c|0;H[3]=H[3]+d|0},_doFinalize:function(){var data=this._data;var dataWords=data.words;var nBitsTotal=this._nDataBytes*8;var nBitsLeft=data.sigBytes*8;dataWords[nBitsLeft>>>5]|=128<<24-nBitsLeft%32;var nBitsTotalH=Math.floor(nBitsTotal/4294967296);var nBitsTotalL=nBitsTotal;dataWords[(nBitsLeft+64>>>9<<4)+15]=(nBitsTotalH<<8|nBitsTotalH>>>24)&16711935|(nBitsTotalH<<24|nBitsTotalH>>>8)&4278255360;dataWords[(nBitsLeft+64>>>9<<4)+14]=(nBitsTotalL<<8|nBitsTotalL>>>24)&16711935|(nBitsTotalL<<24|nBitsTotalL>>>8)&4278255360;data.sigBytes=(dataWords.length+1)*4;this._process();var hash=this._hash;var H=hash.words;for(var i=0;i<4;i++){var H_i=H[i];H[i]=(H_i<<8|H_i>>>24)&16711935|(H_i<<24|H_i>>>8)&4278255360}return hash},clone:function(){var clone=Hasher.clone.call(this);clone._hash=this._hash.clone();return clone}});function FF(a,b,c,d,x,s,t){var n=a+(b&c|~b&d)+x+t;return(n<>>32-s)+b}function GG(a,b,c,d,x,s,t){var n=a+(b&d|c&~d)+x+t;return(n<>>32-s)+b}function HH(a,b,c,d,x,s,t){var n=a+(b^c^d)+x+t;return(n<>>32-s)+b}function II(a,b,c,d,x,s,t){var n=a+(c^(b|~d))+x+t;return(n<>>32-s)+b}C.MD5=Hasher._createHelper(MD5);C.HmacMD5=Hasher._createHmacHelper(MD5)})(Math);(function(){var C=CryptoJS;var C_lib=C.lib;var WordArray=C_lib.WordArray;var Hasher=C_lib.Hasher;var C_algo=C.algo;var W=[];var SHA1=C_algo.SHA1=Hasher.extend({_doReset:function(){this._hash=new WordArray.init([1732584193,4023233417,2562383102,271733878,3285377520])},_doProcessBlock:function(M,offset){var H=this._hash.words;var a=H[0];var b=H[1];var c=H[2];var d=H[3];var e=H[4];for(var i=0;i<80;i++){if(i<16){W[i]=M[offset+i]|0}else{var n=W[i-3]^W[i-8]^W[i-14]^W[i-16];W[i]=n<<1|n>>>31}var t=(a<<5|a>>>27)+e+W[i];if(i<20){t+=(b&c|~b&d)+1518500249}else if(i<40){t+=(b^c^d)+1859775393}else if(i<60){t+=(b&c|b&d|c&d)-1894007588}else{t+=(b^c^d)-899497514}e=d;d=c;c=b<<30|b>>>2;b=a;a=t}H[0]=H[0]+a|0;H[1]=H[1]+b|0;H[2]=H[2]+c|0;H[3]=H[3]+d|0;H[4]=H[4]+e|0},_doFinalize:function(){var data=this._data;var dataWords=data.words;var nBitsTotal=this._nDataBytes*8;var nBitsLeft=data.sigBytes*8;dataWords[nBitsLeft>>>5]|=128<<24-nBitsLeft%32;dataWords[(nBitsLeft+64>>>9<<4)+14]=Math.floor(nBitsTotal/4294967296);dataWords[(nBitsLeft+64>>>9<<4)+15]=nBitsTotal;data.sigBytes=dataWords.length*4;this._process();return this._hash},clone:function(){var clone=Hasher.clone.call(this);clone._hash=this._hash.clone();return clone}});C.SHA1=Hasher._createHelper(SHA1);C.HmacSHA1=Hasher._createHmacHelper(SHA1)})();(function(Math){var C=CryptoJS;var C_lib=C.lib;var WordArray=C_lib.WordArray;var Hasher=C_lib.Hasher;var C_algo=C.algo;var H=[];var K=[];(function(){function isPrime(n){var sqrtN=Math.sqrt(n);for(var factor=2;factor<=sqrtN;factor++){if(!(n%factor)){return false}}return true}function getFractionalBits(n){return(n-(n|0))*4294967296|0}var n=2;var nPrime=0;while(nPrime<64){if(isPrime(n)){if(nPrime<8){H[nPrime]=getFractionalBits(Math.pow(n,1/2))}K[nPrime]=getFractionalBits(Math.pow(n,1/3));nPrime++}n++}})();var W=[];var SHA256=C_algo.SHA256=Hasher.extend({_doReset:function(){this._hash=new WordArray.init(H.slice(0))},_doProcessBlock:function(M,offset){var H=this._hash.words;var a=H[0];var b=H[1];var c=H[2];var d=H[3];var e=H[4];var f=H[5];var g=H[6];var h=H[7];for(var i=0;i<64;i++){if(i<16){W[i]=M[offset+i]|0}else{var gamma0x=W[i-15];var gamma0=(gamma0x<<25|gamma0x>>>7)^(gamma0x<<14|gamma0x>>>18)^gamma0x>>>3;var gamma1x=W[i-2];var gamma1=(gamma1x<<15|gamma1x>>>17)^(gamma1x<<13|gamma1x>>>19)^gamma1x>>>10;W[i]=gamma0+W[i-7]+gamma1+W[i-16]}var ch=e&f^~e&g;var maj=a&b^a&c^b&c;var sigma0=(a<<30|a>>>2)^(a<<19|a>>>13)^(a<<10|a>>>22);var sigma1=(e<<26|e>>>6)^(e<<21|e>>>11)^(e<<7|e>>>25);var t1=h+sigma1+ch+K[i]+W[i];var t2=sigma0+maj;h=g;g=f;f=e;e=d+t1|0;d=c;c=b;b=a;a=t1+t2|0}H[0]=H[0]+a|0;H[1]=H[1]+b|0;H[2]=H[2]+c|0;H[3]=H[3]+d|0;H[4]=H[4]+e|0;H[5]=H[5]+f|0;H[6]=H[6]+g|0;H[7]=H[7]+h|0},_doFinalize:function(){var data=this._data;var dataWords=data.words;var nBitsTotal=this._nDataBytes*8;var nBitsLeft=data.sigBytes*8;dataWords[nBitsLeft>>>5]|=128<<24-nBitsLeft%32;dataWords[(nBitsLeft+64>>>9<<4)+14]=Math.floor(nBitsTotal/4294967296);dataWords[(nBitsLeft+64>>>9<<4)+15]=nBitsTotal;data.sigBytes=dataWords.length*4;this._process();return this._hash},clone:function(){var clone=Hasher.clone.call(this);clone._hash=this._hash.clone();return clone}});C.SHA256=Hasher._createHelper(SHA256);C.HmacSHA256=Hasher._createHmacHelper(SHA256)})(Math);(function(){var C=CryptoJS;var C_lib=C.lib;var WordArray=C_lib.WordArray;var C_algo=C.algo;var SHA256=C_algo.SHA256;var SHA224=C_algo.SHA224=SHA256.extend({_doReset:function(){this._hash=new WordArray.init([3238371032,914150663,812702999,4144912697,4290775857,1750603025,1694076839,3204075428])},_doFinalize:function(){var hash=SHA256._doFinalize.call(this);hash.sigBytes-=4;return hash}});C.SHA224=SHA256._createHelper(SHA224);C.HmacSHA224=SHA256._createHmacHelper(SHA224)})();(function(){var C=CryptoJS;var C_lib=C.lib;var Hasher=C_lib.Hasher;var C_x64=C.x64;var X64Word=C_x64.Word;var X64WordArray=C_x64.WordArray;var C_algo=C.algo;function X64Word_create(){return X64Word.create.apply(X64Word,arguments)}var K=[X64Word_create(1116352408,3609767458),X64Word_create(1899447441,602891725),X64Word_create(3049323471,3964484399),X64Word_create(3921009573,2173295548),X64Word_create(961987163,4081628472),X64Word_create(1508970993,3053834265),X64Word_create(2453635748,2937671579),X64Word_create(2870763221,3664609560),X64Word_create(3624381080,2734883394),X64Word_create(310598401,1164996542),X64Word_create(607225278,1323610764),X64Word_create(1426881987,3590304994),X64Word_create(1925078388,4068182383),X64Word_create(2162078206,991336113),X64Word_create(2614888103,633803317),X64Word_create(3248222580,3479774868),X64Word_create(3835390401,2666613458),X64Word_create(4022224774,944711139),X64Word_create(264347078,2341262773),X64Word_create(604807628,2007800933),X64Word_create(770255983,1495990901),X64Word_create(1249150122,1856431235),X64Word_create(1555081692,3175218132),X64Word_create(1996064986,2198950837),X64Word_create(2554220882,3999719339),X64Word_create(2821834349,766784016),X64Word_create(2952996808,2566594879),X64Word_create(3210313671,3203337956),X64Word_create(3336571891,1034457026),X64Word_create(3584528711,2466948901),X64Word_create(113926993,3758326383),X64Word_create(338241895,168717936),X64Word_create(666307205,1188179964),X64Word_create(773529912,1546045734),X64Word_create(1294757372,1522805485),X64Word_create(1396182291,2643833823),X64Word_create(1695183700,2343527390),X64Word_create(1986661051,1014477480),X64Word_create(2177026350,1206759142),X64Word_create(2456956037,344077627),X64Word_create(2730485921,1290863460),X64Word_create(2820302411,3158454273),X64Word_create(3259730800,3505952657),X64Word_create(3345764771,106217008),X64Word_create(3516065817,3606008344),X64Word_create(3600352804,1432725776),X64Word_create(4094571909,1467031594),X64Word_create(275423344,851169720),X64Word_create(430227734,3100823752),X64Word_create(506948616,1363258195),X64Word_create(659060556,3750685593),X64Word_create(883997877,3785050280),X64Word_create(958139571,3318307427),X64Word_create(1322822218,3812723403),X64Word_create(1537002063,2003034995),X64Word_create(1747873779,3602036899),X64Word_create(1955562222,1575990012),X64Word_create(2024104815,1125592928),X64Word_create(2227730452,2716904306),X64Word_create(2361852424,442776044),X64Word_create(2428436474,593698344),X64Word_create(2756734187,3733110249),X64Word_create(3204031479,2999351573),X64Word_create(3329325298,3815920427),X64Word_create(3391569614,3928383900),X64Word_create(3515267271,566280711),X64Word_create(3940187606,3454069534),X64Word_create(4118630271,4000239992),X64Word_create(116418474,1914138554),X64Word_create(174292421,2731055270),X64Word_create(289380356,3203993006),X64Word_create(460393269,320620315),X64Word_create(685471733,587496836),X64Word_create(852142971,1086792851),X64Word_create(1017036298,365543100),X64Word_create(1126000580,2618297676),X64Word_create(1288033470,3409855158),X64Word_create(1501505948,4234509866),X64Word_create(1607167915,987167468),X64Word_create(1816402316,1246189591)];var W=[];(function(){for(var i=0;i<80;i++){W[i]=X64Word_create()}})();var SHA512=C_algo.SHA512=Hasher.extend({_doReset:function(){this._hash=new X64WordArray.init([new X64Word.init(1779033703,4089235720),new X64Word.init(3144134277,2227873595),new X64Word.init(1013904242,4271175723),new X64Word.init(2773480762,1595750129),new X64Word.init(1359893119,2917565137),new X64Word.init(2600822924,725511199),new X64Word.init(528734635,4215389547),new X64Word.init(1541459225,327033209)])},_doProcessBlock:function(M,offset){var H=this._hash.words;var H0=H[0];var H1=H[1];var H2=H[2];var H3=H[3];var H4=H[4];var H5=H[5];var H6=H[6];var H7=H[7];var H0h=H0.high;var H0l=H0.low;var H1h=H1.high;var H1l=H1.low;var H2h=H2.high;var H2l=H2.low;var H3h=H3.high;var H3l=H3.low;var H4h=H4.high;var H4l=H4.low;var H5h=H5.high;var H5l=H5.low;var H6h=H6.high;var H6l=H6.low;var H7h=H7.high;var H7l=H7.low;var ah=H0h;var al=H0l;var bh=H1h;var bl=H1l;var ch=H2h;var cl=H2l;var dh=H3h;var dl=H3l;var eh=H4h;var el=H4l;var fh=H5h;var fl=H5l;var gh=H6h;var gl=H6l;var hh=H7h;var hl=H7l;for(var i=0;i<80;i++){var Wil;var Wih;var Wi=W[i];if(i<16){Wih=Wi.high=M[offset+i*2]|0;Wil=Wi.low=M[offset+i*2+1]|0}else{var gamma0x=W[i-15];var gamma0xh=gamma0x.high;var gamma0xl=gamma0x.low;var gamma0h=(gamma0xh>>>1|gamma0xl<<31)^(gamma0xh>>>8|gamma0xl<<24)^gamma0xh>>>7;var gamma0l=(gamma0xl>>>1|gamma0xh<<31)^(gamma0xl>>>8|gamma0xh<<24)^(gamma0xl>>>7|gamma0xh<<25);var gamma1x=W[i-2];var gamma1xh=gamma1x.high;var gamma1xl=gamma1x.low;var gamma1h=(gamma1xh>>>19|gamma1xl<<13)^(gamma1xh<<3|gamma1xl>>>29)^gamma1xh>>>6;var gamma1l=(gamma1xl>>>19|gamma1xh<<13)^(gamma1xl<<3|gamma1xh>>>29)^(gamma1xl>>>6|gamma1xh<<26);var Wi7=W[i-7];var Wi7h=Wi7.high;var Wi7l=Wi7.low;var Wi16=W[i-16];var Wi16h=Wi16.high;var Wi16l=Wi16.low;Wil=gamma0l+Wi7l;Wih=gamma0h+Wi7h+(Wil>>>0>>0?1:0);Wil=Wil+gamma1l;Wih=Wih+gamma1h+(Wil>>>0>>0?1:0);Wil=Wil+Wi16l;Wih=Wih+Wi16h+(Wil>>>0>>0?1:0);Wi.high=Wih;Wi.low=Wil}var chh=eh&fh^~eh&gh;var chl=el&fl^~el≷var majh=ah&bh^ah&ch^bh&ch;var majl=al&bl^al&cl^bl&cl;var sigma0h=(ah>>>28|al<<4)^(ah<<30|al>>>2)^(ah<<25|al>>>7);var sigma0l=(al>>>28|ah<<4)^(al<<30|ah>>>2)^(al<<25|ah>>>7);var sigma1h=(eh>>>14|el<<18)^(eh>>>18|el<<14)^(eh<<23|el>>>9);var sigma1l=(el>>>14|eh<<18)^(el>>>18|eh<<14)^(el<<23|eh>>>9);var Ki=K[i];var Kih=Ki.high;var Kil=Ki.low;var t1l=hl+sigma1l;var t1h=hh+sigma1h+(t1l>>>0>>0?1:0);var t1l=t1l+chl;var t1h=t1h+chh+(t1l>>>0>>0?1:0);var t1l=t1l+Kil;var t1h=t1h+Kih+(t1l>>>0>>0?1:0);var t1l=t1l+Wil;var t1h=t1h+Wih+(t1l>>>0>>0?1:0);var t2l=sigma0l+majl;var t2h=sigma0h+majh+(t2l>>>0>>0?1:0);hh=gh;hl=gl;gh=fh;gl=fl;fh=eh;fl=el;el=dl+t1l|0;eh=dh+t1h+(el>>>0
>>0?1:0)|0;dh=ch;dl=cl;ch=bh;cl=bl;bh=ah;bl=al;al=t1l+t2l|0;ah=t1h+t2h+(al>>>0>>0?1:0)|0}H0l=H0.low=H0l+al;H0.high=H0h+ah+(H0l>>>0>>0?1:0);H1l=H1.low=H1l+bl;H1.high=H1h+bh+(H1l>>>0>>0?1:0);H2l=H2.low=H2l+cl;H2.high=H2h+ch+(H2l>>>0>>0?1:0);H3l=H3.low=H3l+dl;H3.high=H3h+dh+(H3l>>>0
>>0?1:0);H4l=H4.low=H4l+el;H4.high=H4h+eh+(H4l>>>0>>0?1:0);H5l=H5.low=H5l+fl;H5.high=H5h+fh+(H5l>>>0>>0?1:0);H6l=H6.low=H6l+gl;H6.high=H6h+gh+(H6l>>>0>>0?1:0);H7l=H7.low=H7l+hl;H7.high=H7h+hh+(H7l>>>0>>0?1:0)},_doFinalize:function(){var data=this._data;var dataWords=data.words;var nBitsTotal=this._nDataBytes*8;var nBitsLeft=data.sigBytes*8;dataWords[nBitsLeft>>>5]|=128<<24-nBitsLeft%32;dataWords[(nBitsLeft+128>>>10<<5)+30]=Math.floor(nBitsTotal/4294967296);dataWords[(nBitsLeft+128>>>10<<5)+31]=nBitsTotal;data.sigBytes=dataWords.length*4;this._process();var hash=this._hash.toX32();return hash},clone:function(){var clone=Hasher.clone.call(this);clone._hash=this._hash.clone();return clone},blockSize:1024/32});C.SHA512=Hasher._createHelper(SHA512);C.HmacSHA512=Hasher._createHmacHelper(SHA512)})();(function(){var C=CryptoJS;var C_x64=C.x64;var X64Word=C_x64.Word;var X64WordArray=C_x64.WordArray;var C_algo=C.algo;var SHA512=C_algo.SHA512;var SHA384=C_algo.SHA384=SHA512.extend({_doReset:function(){this._hash=new X64WordArray.init([new X64Word.init(3418070365,3238371032),new X64Word.init(1654270250,914150663),new X64Word.init(2438529370,812702999),new X64Word.init(355462360,4144912697),new X64Word.init(1731405415,4290775857),new X64Word.init(2394180231,1750603025),new X64Word.init(3675008525,1694076839),new X64Word.init(1203062813,3204075428)])},_doFinalize:function(){var hash=SHA512._doFinalize.call(this);hash.sigBytes-=16;return hash}});C.SHA384=SHA512._createHelper(SHA384);C.HmacSHA384=SHA512._createHmacHelper(SHA384)})();(function(Math){var C=CryptoJS;var C_lib=C.lib;var WordArray=C_lib.WordArray;var Hasher=C_lib.Hasher;var C_x64=C.x64;var X64Word=C_x64.Word;var C_algo=C.algo;var RHO_OFFSETS=[];var PI_INDEXES=[];var ROUND_CONSTANTS=[];(function(){var x=1,y=0;for(var t=0;t<24;t++){RHO_OFFSETS[x+5*y]=(t+1)*(t+2)/2%64;var newX=y%5;var newY=(2*x+3*y)%5;x=newX;y=newY}for(var x=0;x<5;x++){for(var y=0;y<5;y++){PI_INDEXES[x+5*y]=y+(2*x+3*y)%5*5}}var LFSR=1;for(var i=0;i<24;i++){var roundConstantMsw=0;var roundConstantLsw=0;for(var j=0;j<7;j++){if(LFSR&1){var bitPosition=(1<>>24)&16711935|(M2i<<24|M2i>>>8)&4278255360;M2i1=(M2i1<<8|M2i1>>>24)&16711935|(M2i1<<24|M2i1>>>8)&4278255360;var lane=state[i];lane.high^=M2i1;lane.low^=M2i}for(var round=0;round<24;round++){for(var x=0;x<5;x++){var tMsw=0,tLsw=0;for(var y=0;y<5;y++){var lane=state[x+5*y];tMsw^=lane.high;tLsw^=lane.low}var Tx=T[x];Tx.high=tMsw;Tx.low=tLsw}for(var x=0;x<5;x++){var Tx4=T[(x+4)%5];var Tx1=T[(x+1)%5];var Tx1Msw=Tx1.high;var Tx1Lsw=Tx1.low;var tMsw=Tx4.high^(Tx1Msw<<1|Tx1Lsw>>>31);var tLsw=Tx4.low^(Tx1Lsw<<1|Tx1Msw>>>31);for(var y=0;y<5;y++){var lane=state[x+5*y];lane.high^=tMsw;lane.low^=tLsw}}for(var laneIndex=1;laneIndex<25;laneIndex++){var tMsw;var tLsw;var lane=state[laneIndex];var laneMsw=lane.high;var laneLsw=lane.low;var rhoOffset=RHO_OFFSETS[laneIndex];if(rhoOffset<32){tMsw=laneMsw<>>32-rhoOffset;tLsw=laneLsw<>>32-rhoOffset}else{tMsw=laneLsw<>>64-rhoOffset;tLsw=laneMsw<>>64-rhoOffset}var TPiLane=T[PI_INDEXES[laneIndex]];TPiLane.high=tMsw;TPiLane.low=tLsw}var T0=T[0];var state0=state[0];T0.high=state0.high;T0.low=state0.low;for(var x=0;x<5;x++){for(var y=0;y<5;y++){var laneIndex=x+5*y;var lane=state[laneIndex];var TLane=T[laneIndex];var Tx1Lane=T[(x+1)%5+5*y];var Tx2Lane=T[(x+2)%5+5*y];lane.high=TLane.high^~Tx1Lane.high&Tx2Lane.high;lane.low=TLane.low^~Tx1Lane.low&Tx2Lane.low}}var lane=state[0];var roundConstant=ROUND_CONSTANTS[round];lane.high^=roundConstant.high;lane.low^=roundConstant.low}},_doFinalize:function(){var data=this._data;var dataWords=data.words;var nBitsTotal=this._nDataBytes*8;var nBitsLeft=data.sigBytes*8;var blockSizeBits=this.blockSize*32;dataWords[nBitsLeft>>>5]|=1<<24-nBitsLeft%32;dataWords[(Math.ceil((nBitsLeft+1)/blockSizeBits)*blockSizeBits>>>5)-1]|=128;data.sigBytes=dataWords.length*4;this._process();var state=this._state;var outputLengthBytes=this.cfg.outputLength/8;var outputLengthLanes=outputLengthBytes/8;var hashWords=[];for(var i=0;i>>24)&16711935|(laneMsw<<24|laneMsw>>>8)&4278255360;laneLsw=(laneLsw<<8|laneLsw>>>24)&16711935|(laneLsw<<24|laneLsw>>>8)&4278255360;hashWords.push(laneLsw);hashWords.push(laneMsw)}return new WordArray.init(hashWords,outputLengthBytes)},clone:function(){var clone=Hasher.clone.call(this);var state=clone._state=this._state.slice(0);for(var i=0;i<25;i++){state[i]=state[i].clone()}return clone}});C.SHA3=Hasher._createHelper(SHA3);C.HmacSHA3=Hasher._createHmacHelper(SHA3)})(Math);(function(Math){var C=CryptoJS;var C_lib=C.lib;var WordArray=C_lib.WordArray;var Hasher=C_lib.Hasher;var C_algo=C.algo;var _zl=WordArray.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]);var _zr=WordArray.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]);var _sl=WordArray.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]);var _sr=WordArray.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]);var _hl=WordArray.create([0,1518500249,1859775393,2400959708,2840853838]);var _hr=WordArray.create([1352829926,1548603684,1836072691,2053994217,0]);var RIPEMD160=C_algo.RIPEMD160=Hasher.extend({_doReset:function(){this._hash=WordArray.create([1732584193,4023233417,2562383102,271733878,3285377520])},_doProcessBlock:function(M,offset){for(var i=0;i<16;i++){var offset_i=offset+i;var M_offset_i=M[offset_i];M[offset_i]=(M_offset_i<<8|M_offset_i>>>24)&16711935|(M_offset_i<<24|M_offset_i>>>8)&4278255360}var H=this._hash.words;var hl=_hl.words;var hr=_hr.words;var zl=_zl.words;var zr=_zr.words;var sl=_sl.words;var sr=_sr.words;var al,bl,cl,dl,el;var ar,br,cr,dr,er;ar=al=H[0];br=bl=H[1];cr=cl=H[2];dr=dl=H[3];er=el=H[4];var t;for(var i=0;i<80;i+=1){t=al+M[offset+zl[i]]|0;if(i<16){t+=f1(bl,cl,dl)+hl[0]}else if(i<32){t+=f2(bl,cl,dl)+hl[1]}else if(i<48){t+=f3(bl,cl,dl)+hl[2]}else if(i<64){t+=f4(bl,cl,dl)+hl[3]}else{t+=f5(bl,cl,dl)+hl[4]}t=t|0;t=rotl(t,sl[i]);t=t+el|0;al=el;el=dl;dl=rotl(cl,10);cl=bl;bl=t;t=ar+M[offset+zr[i]]|0;if(i<16){t+=f5(br,cr,dr)+hr[0]}else if(i<32){t+=f4(br,cr,dr)+hr[1]}else if(i<48){t+=f3(br,cr,dr)+hr[2]}else if(i<64){t+=f2(br,cr,dr)+hr[3]}else{t+=f1(br,cr,dr)+hr[4]}t=t|0;t=rotl(t,sr[i]);t=t+er|0;ar=er;er=dr;dr=rotl(cr,10);cr=br;br=t}t=H[1]+cl+dr|0;H[1]=H[2]+dl+er|0;H[2]=H[3]+el+ar|0;H[3]=H[4]+al+br|0;H[4]=H[0]+bl+cr|0;H[0]=t},_doFinalize:function(){var data=this._data;var dataWords=data.words;var nBitsTotal=this._nDataBytes*8;var nBitsLeft=data.sigBytes*8;dataWords[nBitsLeft>>>5]|=128<<24-nBitsLeft%32;dataWords[(nBitsLeft+64>>>9<<4)+14]=(nBitsTotal<<8|nBitsTotal>>>24)&16711935|(nBitsTotal<<24|nBitsTotal>>>8)&4278255360;data.sigBytes=(dataWords.length+1)*4;this._process();var hash=this._hash;var H=hash.words;for(var i=0;i<5;i++){var H_i=H[i];H[i]=(H_i<<8|H_i>>>24)&16711935|(H_i<<24|H_i>>>8)&4278255360}return hash},clone:function(){var clone=Hasher.clone.call(this);clone._hash=this._hash.clone();return clone}});function f1(x,y,z){return x^y^z}function f2(x,y,z){return x&y|~x&z}function f3(x,y,z){return(x|~y)^z}function f4(x,y,z){return x&z|y&~z}function f5(x,y,z){return x^(y|~z)}function rotl(x,n){return x<>>32-n}C.RIPEMD160=Hasher._createHelper(RIPEMD160);C.HmacRIPEMD160=Hasher._createHmacHelper(RIPEMD160)})(Math);(function(){var C=CryptoJS;var C_lib=C.lib;var Base=C_lib.Base;var C_enc=C.enc;var Utf8=C_enc.Utf8;var C_algo=C.algo;var HMAC=C_algo.HMAC=Base.extend({init:function(hasher,key){hasher=this._hasher=new hasher.init;if(typeof key=="string"){key=Utf8.parse(key)}var hasherBlockSize=hasher.blockSize;var hasherBlockSizeBytes=hasherBlockSize*4;if(key.sigBytes>hasherBlockSizeBytes){key=hasher.finalize(key)}key.clamp();var oKey=this._oKey=key.clone();var iKey=this._iKey=key.clone();var oKeyWords=oKey.words;var iKeyWords=iKey.words;for(var i=0;i>>2]&255;data.sigBytes-=nPaddingBytes}};var BlockCipher=C_lib.BlockCipher=Cipher.extend({cfg:Cipher.cfg.extend({mode:CBC,padding:Pkcs7}),reset:function(){var modeCreator;Cipher.reset.call(this);var cfg=this.cfg;var iv=cfg.iv;var mode=cfg.mode;if(this._xformMode==this._ENC_XFORM_MODE){modeCreator=mode.createEncryptor}else{modeCreator=mode.createDecryptor;this._minBufferSize=1}if(this._mode&&this._mode.__creator==modeCreator){this._mode.init(this,iv&&iv.words)}else{this._mode=modeCreator.call(mode,this,iv&&iv.words);this._mode.__creator=modeCreator}},_doProcessBlock:function(words,offset){this._mode.processBlock(words,offset)},_doFinalize:function(){var finalProcessedBlocks;var padding=this.cfg.padding;if(this._xformMode==this._ENC_XFORM_MODE){padding.pad(this._data,this.blockSize);finalProcessedBlocks=this._process(!!"flush")}else{finalProcessedBlocks=this._process(!!"flush");padding.unpad(finalProcessedBlocks)}return finalProcessedBlocks},blockSize:128/32});var CipherParams=C_lib.CipherParams=Base.extend({init:function(cipherParams){this.mixIn(cipherParams)},toString:function(formatter){return(formatter||this.formatter).stringify(this)}});var C_format=C.format={};var OpenSSLFormatter=C_format.OpenSSL={stringify:function(cipherParams){var wordArray;var ciphertext=cipherParams.ciphertext;var salt=cipherParams.salt;if(salt){wordArray=WordArray.create([1398893684,1701076831]).concat(salt).concat(ciphertext)}else{wordArray=ciphertext}return wordArray.toString(Base64)},parse:function(openSSLStr){var salt;var ciphertext=Base64.parse(openSSLStr);var ciphertextWords=ciphertext.words;if(ciphertextWords[0]==1398893684&&ciphertextWords[1]==1701076831){salt=WordArray.create(ciphertextWords.slice(2,4));ciphertextWords.splice(0,4);ciphertext.sigBytes-=16}return CipherParams.create({ciphertext:ciphertext,salt:salt})}};var SerializableCipher=C_lib.SerializableCipher=Base.extend({cfg:Base.extend({format:OpenSSLFormatter}),encrypt:function(cipher,message,key,cfg){cfg=this.cfg.extend(cfg);var encryptor=cipher.createEncryptor(key,cfg);var ciphertext=encryptor.finalize(message);var cipherCfg=encryptor.cfg;return CipherParams.create({ciphertext:ciphertext,key:key,iv:cipherCfg.iv,algorithm:cipher,mode:cipherCfg.mode,padding:cipherCfg.padding,blockSize:cipher.blockSize,formatter:cfg.format})},decrypt:function(cipher,ciphertext,key,cfg){cfg=this.cfg.extend(cfg);ciphertext=this._parse(ciphertext,cfg.format);var plaintext=cipher.createDecryptor(key,cfg).finalize(ciphertext.ciphertext);return plaintext},_parse:function(ciphertext,format){if(typeof ciphertext=="string"){return format.parse(ciphertext,this)}else{return ciphertext}}});var C_kdf=C.kdf={};var OpenSSLKdf=C_kdf.OpenSSL={execute:function(password,keySize,ivSize,salt){if(!salt){salt=WordArray.random(64/8)}var key=EvpKDF.create({keySize:keySize+ivSize}).compute(password,salt);var iv=WordArray.create(key.words.slice(keySize),ivSize*4);key.sigBytes=keySize*4;return CipherParams.create({key:key,iv:iv,salt:salt})}};var PasswordBasedCipher=C_lib.PasswordBasedCipher=SerializableCipher.extend({cfg:SerializableCipher.cfg.extend({kdf:OpenSSLKdf}),encrypt:function(cipher,message,password,cfg){cfg=this.cfg.extend(cfg);var derivedParams=cfg.kdf.execute(password,cipher.keySize,cipher.ivSize);cfg.iv=derivedParams.iv;var ciphertext=SerializableCipher.encrypt.call(this,cipher,message,derivedParams.key,cfg);ciphertext.mixIn(derivedParams);return ciphertext},decrypt:function(cipher,ciphertext,password,cfg){cfg=this.cfg.extend(cfg);ciphertext=this._parse(ciphertext,cfg.format);var derivedParams=cfg.kdf.execute(password,cipher.keySize,cipher.ivSize,ciphertext.salt);cfg.iv=derivedParams.iv;var plaintext=SerializableCipher.decrypt.call(this,cipher,ciphertext,derivedParams.key,cfg);return plaintext}})}();CryptoJS.mode.CFB=function(){var CFB=CryptoJS.lib.BlockCipherMode.extend();CFB.Encryptor=CFB.extend({processBlock:function(words,offset){var cipher=this._cipher;var blockSize=cipher.blockSize;generateKeystreamAndEncrypt.call(this,words,offset,blockSize,cipher);this._prevBlock=words.slice(offset,offset+blockSize)}});CFB.Decryptor=CFB.extend({processBlock:function(words,offset){var cipher=this._cipher;var blockSize=cipher.blockSize;var thisBlock=words.slice(offset,offset+blockSize);generateKeystreamAndEncrypt.call(this,words,offset,blockSize,cipher);this._prevBlock=thisBlock}});function generateKeystreamAndEncrypt(words,offset,blockSize,cipher){var keystream;var iv=this._iv;if(iv){keystream=iv.slice(0);this._iv=undefined}else{keystream=this._prevBlock}cipher.encryptBlock(keystream,0);for(var i=0;i>24&255)===255){var b1=word>>16&255;var b2=word>>8&255;var b3=word&255;if(b1===255){b1=0;if(b2===255){b2=0;if(b3===255){b3=0}else{++b3}}else{++b2}}else{++b1}word=0;word+=b1<<16;word+=b2<<8;word+=b3}else{word+=1<<24}return word}function incCounter(counter){if((counter[0]=incWord(counter[0]))===0){counter[1]=incWord(counter[1])}return counter}var Encryptor=CTRGladman.Encryptor=CTRGladman.extend({processBlock:function(words,offset){var cipher=this._cipher;var blockSize=cipher.blockSize;var iv=this._iv;var counter=this._counter;if(iv){counter=this._counter=iv.slice(0);this._iv=undefined}incCounter(counter);var keystream=counter.slice(0);cipher.encryptBlock(keystream,0);for(var i=0;i>>2]|=nPaddingBytes<<24-lastBytePos%4*8;data.sigBytes+=nPaddingBytes},unpad:function(data){var nPaddingBytes=data.words[data.sigBytes-1>>>2]&255;data.sigBytes-=nPaddingBytes}};CryptoJS.pad.Iso10126={pad:function(data,blockSize){var blockSizeBytes=blockSize*4;var nPaddingBytes=blockSizeBytes-data.sigBytes%blockSizeBytes;data.concat(CryptoJS.lib.WordArray.random(nPaddingBytes-1)).concat(CryptoJS.lib.WordArray.create([nPaddingBytes<<24],1))},unpad:function(data){var nPaddingBytes=data.words[data.sigBytes-1>>>2]&255;data.sigBytes-=nPaddingBytes}};CryptoJS.pad.Iso97971={pad:function(data,blockSize){data.concat(CryptoJS.lib.WordArray.create([2147483648],1));CryptoJS.pad.ZeroPadding.pad(data,blockSize)},unpad:function(data){CryptoJS.pad.ZeroPadding.unpad(data);data.sigBytes--}};CryptoJS.pad.ZeroPadding={pad:function(data,blockSize){var blockSizeBytes=blockSize*4;data.clamp();data.sigBytes+=blockSizeBytes-(data.sigBytes%blockSizeBytes||blockSizeBytes)},unpad:function(data){var dataWords=data.words;var i=data.sigBytes-1;for(var i=data.sigBytes-1;i>=0;i--){if(dataWords[i>>>2]>>>24-i%4*8&255){data.sigBytes=i+1;break}}}};CryptoJS.pad.NoPadding={pad:function(){},unpad:function(){}};(function(undefined){var C=CryptoJS;var C_lib=C.lib;var CipherParams=C_lib.CipherParams;var C_enc=C.enc;var Hex=C_enc.Hex;var C_format=C.format;var HexFormatter=C_format.Hex={stringify:function(cipherParams){return cipherParams.ciphertext.toString(Hex)},parse:function(input){var ciphertext=Hex.parse(input);return CipherParams.create({ciphertext:ciphertext})}}})();(function(){var C=CryptoJS;var C_lib=C.lib;var BlockCipher=C_lib.BlockCipher;var C_algo=C.algo;var SBOX=[];var INV_SBOX=[];var SUB_MIX_0=[];var SUB_MIX_1=[];var SUB_MIX_2=[];var SUB_MIX_3=[];var INV_SUB_MIX_0=[];var INV_SUB_MIX_1=[];var INV_SUB_MIX_2=[];var INV_SUB_MIX_3=[];(function(){var d=[];for(var i=0;i<256;i++){if(i<128){d[i]=i<<1}else{d[i]=i<<1^283}}var x=0;var xi=0;for(var i=0;i<256;i++){var sx=xi^xi<<1^xi<<2^xi<<3^xi<<4;sx=sx>>>8^sx&255^99;SBOX[x]=sx;INV_SBOX[sx]=x;var x2=d[x];var x4=d[x2];var x8=d[x4];var t=d[sx]*257^sx*16843008;SUB_MIX_0[x]=t<<24|t>>>8;SUB_MIX_1[x]=t<<16|t>>>16;SUB_MIX_2[x]=t<<8|t>>>24;SUB_MIX_3[x]=t;var t=x8*16843009^x4*65537^x2*257^x*16843008;INV_SUB_MIX_0[sx]=t<<24|t>>>8;INV_SUB_MIX_1[sx]=t<<16|t>>>16;INV_SUB_MIX_2[sx]=t<<8|t>>>24;INV_SUB_MIX_3[sx]=t;if(!x){x=xi=1}else{x=x2^d[d[d[x8^x2]]];xi^=d[d[xi]]}}})();var RCON=[0,1,2,4,8,16,32,64,128,27,54];var AES=C_algo.AES=BlockCipher.extend({_doReset:function(){var t;if(this._nRounds&&this._keyPriorReset===this._key){return}var key=this._keyPriorReset=this._key;var keyWords=key.words;var keySize=key.sigBytes/4;var nRounds=this._nRounds=keySize+6;var ksRows=(nRounds+1)*4;var keySchedule=this._keySchedule=[];for(var ksRow=0;ksRow>>24;t=SBOX[t>>>24]<<24|SBOX[t>>>16&255]<<16|SBOX[t>>>8&255]<<8|SBOX[t&255];t^=RCON[ksRow/keySize|0]<<24}else if(keySize>6&&ksRow%keySize==4){t=SBOX[t>>>24]<<24|SBOX[t>>>16&255]<<16|SBOX[t>>>8&255]<<8|SBOX[t&255]}keySchedule[ksRow]=keySchedule[ksRow-keySize]^t}}var invKeySchedule=this._invKeySchedule=[];for(var invKsRow=0;invKsRow>>24]]^INV_SUB_MIX_1[SBOX[t>>>16&255]]^INV_SUB_MIX_2[SBOX[t>>>8&255]]^INV_SUB_MIX_3[SBOX[t&255]]}}},encryptBlock:function(M,offset){this._doCryptBlock(M,offset,this._keySchedule,SUB_MIX_0,SUB_MIX_1,SUB_MIX_2,SUB_MIX_3,SBOX)},decryptBlock:function(M,offset){var t=M[offset+1];M[offset+1]=M[offset+3];M[offset+3]=t;this._doCryptBlock(M,offset,this._invKeySchedule,INV_SUB_MIX_0,INV_SUB_MIX_1,INV_SUB_MIX_2,INV_SUB_MIX_3,INV_SBOX);var t=M[offset+1];M[offset+1]=M[offset+3];M[offset+3]=t},_doCryptBlock:function(M,offset,keySchedule,SUB_MIX_0,SUB_MIX_1,SUB_MIX_2,SUB_MIX_3,SBOX){var nRounds=this._nRounds;var s0=M[offset]^keySchedule[0];var s1=M[offset+1]^keySchedule[1];var s2=M[offset+2]^keySchedule[2];var s3=M[offset+3]^keySchedule[3];var ksRow=4;for(var round=1;round>>24]^SUB_MIX_1[s1>>>16&255]^SUB_MIX_2[s2>>>8&255]^SUB_MIX_3[s3&255]^keySchedule[ksRow++];var t1=SUB_MIX_0[s1>>>24]^SUB_MIX_1[s2>>>16&255]^SUB_MIX_2[s3>>>8&255]^SUB_MIX_3[s0&255]^keySchedule[ksRow++];var t2=SUB_MIX_0[s2>>>24]^SUB_MIX_1[s3>>>16&255]^SUB_MIX_2[s0>>>8&255]^SUB_MIX_3[s1&255]^keySchedule[ksRow++];var t3=SUB_MIX_0[s3>>>24]^SUB_MIX_1[s0>>>16&255]^SUB_MIX_2[s1>>>8&255]^SUB_MIX_3[s2&255]^keySchedule[ksRow++];s0=t0;s1=t1;s2=t2;s3=t3}var t0=(SBOX[s0>>>24]<<24|SBOX[s1>>>16&255]<<16|SBOX[s2>>>8&255]<<8|SBOX[s3&255])^keySchedule[ksRow++];var t1=(SBOX[s1>>>24]<<24|SBOX[s2>>>16&255]<<16|SBOX[s3>>>8&255]<<8|SBOX[s0&255])^keySchedule[ksRow++];var t2=(SBOX[s2>>>24]<<24|SBOX[s3>>>16&255]<<16|SBOX[s0>>>8&255]<<8|SBOX[s1&255])^keySchedule[ksRow++];var t3=(SBOX[s3>>>24]<<24|SBOX[s0>>>16&255]<<16|SBOX[s1>>>8&255]<<8|SBOX[s2&255])^keySchedule[ksRow++];M[offset]=t0;M[offset+1]=t1;M[offset+2]=t2;M[offset+3]=t3},keySize:256/32});C.AES=BlockCipher._createHelper(AES)})();(function(){var C=CryptoJS;var C_lib=C.lib;var WordArray=C_lib.WordArray;var BlockCipher=C_lib.BlockCipher;var C_algo=C.algo;var PC1=[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];var PC2=[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];var BIT_SHIFTS=[1,2,4,6,8,10,12,14,15,17,19,21,23,25,27,28];var SBOX_P=[{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}];var SBOX_MASK=[4160749569,528482304,33030144,2064384,129024,8064,504,2147483679];var DES=C_algo.DES=BlockCipher.extend({_doReset:function(){var key=this._key;var keyWords=key.words;var keyBits=[];for(var i=0;i<56;i++){var keyBitPos=PC1[i]-1;keyBits[i]=keyWords[keyBitPos>>>5]>>>31-keyBitPos%32&1}var subKeys=this._subKeys=[];for(var nSubKey=0;nSubKey<16;nSubKey++){var subKey=subKeys[nSubKey]=[];var bitShift=BIT_SHIFTS[nSubKey];for(var i=0;i<24;i++){subKey[i/6|0]|=keyBits[(PC2[i]-1+bitShift)%28]<<31-i%6;subKey[4+(i/6|0)]|=keyBits[28+(PC2[i+24]-1+bitShift)%28]<<31-i%6}subKey[0]=subKey[0]<<1|subKey[0]>>>31;for(var i=1;i<7;i++){subKey[i]=subKey[i]>>>(i-1)*4+3}subKey[7]=subKey[7]<<5|subKey[7]>>>27}var invSubKeys=this._invSubKeys=[];for(var i=0;i<16;i++){invSubKeys[i]=subKeys[15-i]}},encryptBlock:function(M,offset){this._doCryptBlock(M,offset,this._subKeys)},decryptBlock:function(M,offset){this._doCryptBlock(M,offset,this._invSubKeys)},_doCryptBlock:function(M,offset,subKeys){this._lBlock=M[offset];this._rBlock=M[offset+1];exchangeLR.call(this,4,252645135);exchangeLR.call(this,16,65535);exchangeRL.call(this,2,858993459);exchangeRL.call(this,8,16711935);exchangeLR.call(this,1,1431655765);for(var round=0;round<16;round++){var subKey=subKeys[round];var lBlock=this._lBlock;var rBlock=this._rBlock;var f=0;for(var i=0;i<8;i++){f|=SBOX_P[i][((rBlock^subKey[i])&SBOX_MASK[i])>>>0]}this._lBlock=rBlock;this._rBlock=lBlock^f}var t=this._lBlock;this._lBlock=this._rBlock;this._rBlock=t;exchangeLR.call(this,1,1431655765);exchangeRL.call(this,8,16711935);exchangeRL.call(this,2,858993459);exchangeLR.call(this,16,65535);exchangeLR.call(this,4,252645135);M[offset]=this._lBlock;M[offset+1]=this._rBlock},keySize:64/32,ivSize:64/32,blockSize:64/32});function exchangeLR(offset,mask){var t=(this._lBlock>>>offset^this._rBlock)&mask;this._rBlock^=t;this._lBlock^=t<>>offset^this._lBlock)&mask;this._lBlock^=t;this._rBlock^=t<192.")}var key1=keyWords.slice(0,2);var key2=keyWords.length<4?keyWords.slice(0,2):keyWords.slice(2,4);var key3=keyWords.length<6?keyWords.slice(0,2):keyWords.slice(4,6);this._des1=DES.createEncryptor(WordArray.create(key1));this._des2=DES.createEncryptor(WordArray.create(key2));this._des3=DES.createEncryptor(WordArray.create(key3))},encryptBlock:function(M,offset){this._des1.encryptBlock(M,offset);this._des2.decryptBlock(M,offset);this._des3.encryptBlock(M,offset)},decryptBlock:function(M,offset){this._des3.decryptBlock(M,offset);this._des2.encryptBlock(M,offset);this._des1.decryptBlock(M,offset)},keySize:192/32,ivSize:64/32,blockSize:64/32});C.TripleDES=BlockCipher._createHelper(TripleDES)})();(function(){var C=CryptoJS;var C_lib=C.lib;var StreamCipher=C_lib.StreamCipher;var C_algo=C.algo;var RC4=C_algo.RC4=StreamCipher.extend({_doReset:function(){var key=this._key;var keyWords=key.words;var keySigBytes=key.sigBytes;var S=this._S=[];for(var i=0;i<256;i++){S[i]=i}for(var i=0,j=0;i<256;i++){var keyByteIndex=i%keySigBytes;var keyByte=keyWords[keyByteIndex>>>2]>>>24-keyByteIndex%4*8&255;j=(j+S[i]+keyByte)%256;var t=S[i];S[i]=S[j];S[j]=t}this._i=this._j=0},_doProcessBlock:function(M,offset){M[offset]^=generateKeystreamWord.call(this)},keySize:256/32,ivSize:0});function generateKeystreamWord(){var S=this._S;var i=this._i;var j=this._j;var keystreamWord=0;for(var n=0;n<4;n++){i=(i+1)%256;j=(j+S[i])%256;var t=S[i];S[i]=S[j];S[j]=t;keystreamWord|=S[(S[i]+S[j])%256]<<24-n*8}this._i=i;this._j=j;return keystreamWord}C.RC4=StreamCipher._createHelper(RC4);var RC4Drop=C_algo.RC4Drop=RC4.extend({cfg:RC4.cfg.extend({drop:192}),_doReset:function(){RC4._doReset.call(this);for(var i=this.cfg.drop;i>0;i--){generateKeystreamWord.call(this)}}});C.RC4Drop=StreamCipher._createHelper(RC4Drop)})();(function(){var C=CryptoJS;var C_lib=C.lib;var StreamCipher=C_lib.StreamCipher;var C_algo=C.algo;var S=[];var C_=[];var G=[];var Rabbit=C_algo.Rabbit=StreamCipher.extend({_doReset:function(){var K=this._key.words;var iv=this.cfg.iv;for(var i=0;i<4;i++){K[i]=(K[i]<<8|K[i]>>>24)&16711935|(K[i]<<24|K[i]>>>8)&4278255360}var X=this._X=[K[0],K[3]<<16|K[2]>>>16,K[1],K[0]<<16|K[3]>>>16,K[2],K[1]<<16|K[0]>>>16,K[3],K[2]<<16|K[1]>>>16];var C=this._C=[K[2]<<16|K[2]>>>16,K[0]&4294901760|K[1]&65535,K[3]<<16|K[3]>>>16,K[1]&4294901760|K[2]&65535,K[0]<<16|K[0]>>>16,K[2]&4294901760|K[3]&65535,K[1]<<16|K[1]>>>16,K[3]&4294901760|K[0]&65535];this._b=0;for(var i=0;i<4;i++){nextState.call(this)}for(var i=0;i<8;i++){C[i]^=X[i+4&7]}if(iv){var IV=iv.words;var IV_0=IV[0];var IV_1=IV[1];var i0=(IV_0<<8|IV_0>>>24)&16711935|(IV_0<<24|IV_0>>>8)&4278255360;var i2=(IV_1<<8|IV_1>>>24)&16711935|(IV_1<<24|IV_1>>>8)&4278255360;var i1=i0>>>16|i2&4294901760;var i3=i2<<16|i0&65535;C[0]^=i0;C[1]^=i1;C[2]^=i2;C[3]^=i3;C[4]^=i0;C[5]^=i1;C[6]^=i2;C[7]^=i3;for(var i=0;i<4;i++){nextState.call(this)}}},_doProcessBlock:function(M,offset){var X=this._X;nextState.call(this);S[0]=X[0]^X[5]>>>16^X[3]<<16;S[1]=X[2]^X[7]>>>16^X[5]<<16;S[2]=X[4]^X[1]>>>16^X[7]<<16;S[3]=X[6]^X[3]>>>16^X[1]<<16;for(var i=0;i<4;i++){S[i]=(S[i]<<8|S[i]>>>24)&16711935|(S[i]<<24|S[i]>>>8)&4278255360;M[offset+i]^=S[i]}},blockSize:128/32,ivSize:64/32});function nextState(){var X=this._X;var C=this._C;for(var i=0;i<8;i++){C_[i]=C[i]}C[0]=C[0]+1295307597+this._b|0;C[1]=C[1]+3545052371+(C[0]>>>0>>0?1:0)|0;C[2]=C[2]+886263092+(C[1]>>>0>>0?1:0)|0;C[3]=C[3]+1295307597+(C[2]>>>0>>0?1:0)|0;C[4]=C[4]+3545052371+(C[3]>>>0>>0?1:0)|0;C[5]=C[5]+886263092+(C[4]>>>0>>0?1:0)|0;C[6]=C[6]+1295307597+(C[5]>>>0>>0?1:0)|0;C[7]=C[7]+3545052371+(C[6]>>>0>>0?1:0)|0;this._b=C[7]>>>0>>0?1:0;for(var i=0;i<8;i++){var gx=X[i]+C[i];var ga=gx&65535;var gb=gx>>>16;var gh=((ga*ga>>>17)+ga*gb>>>15)+gb*gb;var gl=((gx&4294901760)*gx|0)+((gx&65535)*gx|0);G[i]=gh^gl}X[0]=G[0]+(G[7]<<16|G[7]>>>16)+(G[6]<<16|G[6]>>>16)|0;X[1]=G[1]+(G[0]<<8|G[0]>>>24)+G[7]|0;X[2]=G[2]+(G[1]<<16|G[1]>>>16)+(G[0]<<16|G[0]>>>16)|0;X[3]=G[3]+(G[2]<<8|G[2]>>>24)+G[1]|0;X[4]=G[4]+(G[3]<<16|G[3]>>>16)+(G[2]<<16|G[2]>>>16)|0;X[5]=G[5]+(G[4]<<8|G[4]>>>24)+G[3]|0;X[6]=G[6]+(G[5]<<16|G[5]>>>16)+(G[4]<<16|G[4]>>>16)|0;X[7]=G[7]+(G[6]<<8|G[6]>>>24)+G[5]|0}C.Rabbit=StreamCipher._createHelper(Rabbit)})();(function(){var C=CryptoJS;var C_lib=C.lib;var StreamCipher=C_lib.StreamCipher;var C_algo=C.algo;var S=[];var C_=[];var G=[];var RabbitLegacy=C_algo.RabbitLegacy=StreamCipher.extend({_doReset:function(){var K=this._key.words;var iv=this.cfg.iv;var X=this._X=[K[0],K[3]<<16|K[2]>>>16,K[1],K[0]<<16|K[3]>>>16,K[2],K[1]<<16|K[0]>>>16,K[3],K[2]<<16|K[1]>>>16];var C=this._C=[K[2]<<16|K[2]>>>16,K[0]&4294901760|K[1]&65535,K[3]<<16|K[3]>>>16,K[1]&4294901760|K[2]&65535,K[0]<<16|K[0]>>>16,K[2]&4294901760|K[3]&65535,K[1]<<16|K[1]>>>16,K[3]&4294901760|K[0]&65535];this._b=0;for(var i=0;i<4;i++){nextState.call(this)}for(var i=0;i<8;i++){C[i]^=X[i+4&7]}if(iv){var IV=iv.words;var IV_0=IV[0];var IV_1=IV[1];var i0=(IV_0<<8|IV_0>>>24)&16711935|(IV_0<<24|IV_0>>>8)&4278255360;var i2=(IV_1<<8|IV_1>>>24)&16711935|(IV_1<<24|IV_1>>>8)&4278255360;var i1=i0>>>16|i2&4294901760;var i3=i2<<16|i0&65535;C[0]^=i0;C[1]^=i1;C[2]^=i2;C[3]^=i3;C[4]^=i0;C[5]^=i1;C[6]^=i2;C[7]^=i3;for(var i=0;i<4;i++){nextState.call(this)}}},_doProcessBlock:function(M,offset){var X=this._X;nextState.call(this);S[0]=X[0]^X[5]>>>16^X[3]<<16;S[1]=X[2]^X[7]>>>16^X[5]<<16;S[2]=X[4]^X[1]>>>16^X[7]<<16;S[3]=X[6]^X[3]>>>16^X[1]<<16;for(var i=0;i<4;i++){S[i]=(S[i]<<8|S[i]>>>24)&16711935|(S[i]<<24|S[i]>>>8)&4278255360;M[offset+i]^=S[i]}},blockSize:128/32,ivSize:64/32});function nextState(){var X=this._X;var C=this._C;for(var i=0;i<8;i++){C_[i]=C[i]}C[0]=C[0]+1295307597+this._b|0;C[1]=C[1]+3545052371+(C[0]>>>0>>0?1:0)|0;C[2]=C[2]+886263092+(C[1]>>>0>>0?1:0)|0;C[3]=C[3]+1295307597+(C[2]>>>0>>0?1:0)|0;C[4]=C[4]+3545052371+(C[3]>>>0>>0?1:0)|0;C[5]=C[5]+886263092+(C[4]>>>0>>0?1:0)|0;C[6]=C[6]+1295307597+(C[5]>>>0>>0?1:0)|0;C[7]=C[7]+3545052371+(C[6]>>>0>>0?1:0)|0;this._b=C[7]>>>0>>0?1:0;for(var i=0;i<8;i++){var gx=X[i]+C[i];var ga=gx&65535;var gb=gx>>>16;var gh=((ga*ga>>>17)+ga*gb>>>15)+gb*gb;var gl=((gx&4294901760)*gx|0)+((gx&65535)*gx|0);G[i]=gh^gl}X[0]=G[0]+(G[7]<<16|G[7]>>>16)+(G[6]<<16|G[6]>>>16)|0;X[1]=G[1]+(G[0]<<8|G[0]>>>24)+G[7]|0;X[2]=G[2]+(G[1]<<16|G[1]>>>16)+(G[0]<<16|G[0]>>>16)|0;X[3]=G[3]+(G[2]<<8|G[2]>>>24)+G[1]|0;X[4]=G[4]+(G[3]<<16|G[3]>>>16)+(G[2]<<16|G[2]>>>16)|0;X[5]=G[5]+(G[4]<<8|G[4]>>>24)+G[3]|0;X[6]=G[6]+(G[5]<<16|G[5]>>>16)+(G[4]<<16|G[4]>>>16)|0;X[7]=G[7]+(G[6]<<8|G[6]>>>24)+G[5]|0}C.RabbitLegacy=StreamCipher._createHelper(RabbitLegacy)})();return CryptoJS});'},156:(e,t,n)=>{n(642)(n(761))},277:(e,t,n)=>{n(642)(n(906))},316:(e,t,n)=>{n(642)(n(105))},321:e=>{e.exports='!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports):"function"==typeof define&&define.amd?define(["exports"],t):t((e="undefined"!=typeof globalThis?globalThis:e||self).JSONPath={})}(this,function(e){"use strict";function n(e,t,r){return t=l(t),function(e,t){{if(t&&("object"==typeof t||"function"==typeof t))return t;if(void 0!==t)throw new TypeError("Derived constructors may only return object or undefined")}return function(e){if(void 0!==e)return e;throw new ReferenceError("this hasn\'t been initialised - super() hasn\'t been called")}(e)}(e,i()?Reflect.construct(t,r||[],l(e).constructor):t.apply(e,r))}function o(e,t,r){if(i())return Reflect.construct.apply(null,arguments);var n=[null];n.push.apply(n,t);n=new(e.bind.apply(e,n));return r&&h(n,r.prototype),n}function i(){try{var e=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}))}catch(e){}return(i=function(){return!!e})()}function t(t,e){var r,n=Object.keys(t);return Object.getOwnPropertySymbols&&(r=Object.getOwnPropertySymbols(t),e&&(r=r.filter(function(e){return Object.getOwnPropertyDescriptor(t,e).enumerable})),n.push.apply(n,r)),n}function r(n){for(var e=1;ee.length)&&(t=e.length);for(var r=0,n=new Array(t);ru.prec:r<=u.prec);)o=n.pop(),t=n.pop().value,c=n.pop(),e={type:l.BINARY_EXP,operator:t,left:c,right:o},n.push(e);(e=this.gobbleToken())||this.throwError("Expected expression after "+s),n.push(i,e)}for(e=n[a=n.length-1];1=t.length&&this.throwError("Unexpected token "+String.fromCharCode(e));break}if(i===l.COMMA_CODE){if(this.index++,++n!==t.length)if(e===l.CPAREN_CODE)this.throwError("Unexpected token ,");else if(e===l.CBRACK_CODE)for(var o=t.length;o":7,"<=":7,">=":7,"<<":8,">>":8,">>>":8,"+":9,"-":9,"*":10,"/":10,"%":10},right_associative:new Set,additional_identifier_chars:new Set(["$","_"]),literals:{true:!0,false:!1,null:null},this_str:"this"}),v.max_unop_len=v.getMaxKeyLen(v.unary_ops),v.max_binop_len=v.getMaxKeyLen(v.binary_ops);var E=function(e){return new v(e).parse()};Object.getOwnPropertyNames(v).forEach(function(e){void 0===E[e]&&"prototype"!==e&&(E[e]=v[e])}),E.Jsep=v;b={name:"ternary",init:function(o){o.hooks.add("after-expression",function(e){if(e.node&&this.code===o.QUMARK_CODE){this.index++;var t=e.node,r=this.gobbleExpression();if(r||this.throwError("Expected expression"),this.gobbleSpaces(),this.code===o.COLON_CODE){this.index++;var n=this.gobbleExpression();if(n||this.throwError("Expected expression"),e.node={type:"ConditionalExpression",test:t,consequent:r,alternate:n},t.operator&&o.binary_ops[t.operator]<=.9){for(var i=t;i.right.operator&&o.binary_ops[i.right.operator]<=.9;)i=i.right;e.node.test=i.right,i.right=e.node,e.node=t}}else this.throwError("Expected :")}})}};E.plugins.register(b);var b={name:"regex",init:function(s){s.hooks.add("gobble-token",function(e){if(47===this.code){for(var t=++this.index,r=!1;this.index>=",">>>=","&=","^=","|="]),updateOperators:[43,45],assignmentPrecedence:.9,init:function(t){var n=[t.IDENTIFIER,t.MEMBER_EXP];g.assignmentOperators.forEach(function(e){return t.addBinaryOp(e,g.assignmentPrecedence,!0)}),t.hooks.add("gobble-token",function(e){var t=this,r=this.code;g.updateOperators.some(function(e){return e===r&&e===t.expr.charCodeAt(t.index+1)})&&(this.index+=2,e.node={type:"UpdateExpression",operator:43===r?"++":"--",argument:this.gobbleTokenProperty(this.gobbleIdentifier()),prefix:!0},e.node.argument&&n.includes(e.node.argument.type)||this.throwError("Unexpected ".concat(e.node.operator)))}),t.hooks.add("after-token",function(e){var t,r=this;e.node&&(t=this.code,g.updateOperators.some(function(e){return e===t&&e===r.expr.charCodeAt(r.index+1)})&&(n.includes(e.node.type)||this.throwError("Unexpected ".concat(e.node.operator)),this.index+=2,e.node={type:"UpdateExpression",operator:43===t?"++":"--",argument:e.node,prefix:!1}))}),t.hooks.add("after-expression",function(e){e.node&&!function t(e){g.assignmentOperators.has(e.operator)?(e.type="AssignmentExpression",t(e.left),t(e.right)):e.operator||Object.values(e).forEach(function(e){e&&"object"===C(e)&&t(e)})}(e.node)})}},A=Object.prototype.hasOwnProperty;function w(e,t){return(e=e.slice()).push(t),e}function k(e,t){return(t=t.slice()).unshift(e),t}var x=function(){function r(e){var t;return s(this,r),(t=n(this,r,[\'JSONPath should not be called with "new" (it prevents return of (unwrapped) scalar values)\'])).avoidNew=!0,t.value=e,t.name="NewError",t}return function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function");e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,writable:!0,configurable:!0}}),Object.defineProperty(e,"prototype",{writable:!1}),t&&h(e,t)}(r,p(Error)),c(r)}();function F(e,t,r,n,i){if(!(this instanceof F))try{return new F(e,t,r,n,i)}catch(e){if(!e.avoidNew)throw e;return e.value}"string"==typeof e&&(i=n,n=r,r=t,t=e,e=null);var o=e&&"object"===C(e);if(e=e||{},this.json=e.json||r,this.path=e.path||t,this.resultType=e.resultType||"value",this.flatten=e.flatten||!1,this.wrap=!A.call(e,"wrap")||e.wrap,this.sandbox=e.sandbox||{},this.eval=void 0===e.eval?"safe":e.eval,this.ignoreEvalErrors=void 0!==e.ignoreEvalErrors&&e.ignoreEvalErrors,this.parent=e.parent||null,this.parentProperty=e.parentProperty||null,this.callback=e.callback||n||null,this.otherTypeCallback=e.otherTypeCallback||i||function(){throw new TypeError("You must supply an otherTypeCallback callback option with the @other() operator.")},!1!==e.autostart){var a={path:o?e.path:t};o?"json"in e&&(a.json=e.json):a.json=r;a=this.evaluate(a);if(!a||"object"!==C(a))throw new x(a);return a}}F.prototype.evaluate=function(e,t,r,n){var i=this,o=this.parent,a=this.parentProperty,s=this.flatten,u=this.wrap;if(this.currResultType=this.resultType,this.currEval=this.eval,this.currSandbox=this.sandbox,r=r||this.callback,this.currOtherTypeCallback=n||this.otherTypeCallback,t=t||this.json,(e=e||this.path)&&"object"===C(e)&&!Array.isArray(e)){if(!e.path&&""!==e.path)throw new TypeError(\'You must supply a "path" property when providing an object argument to JSONPath.evaluate().\');if(!A.call(e,"json"))throw new TypeError(\'You must supply a "json" property when providing an object argument to JSONPath.evaluate().\');t=e.json,s=A.call(e,"flatten")?e.flatten:s,this.currResultType=A.call(e,"resultType")?e.resultType:this.currResultType,this.currSandbox=A.call(e,"sandbox")?e.sandbox:this.currSandbox,u=A.call(e,"wrap")?e.wrap:u,this.currEval=A.call(e,"eval")?e.eval:this.currEval,r=A.call(e,"callback")?e.callback:r,this.currOtherTypeCallback=A.call(e,"otherTypeCallback")?e.otherTypeCallback:this.currOtherTypeCallback,o=A.call(e,"parent")?e.parent:o,a=A.call(e,"parentProperty")?e.parentProperty:a,e=e.path}if(o=o||null,a=a||null,Array.isArray(e)&&(e=F.toPathString(e)),(e||""===e)&&t){e=F.toPathArray(e);"$"===e[0]&&1@-\\uD7FF\\uE000-\\uFFFF]|[\\uD800-\\uDBFF][\\uDC00-\\uDFFF]|[\\uD800-\\uDBFF](?![\\uDC00-\\uDFFF])|(?:[^\\uD800-\\uDBFF]|^)[\\uDC00-\\uDFFF])*)[\'\\[](\\??\\((?:[\\0-\\t\\x0B\\f\\x0E-\\u2027\\u202A-\\uD7FF\\uE000-\\uFFFF]|[\\uD800-\\uDBFF][\\uDC00-\\uDFFF]|[\\uD800-\\uDBFF](?![\\uDC00-\\uDFFF])|(?:[^\\uD800-\\uDBFF]|^)[\\uDC00-\\uDFFF])*?\\))(?!(?:[\\0-\\t\\x0B\\f\\x0E-\\u2027\\u202A-\\uD7FF\\uE000-\\uFFFF]|[\\uD800-\\uDBFF][\\uDC00-\\uDFFF]|[\\uD800-\\uDBFF](?![\\uDC00-\\uDFFF])|(?:[^\\uD800-\\uDBFF]|^)[\\uDC00-\\uDFFF])\\)\\])[\'\\]]/g.exec(f);d?this._walk(n,function(e){var t=[d[2]],r=d[1]?n[e][d[1]]:n[e];0=e.length?{done:!0}:{done:!1,value:e[n++]}},e:function(e){throw e},f:t}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}var i,o=!0,a=!1;return{s:function(){r=r.call(e)},n:function(){var e=r.next();return o=e.done,e},e:function(e){a=!0,i=e},f:function(){try{o||null==r.return||r.return()}finally{if(a)throw i}}}}(c.split(","));try{for(E.s();!(g=E.n()).done;){var g=g.value;p(this._trace(k(g,l),n,i,o,a,s,!0))}}catch(e){E.e(e)}finally{E.f()}}else!r&&n&&A.call(n,c)&&p(this._trace(l,n[c],w(i,c),n,c,s,e,!0))}if(this._hasParentSelector)for(var x=0;x":function(e,t){return e>t()},"<=":function(e,t){return e<=t()},">=":function(e,t){return e>=t()},"<<":function(e,t){return e<>":function(e,t){return e>>t()},">>>":function(e,t){return e>>>t()},"+":function(e,t){return e+t()},"-":function(e,t){return e-t()},"*":function(e,t){return e*t()},"/":function(e,t){return e/t()},"%":function(e,t){return e%t()}}[e.operator](D.evalAst(e.left,t),function(){return D.evalAst(e.right,t)})},evalCompound:function(e,t){for(var r=0;r{n(642)(n(793))},462:(e,t,n)=>{n(642)(n(321))},481:e=>{e.exports='(function(root,factory){if(typeof exports==="object"){module.exports=exports=factory()}else if(typeof define==="function"&&define.amd){define([],factory)}else{globalThis.gbkTool=factory()}})(this,function(){var data=function(zipData){var re=zipData.replace(/#(\\d+)\\$/g,function(a,b){return Array(+b+3).join("#")}).replace(/#/g,"####").replace(/(\\w\\w):([\\w#]+)(?:,|$)/g,function(a,hd,dt){return dt.replace(/../g,function(a){if(a!="##"){return hd+a}else{return a}})});return re}("4e:020405060f12171f20212326292e2f313335373c40414244464a5155575a5b6263646567686a6b6c6d6e6f727475767778797a7b7c7d7f808182838485878a#909697999c9d9ea3aaafb0b1b4b6b7b8b9bcbdbec8cccfd0d2dadbdce0e2e6e7e9edeeeff1f4f8f9fafcfe,4f:00020304050607080b0c12131415161c1d212328292c2d2e31333537393b3e3f40414244454748494a4b4c525456616266686a6b6d6e7172757778797a7d8081828586878a8c8e909293959698999a9c9e9fa1a2a4abadb0b1b2b3b4b6b7b8b9babbbcbdbec0c1c2c6c7c8c9cbcccdd2d3d4d5d6d9dbe0e2e4e5e7ebecf0f2f4f5f6f7f9fbfcfdff,50:000102030405060708090a#0b0e1011131516171b1d1e20222324272b2f303132333435363738393b3d3f404142444546494a4b4d5051525354565758595b5d5e5f6061626364666768696a6b6d6e6f70717273747578797a7c7d818283848687898a8b8c8e8f909192939495969798999a9b9c9d9e9fa0a1a2a4a6aaabadaeafb0b1b3b4b5b6b7b8b9bcbdbebfc0c1c2c3c4c5c6c7c8c9cacbcccdced0d1d2d3d4d5d7d8d9dbdcdddedfe0e1e2e3e4e5e8e9eaebeff0f1f2f4f6f7f8f9fafcfdfeff,51:00010203040508#090a0c0d0e0f1011131415161718191a1b1c1d1e1f2022232425262728292a2b2c2d2e2f303132333435363738393a3b3c3d3e42474a4c4e4f5052535758595b5d5e5f606163646667696a6f727a7e7f838486878a8b8e8f90919394989a9d9e9fa1a3a6a7a8a9aaadaeb4b8b9babebfc1c2c3c5c8cacdced0d2d3d4d5d6d7d8d9dadcdedfe2e3e5e6e7e8e9eaeceef1f2f4f7fe,52:0405090b0c0f101314151c1e1f2122232526272a2c2f313234353c3e4445464748494b4e4f5253555758#595a5b5d5f6062636466686b6c6d6e7071737475767778797a7b7c7e808384858687898a8b8c8d8e8f91929495969798999a9ca4a5a6a7aeafb0b4b5b6b7b8b9babbbcbdc0c1c2c4c5c6c8cacccdcecfd1d3d4d5d7d9dadbdcdddee0e1e2e3e5e6e7e8e9eaebecedeeeff1f2f3f4f5f6f7f8fbfcfd,53:0102030407090a0b0c0e11121314181b1c1e1f2224252728292b2c2d2f3031323334353637383c3d404244464b4c4d505458595b5d65686a6c6d7276797b7c7d7e80818387888a8e8f#90919293949697999b9c9ea0a1a4a7aaabacadafb0b1b2b3b4b5b7b8b9babcbdbec0c3c4c5c6c7cecfd0d2d3d5dadcdddee1e2e7f4fafeff,54:000205070b1418191a1c2224252a303336373a3d3f4142444547494c4d4e4f515a5d5e5f6061636567696a6b6c6d6e6f7074797a7e7f8183858788898a8d919397989c9e9fa0a1a2a5aeb0b2b5b6b7b9babcbec3c5cacbd6d8dbe0e1e2e3e4ebeceff0f1f4f5f6f7f8f9fbfe,55:0002030405080a0b0c0d0e121315161718191a1c1d1e1f212526#28292b2d3234353638393a3b3d40424547484b4c4d4e4f515253545758595a5b5d5e5f60626368696b6f7071727374797a7d7f85868c8d8e9092939596979a9b9ea0a1a2a3a4a5a6a8a9aaabacadaeafb0b2b4b6b8babcbfc0c1c2c3c6c7c8cacbcecfd0d5d7d8d9dadbdee0e2e7e9edeef0f1f4f6f8f9fafbfcff,56:0203040506070a0b0d1011121314151617191a1c1d202122252628292a2b2e2f30333537383a3c3d3e404142434445464748494a4b4f5051525355565a5b5d5e5f6061#636566676d6e6f70727374757778797a7d7e7f80818283848788898a8b8c8d9091929495969798999a9b9c9d9e9fa0a1a2a4a5a6a7a8a9aaabacadaeb0b1b2b3b4b5b6b8b9babbbdbebfc0c1c2c3c4c5c6c7c8c9cbcccdcecfd0d1d2d3d5d6d8d9dce3e5e6e7e8e9eaeceeeff2f3f6f7f8fbfc,57:00010205070b0c0d0e0f101112131415161718191a1b1d1e202122242526272b313234353637383c3d3f414344454648494b52535455565859626365676c6e707172747578797a7d7e7f80#818788898a8d8e8f90919495969798999a9c9d9e9fa5a8aaacafb0b1b3b5b6b7b9babbbcbdbebfc0c1c4c5c6c7c8c9cacccdd0d1d3d6d7dbdcdee1e2e3e5e6e7e8e9eaebeceef0f1f2f3f5f6f7fbfcfeff,58:0103040508090a0c0e0f101213141617181a1b1c1d1f222325262728292b2c2d2e2f31323334363738393a3b3c3d3e3f4041424345464748494a4b4e4f505253555657595a5b5c5d5f6061626364666768696a6d6e6f707172737475767778797a7b7c7d7f82848687888a8b8c#8d8e8f909194959697989b9c9da0a1a2a3a4a5a6a7aaabacadaeafb0b1b2b3b4b5b6b7b8b9babbbdbebfc0c2c3c4c6c7c8c9cacbcccdcecfd0d2d3d4d6d7d8d9dadbdcdddedfe0e1e2e3e5e6e7e8e9eaedeff1f2f4f5f7f8fafbfcfdfeff,59:000103050608090a0b0c0e1011121317181b1d1e2021222326282c30323335363b3d3e3f404345464a4c4d505253595b5c5d5e5f616364666768696a6b6c6d6e6f70717275777a7b7c7e7f8085898b8c8e8f90919495989a9b9c9d9fa0a1a2a6#a7acadb0b1b3b4b5b6b7b8babcbdbfc0c1c2c3c4c5c7c8c9cccdcecfd5d6d9dbdedfe0e1e2e4e6e7e9eaebedeeeff0f1f2f3f4f5f6f7f8fafcfdfe,5a:00020a0b0d0e0f101214151617191a1b1d1e2122242627282a2b2c2d2e2f3033353738393a3b3d3e3f414243444547484b4c4d4e4f5051525354565758595b5c5d5e5f60616364656668696b6c6d6e6f7071727378797b7c7d7e808182838485868788898a8b8c8d8e8f9091939495969798999c9d9e9fa0a1a2a3a4a5a6a7a8a9abac#adaeafb0b1b4b6b7b9babbbcbdbfc0c3c4c5c6c7c8cacbcdcecfd0d1d3d5d7d9dadbdddedfe2e4e5e7e8eaecedeeeff0f2f3f4f5f6f7f8f9fafbfcfdfeff,5b:0001020304050607080a0b0c0d0e0f10111213141518191a1b1c1d1e1f202122232425262728292a2b2c2d2e2f303133353638393a3b3c3d3e3f4142434445464748494a4b4c4d4e4f52565e606167686b6d6e6f7274767778797b7c7e7f82868a8d8e90919294969fa7a8a9acadaeafb1b2b7babbbcc0c1c3c8c9cacbcdcecf#d1d4d5d6d7d8d9dadbdce0e2e3e6e7e9eaebecedeff1f2f3f4f5f6f7fdfe,5c:0002030507080b0c0d0e10121317191b1e1f2021232628292a2b2d2e2f303233353637434446474c4d5253545657585a5b5c5d5f62646768696a6b6c6d70727374757677787b7c7d7e808384858687898a8b8e8f9293959d9e9fa0a1a4a5a6a7a8aaaeafb0b2b4b6b9babbbcbec0c2c3c5c6c7c8c9cacccdcecfd0d1d3d4d5d6d7d8dadbdcdddedfe0e2e3e7e9ebeceeeff1f2f3f4f5f6f7f8f9fafcfdfeff,5d:00#01040508090a0b0c0d0f10111213151718191a1c1d1f2021222325282a2b2c2f3031323335363738393a3b3c3f4041424344454648494d4e4f5051525354555657595a5c5e5f6061626364656667686a6d6e7071727375767778797a7b7c7d7e7f8081838485868788898a8b8c8d8e8f9091929394959697989a9b9c9e9fa0a1a2a3a4a5a6a7a8a9aaabacadaeafb0b1b2b3b4b5b6b8b9babbbcbdbebfc0c1c2c3c4c6c7c8c9cacbcccecfd0d1d2d3d4d5d6d7d8d9dadcdfe0e3e4eaeced#f0f5f6f8f9fafbfcff,5e:000407090a0b0d0e1213171e1f20212223242528292a2b2c2f303233343536393a3e3f404143464748494a4b4d4e4f50515253565758595a5c5d5f60636465666768696a6b6c6d6e6f70717577797e8182838588898c8d8e92989b9da1a2a3a4a8a9aaabacaeafb0b1b2b4babbbcbdbfc0c1c2c3c4c5c6c7c8cbcccdcecfd0d4d5d7d8d9dadcdddedfe0e1e2e3e4e5e6e7e9ebecedeeeff0f1f2f3f5f8f9fbfcfd,5f:050607090c0d0e10121416191a1c1d1e21222324#282b2c2e30323334353637383b3d3e3f4142434445464748494a4b4c4d4e4f5154595a5b5c5e5f60636567686b6e6f72747576787a7d7e7f83868d8e8f919394969a9b9d9e9fa0a2a3a4a5a6a7a9abacafb0b1b2b3b4b6b8b9babbbebfc0c1c2c7c8cacbced3d4d5dadbdcdedfe2e3e5e6e8e9eceff0f2f3f4f6f7f9fafc,60:0708090b0c10111317181a1e1f2223242c2d2e3031323334363738393a3d3e404445464748494a4c4e4f5153545657585b5c5e5f606165666e71727475777e80#8182858687888a8b8e8f909193959798999c9ea1a2a4a5a7a9aaaeb0b3b5b6b7b9babdbebfc0c1c2c3c4c7c8c9cccdcecfd0d2d3d4d6d7d9dbdee1e2e3e4e5eaf1f2f5f7f8fbfcfdfeff,61:02030405070a0b0c1011121314161718191b1c1d1e21222528292a2c2d2e2f303132333435363738393a3b3c3d3e4041424344454647494b4d4f50525354565758595a5b5c5e5f606163646566696a6b6c6d6e6f717273747678797a7b7c7d7e7f808182838485868788898a8c8d8f9091929395#969798999a9b9c9e9fa0a1a2a3a4a5a6aaabadaeafb0b1b2b3b4b5b6b8b9babbbcbdbfc0c1c3c4c5c6c7c9cccdcecfd0d3d5d6d7d8d9dadbdcdddedfe0e1e2e3e4e5e7e8e9eaebecedeeeff0f1f2f3f4f6f7f8f9fafbfcfdfe,62:00010203040507091314191c1d1e2023262728292b2d2f303132353638393a3b3c424445464a4f50555657595a5c5d5e5f6061626465687172747577787a7b7d818283858687888b8c8d8e8f9094999c9d9ea3a6a7a9aaadaeafb0b2b3b4b6b7b8babec0c1#c3cbcfd1d5dddee0e1e4eaebf0f2f5f8f9fafb,63:00030405060a0b0c0d0f10121314151718191c2627292c2d2e30313334353637383b3c3e3f40414447484a51525354565758595a5b5c5d60646566686a6b6c6f707273747578797c7d7e7f81838485868b8d9193949597999a9b9c9d9e9fa1a4a6abafb1b2b5b6b9bbbdbfc0c1c2c3c5c7c8cacbccd1d3d4d5d7d8d9dadbdcdddfe2e4e5e6e7e8ebeceeeff0f1f3f5f7f9fafbfcfe,64:0304060708090a0d0e111215161718191a1d1f222324#252728292b2e2f3031323335363738393b3c3e404243494b4c4d4e4f505153555657595a5b5c5d5f60616263646566686a6b6c6e6f70717273747576777b7c7d7e7f8081838688898a8b8c8d8e8f90939497989a9b9c9d9fa0a1a2a3a5a6a7a8aaabafb1b2b3b4b6b9bbbdbebfc1c3c4c6c7c8c9cacbcccfd1d3d4d5d6d9dadbdcdddfe0e1e3e5e7e8e9eaebecedeeeff0f1f2f3f4f5f6f7f8f9fafbfcfdfeff,65:01020304050607080a0b0c0d0e0f10111314151617191a1b1c1d1e1f2021#222324262728292a2c2d30313233373a3c3d404142434446474a4b4d4e5052535457585a5c5f606164656768696a6d6e6f7173757678797a7b7c7d7e7f8081828384858688898a8d8e8f92949596989a9d9ea0a2a3a6a8aaacaeb1b2b3b4b5b6b7b8babbbebfc0c2c7c8c9cacdd0d1d3d4d5d8d9dadbdcdddedfe1e3e4eaebf2f3f4f5f8f9fbfcfdfeff,66:0104050708090b0d1011121617181a1b1c1e2122232426292a2b2c2e3032333738393a3b3d3f40424445464748494a4d4e505158#595b5c5d5e6062636567696a6b6c6d7172737578797b7c7d7f808183858688898a8b8d8e8f909293949598999a9b9c9e9fa0a1a2a3a4a5a6a9aaabacadafb0b1b2b3b5b6b7b8babbbcbdbfc0c1c2c3c4c5c6c7c8c9cacbcccdcecfd0d1d2d3d4d5d6d7d8dadedfe0e1e2e3e4e5e7e8eaebecedeeeff1f5f6f8fafbfd,67:010203040506070c0e0f1112131618191a1c1e20212223242527292e303233363738393b3c3e3f414445474a4b4d5254555758595a5b5d62636466676b6c6e717476#78797a7b7d8082838586888a8c8d8e8f9192939496999b9fa0a1a4a6a9acaeb1b2b4b9babbbcbdbebfc0c2c5c6c7c8c9cacbcccdced5d6d7dbdfe1e3e4e6e7e8eaebedeef2f5f6f7f8f9fafbfcfe,68:01020304060d1012141518191a1b1c1e1f20222324252627282b2c2d2e2f30313435363a3b3f474b4d4f52565758595a5b5c5d5e5f6a6c6d6e6f707172737578797a7b7c7d7e7f8082848788898a8b8c8d8e90919294959698999a9b9c9d9e9fa0a1a3a4a5a9aaabacaeb1b2b4b6b7b8#b9babbbcbdbebfc1c3c4c5c6c7c8cacccecfd0d1d3d4d6d7d9dbdcdddedfe1e2e4e5e6e7e8e9eaebecedeff2f3f4f6f7f8fbfdfeff,69:00020304060708090a0c0f11131415161718191a1b1c1d1e21222325262728292a2b2c2e2f313233353637383a3b3c3e4041434445464748494a4b4c4d4e4f50515253555658595b5c5f616264656768696a6c6d6f7072737475767a7b7d7e7f8183858a8b8c8e8f909192939697999a9d9e9fa0a1a2a3a4a5a6a9aaacaeafb0b2b3b5b6b8b9babcbd#bebfc0c2c3c4c5c6c7c8c9cbcdcfd1d2d3d5d6d7d8d9dadcdddee1e2e3e4e5e6e7e8e9eaebeceeeff0f1f3f4f5f6f7f8f9fafbfcfe,6a:000102030405060708090b0c0d0e0f10111213141516191a1b1c1d1e20222324252627292b2c2d2e30323334363738393a3b3c3f40414243454648494a4b4c4d4e4f515253545556575a5c5d5e5f60626364666768696a6b6c6d6e6f70727374757677787a7b7d7e7f81828385868788898a8b8c8d8f929394959698999a9b9c9d9e9fa1a2a3a4a5a6#a7a8aaadaeafb0b1b2b3b4b5b6b7b8b9babbbcbdbebfc0c1c2c3c4c5c6c7c8c9cacbcccdcecfd0d1d2d3d4d5d6d7d8d9dadbdcdddedfe0e1e2e3e4e5e6e7e8e9eaebecedeeeff0f1f2f3f4f5f6f7f8f9fafbfcfdfeff,6b:000102030405060708090a0b0c0d0e0f101112131415161718191a1b1c1d1e1f252628292a2b2c2d2e2f303133343536383b3c3d3f4041424445484a4b4d4e4f5051525354555657585a5b5c5d5e5f606168696b6c6d6e6f7071727374757677787a7d7e7f808588#8c8e8f909194959798999c9d9e9fa0a2a3a4a5a6a7a8a9abacadaeafb0b1b2b6b8b9babbbcbdbec0c3c4c6c7c8c9caccced0d1d8dadcdddedfe0e2e3e4e5e6e7e8e9ecedeef0f1f2f4f6f7f8fafbfcfeff,6c:000102030408090a0b0c0e12171c1d1e2023252b2c2d31333637393a3b3c3e3f434445484b4c4d4e4f5152535658595a62636566676b6c6d6e6f71737577787a7b7c7f8084878a8b8d8e9192959697989a9c9d9ea0a2a8acafb0b4b5b6b7bac0c1c2c3c6c7c8cbcdcecfd1d2d8#d9dadcdddfe4e6e7e9ecedf2f4f9ff,6d:000203050608090a0d0f101113141516181c1d1f20212223242628292c2d2f30343637383a3f404244494c50555657585b5d5f6162646567686b6c6d707172737576797a7b7d7e7f8081838486878a8b8d8f9092969798999a9ca2a5acadb0b1b3b4b6b7b9babbbcbdbec1c2c3c8c9cacdcecfd0d2d3d4d5d7dadbdcdfe2e3e5e7e8e9eaedeff0f2f4f5f6f8fafdfeff,6e:0001020304060708090b0f12131518191b1c1e1f222627282a2c2e30313335#3637393b3c3d3e3f40414245464748494a4b4c4f5051525557595a5c5d5e606162636465666768696a6c6d6f707172737475767778797a7b7c7d8081828487888a8b8c8d8e91929394959697999a9b9d9ea0a1a3a4a6a8a9abacadaeb0b3b5b8b9bcbebfc0c3c4c5c6c8c9cacccdced0d2d6d8d9dbdcdde3e7eaebecedeeeff0f1f2f3f5f6f7f8fafbfcfdfeff,6f:000103040507080a0b0c0d0e101112161718191a1b1c1d1e1f212223252627282c2e303234353738393a3b3c3d3f404142#43444548494a4c4e4f5051525354555657595a5b5d5f60616364656768696a6b6c6f707173757677797b7d7e7f808182838586878a8b8f909192939495969798999a9b9d9e9fa0a2a3a4a5a6a8a9aaabacadaeafb0b1b2b4b5b7b8babbbcbdbebfc1c3c4c5c6c7c8cacbcccdcecfd0d3d4d5d6d7d8d9dadbdcdddfe2e3e4e5e6e7e8e9eaebecedf0f1f2f3f4f5f6f7f8f9fafbfcfdfeff,70:000102030405060708090a0b0c0d0e0f1012131415161718191c1d1e1f2021222425262728292a#2b2c2d2e2f30313233343637383a3b3c3d3e3f404142434445464748494a4b4d4e505152535455565758595a5b5c5d5f606162636465666768696a6e7172737477797a7b7d818283848687888b8c8d8f90919397989a9b9e9fa0a1a2a3a4a5a6a7a8a9aab0b2b4b5b6babebfc4c5c6c7c9cbcccdcecfd0d1d2d3d4d5d6d7dadcdddee0e1e2e3e5eaeef0f1f2f3f4f5f6f8fafbfcfeff,71:0001020304050607080b0c0d0e0f111214171b1c1d1e1f2021222324252728292a2b2c2d2e323334#353738393a3b3c3d3e3f4041424344464748494b4d4f505152535455565758595a5b5d5f6061626365696a6b6c6d6f707174757677797b7c7e7f8081828385868788898b8c8d8e909192939596979a9b9c9d9ea1a2a3a4a5a6a7a9aaabadaeafb0b1b2b4b6b7b8babbbcbdbebfc0c1c2c4c5c6c7c8c9cacbcccdcfd0d1d2d3d6d7d8d9dadbdcdddedfe1e2e3e4e6e8e9eaebecedeff0f1f2f3f4f5f6f7f8fafbfcfdfeff,72:0001020304050708090a0b0c0d0e0f101112131415161718191a#1b1c1e1f2021222324252627292b2d2e2f3233343a3c3e40414243444546494a4b4e4f505153545557585a5c5e60636465686a6b6c6d707173747677787b7c7d828385868788898c8e9091939495969798999a9b9c9d9ea0a1a2a3a4a5a6a7a8a9aaabaeb1b2b3b5babbbcbdbebfc0c5c6c7c9cacbcccfd1d3d4d5d6d8dadb#95$,30:000102,00b702:c9c7,00a830:0305,2014ff5e20:162618191c1d,30:141508090a0b0c0d0e0f16171011,00:b1d7f7,22:362728110f2a2908371aa52520,231222:992b2e614c483d1d606e6f64651e3534,26:4240,00b020:3233,2103ff0400a4ff:e0e1,203000a7211626:0605,25:cbcfcec7c6a1a0b3b2,203b21:92909193,30:13#95$,21:70717273747576777879#4$,24:88898a8b8c8d8e8f909192939495969798999a9b7475767778797a7b7c7d7e7f808182838485868760616263646566676869##,32:20212223242526272829##,21:606162636465666768696a6b#97$,ff:010203e505060708090a0b0c0d0e0f101112131415161718191a1b1c1d1e1f202122232425262728292a2b2c2d2e2f303132333435363738393a3b3c3d3e3f404142434445464748494a4b4c4d4e4f505152535455565758595a5b5c5de3#95$,30:4142434445464748494a4b4c4d4e4f505152535455565758595a5b5c5d5e5f606162636465666768696a6b6c6d6e6f707172737475767778797a7b7c7d7e7f808182838485868788898a8b8c8d8e8f90919293#106$a1a2a3a4a5a6a7a8a9aaabacadaeafb0b1b2b3b4b5b6b7b8b9babbbcbdbebfc0c1c2c3c4c5c6c7c8c9cacbcccdcecfd0d1d2d3d4d5d6d7d8d9dadbdcdddedfe0e1e2e3e4e5e6e7e8e9eaebecedeeeff0f1f2f3f4f5f6#103$,03:9192939495969798999a9b9c9d9e9fa0a1a3a4a5a6a7a8a9#6$b1b2b3b4b5b6b7b8b9babbbcbdbebfc0c1c3c4c5c6c7c8c9#5$,fe:3536393a3f403d3e41424344##3b3c373831#3334#104$,04:10111213141501161718191a1b1c1d1e1f202122232425262728292a2b2c2d2e2f#13$30313233343551363738393a3b3c3d3e3f404142434445464748494a4b4c4d4e4f#11$,02:cacbd9,20:13152535,21:050996979899,22:151f23526667bf,25:505152535455565758595a5b5c5d5e5f606162636465666768696a6b6c6d6e6f7071727381828384858687#88898a8b8c8d8e8f939495bcbde2e3e4e5,2609229530:121d1e#9$,010100e101ce00e0011300e9011b00e8012b00ed01d000ec014d00f301d200f2016b00fa01d400f901:d6d8dadc,00:fcea,0251e7c701:4448,e7c802:61#2$,31:05060708090a0b0c0d0e0f101112131415161718191a1b1c1d1e1f20212223242526272829#19$,30:212223242526272829,32a333:8e8f9c9d9ea1c4ced1d2d5,fe30ff:e2e4#,212132:31#,20:10#1$,30:fc9b9cfdfe069d9e,fe:494a4b4c4d4e4f50515254555657595a5b5c5d5e5f6061#626364656668696a6b,e7:e7e8e9eaebecedeeeff0f1f2f3,30:07#11$,25:000102030405060708090a0b0c0d0e0f101112131415161718191a1b1c1d1e1f202122232425262728292a2b2c2d2e2f303132333435363738393a3b3c3d3e3f404142434445464748494a4b#13$,72:dcdddfe2e3e4e5e6e7eaebf5f6f9fdfeff,73:00020405060708090b0c0d0f1011121418191a1f2023242627282d2f30323335363a3b3c3d404142434445464748#494a4b4c4e4f515354555658595a5b5c5d5e5f6162636465666768696a6b6e7071#92$72737475767778797a7b7c7d7f808182838586888a8c8d8f90929394959798999a9c9d9ea0a1a3a4a5a6a7a8aaacadb1b4b5b6b8b9bcbdbebfc1c3c4c5c6c7#cbccced2d3d4d5d6d7d8dadbdcdddfe1e2e3e4e6e8eaebeceeeff0f1f3f4f5f6f7#92$f8f9fafbfcfdfeff,74:0001020407080b0c0d0e1112131415161718191c1d1e1f2021232427292b2d2f31323738393a3b3d3e3f4042434445464748494a4b4c4d#4e4f505152535456585d606162636465666768696a6b6c6e6f717273747578797a#92$7b7c7d7f8284858688898a8c8d8f9192939495969798999a9b9d9fa0a1a2a3a4a5a6aaabacadaeafb0b1b2b3b4b5b6b7b8b9bbbcbdbebfc0c1c2c3c4c5c6c7#c8c9cacbcccdcecfd0d1d3d4d5d6d7d8d9dadbdddfe1e5e7e8e9eaebecedf0f1f2#92$f3f5f8f9fafbfcfdfe,75:0001020305060708090a0b0c0e1012141516171b1d1e202122232426272a2e3436393c3d3f414243444647494a4d5051525355565758#5d5e5f60616263646768696b6c6d6e6f7071737576777a7b7c7d7e808182848587#92$88898a8c8d8e909395989b9c9ea2a6a7a8a9aaadb6b7babbbfc0c1c6cbcccecfd0d1d3d7d9dadcdddfe0e1e5e9ecedeeeff2f3f5f6f7f8fafbfdfe,76:02040607#08090b0d0e0f11121314161a1c1d1e212327282c2e2f31323637393a3b3d414244#92$45464748494a4b4e4f50515253555758595a5b5d5f6061626465666768696a6c6d6e7071727374757677797a7c7f80818385898a8c8d8f9092949597989a9b#9c9d9e9fa0a1a2a3a5a6a7a8a9aaabacadafb0b3b5b6b7b8b9babbbcbdbec0c1c3,554a963f57c3632854ce550954c076:914c,853c77ee827e788d72319698978d6c285b894ffa630966975cb880fa684880ae660276ce51f9655671ac7ff1888450b2596561ca6fb382ad634c625253ed54277b06516b75a45df462d48dcb9776628a8019575d97387f627238767d67cf767e64464f708d2562dc7a17659173ed642c6273822c9881677f724862:6ecc,4f3474e3534a529e7eca90a65e2e6886699c81807ed168d278c5868c9551508d8c2482de80de53058912526576:c4c7c9cbccd3d5d9dadcdddee0e1e2e3e4e6e7e8e9eaebecedf0f3f5f6f7fafbfdff,77:00020305060a0c0e0f1011121314151617181b1c1d1e21232425272a2b#2c2e3031323334393b3d3e3f4244454648494a4b4c4d4e4f52535455565758595c,858496f94fdd582199715b9d62:b1a5,66b48c799c8d7206676f789160b253:5117,8f8880cc8d1d94a1500d72c8590760eb711988ab595482ef672c7b285d297ef7752d6cf58e668ff8903c9f3b6bd491197b145f7c78a784d6853d6b:d5d9d6,5e:0187,75f995ed655d5f:0ac5,8f9f58c181c2907f965b97ad8fb97f168d2c62414fbf53:d85e,8f:a8a9ab,904d68075f6a819888689cd6618b522b762a5f6c658c6fd26ee85bbe644851:75b0,67c44e1979c9997c70b377:5d5e5f606467696a6d6e6f7071727374757677787a7b7c818283868788898a8b8f90939495969798999a9b9c9d9ea1a3a4a6a8abadaeafb1b2b4b6b7b8b9ba#bcbec0c1c2c3c4c5c6c7c8c9cacbcccecfd0d1d2d3d4d5d6d8d9dadddedfe0e1e4,75c55e7673bb83e064ad62e894b56ce2535a52c3640f94c27b944f2f5e1b823681:168a,6e246cca9a736355535c54fa886557e04e0d5e036b657c3f90e8601664e6731c88c16750624d8d22776c8e2991c75f6983dc8521991053c286956b8b60:ede8,707f82:cd31,4ed36ca785cf64cd7cd969fd66f9834953957b564fa7518c6d4b5c428e6d63d253c983:2c36,67e578b4643d5bdf5c945dee8be762c667f48c7a640063ba8749998b8c177f2094f24ea7961098a4660c731677:e6e8eaeff0f1f2f4f5f7f9fafbfc,78:0304050607080a0b0e0f101315191b1e20212224282a2b2e2f31323335363d3f414243444648494a4b4d4f51535458595a#5b5c5e5f606162636465666768696f7071727374757678797a7b7d7e7f80818283,573a5c1d5e38957f507f80a05382655e7545553150218d856284949e671d56326f6e5de2543570928f66626f64a463a35f7b6f8890f481e38fb05c1866685ff16c8996488d81886c649179f057ce6a59621054484e587a0b60e96f848bda627f901e9a8b79e4540375f4630153196c608fdf5f1b9a70803b9f7f4f885c3a8d647fc565a570bd51:45b2,866b5d075ba062bd916c75748e0c7a2061017b794ec77ef877854e1181ed521d51fa6a7153a88e87950496cf6ec19664695a78:848586888a8b8f9092949596999d9ea0a2a4a6a8a9aaabacadaeafb5b6b7b8babbbcbdbfc0c2c3c4c6c7c8cccdcecfd1d2d3d6d7d8dadbdcdddedfe0e1e2e3#e4e5e6e7e9eaebedeeeff0f1f3f5f6f8f9fbfcfdfeff,79:00020304060708090a0b0c,784050a877d7641089e6590463e35ddd7a7f693d4f20823955984e3275ae7a975e:628a,95ef521b5439708a6376952457826625693f918755076df37eaf882262337ef075b5832878c196cc8f9e614874f78bcd6b64523a8d506b21806a847156f153064e:ce1b,51d17c97918b7c074fc38e7f7be17a9c64675d1450ac810676017cb96dec7fe067515b:58f8,78cb64:ae13,63:aa2b,9519642d8fbe7b5476296253592754466b7950a362345e266b864ee38d37888b5f85902e79:0d0e0f1011121415161718191a1b1c1d1f2021222325262728292a2b2c2d2e2f3031323335363738393d3f42434445474a4b4c4d4e4f505152545558596163#6466696a6b6c6e70717273747576797b7c7d7e7f8283868788898b8c8d8e909192,6020803d62c54e39535590f863b880c665e66c2e4f4660ee6de18bde5f3986cb5f536321515a83616863520063638e4850125c9b79775bfc52307a3b60bc905376d75f:b797,76848e6c706f767b7b4977aa51f3909358244f4e6ef48fea654c7b1b72c46da47fdf5ae162b55e95573084827b2c5e1d5f1f90127f1498a063826ec7789870b95178975b57ab75354f4375385e9760e659606dc06bbf788953fc96d551cb52016389540a94938c038dcc7239789f87768fed8c0d53e079:939495969798999b9c9d9e9fa0a1a2a3a4a5a6a8a9aaabacadaeafb0b1b2b4b5b6b7b8bcbfc2c4c5c7c8cacccecfd0d3d4d6d7d9dadbdcdddee0e1e2e5e8ea#eceef1f2f3f4f5f6f7f9fafcfeff,7a:0104050708090a0c0f10111213151618191b1c,4e0176ef53ee948998769f0e952d5b9a8ba24e:221c,51ac846361c252a8680b4f97606b51bb6d1e515c6296659796618c46901775d890fd77636bd272:8aec,8bfb583577798d4c675c9540809a5ea66e2159927aef77ed953b6bb565ad7f0e58065151961f5bf958a954288e726566987f56e4949d76fe9041638754c659:1a3a,579b8eb267358dfa8235524160f0581586fe5ce89e454fc4989d8bb95a2560765384627c904f9102997f6069800c513f80335c1499756d314e8c7a:1d1f21222425262728292a2b2c2d2e2f303132343536383a3e4041424344454748494a4b4c4d4e4f50525354555658595a5b5c5d5e5f606162636465666768#696a6b6c6d6e6f717273757b7c7d7e828587898a8b8c8e8f909394999a9b9ea1a2,8d3053d17f5a7b4f4f104e4f96006cd573d085e95e06756a7ffb6a0a77fe94927e4151e170e653cd8fd483038d2972af996d6cdb574a82b365b980aa623f963259a84eff8bbf7eba653e83f2975e556198de80a5532a8bfd542080ba5e9f6cb88d3982ac915a54296c1b52067eb7575f711a6c7e7c89594b4efd5fff61247caa4e305c0167ab87025cf0950b98ce75af70fd902251af7f1d8bbd594951e44f5b5426592b657780a45b7562:76c2,8f905e456c1f7b264f:0fd8,670d7a:a3a4a7a9aaabaeafb0b1b2b4b5b6b7b8b9babbbcbdbec0c1c2c3c4c5c6c7c8c9cacccdcecfd0d1d2d3d4d5d7d8dadbdcdde1e2e4e7e8e9eaebeceef0f1f2f3#f4f5f6f7f8fbfcfe,7b:0001020507090c0d0e1012131617181a1c1d1f21222327292d,6d:6eaa,798f88b15f17752b629a8f854fef91dc65a781:2f51,5e9c81508d74526f89868d4b590d50854ed8961c723681798d1f5bcc8ba3964459877f1a549056:760e,8be565396982949976d66e895e72751867:46d1,7aff809d8d76611f79c665628d635188521a94a27f38809b7eb25c976e2f67607bd9768b9ad8818f7f947cd5641e95507a3f54:4ae5,6b4c640162089e3d80f3759952729769845b683c86e496:0194,94ec4e2a54047ed968398ddf801566f45e9a7fb97b:2f303234353637393b3d3f404142434446484a4d4e535557595c5e5f61636465666768696a6b6c6d6f70737476787a7c7d7f81828384868788898a8b8c8e8f#9192939698999a9b9e9fa0a3a4a5aeafb0b2b3b5b6b7b9babbbcbdbebfc0c2c3c4,57c2803f68975de5653b529f606d9f9a4f9b8eac516c5bab5f135de96c5e62f18d21517194a952fe6c9f82df72d757a267848d2d591f8f9c83c754957b8d4f306cbd5b6459d19f1353e486ca9aa88c3780a16545987e56fa96c7522e74dc52505be1630289024e5662d0602a68fa51735b9851a089c27ba199867f5060ef704c8d2f51495e7f901b747089c4572d78455f529f9f95fa8f689b3c8be17678684267dc8d:ea35,523d8f8a6eda68cd950590ed56fd679c88f98fc754c87b:c5c8c9cacbcdcecfd0d2d4d5d6d7d8dbdcdedfe0e2e3e4e7e8e9ebecedeff0f2f3f4f5f6f8f9fafbfdff,7c:0001020304050608090a0d0e101112131415171819#1a1b1c1d1e20212223242528292b2c2d2e2f3031323334353637393a3b3c3d3e42,9ab85b696d776c264ea55bb39a87916361a890af97e9542b6db55bd251fd558a7f:55f0,64bc634d65f161be608d710a6c:5749,592f676d822a58d5568e8c6a6beb90dd597d801753f76d695475559d83:77cf,683879be548c4f55540876d28c8996026cb36db88d6b89109e648d3a563f9ed175d55f8872e0606854fc4ea86a2a886160528f7054c470d886799e3f6d2a5b8f5f187ea255894faf7334543c539a501954:0e7c,4e4e5ffd745a58f6846b80e1877472d07cca6e567c:434445464748494a4b4c4e4f505152535455565758595a5b5c5d5e5f606162636465666768696a6b6c6d6e6f70717275767778797a7e7f8081828384858687#888a8b8c8d8e8f90939496999a9ba0a1a3a6a7a8a9abacadafb0b4b5b6b7b8babb,5f27864e552c62a44e926caa623782b154d7534e733e6ed1753b521253168bdd69d05f8a60006dee574f6b2273af68538fd87f13636260a3552475ea8c6271156da35ba65e7b8352614c9ec478fa87577c27768751f060f6714c66435e4c604d8c0e707063258f895fbd606286d456de6bc160946167534960e066668d3f79fd4f1a70e96c478b:b3f2,7ed88364660f5a5a9b426d:51f7,8c416d3b4f19706b83b7621660d1970d8d27797851fb57:3efa,673a75787a3d79ef7b957c:bfc0c2c3c4c6c9cbcecfd0d1d2d3d4d8dadbdddee1e2e3e4e5e6e7e9eaebecedeef0f1f2f3f4f5f6f7f9fafcfdfeff,7d:000102030405060708090b0c0d0e0f10#1112131415161718191a1b1c1d1e1f212324252628292a2c2d2e30313233343536,808c99658ff96fc08ba59e2159ec7ee97f095409678168d88f917c4d96c653ca602575be6c7253735ac97ea7632451e0810a5df184df628051805b634f0e796d524260b86d4e5b:c4c2,8b:a1b0,65e25fcc964559937e:e7aa,560967b759394f735bb652a0835a988a8d3e753294be50477a3c4ef767b69a7e5ac16b7c76d1575a5c167b3a95f4714e517c80a9827059787f04832768c067ec78:b177,62e363617b804fed526a51cf835069db92748d:f531,89c1952e7bad4ef67d:3738393a3b3c3d3e3f404142434445464748494a4b4c4d4e4f505152535455565758595a5b5c5d5e5f606162636465666768696a6b6c6d6f70717273747576#78797a7b7c7d7e7f808182838485868788898a8b8c8d8e8f909192939495969798,506582305251996f6e:1085,6da75efa50f559dc5c066d466c5f7586848b686859568bb253209171964d854969127901712680f64ea490ca6d479a845a0756bc640594f077eb4fa5811a72e189d2997a7f347ede527f655991758f:7f83,53eb7a9663:eda5,768679f888579636622a52ab8282685467706377776b7aed6d017ed389e359d0621285c982a5754c501f4ecb75a58beb5c4a5dfe7b4b65a491d14eca6d25895f7d2795264ec58c288fdb9773664b79818fd170ec6d787d:999a9b9c9d9e9fa0a1a2a3a4a5a7a8a9aaabacadafb0b1b2b3b4b5b6b7b8b9babbbcbdbebfc0c1c2c3c4c5c6c7c8c9cacbcccdcecfd0d1d2d3d4d5d6d7d8d9#dadbdcdddedfe0e1e2e3e4e5e6e7e8e9eaebecedeeeff0f1f2f3f4f5f6f7f8f9fa,5c3d52b283465162830e775b66769cb84eac60ca7c:beb3,7ecf4e958b66666f988897595883656c955c5f8475c997567a:dfde,51c070af7a9863ea7a767ea0739697ed4e4570784e5d915253a965:51e7,81fc8205548e5c31759a97a062d872d975bd5c459a7983ca5c40548077e94e3e6cae805a62d2636e5de851778ddd8e1e952f4ff153e560e770ac526763509e435a1f5026773753777ee26485652b628963985014723589c951b38bc07edd574783cc94a7519b541b5cfb7d:fbfcfdfeff,7e:000102030405060708090a0b0c0d0e0f101112131415161718191a1b1c1d1e1f202122232425262728292a2b2c2d2e2f30313233343536373839#3a3c3d3e3f40424344454648494a4b4c4d4e4f505152535455565758595a5b5c5d,4fca7ae36d5a90e19a8f55805496536154af5f0063e9697751ef6168520a582a52d8574e780d770b5eb761777ce062:5b97,4ea27095800362f770e49760577782db67ef68f578d5989779d158f354b353ef6e34514b523b5ba28bfe80af554357a660735751542d7a7a60505b5463a762a053e362635bc767af54ed7a9f82e691775e9388e4593857ae630e8de880ef57577b774fa95feb5bbd6b3e53217b5072c2684677:ff36,65f751b54e8f76d45cbf7aa58475594e9b4150807e:5e5f606162636465666768696a6b6c6d6e6f707172737475767778797a7b7c7d7e7f8081838485868788898a8b8c8d8e8f909192939495969798999a9c9d9e#aeb4bbbcd6e4ecf9,7f:0a101e37393b3c3d3e3f404143464748494a4b4c4d4e4f5253,998861276e8357646606634656f062:ec69,5ed39614578362c955878721814a8fa3556683b167658d5684dd5a6a680f62e67bee961151706f9c8c3063fd89c861d27f0670c26ee57405699472fc5eca90ce67176d6a635e52b3726280014f6c59e5916a70d96d9d52d24e5096f7956d857e78ca7d2f5121579264c2808b7c7b6cea68f1695e51b7539868a872819ece7bf172f879bb6f137406674e91cc9ca4793c83:8954,540f68174e3d538952b1783e5386522950884f:8bd0,7f:56595b5c5d5e6063646566676b6c6d6f7073757677787a7b7c7d7f8082838485868788898b8d8f9091929395969798999b9ca0a2a3a5a6a8a9aaabacadaeb1#b3b4b5b6b7babbbec0c2c3c4c6c7c8c9cbcdcfd0d1d2d3d6d7d9dadbdcdddee2e3,75e27acb7c926ca596b6529b748354e94fe9805483b28fde95705ec9601c6d9f5e18655b813894fe604b70bc7ec37cae51c968817cb1826f4e248f8691cf667e4eae8c0564a9804a50da759771ce5be58fbd6f664e86648295635ed66599521788c270c852a3730e7433679778f797164e3490bb9cde6dcb51db8d41541d62ce73b283f196f69f8494c34f367f9a51cc707596755cad988653e64ee46e9c740969b4786b998f7559521876246d4167f3516d9f99804b54997b3c7abf7f:e4e7e8eaebecedeff2f4f5f6f7f8f9fafdfeff,80:020708090a0e0f11131a1b1d1e1f2123242b2c2d2e2f303234393a3c3e404144454748494e4f505153555657#595b5c5d5e5f6061626364656667686b6c6d6e6f7072737475767778797a7b7c7d,9686578462e29647697c5a0464027bd36f0f964b82a6536298855e90708963b35364864f9c819e93788c97328d:ef42,9e7f6f5e79845f559646622e9a74541594dd4fa365c55c:6561,7f1586516c2f5f8b73876ee47eff5ce6631b5b6a6ee653754e7163a0756562a18f6e4f264ed16ca67eb68bba841d87ba7f57903b95237ba99aa188f8843d6d1b9a867edc59889ebb739b780186829a:6c82,561b541757cb4e709ea653568fc881097792999286ee6ee1851366fc61626f2b80:7e818285888a8d8e8f909192949597999ea3a6a7a8acb0b3b5b6b8b9bbc5c7c8c9cacbcfd0d1d2d3d4d5d8dfe0e2e3e6eef5f7f9fbfeff,81:000103040507080b#0c1517191b1c1d1f202122232425262728292a2b2d2e3033343537393a3b3c3d3f,8c298292832b76f26c135fd983bd732b8305951a6bdb77db94c6536f830251925e3d8c8c8d384e4873ab679a68859176970971646ca177095a9295416bcf7f8e66275bd059b95a9a95:e8f7,4eec84:0c99,6aac76df9530731b68a65b5f772f919a97617cdc8ff78c1c5f257c7379d889c56ccc871c5bc65e4268c977207ef551:954d,52c95a297f05976282d763cf778485d079d26e3a5e9959998511706d6c1162bf76bf654f60af95fd660e879f9e2394ed54:0d7d,8c2c647881:40414243444547494d4e4f525657585b5c5d5e5f6162636466686a6b6c6f727375767778818384858687898b8c8d8e90929394959697999a9e9fa0a1a2a4a5#a7a9abacadaeafb0b1b2b4b5b6b7b8b9bcbdbebfc4c5c7c8c9cbcdcecfd0d1d2d3,647986116a21819c78e864699b5462b9672b83ab58a89ed86cab6f205bde964c8c0b725f67d062c772614ea959c66bcd589366ae5e5552df6155672876ee776672677a4662ff54:ea50,94a090a35a1c7eb36c164e435976801059485357753796be56ca63208111607c95f96dd65462998151855ae980fd59ae9713502a6ce55c3c62df4f60533f817b90066eba852b62c85e7478be64b5637b5ff55a18917f9e1f5c3f634f80425b7d556e95:4a4d,6d8560a867e072de51dd5b8181:d4d5d6d7d8d9dadbdcdddedfe0e1e2e4e5e6e8e9ebeeeff0f1f2f5f6f7f8f9fafdff,82:030708090a0b0e0f111315161718191a1d2024252627292e323a3c3d3f#404142434546484a4c4d4e5051525354555657595b5c5d5e606162636465666769,62e76cde725b626d94ae7ebd81136d53519c5f04597452aa6012597366968650759f632a61e67cef8bfa54e66b279e256bb485d5545550766ca4556a8db4722c5e156015743662cd6392724c5f986e436d3e65006f5876d878d076fc7554522453db4e535e9e65c180:2ad6,629b5486522870ae888d8dd16ce1547880da57f988f48d54966a914d4f696c9b55b776c6783062a870f96f8e5f6d84ec68da787c7bf781a8670b9e4f636778b0576f7812973962:79ab,528874356bd782:6a6b6c6d71757677787b7c808183858687898c90939495969a9b9ea0a2a3a7b2b5b6babbbcbfc0c2c3c5c6c9d0d6d9dadde2e7e8e9eaecedeef0f2f3f5f6f8#fafcfdfeff,83:000a0b0d1012131618191d1e1f20212223242526292a2e3032373b3d,5564813e75b276ae533975de50fb5c418b6c7bc7504f72479a9798d86f0274e27968648777a562fc98918d2b54c180584e52576a82f9840d5e7351ed74f68bc45c4f57616cfc98875a4678349b448feb7c955256625194fa4ec68386846183e984b257d467345703666e6d668c3166dd7011671f6b3a6816621a59bb4e0351c46f0667d26c8f517668cb59476b6775665d0e81109f5065d779:4841,9a918d775c824e5e4f01542f5951780c56686c148fc45f036c:7de3,8bab639083:3e3f41424445484a4b4c4d4e5355565758595d6270717273747576797a7e7f808182838487888a8b8c8d8f909194959697999a9d9fa1a2a3a4a5a6a7acadae#afb5bbbebfc2c3c4c6c8c9cbcdced0d1d2d3d5d7d9dadbdee2e3e4e6e7e8ebeced,60706d3d7275626694:8ec5,53438fc17b7e4edf8c264e7e9ed494:b1b3,524d6f5c90636d458c3458115d4c6b:2049,67aa545b81547f8c589985375f3a62a26a47953965726084686577a74e544fa85de7979864ac7fd85ced4fcf7a8d520783044e14602f7a8394a64fb54eb279e6743452e482b964d279bd5bdd6c8197528f7b6c22503e537f6e0564ce66746c3060c598778bf75e86743c7a7779cb4e1890b174036c4256da914b6cc58d8b533a86c666f28eaf5c489a716e2083:eeeff3f4f5f6f7fafbfcfeff,84:0002050708090a10121314151617191a1b1e1f20212223292a2b2c2d2e2f30323334353637393a3b3e3f404142434445474849#4a4b4c4d4e4f505253545556585d5e5f606264656667686a6e6f70727477797b7c,53d65a369f8b8da353bb570898a76743919b6cc9516875ca62f372ac52:389d,7f3a7094763853749e4a69b7786e96c088d97fa471:36c3,518967d374e458e4651856b78ba9997662707ed560f970ed58ec4e:c1ba,5fcd97e74efb8ba45203598a7eab62544ecd65e5620e833884c98363878d71946eb65bb97ed2519763c967d480898339881551125b7a59828fb14e736c5d516589258f6f962e854a745e95:10f0,6da682e55f3164926d128428816e9cc3585e8d5b4e0953c184:7d7e7f8081838485868a8d8f90919293949596989a9b9d9e9fa0a2a3a4a5a6a7a8a9aaabacadaeb0b1b3b5b6b7bbbcbec0c2c3c5c6c7c8cbcccecfd2d4d5d7#d8d9dadbdcdee1e2e4e7e8e9eaebedeeeff1f2f3f4f5f6f7f8f9fafbfdfe,85:000102,4f1e6563685155d34e2764149a9a626b5ac2745f82726da968ee50e7838e7802674052396c997eb150bb5565715e7b5b665273ca82eb67495c715220717d886b95ea965564c58d6181b355846c5562477f2e58924f2455468d4f664c4e0a5c1a88f368a2634e7a0d70e7828d52fa97f65c1154e890b57ecd59628d4a86c782:0c0d,8d6664445c0461516d89793e8bbe78377533547b4f388eab6df15a207ec5795e6c885ba15a76751a80be614e6e1758f075:1f25,727253477ef385:030405060708090a0b0d0e0f101214151618191b1c1d1e2022232425262728292a2d2e2f303132333435363e3f404142444546474b4c4d4e4f505152535455#57585a5b5c5d5f60616263656667696a6b6c6d6e6f707173757677787c7d7f8081,770176db526980dc57235e08593172ee65bd6e7f8bd75c388671534177f362fe65f64ec098df86805b9e8bc653f277e24f7f5c4e9a7659cb5f0f793a58eb4e1667ff4e8b62ed8a93901d52bf662f55dc566c90024ed54f8d91ca99706c0f5e0260435ba489c68bd56536624b99965b:88ff,6388552e53d77626517d852c67a268b36b8a62928f9353d482126dd1758f4e668d4e5b70719f85af66:91d9,7f7287009ecd9f205c5e672f8ff06811675f620d7ad658855eb665706f3185:82838688898a8b8c8d8e909192939495969798999a9d9e9fa0a1a2a3a5a6a7a9abacadb1b2b3b4b5b6b8babbbcbdbebfc0c2c3c4c5c6c7c8cacbcccdced1d2#d4d6d7d8d9dadbdddedfe0e1e2e3e5e6e7e8eaebecedeeeff0f1f2f3f4f5f6f7f8,60555237800d6454887075295e05681362f4971c53cc723d8c016c3477617a0e542e77ac987a821c8bf47855671470c165af64955636601d79c153f84e1d6b7b80865bfa55e356db4f:3a3c,99725df3677e80386002988290015b8b8b:bcf5,641c825864de55fd82cf91654fd77d20901f7c9f50f358516eaf5bbf8bc980839178849c7b97867d96:8b8f,7ee59ad3788e5c817a57904296a7795f5b59635f7b0b84d168ad55067f2974107d2295016240584c4ed65b835979585485:f9fafcfdfe,86:0001020304060708090a0b0c0d0e0f10121314151718191a1b1c1d1e1f20212223242526282a2b2c2d2e2f3031323334353637393a3b3d3e3f40#4142434445464748494a4b4c525355565758595b5c5d5f6061636465666768696a,736d631e8e:4b0f,80ce82d462ac53f06cf0915e592a60016c70574d644a8d2a762b6ee9575b6a8075f06f6d8c:2d08,57666bef889278b363a253f970ad6c645858642a580268e0819b55107cd650188eba6dcc8d9f70eb638f6d9b6ed47ee68404684390036dd896768ba85957727985e4817e75bc8a8a68af52548e22951163d098988e44557c4f5366ff568f60d56d9552435c4959296dfb586b75:301c,606c82148146631167618fe2773a8d:f334,94c15e165385542c70c386:6d6f7072737475767778838485868788898e8f90919294969798999a9b9e9fa0a1a2a5a6abadaeb2b3b7b8b9bbbcbdbebfc1c2c3c5c8cccdd2d3d5d6d7dadc#dde0e1e2e3e5e6e7e8eaebeceff5f6f7fafbfcfdff,87:010405060b0c0e0f10111416,6c405ef7505c4ead5ead633a8247901a6850916e77b3540c94dc5f647ae5687663457b527edf75db507762955934900f51f879c37a8156fe5f9290146d825c60571f541051546e4d56e263a89893817f8715892a9000541e5c6f81c062:d658,81319e3596409a:6e7c,692d59a562d3553e631654c786d96d3c5a0374e6889c6b6a59168c4c5f2f6e7e73a9987d4e3870f75b8c7897633d665a769660cb5b9b5a494e0781556c6a738b4ea167897f515f8065fa671b5fd859845a0187:191b1d1f20242627282a2b2c2d2f303233353638393a3c3d404142434445464a4b4d4f505152545556585a5b5c5d5e5f6162666768696a6b6c6d6f71727375#7778797a7f8081848687898a8c8e8f90919294959698999a9b9c9d9ea0a1a2a3a4,5dcd5fae537197e68fdd684556f4552f60df4e3a6f4d7ef482c7840e59d44f:1f2a,5c3e7eac672a851a5473754f80c355829b4f4f4d6e2d8c135c096170536b761f6e29868a658795fb7eb9543b7a337d0a95ee55e17fc174ee631d87176da17a9d621165a1536763e16c835deb545c94a84e4c6c618bec5c4b65e0829c68a754:3e34,6b:cb66,4e9463425348821e4f:0dae,575e620a96fe6664726952:ffa1,609f8bef661471996790897f785277fd6670563b54389521727a87:a5a6a7a9aaaeb0b1b2b4b6b7b8b9bbbcbebfc1c2c3c4c5c7c8c9cccdcecfd0d4d5d6d7d8d9dadcdddedfe1e2e3e4e6e7e8e9ebecedeff0f1f2f3f4f5f6f7f8#fafbfcfdff,88:0001020405060708090b0c0d0e0f101112141718191a1c1d1e1f2023,7a00606f5e0c6089819d591560dc718470ef6eaa6c5072806a8488ad5e2d4e605ab3559c94e36d177cfb9699620f7ec6778e867e5323971e8f9666875ce14fa072ed4e0b53a6590f54136380952851484ed99c9c7ea454b88d248854823795f26d8e5f265acc663e966973:b02e,53bf817a99857fa15baa96:7750,7ebf76f853a2957699997bb189446e584e617fd479658be660f354cd4eab98795df76a6150cf54118c618427785d9704524a54ee56a395006d885bb56dc6665388:2425262728292a2b2c2d2e2f30313334353637383a3b3d3e3f414243464748494a4b4e4f505152535556585a5b5c5d5e5f6066676a6d6f717374757678797a#7b7c80838687898a8c8e8f90919394959798999a9b9d9e9fa0a1a3a5a6a7a8a9aa,5c0f5b5d6821809655787b11654869544e9b6b47874e978b534f631f643a90aa659c80c18c10519968b0537887f961c86c:c4fb,8c225c5185aa82af950c6b238f9b65b05f:fbc3,4fe18845661f8165732960fa51745211578b5f6290a2884c91925e78674f602759d351:44f6,80f853086c7996c4718a4f:11ee,7f9e673d55c5950879c088967ee3589f620c9700865a5618987b5f908bb884c4915753d965ed5e8f755c60647d6e5a7f7e:eaed,8f6955a75ba360ac65cb738488:acaeafb0b2b3b4b5b6b8b9babbbdbebfc0c3c4c7c8cacbcccdcfd0d1d3d6d7dadbdcdddee0e1e6e7e9eaebecedeeeff2f5f6f7fafbfdff,89:0001030405060708#090b0c0d0e0f1114151617181c1d1e1f20222324262728292c2d2e2f3132333537,9009766377297eda9774859b5b667a7496ea884052cb718f5faa65ec8be25bfb9a6f5de16b896c5b8b:adaf,900a8fc5538b62bc9e:262d,54404e2b82bd7259869c5d1688596daf96c554d14e9a8bb6710954bd960970df6df976d04e25781487125ca95ef68a00989c960e708e6cbf594463a9773c884d6f148273583071d5538c781a96c155015f6671305bb48c1a9a8c6b83592e9e2f79e76768626c4f6f75a17f8a6d0b96336c274ef075d2517b68376f3e908081705996747689:38393a3b3c3d3e3f40424345464748494a4b4c4d4e4f505152535455565758595a5b5c5d6061626364656768696a6b6c6d6e6f707172737475767778797a7c#7d7e808284858788898a8b8c8d8e8f909192939495969798999a9b9c9d9e9fa0a1,64475c2790657a918c2359da54ac8200836f898180006930564e8036723791ce51b64e5f987563964e1a53f666f3814b591c6db24e0058f9533b63d694f14f:9d0a,886398905937905779fb4eea80f075916c825b9c59e85f5d69058681501a5df24e5977e34ee5827a6291661390915c794ebf5f7981c69038808475ab4ea688d4610f6bc55fc64e4976ca6ea28b:e3ae,8c0a8bd15f027f:fccc,7ece83:356b,56e06bb797f3963459fb541f94f66deb5bc5996e5c395f15969089:a2a3a4a5a6a7a8a9aaabacadaeafb0b1b2b3b4b5b6b7b8b9babbbcbdbebfc0c3cdd3d4d5d7d8d9dbdddfe0e1e2e4e7e8e9eaecedeef0f1f2f4f5f6f7f8f9fa#fbfcfdfeff,8a:01020304050608090a0b0c0d0e0f101112131415161718191a1b1c1d,537082f16a315a749e705e947f2883b984:2425,836787478fce8d6276c85f719896786c662054df62e54f6381c375c85eb896cd8e0a86f9548f6cf36d8c6c38607f52c775285e7d4f1860a05fe75c24753190ae94c072b96cb96e389149670953:cbf3,4f5191c98bf153c85e7c8fc26de44e8e76c26986865e611a82064f:59de,903e9c7c61096e:1d14,96854e885a3196e84e0e5c7f79b95b878bed7fbd738957df828b90c15401904755bb5cea5fa161086b3272f180b28a:891e1f202122232425262728292a2b2c2d2e2f303132333435363738393a3b3c3d3f4041424344454647494a4b4c4d4e4f505152535455565758595a5b5c5d5e#5f606162636465666768696a6b6c6d6e6f7071727374757677787a7b7c7d7e7f80,6d745bd388d598848c6b9a6d9e336e0a51:a443,57a38881539f63f48f9556ed54585706733f6e907f188fdc82d1613f6028966266f07ea68d:8ac3,94a55cb37ca4670860a6960580184e9190e75300966851418fd08574915d665597f55b55531d78386742683d54c9707e5bb08f7d518d572854b1651266828d:5e43,810f846c906d7cdf51ff85fb67a365e96fa186a48e81566a90207682707671e58d2362e952196cfd8d3c600e589e618e66fe8d60624e55b36e23672d8f678a:81828384858687888b8c8d8e8f9091929495969798999a9b9c9d9e9fa0a1a2a3a4a5a6a7a8a9aaabacadaeafb0b1b2b3b4b5b6b7b8b9babbbcbdbebfc0c1c2#c3c4c5c6c7c8c9cacbcccdcecfd0d1d2d3d4d5d6d7d8d9dadbdcdddedfe0e1e2e3,94e195f87728680569a8548b4e4d70b88bc86458658b5b857a84503a5be877bb6be18a797c986cbe76cf65a98f975d2d5c5586386808536062187ad96e5b7efd6a1f7ae05f706f335f20638c6da867564e085e108d264ed780c07634969c62db662d627e6cbc8d7571677f695146808753ec906e629854f286f08f998005951785178fd96d5973cd659f771f7504782781fb8d1e94884fa6679575b98bca9707632f9547963584b8632377415f8172f04e896014657462ef6b63653f8a:e4e5e6e7e8e9eaebecedeeeff0f1f2f3f4f5f6f7f8f9fafbfcfdfeff,8b:0001020304050608090a0b0c0d0e0f101112131415161718191a1b1c1d1e1f20212223#24252728292a2b2c2d2e2f303132333435363738393a3b3c3d3e3f404142434445,5e2775c790d18bc1829d679d652f5431871877e580a281026c414e4b7ec7804c76f4690d6b966267503c4f84574063076b628dbe53ea65e87eb85fd763:1ab7,81:f3f4,7f6e5e1c5cd95236667a79e97a1a8d28709975d46ede6cbb7a924e2d76c55fe0949f88777ec879cd80bf91cd4ef24f17821f54685dde6d328bcc7ca58f7480985e1a549276b15b99663c9aa473e0682a86db6731732a8b:f8db,90107af970db716e62c477a956314e3b845767f152a986c08d2e94f87b518b:464748494a4b4c4d4e4f505152535455565758595a5b5c5d5e5f6061626364656768696a6b6d6e6f707172737475767778797a7b7c7d7e7f80818283848586#8788898a8b8c8d8e8f909192939495969798999a9b9c9d9e9facb1bbc7d0ea,8c:091e,4f4f6ce8795d9a7b6293722a62fd4e1378168f6c64b08d5a7bc668695e8488c55986649e58ee72b6690e95258ffd8d5857607f008c0651c6634962d95353684c74228301914c55447740707c6d4a517954a88d4459ff6ecb6dc45b5c7d2b4ed47c7d6ed35b5081ea6e0d5b579b0368d58e2a5b977efc603b7eb590b98d70594f63cd79df8db3535265cf79568bc5963b7ec494bb7e825634918967007f6a5c0a907566285de64f5067de505a4f5c57505e:a7#3$,8c:38393a3b3c3d3e3f4042434445484a4b4d4e4f5051525354565758595b5c5d5e5f60636465666768696c6d6e6f707172747576777b7c7d7e7f808183848687#888b8d8e8f90919293959697999a9b9c9d9e9fa0a1a2a3a4a5a6a7a8a9aaabacad,4e:8d0c,51404e105eff53454e:15981e,9b325b6c56694e2879ba4e3f53154e47592d723b536e6c1056df80e499976bd3777e9f174e:369f,9f104e:5c6993,82885b5b556c560f4ec453:8d9da3a5ae,97658d5d53:1af5262e3e,8d5c53:6663,52:02080e2d333f404c5e615c,84af52:7d82819093,51827f544e:bbc3c9c2e8e1ebde,4f1b4ef34f:2264,4ef54f:2527092b5e67,65384f:5a5d,8c:aeafb0b1b2b3b4b5b6b7b8b9babbbcbdbebfc0c1c2c3c4c5c6c7c8c9cacbcccdcecfd0d1d2d3d4d5d6d7d8d9dadbdcdddedfe0e1e2e3e4e5e6e7e8e9eaebec#edeeeff0f1f2f3f4f5f6f7f8f9fafbfcfdfeff,8d:000102030405060708090a0b0c0d,4f:5f57323d76749189838f7e7baa7cac94e6e8eac5dae3dcd1dff8,50:294c,4ff350:2c0f2e2d,4ffe50:1c0c25287e4355484e6c7ba5a7a9bad6,510650:edece6ee,51:070b,4edd6c3d4f:5865ce,9fa06c467c74516e5dfd9ec999985181591452f9530d8a07531051eb591951554ea051564eb388:6ea4,4eb5811488d279805b3488037fb851:abb1bdbc,8d:0e0f101112131415161718191a1b1c205152575f6568696a6c6e6f717278797a7b7c7d7e7f808283868788898c8d8e8f90929395969798999a9b9c9d9ea0a1#a2a4a5a6a7a8a9aaabacadaeafb0b2b6b7b9bbbdc0c1c2c5c7c8c9cacdd0d2d3d4,51:c796a2a5,8b:a0a6a7aab4b5b7c2c3cbcfced2d3d4d6d8d9dcdfe0e4e8e9eef0f3f6f9fcff,8c:000204070c0f1112141516191b181d1f202125272a2b2e2f32333536,53:697a,96:1d2221312a3d3c4249545f676c7274888d97b0,90:979b9d99aca1b4b3b6ba,8d:d5d8d9dce0e1e2e5e6e7e9edeef0f1f2f4f6fcfeff,8e:00010203040607080b0d0e1011121315161718191a1b1c202124252627282b2d303233343637383b3c3e#3f4345464c4d4e4f505354555657585a5b5c5d5e5f60616263646567686a6b6e71,90:b8b0cfc5bed0c4c7d3e6e2dcd7dbebeffe,91:04221e23312f394346,520d594252:a2acadbe,54ff52:d0d6f0,53df71ee77cd5ef451:f5fc,9b2f53b65f01755a5def57:4ca9a1,58:7ebcc5d1,57:292c2a33392e2f5c3b4269856b867c7b686d7673ada48cb2cfa7b493a0d5d8dad9d2b8f4eff8e4dd,8e:73757778797a7b7d7e808283848688898a8b8c8d8e91929395969798999a9b9d9fa0a1a2a3a4a5a6a7a8a9aaadaeb0b1b3b4b5b6b7b8b9bbbcbdbebfc0c1c2#c3c4c5c6c7c8c9cacbcccdcfd0d1d2d3d4d5d6d7d8d9dadbdcdddedfe0e1e2e3e4,58:0b0d,57:fded,58:001e194420656c81899a80,99a89f1961ff82:797d7f8f8aa8848e919799abb8beb0c8cae398b7aecbccc1a9b4a1aa9fc4cea4e1,830982:f7e4,83:0f07,82:dcf4d2d8,830c82:fbd3,83:111a061415,82:e0d5,83:1c515b5c08923c34319b5e2f4f47435f4017602d3a336665,8e:e5e6e7e8e9eaebecedeeeff0f1f2f3f4f5f6f7f8f9fafbfcfdfeff,8f:000102030405060708090a0b0c0d0e0f101112131415161718191a1b1c1d1e1f20212223#2425262728292a2b2c2d2e2f303132333435363738393a3b3c3d3e3f4041424344,83:681b696c6a6d6eb078b3b4a0aa939c857cb6a97db87b989ea8babcc1,840183:e5d8,580784:180b,83:ddfdd6,84:1c381106,83:d4df,84:0f03,83:f8f9eac5c0,842683:f0e1,84:5c515a597387887a89783c4669768c8e316dc1cdd0e6bdd3cabfbae0a1b9b497e5e3,850c750d853884f085:391f3a,8f:45464748494a4b4c4d4e4f505152535455565758595a5b5c5d5e5f6061626364656a808c929da0a1a2a4a5a6a7aaacadaeafb2b3b4b5b7b8babbbcbfc0c3c6#c9cacbcccdcfd2d6d7dae0e1e3e7eceff1f2f4f5f6fafbfcfeff,90:07080c0e131518,85:563b,84:fffc,85:594868645e7a,77a285:43727ba4a8878f79ae9c85b9b7b0d3c1dcff,86:270529163c,5efe5f0859:3c41,803759:555a58,530f5c:22252c34,62:4c6a9fbbcadad7ee,632262f663:394b43adf6717a8eb46dac8a69aebcf2f8e0ffc4dece,645263:c6be,64:45410b1b200c26215e846d96,90:191c2324252728292a2b2c303132333437393a3d3f4043454648494a4b4c4e545556595a5c5d5e5f6061646667696a6b6c6f70717273767778797a7b7c7e81#84858687898a8c8d8e8f90929496989a9c9e9fa0a4a5a7a8a9abadb2b7bcbdbfc0,64:7ab7b899bac0d0d7e4e2,65:09252e,5f:0bd2,75195f1153:5ff1fde9e8fb,54:1216064b5253545643215759233282947771649a9b8476669dd0adc2b4d2a7a6d3d472a3d5bbbfccd9dadca9aaa4ddcfde,551b54e7552054fd551454f355:22230f11272a678fb5496d41553f503c,90:c2c3c6c8c9cbcccdd2d4d5d6d8d9dadedfe0e3e4e5e9eaeceef0f1f2f3f5f6f7f9fafbfcff,91:00010305060708090a0b0c0d0e0f1011121314151617181a1b1c#1d1f20212425262728292a2b2c2d2e30323334353637383a3b3c3d3e3f40414244,55:375675767733305c8bd283b1b988819f7ed6917bdfbdbe9499eaf7c9,561f55:d1ebecd4e6ddc4efe5f2f3cccde8f5e4,8f9456:1e080c012423,55fe56:00272d5839572c4d62595c4c548664716b7b7c8593afd4d7dde1f5ebf9ff,57:040a091c,5e:0f191411313b3c,91:454748515354555658595b5c5f606667686b6d737a7b7c808182838486888a8e8f939495969798999c9d9e9fa0a1a4a5a6a7a8a9abacb0b1b2b3b6b7b8b9bb#bcbdbebfc0c1c2c3c4c5c6c8cbd0d2d3d4d5d6d7d8d9dadbdddedfe0e1e2e3e4e5,5e:3744545b5e61,5c:8c7a8d9096889899919a9cb5a2bdacabb1a3c1b7c4d2e4cbe5,5d:020327262e241e061b583e343d6c5b6f5d6b4b4a697482999d,8c735d:b7c5,5f:73778287898c95999ca8adb5bc,88625f6172:adb0b4b7b8c3c1cecdd2e8efe9f2f4f7,730172f3730372fa91:e6e7e8e9eaebecedeeeff0f1f2f3f4f5f6f7f8f9fafbfcfdfeff,92:000102030405060708090a0b0c0d0e0f101112131415161718191a1b1c1d1e1f2021222324#25262728292a2b2c2d2e2f303132333435363738393a3b3c3d3e3f404142434445,72fb73:1713210a1e1d152239252c3831504d57606c6f7e,821b592598e759:2402,99:636768696a6b6c74777d8084878a8d9091939495,5e:80918b96a5a0b9b5beb3,8d535e:d2d1dbe8ea,81ba5f:c4c9d6cf,60035fee60045f:e1e4fe,60:0506,5f:eaedf8,60:1935261b0f0d292b0a3f2178797b7a42,92:464748494a4b4c4d4e4f505152535455565758595a5b5c5d5e5f606162636465666768696a6b6c6d6e6f7071727375767778797a7b7c7d7e7f808182838485#868788898a8b8c8d8f909192939495969798999a9b9c9d9e9fa0a1a2a3a4a5a6a7,60:6a7d969aad9d83928c9becbbb1ddd8c6dab4,61:20261523,60f461:000e2b4a75ac94a7b7d4f5,5fdd96b395:e9ebf1f3f5f6fcfe,96:030406080a0b0c0d0f12151617191a,4e2c723f62156c:35545c4aa38590948c6869747686a9d0d4adf7f8f1d7b2e0d6faebeeb1d3effe,92:a8a9aaabacadafb0b1b2b3b4b5b6b7b8b9babbbcbdbebfc0c1c2c3c4c5c6c7c9cacbcccdcecfd0d1d2d3d4d5d6d7d8d9dadbdcdddedfe0e1e2e3e4e5e6e7e8#e9eaebecedeeeff0f1f2f3f4f5f6f7f8f9fafbfcfdfeff,93:00010203040506070809,6d:39270c43480704190e2b4d2e351a4f525433916f9ea05e93945c607c63,6e1a6d:c7c5de,6e0e6d:bfe0,6e116d:e6ddd9,6e166dab6e0c6dae6e:2b6e4e6bb25f865354322544dfb198e0,6f2d6e:e2a5a7bdbbb7d7b4cf8fc29f,6f:6246472415,6ef96f:2f364b742a0929898d8c78727c7ad1,93:0a0b0c0d0e0f101112131415161718191a1b1c1d1e1f202122232425262728292a2b2c2d2e2f303132333435363738393a3b3c3d3f40414243444546474849#4a4b4c4d4e4f505152535455565758595a5b5c5d5e5f606162636465666768696b,6f:c9a7b9b6c2e1eedee0ef,70:1a231b39354f5e,5b:80849593a5b8,752f9a9e64345b:e4ee,89305bf08e478b078f:b6d3d5e5eee4e9e6f3e8,90:05040b26110d162135362d2f445152506858625b,66b990:747d8288838b,5f:50575658,5c3b54ab5c:5059,5b715c:6366,7fbc5f:2a292d,82745f3c9b3b5c6e59:81838da9aaa3,93:6c6d6e6f707172737475767778797a7b7c7d7e7f808182838485868788898a8b8c8d8e909192939495969798999a9b9c9d9e9fa0a1a2a3a4a5a6a7a8a9aaab#acadaeafb0b1b2b3b4b5b6b7b8b9babbbcbdbebfc0c1c2c3c4c5c6c7c8c9cbcccd,59:97caab9ea4d2b2afd7be,5a:0506,59dd5a0859:e3d8f9,5a:0c09323411231340674a553c6275,80ec5a:aa9b777abeebb2d2d4b8e0e3f1d6e6d8dc,5b:091716323740,5c:151c,5b:5a6573515362,9a:7577787a7f7d808185888a90929396989b9c9d9fa0a2a3a5a7,7e:9fa1a3a5a8a9,93:cecfd0d1d2d3d4d5d7d8d9dadbdcdddedfe0e1e2e3e4e5e6e7e8e9eaebecedeeeff0f1f2f3f4f5f6f7f8f9fafbfcfdfeff,94:000102030405060708090a0b0c0d#0e0f101112131415161718191a1b1c1d1e1f202122232425262728292a2b2c2d2e,7e:adb0bec0c1c2c9cbccd0d4d7dbe0e1e8ebeeeff1f2,7f0d7e:f6fafbfe,7f:01020307080b0c0f111217191c1b1f212223242526272a2b2c2d2f3031323335,5e7a757f5ddb753e909573:8e91aea29fcfc2d1b7b3c0c9c8e5d9,987c740a73:e9e7debaf2,74:0f2a5b262528302e2c,94:2f303132333435363738393a3b3c3d3f404142434445464748494a4b4c4d4e4f505152535455565758595a5b5c5d5e5f606162636465666768696a6c6d6e6f#707172737475767778797a7b7c7d7e7f8081828384919698c7cfd3d4dae6fb,95:1c20,74:1b1a415c575559776d7e9c8e8081878b9ea8a990a7d2ba,97:eaebec,67:4c535e4869a5876a7398a775a89ead8b777cf0,680967d8680a67:e9b0,680c67:d9b5dab3dd,680067:c3b8e2,680e67:c1fd,68:323360614e624464831d55664167403e4a4929b58f7477936bc2,696e68fc69:1f20,68f995:27333d43484b555a606e74757778797a7b7c7d7e808182838485868788898a8b8c8d8e8f909192939495969798999a9b9c9d9e9fa0a1a2a3a4a5a6a7a8a9aa#abacadaeafb0b1b2b3b4b5b6b7b8b9babbbcbdbebfc0c1c2c3c4c5c6c7c8c9cacb,692468f069:0b0157,68e369:10713960425d846b80987834cc8788ce896663799ba7bbabadd4b1c1cadf95e08dff,6a2f69ed6a:171865,69f26a:443ea0505b358e793d28587c9190a997ab,73:3752,6b:8182878492938d9a9ba1aa,8f:6b6d71727375767877797a7c7e818284878b,95:cccdcecfd0d1d2d3d4d5d6d7d8d9dadbdcdddedfe0e1e2e3e4e5e6e7ecff,96:0713181b1e20232425262728292b2c2d2f303738393a3e41434a4e4f5152535657#58595a5c5d5e606365666b6d6e6f70717378797a7b7c7d7e7f808182838487898a,8f:8d8e8f989a,8ece62:0b171b1f222125242c,81e774:eff4ff,75:0f1113,65:34eeeff0,66:0a19,677266:031500,708566:f71d34313635,800666:5f54414f56615777848ca79dbedbdce6e9,8d:3233363b3d4045464849474d5559,89:c7cacbcccecfd0d1,72:6e9f5d666f7e7f848b8d8f92,63:0832b0,96:8c8e91929395969a9b9d9e9fa0a1a2a3a4a5a6a8a9aaabacadaeafb1b2b4b5b7b8babbbfc2c3c8cacbd0d1d3d4d6d7d8d9dadbdcdddedfe1e2e3e4e5e6e7eb#ecedeef0f1f2f4f5f8fafbfcfdff,97:0203050a0b0c10111214151718191a1b1d1f20,64:3fd8,80046b:eaf3fdf5f9,6c:0507060d1518191a2129242a32,65:35556b,72:4d525630,8662521680:9f9c93bc,670a80:bdb1abadb4b7e7e8e9eadbc2c4d9cdd7,671080:ddebf1f4ed,81:0d0e,80:f2fc,671581128c5a81:361e2c1832484c5374595a7160697c7d6d67,584d5ab581:888291,6ed581:a3aacc,672681:cabb,97:2122232425262728292b2c2e2f3133343536373a3b3c3d3f404142434445464748494a4b4c4d4e4f5051545557585a5c5d5f63646667686a6b6c6d6e6f7071#72757778797a7b7d7e7f8081828384868788898a8c8e8f9093959697999a9b9c9d,81:c1a6,6b:243739434659,98:d1d2d3d5d9da,6bb35f406bc289f365909f5165:93bcc6c4c3ccced2d6,70:809c969dbbc0b7abb1e8ca,71:1013162f31735c6845724a787a98b3b5a8a0e0d4e7f9,72:1d28,706c71:1866b9,62:3e3d434849,79:3b4046495b5c535a6257606f677a858a9aa7b3,5f:d1d0,97:9e9fa1a2a4a5a6a7a8a9aaacaeb0b1b3b5b6b7b8b9babbbcbdbebfc0c1c2c3c4c5c6c7c8c9cacbcccdcecfd0d1d2d3d4d5d6d7d8d9dadbdcdddedfe0e1e2e3#e4e5e8eeeff0f1f2f4f7f8f9fafbfcfdfeff,98:000102030405060708090a0b0c0d0e,60:3c5d5a67415963ab,61:060d5da99dcbd1,620680:807f,6c:93f6,6dfc77:f6f8,78:0009171811,65ab78:2d1c1d393a3b1f3c252c23294e6d56572650474c6a9b939a879ca1a3b2b9a5d4d9c9ecf2,790578f479:13241e34,9f9b9e:f9fbfc,76f177:040d,76f977:07081a22192d263538505147435a68,98:0f101112131415161718191a1b1c1d1e1f202122232425262728292a2b2c2d2e2f303132333435363738393a3b3c3d3e3f404142434445464748494a4b4c4d#4e4f505152535455565758595a5b5c5d5e5f606162636465666768696a6b6c6d6e,77:62657f8d7d808c919fa0b0b5bd,75:3a404e4b485b727983,7f:58615f,8a487f:68747179817e,76:cde5,883294:8586878b8a8c8d8f909497959a9b9ca3a4abaaadacafb0b2b4b6b7b8b9babcbdbfc4c8c9cacbcccdced0d1d2d5d6d7d9d8dbdedfe0e2e4e5e7e8ea,98:6f70717273748b8e929599a3a8a9aaabacadaeafb0b1b2b3b4b5b6b7b8b9babbbcbdbebfc0c1c2c3c4c5c6c7c8c9cacbcccdcfd0d4d6d7dbdcdde0e1e2e3e4#e5e6e9eaebecedeeeff0f1f2f3f4f5f6f7f8f9fafbfcfdfeff,99:0001020304050607,94:e9ebeeeff3f4f5f7f9fcfdff,95:03020607090a0d0e0f1213141516181b1d1e1f222a2b292c3132343637383c3e3f4235444546494c4e4f525354565758595b5e5f5d61626465666768696a6b6c6f7172733a,77:e7ec,96c979:d5ede3eb,7a065d477a:03021e14,99:08090a0b0c0e0f1112131415161718191a1b1c1d1e1f202122232425262728292a2b2c2d2f303132333435363738393a3b3c3d3e3f40414243444546474849#4a4b4c4d4e4f50515253565758595a5b5c5d5e5f60616264667378797b7e828389,7a:393751,9ecf99a57a7076:888e9399a4,74:dee0,752c9e:202228292a2b2c3231363837393a3e414244464748494b4c4e5155575a5b5c5e63666768696a6b6c716d73,75:929496a09daca3b3b4b8c4b1b0c3c2d6cde3e8e6e4ebe7,760375:f1fcff,76:1000050c170a25181519,99:8c8e9a9b9c9d9e9fa0a1a2a3a4a6a7a9aaabacadaeafb0b1b2b3b4b5b6b7b8b9babbbcbdbebfc0c1c2c3c4c5c6c7c8c9cacbcccdcecfd0d1d2d3d4d5d6d7d8#d9dadbdcdddedfe0e1e2e3e4e5e6e7e8e9eaebecedeeeff0f1f2f3f4f5f6f7f8f9,76:1b3c2220402d303f35433e334d5e545c566b6f,7fca7a:e6787980868895a6a0aca8adb3,88:6469727d7f82a2c6b7bcc9e2cee3e5f1,891a88:fce8fef0,89:2119131b0a342b3641667b,758b80e576:b2b4,77dc80:1214161c20222526272928310b3543464d526971,898398:788083,99:fafbfcfdfeff,9a:000102030405060708090a0b0c0d0e0f101112131415161718191a1b1c1d1e1f202122232425262728292a2b2c2d2e2f303132333435363738#393a3b3c3d3e3f404142434445464748494a4b4c4d4e4f50515253545556575859,98:898c8d8f949a9b9e9fa1a2a5a6,86:4d546c6e7f7a7c7ba88d8bac9da7a3aa93a9b6c4b5ceb0bab1afc9cfb4e9f1f2edf3d0,871386:def4dfd8d1,87:0307,86f887:080a0d09233b1e252e1a3e48343129373f82227d7e7b60704c6e8b53637c64596593afa8d2,9a:5a5b5c5d5e5f606162636465666768696a6b7283898d8e949599a6a9aaabacadaeafb2b3b4b5b9bbbdbebfc3c4c6c7c8c9cacdcecfd0d2d4d5d6d7d9dadbdc#dddee0e2e3e4e5e7e8e9eaeceef0f1f2f3f4f5f6f7f8fafcfdfeff,9b:000102040506,87:c68885ad9783abe5acb5b3cbd3bdd1c0cadbeae0ee,88:1613,87fe88:0a1b21393c,7f:36424445,82107a:fafd,7b:080304150a2b0f47382a192e31202524333e1e585a45754c5d606e7b62727190a6a7b8ac9da885aa9ca2abb4d1c1ccdddae5e6ea,7c0c7b:fefc,7c:0f160b,9b:07090a0b0c0d0e1011121415161718191a1b1c1d1e2021222425262728292a2b2c2d2e3031333435363738393a3d3e3f40464a4b4c4e50525355565758595a#5b5c5d5e5f606162636465666768696a6b6c6d6e6f707172737475767778797a7b,7c:1f2a26384140,81fe82:010204,81ec884482:2122232d2f282b383b33343e44494b4f5a5f68,88:7e8588d8df,895e7f:9d9fa7afb0b2,7c7c65497c:919d9c9ea2b2bcbdc1c7cccdc8c5d7e8,826e66a87f:bfced5e5e1e6e9eef3,7cf87d:77a6ae,7e:479b,9e:b8b4,8d:73849491b1676d,8c:4749,91:4a504e4f64,9b:7c7d7e7f808182838485868788898a8b8c8d8e8f909192939495969798999a9b9c9d9e9fa0a1a2a3a4a5a6a7a8a9aaabacadaeafb0b1b2b3b4b5b6b7b8b9ba#bbbcbdbebfc0c1c2c3c4c5c6c7c8c9cacbcccdcecfd0d1d2d3d4d5d6d7d8d9dadb,91:626170696f7d7e7274798c85908d91a2a3aaadaeafb5b4ba,8c559e7e8d:b8eb,8e:055969,8d:b5bfbcbac4d6d7dadececfdbc6ecf7f8e3f9fbe4,8e098dfd8e:141d1f2c2e232f3a4039353d3149414251524a70767c6f74858f94909c9e,8c:78828a859894,659b89:d6dedadc,9b:dcdddedfe0e1e2e3e4e5e6e7e8e9eaebecedeeeff0f1f2f3f4f5f6f7f8f9fafbfcfdfeff,9c:000102030405060708090a0b0c0d0e0f101112131415161718191a#1b1c1d1e1f202122232425262728292a2b2c2d2e2f303132333435363738393a3b,89:e5ebef,8a3e8b26975396:e9f3ef,97:0601080f0e2a2d303e,9f:808385868788898a8c,9efe9f:0b0d,96:b9bcbdced2,77bf96e092:8eaec8,93:3e6aca8f,94:3e6b,9c:7f8285868788,7a239c:8b8e90919294959a9b9e9fa0a1a2a3a5a6a7a8a9abadaeb0b1b2b3b4b5b6b7babbbcbdc4c5c6c7cacb3c3d3e3f404142434445464748494a4b4c4d4e4f505152535455565758595a5b5c5d5e5f606162636465666768696a6b6c6d6e6f707172737475767778797a#7b7d7e808384898a8c8f93969798999daaacafb9bebfc0c1c2c8c9d1d2dadbe0e1cccdcecfd0d3d4d5d7d8d9dcdddfe2,97:7c85919294afaba3b2b4,9a:b1b0b7,9e589a:b6babcc1c0c5c2cbccd1,9b:45434749484d51,98e899:0d2e5554,9a:dfe1e6efebfbedf9,9b:080f131f23,9e:bdbe,7e3b9e:8287888b92,93d69e:9d9fdbdcdde0dfe2e9e7e5eaef,9f:222c2f39373d3e44,9c:e3e4e5e6e7e8e9eaebecedeeeff0f1f2f3f4f5f6f7f8f9fafbfcfdfeff,9d:000102030405060708090a0b0c0d0e0f101112131415161718191a1b1c1d1e1f2021#22232425262728292a2b2c2d2e2f303132333435363738393a3b3c3d3e3f404142#92$434445464748494a4b4c4d4e4f505152535455565758595a5b5c5d5e5f606162636465666768696a6b6c6d6e6f707172737475767778797a7b7c7d7e7f8081#82838485868788898a8b8c8d8e8f909192939495969798999a9b9c9d9e9fa0a1a2#92$a3a4a5a6a7a8a9aaabacadaeafb0b1b2b3b4b5b6b7b8b9babbbcbdbebfc0c1c2c3c4c5c6c7c8c9cacbcccdcecfd0d1d2d3d4d5d6d7d8d9dadbdcdddedfe0e1#e2e3e4e5e6e7e8e9eaebecedeeeff0f1f2f3f4f5f6f7f8f9fafbfcfdfeff,9e:000102#92$030405060708090a0b0c0d0e0f101112131415161718191a1b1c1d1e24272e30343b3c404d5052535456595d5f606162656e6f727475767778797a7b7c7d80#8183848586898a8c8d8e8f90919495969798999a9b9c9ea0a1a2a3a4a5a7a8a9aa#92$abacadaeafb0b1b2b3b5b6b7b9babcbfc0c1c2c3c5c6c7c8cacbccd0d2d3d5d6d7d9dadee1e3e4e6e8ebecedeef0f1f2f3f4f5f6f7f8fafdff,9f:000102030405#060708090a0c0f1112141516181a1b1c1d1e1f21232425262728292a2b2d2e3031#92$3233343536383a3c3f4041424345464748494a4b4c4d4e4f52535455565758595a5b5c5d5e5f606162636465666768696a6b6c6d6e6f707172737475767778#797a7b7c7d7e81828d8e8f9091929394959697989c9d9ea1a2a3a4a5,f9:2c7995e7f1#92$,fa:0c0d0e0f111314181f20212324272829,e8:15161718191a1b1c1d1e1f202122232425262728292a2b2c2d2e2f303132333435363738393a3b3c3d3e3f40414243#4445464748494a4b4c4d4e4f505152535455565758595a5b5c5d5e5f6061626364"),U2Ghash={},G2Uhash={};!function(data){var k=0;data=data.match(/..../g);for(var i=129;i<=254;i++){for(var j=64;j<=254;j++){U2Ghash[data[k++]]=("%"+i.toString(16)+"%"+j.toString(16)).toUpperCase()}}for(var key in U2Ghash){G2Uhash[U2Ghash[key]]=key}}(data);function isAscii(unicode){return unicode==8364||unicode<=127&&unicode>=0}return{encode:function(str){return str.replace(/./g,function(a){var code=a.charCodeAt(0);if(isAscii(code)){return encodeURIComponent(a)}else{var key=code.toString(16);if(key.length!=4)key=("000"+key).match(/....$/)[0];return U2Ghash[key]||a}})},decode:function(str){return str.replace(/%[0-9A-F]{2}%[0-9A-F]{2}/g,function(a){if(a in G2Uhash){return String.fromCharCode("0x"+G2Uhash[a])}else{return a}}).replace(/%[\\w]{2}/g,function(a){return decodeURIComponent(a)})}}});'},536:(e,t,n)=>{n(642)(n(145))},603:(e,t,n)=>{n(642)(n(990))},642:e=>{e.exports=function(e){function t(e){"undefined"!=typeof console&&(console.error||console.log)("[Script Loader]",e)}try{"undefined"!=typeof execScript&&function n(){return"undefined"!=typeof attachEvent&&"undefined"==typeof addEventListener}()?execScript(e):"undefined"!=typeof eval?eval.call(null,e):t("EvalError: No eval function available")}catch(e){t(e)}}},740:(e,t,n)=>{n(642)(n(481))},761:e=>{e.exports='(function(root,factory){if(typeof exports==="object"){module.exports=exports=factory()}else if(typeof define==="function"&&define.amd){define([],factory)}else{globalThis.WXXH=factory()}})(this,function(){const t=new Uint8Array([0,97,115,109,1,0,0,0,1,48,8,96,3,127,127,127,1,127,96,3,127,127,127,0,96,2,127,127,0,96,1,127,1,127,96,3,127,127,126,1,126,96,3,126,127,127,1,126,96,2,127,126,0,96,1,127,1,126,3,11,10,0,0,2,1,3,4,5,6,1,7,5,3,1,0,1,7,85,9,3,109,101,109,2,0,5,120,120,104,51,50,0,0,6,105,110,105,116,51,50,0,2,8,117,112,100,97,116,101,51,50,0,3,8,100,105,103,101,115,116,51,50,0,4,5,120,120,104,54,52,0,5,6,105,110,105,116,54,52,0,7,8,117,112,100,97,116,101,54,52,0,8,8,100,105,103,101,115,116,54,52,0,9,10,251,22,10,242,1,1,4,127,32,0,32,1,106,33,3,32,1,65,16,79,4,127,32,3,65,16,107,33,6,32,2,65,168,136,141,161,2,106,33,3,32,2,65,137,235,208,208,7,107,33,4,32,2,65,207,140,162,142,6,106,33,5,3,64,32,3,32,0,40,2,0,65,247,148,175,175,120,108,106,65,13,119,65,177,243,221,241,121,108,33,3,32,4,32,0,65,4,106,34,0,40,2,0,65,247,148,175,175,120,108,106,65,13,119,65,177,243,221,241,121,108,33,4,32,2,32,0,65,4,106,34,0,40,2,0,65,247,148,175,175,120,108,106,65,13,119,65,177,243,221,241,121,108,33,2,32,5,32,0,65,4,106,34,0,40,2,0,65,247,148,175,175,120,108,106,65,13,119,65,177,243,221,241,121,108,33,5,32,6,32,0,65,4,106,34,0,79,13,0,11,32,2,65,12,119,32,5,65,18,119,106,32,4,65,7,119,106,32,3,65,1,119,106,5,32,2,65,177,207,217,178,1,106,11,32,1,106,32,0,32,1,65,15,113,16,1,11,146,1,0,32,1,32,2,106,33,2,3,64,32,1,65,4,106,32,2,75,69,4,64,32,0,32,1,40,2,0,65,189,220,202,149,124,108,106,65,17,119,65,175,214,211,190,2,108,33,0,32,1,65,4,106,33,1,12,1,11,11,3,64,32,1,32,2,79,69,4,64,32,0,32,1,45,0,0,65,177,207,217,178,1,108,106,65,11,119,65,177,243,221,241,121,108,33,0,32,1,65,1,106,33,1,12,1,11,11,32,0,32,0,65,15,118,115,65,247,148,175,175,120,108,34,0,65,13,118,32,0,115,65,189,220,202,149,124,108,34,0,65,16,118,32,0,115,11,63,0,32,0,65,8,106,32,1,65,168,136,141,161,2,106,54,2,0,32,0,65,12,106,32,1,65,137,235,208,208,7,107,54,2,0,32,0,65,16,106,32,1,54,2,0,32,0,65,20,106,32,1,65,207,140,162,142,6,106,54,2,0,11,195,4,1,6,127,32,1,32,2,106,33,6,32,0,65,24,106,33,4,32,0,65,40,106,40,2,0,33,3,32,0,32,0,40,2,0,32,2,106,54,2,0,32,0,65,4,106,34,5,32,5,40,2,0,32,2,65,16,79,32,0,40,2,0,65,16,79,114,114,54,2,0,32,2,32,3,106,65,16,73,4,64,32,3,32,4,106,32,1,32,2,252,10,0,0,32,0,65,40,106,32,2,32,3,106,54,2,0,15,11,32,3,4,64,32,3,32,4,106,32,1,65,16,32,3,107,34,2,252,10,0,0,32,0,65,8,106,34,3,32,3,40,2,0,32,4,40,2,0,65,247,148,175,175,120,108,106,65,13,119,65,177,243,221,241,121,108,54,2,0,32,0,65,12,106,34,3,32,3,40,2,0,32,4,65,4,106,40,2,0,65,247,148,175,175,120,108,106,65,13,119,65,177,243,221,241,121,108,54,2,0,32,0,65,16,106,34,3,32,3,40,2,0,32,4,65,8,106,40,2,0,65,247,148,175,175,120,108,106,65,13,119,65,177,243,221,241,121,108,54,2,0,32,0,65,20,106,34,3,32,3,40,2,0,32,4,65,12,106,40,2,0,65,247,148,175,175,120,108,106,65,13,119,65,177,243,221,241,121,108,54,2,0,32,0,65,40,106,65,0,54,2,0,32,1,32,2,106,33,1,11,32,1,32,6,65,16,107,77,4,64,32,6,65,16,107,33,8,32,0,65,8,106,40,2,0,33,2,32,0,65,12,106,40,2,0,33,3,32,0,65,16,106,40,2,0,33,5,32,0,65,20,106,40,2,0,33,7,3,64,32,2,32,1,40,2,0,65,247,148,175,175,120,108,106,65,13,119,65,177,243,221,241,121,108,33,2,32,3,32,1,65,4,106,34,1,40,2,0,65,247,148,175,175,120,108,106,65,13,119,65,177,243,221,241,121,108,33,3,32,5,32,1,65,4,106,34,1,40,2,0,65,247,148,175,175,120,108,106,65,13,119,65,177,243,221,241,121,108,33,5,32,7,32,1,65,4,106,34,1,40,2,0,65,247,148,175,175,120,108,106,65,13,119,65,177,243,221,241,121,108,33,7,32,8,32,1,65,4,106,34,1,79,13,0,11,32,0,65,8,106,32,2,54,2,0,32,0,65,12,106,32,3,54,2,0,32,0,65,16,106,32,5,54,2,0,32,0,65,20,106,32,7,54,2,0,11,32,1,32,6,73,4,64,32,4,32,1,32,6,32,1,107,34,1,252,10,0,0,32,0,65,40,106,32,1,54,2,0,11,11,97,1,1,127,32,0,65,16,106,40,2,0,33,1,32,0,65,4,106,40,2,0,4,127,32,1,65,12,119,32,0,65,20,106,40,2,0,65,18,119,106,32,0,65,12,106,40,2,0,65,7,119,106,32,0,65,8,106,40,2,0,65,1,119,106,5,32,1,65,177,207,217,178,1,106,11,32,0,40,2,0,106,32,0,65,24,106,32,0,65,40,106,40,2,0,16,1,11,255,3,2,3,126,1,127,32,0,32,1,106,33,6,32,1,65,32,79,4,126,32,6,65,32,107,33,6,32,2,66,214,235,130,238,234,253,137,245,224,0,124,33,3,32,2,66,177,169,172,193,173,184,212,166,61,125,33,4,32,2,66,249,234,208,208,231,201,161,228,225,0,124,33,5,3,64,32,3,32,0,41,3,0,66,207,214,211,190,210,199,171,217,66,126,124,66,31,137,66,135,149,175,175,152,182,222,155,158,127,126,33,3,32,4,32,0,65,8,106,34,0,41,3,0,66,207,214,211,190,210,199,171,217,66,126,124,66,31,137,66,135,149,175,175,152,182,222,155,158,127,126,33,4,32,2,32,0,65,8,106,34,0,41,3,0,66,207,214,211,190,210,199,171,217,66,126,124,66,31,137,66,135,149,175,175,152,182,222,155,158,127,126,33,2,32,5,32,0,65,8,106,34,0,41,3,0,66,207,214,211,190,210,199,171,217,66,126,124,66,31,137,66,135,149,175,175,152,182,222,155,158,127,126,33,5,32,6,32,0,65,8,106,34,0,79,13,0,11,32,2,66,12,137,32,5,66,18,137,124,32,4,66,7,137,124,32,3,66,1,137,124,32,3,66,207,214,211,190,210,199,171,217,66,126,66,31,137,66,135,149,175,175,152,182,222,155,158,127,126,133,66,135,149,175,175,152,182,222,155,158,127,126,66,157,163,181,234,131,177,141,138,250,0,125,32,4,66,207,214,211,190,210,199,171,217,66,126,66,31,137,66,135,149,175,175,152,182,222,155,158,127,126,133,66,135,149,175,175,152,182,222,155,158,127,126,66,157,163,181,234,131,177,141,138,250,0,125,32,2,66,207,214,211,190,210,199,171,217,66,126,66,31,137,66,135,149,175,175,152,182,222,155,158,127,126,133,66,135,149,175,175,152,182,222,155,158,127,126,66,157,163,181,234,131,177,141,138,250,0,125,32,5,66,207,214,211,190,210,199,171,217,66,126,66,31,137,66,135,149,175,175,152,182,222,155,158,127,126,133,66,135,149,175,175,152,182,222,155,158,127,126,66,157,163,181,234,131,177,141,138,250,0,125,5,32,2,66,197,207,217,178,241,229,186,234,39,124,11,32,1,173,124,32,0,32,1,65,31,113,16,6,11,134,2,0,32,1,32,2,106,33,2,3,64,32,2,32,1,65,8,106,79,4,64,32,1,41,3,0,66,207,214,211,190,210,199,171,217,66,126,66,31,137,66,135,149,175,175,152,182,222,155,158,127,126,32,0,133,66,27,137,66,135,149,175,175,152,182,222,155,158,127,126,66,157,163,181,234,131,177,141,138,250,0,125,33,0,32,1,65,8,106,33,1,12,1,11,11,32,1,65,4,106,32,2,77,4,64,32,0,32,1,53,2,0,66,135,149,175,175,152,182,222,155,158,127,126,133,66,23,137,66,207,214,211,190,210,199,171,217,66,126,66,249,243,221,241,153,246,153,171,22,124,33,0,32,1,65,4,106,33,1,11,3,64,32,1,32,2,73,4,64,32,0,32,1,49,0,0,66,197,207,217,178,241,229,186,234,39,126,133,66,11,137,66,135,149,175,175,152,182,222,155,158,127,126,33,0,32,1,65,1,106,33,1,12,1,11,11,32,0,32,0,66,33,136,133,66,207,214,211,190,210,199,171,217,66,126,34,0,32,0,66,29,136,133,66,249,243,221,241,153,246,153,171,22,126,34,0,32,0,66,32,136,133,11,77,0,32,0,65,8,106,32,1,66,214,235,130,238,234,253,137,245,224,0,124,55,3,0,32,0,65,16,106,32,1,66,177,169,172,193,173,184,212,166,61,125,55,3,0,32,0,65,24,106,32,1,55,3,0,32,0,65,32,106,32,1,66,249,234,208,208,231,201,161,228,225,0,124,55,3,0,11,244,4,2,3,127,4,126,32,1,32,2,106,33,5,32,0,65,40,106,33,4,32,0,65,200,0,106,40,2,0,33,3,32,0,32,0,41,3,0,32,2,173,124,55,3,0,32,2,32,3,106,65,32,73,4,64,32,3,32,4,106,32,1,32,2,252,10,0,0,32,0,65,200,0,106,32,2,32,3,106,54,2,0,15,11,32,3,4,64,32,3,32,4,106,32,1,65,32,32,3,107,34,2,252,10,0,0,32,0,65,8,106,34,3,32,3,41,3,0,32,4,41,3,0,66,207,214,211,190,210,199,171,217,66,126,124,66,31,137,66,135,149,175,175,152,182,222,155,158,127,126,55,3,0,32,0,65,16,106,34,3,32,3,41,3,0,32,4,65,8,106,41,3,0,66,207,214,211,190,210,199,171,217,66,126,124,66,31,137,66,135,149,175,175,152,182,222,155,158,127,126,55,3,0,32,0,65,24,106,34,3,32,3,41,3,0,32,4,65,16,106,41,3,0,66,207,214,211,190,210,199,171,217,66,126,124,66,31,137,66,135,149,175,175,152,182,222,155,158,127,126,55,3,0,32,0,65,32,106,34,3,32,3,41,3,0,32,4,65,24,106,41,3,0,66,207,214,211,190,210,199,171,217,66,126,124,66,31,137,66,135,149,175,175,152,182,222,155,158,127,126,55,3,0,32,0,65,200,0,106,65,0,54,2,0,32,1,32,2,106,33,1,11,32,1,65,32,106,32,5,77,4,64,32,5,65,32,107,33,2,32,0,65,8,106,41,3,0,33,6,32,0,65,16,106,41,3,0,33,7,32,0,65,24,106,41,3,0,33,8,32,0,65,32,106,41,3,0,33,9,3,64,32,6,32,1,41,3,0,66,207,214,211,190,210,199,171,217,66,126,124,66,31,137,66,135,149,175,175,152,182,222,155,158,127,126,33,6,32,7,32,1,65,8,106,34,1,41,3,0,66,207,214,211,190,210,199,171,217,66,126,124,66,31,137,66,135,149,175,175,152,182,222,155,158,127,126,33,7,32,8,32,1,65,8,106,34,1,41,3,0,66,207,214,211,190,210,199,171,217,66,126,124,66,31,137,66,135,149,175,175,152,182,222,155,158,127,126,33,8,32,9,32,1,65,8,106,34,1,41,3,0,66,207,214,211,190,210,199,171,217,66,126,124,66,31,137,66,135,149,175,175,152,182,222,155,158,127,126,33,9,32,2,32,1,65,8,106,34,1,79,13,0,11,32,0,65,8,106,32,6,55,3,0,32,0,65,16,106,32,7,55,3,0,32,0,65,24,106,32,8,55,3,0,32,0,65,32,106,32,9,55,3,0,11,32,1,32,5,73,4,64,32,4,32,1,32,5,32,1,107,34,1,252,10,0,0,32,0,65,200,0,106,32,1,54,2,0,11,11,188,2,1,5,126,32,0,65,24,106,41,3,0,33,1,32,0,41,3,0,34,2,66,32,90,4,126,32,0,65,8,106,41,3,0,34,3,66,1,137,32,0,65,16,106,41,3,0,34,4,66,7,137,124,32,1,66,12,137,32,0,65,32,106,41,3,0,34,5,66,18,137,124,124,32,3,66,207,214,211,190,210,199,171,217,66,126,66,31,137,66,135,149,175,175,152,182,222,155,158,127,126,133,66,135,149,175,175,152,182,222,155,158,127,126,66,157,163,181,234,131,177,141,138,250,0,125,32,4,66,207,214,211,190,210,199,171,217,66,126,66,31,137,66,135,149,175,175,152,182,222,155,158,127,126,133,66,135,149,175,175,152,182,222,155,158,127,126,66,157,163,181,234,131,177,141,138,250,0,125,32,1,66,207,214,211,190,210,199,171,217,66,126,66,31,137,66,135,149,175,175,152,182,222,155,158,127,126,133,66,135,149,175,175,152,182,222,155,158,127,126,66,157,163,181,234,131,177,141,138,250,0,125,32,5,66,207,214,211,190,210,199,171,217,66,126,66,31,137,66,135,149,175,175,152,182,222,155,158,127,126,133,66,135,149,175,175,152,182,222,155,158,127,126,66,157,163,181,234,131,177,141,138,250,0,125,5,32,1,66,197,207,217,178,241,229,186,234,39,124,11,32,2,124,32,0,65,40,106,32,2,66,31,131,167,16,6,11]);function e(){return function(t){const{exports:{mem:e,xxh32:n,xxh64:r,init32:i,update32:a,digest32:o,init64:s,update64:u,digest64:c}}=t;let h=new Uint8Array(e.buffer);function g(t,n){if(e.buffer.byteLength(h.set(o),a(i(0)))}}function y(t){return t>>>0}const b=2n**64n-1n;function d(t){return t&b}const w=new TextEncoder,l=0,p=0n;function x(t,e=l){return g(3*t.length,0),y(n(0,w.encodeInto(t,h).written,e))}function L(t,e=p){return g(3*t.length,0),d(r(0,w.encodeInto(t,h).written,e))}return{h32:x,h32ToString:(t,e=l)=>x(t,e).toString(16).padStart(8,"0"),h32Raw:(t,e=l)=>(g(t.byteLength,0),h.set(t),y(n(0,t.byteLength,e))),create32:(t=l)=>f(48,t,i,a,o,y),h64:L,h64ToString:(t,e=p)=>L(t,e).toString(16).padStart(16,"0"),h64Raw:(t,e=p)=>(g(t.byteLength,0),h.set(t),d(r(0,t.byteLength,e))),create64:(t=p)=>f(88,t,s,u,c,d)}}(new WebAssembly.Instance(new WebAssembly.Module(t)))}return e()});'},762:(e,t,n)=>{n(642)(n(27))},793:e=>{e.exports='/*! pako 2.1.0 https://github.com/nodeca/pako @license (MIT AND Zlib) */\r\n!function(t,e){"object"==typeof exports&&"undefined"!=typeof module?e(exports):"function"==typeof define&&define.amd?define(["exports"],e):e((t="undefined"!=typeof globalThis?globalThis:t||self).pako={})}(this,(function(t){"use strict";function e(t){let e=t.length;for(;--e>=0;)t[e]=0}const a=256,i=286,n=30,s=15,r=new Uint8Array([0,0,0,0,0,0,0,0,1,1,1,1,2,2,2,2,3,3,3,3,4,4,4,4,5,5,5,5,0]),o=new Uint8Array([0,0,0,0,1,1,2,2,3,3,4,4,5,5,6,6,7,7,8,8,9,9,10,10,11,11,12,12,13,13]),l=new Uint8Array([0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,2,3,7]),h=new Uint8Array([16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15]),d=new Array(576);e(d);const _=new Array(60);e(_);const f=new Array(512);e(f);const c=new Array(256);e(c);const u=new Array(29);e(u);const w=new Array(n);function m(t,e,a,i,n){this.static_tree=t,this.extra_bits=e,this.extra_base=a,this.elems=i,this.max_length=n,this.has_stree=t&&t.length}let b,g,p;function k(t,e){this.dyn_tree=t,this.max_code=0,this.stat_desc=e}e(w);const v=t=>t<256?f[t]:f[256+(t>>>7)],y=(t,e)=>{t.pending_buf[t.pending++]=255&e,t.pending_buf[t.pending++]=e>>>8&255},x=(t,e,a)=>{t.bi_valid>16-a?(t.bi_buf|=e<>16-t.bi_valid,t.bi_valid+=a-16):(t.bi_buf|=e<{x(t,a[2*e],a[2*e+1])},A=(t,e)=>{let a=0;do{a|=1&t,t>>>=1,a<<=1}while(--e>0);return a>>>1},E=(t,e,a)=>{const i=new Array(16);let n,r,o=0;for(n=1;n<=s;n++)o=o+a[n-1]<<1,i[n]=o;for(r=0;r<=e;r++){let e=t[2*r+1];0!==e&&(t[2*r]=A(i[e]++,e))}},R=t=>{let e;for(e=0;e{t.bi_valid>8?y(t,t.bi_buf):t.bi_valid>0&&(t.pending_buf[t.pending++]=t.bi_buf),t.bi_buf=0,t.bi_valid=0},U=(t,e,a,i)=>{const n=2*e,s=2*a;return t[n]{const i=t.heap[a];let n=a<<1;for(;n<=t.heap_len&&(n{let n,s,l,h,d=0;if(0!==t.sym_next)do{n=255&t.pending_buf[t.sym_buf+d++],n+=(255&t.pending_buf[t.sym_buf+d++])<<8,s=t.pending_buf[t.sym_buf+d++],0===n?z(t,s,e):(l=c[s],z(t,l+a+1,e),h=r[l],0!==h&&(s-=u[l],x(t,s,h)),n--,l=v(n),z(t,l,i),h=o[l],0!==h&&(n-=w[l],x(t,n,h)))}while(d{const a=e.dyn_tree,i=e.stat_desc.static_tree,n=e.stat_desc.has_stree,r=e.stat_desc.elems;let o,l,h,d=-1;for(t.heap_len=0,t.heap_max=573,o=0;o>1;o>=1;o--)S(t,a,o);h=r;do{o=t.heap[1],t.heap[1]=t.heap[t.heap_len--],S(t,a,1),l=t.heap[1],t.heap[--t.heap_max]=o,t.heap[--t.heap_max]=l,a[2*h]=a[2*o]+a[2*l],t.depth[h]=(t.depth[o]>=t.depth[l]?t.depth[o]:t.depth[l])+1,a[2*o+1]=a[2*l+1]=h,t.heap[1]=h++,S(t,a,1)}while(t.heap_len>=2);t.heap[--t.heap_max]=t.heap[1],((t,e)=>{const a=e.dyn_tree,i=e.max_code,n=e.stat_desc.static_tree,r=e.stat_desc.has_stree,o=e.stat_desc.extra_bits,l=e.stat_desc.extra_base,h=e.stat_desc.max_length;let d,_,f,c,u,w,m=0;for(c=0;c<=s;c++)t.bl_count[c]=0;for(a[2*t.heap[t.heap_max]+1]=0,d=t.heap_max+1;d<573;d++)_=t.heap[d],c=a[2*a[2*_+1]+1]+1,c>h&&(c=h,m++),a[2*_+1]=c,_>i||(t.bl_count[c]++,u=0,_>=l&&(u=o[_-l]),w=a[2*_],t.opt_len+=w*(c+u),r&&(t.static_len+=w*(n[2*_+1]+u)));if(0!==m){do{for(c=h-1;0===t.bl_count[c];)c--;t.bl_count[c]--,t.bl_count[c+1]+=2,t.bl_count[h]--,m-=2}while(m>0);for(c=h;0!==c;c--)for(_=t.bl_count[c];0!==_;)f=t.heap[--d],f>i||(a[2*f+1]!==c&&(t.opt_len+=(c-a[2*f+1])*a[2*f],a[2*f+1]=c),_--)}})(t,e),E(a,d,t.bl_count)},O=(t,e,a)=>{let i,n,s=-1,r=e[1],o=0,l=7,h=4;for(0===r&&(l=138,h=3),e[2*(a+1)+1]=65535,i=0;i<=a;i++)n=r,r=e[2*(i+1)+1],++o{let i,n,s=-1,r=e[1],o=0,l=7,h=4;for(0===r&&(l=138,h=3),i=0;i<=a;i++)if(n=r,r=e[2*(i+1)+1],!(++o{x(t,0+(i?1:0),3),Z(t),y(t,a),y(t,~a),a&&t.pending_buf.set(t.window.subarray(e,e+a),t.pending),t.pending+=a};var N=(t,e,i,n)=>{let s,r,o=0;t.level>0?(2===t.strm.data_type&&(t.strm.data_type=(t=>{let e,i=4093624447;for(e=0;e<=31;e++,i>>>=1)if(1&i&&0!==t.dyn_ltree[2*e])return 0;if(0!==t.dyn_ltree[18]||0!==t.dyn_ltree[20]||0!==t.dyn_ltree[26])return 1;for(e=32;e{let e;for(O(t,t.dyn_ltree,t.l_desc.max_code),O(t,t.dyn_dtree,t.d_desc.max_code),T(t,t.bl_desc),e=18;e>=3&&0===t.bl_tree[2*h[e]+1];e--);return t.opt_len+=3*(e+1)+5+5+4,e})(t),s=t.opt_len+3+7>>>3,r=t.static_len+3+7>>>3,r<=s&&(s=r)):s=r=i+5,i+4<=s&&-1!==e?L(t,e,i,n):4===t.strategy||r===s?(x(t,2+(n?1:0),3),D(t,d,_)):(x(t,4+(n?1:0),3),((t,e,a,i)=>{let n;for(x(t,e-257,5),x(t,a-1,5),x(t,i-4,4),n=0;n{F||((()=>{let t,e,a,h,k;const v=new Array(16);for(a=0,h=0;h<28;h++)for(u[h]=a,t=0;t<1<>=7;h(t.pending_buf[t.sym_buf+t.sym_next++]=e,t.pending_buf[t.sym_buf+t.sym_next++]=e>>8,t.pending_buf[t.sym_buf+t.sym_next++]=i,0===e?t.dyn_ltree[2*i]++:(t.matches++,e--,t.dyn_ltree[2*(c[i]+a+1)]++,t.dyn_dtree[2*v(e)]++),t.sym_next===t.sym_end),_tr_align:t=>{x(t,2,3),z(t,256,d),(t=>{16===t.bi_valid?(y(t,t.bi_buf),t.bi_buf=0,t.bi_valid=0):t.bi_valid>=8&&(t.pending_buf[t.pending++]=255&t.bi_buf,t.bi_buf>>=8,t.bi_valid-=8)})(t)}};var C=(t,e,a,i)=>{let n=65535&t|0,s=t>>>16&65535|0,r=0;for(;0!==a;){r=a>2e3?2e3:a,a-=r;do{n=n+e[i++]|0,s=s+n|0}while(--r);n%=65521,s%=65521}return n|s<<16|0};const M=new Uint32Array((()=>{let t,e=[];for(var a=0;a<256;a++){t=a;for(var i=0;i<8;i++)t=1&t?3988292384^t>>>1:t>>>1;e[a]=t}return e})());var H=(t,e,a,i)=>{const n=M,s=i+a;t^=-1;for(let a=i;a>>8^n[255&(t^e[a])];return-1^t},j={2:"need dictionary",1:"stream end",0:"","-1":"file error","-2":"stream error","-3":"data error","-4":"insufficient memory","-5":"buffer error","-6":"incompatible version"},K={Z_NO_FLUSH:0,Z_PARTIAL_FLUSH:1,Z_SYNC_FLUSH:2,Z_FULL_FLUSH:3,Z_FINISH:4,Z_BLOCK:5,Z_TREES:6,Z_OK:0,Z_STREAM_END:1,Z_NEED_DICT:2,Z_ERRNO:-1,Z_STREAM_ERROR:-2,Z_DATA_ERROR:-3,Z_MEM_ERROR:-4,Z_BUF_ERROR:-5,Z_NO_COMPRESSION:0,Z_BEST_SPEED:1,Z_BEST_COMPRESSION:9,Z_DEFAULT_COMPRESSION:-1,Z_FILTERED:1,Z_HUFFMAN_ONLY:2,Z_RLE:3,Z_FIXED:4,Z_DEFAULT_STRATEGY:0,Z_BINARY:0,Z_TEXT:1,Z_UNKNOWN:2,Z_DEFLATED:8};const{_tr_init:P,_tr_stored_block:Y,_tr_flush_block:G,_tr_tally:X,_tr_align:W}=B,{Z_NO_FLUSH:q,Z_PARTIAL_FLUSH:J,Z_FULL_FLUSH:Q,Z_FINISH:V,Z_BLOCK:$,Z_OK:tt,Z_STREAM_END:et,Z_STREAM_ERROR:at,Z_DATA_ERROR:it,Z_BUF_ERROR:nt,Z_DEFAULT_COMPRESSION:st,Z_FILTERED:rt,Z_HUFFMAN_ONLY:ot,Z_RLE:lt,Z_FIXED:ht,Z_DEFAULT_STRATEGY:dt,Z_UNKNOWN:_t,Z_DEFLATED:ft}=K,ct=258,ut=262,wt=42,mt=113,bt=666,gt=(t,e)=>(t.msg=j[e],e),pt=t=>2*t-(t>4?9:0),kt=t=>{let e=t.length;for(;--e>=0;)t[e]=0},vt=t=>{let e,a,i,n=t.w_size;e=t.hash_size,i=e;do{a=t.head[--i],t.head[i]=a>=n?a-n:0}while(--e);e=n,i=e;do{a=t.prev[--i],t.prev[i]=a>=n?a-n:0}while(--e)};let yt=(t,e,a)=>(e<{const e=t.state;let a=e.pending;a>t.avail_out&&(a=t.avail_out),0!==a&&(t.output.set(e.pending_buf.subarray(e.pending_out,e.pending_out+a),t.next_out),t.next_out+=a,e.pending_out+=a,t.total_out+=a,t.avail_out-=a,e.pending-=a,0===e.pending&&(e.pending_out=0))},zt=(t,e)=>{G(t,t.block_start>=0?t.block_start:-1,t.strstart-t.block_start,e),t.block_start=t.strstart,xt(t.strm)},At=(t,e)=>{t.pending_buf[t.pending++]=e},Et=(t,e)=>{t.pending_buf[t.pending++]=e>>>8&255,t.pending_buf[t.pending++]=255&e},Rt=(t,e,a,i)=>{let n=t.avail_in;return n>i&&(n=i),0===n?0:(t.avail_in-=n,e.set(t.input.subarray(t.next_in,t.next_in+n),a),1===t.state.wrap?t.adler=C(t.adler,e,n,a):2===t.state.wrap&&(t.adler=H(t.adler,e,n,a)),t.next_in+=n,t.total_in+=n,n)},Zt=(t,e)=>{let a,i,n=t.max_chain_length,s=t.strstart,r=t.prev_length,o=t.nice_match;const l=t.strstart>t.w_size-ut?t.strstart-(t.w_size-ut):0,h=t.window,d=t.w_mask,_=t.prev,f=t.strstart+ct;let c=h[s+r-1],u=h[s+r];t.prev_length>=t.good_match&&(n>>=2),o>t.lookahead&&(o=t.lookahead);do{if(a=e,h[a+r]===u&&h[a+r-1]===c&&h[a]===h[s]&&h[++a]===h[s+1]){s+=2,a++;do{}while(h[++s]===h[++a]&&h[++s]===h[++a]&&h[++s]===h[++a]&&h[++s]===h[++a]&&h[++s]===h[++a]&&h[++s]===h[++a]&&h[++s]===h[++a]&&h[++s]===h[++a]&&sr){if(t.match_start=e,r=i,i>=o)break;c=h[s+r-1],u=h[s+r]}}}while((e=_[e&d])>l&&0!=--n);return r<=t.lookahead?r:t.lookahead},Ut=t=>{const e=t.w_size;let a,i,n;do{if(i=t.window_size-t.lookahead-t.strstart,t.strstart>=e+(e-ut)&&(t.window.set(t.window.subarray(e,e+e-i),0),t.match_start-=e,t.strstart-=e,t.block_start-=e,t.insert>t.strstart&&(t.insert=t.strstart),vt(t),i+=e),0===t.strm.avail_in)break;if(a=Rt(t.strm,t.window,t.strstart+t.lookahead,i),t.lookahead+=a,t.lookahead+t.insert>=3)for(n=t.strstart-t.insert,t.ins_h=t.window[n],t.ins_h=yt(t,t.ins_h,t.window[n+1]);t.insert&&(t.ins_h=yt(t,t.ins_h,t.window[n+3-1]),t.prev[n&t.w_mask]=t.head[t.ins_h],t.head[t.ins_h]=n,n++,t.insert--,!(t.lookahead+t.insert<3)););}while(t.lookahead{let a,i,n,s=t.pending_buf_size-5>t.w_size?t.w_size:t.pending_buf_size-5,r=0,o=t.strm.avail_in;do{if(a=65535,n=t.bi_valid+42>>3,t.strm.avail_outi+t.strm.avail_in&&(a=i+t.strm.avail_in),a>n&&(a=n),a>8,t.pending_buf[t.pending-2]=~a,t.pending_buf[t.pending-1]=~a>>8,xt(t.strm),i&&(i>a&&(i=a),t.strm.output.set(t.window.subarray(t.block_start,t.block_start+i),t.strm.next_out),t.strm.next_out+=i,t.strm.avail_out-=i,t.strm.total_out+=i,t.block_start+=i,a-=i),a&&(Rt(t.strm,t.strm.output,t.strm.next_out,a),t.strm.next_out+=a,t.strm.avail_out-=a,t.strm.total_out+=a)}while(0===r);return o-=t.strm.avail_in,o&&(o>=t.w_size?(t.matches=2,t.window.set(t.strm.input.subarray(t.strm.next_in-t.w_size,t.strm.next_in),0),t.strstart=t.w_size,t.insert=t.strstart):(t.window_size-t.strstart<=o&&(t.strstart-=t.w_size,t.window.set(t.window.subarray(t.w_size,t.w_size+t.strstart),0),t.matches<2&&t.matches++,t.insert>t.strstart&&(t.insert=t.strstart)),t.window.set(t.strm.input.subarray(t.strm.next_in-o,t.strm.next_in),t.strstart),t.strstart+=o,t.insert+=o>t.w_size-t.insert?t.w_size-t.insert:o),t.block_start=t.strstart),t.high_watern&&t.block_start>=t.w_size&&(t.block_start-=t.w_size,t.strstart-=t.w_size,t.window.set(t.window.subarray(t.w_size,t.w_size+t.strstart),0),t.matches<2&&t.matches++,n+=t.w_size,t.insert>t.strstart&&(t.insert=t.strstart)),n>t.strm.avail_in&&(n=t.strm.avail_in),n&&(Rt(t.strm,t.window,t.strstart,n),t.strstart+=n,t.insert+=n>t.w_size-t.insert?t.w_size-t.insert:n),t.high_water>3,n=t.pending_buf_size-n>65535?65535:t.pending_buf_size-n,s=n>t.w_size?t.w_size:n,i=t.strstart-t.block_start,(i>=s||(i||e===V)&&e!==q&&0===t.strm.avail_in&&i<=n)&&(a=i>n?n:i,r=e===V&&0===t.strm.avail_in&&a===i?1:0,Y(t,t.block_start,a,r),t.block_start+=a,xt(t.strm)),r?3:1)},Dt=(t,e)=>{let a,i;for(;;){if(t.lookahead=3&&(t.ins_h=yt(t,t.ins_h,t.window[t.strstart+3-1]),a=t.prev[t.strstart&t.w_mask]=t.head[t.ins_h],t.head[t.ins_h]=t.strstart),0!==a&&t.strstart-a<=t.w_size-ut&&(t.match_length=Zt(t,a)),t.match_length>=3)if(i=X(t,t.strstart-t.match_start,t.match_length-3),t.lookahead-=t.match_length,t.match_length<=t.max_lazy_match&&t.lookahead>=3){t.match_length--;do{t.strstart++,t.ins_h=yt(t,t.ins_h,t.window[t.strstart+3-1]),a=t.prev[t.strstart&t.w_mask]=t.head[t.ins_h],t.head[t.ins_h]=t.strstart}while(0!=--t.match_length);t.strstart++}else t.strstart+=t.match_length,t.match_length=0,t.ins_h=t.window[t.strstart],t.ins_h=yt(t,t.ins_h,t.window[t.strstart+1]);else i=X(t,0,t.window[t.strstart]),t.lookahead--,t.strstart++;if(i&&(zt(t,!1),0===t.strm.avail_out))return 1}return t.insert=t.strstart<2?t.strstart:2,e===V?(zt(t,!0),0===t.strm.avail_out?3:4):t.sym_next&&(zt(t,!1),0===t.strm.avail_out)?1:2},Tt=(t,e)=>{let a,i,n;for(;;){if(t.lookahead=3&&(t.ins_h=yt(t,t.ins_h,t.window[t.strstart+3-1]),a=t.prev[t.strstart&t.w_mask]=t.head[t.ins_h],t.head[t.ins_h]=t.strstart),t.prev_length=t.match_length,t.prev_match=t.match_start,t.match_length=2,0!==a&&t.prev_length4096)&&(t.match_length=2)),t.prev_length>=3&&t.match_length<=t.prev_length){n=t.strstart+t.lookahead-3,i=X(t,t.strstart-1-t.prev_match,t.prev_length-3),t.lookahead-=t.prev_length-1,t.prev_length-=2;do{++t.strstart<=n&&(t.ins_h=yt(t,t.ins_h,t.window[t.strstart+3-1]),a=t.prev[t.strstart&t.w_mask]=t.head[t.ins_h],t.head[t.ins_h]=t.strstart)}while(0!=--t.prev_length);if(t.match_available=0,t.match_length=2,t.strstart++,i&&(zt(t,!1),0===t.strm.avail_out))return 1}else if(t.match_available){if(i=X(t,0,t.window[t.strstart-1]),i&&zt(t,!1),t.strstart++,t.lookahead--,0===t.strm.avail_out)return 1}else t.match_available=1,t.strstart++,t.lookahead--}return t.match_available&&(i=X(t,0,t.window[t.strstart-1]),t.match_available=0),t.insert=t.strstart<2?t.strstart:2,e===V?(zt(t,!0),0===t.strm.avail_out?3:4):t.sym_next&&(zt(t,!1),0===t.strm.avail_out)?1:2};function Ot(t,e,a,i,n){this.good_length=t,this.max_lazy=e,this.nice_length=a,this.max_chain=i,this.func=n}const It=[new Ot(0,0,0,0,St),new Ot(4,4,8,4,Dt),new Ot(4,5,16,8,Dt),new Ot(4,6,32,32,Dt),new Ot(4,4,16,16,Tt),new Ot(8,16,32,32,Tt),new Ot(8,16,128,128,Tt),new Ot(8,32,128,256,Tt),new Ot(32,128,258,1024,Tt),new Ot(32,258,258,4096,Tt)];function Ft(){this.strm=null,this.status=0,this.pending_buf=null,this.pending_buf_size=0,this.pending_out=0,this.pending=0,this.wrap=0,this.gzhead=null,this.gzindex=0,this.method=ft,this.last_flush=-1,this.w_size=0,this.w_bits=0,this.w_mask=0,this.window=null,this.window_size=0,this.prev=null,this.head=null,this.ins_h=0,this.hash_size=0,this.hash_bits=0,this.hash_mask=0,this.hash_shift=0,this.block_start=0,this.match_length=0,this.prev_match=0,this.match_available=0,this.strstart=0,this.match_start=0,this.lookahead=0,this.prev_length=0,this.max_chain_length=0,this.max_lazy_match=0,this.level=0,this.strategy=0,this.good_match=0,this.nice_match=0,this.dyn_ltree=new Uint16Array(1146),this.dyn_dtree=new Uint16Array(122),this.bl_tree=new Uint16Array(78),kt(this.dyn_ltree),kt(this.dyn_dtree),kt(this.bl_tree),this.l_desc=null,this.d_desc=null,this.bl_desc=null,this.bl_count=new Uint16Array(16),this.heap=new Uint16Array(573),kt(this.heap),this.heap_len=0,this.heap_max=0,this.depth=new Uint16Array(573),kt(this.depth),this.sym_buf=0,this.lit_bufsize=0,this.sym_next=0,this.sym_end=0,this.opt_len=0,this.static_len=0,this.matches=0,this.insert=0,this.bi_buf=0,this.bi_valid=0}const Lt=t=>{if(!t)return 1;const e=t.state;return!e||e.strm!==t||e.status!==wt&&57!==e.status&&69!==e.status&&73!==e.status&&91!==e.status&&103!==e.status&&e.status!==mt&&e.status!==bt?1:0},Nt=t=>{if(Lt(t))return gt(t,at);t.total_in=t.total_out=0,t.data_type=_t;const e=t.state;return e.pending=0,e.pending_out=0,e.wrap<0&&(e.wrap=-e.wrap),e.status=2===e.wrap?57:e.wrap?wt:mt,t.adler=2===e.wrap?0:1,e.last_flush=-2,P(e),tt},Bt=t=>{const e=Nt(t);var a;return e===tt&&((a=t.state).window_size=2*a.w_size,kt(a.head),a.max_lazy_match=It[a.level].max_lazy,a.good_match=It[a.level].good_length,a.nice_match=It[a.level].nice_length,a.max_chain_length=It[a.level].max_chain,a.strstart=0,a.block_start=0,a.lookahead=0,a.insert=0,a.match_length=a.prev_length=2,a.match_available=0,a.ins_h=0),e},Ct=(t,e,a,i,n,s)=>{if(!t)return at;let r=1;if(e===st&&(e=6),i<0?(r=0,i=-i):i>15&&(r=2,i-=16),n<1||n>9||a!==ft||i<8||i>15||e<0||e>9||s<0||s>ht||8===i&&1!==r)return gt(t,at);8===i&&(i=9);const o=new Ft;return t.state=o,o.strm=t,o.status=wt,o.wrap=r,o.gzhead=null,o.w_bits=i,o.w_size=1<Ct(t,e,ft,15,8,dt),deflateInit2:Ct,deflateReset:Bt,deflateResetKeep:Nt,deflateSetHeader:(t,e)=>Lt(t)||2!==t.state.wrap?at:(t.state.gzhead=e,tt),deflate:(t,e)=>{if(Lt(t)||e>$||e<0)return t?gt(t,at):at;const a=t.state;if(!t.output||0!==t.avail_in&&!t.input||a.status===bt&&e!==V)return gt(t,0===t.avail_out?nt:at);const i=a.last_flush;if(a.last_flush=e,0!==a.pending){if(xt(t),0===t.avail_out)return a.last_flush=-1,tt}else if(0===t.avail_in&&pt(e)<=pt(i)&&e!==V)return gt(t,nt);if(a.status===bt&&0!==t.avail_in)return gt(t,nt);if(a.status===wt&&0===a.wrap&&(a.status=mt),a.status===wt){let e=ft+(a.w_bits-8<<4)<<8,i=-1;if(i=a.strategy>=ot||a.level<2?0:a.level<6?1:6===a.level?2:3,e|=i<<6,0!==a.strstart&&(e|=32),e+=31-e%31,Et(a,e),0!==a.strstart&&(Et(a,t.adler>>>16),Et(a,65535&t.adler)),t.adler=1,a.status=mt,xt(t),0!==a.pending)return a.last_flush=-1,tt}if(57===a.status)if(t.adler=0,At(a,31),At(a,139),At(a,8),a.gzhead)At(a,(a.gzhead.text?1:0)+(a.gzhead.hcrc?2:0)+(a.gzhead.extra?4:0)+(a.gzhead.name?8:0)+(a.gzhead.comment?16:0)),At(a,255&a.gzhead.time),At(a,a.gzhead.time>>8&255),At(a,a.gzhead.time>>16&255),At(a,a.gzhead.time>>24&255),At(a,9===a.level?2:a.strategy>=ot||a.level<2?4:0),At(a,255&a.gzhead.os),a.gzhead.extra&&a.gzhead.extra.length&&(At(a,255&a.gzhead.extra.length),At(a,a.gzhead.extra.length>>8&255)),a.gzhead.hcrc&&(t.adler=H(t.adler,a.pending_buf,a.pending,0)),a.gzindex=0,a.status=69;else if(At(a,0),At(a,0),At(a,0),At(a,0),At(a,0),At(a,9===a.level?2:a.strategy>=ot||a.level<2?4:0),At(a,3),a.status=mt,xt(t),0!==a.pending)return a.last_flush=-1,tt;if(69===a.status){if(a.gzhead.extra){let e=a.pending,i=(65535&a.gzhead.extra.length)-a.gzindex;for(;a.pending+i>a.pending_buf_size;){let n=a.pending_buf_size-a.pending;if(a.pending_buf.set(a.gzhead.extra.subarray(a.gzindex,a.gzindex+n),a.pending),a.pending=a.pending_buf_size,a.gzhead.hcrc&&a.pending>e&&(t.adler=H(t.adler,a.pending_buf,a.pending-e,e)),a.gzindex+=n,xt(t),0!==a.pending)return a.last_flush=-1,tt;e=0,i-=n}let n=new Uint8Array(a.gzhead.extra);a.pending_buf.set(n.subarray(a.gzindex,a.gzindex+i),a.pending),a.pending+=i,a.gzhead.hcrc&&a.pending>e&&(t.adler=H(t.adler,a.pending_buf,a.pending-e,e)),a.gzindex=0}a.status=73}if(73===a.status){if(a.gzhead.name){let e,i=a.pending;do{if(a.pending===a.pending_buf_size){if(a.gzhead.hcrc&&a.pending>i&&(t.adler=H(t.adler,a.pending_buf,a.pending-i,i)),xt(t),0!==a.pending)return a.last_flush=-1,tt;i=0}e=a.gzindexi&&(t.adler=H(t.adler,a.pending_buf,a.pending-i,i)),a.gzindex=0}a.status=91}if(91===a.status){if(a.gzhead.comment){let e,i=a.pending;do{if(a.pending===a.pending_buf_size){if(a.gzhead.hcrc&&a.pending>i&&(t.adler=H(t.adler,a.pending_buf,a.pending-i,i)),xt(t),0!==a.pending)return a.last_flush=-1,tt;i=0}e=a.gzindexi&&(t.adler=H(t.adler,a.pending_buf,a.pending-i,i))}a.status=103}if(103===a.status){if(a.gzhead.hcrc){if(a.pending+2>a.pending_buf_size&&(xt(t),0!==a.pending))return a.last_flush=-1,tt;At(a,255&t.adler),At(a,t.adler>>8&255),t.adler=0}if(a.status=mt,xt(t),0!==a.pending)return a.last_flush=-1,tt}if(0!==t.avail_in||0!==a.lookahead||e!==q&&a.status!==bt){let i=0===a.level?St(a,e):a.strategy===ot?((t,e)=>{let a;for(;;){if(0===t.lookahead&&(Ut(t),0===t.lookahead)){if(e===q)return 1;break}if(t.match_length=0,a=X(t,0,t.window[t.strstart]),t.lookahead--,t.strstart++,a&&(zt(t,!1),0===t.strm.avail_out))return 1}return t.insert=0,e===V?(zt(t,!0),0===t.strm.avail_out?3:4):t.sym_next&&(zt(t,!1),0===t.strm.avail_out)?1:2})(a,e):a.strategy===lt?((t,e)=>{let a,i,n,s;const r=t.window;for(;;){if(t.lookahead<=ct){if(Ut(t),t.lookahead<=ct&&e===q)return 1;if(0===t.lookahead)break}if(t.match_length=0,t.lookahead>=3&&t.strstart>0&&(n=t.strstart-1,i=r[n],i===r[++n]&&i===r[++n]&&i===r[++n])){s=t.strstart+ct;do{}while(i===r[++n]&&i===r[++n]&&i===r[++n]&&i===r[++n]&&i===r[++n]&&i===r[++n]&&i===r[++n]&&i===r[++n]&&nt.lookahead&&(t.match_length=t.lookahead)}if(t.match_length>=3?(a=X(t,1,t.match_length-3),t.lookahead-=t.match_length,t.strstart+=t.match_length,t.match_length=0):(a=X(t,0,t.window[t.strstart]),t.lookahead--,t.strstart++),a&&(zt(t,!1),0===t.strm.avail_out))return 1}return t.insert=0,e===V?(zt(t,!0),0===t.strm.avail_out?3:4):t.sym_next&&(zt(t,!1),0===t.strm.avail_out)?1:2})(a,e):It[a.level].func(a,e);if(3!==i&&4!==i||(a.status=bt),1===i||3===i)return 0===t.avail_out&&(a.last_flush=-1),tt;if(2===i&&(e===J?W(a):e!==$&&(Y(a,0,0,!1),e===Q&&(kt(a.head),0===a.lookahead&&(a.strstart=0,a.block_start=0,a.insert=0))),xt(t),0===t.avail_out))return a.last_flush=-1,tt}return e!==V?tt:a.wrap<=0?et:(2===a.wrap?(At(a,255&t.adler),At(a,t.adler>>8&255),At(a,t.adler>>16&255),At(a,t.adler>>24&255),At(a,255&t.total_in),At(a,t.total_in>>8&255),At(a,t.total_in>>16&255),At(a,t.total_in>>24&255)):(Et(a,t.adler>>>16),Et(a,65535&t.adler)),xt(t),a.wrap>0&&(a.wrap=-a.wrap),0!==a.pending?tt:et)},deflateEnd:t=>{if(Lt(t))return at;const e=t.state.status;return t.state=null,e===mt?gt(t,it):tt},deflateSetDictionary:(t,e)=>{let a=e.length;if(Lt(t))return at;const i=t.state,n=i.wrap;if(2===n||1===n&&i.status!==wt||i.lookahead)return at;if(1===n&&(t.adler=C(t.adler,e,a,0)),i.wrap=0,a>=i.w_size){0===n&&(kt(i.head),i.strstart=0,i.block_start=0,i.insert=0);let t=new Uint8Array(i.w_size);t.set(e.subarray(a-i.w_size,a),0),e=t,a=i.w_size}const s=t.avail_in,r=t.next_in,o=t.input;for(t.avail_in=a,t.next_in=0,t.input=e,Ut(i);i.lookahead>=3;){let t=i.strstart,e=i.lookahead-2;do{i.ins_h=yt(i,i.ins_h,i.window[t+3-1]),i.prev[t&i.w_mask]=i.head[i.ins_h],i.head[i.ins_h]=t,t++}while(--e);i.strstart=t,i.lookahead=2,Ut(i)}return i.strstart+=i.lookahead,i.block_start=i.strstart,i.insert=i.lookahead,i.lookahead=0,i.match_length=i.prev_length=2,i.match_available=0,t.next_in=r,t.input=o,t.avail_in=s,i.wrap=n,tt},deflateInfo:"pako deflate (from Nodeca project)"};const Ht=(t,e)=>Object.prototype.hasOwnProperty.call(t,e);var jt=function(t){const e=Array.prototype.slice.call(arguments,1);for(;e.length;){const a=e.shift();if(a){if("object"!=typeof a)throw new TypeError(a+"must be non-object");for(const e in a)Ht(a,e)&&(t[e]=a[e])}}return t},Kt=t=>{let e=0;for(let a=0,i=t.length;a=252?6:t>=248?5:t>=240?4:t>=224?3:t>=192?2:1;Yt[254]=Yt[254]=1;var Gt=t=>{if("function"==typeof TextEncoder&&TextEncoder.prototype.encode)return(new TextEncoder).encode(t);let e,a,i,n,s,r=t.length,o=0;for(n=0;n>>6,e[s++]=128|63&a):a<65536?(e[s++]=224|a>>>12,e[s++]=128|a>>>6&63,e[s++]=128|63&a):(e[s++]=240|a>>>18,e[s++]=128|a>>>12&63,e[s++]=128|a>>>6&63,e[s++]=128|63&a);return e},Xt=(t,e)=>{const a=e||t.length;if("function"==typeof TextDecoder&&TextDecoder.prototype.decode)return(new TextDecoder).decode(t.subarray(0,e));let i,n;const s=new Array(2*a);for(n=0,i=0;i4)s[n++]=65533,i+=r-1;else{for(e&=2===r?31:3===r?15:7;r>1&&i1?s[n++]=65533:e<65536?s[n++]=e:(e-=65536,s[n++]=55296|e>>10&1023,s[n++]=56320|1023&e)}}return((t,e)=>{if(e<65534&&t.subarray&&Pt)return String.fromCharCode.apply(null,t.length===e?t:t.subarray(0,e));let a="";for(let i=0;i{(e=e||t.length)>t.length&&(e=t.length);let a=e-1;for(;a>=0&&128==(192&t[a]);)a--;return a<0||0===a?e:a+Yt[t[a]]>e?a:e};var qt=function(){this.input=null,this.next_in=0,this.avail_in=0,this.total_in=0,this.output=null,this.next_out=0,this.avail_out=0,this.total_out=0,this.msg="",this.state=null,this.data_type=2,this.adler=0};const Jt=Object.prototype.toString,{Z_NO_FLUSH:Qt,Z_SYNC_FLUSH:Vt,Z_FULL_FLUSH:$t,Z_FINISH:te,Z_OK:ee,Z_STREAM_END:ae,Z_DEFAULT_COMPRESSION:ie,Z_DEFAULT_STRATEGY:ne,Z_DEFLATED:se}=K;function re(t){this.options=jt({level:ie,method:se,chunkSize:16384,windowBits:15,memLevel:8,strategy:ne},t||{});let e=this.options;e.raw&&e.windowBits>0?e.windowBits=-e.windowBits:e.gzip&&e.windowBits>0&&e.windowBits<16&&(e.windowBits+=16),this.err=0,this.msg="",this.ended=!1,this.chunks=[],this.strm=new qt,this.strm.avail_out=0;let a=Mt.deflateInit2(this.strm,e.level,e.method,e.windowBits,e.memLevel,e.strategy);if(a!==ee)throw new Error(j[a]);if(e.header&&Mt.deflateSetHeader(this.strm,e.header),e.dictionary){let t;if(t="string"==typeof e.dictionary?Gt(e.dictionary):"[object ArrayBuffer]"===Jt.call(e.dictionary)?new Uint8Array(e.dictionary):e.dictionary,a=Mt.deflateSetDictionary(this.strm,t),a!==ee)throw new Error(j[a]);this._dict_set=!0}}function oe(t,e){const a=new re(e);if(a.push(t,!0),a.err)throw a.msg||j[a.err];return a.result}re.prototype.push=function(t,e){const a=this.strm,i=this.options.chunkSize;let n,s;if(this.ended)return!1;for(s=e===~~e?e:!0===e?te:Qt,"string"==typeof t?a.input=Gt(t):"[object ArrayBuffer]"===Jt.call(t)?a.input=new Uint8Array(t):a.input=t,a.next_in=0,a.avail_in=a.input.length;;)if(0===a.avail_out&&(a.output=new Uint8Array(i),a.next_out=0,a.avail_out=i),(s===Vt||s===$t)&&a.avail_out<=6)this.onData(a.output.subarray(0,a.next_out)),a.avail_out=0;else{if(n=Mt.deflate(a,s),n===ae)return a.next_out>0&&this.onData(a.output.subarray(0,a.next_out)),n=Mt.deflateEnd(this.strm),this.onEnd(n),this.ended=!0,n===ee;if(0!==a.avail_out){if(s>0&&a.next_out>0)this.onData(a.output.subarray(0,a.next_out)),a.avail_out=0;else if(0===a.avail_in)break}else this.onData(a.output)}return!0},re.prototype.onData=function(t){this.chunks.push(t)},re.prototype.onEnd=function(t){t===ee&&(this.result=Kt(this.chunks)),this.chunks=[],this.err=t,this.msg=this.strm.msg};var le={Deflate:re,deflate:oe,deflateRaw:function(t,e){return(e=e||{}).raw=!0,oe(t,e)},gzip:function(t,e){return(e=e||{}).gzip=!0,oe(t,e)},constants:K};const he=16209;var de=function(t,e){let a,i,n,s,r,o,l,h,d,_,f,c,u,w,m,b,g,p,k,v,y,x,z,A;const E=t.state;a=t.next_in,z=t.input,i=a+(t.avail_in-5),n=t.next_out,A=t.output,s=n-(e-t.avail_out),r=n+(t.avail_out-257),o=E.dmax,l=E.wsize,h=E.whave,d=E.wnext,_=E.window,f=E.hold,c=E.bits,u=E.lencode,w=E.distcode,m=(1<>>24,f>>>=p,c-=p,p=g>>>16&255,0===p)A[n++]=65535&g;else{if(!(16&p)){if(0==(64&p)){g=u[(65535&g)+(f&(1<>>=p,c-=p),c<15&&(f+=z[a++]<>>24,f>>>=p,c-=p,p=g>>>16&255,!(16&p)){if(0==(64&p)){g=w[(65535&g)+(f&(1<o){t.msg="invalid distance too far back",E.mode=he;break t}if(f>>>=p,c-=p,p=n-s,v>p){if(p=v-p,p>h&&E.sane){t.msg="invalid distance too far back",E.mode=he;break t}if(y=0,x=_,0===d){if(y+=l-p,p2;)A[n++]=x[y++],A[n++]=x[y++],A[n++]=x[y++],k-=3;k&&(A[n++]=x[y++],k>1&&(A[n++]=x[y++]))}else{y=n-v;do{A[n++]=A[y++],A[n++]=A[y++],A[n++]=A[y++],k-=3}while(k>2);k&&(A[n++]=A[y++],k>1&&(A[n++]=A[y++]))}break}}break}}while(a>3,a-=k,c-=k<<3,f&=(1<{const l=o.bits;let h,d,_,f,c,u,w=0,m=0,b=0,g=0,p=0,k=0,v=0,y=0,x=0,z=0,A=null;const E=new Uint16Array(16),R=new Uint16Array(16);let Z,U,S,D=null;for(w=0;w<=_e;w++)E[w]=0;for(m=0;m=1&&0===E[g];g--);if(p>g&&(p=g),0===g)return n[s++]=20971520,n[s++]=20971520,o.bits=1,0;for(b=1;b0&&(0===t||1!==g))return-1;for(R[1]=0,w=1;w<_e;w++)R[w+1]=R[w]+E[w];for(m=0;m852||2===t&&x>592)return 1;for(;;){Z=w-v,r[m]+1=u?(U=D[r[m]-u],S=A[r[m]-u]):(U=96,S=0),h=1<>v)+d]=Z<<24|U<<16|S|0}while(0!==d);for(h=1<>=1;if(0!==h?(z&=h-1,z+=h):z=0,m++,0==--E[w]){if(w===g)break;w=e[a+r[m]]}if(w>p&&(z&f)!==_){for(0===v&&(v=p),c+=b,k=w-v,y=1<852||2===t&&x>592)return 1;_=z&f,n[_]=p<<24|k<<16|c-s|0}}return 0!==z&&(n[c+z]=w-v<<24|64<<16|0),o.bits=p,0};const{Z_FINISH:be,Z_BLOCK:ge,Z_TREES:pe,Z_OK:ke,Z_STREAM_END:ve,Z_NEED_DICT:ye,Z_STREAM_ERROR:xe,Z_DATA_ERROR:ze,Z_MEM_ERROR:Ae,Z_BUF_ERROR:Ee,Z_DEFLATED:Re}=K,Ze=16180,Ue=16190,Se=16191,De=16192,Te=16194,Oe=16199,Ie=16200,Fe=16206,Le=16209,Ne=t=>(t>>>24&255)+(t>>>8&65280)+((65280&t)<<8)+((255&t)<<24);function Be(){this.strm=null,this.mode=0,this.last=!1,this.wrap=0,this.havedict=!1,this.flags=0,this.dmax=0,this.check=0,this.total=0,this.head=null,this.wbits=0,this.wsize=0,this.whave=0,this.wnext=0,this.window=null,this.hold=0,this.bits=0,this.length=0,this.offset=0,this.extra=0,this.lencode=null,this.distcode=null,this.lenbits=0,this.distbits=0,this.ncode=0,this.nlen=0,this.ndist=0,this.have=0,this.next=null,this.lens=new Uint16Array(320),this.work=new Uint16Array(288),this.lendyn=null,this.distdyn=null,this.sane=0,this.back=0,this.was=0}const Ce=t=>{if(!t)return 1;const e=t.state;return!e||e.strm!==t||e.mode16211?1:0},Me=t=>{if(Ce(t))return xe;const e=t.state;return t.total_in=t.total_out=e.total=0,t.msg="",e.wrap&&(t.adler=1&e.wrap),e.mode=Ze,e.last=0,e.havedict=0,e.flags=-1,e.dmax=32768,e.head=null,e.hold=0,e.bits=0,e.lencode=e.lendyn=new Int32Array(852),e.distcode=e.distdyn=new Int32Array(592),e.sane=1,e.back=-1,ke},He=t=>{if(Ce(t))return xe;const e=t.state;return e.wsize=0,e.whave=0,e.wnext=0,Me(t)},je=(t,e)=>{let a;if(Ce(t))return xe;const i=t.state;return e<0?(a=0,e=-e):(a=5+(e>>4),e<48&&(e&=15)),e&&(e<8||e>15)?xe:(null!==i.window&&i.wbits!==e&&(i.window=null),i.wrap=a,i.wbits=e,He(t))},Ke=(t,e)=>{if(!t)return xe;const a=new Be;t.state=a,a.strm=t,a.window=null,a.mode=Ze;const i=je(t,e);return i!==ke&&(t.state=null),i};let Pe,Ye,Ge=!0;const Xe=t=>{if(Ge){Pe=new Int32Array(512),Ye=new Int32Array(32);let e=0;for(;e<144;)t.lens[e++]=8;for(;e<256;)t.lens[e++]=9;for(;e<280;)t.lens[e++]=7;for(;e<288;)t.lens[e++]=8;for(me(1,t.lens,0,288,Pe,0,t.work,{bits:9}),e=0;e<32;)t.lens[e++]=5;me(2,t.lens,0,32,Ye,0,t.work,{bits:5}),Ge=!1}t.lencode=Pe,t.lenbits=9,t.distcode=Ye,t.distbits=5},We=(t,e,a,i)=>{let n;const s=t.state;return null===s.window&&(s.wsize=1<=s.wsize?(s.window.set(e.subarray(a-s.wsize,a),0),s.wnext=0,s.whave=s.wsize):(n=s.wsize-s.wnext,n>i&&(n=i),s.window.set(e.subarray(a-i,a-i+n),s.wnext),(i-=n)?(s.window.set(e.subarray(a-i,a),0),s.wnext=i,s.whave=s.wsize):(s.wnext+=n,s.wnext===s.wsize&&(s.wnext=0),s.whaveKe(t,15),inflateInit2:Ke,inflate:(t,e)=>{let a,i,n,s,r,o,l,h,d,_,f,c,u,w,m,b,g,p,k,v,y,x,z=0;const A=new Uint8Array(4);let E,R;const Z=new Uint8Array([16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15]);if(Ce(t)||!t.output||!t.input&&0!==t.avail_in)return xe;a=t.state,a.mode===Se&&(a.mode=De),r=t.next_out,n=t.output,l=t.avail_out,s=t.next_in,i=t.input,o=t.avail_in,h=a.hold,d=a.bits,_=o,f=l,x=ke;t:for(;;)switch(a.mode){case Ze:if(0===a.wrap){a.mode=De;break}for(;d<16;){if(0===o)break t;o--,h+=i[s++]<>>8&255,a.check=H(a.check,A,2,0),h=0,d=0,a.mode=16181;break}if(a.head&&(a.head.done=!1),!(1&a.wrap)||(((255&h)<<8)+(h>>8))%31){t.msg="incorrect header check",a.mode=Le;break}if((15&h)!==Re){t.msg="unknown compression method",a.mode=Le;break}if(h>>>=4,d-=4,y=8+(15&h),0===a.wbits&&(a.wbits=y),y>15||y>a.wbits){t.msg="invalid window size",a.mode=Le;break}a.dmax=1<>8&1),512&a.flags&&4&a.wrap&&(A[0]=255&h,A[1]=h>>>8&255,a.check=H(a.check,A,2,0)),h=0,d=0,a.mode=16182;case 16182:for(;d<32;){if(0===o)break t;o--,h+=i[s++]<>>8&255,A[2]=h>>>16&255,A[3]=h>>>24&255,a.check=H(a.check,A,4,0)),h=0,d=0,a.mode=16183;case 16183:for(;d<16;){if(0===o)break t;o--,h+=i[s++]<>8),512&a.flags&&4&a.wrap&&(A[0]=255&h,A[1]=h>>>8&255,a.check=H(a.check,A,2,0)),h=0,d=0,a.mode=16184;case 16184:if(1024&a.flags){for(;d<16;){if(0===o)break t;o--,h+=i[s++]<>>8&255,a.check=H(a.check,A,2,0)),h=0,d=0}else a.head&&(a.head.extra=null);a.mode=16185;case 16185:if(1024&a.flags&&(c=a.length,c>o&&(c=o),c&&(a.head&&(y=a.head.extra_len-a.length,a.head.extra||(a.head.extra=new Uint8Array(a.head.extra_len)),a.head.extra.set(i.subarray(s,s+c),y)),512&a.flags&&4&a.wrap&&(a.check=H(a.check,i,c,s)),o-=c,s+=c,a.length-=c),a.length))break t;a.length=0,a.mode=16186;case 16186:if(2048&a.flags){if(0===o)break t;c=0;do{y=i[s+c++],a.head&&y&&a.length<65536&&(a.head.name+=String.fromCharCode(y))}while(y&&c>9&1,a.head.done=!0),t.adler=a.check=0,a.mode=Se;break;case 16189:for(;d<32;){if(0===o)break t;o--,h+=i[s++]<>>=7&d,d-=7&d,a.mode=Fe;break}for(;d<3;){if(0===o)break t;o--,h+=i[s++]<>>=1,d-=1,3&h){case 0:a.mode=16193;break;case 1:if(Xe(a),a.mode=Oe,e===pe){h>>>=2,d-=2;break t}break;case 2:a.mode=16196;break;case 3:t.msg="invalid block type",a.mode=Le}h>>>=2,d-=2;break;case 16193:for(h>>>=7&d,d-=7&d;d<32;){if(0===o)break t;o--,h+=i[s++]<>>16^65535)){t.msg="invalid stored block lengths",a.mode=Le;break}if(a.length=65535&h,h=0,d=0,a.mode=Te,e===pe)break t;case Te:a.mode=16195;case 16195:if(c=a.length,c){if(c>o&&(c=o),c>l&&(c=l),0===c)break t;n.set(i.subarray(s,s+c),r),o-=c,s+=c,l-=c,r+=c,a.length-=c;break}a.mode=Se;break;case 16196:for(;d<14;){if(0===o)break t;o--,h+=i[s++]<>>=5,d-=5,a.ndist=1+(31&h),h>>>=5,d-=5,a.ncode=4+(15&h),h>>>=4,d-=4,a.nlen>286||a.ndist>30){t.msg="too many length or distance symbols",a.mode=Le;break}a.have=0,a.mode=16197;case 16197:for(;a.have>>=3,d-=3}for(;a.have<19;)a.lens[Z[a.have++]]=0;if(a.lencode=a.lendyn,a.lenbits=7,E={bits:a.lenbits},x=me(0,a.lens,0,19,a.lencode,0,a.work,E),a.lenbits=E.bits,x){t.msg="invalid code lengths set",a.mode=Le;break}a.have=0,a.mode=16198;case 16198:for(;a.have>>24,b=z>>>16&255,g=65535&z,!(m<=d);){if(0===o)break t;o--,h+=i[s++]<>>=m,d-=m,a.lens[a.have++]=g;else{if(16===g){for(R=m+2;d>>=m,d-=m,0===a.have){t.msg="invalid bit length repeat",a.mode=Le;break}y=a.lens[a.have-1],c=3+(3&h),h>>>=2,d-=2}else if(17===g){for(R=m+3;d>>=m,d-=m,y=0,c=3+(7&h),h>>>=3,d-=3}else{for(R=m+7;d>>=m,d-=m,y=0,c=11+(127&h),h>>>=7,d-=7}if(a.have+c>a.nlen+a.ndist){t.msg="invalid bit length repeat",a.mode=Le;break}for(;c--;)a.lens[a.have++]=y}}if(a.mode===Le)break;if(0===a.lens[256]){t.msg="invalid code -- missing end-of-block",a.mode=Le;break}if(a.lenbits=9,E={bits:a.lenbits},x=me(1,a.lens,0,a.nlen,a.lencode,0,a.work,E),a.lenbits=E.bits,x){t.msg="invalid literal/lengths set",a.mode=Le;break}if(a.distbits=6,a.distcode=a.distdyn,E={bits:a.distbits},x=me(2,a.lens,a.nlen,a.ndist,a.distcode,0,a.work,E),a.distbits=E.bits,x){t.msg="invalid distances set",a.mode=Le;break}if(a.mode=Oe,e===pe)break t;case Oe:a.mode=Ie;case Ie:if(o>=6&&l>=258){t.next_out=r,t.avail_out=l,t.next_in=s,t.avail_in=o,a.hold=h,a.bits=d,de(t,f),r=t.next_out,n=t.output,l=t.avail_out,s=t.next_in,i=t.input,o=t.avail_in,h=a.hold,d=a.bits,a.mode===Se&&(a.back=-1);break}for(a.back=0;z=a.lencode[h&(1<>>24,b=z>>>16&255,g=65535&z,!(m<=d);){if(0===o)break t;o--,h+=i[s++]<>p)],m=z>>>24,b=z>>>16&255,g=65535&z,!(p+m<=d);){if(0===o)break t;o--,h+=i[s++]<>>=p,d-=p,a.back+=p}if(h>>>=m,d-=m,a.back+=m,a.length=g,0===b){a.mode=16205;break}if(32&b){a.back=-1,a.mode=Se;break}if(64&b){t.msg="invalid literal/length code",a.mode=Le;break}a.extra=15&b,a.mode=16201;case 16201:if(a.extra){for(R=a.extra;d>>=a.extra,d-=a.extra,a.back+=a.extra}a.was=a.length,a.mode=16202;case 16202:for(;z=a.distcode[h&(1<>>24,b=z>>>16&255,g=65535&z,!(m<=d);){if(0===o)break t;o--,h+=i[s++]<>p)],m=z>>>24,b=z>>>16&255,g=65535&z,!(p+m<=d);){if(0===o)break t;o--,h+=i[s++]<>>=p,d-=p,a.back+=p}if(h>>>=m,d-=m,a.back+=m,64&b){t.msg="invalid distance code",a.mode=Le;break}a.offset=g,a.extra=15&b,a.mode=16203;case 16203:if(a.extra){for(R=a.extra;d>>=a.extra,d-=a.extra,a.back+=a.extra}if(a.offset>a.dmax){t.msg="invalid distance too far back",a.mode=Le;break}a.mode=16204;case 16204:if(0===l)break t;if(c=f-l,a.offset>c){if(c=a.offset-c,c>a.whave&&a.sane){t.msg="invalid distance too far back",a.mode=Le;break}c>a.wnext?(c-=a.wnext,u=a.wsize-c):u=a.wnext-c,c>a.length&&(c=a.length),w=a.window}else w=n,u=r-a.offset,c=a.length;c>l&&(c=l),l-=c,a.length-=c;do{n[r++]=w[u++]}while(--c);0===a.length&&(a.mode=Ie);break;case 16205:if(0===l)break t;n[r++]=a.length,l--,a.mode=Ie;break;case Fe:if(a.wrap){for(;d<32;){if(0===o)break t;o--,h|=i[s++]<{if(Ce(t))return xe;let e=t.state;return e.window&&(e.window=null),t.state=null,ke},inflateGetHeader:(t,e)=>{if(Ce(t))return xe;const a=t.state;return 0==(2&a.wrap)?xe:(a.head=e,e.done=!1,ke)},inflateSetDictionary:(t,e)=>{const a=e.length;let i,n,s;return Ce(t)?xe:(i=t.state,0!==i.wrap&&i.mode!==Ue?xe:i.mode===Ue&&(n=1,n=C(n,e,a,0),n!==i.check)?ze:(s=We(t,e,a,a),s?(i.mode=16210,Ae):(i.havedict=1,ke)))},inflateInfo:"pako inflate (from Nodeca project)"};var Je=function(){this.text=0,this.time=0,this.xflags=0,this.os=0,this.extra=null,this.extra_len=0,this.name="",this.comment="",this.hcrc=0,this.done=!1};const Qe=Object.prototype.toString,{Z_NO_FLUSH:Ve,Z_FINISH:$e,Z_OK:ta,Z_STREAM_END:ea,Z_NEED_DICT:aa,Z_STREAM_ERROR:ia,Z_DATA_ERROR:na,Z_MEM_ERROR:sa}=K;function ra(t){this.options=jt({chunkSize:65536,windowBits:15,to:""},t||{});const e=this.options;e.raw&&e.windowBits>=0&&e.windowBits<16&&(e.windowBits=-e.windowBits,0===e.windowBits&&(e.windowBits=-15)),!(e.windowBits>=0&&e.windowBits<16)||t&&t.windowBits||(e.windowBits+=32),e.windowBits>15&&e.windowBits<48&&0==(15&e.windowBits)&&(e.windowBits|=15),this.err=0,this.msg="",this.ended=!1,this.chunks=[],this.strm=new qt,this.strm.avail_out=0;let a=qe.inflateInit2(this.strm,e.windowBits);if(a!==ta)throw new Error(j[a]);if(this.header=new Je,qe.inflateGetHeader(this.strm,this.header),e.dictionary&&("string"==typeof e.dictionary?e.dictionary=Gt(e.dictionary):"[object ArrayBuffer]"===Qe.call(e.dictionary)&&(e.dictionary=new Uint8Array(e.dictionary)),e.raw&&(a=qe.inflateSetDictionary(this.strm,e.dictionary),a!==ta)))throw new Error(j[a])}function oa(t,e){const a=new ra(e);if(a.push(t),a.err)throw a.msg||j[a.err];return a.result}ra.prototype.push=function(t,e){const a=this.strm,i=this.options.chunkSize,n=this.options.dictionary;let s,r,o;if(this.ended)return!1;for(r=e===~~e?e:!0===e?$e:Ve,"[object ArrayBuffer]"===Qe.call(t)?a.input=new Uint8Array(t):a.input=t,a.next_in=0,a.avail_in=a.input.length;;){for(0===a.avail_out&&(a.output=new Uint8Array(i),a.next_out=0,a.avail_out=i),s=qe.inflate(a,r),s===aa&&n&&(s=qe.inflateSetDictionary(a,n),s===ta?s=qe.inflate(a,r):s===na&&(s=aa));a.avail_in>0&&s===ea&&a.state.wrap>0&&0!==t[a.next_in];)qe.inflateReset(a),s=qe.inflate(a,r);switch(s){case ia:case na:case aa:case sa:return this.onEnd(s),this.ended=!0,!1}if(o=a.avail_out,a.next_out&&(0===a.avail_out||s===ea))if("string"===this.options.to){let t=Wt(a.output,a.next_out),e=a.next_out-t,n=Xt(a.output,t);a.next_out=e,a.avail_out=i-e,e&&a.output.set(a.output.subarray(t,t+e),0),this.onData(n)}else this.onData(a.output.length===a.next_out?a.output:a.output.subarray(0,a.next_out));if(s!==ta||0!==o){if(s===ea)return s=qe.inflateEnd(this.strm),this.onEnd(s),this.ended=!0,!0;if(0===a.avail_in)break}}return!0},ra.prototype.onData=function(t){this.chunks.push(t)},ra.prototype.onEnd=function(t){t===ta&&("string"===this.options.to?this.result=this.chunks.join(""):this.result=Kt(this.chunks)),this.chunks=[],this.err=t,this.msg=this.strm.msg};var la={Inflate:ra,inflate:oa,inflateRaw:function(t,e){return(e=e||{}).raw=!0,oa(t,e)},ungzip:oa,constants:K};const{Deflate:ha,deflate:da,deflateRaw:_a,gzip:fa}=le,{Inflate:ca,inflate:ua,inflateRaw:wa,ungzip:ma}=la;var ba=ha,ga=da,pa=_a,ka=fa,va=ca,ya=ua,xa=wa,za=ma,Aa=K,Ea={Deflate:ba,deflate:ga,deflateRaw:pa,gzip:ka,Inflate:va,inflate:ya,inflateRaw:xa,ungzip:za,constants:Aa};t.Deflate=ba,t.Inflate=va,t.constants=Aa,t.default=Ea,t.deflate=ga,t.deflateRaw=pa,t.gzip=ka,t.inflate=ya,t.inflateRaw=xa,t.ungzip=za,Object.defineProperty(t,"__esModule",{value:!0})}));'},815:(e,t,n)=>{n(642)(n(842))},842:e=>{e.exports='(function(global,factory){typeof exports==="object"&&typeof module!=="undefined"?factory(exports):typeof define==="function"&&define.amd?define(["exports"],factory):(global=typeof globalThis!=="undefined"?globalThis:global||self,factory(global.jinja={}))})(this,function(jinja){"use strict";var STRINGS=/\'(\\\\.|[^\'])*\'|"(\\\\.|[^"\'"])*"/g;var IDENTS_AND_NUMS=/([$_a-z][$\\w]*)|([+-]?\\d+(\\.\\d+)?)/g;var NUMBER=/^[+-]?\\d+(\\.\\d+)?$/;var NON_PRIMITIVES=/\\[[@#~](,[@#~])*\\]|\\[\\]|\\{([@i]:[@#~])(,[@i]:[@#~])*\\}|\\{\\}/g;var IDENTIFIERS=/[$_a-z][$\\w]*/gi;var VARIABLES=/i(\\.i|\\[[@#i]\\])*/g;var ACCESSOR=/(\\.i|\\[[@#i]\\])/g;var OPERATORS=/(===?|!==?|>=?|<=?|&&|\\|\\||[+\\-\\*\\/%])/g;var EOPS=/(^|[^$\\w])(and|or|not|is|isnot)([^$\\w]|$)/g;var LEADING_SPACE=/^\\s+/;var TRAILING_SPACE=/\\s+$/;var START_TOKEN=/\\{\\{\\{|\\{\\{|\\{%|\\{#/;var TAGS={"{{{":/^(\'(\\\\.|[^\'])*\'|"(\\\\.|[^"\'"])*"|.)+?\\}\\}\\}/,"{{":/^(\'(\\\\.|[^\'])*\'|"(\\\\.|[^"\'"])*"|.)+?\\}\\}/,"{%":/^(\'(\\\\.|[^\'])*\'|"(\\\\.|[^"\'"])*"|.)+?%\\}/,"{#":/^(\'(\\\\.|[^\'])*\'|"(\\\\.|[^"\'"])*"|.)+?#\\}/};var delimeters={"{%":"directive","{{":"output","{#":"comment"};var operators={and:"&&",or:"||",not:"!",is:"==",isnot:"!="};var constants={true:true,false:false,null:null};function Parser(){this.nest=[];this.compiled=[];this.childBlocks=0;this.parentBlocks=0;this.isSilent=false}Parser.prototype.push=function(line){if(!this.isSilent){this.compiled.push(line)}};Parser.prototype.parse=function(src){this.tokenize(src);return this.compiled};Parser.prototype.tokenize=function(src){var lastEnd=0,parser=this,trimLeading=false;matchAll(src,START_TOKEN,function(open,index,src){var match=src.slice(index+open.length).match(TAGS[open]);match=match?match[0]:"";var simplified=match.replace(STRINGS,"@");if(!match||~simplified.indexOf(open)){return index+1}var inner=match.slice(0,0-open.length);if(inner.charAt(0)==="-")var wsCollapseLeft=true;if(inner.slice(-1)==="-")var wsCollapseRight=true;inner=inner.replace(/^-|-$/g,"").trim();if(parser.rawMode&&open+inner!=="{%endraw"){return index+1}var text=src.slice(lastEnd,index);lastEnd=index+open.length+match.length;if(trimLeading)text=trimLeft(text);if(wsCollapseLeft)text=trimRight(text);if(wsCollapseRight)trimLeading=true;if(open==="{{{"){open="{{";inner+="|safe"}parser.textHandler(text);parser.tokenHandler(open,inner)});var text=src.slice(lastEnd);if(trimLeading)text=trimLeft(text);this.textHandler(text)};Parser.prototype.textHandler=function(text){this.push("write("+JSON.stringify(text)+");")};Parser.prototype.tokenHandler=function(open,inner){var type=delimeters[open];if(type==="directive"){this.compileTag(inner)}else if(type==="output"){var extracted=this.extractEnt(inner,STRINGS,"@");extracted.src=extracted.src.replace(/\\|\\|/g,"~").split("|");extracted.src=extracted.src.map(function(part){return part.split("~").join("||")});var parts=this.injectEnt(extracted,"@");if(parts.length>1){var filters=parts.slice(1).map(this.parseFilter.bind(this));this.push("filter("+this.parseExpr(parts[0])+","+filters.join(",")+");")}else{this.push("filter("+this.parseExpr(parts[0])+");")}}};Parser.prototype.compileTag=function(str){var directive=str.split(" ")[0];var handler=tagHandlers[directive];if(!handler){throw new Error("Invalid tag: "+str)}handler.call(this,str.slice(directive.length).trim())};Parser.prototype.parseFilter=function(src){src=src.trim();var match=src.match(/[:(]/);var i=match?match.index:-1;if(i<0)return JSON.stringify([src]);var name=src.slice(0,i);var args=src.charAt(i)===":"?src.slice(i+1):src.slice(i+1,-1);args=this.parseExpr(args,{terms:true});return"["+JSON.stringify(name)+","+args+"]"};Parser.prototype.extractEnt=function(src,regex,placeholder){var subs=[],isFunc=typeof placeholder=="function";src=src.replace(regex,function(str){var replacement=isFunc?placeholder(str):placeholder;if(replacement){subs.push(str);return replacement}return str});return{src:src,subs:subs}};Parser.prototype.injectEnt=function(extracted,placeholder){var src=extracted.src,subs=extracted.subs,isArr=Array.isArray(src);var arr=isArr?src:[src];var re=new RegExp("["+placeholder+"]","g"),i=0;arr.forEach(function(src,index){arr[index]=src.replace(re,function(){return subs[i++]})});return isArr?arr:arr[0]};Parser.prototype.replaceComplex=function(s){var parsed=this.extractEnt(s,/i(\\.i|\\[[@#i]\\])+/g,"v");parsed.src=parsed.src.replace(NON_PRIMITIVES,"~");return this.injectEnt(parsed,"v")};Parser.prototype.parseExpr=function(src,opts){opts=opts||{};var parsed1=this.extractEnt(src,STRINGS,"@");parsed1.src=parsed1.src.replace(EOPS,function(s,before,op,after){return op in operators?before+operators[op]+after:s});var parsed2=this.extractEnt(parsed1.src,IDENTS_AND_NUMS,function(s){return s in constants||NUMBER.test(s)?"#":null});var parsed3=this.extractEnt(parsed2.src,IDENTIFIERS,"i");parsed3.src=parsed3.src.replace(/\\s+/g,"");var simplified=parsed3.src;while(simplified!==(simplified=this.replaceComplex(simplified)));while(simplified!==(simplified=simplified.replace(/i(\\.i|\\[[@#i]\\])+/,"v")));simplified=simplified.replace(/[iv]\\[v?\\]/g,"x");simplified=simplified.replace(/[@#~v]/g,"i");simplified=simplified.replace(OPERATORS,"%");simplified=simplified.replace(/!+[i]/g,"i");var terms=opts.terms?simplified.split(","):[simplified];terms.forEach(function(term){while(term!==(term=term.replace(/\\(i(%i)*\\)/g,"i")));if(!term.match(/^i(%i)*/)){throw new Error("Invalid expression: "+src+" "+term)}});parsed3.src=parsed3.src.replace(VARIABLES,this.parseVar.bind(this));parsed2.src=this.injectEnt(parsed3,"i");parsed1.src=this.injectEnt(parsed2,"#");return this.injectEnt(parsed1,"@")};Parser.prototype.parseVar=function(src){var args=Array.prototype.slice.call(arguments);var str=args.pop(),index=args.pop();if(src==="i"&&str.charAt(index+1)===":"){return\'"i"\'}var parts=[\'"i"\'];src.replace(ACCESSOR,function(part){if(part===".i"){parts.push(\'"i"\')}else if(part==="[i]"){parts.push(\'get("i")\')}else{parts.push(part.slice(1,-1))}});return"get("+parts.join(",")+")"};Parser.prototype.escName=function(str){return str.replace(/\\W/g,function(s){return"$"+s.charCodeAt(0).toString(16)})};Parser.prototype.parseQuoted=function(str){if(str.charAt(0)==="\'"){str=str.slice(1,-1).replace(/\\\\.|"/,function(s){if(s==="\\\\\'")return"\'";return s.charAt(0)==="\\\\"?s:"\\\\"+s});str=\'"\'+str+\'"\'}return JSON.parse(str)};var tagHandlers={if:function(expr){this.push("if ("+this.parseExpr(expr)+") {");this.nest.unshift("if")},else:function(){if(this.nest[0]==="for"){this.push("}, function() {")}else{this.push("} else {")}},elseif:function(expr){this.push("} else if ("+this.parseExpr(expr)+") {")},endif:function(){this.nest.shift();this.push("}")},for:function(str){var i=str.indexOf(" in ");var name=str.slice(0,i).trim();var expr=str.slice(i+4).trim();this.push("each("+this.parseExpr(expr)+","+JSON.stringify(name)+",function() {");this.nest.unshift("for")},endfor:function(){this.nest.shift();this.push("});")},raw:function(){this.rawMode=true},endraw:function(){this.rawMode=false},set:function(stmt){var i=stmt.indexOf("=");var name=stmt.slice(0,i).trim();var expr=stmt.slice(i+1).trim();this.push("set("+JSON.stringify(name)+","+this.parseExpr(expr)+");")},block:function(name){if(this.isParent){++this.parentBlocks;var blockName="block_"+(this.escName(name)||this.parentBlocks);this.push("block(typeof "+blockName+\' == "function" ? \'+blockName+" : function() {")}else if(this.hasParent){this.isSilent=false;++this.childBlocks;blockName="block_"+(this.escName(name)||this.childBlocks);this.push("function "+blockName+"() {")}this.nest.unshift("block")},endblock:function(){this.nest.shift();if(this.isParent){this.push("});")}else if(this.hasParent){this.push("}");this.isSilent=true}},extends:function(name){name=this.parseQuoted(name);var parentSrc=this.readTemplateFile(name);this.isParent=true;this.tokenize(parentSrc);this.isParent=false;this.hasParent=true;this.isSilent=true},include:function(name){name=this.parseQuoted(name);var incSrc=this.readTemplateFile(name);this.isInclude=true;this.tokenize(incSrc);this.isInclude=false}};tagHandlers.assign=tagHandlers.set;tagHandlers.elif=tagHandlers.elseif;var getRuntime=function runtime(data,opts){var defaults={autoEscape:"toJson"};var _toString=Object.prototype.toString;var _hasOwnProperty=Object.prototype.hasOwnProperty;var getKeys=Object.keys||function(obj){var keys=[];for(var n in obj)if(_hasOwnProperty.call(obj,n))keys.push(n);return keys};var isArray=Array.isArray||function(obj){return _toString.call(obj)==="[object Array]"};var create=Object.create||function(obj){function F(){}F.prototype=obj;return new F};var toString=function(val){if(val==null)return"";return typeof val.toString=="function"?val.toString():_toString.call(val)};var extend=function(dest,src){var keys=getKeys(src);for(var i=0,len=keys.length;i").join(">").split(\'"\').join(""")},safe:function(val){return val},toJson:function(val){if(typeof val==="object"){return JSON.stringify(val)}return toString(val)}},opts.filters||{});var stack=[create(data||{})],output=[];return{get:get,set:set,push:push,pop:pop,write:write,filter:filter,each:each,block:block,render:render}};var runtime;jinja.compile=function(markup,opts){opts=opts||{};var parser=new Parser;parser.readTemplateFile=this.readTemplateFile;var code=[];code.push("function render($) {");code.push("var get = $.get, set = $.set, push = $.push, pop = $.pop, write = $.write, filter = $.filter, each = $.each, block = $.block;");code.push.apply(code,parser.parse(markup));code.push("return $.render();");code.push("}");code=code.join("\\n");if(opts.runtime===false){var fn=new Function("data","options","return ("+code+")(runtime(data, options))")}else{runtime=runtime||(runtime=getRuntime.toString());fn=new Function("data","options","return ("+code+")(("+runtime+")(data, options))")}return{render:fn}};jinja.render=function(markup,data,opts){var tmpl=jinja.compile(markup);return tmpl.render(data,opts)};jinja.templateFiles=[];jinja.readTemplateFile=function(name){var templateFiles=this.templateFiles||[];var templateFile=templateFiles[name];if(templateFile==null){throw new Error("Template file not found: "+name)}return templateFile};function trimLeft(str){return str.replace(LEADING_SPACE,"")}function trimRight(str){return str.replace(TRAILING_SPACE,"")}function matchAll(str,reg,fn){reg=new RegExp(reg.source,"g"+(reg.ignoreCase?"i":"")+(reg.multiline?"m":""));var match;while(match=reg.exec(str)){var result=fn(match[0],match.index,str);if(typeof result=="number"){reg.lastIndex=result}}}});'},856:(e,t,n)=>{n(642)(n(955))},906:e=>{e.exports='(function(root,factory){if(typeof exports==="object"){module.exports=exports=factory()}else if(typeof define==="function"&&define.amd){define([],factory)}else{globalThis.WebAssembly=factory()}})(this,function(){var ge=new ArrayBuffer(8),ke=new Float32Array(ge),Ee=new Float64Array(ge),Ae=new Int32Array(ge),Ge=new BigInt64Array(ge),Se=new BigUint64Array(ge),ve=new WeakMap,Je=[],xe=class{},te={U(n,l){return(n<0||n===0&&Object.is(n,-0))!==(l<0||l===0&&Object.is(l,-0))?-n:n},d(n){return Se[0]=n,Ge[0]},H(n){return ke[0]=n,Ae[0]},Q(n){return Ae[0]=n,ke[0]},W(n){return Ee[0]=n,Se[0]},q(n){return Se[0]=n,Ee[0]},N(n,l){return n<>>32-l},D(n,l){return n>>>l|n<<32-l},V(n,l){return(n<>64n-l)&0xffffffffffffffffn},j(n,l){return(n>>l|n<<64n-l)&0xffffffffffffffffn},G(n){return n?Math.clz32(n&-n)^31:32},J(n){let l=0;for(;n;)l++,n&=n-1;return l},K(n){let l=Math.clz32(Number(n>>32n&0xffffffffn));return l===32&&(l+=Math.clz32(Number(n&0xffffffffn))),BigInt(l)},Z(n){let l=Number(n&0xffffffffn);return l?BigInt(Math.clz32(l&-l)^31):(l=Number(n>>32n&0xffffffffn),l?BigInt(32+Math.clz32(l&-l)^31):64n)},X(n){let l=0n;for(;n;)l++,n&=n-1n;return l},P(n){return n=Math.trunc(n),n>=2147483647?2147483647:n<=-2147483648?-2147483648:n|0},O(n){return n=Math.trunc(n),n>=4294967295?-1:n<=0?0:n|0},I(n){return n=Math.trunc(n),n>=0x8000000000000000?0x7fffffffffffffffn:n<=-0x8000000000000000?0x8000000000000000n:n===n?BigInt(n)&0xffffffffffffffffn:0n},T(n){return n=Math.trunc(n),n>=0x10000000000000000?0xffffffffffffffffn:n>0?BigInt(n):0n},Y(n){return n&0x80n?n|0xffffffffffffff00n:n&0xffn},ee(n){return n&0x8000n?n|0xffffffffffff0000n:n&0xffffn},te(n){return n&0x80000000n?n|0xffffffff00000000n:n&0xffffffffn},B(n,l,u,y,O){n===l?l.copyWithin(u,y,y+O):l.set(n.subarray(y,y+O),u)},z(n,l,u,y,O){if(u>>>=0,y>>>=0,O>>>=0,y+O>l.length||u+O>n.length)throw RangeError();if(u<=y)for(let p=0;p=0;p--)n[u+p]=l[y+p]},w(n,l,u){let y=n.length;if(u>>>=0,y+u>n.ae)return-1;for(let O=0;O>>=0,y>>>=0,l+y>n.length)throw RangeError();for(let O=0;O1){p=`let r=${p};`;for(let x=0;x{${p}}`)(n,this),n)}return n.p}};var Le=n=>typeof n=="string"?n>="P"&&n<="S":n?typeof n[0]!="string"&&n[0]<0:!1;var Ue=[{e:[["$",40,41,42,43,44,45,46,47,48,49,50,51,52,53],[106,"x",[65,"Q"]],"P","R"],t:["$","x",[-2,"P","Q"],"R"]},{e:[["$",54,55,56,57,58,59,60,61,62],[106,"x",[65,"Q"]],"y","P","R"],t:["$","x","y",[-2,"P","Q"],"R"]},{e:[60,"x","y","P","R"],i:{y:[{e:[66,"Q"],t:[58,"x",[65,[-1,"Q"]],"P","R"]},{e:[["$",48,49,50,51,52,53,41],"z","Q","S"],t:[58,"x",[45,"z","Q","S"],"P","R"]},{e:[["@",172,173],"z"],t:[58,"x","z","P","R"]}]}},{e:[61,"x","y","P","R"],i:{y:[{e:[66,"Q"],t:[59,"x",[65,[-1,"Q"]],"P","R"]},{e:[48,"z","Q","S"],t:[59,"x",[44,"z","Q","S"],"P","R"]},{e:[49,"z","Q","S"],t:[59,"x",[45,"z","Q","S"],"P","R"]},{e:[["$",50,51,52,53,41],"z","Q","S"],t:[59,"x",[47,"z","Q","S"],"P","R"]},{e:[["@",172,173],"z"],t:[59,"x","z","P","R"]}]}},{e:[62,"x","y","P","R"],i:{y:[{e:[66,"Q"],t:[54,"x",[65,[-1,"Q"]],"P","R"]},{e:[48,"z","Q","S"],t:[54,"x",[44,"z","Q","S"],"P","R"]},{e:[49,"z","Q","S"],t:[54,"x",[45,"z","Q","S"],"P","R"]},{e:[50,"z","Q","S"],t:[54,"x",[46,"z","Q","S"],"P","R"]},{e:[51,"z","Q","S"],t:[54,"x",[47,"z","Q","S"],"P","R"]},{e:[["$",52,53,41],"z","Q","S"],t:[54,"x",[40,"z","Q","S"],"P","R"]},{e:[["@",172,173],"z"],t:[54,"x","z","P","R"]}]}},{e:[80,"x"],i:{x:[{e:[["$",48,49],"y","P","R"],t:[69,[45,"y","P","R"]]},{e:[["$",50,51],"y","P","R"],t:[69,[47,"y","P","R"]]},{e:[["$",52,53],"y","P","R"],t:[69,[40,"y","P","R"]]},{e:[["@",172,173],"y"],t:[69,"y"]}]}},{e:[81,[49,"x","P","R"],[66,"Q"]],t:[70,[45,"x","P","R"],[65,[-1,"Q"]]],n:["Q","<=",0xffn]},{e:[82,[49,"x","P","R"],[66,"Q"]],t:[71,[45,"x","P","R"],[65,[-1,"Q"]]],n:["Q","<=",0xffn]},{e:[81,[51,"x","P","R"],[66,"Q"]],t:[70,[47,"x","P","R"],[65,[-1,"Q"]]],n:["Q","<=",0xffffn]},{e:[82,[51,"x","P","R"],[66,"Q"]],t:[71,[47,"x","P","R"],[65,[-1,"Q"]]],n:["Q","<=",0xffffn]},{e:[81,[53,"x","P","R"],[66,"Q"]],t:[70,[40,"x","P","R"],[65,[-1,"Q"]]],n:["Q","<=",0xffffffffn]},{e:[82,[53,"x","P","R"],[66,"Q"]],t:[71,[40,"x","P","R"],[65,[-1,"Q"]]],n:["Q","<=",0xffffffffn]},{e:[240,"x"],i:{x:[{e:[242,"y"],t:[240,"y"]},{e:[["@",69,80],"x"],t:[241,"y"]}]}},{e:[241,"x"],i:{x:[{e:[242,"y"],t:[241,"y"]},{e:[["@",69,80],"y"],t:[240,"y"]},{e:[70,"y","z"],t:[240,[71,"y","z"]]},{e:[71,"y","z"],t:[240,[70,"y","z"]]},{e:[72,"y","z"],t:[240,[78,"y","z"]]},{e:[73,"y","z"],t:[240,[79,"y","z"]]},{e:[74,"y","z"],t:[240,[76,"y","z"]]},{e:[75,"y","z"],t:[240,[77,"y","z"]]},{e:[76,"y","z"],t:[240,[74,"y","z"]]},{e:[77,"y","z"],t:[240,[75,"y","z"]]},{e:[78,"y","z"],t:[240,[72,"y","z"]]},{e:[79,"y","z"],t:[240,[73,"y","z"]]},{e:[81,"y","z"],t:[240,[82,"y","z"]]},{e:[82,"y","z"],t:[240,[81,"y","z"]]},{e:[83,"y","z"],t:[240,[89,"y","z"]]},{e:[84,"y","z"],t:[240,[90,"y","z"]]},{e:[85,"y","z"],t:[240,[87,"y","z"]]},{e:[86,"y","z"],t:[240,[88,"y","z"]]},{e:[87,"y","z"],t:[240,[85,"y","z"]]},{e:[88,"y","z"],t:[240,[86,"y","z"]]},{e:[89,"y","z"],t:[240,[83,"y","z"]]},{e:[90,"y","z"],t:[240,[84,"y","z"]]}]}},{e:[243,"x"],i:{x:[{e:[40,"y","P","R"],t:[245,"y","P","R"]}]}},{e:[244,"x"],i:{x:[{e:[41,"y","P","R"],t:[246,"y","P","R"]},{e:[66,"P"],t:[66,"P"],n:["P","<=",0x7fffffffffffffffn]},{e:[["$",49,51,53],"y","P","R"],t:["$","y","P","R"]}]}},{e:[167,"x"],i:{x:[{e:[66,"P"],t:[65,[-1,"P"]]},{e:[48,"y","P","R"],t:[44,"y","P","R"]},{e:[49,"y","P","R"],t:[45,"y","P","R"]},{e:[50,"y","P","R"],t:[46,"y","P","R"]},{e:[51,"y","P","R"],t:[47,"y","P","R"]},{e:[["$",52,53,41],"y","P","R"],t:[40,"y","P","R"]},{e:[["@",172,173],"y"],t:"y"},{e:[124,[["@",172,173],"y"],[66,"P"]],t:[106,"y",[65,[-1,"P"]]]}]}},{e:[131,"x",[66,"P"]],i:{x:[{e:[66,"Q"],t:[66,[-3,"P","Q"]]},{e:[131,"y",[66,"Q"]],t:[131,"y",[66,[-3,"P","Q"]]]},{e:[49,"y","Q","S"],t:[49,"y","Q","S"],n:[["P","&",0xffn],"===",0xffn]},{e:[48,"y","Q","S"],t:[49,"y","Q","S"],n:["P","===",0xffn]},{e:[51,"y","Q","S"],t:[51,"y","Q","S"],n:[["P","&",0xffffn],"===",0xffffn]},{e:[50,"y","Q","S"],t:[51,"y","Q","S"],n:["P","===",0xffffn]},{e:[53,"y","Q","S"],t:[53,"y","Q","S"],n:[["P","&",0xffffffffn],"===",0xffffffffn]},{e:[52,"y","Q","S"],t:[53,"y","Q","S"],n:["P","===",0xffffffffn]}]}}],He=()=>{let n=0,l=()=>"v"+n++,u=(M,b,$,v,S)=>{if(b<$.length){let C=$[b];if(typeof C=="string")A[C]=`${B}[${M}+${b+1}]`,u(M,b+1,$,v,S);else{let E=l(),z=l();i+=`var ${E}=${B}[${M}+${b+1}],${z}=${B}[${E}]&65535;`,y(E,z,C,v,c=>{u(M,b+1,$,c,S)})}}else S(v)},y=(M,b,[$,...v],S,C)=>{let E=[];if(typeof $=="number")E.push(`${b}===${$}`);else{let[z,...c]=$;c.sort((a,_)=>a-_),U[z]={y:M,se:b,oe:c.some(a=>P.has(a))};for(let a=0;a2?`${b}>=${c[a]}&&${b}<=${c[a+=_-1]}`:`${b}===${c[a]}`)}}S=S.concat({y:M,b:v.map(z=>typeof z=="string"?z:null)}),i+=`if(${E.join("||")}){`,u(M,0,v,S,C),i+="}"},O=(M,b,$,v,S,C)=>{for(let{e:E,i:z,t:c,n:a}of $)y(M,b,E,S,_=>{let F=Object.create(C);p(a,F,()=>{if(z){for(let o in z)x(o,F);for(let o in z){let f=F[o],d=l();i+=`var ${d}=${B}[${f}]&65535;`,O(f,d,z[o],null,_,F)}}if(c){let o=T(c,F,_.slice(),`|${B}[${N}]&${-1<<24}`);typeof c!="string"&&(typeof c[0]=="string"?U[c[0]].oe:P.has(c[0]))?(N!==o&&(i+=`${N}=${o};`),i+="continue"):i+="return "+o}})})},p=(M,b,$)=>{if(M){let v=S=>typeof S=="string"?`${D}[${b[S]||A[S]}]&0xFFFFFFFFFFFFFFFFn`:typeof S=="bigint"?S+"n":`(${v(S[0])})${S[1]}(${v(S[2])})`;i+=`if(${v(M)}){`,$(),i+="}"}else $()},x=(M,b)=>{if(!(M in b)){let $=l();i+=`var ${$}=${A[M]};`,b[M]=$}},T=(M,b,$,v="")=>{if(typeof M=="string")return b[M]||A[M];if(M[0]===-1){let o=T(M[1],b,$);return`Number(${D}[${o}]&0xFFFFFFFFn)`}if(M[0]===-2){let o=T(M[1],b,$),f=T(M[2],b,$);return`${o}+${f}`}if(M[0]===-3){let o=M[1];typeof o=="string"&&x(o,b);let f=T(o,b,$),d=T(M[2],b,$);return i+=`${D}[${f}]&=${D}[${d}];`,f}let[S,...C]=M,z=C.length-+Le(C[C.length-1])-+Le(C[C.length-2])<<16,c=-1,a,_,F;for(let o=0;o<$.length;o++){let f=$[o];if(f.b.length===C.length){let d=0;for(let I=0;Ic&&(c=d,a=o,_=f.y,F=f.b)}}if(!(typeof S=="string"&&U[S].y===_)){let o=(typeof S=="string"?`${U[S].se}|${z}`:`${S|z}`)+v;_?($.splice(a,1),i+=`${B}[${_}]=${o};`):(_=l(),i+=`var ${_}=${J}(${o},${M.length});`)}for(let o=0;o{let l=new DataView(n.buffer),u=()=>{let a=0,_=0,F;do{F=n[c++],a|=(F&127)<<_,_+=7}while(F&128);return a>>>0},y=()=>{let a=0,_=0,F;do{F=n[c++],a|=(F&127)<<_,_+=7}while(F&128);return _<32&&F&64?a|-1<<_:a},O=()=>{let a=0n,_=0n,F;do{F=n[c++],a|=BigInt(F&127)<<_,_+=7n}while(F&128);return _<64&&F&64?a|~0n<<_:a},p=()=>{let a=l.getFloat32(c,!0);return c+=4,a},x=()=>{let a=l.getFloat64(c,!0);return c+=8,a},T=(a=u())=>[...n.slice(c,c+=a)],A=(a=u())=>decodeURIComponent(escape(String.fromCharCode(...n.slice(c,c+=a)))),U=(a=n[c++])=>[u(),a===0?1/0:u()],Y=()=>{let a=[],_;for(;(_=n[c++])!==11;)if(_===65){let F=u();a.push(()=>F)}else if(_===35){let F=u();a.push(o=>{if(F>=o.length)throw RangeError();return o[F]})}else if(_===106){let F=a.pop(),o=a.pop();a.push(f=>o(f)+F(f)|0)}else if(_===107){let F=a.pop(),o=a.pop();a.push(f=>o(f)-F(f)|0)}else if(_===108){let F=a.pop(),o=a.pop();a.push(f=>Math.imul(o(f),F(f)))}else throw new Q("Unsupported constant instruction: "+L(_));if(a.length!==1)throw new Q("Unsupported constant");return a[0]},B=()=>{let a=n[c++],_;if(a===210)_=u();else if(a===208){if(n[c++]!==112)throw new Q("Unsupported reference type: "+L(n[c-1]));_=null}else throw new Q("Unsupported constant instruction: "+L(a));if(n[c++]!==11)throw new Q("Expected end after constant: "+L(n[c-1]));return _},D=a=>{let _=n[c++],F;if(_===65&&a===127){let o=y();F=()=>o}else if(_===66&&a===126){let o=O();F=()=>o}else if(_===67&&a===125){let o=p();F=()=>o}else if(_===68&&a===124){let o=x();F=()=>o}else if(_===208&&(a===112||a===111))c++,F=()=>null;else if(_===210&&a===112){let o=u();F=(f,d)=>d(o)}else if(_===35){let o=u();F=f=>{if(o>=f.length)throw RangeError();return f[o]}}else throw new Q("Unsupported constant instruction: "+L(_));if(n[c++]!==11)throw new Q("Expected end after constant: "+L(n[c-1]));return F},J=[],N=[],t=[],P=[],i=[],M=[],b=[],$=[],v=[],S=new Map,C=[],E=[],z=-1,c=8;if(n.slice(0,8).join(",")!=="0,97,115,109,1,0,0,0")throw new Q("Invalid file header");for(;c+57)throw new Q("Unsupported element kind: "+d);let I=d&3,R=I===2?u():I===0?0:null,K=d&1?null:Y();if(I&&n[c++]!==(d&4?112:0))throw new Q("Unsupported element type: "+L(n[c-1]));let Me=[];for(let pe=0,ie=u();pe2)throw new Q("Unsupported data mode: "+d);let I=d===2?u():0,R=d===1?null:Y(),K=u();t.push([I,R,n.slice(c,c+=K)])}else if(a!==12)throw new Q("Unsupported section type: "+L(a));c=F}return{re:n,o:l,R:J,pe:N,_e:t,ue:P,ce:i,k:M,Fe:b,ge:$,fe:v,de:S,me:z,he:C,E:E}},L=n=>"0x"+n.toString(16).toUpperCase().padStart(2,"0"),Pe=new Map,X=class{constructor(l){Pe.set(this,Ze(l instanceof Uint8Array?l:new Uint8Array(l instanceof ArrayBuffer?l:l.buffer)))}},Q=class extends Error{constructor(l){super(l),this.name="CompileError"}};var Oe=(n,l)=>{if(l===125||l===124)return+n;if(l===127)return n|0;if(l===126)return BigInt(n)&0xffffffffffffffffn;if(l===111)return n;throw Error("Unsupported cast to type: "+L(l))},fe=(n,l)=>{if(l===125||l===124)return"+"+n;if(l===127)return n+"|0";if(l===126)return`BigInt(${n})&0xFFFFFFFFFFFFFFFFn`;if(l===111)return n;if(l===112)return`l.h(${n})`;throw Error("Unsupported cast to type: "+L(l))},Fe=(n,l)=>{if(l===124||l===127)return n;if(l===125)return`Math.fround(${n})`;if(l===126)return`l.d(${n})`;if(l===111)return n;if(l===112)return`l.M(${n})`;throw Error("Unsupported cast to type: "+L(l))};var Ye={1:520,26:521,32:28,33:25,34:29,35:28,36:25,37:29,38:26,40:61,41:61,42:61,43:61,44:61,45:61,46:61,47:61,48:61,49:61,50:61,51:61,52:61,53:61,54:58,55:58,56:58,57:58,58:58,59:58,60:58,61:58,62:58,63:28,64:29,69:13,70:78,71:78,72:78,73:206,74:78,75:206,76:78,77:206,78:78,79:206,80:13,81:78,82:78,83:334,84:78,85:334,86:78,87:334,88:78,89:334,90:78,91:78,92:78,93:78,94:78,95:78,96:78,97:78,98:78,99:78,100:78,101:78,102:78,103:13,104:13,105:13,106:14,107:14,108:14,109:14,110:142,111:14,112:142,113:14,114:14,115:14,116:14,117:14,118:14,119:14,120:14,121:13,122:13,123:13,124:14,125:14,126:14,127:270,128:14,129:270,130:14,131:14,132:14,133:14,134:1038,135:1038,136:1038,137:1038,138:1038,139:13,140:13,141:13,142:13,143:13,144:13,145:13,146:14,147:14,148:14,149:14,150:14,151:14,152:14,153:13,154:13,155:13,156:13,157:13,158:13,159:13,160:14,161:14,162:14,163:14,164:14,165:14,166:14,167:13,168:13,169:13,170:13,171:13,172:13,173:13,174:13,175:13,176:13,177:13,178:525,179:653,180:269,181:13,182:525,183:525,184:653,185:269,186:13,187:525,188:13,189:13,190:13,191:13,192:13,193:13,194:13,195:13,196:13,209:77,210:28,64512:13,64513:13,64514:13,64515:13,64516:13,64517:13,64518:13,64519:13,64521:24,64525:24,64527:30,64528:28,64529:27};var et=new Int32Array(65536),tt=He(),Qe=(n,l,u,y,O,p,x,T,A,U,Y)=>{let B=()=>{let e=0,s=0,r;do{r=I[W++],e|=(r&127)<>>0},D=()=>{let e=0,s=0,r;do{r=I[W++],e|=(r&127)<{let e=0n,s=0n,r;do{r=I[W++],e|=BigInt(r&127)<{let e=I[W];if(e===64)return W++,[0,0];if(e&64)return W++,[0,1];let s=B(),[r,h]=ie[s];return[r.length,h.length]},t=et,P=[],i=0,M=[],b=0,$=e=>{for(;b(v[e]||(_e.push(`t${e}=t[${e}]`),v[e]=!0),"t"+e),C=(e,s,r,h)=>`c.${e+h}[${a(s)}${r?"+"+r:""}]`,E=(e,s,r,h,w)=>`c.${e+h}[${a(s)}${r?"+"+r:""}]=${w}`,z=(e,s,r,h)=>`c.${"o"+h}.get${e}(${a(s)}${r?"+"+r:""},1)`,c=(e,s,r,h,w)=>`c.${"o"+h}.set${e}(${a(s)}${r?"+"+r:""},${w},1)`,a=e=>e<0?$(-e):`(${_(e)})`,_=e=>{let s=t[e],r=s&65535;switch(r){case 16:case 18:{let h=s>>16&255,w=t[e+h+1],[q,H]=l[w],ee=[];for(let G=1;G<=h;G++)ee.push(a(t[e+G]));let j=`f[${w}]`,se=r===18?`l.C(this,${j},[${ee}])`:`${j}(${ee})`;if(H.length<2)return se;let oe=t[e+h+2],Z=[];for(let G=0;G>16&255,w=t[e+h+2],q=t[e+h+3],[H,ee]=ie[q],j=[],se=a(t[e+1]);for(let V=1;V<=h;V++)j.push(a(t[e+V+1]));let oe=`${S(w)}[${se}].x`,Z=r===19?`l.C(this,${oe},[${j}])`:`${oe}(${j})`;if(ee.length<2)return Z;let G=t[e+h+4],ue=[];for(let V=0;V>>0`;case 244:return`l.d(${a(t[e+1])})`;case 69:case 80:return`${a(t[e+1])}?0:1`;case 70:case 81:case 91:case 97:return`${a(t[e+1])}===${a(t[e+2])}`;case 71:case 82:case 92:case 98:return`${a(t[e+1])}!==${a(t[e+2])}`;case 72:case 73:case 83:case 84:case 93:case 99:return`${a(t[e+1])}<${a(t[e+2])}`;case 74:case 75:case 85:case 86:case 94:case 100:return`${a(t[e+1])}>${a(t[e+2])}`;case 76:case 77:case 87:case 88:case 95:case 101:return`${a(t[e+1])}<=${a(t[e+2])}`;case 78:case 79:case 89:case 90:case 96:case 102:return`${a(t[e+1])}>=${a(t[e+2])}`;case 103:return`Math.clz32(${a(t[e+1])})`;case 104:return`l.G(${a(t[e+1])})`;case 105:return`l.J(${a(t[e+1])})`;case 106:return`${a(t[e+1])}+${a(t[e+2])}|0`;case 107:return`${a(t[e+1])}-${a(t[e+2])}|0`;case 108:return`Math.imul(${a(t[e+1])},${a(t[e+2])})`;case 110:case 109:return`${a(t[e+1])}/${a(t[e+2])}|0`;case 112:case 111:return`${a(t[e+1])}%${a(t[e+2])}|0`;case 113:return`${a(t[e+1])}&${a(t[e+2])}`;case 114:return`${a(t[e+1])}|${a(t[e+2])}`;case 115:return`${a(t[e+1])}^${a(t[e+2])}`;case 116:return`${a(t[e+1])}<<${a(t[e+2])}`;case 117:return`${a(t[e+1])}>>${a(t[e+2])}`;case 118:return`${a(t[e+1])}>>>${a(t[e+2])}|0`;case 119:return`l.N(${a(t[e+1])},${a(t[e+2])})`;case 120:return`l.D(${a(t[e+1])},${a(t[e+2])})`;case 121:return`l.K(${a(t[e+1])})`;case 122:return`l.Z(${a(t[e+1])})`;case 123:return`l.X(${a(t[e+1])})`;case 124:return`(${a(t[e+1])}+${a(t[e+2])})&0xFFFFFFFFFFFFFFFFn`;case 125:return`(${a(t[e+1])}-${a(t[e+2])})&0xFFFFFFFFFFFFFFFFn`;case 126:return`(${a(t[e+1])}*${a(t[e+2])})&0xFFFFFFFFFFFFFFFFn`;case 127:return`${a(t[e+1])}/${a(t[e+2])}&0xFFFFFFFFFFFFFFFFn`;case 128:return`${a(t[e+1])}/${a(t[e+2])}`;case 129:return`${a(t[e+1])}%${a(t[e+2])}&0xFFFFFFFFFFFFFFFFn`;case 130:return`${a(t[e+1])}%${a(t[e+2])}`;case 131:return`${a(t[e+1])}&${a(t[e+2])}`;case 132:return`${a(t[e+1])}|${a(t[e+2])}`;case 133:return`${a(t[e+1])}^${a(t[e+2])}`;case 134:return`${a(t[e+1])}<<${a(t[e+2])}&0xFFFFFFFFFFFFFFFFn`;case 135:return`l.d(${a(t[e+1])})>>${a(t[e+2])}&0xFFFFFFFFFFFFFFFFn`;case 136:return`${a(t[e+1])}>>${a(t[e+2])}`;case 137:return`l.V(${a(t[e+1])},${a(t[e+2])})`;case 138:return`l.j(${a(t[e+1])},${a(t[e+2])})`;case 139:case 153:return`Math.abs(${a(t[e+1])})`;case 140:case 154:return`-${a(t[e+1])}`;case 141:case 155:return`Math.ceil(${a(t[e+1])})`;case 142:case 156:return`Math.floor(${a(t[e+1])})`;case 143:case 157:return`Math.trunc(${a(t[e+1])})`;case 144:case 158:return`Math.round(${a(t[e+1])})`;case 145:case 159:return`Math.sqrt(${a(t[e+1])})`;case 146:case 160:return`${a(t[e+1])}+${a(t[e+2])}`;case 147:case 161:return`${a(t[e+1])}-${a(t[e+2])}`;case 148:case 162:return`${a(t[e+1])}*${a(t[e+2])}`;case 149:case 163:return`${a(t[e+1])}/${a(t[e+2])}`;case 150:case 164:return`Math.min(${a(t[e+1])},${a(t[e+2])})`;case 151:case 165:return`Math.max(${a(t[e+1])},${a(t[e+2])})`;case 152:case 166:return`l.U(${a(t[e+1])},${a(t[e+2])})`;case 167:return`Number(${a(t[e+1])}&0xFFFFFFFFn)|0`;case 168:case 169:case 170:case 171:return`Math.trunc(${a(t[e+1])})|0`;case 172:return`BigInt(${a(t[e+1])})`;case 173:return`BigInt(${a(t[e+1])}>>>0)`;case 174:case 175:case 176:case 177:return`BigInt(Math.trunc(${a(t[e+1])}))&0xFFFFFFFFFFFFFFFFn`;case 180:case 181:case 186:case 185:return`Number(${a(t[e+1])})`;case 188:return`l.H(${a(t[e+1])})`;case 189:return`l.W(${a(t[e+1])})`;case 190:return`l.Q(${a(t[e+1])})`;case 191:return`l.q(${a(t[e+1])})`;case 192:return`${a(t[e+1])}<<24>>24`;case 193:return`${a(t[e+1])}<<16>>16`;case 194:return`l.Y(${a(t[e+1])})`;case 195:return`l.ee(${a(t[e+1])})`;case 196:return`l.te(${a(t[e+1])})`;case 208:return"null";case 209:return`${a(t[e+1])}===null`;case 210:return`F(${t[e+1]})`;case 64512:return`l.P(${a(t[e+1])})`;case 64513:return`l.O(${a(t[e+1])})`;case 64514:return`l.P(${a(t[e+1])})`;case 64515:return`l.O(${a(t[e+1])})`;case 64516:return`l.I(${a(t[e+1])})`;case 64517:return`l.T(${a(t[e+1])})`;case 64518:return`l.I(${a(t[e+1])})`;case 64519:return`l.T(${a(t[e+1])})`;case 64520:return`l.B(d[${t[e+4]}],c.${"l"+t[e+5]},${a(t[e+1])},${a(t[e+2])},${a(t[e+3])})`;case 64521:return`d[${t[e+1]}]=new Uint8Array`;case 64522:return`l.B(c.${"l"+t[e+4]},c.${"l"+t[e+5]},${a(t[e+1])},${a(t[e+2])},${a(t[e+3])})`;case 64523:return`c.${"l"+t[e+4]}.fill(${a(t[e+1])},T=${a(t[e+2])},T+${a(t[e+3])})`;case 64524:return`l.z(${S(t[e+4])},e[${t[e+5]}],${a(t[e+1])},${a(t[e+2])},${a(t[e+3])})`;case 64525:return`e[${t[e+1]}]=[]`;case 64526:return`l.z(${S(t[e+4])},${S(t[e+5])},${a(t[e+1])},${a(t[e+2])},${a(t[e+3])})`;case 64527:return`l.w(${S(t[e+3])},${a(t[e+1])},${a(t[e+2])})`;case 64528:return S(t[e+1])+".length";case 64529:return`l.ne(${S(t[e+4])},${a(t[e+1])},${a(t[e+2])},${a(t[e+3])})`;default:throw"Internal error"}},F=(e,s)=>{let r=i;return t[r]=e,i+=s,r},o=(e,s=g)=>{P.push(i),t[i++]=e|65536|s<<24,t[i++]=-s},f=()=>{d(),ne(0),m[m.length-1].a=!0},d=(e=!1)=>{let s=[],r=P.length-1,h=H=>{let ee=t[H],j=ee&65535,se=ee>>16&255,oe=j>=40&&j<=62||j>=64520&&j<=64523;for(let Z=se-1;r>=0&&Z>=0;Z--){let G=-t[H+Z+1],ue=!1;for(let V=r;V>=0;V--){let $e=P[V];if($e===null)continue;let Re=t[$e],ce=Re&65535;if(oe&&(ce<65||ce>66)&&ce!=32)break;if(Re>>>24===G){P[V]=null,ue||(r=V-1),t[H+Z+1]=h($e);break}if(ce!==243&&ce!==244)break;ue=!0}}return tt(t,M,F,H)},w;for(;r>=0;){let H=r--;(w=P[H])!==null&&(P[H]=h(w))}let q;for(r=P.length-1,e&&(r>=0&&(w=P[r])!==null&&t[w]>>>24===g?(q=_(w),r--):q="s"+g,g--);r>=0;)if((w=P[r--])!==null){let H=t[w]>>>24;s.push(`${H?$(H)+"=":""}${_(w)};`)}return k+=s.reverse().join(""),M.length=0,P.length=0,i=0,q},{re:I,o:R,R:K,k:Me,de:pe,E:ie}=A,[We,qe]=ie[Me[U]],[Ne,De,Ve]=K[U],re=[],ze=We.length;for(let e=0;e{let s=m.length{if(m[m.length-1].a)return;let s=m[e];if(e)if(s.F===1){if(g>s.r+s.c)for(let r=1;r<=s.c;r++)k+=`s${s.r+r}=s${g-s.c+r};`;k+=es.r+s.s)for(let r=1;r<=s.s;r++)k+=`s${s.r+r}=s${g-s.s+r};`;k+=e<=ae?`break b${e};`:`L=${s.$};continue;`}else if(s.s===1)k+=`return s${g};`;else if(s.s>1){let r=[];for(let h=s.s-1;h>=0;h--)r.push("s"+(g-h));k+=`return[${r}];`}else k+="return;"},m=[{c:0,a:!1,F:0,$:-1,_:-1,r:0,s:qe.length}],we=e=>{let s=Ye[e]|0;if(!(s&8))return!1;if(s&8)if(m[m.length-1].a)s&32&&I[W++]&64&&B(),s&16&&B();else{let r=s&3;if(s&1024&&(P.push(i),t[i++]=66|g+1<<24,t[i++]=M.length,M.push(63n),P.push(i),t[i++]=131|2<<16|g<<24,t[i++]=-g,t[i++]=-(g+1)),g-=r,s&384)for(let h=0;h1&&(t[i++]=g+1),g+=w.length}s&&f();break}case 17:case 19:{let s=e===19,r=B(),h=B();if(!m[m.length-1].a){let[w,q]=ie[r];g-=w.length+1,P.push(i),q.length===1&&(e|=g+1<<24),t[i++]=e|w.length<<16,t[i++]=-(g+w.length+1);for(let H=1;H<=w.length;H++)t[i++]=-(g+H);t[i++]=h,t[i++]=r,q.length>1&&(t[i++]=g+1),g+=q.length}s&&f();break}case 27:case 28:{if(e===28){let s=B();if(s!==1)throw Error("Unsupported select type count "+s);W++}m[m.length-1].a||(o(240),g-=2,P.push(i),t[i++]=e|3<<16|g<<24,t[i++]=-(g+2),t[i++]=-g,t[i++]=-(g+1));break}case 65:m[m.length-1].a?D():(P.push(i),t[i++]=e|++g<<24,t[i++]=D());break;case 66:m[m.length-1].a?J():(P.push(i),t[i++]=e|++g<<24,t[i++]=M.length,M.push(J()));break;case 67:m[m.length-1].a||(P.push(i),t[i++]=e|++g<<24,t[i++]=W),W+=4;break;case 68:m[m.length-1].a||(P.push(i),t[i++]=e|++g<<24,t[i++]=W),W+=8;break;case 208:W++,m[m.length-1].a||(P.push(i),t[i++]=e|++g<<24);break;case 252:if(e=64512|I[W++],we(e))continue;switch(e){case 64520:{let s=B(),r=B();m[m.length-1].a||(g-=2,P.push(i),t[i++]=e|3<<16|g<<24,t[i++]=-g,t[i++]=-(g+1),t[i++]=-(g+2),t[i++]=s,t[i++]=r);break}case 64522:{let s=B(),r=B();m[m.length-1].a||(g-=2,P.push(i),t[i++]=e|3<<16|g<<24,t[i++]=-g,t[i++]=-(g+1),t[i++]=-(g+2),t[i++]=r,t[i++]=s);break}case 64523:{let s=B();m[m.length-1].a||(g-=2,P.push(i),t[i++]=e|3<<16|g<<24,t[i++]=-(g+1),t[i++]=-g,t[i++]=-(g+2),t[i++]=s);break}case 64524:{let s=B(),r=B();m[m.length-1].a||(g-=2,P.push(i),t[i++]=e|3<<16|g<<24,t[i++]=-g,t[i++]=-(g+1),t[i++]=-(g+2),t[i++]=r,t[i++]=s);break}case 64526:{let s=B(),r=B();m[m.length-1].a||(g-=2,P.push(i),t[i++]=e|3<<16|g<<24,t[i++]=-g,t[i++]=-(g+1),t[i++]=-(g+2),t[i++]=s,t[i++]=r);break}default:throw Error("Unsupported instruction: 0xFC "+L(e&255))}break;default:throw Error("Unsupported instruction: "+L(e))}}if(b>255)throw Error("Deep stacks are not supported");let Ce=JSON.stringify("wasm:"+(pe.get(Y)||`function[${U}]`)),je=`return{${Ce}(${re.slice(0,ze)}){var ${_e};${k}}}[${Ce}]`;return new Function("f","F","c","t","d","e","g","l",je)(n,u,T,y,O,p,x,te)};var de=class{valueOf(){return this.value}},at=(n,l)=>{let[u,y]=n,O=[],p=[];for(let T=0;T1){x=`let r=${x};`;for(let T=0;T{${x}}`)(l,te)},le=class{constructor(l,u){let y=Pe.get(l),{R:O,_e:p,ue:x,ce:T,k:A,Fe:U,ge:Y,fe:B,me:D,he:J,E:N}=y,t=this.exports=Object.create(null),P=[],i=[],M=[],b=[],$=[],v={},S=[],C=a=>{let _=v[a]||(v[a]={xe:a,ie:M[a],p:null,x:(...F)=>{let o=i[a](...F);return _.x=i[a],o}});return _};for(let a of Y){let[_,F,o,f]=a,d=u[_][F];if(o===0){let I=N[f],R=i.length;i.push((...K)=>(i[R]=at(I,d))(...K)),M.push(I)}else if(o===1)S.push(Be.get(d));else if(o===2)P.push(Te.get(d));else if(o===3)b.push(Oe(d,f)),$.push(f);else throw Error(`Unsupported import type ${L(o)} for "${_}"."${F}"`)}let E={};for(let[a,_]of B)P.push(Te.get(new me({initial:a,maximum:a>_?a:_})));for(let a=0;a{E["l"+a]=_.l,E["u"+a]=_.u,E["o"+a]=_.o};E["A"+a]=_,_.L.push(F),F()}for(let[a,_,F]of U)b.push(F(b,C)),$.push(a);let z=[];for(let[a,_,F]of p)_!==null&&(E["l"+a].set(F,_(b)),F=new Uint8Array),z.push(F);for(let a=0;a(i[_]=Qe(i,M,C,S,z,c,b,E,y,a,_))(...F))}let c=[];for(let[a,_,F]of J){if(a!==112&&a!==111)throw Error("Unsupported element type: "+L(a));S.push(Be.get(new he({element:a===111?"externref":"anyfunc",initial:_,maximum:_>F?_:F})))}for(let[a,_,F]of x){let o=[];for(let f of F)o.push(f===null?null:C(f));if(c.push(o),a!==null&&_!==null){let f=S[a],d=_(b);for(let I of o)f[d++]=I}}for(let[a,_,F]of T)if(_===0)t[a]=te.M(C(F));else if(_===1)t[a]=S[F].S;else if(_===2)t[a]=P[F].S;else if(_===3){let o=new de,f=$[F];Object.defineProperty(o,"value",{get:()=>b[F],set:d=>{b[F]=Oe(d,f)}}),t[a]=o}else throw Error(`Unsupported export type ${L(_)} for "${a}"`);D>=0&&i[D]()}},Te=new WeakMap,Ie=n=>Math.max(-1,Math.min(n,65535))|0,me=class{constructor({initial:l,maximum:u}){if(l=Ie(l),u=Ie(u??1/0),l<0||l>u)throw RangeError();let y=new ArrayBuffer(l<<16),O={S:this,f:y,l:new Uint8Array(y),u:new Int8Array(y),o:new DataView(y),g:l,Me:u,L:[],v(p){let x=this.g,T=this.l;if(p=Ie(p),p<0||this.g+p>this.Me)return-1;if(!p)return x;let A=new ArrayBuffer((this.g+=p)<<16),U=new Uint8Array(A);U.set(T);try{structuredClone(this.f,{transfer:[this.f]})}catch{}this.f=A,this.l=U,this.u=new Int8Array(A),this.o=new DataView(A);for(let Y of this.L)Y();return x}};Te.set(this,O),Object.defineProperty(this,"buffer",{get:()=>O.f}),this.grow=p=>{let x=O.v(p);if(x<0)throw RangeError();return x}}},Be=new WeakMap,he=class{constructor({element:l,initial:u,maximum:y}){let O=l=="anyfunc",p=[];if(!O&&l!=="externref")throw TypeError();p.S=this,p.ae=Math.min(4294967295,y??1/0),p.length=u;for(let x=0;xp.length}),this.get=x=>{if(x>>>=0,x>=p.length)throw RangeError();return O?te.M(p[x]):p[x]},this.set=(x,T)=>{if(x>>>=0,x>=p.length)throw RangeError();p[x]=O?te.h(T):T},this.grow=(x,T)=>{let A=te.w(p,O?te.h(T):T,x);if(A<0)throw RangeError();return A}}};var nt=async n=>new X(n),lt=async n=>new X(await(await n).arrayBuffer()),it=async(n,l)=>{if(n instanceof X)return new le(n,l);let u=new X(n);return{module:u,instance:new le(u,l)}},st=async(n,l)=>{let u=new X(await(await n).arrayBuffer());return{module:u,instance:new le(u,l)}},ot=n=>{if(!ArrayBuffer.isView(n)&&!(n instanceof ArrayBuffer))throw TypeError("Invalid buffer source");try{return new X(n),!0}catch{return!1}},Rt={Global:de,Instance:le,compile:nt,compileStreaming:lt,instantiate:it,instantiateStreaming:st,validate:ot,Memory:me,Module:X,Table:he,CompileError:Q};return Rt});'},955:e=>{e.exports='/*! For license information please see node-rsa.bundle.js.LICENSE.txt */\r\n!function(t,e){"object"==typeof exports&&"object"==typeof module?module.exports=e():"function"==typeof define&&define.amd?define([],e):"object"==typeof exports?exports.NODERSA=e():t.NODERSA=e()}(globalThis,(()=>(()=>{var t={6395:t=>{t.exports={newInvalidAsn1Error:function(t){var e=new Error;return e.name="InvalidAsn1Error",e.message=t||"",e}}},5670:(t,e,r)=>{var n=r(6395),i=r(6299),o=r(3319),s=r(1431);for(var a in t.exports={Reader:o,Writer:s},i)i.hasOwnProperty(a)&&(t.exports[a]=i[a]);for(var f in n)n.hasOwnProperty(f)&&(t.exports[f]=n[f])},3319:(t,e,r)=>{var n=r(4529),i=r(4774).Buffer,o=r(6299),s=r(6395).newInvalidAsn1Error;function a(t){if(!t||!i.isBuffer(t))throw new TypeError("data must be a node Buffer");this._buf=t,this._size=t.length,this._len=0,this._offset=0}Object.defineProperty(a.prototype,"length",{enumerable:!0,get:function(){return this._len}}),Object.defineProperty(a.prototype,"offset",{enumerable:!0,get:function(){return this._offset}}),Object.defineProperty(a.prototype,"remain",{get:function(){return this._size-this._offset}}),Object.defineProperty(a.prototype,"buffer",{get:function(){return this._buf.slice(this._offset)}}),a.prototype.readByte=function(t){if(this._size-this._offset<1)return null;var e=255&this._buf[this._offset];return t||(this._offset+=1),e},a.prototype.peek=function(){return this.readByte(!0)},a.prototype.readLength=function(t){if(void 0===t&&(t=this._offset),t>=this._size)return null;var e=255&this._buf[t++];if(null===e)return null;if(128&~e)this._len=e;else{if(0==(e&=127))throw s("Indefinite length not supported");if(e>4)throw s("encoding too long");if(this._size-tthis._size-n)return null;if(this._offset=n,0===this.length)return e?i.alloc(0):"";var a=this._buf.slice(this._offset,this._offset+this.length);return this._offset+=this.length,e?a:a.toString("utf8")},a.prototype.readOID=function(t){t||(t=o.OID);var e=this.readString(t,!0);if(null===e)return null;for(var r=[],n=0,i=0;i4)throw s("Integer too long: "+this.length);if(this.length>this._size-r)return null;this._offset=r;for(var i=this._buf[this._offset],o=0,a=0;a{t.exports={EOC:0,Boolean:1,Integer:2,BitString:3,OctetString:4,Null:5,OID:6,ObjectDescriptor:7,External:8,Real:9,Enumeration:10,PDV:11,Utf8String:12,RelativeOID:13,Sequence:16,Set:17,NumericString:18,PrintableString:19,T61String:20,VideotexString:21,IA5String:22,UTCTime:23,GeneralizedTime:24,GraphicString:25,VisibleString:26,GeneralString:28,UniversalString:29,CharacterString:30,BMPString:31,Constructor:32,Context:128}},1431:(t,e,r)=>{var n=r(4529),i=r(4774).Buffer,o=r(6299),s=r(6395).newInvalidAsn1Error,a={size:1024,growthFactor:8};function f(t){var e,r;e=a,r=t||{},n.ok(e),n.equal(typeof e,"object"),n.ok(r),n.equal(typeof r,"object"),Object.getOwnPropertyNames(e).forEach((function(t){if(!r[t]){var n=Object.getOwnPropertyDescriptor(e,t);Object.defineProperty(r,t,n)}})),t=r,this._buf=i.alloc(t.size||1024),this._size=this._buf.length,this._offset=0,this._options=t,this._seq=[]}Object.defineProperty(f.prototype,"buffer",{get:function(){if(this._seq.length)throw s(this._seq.length+" unended sequence(s)");return this._buf.slice(0,this._offset)}}),f.prototype.writeByte=function(t){if("number"!=typeof t)throw new TypeError("argument must be a Number");this._ensure(1),this._buf[this._offset++]=t},f.prototype.writeInt=function(t,e){if("number"!=typeof t)throw new TypeError("argument must be a Number");"number"!=typeof e&&(e=o.Integer);for(var r=4;(!(4286578688&t)||-8388608==(4286578688&t))&&r>1;)r--,t<<=8;if(r>4)throw s("BER ints cannot be > 0xffffffff");for(this._ensure(2+r),this._buf[this._offset++]=e,this._buf[this._offset++]=r;r-- >0;)this._buf[this._offset++]=(4278190080&t)>>>24,t<<=8},f.prototype.writeNull=function(){this.writeByte(o.Null),this.writeByte(0)},f.prototype.writeEnumeration=function(t,e){if("number"!=typeof t)throw new TypeError("argument must be a Number");return"number"!=typeof e&&(e=o.Enumeration),this.writeInt(t,e)},f.prototype.writeBoolean=function(t,e){if("boolean"!=typeof t)throw new TypeError("argument must be a Boolean");"number"!=typeof e&&(e=o.Boolean),this._ensure(3),this._buf[this._offset++]=e,this._buf[this._offset++]=1,this._buf[this._offset++]=t?255:0},f.prototype.writeString=function(t,e){if("string"!=typeof t)throw new TypeError("argument must be a string (was: "+typeof t+")");"number"!=typeof e&&(e=o.OctetString);var r=i.byteLength(t);this.writeByte(e),this.writeLength(r),r&&(this._ensure(r),this._buf.write(t,this._offset),this._offset+=r)},f.prototype.writeBuffer=function(t,e){if("number"!=typeof e)throw new TypeError("tag must be a number");if(!i.isBuffer(t))throw new TypeError("argument must be a buffer");this.writeByte(e),this.writeLength(t.length),this._ensure(t.length),t.copy(this._buf,this._offset,0,t.length),this._offset+=t.length},f.prototype.writeStringArray=function(t){if(!t instanceof Array)throw new TypeError("argument must be an Array[String]");var e=this;t.forEach((function(t){e.writeString(t)}))},f.prototype.writeOID=function(t,e){if("string"!=typeof t)throw new TypeError("argument must be a string");if("number"!=typeof e&&(e=o.OID),!/^([0-9]+\\.){3,}[0-9]+$/.test(t))throw new Error("argument is not a valid OID string");var r=t.split("."),n=[];n.push(40*parseInt(r[0],10)+parseInt(r[1],10)),r.slice(2).forEach((function(t){!function(t,e){e<128?t.push(e):e<16384?(t.push(e>>>7|128),t.push(127&e)):e<2097152?(t.push(e>>>14|128),t.push(e>>>7&255|128),t.push(127&e)):e<268435456?(t.push(e>>>21|128),t.push(e>>>14&255|128),t.push(e>>>7&255|128),t.push(127&e)):(t.push(e>>>28&255|128),t.push(e>>>21&255|128),t.push(e>>>14&255|128),t.push(e>>>7&255|128),t.push(127&e))}(n,parseInt(t,10))}));var i=this;this._ensure(2+n.length),this.writeByte(e),this.writeLength(n.length),n.forEach((function(t){i.writeByte(t)}))},f.prototype.writeLength=function(t){if("number"!=typeof t)throw new TypeError("argument must be a Number");if(this._ensure(4),t<=127)this._buf[this._offset++]=t;else if(t<=255)this._buf[this._offset++]=129,this._buf[this._offset++]=t;else if(t<=65535)this._buf[this._offset++]=130,this._buf[this._offset++]=t>>8,this._buf[this._offset++]=t;else{if(!(t<=16777215))throw s("Length too long (> 4 bytes)");this._buf[this._offset++]=131,this._buf[this._offset++]=t>>16,this._buf[this._offset++]=t>>8,this._buf[this._offset++]=t}},f.prototype.startSequence=function(t){"number"!=typeof t&&(t=o.Sequence|o.Constructor),this.writeByte(t),this._seq.push(this._offset),this._ensure(3),this._offset+=3},f.prototype.endSequence=function(){var t=this._seq.pop(),e=t+3,r=this._offset-e;if(r<=127)this._shift(e,r,-2),this._buf[t]=r;else if(r<=255)this._shift(e,r,-1),this._buf[t]=129,this._buf[t+1]=r;else if(r<=65535)this._buf[t]=130,this._buf[t+1]=r>>8,this._buf[t+2]=r;else{if(!(r<=16777215))throw s("Sequence too long");this._shift(e,r,1),this._buf[t]=131,this._buf[t+1]=r>>16,this._buf[t+2]=r>>8,this._buf[t+3]=r}},f.prototype._shift=function(t,e,r){n.ok(void 0!==t),n.ok(void 0!==e),n.ok(r),this._buf.copy(this._buf,t+r,t,t+e),this._offset+=r},f.prototype._ensure=function(t){if(n.ok(t),this._size-this._offset{var n=r(5670);t.exports={Ber:n,BerReader:n.Reader,BerWriter:n.Writer}},4529:(t,e,r)=>{"use strict";var n=r(1514)();function i(t,e){if(t===e)return 0;for(var r=t.length,n=e.length,i=0,o=Math.min(r,n);i=0;u--)if(c[u]!==h[u])return!1;for(u=c.length-1;u>=0;u--)if(!S(t[a=c[u]],e[a],r,n))return!1;return!0}(t,e,r,n))}return r?t===e:t==e}function _(t){return"[object Arguments]"==Object.prototype.toString.call(t)}function b(t,e){if(!t||!e)return!1;if("[object RegExp]"==Object.prototype.toString.call(e))return e.test(t);try{if(t instanceof e)return!0}catch(t){}return!Error.isPrototypeOf(e)&&!0===e.call({},t)}function E(t,e,r,n){var i;if("function"!=typeof e)throw new TypeError(\'"block" argument must be a function\');"string"==typeof r&&(n=r,r=null),i=function(t){var e;try{t()}catch(t){e=t}return e}(e),n=(r&&r.name?" ("+r.name+").":".")+(n?" "+n:"."),t&&!i&&v(i,r,"Missing expected exception"+n);var o="string"==typeof n,a=!t&&i&&!r;if((!t&&s.isError(i)&&o&&b(i,r)||a)&&v(i,r,"Got unwanted exception"+n),t&&i&&r&&!b(i,r)||!t&&i)throw i}p.AssertionError=function(t){this.name="AssertionError",this.actual=t.actual,this.expected=t.expected,this.operator=t.operator,t.message?(this.message=t.message,this.generatedMessage=!1):(this.message=g(d(this.actual),128)+" "+this.operator+" "+g(d(this.expected),128),this.generatedMessage=!0);var e=t.stackStartFunction||v;if(Error.captureStackTrace)Error.captureStackTrace(this,e);else{var r=new Error;if(r.stack){var n=r.stack,i=y(e),o=n.indexOf("\\n"+i);if(o>=0){var s=n.indexOf("\\n",o+1);n=n.substring(s+1)}this.stack=n}}},s.inherits(p.AssertionError,Error),p.fail=v,p.ok=m,p.equal=function(t,e,r){t!=e&&v(t,e,r,"==",p.equal)},p.notEqual=function(t,e,r){t==e&&v(t,e,r,"!=",p.notEqual)},p.deepEqual=function(t,e,r){S(t,e,!1)||v(t,e,r,"deepEqual",p.deepEqual)},p.deepStrictEqual=function(t,e,r){S(t,e,!0)||v(t,e,r,"deepStrictEqual",p.deepStrictEqual)},p.notDeepEqual=function(t,e,r){S(t,e,!1)&&v(t,e,r,"notDeepEqual",p.notDeepEqual)},p.notDeepStrictEqual=function t(e,r,n){S(e,r,!0)&&v(e,r,n,"notDeepStrictEqual",t)},p.strictEqual=function(t,e,r){t!==e&&v(t,e,r,"===",p.strictEqual)},p.notStrictEqual=function(t,e,r){t===e&&v(t,e,r,"!==",p.notStrictEqual)},p.throws=function(t,e,r){E(!0,t,e,r)},p.doesNotThrow=function(t,e,r){E(!1,t,e,r)},p.ifError=function(t){if(t)throw t},p.strict=n((function t(e,r){e||v(e,!0,r,"==",t)}),p,{equal:p.strictEqual,deepEqual:p.deepStrictEqual,notEqual:p.notStrictEqual,notDeepEqual:p.notDeepStrictEqual}),p.strict.strict=p.strict;var w=Object.keys||function(t){var e=[];for(var r in t)a.call(t,r)&&e.push(r);return e}},6100:t=>{"function"==typeof Object.create?t.exports=function(t,e){t.super_=e,t.prototype=Object.create(e.prototype,{constructor:{value:t,enumerable:!1,writable:!0,configurable:!0}})}:t.exports=function(t,e){t.super_=e;var r=function(){};r.prototype=e.prototype,t.prototype=new r,t.prototype.constructor=t}},3845:t=>{t.exports=function(t){return t&&"object"==typeof t&&"function"==typeof t.copy&&"function"==typeof t.fill&&"function"==typeof t.readUInt8}},4591:(t,e,r)=>{var n=r(5606),i=/%[sdj%]/g;e.format=function(t){if(!v(t)){for(var e=[],r=0;r=o)return t;switch(t){case"%s":return String(n[r++]);case"%d":return Number(n[r++]);case"%j":try{return JSON.stringify(n[r++])}catch(t){return"[Circular]"}default:return t}})),f=n[r];r=3&&(n.depth=arguments[2]),arguments.length>=4&&(n.colors=arguments[3]),y(r)?n.showHidden=r:r&&e._extend(n,r),m(n.showHidden)&&(n.showHidden=!1),m(n.depth)&&(n.depth=2),m(n.colors)&&(n.colors=!1),m(n.customInspect)&&(n.customInspect=!0),n.colors&&(n.stylize=f),c(n,t,n.depth)}function f(t,e){var r=a.styles[e];return r?"["+a.colors[r][0]+"m"+t+"["+a.colors[r][1]+"m":t}function u(t,e){return t}function c(t,r,n){if(t.customInspect&&r&&w(r.inspect)&&r.inspect!==e.inspect&&(!r.constructor||r.constructor.prototype!==r)){var i=r.inspect(n,t);return v(i)||(i=c(t,i,n)),i}var o=function(t,e){if(m(e))return t.stylize("undefined","undefined");if(v(e)){var r="\'"+JSON.stringify(e).replace(/^"|"$/g,"").replace(/\'/g,"\\\\\'").replace(/\\\\"/g,\'"\')+"\'";return t.stylize(r,"string")}return d(e)?t.stylize(""+e,"number"):y(e)?t.stylize(""+e,"boolean"):g(e)?t.stylize("null","null"):void 0}(t,r);if(o)return o;var s=Object.keys(r),a=function(t){var e={};return t.forEach((function(t,r){e[t]=!0})),e}(s);if(t.showHidden&&(s=Object.getOwnPropertyNames(r)),E(r)&&(s.indexOf("message")>=0||s.indexOf("description")>=0))return h(r);if(0===s.length){if(w(r)){var f=r.name?": "+r.name:"";return t.stylize("[Function"+f+"]","special")}if(S(r))return t.stylize(RegExp.prototype.toString.call(r),"regexp");if(b(r))return t.stylize(Date.prototype.toString.call(r),"date");if(E(r))return h(r)}var u,_="",O=!1,B=["{","}"];return l(r)&&(O=!0,B=["[","]"]),w(r)&&(_=" [Function"+(r.name?": "+r.name:"")+"]"),S(r)&&(_=" "+RegExp.prototype.toString.call(r)),b(r)&&(_=" "+Date.prototype.toUTCString.call(r)),E(r)&&(_=" "+h(r)),0!==s.length||O&&0!=r.length?n<0?S(r)?t.stylize(RegExp.prototype.toString.call(r),"regexp"):t.stylize("[Object]","special"):(t.seen.push(r),u=O?function(t,e,r,n,i){for(var o=[],s=0,a=e.length;s60?r[0]+(""===e?"":e+"\\n ")+" "+t.join(",\\n ")+" "+r[1]:r[0]+e+" "+t.join(", ")+" "+r[1]}(u,_,B)):B[0]+_+B[1]}function h(t){return"["+Error.prototype.toString.call(t)+"]"}function p(t,e,r,n,i,o){var s,a,f;if((f=Object.getOwnPropertyDescriptor(e,i)||{value:e[i]}).get?a=f.set?t.stylize("[Getter/Setter]","special"):t.stylize("[Getter]","special"):f.set&&(a=t.stylize("[Setter]","special")),x(n,i)||(s="["+i+"]"),a||(t.seen.indexOf(f.value)<0?(a=g(r)?c(t,f.value,null):c(t,f.value,r-1)).indexOf("\\n")>-1&&(a=o?a.split("\\n").map((function(t){return" "+t})).join("\\n").substr(2):"\\n"+a.split("\\n").map((function(t){return" "+t})).join("\\n")):a=t.stylize("[Circular]","special")),m(s)){if(o&&i.match(/^\\d+$/))return a;(s=JSON.stringify(""+i)).match(/^"([a-zA-Z_][a-zA-Z_0-9]*)"$/)?(s=s.substr(1,s.length-2),s=t.stylize(s,"name")):(s=s.replace(/\'/g,"\\\\\'").replace(/\\\\"/g,\'"\').replace(/(^"|"$)/g,"\'"),s=t.stylize(s,"string"))}return s+": "+a}function l(t){return Array.isArray(t)}function y(t){return"boolean"==typeof t}function g(t){return null===t}function d(t){return"number"==typeof t}function v(t){return"string"==typeof t}function m(t){return void 0===t}function S(t){return _(t)&&"[object RegExp]"===O(t)}function _(t){return"object"==typeof t&&null!==t}function b(t){return _(t)&&"[object Date]"===O(t)}function E(t){return _(t)&&("[object Error]"===O(t)||t instanceof Error)}function w(t){return"function"==typeof t}function O(t){return Object.prototype.toString.call(t)}function B(t){return t<10?"0"+t.toString(10):t.toString(10)}e.debuglog=function(t){if(m(o)&&(o=n.env.NODE_DEBUG||""),t=t.toUpperCase(),!s[t])if(new RegExp("\\\\b"+t+"\\\\b","i").test(o)){var r=n.pid;s[t]=function(){var n=e.format.apply(e,arguments);console.error("%s %d: %s",t,r,n)}}else s[t]=function(){};return s[t]},e.inspect=a,a.colors={bold:[1,22],italic:[3,23],underline:[4,24],inverse:[7,27],white:[37,39],grey:[90,39],black:[30,39],blue:[34,39],cyan:[36,39],green:[32,39],magenta:[35,39],red:[31,39],yellow:[33,39]},a.styles={special:"cyan",number:"yellow",boolean:"yellow",undefined:"grey",null:"bold",string:"green",date:"magenta",regexp:"red"},e.isArray=l,e.isBoolean=y,e.isNull=g,e.isNullOrUndefined=function(t){return null==t},e.isNumber=d,e.isString=v,e.isSymbol=function(t){return"symbol"==typeof t},e.isUndefined=m,e.isRegExp=S,e.isObject=_,e.isDate=b,e.isError=E,e.isFunction=w,e.isPrimitive=function(t){return null===t||"boolean"==typeof t||"number"==typeof t||"string"==typeof t||"symbol"==typeof t||void 0===t},e.isBuffer=r(3845);var A=["Jan","Feb","Mar","Apr","May","Jun","Jul","Aug","Sep","Oct","Nov","Dec"];function x(t,e){return Object.prototype.hasOwnProperty.call(t,e)}e.log=function(){var t,r;console.log("%s - %s",(r=[B((t=new Date).getHours()),B(t.getMinutes()),B(t.getSeconds())].join(":"),[t.getDate(),A[t.getMonth()],r].join(" ")),e.format.apply(e,arguments))},e.inherits=r(6100),e._extend=function(t,e){if(!e||!_(e))return t;for(var r=Object.keys(e),n=r.length;n--;)t[r[n]]=e[r[n]];return t}},7526:(t,e)=>{"use strict";e.byteLength=function(t){var e=a(t),r=e[0],n=e[1];return 3*(r+n)/4-n},e.toByteArray=function(t){var e,r,o=a(t),s=o[0],f=o[1],u=new i(function(t,e,r){return 3*(e+r)/4-r}(0,s,f)),c=0,h=f>0?s-4:s;for(r=0;r>16&255,u[c++]=e>>8&255,u[c++]=255&e;return 2===f&&(e=n[t.charCodeAt(r)]<<2|n[t.charCodeAt(r+1)]>>4,u[c++]=255&e),1===f&&(e=n[t.charCodeAt(r)]<<10|n[t.charCodeAt(r+1)]<<4|n[t.charCodeAt(r+2)]>>2,u[c++]=e>>8&255,u[c++]=255&e),u},e.fromByteArray=function(t){for(var e,n=t.length,i=n%3,o=[],s=16383,a=0,u=n-i;au?u:a+s));return 1===i?(e=t[n-1],o.push(r[e>>2]+r[e<<4&63]+"==")):2===i&&(e=(t[n-2]<<8)+t[n-1],o.push(r[e>>10]+r[e>>4&63]+r[e<<2&63]+"=")),o.join("")};for(var r=[],n=[],i="undefined"!=typeof Uint8Array?Uint8Array:Array,o="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",s=0;s<64;++s)r[s]=o[s],n[o.charCodeAt(s)]=s;function a(t){var e=t.length;if(e%4>0)throw new Error("Invalid string. Length must be a multiple of 4");var r=t.indexOf("=");return-1===r&&(r=e),[r,r===e?0:4-r%4]}function f(t,e,n){for(var i,o,s=[],a=e;a>18&63]+r[o>>12&63]+r[o>>6&63]+r[63&o]);return s.join("")}n["-".charCodeAt(0)]=62,n["_".charCodeAt(0)]=63},8287:(t,e,r)=>{"use strict";var n=r(7526),i=r(251);e.Buffer=a,e.SlowBuffer=function(t){return+t!=t&&(t=0),a.alloc(+t)},e.INSPECT_MAX_BYTES=50;var o=2147483647;function s(t){if(t>o)throw new RangeError(\'The value "\'+t+\'" is invalid for option "size"\');var e=new Uint8Array(t);return e.__proto__=a.prototype,e}function a(t,e,r){if("number"==typeof t){if("string"==typeof e)throw new TypeError(\'The "string" argument must be of type string. Received type number\');return c(t)}return f(t,e,r)}function f(t,e,r){if("string"==typeof t)return function(t,e){if("string"==typeof e&&""!==e||(e="utf8"),!a.isEncoding(e))throw new TypeError("Unknown encoding: "+e);var r=0|l(t,e),n=s(r),i=n.write(t,e);return i!==r&&(n=n.slice(0,i)),n}(t,e);if(ArrayBuffer.isView(t))return h(t);if(null==t)throw TypeError("The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type "+typeof t);if(H(t,ArrayBuffer)||t&&H(t.buffer,ArrayBuffer))return function(t,e,r){if(e<0||t.byteLength=o)throw new RangeError("Attempt to allocate Buffer larger than maximum size: 0x"+o.toString(16)+" bytes");return 0|t}function l(t,e){if(a.isBuffer(t))return t.length;if(ArrayBuffer.isView(t)||H(t,ArrayBuffer))return t.byteLength;if("string"!=typeof t)throw new TypeError(\'The "string" argument must be one of type string, Buffer, or ArrayBuffer. Received type \'+typeof t);var r=t.length,n=arguments.length>2&&!0===arguments[2];if(!n&&0===r)return 0;for(var i=!1;;)switch(e){case"ascii":case"latin1":case"binary":return r;case"utf8":case"utf-8":return U(t).length;case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return 2*r;case"hex":return r>>>1;case"base64":return M(t).length;default:if(i)return n?-1:U(t).length;e=(""+e).toLowerCase(),i=!0}}function y(t,e,r){var n=!1;if((void 0===e||e<0)&&(e=0),e>this.length)return"";if((void 0===r||r>this.length)&&(r=this.length),r<=0)return"";if((r>>>=0)<=(e>>>=0))return"";for(t||(t="utf8");;)switch(t){case"hex":return T(this,e,r);case"utf8":case"utf-8":return B(this,e,r);case"ascii":return x(this,e,r);case"latin1":case"binary":return P(this,e,r);case"base64":return O(this,e,r);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return I(this,e,r);default:if(n)throw new TypeError("Unknown encoding: "+t);t=(t+"").toLowerCase(),n=!0}}function g(t,e,r){var n=t[e];t[e]=t[r],t[r]=n}function d(t,e,r,n,i){if(0===t.length)return-1;if("string"==typeof r?(n=r,r=0):r>2147483647?r=2147483647:r<-2147483648&&(r=-2147483648),F(r=+r)&&(r=i?0:t.length-1),r<0&&(r=t.length+r),r>=t.length){if(i)return-1;r=t.length-1}else if(r<0){if(!i)return-1;r=0}if("string"==typeof e&&(e=a.from(e,n)),a.isBuffer(e))return 0===e.length?-1:v(t,e,r,n,i);if("number"==typeof e)return e&=255,"function"==typeof Uint8Array.prototype.indexOf?i?Uint8Array.prototype.indexOf.call(t,e,r):Uint8Array.prototype.lastIndexOf.call(t,e,r):v(t,[e],r,n,i);throw new TypeError("val must be string, number or Buffer")}function v(t,e,r,n,i){var o,s=1,a=t.length,f=e.length;if(void 0!==n&&("ucs2"===(n=String(n).toLowerCase())||"ucs-2"===n||"utf16le"===n||"utf-16le"===n)){if(t.length<2||e.length<2)return-1;s=2,a/=2,f/=2,r/=2}function u(t,e){return 1===s?t[e]:t.readUInt16BE(e*s)}if(i){var c=-1;for(o=r;oa&&(r=a-f),o=r;o>=0;o--){for(var h=!0,p=0;pi&&(n=i):n=i;var o=e.length;n>o/2&&(n=o/2);for(var s=0;s>8,i=r%256,o.push(i),o.push(n);return o}(e,t.length-r),t,r,n)}function O(t,e,r){return 0===e&&r===t.length?n.fromByteArray(t):n.fromByteArray(t.slice(e,r))}function B(t,e,r){r=Math.min(t.length,r);for(var n=[],i=e;i239?4:u>223?3:u>191?2:1;if(i+h<=r)switch(h){case 1:u<128&&(c=u);break;case 2:128==(192&(o=t[i+1]))&&(f=(31&u)<<6|63&o)>127&&(c=f);break;case 3:o=t[i+1],s=t[i+2],128==(192&o)&&128==(192&s)&&(f=(15&u)<<12|(63&o)<<6|63&s)>2047&&(f<55296||f>57343)&&(c=f);break;case 4:o=t[i+1],s=t[i+2],a=t[i+3],128==(192&o)&&128==(192&s)&&128==(192&a)&&(f=(15&u)<<18|(63&o)<<12|(63&s)<<6|63&a)>65535&&f<1114112&&(c=f)}null===c?(c=65533,h=1):c>65535&&(c-=65536,n.push(c>>>10&1023|55296),c=56320|1023&c),n.push(c),i+=h}return function(t){var e=t.length;if(e<=A)return String.fromCharCode.apply(String,t);for(var r="",n=0;nr&&(t+=" ... "),""},a.prototype.compare=function(t,e,r,n,i){if(H(t,Uint8Array)&&(t=a.from(t,t.offset,t.byteLength)),!a.isBuffer(t))throw new TypeError(\'The "target" argument must be one of type Buffer or Uint8Array. Received type \'+typeof t);if(void 0===e&&(e=0),void 0===r&&(r=t?t.length:0),void 0===n&&(n=0),void 0===i&&(i=this.length),e<0||r>t.length||n<0||i>this.length)throw new RangeError("out of range index");if(n>=i&&e>=r)return 0;if(n>=i)return-1;if(e>=r)return 1;if(this===t)return 0;for(var o=(i>>>=0)-(n>>>=0),s=(r>>>=0)-(e>>>=0),f=Math.min(o,s),u=this.slice(n,i),c=t.slice(e,r),h=0;h>>=0,isFinite(r)?(r>>>=0,void 0===n&&(n="utf8")):(n=r,r=void 0)}var i=this.length-e;if((void 0===r||r>i)&&(r=i),t.length>0&&(r<0||e<0)||e>this.length)throw new RangeError("Attempt to write outside buffer bounds");n||(n="utf8");for(var o=!1;;)switch(n){case"hex":return m(this,t,e,r);case"utf8":case"utf-8":return S(this,t,e,r);case"ascii":return _(this,t,e,r);case"latin1":case"binary":return b(this,t,e,r);case"base64":return E(this,t,e,r);case"ucs2":case"ucs-2":case"utf16le":case"utf-16le":return w(this,t,e,r);default:if(o)throw new TypeError("Unknown encoding: "+n);n=(""+n).toLowerCase(),o=!0}},a.prototype.toJSON=function(){return{type:"Buffer",data:Array.prototype.slice.call(this._arr||this,0)}};var A=4096;function x(t,e,r){var n="";r=Math.min(t.length,r);for(var i=e;ii)&&(r=i);for(var o="",s=e;sr)throw new RangeError("Trying to access beyond buffer length")}function D(t,e,r,n,i,o){if(!a.isBuffer(t))throw new TypeError(\'"buffer" argument must be a Buffer instance\');if(e>i||et.length)throw new RangeError("Index out of range")}function R(t,e,r,n,i,o){if(r+n>t.length)throw new RangeError("Index out of range");if(r<0)throw new RangeError("Index out of range")}function N(t,e,r,n,o){return e=+e,r>>>=0,o||R(t,0,r,4),i.write(t,e,r,n,23,4),r+4}function L(t,e,r,n,o){return e=+e,r>>>=0,o||R(t,0,r,8),i.write(t,e,r,n,52,8),r+8}a.prototype.slice=function(t,e){var r=this.length;(t=~~t)<0?(t+=r)<0&&(t=0):t>r&&(t=r),(e=void 0===e?r:~~e)<0?(e+=r)<0&&(e=0):e>r&&(e=r),e>>=0,e>>>=0,r||k(t,e,this.length);for(var n=this[t],i=1,o=0;++o>>=0,e>>>=0,r||k(t,e,this.length);for(var n=this[t+--e],i=1;e>0&&(i*=256);)n+=this[t+--e]*i;return n},a.prototype.readUInt8=function(t,e){return t>>>=0,e||k(t,1,this.length),this[t]},a.prototype.readUInt16LE=function(t,e){return t>>>=0,e||k(t,2,this.length),this[t]|this[t+1]<<8},a.prototype.readUInt16BE=function(t,e){return t>>>=0,e||k(t,2,this.length),this[t]<<8|this[t+1]},a.prototype.readUInt32LE=function(t,e){return t>>>=0,e||k(t,4,this.length),(this[t]|this[t+1]<<8|this[t+2]<<16)+16777216*this[t+3]},a.prototype.readUInt32BE=function(t,e){return t>>>=0,e||k(t,4,this.length),16777216*this[t]+(this[t+1]<<16|this[t+2]<<8|this[t+3])},a.prototype.readIntLE=function(t,e,r){t>>>=0,e>>>=0,r||k(t,e,this.length);for(var n=this[t],i=1,o=0;++o=(i*=128)&&(n-=Math.pow(2,8*e)),n},a.prototype.readIntBE=function(t,e,r){t>>>=0,e>>>=0,r||k(t,e,this.length);for(var n=e,i=1,o=this[t+--n];n>0&&(i*=256);)o+=this[t+--n]*i;return o>=(i*=128)&&(o-=Math.pow(2,8*e)),o},a.prototype.readInt8=function(t,e){return t>>>=0,e||k(t,1,this.length),128&this[t]?-1*(255-this[t]+1):this[t]},a.prototype.readInt16LE=function(t,e){t>>>=0,e||k(t,2,this.length);var r=this[t]|this[t+1]<<8;return 32768&r?4294901760|r:r},a.prototype.readInt16BE=function(t,e){t>>>=0,e||k(t,2,this.length);var r=this[t+1]|this[t]<<8;return 32768&r?4294901760|r:r},a.prototype.readInt32LE=function(t,e){return t>>>=0,e||k(t,4,this.length),this[t]|this[t+1]<<8|this[t+2]<<16|this[t+3]<<24},a.prototype.readInt32BE=function(t,e){return t>>>=0,e||k(t,4,this.length),this[t]<<24|this[t+1]<<16|this[t+2]<<8|this[t+3]},a.prototype.readFloatLE=function(t,e){return t>>>=0,e||k(t,4,this.length),i.read(this,t,!0,23,4)},a.prototype.readFloatBE=function(t,e){return t>>>=0,e||k(t,4,this.length),i.read(this,t,!1,23,4)},a.prototype.readDoubleLE=function(t,e){return t>>>=0,e||k(t,8,this.length),i.read(this,t,!0,52,8)},a.prototype.readDoubleBE=function(t,e){return t>>>=0,e||k(t,8,this.length),i.read(this,t,!1,52,8)},a.prototype.writeUIntLE=function(t,e,r,n){t=+t,e>>>=0,r>>>=0,n||D(this,t,e,r,Math.pow(2,8*r)-1,0);var i=1,o=0;for(this[e]=255&t;++o>>=0,r>>>=0,n||D(this,t,e,r,Math.pow(2,8*r)-1,0);var i=r-1,o=1;for(this[e+i]=255&t;--i>=0&&(o*=256);)this[e+i]=t/o&255;return e+r},a.prototype.writeUInt8=function(t,e,r){return t=+t,e>>>=0,r||D(this,t,e,1,255,0),this[e]=255&t,e+1},a.prototype.writeUInt16LE=function(t,e,r){return t=+t,e>>>=0,r||D(this,t,e,2,65535,0),this[e]=255&t,this[e+1]=t>>>8,e+2},a.prototype.writeUInt16BE=function(t,e,r){return t=+t,e>>>=0,r||D(this,t,e,2,65535,0),this[e]=t>>>8,this[e+1]=255&t,e+2},a.prototype.writeUInt32LE=function(t,e,r){return t=+t,e>>>=0,r||D(this,t,e,4,4294967295,0),this[e+3]=t>>>24,this[e+2]=t>>>16,this[e+1]=t>>>8,this[e]=255&t,e+4},a.prototype.writeUInt32BE=function(t,e,r){return t=+t,e>>>=0,r||D(this,t,e,4,4294967295,0),this[e]=t>>>24,this[e+1]=t>>>16,this[e+2]=t>>>8,this[e+3]=255&t,e+4},a.prototype.writeIntLE=function(t,e,r,n){if(t=+t,e>>>=0,!n){var i=Math.pow(2,8*r-1);D(this,t,e,r,i-1,-i)}var o=0,s=1,a=0;for(this[e]=255&t;++o>>=0,!n){var i=Math.pow(2,8*r-1);D(this,t,e,r,i-1,-i)}var o=r-1,s=1,a=0;for(this[e+o]=255&t;--o>=0&&(s*=256);)t<0&&0===a&&0!==this[e+o+1]&&(a=1),this[e+o]=(t/s|0)-a&255;return e+r},a.prototype.writeInt8=function(t,e,r){return t=+t,e>>>=0,r||D(this,t,e,1,127,-128),t<0&&(t=255+t+1),this[e]=255&t,e+1},a.prototype.writeInt16LE=function(t,e,r){return t=+t,e>>>=0,r||D(this,t,e,2,32767,-32768),this[e]=255&t,this[e+1]=t>>>8,e+2},a.prototype.writeInt16BE=function(t,e,r){return t=+t,e>>>=0,r||D(this,t,e,2,32767,-32768),this[e]=t>>>8,this[e+1]=255&t,e+2},a.prototype.writeInt32LE=function(t,e,r){return t=+t,e>>>=0,r||D(this,t,e,4,2147483647,-2147483648),this[e]=255&t,this[e+1]=t>>>8,this[e+2]=t>>>16,this[e+3]=t>>>24,e+4},a.prototype.writeInt32BE=function(t,e,r){return t=+t,e>>>=0,r||D(this,t,e,4,2147483647,-2147483648),t<0&&(t=4294967295+t+1),this[e]=t>>>24,this[e+1]=t>>>16,this[e+2]=t>>>8,this[e+3]=255&t,e+4},a.prototype.writeFloatLE=function(t,e,r){return N(this,t,e,!0,r)},a.prototype.writeFloatBE=function(t,e,r){return N(this,t,e,!1,r)},a.prototype.writeDoubleLE=function(t,e,r){return L(this,t,e,!0,r)},a.prototype.writeDoubleBE=function(t,e,r){return L(this,t,e,!1,r)},a.prototype.copy=function(t,e,r,n){if(!a.isBuffer(t))throw new TypeError("argument should be a Buffer");if(r||(r=0),n||0===n||(n=this.length),e>=t.length&&(e=t.length),e||(e=0),n>0&&n=this.length)throw new RangeError("Index out of range");if(n<0)throw new RangeError("sourceEnd out of bounds");n>this.length&&(n=this.length),t.length-e=0;--o)t[o+e]=this[o+r];else Uint8Array.prototype.set.call(t,this.subarray(r,n),e);return i},a.prototype.fill=function(t,e,r,n){if("string"==typeof t){if("string"==typeof e?(n=e,e=0,r=this.length):"string"==typeof r&&(n=r,r=this.length),void 0!==n&&"string"!=typeof n)throw new TypeError("encoding must be a string");if("string"==typeof n&&!a.isEncoding(n))throw new TypeError("Unknown encoding: "+n);if(1===t.length){var i=t.charCodeAt(0);("utf8"===n&&i<128||"latin1"===n)&&(t=i)}}else"number"==typeof t&&(t&=255);if(e<0||this.length>>=0,r=void 0===r?this.length:r>>>0,t||(t=0),"number"==typeof t)for(o=e;o55295&&r<57344){if(!i){if(r>56319){(e-=3)>-1&&o.push(239,191,189);continue}if(s+1===n){(e-=3)>-1&&o.push(239,191,189);continue}i=r;continue}if(r<56320){(e-=3)>-1&&o.push(239,191,189),i=r;continue}r=65536+(i-55296<<10|r-56320)}else i&&(e-=3)>-1&&o.push(239,191,189);if(i=null,r<128){if((e-=1)<0)break;o.push(r)}else if(r<2048){if((e-=2)<0)break;o.push(r>>6|192,63&r|128)}else if(r<65536){if((e-=3)<0)break;o.push(r>>12|224,r>>6&63|128,63&r|128)}else{if(!(r<1114112))throw new Error("Invalid code point");if((e-=4)<0)break;o.push(r>>18|240,r>>12&63|128,r>>6&63|128,63&r|128)}}return o}function M(t){return n.toByteArray(function(t){if((t=(t=t.split("=")[0]).trim().replace(C,"")).length<2)return"";for(;t.length%4!=0;)t+="=";return t}(t))}function j(t,e,r,n){for(var i=0;i=e.length||i>=t.length);++i)e[i+r]=t[i];return i}function H(t,e){return t instanceof e||null!=t&&null!=t.constructor&&null!=t.constructor.name&&t.constructor.name===e.name}function F(t){return t!=t}},8075:(t,e,r)=>{"use strict";var n=r(453),i=r(487),o=i(n("String.prototype.indexOf"));t.exports=function(t,e){var r=n(t,!!e);return"function"==typeof r&&o(t,".prototype.")>-1?i(r):r}},487:(t,e,r)=>{"use strict";var n=r(6743),i=r(453),o=r(6897),s=r(9675),a=i("%Function.prototype.apply%"),f=i("%Function.prototype.call%"),u=i("%Reflect.apply%",!0)||n.call(f,a),c=r(655),h=i("%Math.max%");t.exports=function(t){if("function"!=typeof t)throw new s("a function is required");var e=u(n,f,arguments);return o(e,1+h(0,t.length-(arguments.length-1)),!0)};var p=function(){return u(n,a,arguments)};c?c(t.exports,"apply",{value:p}):t.exports.apply=p},955:function(t,e,r){var n;t.exports=(n=r(9021),r(754),r(4636),r(9506),r(7165),function(){var t=n,e=t.lib.BlockCipher,r=t.algo,i=[],o=[],s=[],a=[],f=[],u=[],c=[],h=[],p=[],l=[];!function(){for(var t=[],e=0;e<256;e++)t[e]=e<128?e<<1:e<<1^283;var r=0,n=0;for(e=0;e<256;e++){var y=n^n<<1^n<<2^n<<3^n<<4;y=y>>>8^255&y^99,i[r]=y,o[y]=r;var g=t[r],d=t[g],v=t[d],m=257*t[y]^16843008*y;s[r]=m<<24|m>>>8,a[r]=m<<16|m>>>16,f[r]=m<<8|m>>>24,u[r]=m,m=16843009*v^65537*d^257*g^16843008*r,c[y]=m<<24|m>>>8,h[y]=m<<16|m>>>16,p[y]=m<<8|m>>>24,l[y]=m,r?(r=g^t[t[t[v^g]]],n^=t[t[n]]):r=n=1}}();var y=[0,1,2,4,8,16,32,64,128,27,54],g=r.AES=e.extend({_doReset:function(){if(!this._nRounds||this._keyPriorReset!==this._key){for(var t=this._keyPriorReset=this._key,e=t.words,r=t.sigBytes/4,n=4*((this._nRounds=r+6)+1),o=this._keySchedule=[],s=0;s6&&s%r==4&&(a=i[a>>>24]<<24|i[a>>>16&255]<<16|i[a>>>8&255]<<8|i[255&a]):(a=i[(a=a<<8|a>>>24)>>>24]<<24|i[a>>>16&255]<<16|i[a>>>8&255]<<8|i[255&a],a^=y[s/r|0]<<24),o[s]=o[s-r]^a}for(var f=this._invKeySchedule=[],u=0;u>>24]]^h[i[a>>>16&255]]^p[i[a>>>8&255]]^l[i[255&a]]}},encryptBlock:function(t,e){this._doCryptBlock(t,e,this._keySchedule,s,a,f,u,i)},decryptBlock:function(t,e){var r=t[e+1];t[e+1]=t[e+3],t[e+3]=r,this._doCryptBlock(t,e,this._invKeySchedule,c,h,p,l,o),r=t[e+1],t[e+1]=t[e+3],t[e+3]=r},_doCryptBlock:function(t,e,r,n,i,o,s,a){for(var f=this._nRounds,u=t[e]^r[0],c=t[e+1]^r[1],h=t[e+2]^r[2],p=t[e+3]^r[3],l=4,y=1;y>>24]^i[c>>>16&255]^o[h>>>8&255]^s[255&p]^r[l++],d=n[c>>>24]^i[h>>>16&255]^o[p>>>8&255]^s[255&u]^r[l++],v=n[h>>>24]^i[p>>>16&255]^o[u>>>8&255]^s[255&c]^r[l++],m=n[p>>>24]^i[u>>>16&255]^o[c>>>8&255]^s[255&h]^r[l++];u=g,c=d,h=v,p=m}g=(a[u>>>24]<<24|a[c>>>16&255]<<16|a[h>>>8&255]<<8|a[255&p])^r[l++],d=(a[c>>>24]<<24|a[h>>>16&255]<<16|a[p>>>8&255]<<8|a[255&u])^r[l++],v=(a[h>>>24]<<24|a[p>>>16&255]<<16|a[u>>>8&255]<<8|a[255&c])^r[l++],m=(a[p>>>24]<<24|a[u>>>16&255]<<16|a[c>>>8&255]<<8|a[255&h])^r[l++],t[e]=g,t[e+1]=d,t[e+2]=v,t[e+3]=m},keySize:8});t.AES=e._createHelper(g)}(),n.AES)},7165:function(t,e,r){var n,i,o,s,a,f,u,c,h,p,l,y,g,d,v,m,S,_,b;t.exports=(n=r(9021),r(9506),void(n.lib.Cipher||(i=n,o=i.lib,s=o.Base,a=o.WordArray,f=o.BufferedBlockAlgorithm,u=i.enc,u.Utf8,c=u.Base64,h=i.algo.EvpKDF,p=o.Cipher=f.extend({cfg:s.extend(),createEncryptor:function(t,e){return this.create(this._ENC_XFORM_MODE,t,e)},createDecryptor:function(t,e){return this.create(this._DEC_XFORM_MODE,t,e)},init:function(t,e,r){this.cfg=this.cfg.extend(r),this._xformMode=t,this._key=e,this.reset()},reset:function(){f.reset.call(this),this._doReset()},process:function(t){return this._append(t),this._process()},finalize:function(t){return t&&this._append(t),this._doFinalize()},keySize:4,ivSize:4,_ENC_XFORM_MODE:1,_DEC_XFORM_MODE:2,_createHelper:function(){function t(t){return"string"==typeof t?b:S}return function(e){return{encrypt:function(r,n,i){return t(n).encrypt(e,r,n,i)},decrypt:function(r,n,i){return t(n).decrypt(e,r,n,i)}}}}()}),o.StreamCipher=p.extend({_doFinalize:function(){return this._process(!0)},blockSize:1}),l=i.mode={},y=o.BlockCipherMode=s.extend({createEncryptor:function(t,e){return this.Encryptor.create(t,e)},createDecryptor:function(t,e){return this.Decryptor.create(t,e)},init:function(t,e){this._cipher=t,this._iv=e}}),g=l.CBC=function(){var t=y.extend();function e(t,e,r){var n=this._iv;if(n){var i=n;this._iv=void 0}else i=this._prevBlock;for(var o=0;o>>2];t.sigBytes-=e}},o.BlockCipher=p.extend({cfg:p.cfg.extend({mode:g,padding:d}),reset:function(){p.reset.call(this);var t=this.cfg,e=t.iv,r=t.mode;if(this._xformMode==this._ENC_XFORM_MODE)var n=r.createEncryptor;else n=r.createDecryptor,this._minBufferSize=1;this._mode&&this._mode.__creator==n?this._mode.init(this,e&&e.words):(this._mode=n.call(r,this,e&&e.words),this._mode.__creator=n)},_doProcessBlock:function(t,e){this._mode.processBlock(t,e)},_doFinalize:function(){var t=this.cfg.padding;if(this._xformMode==this._ENC_XFORM_MODE){t.pad(this._data,this.blockSize);var e=this._process(!0)}else e=this._process(!0),t.unpad(e);return e},blockSize:4}),v=o.CipherParams=s.extend({init:function(t){this.mixIn(t)},toString:function(t){return(t||this.formatter).stringify(this)}}),m=(i.format={}).OpenSSL={stringify:function(t){var e=t.ciphertext,r=t.salt;if(r)var n=a.create([1398893684,1701076831]).concat(r).concat(e);else n=e;return n.toString(c)},parse:function(t){var e=c.parse(t),r=e.words;if(1398893684==r[0]&&1701076831==r[1]){var n=a.create(r.slice(2,4));r.splice(0,4),e.sigBytes-=16}return v.create({ciphertext:e,salt:n})}},S=o.SerializableCipher=s.extend({cfg:s.extend({format:m}),encrypt:function(t,e,r,n){n=this.cfg.extend(n);var i=t.createEncryptor(r,n),o=i.finalize(e),s=i.cfg;return v.create({ciphertext:o,key:r,iv:s.iv,algorithm:t,mode:s.mode,padding:s.padding,blockSize:t.blockSize,formatter:n.format})},decrypt:function(t,e,r,n){return n=this.cfg.extend(n),e=this._parse(e,n.format),t.createDecryptor(r,n).finalize(e.ciphertext)},_parse:function(t,e){return"string"==typeof t?e.parse(t,this):t}}),_=(i.kdf={}).OpenSSL={execute:function(t,e,r,n){n||(n=a.random(8));var i=h.create({keySize:e+r}).compute(t,n),o=a.create(i.words.slice(e),4*r);return i.sigBytes=4*e,v.create({key:i,iv:o,salt:n})}},b=o.PasswordBasedCipher=S.extend({cfg:S.cfg.extend({kdf:_}),encrypt:function(t,e,r,n){var i=(n=this.cfg.extend(n)).kdf.execute(r,t.keySize,t.ivSize);n.iv=i.iv;var o=S.encrypt.call(this,t,e,i.key,n);return o.mixIn(i),o},decrypt:function(t,e,r,n){n=this.cfg.extend(n),e=this._parse(e,n.format);var i=n.kdf.execute(r,t.keySize,t.ivSize,e.salt);return n.iv=i.iv,S.decrypt.call(this,t,e,i.key,n)}}))))},9021:function(t,e){var r;t.exports=(r=r||function(t,e){var r=Object.create||function(){function t(){}return function(e){var r;return t.prototype=e,r=new t,t.prototype=null,r}}(),n={},i=n.lib={},o=i.Base={extend:function(t){var e=r(this);return t&&e.mixIn(t),e.hasOwnProperty("init")&&this.init!==e.init||(e.init=function(){e.$super.init.apply(this,arguments)}),e.init.prototype=e,e.$super=this,e},create:function(){var t=this.extend();return t.init.apply(t,arguments),t},init:function(){},mixIn:function(t){for(var e in t)t.hasOwnProperty(e)&&(this[e]=t[e]);t.hasOwnProperty("toString")&&(this.toString=t.toString)},clone:function(){return this.init.prototype.extend(this)}},s=i.WordArray=o.extend({init:function(t,e){t=this.words=t||[],this.sigBytes=null!=e?e:4*t.length},toString:function(t){return(t||f).stringify(this)},concat:function(t){var e=this.words,r=t.words,n=this.sigBytes,i=t.sigBytes;if(this.clamp(),n%4)for(var o=0;o>>2]>>>24-o%4*8&255;e[n+o>>>2]|=s<<24-(n+o)%4*8}else for(o=0;o>>2]=r[o>>>2];return this.sigBytes+=i,this},clamp:function(){var e=this.words,r=this.sigBytes;e[r>>>2]&=4294967295<<32-r%4*8,e.length=t.ceil(r/4)},clone:function(){var t=o.clone.call(this);return t.words=this.words.slice(0),t},random:function(e){for(var r,n=[],i=function(e){var r=987654321,n=4294967295;return function(){var i=((r=36969*(65535&r)+(r>>16)&n)<<16)+(e=18e3*(65535&e)+(e>>16)&n)&n;return i/=4294967296,(i+=.5)*(t.random()>.5?1:-1)}},o=0;o>>2]>>>24-i%4*8&255;n.push((o>>>4).toString(16)),n.push((15&o).toString(16))}return n.join("")},parse:function(t){for(var e=t.length,r=[],n=0;n>>3]|=parseInt(t.substr(n,2),16)<<24-n%8*4;return new s.init(r,e/2)}},u=a.Latin1={stringify:function(t){for(var e=t.words,r=t.sigBytes,n=[],i=0;i>>2]>>>24-i%4*8&255;n.push(String.fromCharCode(o))}return n.join("")},parse:function(t){for(var e=t.length,r=[],n=0;n>>2]|=(255&t.charCodeAt(n))<<24-n%4*8;return new s.init(r,e)}},c=a.Utf8={stringify:function(t){try{return decodeURIComponent(escape(u.stringify(t)))}catch(t){throw new Error("Malformed UTF-8 data")}},parse:function(t){return u.parse(unescape(encodeURIComponent(t)))}},h=i.BufferedBlockAlgorithm=o.extend({reset:function(){this._data=new s.init,this._nDataBytes=0},_append:function(t){"string"==typeof t&&(t=c.parse(t)),this._data.concat(t),this._nDataBytes+=t.sigBytes},_process:function(e){var r=this._data,n=r.words,i=r.sigBytes,o=this.blockSize,a=i/(4*o),f=(a=e?t.ceil(a):t.max((0|a)-this._minBufferSize,0))*o,u=t.min(4*f,i);if(f){for(var c=0;c>>2]>>>24-o%4*8&255)<<16|(e[o+1>>>2]>>>24-(o+1)%4*8&255)<<8|e[o+2>>>2]>>>24-(o+2)%4*8&255,a=0;a<4&&o+.75*a>>6*(3-a)&63));var f=n.charAt(64);if(f)for(;i.length%4;)i.push(f);return i.join("")},parse:function(t){var e=t.length,r=this._map,n=this._reverseMap;if(!n){n=this._reverseMap=[];for(var i=0;i>>6-s%4*2;n[i>>>2]|=(a|f)<<24-i%4*8,i++}return o.create(n,i)}(t,e,n)},_map:"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/="},n.enc.Base64)},5503:function(t,e,r){var n;t.exports=(n=r(9021),function(){var t=n,e=t.lib.WordArray,r=t.enc;function i(t){return t<<8&4278255360|t>>>8&16711935}r.Utf16=r.Utf16BE={stringify:function(t){for(var e=t.words,r=t.sigBytes,n=[],i=0;i>>2]>>>16-i%4*8&65535;n.push(String.fromCharCode(o))}return n.join("")},parse:function(t){for(var r=t.length,n=[],i=0;i>>1]|=t.charCodeAt(i)<<16-i%2*16;return e.create(n,2*r)}},r.Utf16LE={stringify:function(t){for(var e=t.words,r=t.sigBytes,n=[],o=0;o>>2]>>>16-o%4*8&65535);n.push(String.fromCharCode(s))}return n.join("")},parse:function(t){for(var r=t.length,n=[],o=0;o>>1]|=i(t.charCodeAt(o)<<16-o%2*16);return e.create(n,2*r)}}}(),n.enc.Utf16)},9506:function(t,e,r){var n,i,o,s,a,f,u,c;t.exports=(c=r(9021),r(5471),r(1025),o=(i=(n=c).lib).Base,s=i.WordArray,f=(a=n.algo).MD5,u=a.EvpKDF=o.extend({cfg:o.extend({keySize:4,hasher:f,iterations:1}),init:function(t){this.cfg=this.cfg.extend(t)},compute:function(t,e){for(var r=this.cfg,n=r.hasher.create(),i=s.create(),o=i.words,a=r.keySize,f=r.iterations;o.lengthn&&(e=t.finalize(e)),e.clamp();for(var i=this._oKey=e.clone(),s=this._iKey=e.clone(),a=i.words,f=s.words,u=0;u>>2]|=t[i]<<24-i%4*8;e.call(this,n,r)}else e.apply(this,arguments)};r.prototype=t}}(),n.lib.WordArray)},4636:function(t,e,r){var n;t.exports=(n=r(9021),function(t){var e=n,r=e.lib,i=r.WordArray,o=r.Hasher,s=e.algo,a=[];!function(){for(var e=0;e<64;e++)a[e]=4294967296*t.abs(t.sin(e+1))|0}();var f=s.MD5=o.extend({_doReset:function(){this._hash=new i.init([1732584193,4023233417,2562383102,271733878])},_doProcessBlock:function(t,e){for(var r=0;r<16;r++){var n=e+r,i=t[n];t[n]=16711935&(i<<8|i>>>24)|4278255360&(i<<24|i>>>8)}var o=this._hash.words,s=t[e+0],f=t[e+1],l=t[e+2],y=t[e+3],g=t[e+4],d=t[e+5],v=t[e+6],m=t[e+7],S=t[e+8],_=t[e+9],b=t[e+10],E=t[e+11],w=t[e+12],O=t[e+13],B=t[e+14],A=t[e+15],x=o[0],P=o[1],T=o[2],I=o[3];x=u(x,P,T,I,s,7,a[0]),I=u(I,x,P,T,f,12,a[1]),T=u(T,I,x,P,l,17,a[2]),P=u(P,T,I,x,y,22,a[3]),x=u(x,P,T,I,g,7,a[4]),I=u(I,x,P,T,d,12,a[5]),T=u(T,I,x,P,v,17,a[6]),P=u(P,T,I,x,m,22,a[7]),x=u(x,P,T,I,S,7,a[8]),I=u(I,x,P,T,_,12,a[9]),T=u(T,I,x,P,b,17,a[10]),P=u(P,T,I,x,E,22,a[11]),x=u(x,P,T,I,w,7,a[12]),I=u(I,x,P,T,O,12,a[13]),T=u(T,I,x,P,B,17,a[14]),x=c(x,P=u(P,T,I,x,A,22,a[15]),T,I,f,5,a[16]),I=c(I,x,P,T,v,9,a[17]),T=c(T,I,x,P,E,14,a[18]),P=c(P,T,I,x,s,20,a[19]),x=c(x,P,T,I,d,5,a[20]),I=c(I,x,P,T,b,9,a[21]),T=c(T,I,x,P,A,14,a[22]),P=c(P,T,I,x,g,20,a[23]),x=c(x,P,T,I,_,5,a[24]),I=c(I,x,P,T,B,9,a[25]),T=c(T,I,x,P,y,14,a[26]),P=c(P,T,I,x,S,20,a[27]),x=c(x,P,T,I,O,5,a[28]),I=c(I,x,P,T,l,9,a[29]),T=c(T,I,x,P,m,14,a[30]),x=h(x,P=c(P,T,I,x,w,20,a[31]),T,I,d,4,a[32]),I=h(I,x,P,T,S,11,a[33]),T=h(T,I,x,P,E,16,a[34]),P=h(P,T,I,x,B,23,a[35]),x=h(x,P,T,I,f,4,a[36]),I=h(I,x,P,T,g,11,a[37]),T=h(T,I,x,P,m,16,a[38]),P=h(P,T,I,x,b,23,a[39]),x=h(x,P,T,I,O,4,a[40]),I=h(I,x,P,T,s,11,a[41]),T=h(T,I,x,P,y,16,a[42]),P=h(P,T,I,x,v,23,a[43]),x=h(x,P,T,I,_,4,a[44]),I=h(I,x,P,T,w,11,a[45]),T=h(T,I,x,P,A,16,a[46]),x=p(x,P=h(P,T,I,x,l,23,a[47]),T,I,s,6,a[48]),I=p(I,x,P,T,m,10,a[49]),T=p(T,I,x,P,B,15,a[50]),P=p(P,T,I,x,d,21,a[51]),x=p(x,P,T,I,w,6,a[52]),I=p(I,x,P,T,y,10,a[53]),T=p(T,I,x,P,b,15,a[54]),P=p(P,T,I,x,f,21,a[55]),x=p(x,P,T,I,S,6,a[56]),I=p(I,x,P,T,A,10,a[57]),T=p(T,I,x,P,v,15,a[58]),P=p(P,T,I,x,O,21,a[59]),x=p(x,P,T,I,g,6,a[60]),I=p(I,x,P,T,E,10,a[61]),T=p(T,I,x,P,l,15,a[62]),P=p(P,T,I,x,_,21,a[63]),o[0]=o[0]+x|0,o[1]=o[1]+P|0,o[2]=o[2]+T|0,o[3]=o[3]+I|0},_doFinalize:function(){var e=this._data,r=e.words,n=8*this._nDataBytes,i=8*e.sigBytes;r[i>>>5]|=128<<24-i%32;var o=t.floor(n/4294967296),s=n;r[15+(i+64>>>9<<4)]=16711935&(o<<8|o>>>24)|4278255360&(o<<24|o>>>8),r[14+(i+64>>>9<<4)]=16711935&(s<<8|s>>>24)|4278255360&(s<<24|s>>>8),e.sigBytes=4*(r.length+1),this._process();for(var a=this._hash,f=a.words,u=0;u<4;u++){var c=f[u];f[u]=16711935&(c<<8|c>>>24)|4278255360&(c<<24|c>>>8)}return a},clone:function(){var t=o.clone.call(this);return t._hash=this._hash.clone(),t}});function u(t,e,r,n,i,o,s){var a=t+(e&r|~e&n)+i+s;return(a<>>32-o)+e}function c(t,e,r,n,i,o,s){var a=t+(e&n|r&~n)+i+s;return(a<>>32-o)+e}function h(t,e,r,n,i,o,s){var a=t+(e^r^n)+i+s;return(a<>>32-o)+e}function p(t,e,r,n,i,o,s){var a=t+(r^(e|~n))+i+s;return(a<>>32-o)+e}e.MD5=o._createHelper(f),e.HmacMD5=o._createHmacHelper(f)}(Math),n.MD5)},2169:function(t,e,r){var n;t.exports=(n=r(9021),r(7165),n.mode.CFB=function(){var t=n.lib.BlockCipherMode.extend();function e(t,e,r,n){var i=this._iv;if(i){var o=i.slice(0);this._iv=void 0}else o=this._prevBlock;n.encryptBlock(o,0);for(var s=0;s>24))t+=1<<24;else{var e=t>>16&255,r=t>>8&255,n=255&t;255===e?(e=0,255===r?(r=0,255===n?n=0:++n):++r):++e,t=0,t+=e<<16,t+=r<<8,t+=n}return t}var r=t.Encryptor=t.extend({processBlock:function(t,r){var n=this._cipher,i=n.blockSize,o=this._iv,s=this._counter;o&&(s=this._counter=o.slice(0),this._iv=void 0),function(t){0===(t[0]=e(t[0]))&&(t[1]=e(t[1]))}(s);var a=s.slice(0);n.encryptBlock(a,0);for(var f=0;f>>2]|=i<<24-o%4*8,t.sigBytes+=i},unpad:function(t){var e=255&t.words[t.sigBytes-1>>>2];t.sigBytes-=e}},n.pad.Ansix923)},4905:function(t,e,r){var n;t.exports=(n=r(9021),r(7165),n.pad.Iso10126={pad:function(t,e){var r=4*e,i=r-t.sigBytes%r;t.concat(n.lib.WordArray.random(i-1)).concat(n.lib.WordArray.create([i<<24],1))},unpad:function(t){var e=255&t.words[t.sigBytes-1>>>2];t.sigBytes-=e}},n.pad.Iso10126)},482:function(t,e,r){var n;t.exports=(n=r(9021),r(7165),n.pad.Iso97971={pad:function(t,e){t.concat(n.lib.WordArray.create([2147483648],1)),n.pad.ZeroPadding.pad(t,e)},unpad:function(t){n.pad.ZeroPadding.unpad(t),t.sigBytes--}},n.pad.Iso97971)},8124:function(t,e,r){var n;t.exports=(n=r(9021),r(7165),n.pad.NoPadding={pad:function(){},unpad:function(){}},n.pad.NoPadding)},2155:function(t,e,r){var n;t.exports=(n=r(9021),r(7165),n.pad.ZeroPadding={pad:function(t,e){var r=4*e;t.clamp(),t.sigBytes+=r-(t.sigBytes%r||r)},unpad:function(t){for(var e=t.words,r=t.sigBytes-1;!(e[r>>>2]>>>24-r%4*8&255);)r--;t.sigBytes=r+1}},n.pad.ZeroPadding)},19:function(t,e,r){var n,i,o,s,a,f,u,c,h;t.exports=(h=r(9021),r(5471),r(1025),o=(i=(n=h).lib).Base,s=i.WordArray,f=(a=n.algo).SHA1,u=a.HMAC,c=a.PBKDF2=o.extend({cfg:o.extend({keySize:4,hasher:f,iterations:1}),init:function(t){this.cfg=this.cfg.extend(t)},compute:function(t,e){for(var r=this.cfg,n=u.create(r.hasher,t),i=s.create(),o=s.create([1]),a=i.words,f=o.words,c=r.keySize,h=r.iterations;a.length>>16,t[1],t[0]<<16|t[3]>>>16,t[2],t[1]<<16|t[0]>>>16,t[3],t[2]<<16|t[1]>>>16],n=this._C=[t[2]<<16|t[2]>>>16,4294901760&t[0]|65535&t[1],t[3]<<16|t[3]>>>16,4294901760&t[1]|65535&t[2],t[0]<<16|t[0]>>>16,4294901760&t[2]|65535&t[3],t[1]<<16|t[1]>>>16,4294901760&t[3]|65535&t[0]];this._b=0;for(var i=0;i<4;i++)f.call(this);for(i=0;i<8;i++)n[i]^=r[i+4&7];if(e){var o=e.words,s=o[0],a=o[1],u=16711935&(s<<8|s>>>24)|4278255360&(s<<24|s>>>8),c=16711935&(a<<8|a>>>24)|4278255360&(a<<24|a>>>8),h=u>>>16|4294901760&c,p=c<<16|65535&u;for(n[0]^=u,n[1]^=h,n[2]^=c,n[3]^=p,n[4]^=u,n[5]^=h,n[6]^=c,n[7]^=p,i=0;i<4;i++)f.call(this)}},_doProcessBlock:function(t,e){var r=this._X;f.call(this),i[0]=r[0]^r[5]>>>16^r[3]<<16,i[1]=r[2]^r[7]>>>16^r[5]<<16,i[2]=r[4]^r[1]>>>16^r[7]<<16,i[3]=r[6]^r[3]>>>16^r[1]<<16;for(var n=0;n<4;n++)i[n]=16711935&(i[n]<<8|i[n]>>>24)|4278255360&(i[n]<<24|i[n]>>>8),t[e+n]^=i[n]},blockSize:4,ivSize:2});function f(){for(var t=this._X,e=this._C,r=0;r<8;r++)o[r]=e[r];for(e[0]=e[0]+1295307597+this._b|0,e[1]=e[1]+3545052371+(e[0]>>>0>>0?1:0)|0,e[2]=e[2]+886263092+(e[1]>>>0>>0?1:0)|0,e[3]=e[3]+1295307597+(e[2]>>>0>>0?1:0)|0,e[4]=e[4]+3545052371+(e[3]>>>0>>0?1:0)|0,e[5]=e[5]+886263092+(e[4]>>>0>>0?1:0)|0,e[6]=e[6]+1295307597+(e[5]>>>0>>0?1:0)|0,e[7]=e[7]+3545052371+(e[6]>>>0>>0?1:0)|0,this._b=e[7]>>>0>>0?1:0,r=0;r<8;r++){var n=t[r]+e[r],i=65535&n,a=n>>>16,f=((i*i>>>17)+i*a>>>15)+a*a,u=((4294901760&n)*n|0)+((65535&n)*n|0);s[r]=f^u}t[0]=s[0]+(s[7]<<16|s[7]>>>16)+(s[6]<<16|s[6]>>>16)|0,t[1]=s[1]+(s[0]<<8|s[0]>>>24)+s[7]|0,t[2]=s[2]+(s[1]<<16|s[1]>>>16)+(s[0]<<16|s[0]>>>16)|0,t[3]=s[3]+(s[2]<<8|s[2]>>>24)+s[1]|0,t[4]=s[4]+(s[3]<<16|s[3]>>>16)+(s[2]<<16|s[2]>>>16)|0,t[5]=s[5]+(s[4]<<8|s[4]>>>24)+s[3]|0,t[6]=s[6]+(s[5]<<16|s[5]>>>16)+(s[4]<<16|s[4]>>>16)|0,t[7]=s[7]+(s[6]<<8|s[6]>>>24)+s[5]|0}t.RabbitLegacy=e._createHelper(a)}(),n.RabbitLegacy)},6298:function(t,e,r){var n;t.exports=(n=r(9021),r(754),r(4636),r(9506),r(7165),function(){var t=n,e=t.lib.StreamCipher,r=t.algo,i=[],o=[],s=[],a=r.Rabbit=e.extend({_doReset:function(){for(var t=this._key.words,e=this.cfg.iv,r=0;r<4;r++)t[r]=16711935&(t[r]<<8|t[r]>>>24)|4278255360&(t[r]<<24|t[r]>>>8);var n=this._X=[t[0],t[3]<<16|t[2]>>>16,t[1],t[0]<<16|t[3]>>>16,t[2],t[1]<<16|t[0]>>>16,t[3],t[2]<<16|t[1]>>>16],i=this._C=[t[2]<<16|t[2]>>>16,4294901760&t[0]|65535&t[1],t[3]<<16|t[3]>>>16,4294901760&t[1]|65535&t[2],t[0]<<16|t[0]>>>16,4294901760&t[2]|65535&t[3],t[1]<<16|t[1]>>>16,4294901760&t[3]|65535&t[0]];for(this._b=0,r=0;r<4;r++)f.call(this);for(r=0;r<8;r++)i[r]^=n[r+4&7];if(e){var o=e.words,s=o[0],a=o[1],u=16711935&(s<<8|s>>>24)|4278255360&(s<<24|s>>>8),c=16711935&(a<<8|a>>>24)|4278255360&(a<<24|a>>>8),h=u>>>16|4294901760&c,p=c<<16|65535&u;for(i[0]^=u,i[1]^=h,i[2]^=c,i[3]^=p,i[4]^=u,i[5]^=h,i[6]^=c,i[7]^=p,r=0;r<4;r++)f.call(this)}},_doProcessBlock:function(t,e){var r=this._X;f.call(this),i[0]=r[0]^r[5]>>>16^r[3]<<16,i[1]=r[2]^r[7]>>>16^r[5]<<16,i[2]=r[4]^r[1]>>>16^r[7]<<16,i[3]=r[6]^r[3]>>>16^r[1]<<16;for(var n=0;n<4;n++)i[n]=16711935&(i[n]<<8|i[n]>>>24)|4278255360&(i[n]<<24|i[n]>>>8),t[e+n]^=i[n]},blockSize:4,ivSize:2});function f(){for(var t=this._X,e=this._C,r=0;r<8;r++)o[r]=e[r];for(e[0]=e[0]+1295307597+this._b|0,e[1]=e[1]+3545052371+(e[0]>>>0>>0?1:0)|0,e[2]=e[2]+886263092+(e[1]>>>0>>0?1:0)|0,e[3]=e[3]+1295307597+(e[2]>>>0>>0?1:0)|0,e[4]=e[4]+3545052371+(e[3]>>>0>>0?1:0)|0,e[5]=e[5]+886263092+(e[4]>>>0>>0?1:0)|0,e[6]=e[6]+1295307597+(e[5]>>>0>>0?1:0)|0,e[7]=e[7]+3545052371+(e[6]>>>0>>0?1:0)|0,this._b=e[7]>>>0>>0?1:0,r=0;r<8;r++){var n=t[r]+e[r],i=65535&n,a=n>>>16,f=((i*i>>>17)+i*a>>>15)+a*a,u=((4294901760&n)*n|0)+((65535&n)*n|0);s[r]=f^u}t[0]=s[0]+(s[7]<<16|s[7]>>>16)+(s[6]<<16|s[6]>>>16)|0,t[1]=s[1]+(s[0]<<8|s[0]>>>24)+s[7]|0,t[2]=s[2]+(s[1]<<16|s[1]>>>16)+(s[0]<<16|s[0]>>>16)|0,t[3]=s[3]+(s[2]<<8|s[2]>>>24)+s[1]|0,t[4]=s[4]+(s[3]<<16|s[3]>>>16)+(s[2]<<16|s[2]>>>16)|0,t[5]=s[5]+(s[4]<<8|s[4]>>>24)+s[3]|0,t[6]=s[6]+(s[5]<<16|s[5]>>>16)+(s[4]<<16|s[4]>>>16)|0,t[7]=s[7]+(s[6]<<8|s[6]>>>24)+s[5]|0}t.Rabbit=e._createHelper(a)}(),n.Rabbit)},7193:function(t,e,r){var n;t.exports=(n=r(9021),r(754),r(4636),r(9506),r(7165),function(){var t=n,e=t.lib.StreamCipher,r=t.algo,i=r.RC4=e.extend({_doReset:function(){for(var t=this._key,e=t.words,r=t.sigBytes,n=this._S=[],i=0;i<256;i++)n[i]=i;i=0;for(var o=0;i<256;i++){var s=i%r,a=e[s>>>2]>>>24-s%4*8&255;o=(o+n[i]+a)%256;var f=n[i];n[i]=n[o],n[o]=f}this._i=this._j=0},_doProcessBlock:function(t,e){t[e]^=o.call(this)},keySize:8,ivSize:0});function o(){for(var t=this._S,e=this._i,r=this._j,n=0,i=0;i<4;i++){r=(r+t[e=(e+1)%256])%256;var o=t[e];t[e]=t[r],t[r]=o,n|=t[(t[e]+t[r])%256]<<24-8*i}return this._i=e,this._j=r,n}t.RC4=e._createHelper(i);var s=r.RC4Drop=i.extend({cfg:i.cfg.extend({drop:192}),_doReset:function(){i._doReset.call(this);for(var t=this.cfg.drop;t>0;t--)o.call(this)}});t.RC4Drop=e._createHelper(s)}(),n.RC4)},8056:function(t,e,r){var n;t.exports=(n=r(9021),function(t){var e=n,r=e.lib,i=r.WordArray,o=r.Hasher,s=e.algo,a=i.create([0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,7,4,13,1,10,6,15,3,12,0,9,5,2,14,11,8,3,10,14,4,9,15,8,1,2,7,0,6,13,11,5,12,1,9,11,10,0,8,12,4,13,3,7,15,14,5,6,2,4,0,5,9,7,12,2,10,14,1,3,8,11,6,15,13]),f=i.create([5,14,7,0,9,2,11,4,13,6,15,8,1,10,3,12,6,11,3,7,0,13,5,10,14,15,8,12,4,9,1,2,15,5,1,3,7,14,6,9,11,8,12,2,10,0,4,13,8,6,4,1,3,11,15,0,5,12,2,13,9,7,10,14,12,15,10,4,1,5,8,7,6,2,13,14,0,3,9,11]),u=i.create([11,14,15,12,5,8,7,9,11,13,14,15,6,7,9,8,7,6,8,13,11,9,7,15,7,12,15,9,11,7,13,12,11,13,6,7,14,9,13,15,14,8,13,6,5,12,7,5,11,12,14,15,14,15,9,8,9,14,5,6,8,6,5,12,9,15,5,11,6,8,13,12,5,12,13,14,11,8,5,6]),c=i.create([8,9,9,11,13,15,15,5,7,7,8,11,14,14,12,6,9,13,15,7,12,8,9,11,7,7,12,7,6,15,13,11,9,7,15,11,8,6,6,14,12,13,5,14,13,13,7,5,15,5,8,11,14,14,6,14,6,9,12,9,12,5,15,8,8,5,12,9,12,5,14,6,8,13,6,5,15,13,11,11]),h=i.create([0,1518500249,1859775393,2400959708,2840853838]),p=i.create([1352829926,1548603684,1836072691,2053994217,0]),l=s.RIPEMD160=o.extend({_doReset:function(){this._hash=i.create([1732584193,4023233417,2562383102,271733878,3285377520])},_doProcessBlock:function(t,e){for(var r=0;r<16;r++){var n=e+r,i=t[n];t[n]=16711935&(i<<8|i>>>24)|4278255360&(i<<24|i>>>8)}var o,s,l,_,b,E,w,O,B,A,x,P=this._hash.words,T=h.words,I=p.words,k=a.words,D=f.words,R=u.words,N=c.words;for(E=o=P[0],w=s=P[1],O=l=P[2],B=_=P[3],A=b=P[4],r=0;r<80;r+=1)x=o+t[e+k[r]]|0,x+=r<16?y(s,l,_)+T[0]:r<32?g(s,l,_)+T[1]:r<48?d(s,l,_)+T[2]:r<64?v(s,l,_)+T[3]:m(s,l,_)+T[4],x=(x=S(x|=0,R[r]))+b|0,o=b,b=_,_=S(l,10),l=s,s=x,x=E+t[e+D[r]]|0,x+=r<16?m(w,O,B)+I[0]:r<32?v(w,O,B)+I[1]:r<48?d(w,O,B)+I[2]:r<64?g(w,O,B)+I[3]:y(w,O,B)+I[4],x=(x=S(x|=0,N[r]))+A|0,E=A,A=B,B=S(O,10),O=w,w=x;x=P[1]+l+B|0,P[1]=P[2]+_+A|0,P[2]=P[3]+b+E|0,P[3]=P[4]+o+w|0,P[4]=P[0]+s+O|0,P[0]=x},_doFinalize:function(){var t=this._data,e=t.words,r=8*this._nDataBytes,n=8*t.sigBytes;e[n>>>5]|=128<<24-n%32,e[14+(n+64>>>9<<4)]=16711935&(r<<8|r>>>24)|4278255360&(r<<24|r>>>8),t.sigBytes=4*(e.length+1),this._process();for(var i=this._hash,o=i.words,s=0;s<5;s++){var a=o[s];o[s]=16711935&(a<<8|a>>>24)|4278255360&(a<<24|a>>>8)}return i},clone:function(){var t=o.clone.call(this);return t._hash=this._hash.clone(),t}});function y(t,e,r){return t^e^r}function g(t,e,r){return t&e|~t&r}function d(t,e,r){return(t|~e)^r}function v(t,e,r){return t&r|e&~r}function m(t,e,r){return t^(e|~r)}function S(t,e){return t<>>32-e}e.RIPEMD160=o._createHelper(l),e.HmacRIPEMD160=o._createHmacHelper(l)}(Math),n.RIPEMD160)},5471:function(t,e,r){var n,i,o,s,a,f,u,c;t.exports=(i=(n=c=r(9021)).lib,o=i.WordArray,s=i.Hasher,a=n.algo,f=[],u=a.SHA1=s.extend({_doReset:function(){this._hash=new o.init([1732584193,4023233417,2562383102,271733878,3285377520])},_doProcessBlock:function(t,e){for(var r=this._hash.words,n=r[0],i=r[1],o=r[2],s=r[3],a=r[4],u=0;u<80;u++){if(u<16)f[u]=0|t[e+u];else{var c=f[u-3]^f[u-8]^f[u-14]^f[u-16];f[u]=c<<1|c>>>31}var h=(n<<5|n>>>27)+a+f[u];h+=u<20?1518500249+(i&o|~i&s):u<40?1859775393+(i^o^s):u<60?(i&o|i&s|o&s)-1894007588:(i^o^s)-899497514,a=s,s=o,o=i<<30|i>>>2,i=n,n=h}r[0]=r[0]+n|0,r[1]=r[1]+i|0,r[2]=r[2]+o|0,r[3]=r[3]+s|0,r[4]=r[4]+a|0},_doFinalize:function(){var t=this._data,e=t.words,r=8*this._nDataBytes,n=8*t.sigBytes;return e[n>>>5]|=128<<24-n%32,e[14+(n+64>>>9<<4)]=Math.floor(r/4294967296),e[15+(n+64>>>9<<4)]=r,t.sigBytes=4*e.length,this._process(),this._hash},clone:function(){var t=s.clone.call(this);return t._hash=this._hash.clone(),t}}),n.SHA1=s._createHelper(u),n.HmacSHA1=s._createHmacHelper(u),c.SHA1)},6308:function(t,e,r){var n,i,o,s,a,f;t.exports=(f=r(9021),r(3009),i=(n=f).lib.WordArray,o=n.algo,s=o.SHA256,a=o.SHA224=s.extend({_doReset:function(){this._hash=new i.init([3238371032,914150663,812702999,4144912697,4290775857,1750603025,1694076839,3204075428])},_doFinalize:function(){var t=s._doFinalize.call(this);return t.sigBytes-=4,t}}),n.SHA224=s._createHelper(a),n.HmacSHA224=s._createHmacHelper(a),f.SHA224)},3009:function(t,e,r){var n;t.exports=(n=r(9021),function(t){var e=n,r=e.lib,i=r.WordArray,o=r.Hasher,s=e.algo,a=[],f=[];!function(){function e(e){for(var r=t.sqrt(e),n=2;n<=r;n++)if(!(e%n))return!1;return!0}function r(t){return 4294967296*(t-(0|t))|0}for(var n=2,i=0;i<64;)e(n)&&(i<8&&(a[i]=r(t.pow(n,.5))),f[i]=r(t.pow(n,1/3)),i++),n++}();var u=[],c=s.SHA256=o.extend({_doReset:function(){this._hash=new i.init(a.slice(0))},_doProcessBlock:function(t,e){for(var r=this._hash.words,n=r[0],i=r[1],o=r[2],s=r[3],a=r[4],c=r[5],h=r[6],p=r[7],l=0;l<64;l++){if(l<16)u[l]=0|t[e+l];else{var y=u[l-15],g=(y<<25|y>>>7)^(y<<14|y>>>18)^y>>>3,d=u[l-2],v=(d<<15|d>>>17)^(d<<13|d>>>19)^d>>>10;u[l]=g+u[l-7]+v+u[l-16]}var m=n&i^n&o^i&o,S=(n<<30|n>>>2)^(n<<19|n>>>13)^(n<<10|n>>>22),_=p+((a<<26|a>>>6)^(a<<21|a>>>11)^(a<<7|a>>>25))+(a&c^~a&h)+f[l]+u[l];p=h,h=c,c=a,a=s+_|0,s=o,o=i,i=n,n=_+(S+m)|0}r[0]=r[0]+n|0,r[1]=r[1]+i|0,r[2]=r[2]+o|0,r[3]=r[3]+s|0,r[4]=r[4]+a|0,r[5]=r[5]+c|0,r[6]=r[6]+h|0,r[7]=r[7]+p|0},_doFinalize:function(){var e=this._data,r=e.words,n=8*this._nDataBytes,i=8*e.sigBytes;return r[i>>>5]|=128<<24-i%32,r[14+(i+64>>>9<<4)]=t.floor(n/4294967296),r[15+(i+64>>>9<<4)]=n,e.sigBytes=4*r.length,this._process(),this._hash},clone:function(){var t=o.clone.call(this);return t._hash=this._hash.clone(),t}});e.SHA256=o._createHelper(c),e.HmacSHA256=o._createHmacHelper(c)}(Math),n.SHA256)},5953:function(t,e,r){var n;t.exports=(n=r(9021),r(3240),function(t){var e=n,r=e.lib,i=r.WordArray,o=r.Hasher,s=e.x64.Word,a=e.algo,f=[],u=[],c=[];!function(){for(var t=1,e=0,r=0;r<24;r++){f[t+5*e]=(r+1)*(r+2)/2%64;var n=(2*t+3*e)%5;t=e%5,e=n}for(t=0;t<5;t++)for(e=0;e<5;e++)u[t+5*e]=e+(2*t+3*e)%5*5;for(var i=1,o=0;o<24;o++){for(var a=0,h=0,p=0;p<7;p++){if(1&i){var l=(1<>>24)|4278255360&(o<<24|o>>>8),s=16711935&(s<<8|s>>>24)|4278255360&(s<<24|s>>>8),(P=r[i]).high^=s,P.low^=o}for(var a=0;a<24;a++){for(var p=0;p<5;p++){for(var l=0,y=0,g=0;g<5;g++)l^=(P=r[p+5*g]).high,y^=P.low;var d=h[p];d.high=l,d.low=y}for(p=0;p<5;p++){var v=h[(p+4)%5],m=h[(p+1)%5],S=m.high,_=m.low;for(l=v.high^(S<<1|_>>>31),y=v.low^(_<<1|S>>>31),g=0;g<5;g++)(P=r[p+5*g]).high^=l,P.low^=y}for(var b=1;b<25;b++){var E=(P=r[b]).high,w=P.low,O=f[b];O<32?(l=E<>>32-O,y=w<>>32-O):(l=w<>>64-O,y=E<>>64-O);var B=h[u[b]];B.high=l,B.low=y}var A=h[0],x=r[0];for(A.high=x.high,A.low=x.low,p=0;p<5;p++)for(g=0;g<5;g++){var P=r[b=p+5*g],T=h[b],I=h[(p+1)%5+5*g],k=h[(p+2)%5+5*g];P.high=T.high^~I.high&k.high,P.low=T.low^~I.low&k.low}P=r[0];var D=c[a];P.high^=D.high,P.low^=D.low}},_doFinalize:function(){var e=this._data,r=e.words,n=(this._nDataBytes,8*e.sigBytes),o=32*this.blockSize;r[n>>>5]|=1<<24-n%32,r[(t.ceil((n+1)/o)*o>>>5)-1]|=128,e.sigBytes=4*r.length,this._process();for(var s=this._state,a=this.cfg.outputLength/8,f=a/8,u=[],c=0;c>>24)|4278255360&(p<<24|p>>>8),l=16711935&(l<<8|l>>>24)|4278255360&(l<<24|l>>>8),u.push(l),u.push(p)}return new i.init(u,a)},clone:function(){for(var t=o.clone.call(this),e=t._state=this._state.slice(0),r=0;r<25;r++)e[r]=e[r].clone();return t}});e.SHA3=o._createHelper(p),e.HmacSHA3=o._createHmacHelper(p)}(Math),n.SHA3)},9557:function(t,e,r){var n,i,o,s,a,f,u,c;t.exports=(c=r(9021),r(3240),r(1380),i=(n=c).x64,o=i.Word,s=i.WordArray,a=n.algo,f=a.SHA512,u=a.SHA384=f.extend({_doReset:function(){this._hash=new s.init([new o.init(3418070365,3238371032),new o.init(1654270250,914150663),new o.init(2438529370,812702999),new o.init(355462360,4144912697),new o.init(1731405415,4290775857),new o.init(2394180231,1750603025),new o.init(3675008525,1694076839),new o.init(1203062813,3204075428)])},_doFinalize:function(){var t=f._doFinalize.call(this);return t.sigBytes-=16,t}}),n.SHA384=f._createHelper(u),n.HmacSHA384=f._createHmacHelper(u),c.SHA384)},1380:function(t,e,r){var n;t.exports=(n=r(9021),r(3240),function(){var t=n,e=t.lib.Hasher,r=t.x64,i=r.Word,o=r.WordArray,s=t.algo;function a(){return i.create.apply(i,arguments)}var f=[a(1116352408,3609767458),a(1899447441,602891725),a(3049323471,3964484399),a(3921009573,2173295548),a(961987163,4081628472),a(1508970993,3053834265),a(2453635748,2937671579),a(2870763221,3664609560),a(3624381080,2734883394),a(310598401,1164996542),a(607225278,1323610764),a(1426881987,3590304994),a(1925078388,4068182383),a(2162078206,991336113),a(2614888103,633803317),a(3248222580,3479774868),a(3835390401,2666613458),a(4022224774,944711139),a(264347078,2341262773),a(604807628,2007800933),a(770255983,1495990901),a(1249150122,1856431235),a(1555081692,3175218132),a(1996064986,2198950837),a(2554220882,3999719339),a(2821834349,766784016),a(2952996808,2566594879),a(3210313671,3203337956),a(3336571891,1034457026),a(3584528711,2466948901),a(113926993,3758326383),a(338241895,168717936),a(666307205,1188179964),a(773529912,1546045734),a(1294757372,1522805485),a(1396182291,2643833823),a(1695183700,2343527390),a(1986661051,1014477480),a(2177026350,1206759142),a(2456956037,344077627),a(2730485921,1290863460),a(2820302411,3158454273),a(3259730800,3505952657),a(3345764771,106217008),a(3516065817,3606008344),a(3600352804,1432725776),a(4094571909,1467031594),a(275423344,851169720),a(430227734,3100823752),a(506948616,1363258195),a(659060556,3750685593),a(883997877,3785050280),a(958139571,3318307427),a(1322822218,3812723403),a(1537002063,2003034995),a(1747873779,3602036899),a(1955562222,1575990012),a(2024104815,1125592928),a(2227730452,2716904306),a(2361852424,442776044),a(2428436474,593698344),a(2756734187,3733110249),a(3204031479,2999351573),a(3329325298,3815920427),a(3391569614,3928383900),a(3515267271,566280711),a(3940187606,3454069534),a(4118630271,4000239992),a(116418474,1914138554),a(174292421,2731055270),a(289380356,3203993006),a(460393269,320620315),a(685471733,587496836),a(852142971,1086792851),a(1017036298,365543100),a(1126000580,2618297676),a(1288033470,3409855158),a(1501505948,4234509866),a(1607167915,987167468),a(1816402316,1246189591)],u=[];!function(){for(var t=0;t<80;t++)u[t]=a()}();var c=s.SHA512=e.extend({_doReset:function(){this._hash=new o.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(t,e){for(var r=this._hash.words,n=r[0],i=r[1],o=r[2],s=r[3],a=r[4],c=r[5],h=r[6],p=r[7],l=n.high,y=n.low,g=i.high,d=i.low,v=o.high,m=o.low,S=s.high,_=s.low,b=a.high,E=a.low,w=c.high,O=c.low,B=h.high,A=h.low,x=p.high,P=p.low,T=l,I=y,k=g,D=d,R=v,N=m,L=S,C=_,U=b,M=E,j=w,H=O,F=B,z=A,G=x,q=P,$=0;$<80;$++){var K=u[$];if($<16)var W=K.high=0|t[e+2*$],V=K.low=0|t[e+2*$+1];else{var Y=u[$-15],X=Y.high,Z=Y.low,J=(X>>>1|Z<<31)^(X>>>8|Z<<24)^X>>>7,Q=(Z>>>1|X<<31)^(Z>>>8|X<<24)^(Z>>>7|X<<25),tt=u[$-2],et=tt.high,rt=tt.low,nt=(et>>>19|rt<<13)^(et<<3|rt>>>29)^et>>>6,it=(rt>>>19|et<<13)^(rt<<3|et>>>29)^(rt>>>6|et<<26),ot=u[$-7],st=ot.high,at=ot.low,ft=u[$-16],ut=ft.high,ct=ft.low;W=(W=(W=J+st+((V=Q+at)>>>0>>0?1:0))+nt+((V+=it)>>>0>>0?1:0))+ut+((V+=ct)>>>0>>0?1:0),K.high=W,K.low=V}var ht,pt=U&j^~U&F,lt=M&H^~M&z,yt=T&k^T&R^k&R,gt=I&D^I&N^D&N,dt=(T>>>28|I<<4)^(T<<30|I>>>2)^(T<<25|I>>>7),vt=(I>>>28|T<<4)^(I<<30|T>>>2)^(I<<25|T>>>7),mt=(U>>>14|M<<18)^(U>>>18|M<<14)^(U<<23|M>>>9),St=(M>>>14|U<<18)^(M>>>18|U<<14)^(M<<23|U>>>9),_t=f[$],bt=_t.high,Et=_t.low,wt=G+mt+((ht=q+St)>>>0>>0?1:0),Ot=vt+gt;G=F,q=z,F=j,z=H,j=U,H=M,U=L+(wt=(wt=(wt=wt+pt+((ht+=lt)>>>0>>0?1:0))+bt+((ht+=Et)>>>0>>0?1:0))+W+((ht+=V)>>>0>>0?1:0))+((M=C+ht|0)>>>0>>0?1:0)|0,L=R,C=N,R=k,N=D,k=T,D=I,T=wt+(dt+yt+(Ot>>>0>>0?1:0))+((I=ht+Ot|0)>>>0>>0?1:0)|0}y=n.low=y+I,n.high=l+T+(y>>>0>>0?1:0),d=i.low=d+D,i.high=g+k+(d>>>0>>0?1:0),m=o.low=m+N,o.high=v+R+(m>>>0>>0?1:0),_=s.low=_+C,s.high=S+L+(_>>>0>>0?1:0),E=a.low=E+M,a.high=b+U+(E>>>0>>0?1:0),O=c.low=O+H,c.high=w+j+(O>>>0>>0?1:0),A=h.low=A+z,h.high=B+F+(A>>>0>>0?1:0),P=p.low=P+q,p.high=x+G+(P>>>0>>0?1:0)},_doFinalize:function(){var t=this._data,e=t.words,r=8*this._nDataBytes,n=8*t.sigBytes;return e[n>>>5]|=128<<24-n%32,e[30+(n+128>>>10<<5)]=Math.floor(r/4294967296),e[31+(n+128>>>10<<5)]=r,t.sigBytes=4*e.length,this._process(),this._hash.toX32()},clone:function(){var t=e.clone.call(this);return t._hash=this._hash.clone(),t},blockSize:32});t.SHA512=e._createHelper(c),t.HmacSHA512=e._createHmacHelper(c)}(),n.SHA512)},7628:function(t,e,r){var n;t.exports=(n=r(9021),r(754),r(4636),r(9506),r(7165),function(){var t=n,e=t.lib,r=e.WordArray,i=e.BlockCipher,o=t.algo,s=[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],a=[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],f=[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}],c=[4160749569,528482304,33030144,2064384,129024,8064,504,2147483679],h=o.DES=i.extend({_doReset:function(){for(var t=this._key.words,e=[],r=0;r<56;r++){var n=s[r]-1;e[r]=t[n>>>5]>>>31-n%32&1}for(var i=this._subKeys=[],o=0;o<16;o++){var u=i[o]=[],c=f[o];for(r=0;r<24;r++)u[r/6|0]|=e[(a[r]-1+c)%28]<<31-r%6,u[4+(r/6|0)]|=e[28+(a[r+24]-1+c)%28]<<31-r%6;for(u[0]=u[0]<<1|u[0]>>>31,r=1;r<7;r++)u[r]=u[r]>>>4*(r-1)+3;u[7]=u[7]<<5|u[7]>>>27}var h=this._invSubKeys=[];for(r=0;r<16;r++)h[r]=i[15-r]},encryptBlock:function(t,e){this._doCryptBlock(t,e,this._subKeys)},decryptBlock:function(t,e){this._doCryptBlock(t,e,this._invSubKeys)},_doCryptBlock:function(t,e,r){this._lBlock=t[e],this._rBlock=t[e+1],p.call(this,4,252645135),p.call(this,16,65535),l.call(this,2,858993459),l.call(this,8,16711935),p.call(this,1,1431655765);for(var n=0;n<16;n++){for(var i=r[n],o=this._lBlock,s=this._rBlock,a=0,f=0;f<8;f++)a|=u[f][((s^i[f])&c[f])>>>0];this._lBlock=s,this._rBlock=o^a}var h=this._lBlock;this._lBlock=this._rBlock,this._rBlock=h,p.call(this,1,1431655765),l.call(this,8,16711935),l.call(this,2,858993459),p.call(this,16,65535),p.call(this,4,252645135),t[e]=this._lBlock,t[e+1]=this._rBlock},keySize:2,ivSize:2,blockSize:2});function p(t,e){var r=(this._lBlock>>>t^this._rBlock)&e;this._rBlock^=r,this._lBlock^=r<>>t^this._lBlock)&e;this._lBlock^=r,this._rBlock^=r<{"use strict";var n=r(655),i=r(8068),o=r(9675),s=r(5795);t.exports=function(t,e,r){if(!t||"object"!=typeof t&&"function"!=typeof t)throw new o("`obj` must be an object or a function`");if("string"!=typeof e&&"symbol"!=typeof e)throw new o("`property` must be a string or a symbol`");if(arguments.length>3&&"boolean"!=typeof arguments[3]&&null!==arguments[3])throw new o("`nonEnumerable`, if provided, must be a boolean or null");if(arguments.length>4&&"boolean"!=typeof arguments[4]&&null!==arguments[4])throw new o("`nonWritable`, if provided, must be a boolean or null");if(arguments.length>5&&"boolean"!=typeof arguments[5]&&null!==arguments[5])throw new o("`nonConfigurable`, if provided, must be a boolean or null");if(arguments.length>6&&"boolean"!=typeof arguments[6])throw new o("`loose`, if provided, must be a boolean");var a=arguments.length>3?arguments[3]:null,f=arguments.length>4?arguments[4]:null,u=arguments.length>5?arguments[5]:null,c=arguments.length>6&&arguments[6],h=!!s&&s(t,e);if(n)n(t,e,{configurable:null===u&&h?h.configurable:!u,enumerable:null===a&&h?h.enumerable:!a,value:r,writable:null===f&&h?h.writable:!f});else{if(!c&&(a||f||u))throw new i("This environment does not support defining a property as non-configurable, non-writable, or non-enumerable.");t[e]=r}}},655:(t,e,r)=>{"use strict";var n=r(453)("%Object.defineProperty%",!0)||!1;if(n)try{n({},"a",{value:1})}catch(t){n=!1}t.exports=n},1237:t=>{"use strict";t.exports=EvalError},9383:t=>{"use strict";t.exports=Error},9290:t=>{"use strict";t.exports=RangeError},9538:t=>{"use strict";t.exports=ReferenceError},8068:t=>{"use strict";t.exports=SyntaxError},9675:t=>{"use strict";t.exports=TypeError},5345:t=>{"use strict";t.exports=URIError},9353:t=>{"use strict";var e=Object.prototype.toString,r=Math.max,n=function(t,e){for(var r=[],n=0;n{"use strict";var n=r(9353);t.exports=Function.prototype.bind||n},453:(t,e,r)=>{"use strict";var n,i=r(9383),o=r(1237),s=r(9290),a=r(9538),f=r(8068),u=r(9675),c=r(5345),h=Function,p=function(t){try{return h(\'"use strict"; return (\'+t+").constructor;")()}catch(t){}},l=Object.getOwnPropertyDescriptor;if(l)try{l({},"")}catch(t){l=null}var y=function(){throw new u},g=l?function(){try{return y}catch(t){try{return l(arguments,"callee").get}catch(t){return y}}}():y,d=r(4039)(),v=r(24)(),m=Object.getPrototypeOf||(v?function(t){return t.__proto__}:null),S={},_="undefined"!=typeof Uint8Array&&m?m(Uint8Array):n,b={__proto__:null,"%AggregateError%":"undefined"==typeof AggregateError?n:AggregateError,"%Array%":Array,"%ArrayBuffer%":"undefined"==typeof ArrayBuffer?n:ArrayBuffer,"%ArrayIteratorPrototype%":d&&m?m([][Symbol.iterator]()):n,"%AsyncFromSyncIteratorPrototype%":n,"%AsyncFunction%":S,"%AsyncGenerator%":S,"%AsyncGeneratorFunction%":S,"%AsyncIteratorPrototype%":S,"%Atomics%":"undefined"==typeof Atomics?n:Atomics,"%BigInt%":"undefined"==typeof BigInt?n:BigInt,"%BigInt64Array%":"undefined"==typeof BigInt64Array?n:BigInt64Array,"%BigUint64Array%":"undefined"==typeof BigUint64Array?n:BigUint64Array,"%Boolean%":Boolean,"%DataView%":"undefined"==typeof DataView?n:DataView,"%Date%":Date,"%decodeURI%":decodeURI,"%decodeURIComponent%":decodeURIComponent,"%encodeURI%":encodeURI,"%encodeURIComponent%":encodeURIComponent,"%Error%":i,"%eval%":eval,"%EvalError%":o,"%Float32Array%":"undefined"==typeof Float32Array?n:Float32Array,"%Float64Array%":"undefined"==typeof Float64Array?n:Float64Array,"%FinalizationRegistry%":"undefined"==typeof FinalizationRegistry?n:FinalizationRegistry,"%Function%":h,"%GeneratorFunction%":S,"%Int8Array%":"undefined"==typeof Int8Array?n:Int8Array,"%Int16Array%":"undefined"==typeof Int16Array?n:Int16Array,"%Int32Array%":"undefined"==typeof Int32Array?n:Int32Array,"%isFinite%":isFinite,"%isNaN%":isNaN,"%IteratorPrototype%":d&&m?m(m([][Symbol.iterator]())):n,"%JSON%":"object"==typeof JSON?JSON:n,"%Map%":"undefined"==typeof Map?n:Map,"%MapIteratorPrototype%":"undefined"!=typeof Map&&d&&m?m((new Map)[Symbol.iterator]()):n,"%Math%":Math,"%Number%":Number,"%Object%":Object,"%parseFloat%":parseFloat,"%parseInt%":parseInt,"%Promise%":"undefined"==typeof Promise?n:Promise,"%Proxy%":"undefined"==typeof Proxy?n:Proxy,"%RangeError%":s,"%ReferenceError%":a,"%Reflect%":"undefined"==typeof Reflect?n:Reflect,"%RegExp%":RegExp,"%Set%":"undefined"==typeof Set?n:Set,"%SetIteratorPrototype%":"undefined"!=typeof Set&&d&&m?m((new Set)[Symbol.iterator]()):n,"%SharedArrayBuffer%":"undefined"==typeof SharedArrayBuffer?n:SharedArrayBuffer,"%String%":String,"%StringIteratorPrototype%":d&&m?m(""[Symbol.iterator]()):n,"%Symbol%":d?Symbol:n,"%SyntaxError%":f,"%ThrowTypeError%":g,"%TypedArray%":_,"%TypeError%":u,"%Uint8Array%":"undefined"==typeof Uint8Array?n:Uint8Array,"%Uint8ClampedArray%":"undefined"==typeof Uint8ClampedArray?n:Uint8ClampedArray,"%Uint16Array%":"undefined"==typeof Uint16Array?n:Uint16Array,"%Uint32Array%":"undefined"==typeof Uint32Array?n:Uint32Array,"%URIError%":c,"%WeakMap%":"undefined"==typeof WeakMap?n:WeakMap,"%WeakRef%":"undefined"==typeof WeakRef?n:WeakRef,"%WeakSet%":"undefined"==typeof WeakSet?n:WeakSet};if(m)try{null.error}catch(t){var E=m(m(t));b["%Error.prototype%"]=E}var w=function t(e){var r;if("%AsyncFunction%"===e)r=p("async function () {}");else if("%GeneratorFunction%"===e)r=p("function* () {}");else if("%AsyncGeneratorFunction%"===e)r=p("async function* () {}");else if("%AsyncGenerator%"===e){var n=t("%AsyncGeneratorFunction%");n&&(r=n.prototype)}else if("%AsyncIteratorPrototype%"===e){var i=t("%AsyncGenerator%");i&&m&&(r=m(i.prototype))}return b[e]=r,r},O={__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"]},B=r(6743),A=r(9957),x=B.call(Function.call,Array.prototype.concat),P=B.call(Function.apply,Array.prototype.splice),T=B.call(Function.call,String.prototype.replace),I=B.call(Function.call,String.prototype.slice),k=B.call(Function.call,RegExp.prototype.exec),D=/[^%.[\\]]+|\\[(?:(-?\\d+(?:\\.\\d+)?)|(["\'])((?:(?!\\2)[^\\\\]|\\\\.)*?)\\2)\\]|(?=(?:\\.|\\[\\])(?:\\.|\\[\\]|%$))/g,R=/\\\\(\\\\)?/g,N=function(t,e){var r,n=t;if(A(O,n)&&(n="%"+(r=O[n])[0]+"%"),A(b,n)){var i=b[n];if(i===S&&(i=w(n)),void 0===i&&!e)throw new u("intrinsic "+t+" exists, but is not available. Please file an issue!");return{alias:r,name:n,value:i}}throw new f("intrinsic "+t+" does not exist!")};t.exports=function(t,e){if("string"!=typeof t||0===t.length)throw new u("intrinsic name must be a non-empty string");if(arguments.length>1&&"boolean"!=typeof e)throw new u(\'"allowMissing" argument must be a boolean\');if(null===k(/^%?[^%]*%?$/,t))throw new f("`%` may not be present anywhere but at the beginning and end of the intrinsic name");var r=function(t){var e=I(t,0,1),r=I(t,-1);if("%"===e&&"%"!==r)throw new f("invalid intrinsic syntax, expected closing `%`");if("%"===r&&"%"!==e)throw new f("invalid intrinsic syntax, expected opening `%`");var n=[];return T(t,D,(function(t,e,r,i){n[n.length]=r?T(i,R,"$1"):e||t})),n}(t),n=r.length>0?r[0]:"",i=N("%"+n+"%",e),o=i.name,s=i.value,a=!1,c=i.alias;c&&(n=c[0],P(r,x([0,1],c)));for(var h=1,p=!0;h=r.length){var v=l(s,y);s=(p=!!v)&&"get"in v&&!("originalValue"in v.get)?v.get:s[y]}else p=A(s,y),s=s[y];p&&!a&&(b[o]=s)}}return s}},5795:(t,e,r)=>{"use strict";var n=r(453)("%Object.getOwnPropertyDescriptor%",!0);if(n)try{n([],"length")}catch(t){n=null}t.exports=n},592:(t,e,r)=>{"use strict";var n=r(655),i=function(){return!!n};i.hasArrayLengthDefineBug=function(){if(!n)return null;try{return 1!==n([],"length",{value:1}).length}catch(t){return!0}},t.exports=i},24:t=>{"use strict";var e={__proto__:null,foo:{}},r=Object;t.exports=function(){return{__proto__:e}.foo===e.foo&&!(e instanceof r)}},4039:(t,e,r)=>{"use strict";var n="undefined"!=typeof Symbol&&Symbol,i=r(1333);t.exports=function(){return"function"==typeof n&&"function"==typeof Symbol&&"symbol"==typeof n("foo")&&"symbol"==typeof Symbol("bar")&&i()}},1333:t=>{"use strict";t.exports=function(){if("function"!=typeof Symbol||"function"!=typeof Object.getOwnPropertySymbols)return!1;if("symbol"==typeof Symbol.iterator)return!0;var t={},e=Symbol("test"),r=Object(e);if("string"==typeof e)return!1;if("[object Symbol]"!==Object.prototype.toString.call(e))return!1;if("[object Symbol]"!==Object.prototype.toString.call(r))return!1;for(e in t[e]=42,t)return!1;if("function"==typeof Object.keys&&0!==Object.keys(t).length)return!1;if("function"==typeof Object.getOwnPropertyNames&&0!==Object.getOwnPropertyNames(t).length)return!1;var n=Object.getOwnPropertySymbols(t);if(1!==n.length||n[0]!==e)return!1;if(!Object.prototype.propertyIsEnumerable.call(t,e))return!1;if("function"==typeof Object.getOwnPropertyDescriptor){var i=Object.getOwnPropertyDescriptor(t,e);if(42!==i.value||!0!==i.enumerable)return!1}return!0}},9957:(t,e,r)=>{"use strict";var n=Function.prototype.call,i=Object.prototype.hasOwnProperty,o=r(6743);t.exports=o.call(n,i)},251:(t,e)=>{e.read=function(t,e,r,n,i){var o,s,a=8*i-n-1,f=(1<>1,c=-7,h=r?i-1:0,p=r?-1:1,l=t[e+h];for(h+=p,o=l&(1<<-c)-1,l>>=-c,c+=a;c>0;o=256*o+t[e+h],h+=p,c-=8);for(s=o&(1<<-c)-1,o>>=-c,c+=n;c>0;s=256*s+t[e+h],h+=p,c-=8);if(0===o)o=1-u;else{if(o===f)return s?NaN:1/0*(l?-1:1);s+=Math.pow(2,n),o-=u}return(l?-1:1)*s*Math.pow(2,o-n)},e.write=function(t,e,r,n,i,o){var s,a,f,u=8*o-i-1,c=(1<>1,p=23===i?Math.pow(2,-24)-Math.pow(2,-77):0,l=n?0:o-1,y=n?1:-1,g=e<0||0===e&&1/e<0?1:0;for(e=Math.abs(e),isNaN(e)||e===1/0?(a=isNaN(e)?1:0,s=c):(s=Math.floor(Math.log(e)/Math.LN2),e*(f=Math.pow(2,-s))<1&&(s--,f*=2),(e+=s+h>=1?p/f:p*Math.pow(2,1-h))*f>=2&&(s++,f/=2),s+h>=c?(a=0,s=c):s+h>=1?(a=(e*f-1)*Math.pow(2,i),s+=h):(a=e*Math.pow(2,h-1)*Math.pow(2,i),s=0));i>=8;t[r+l]=255&a,l+=y,a/=256,i-=8);for(s=s<0;t[r+l]=255&s,l+=y,s/=256,u-=8);t[r+l-y]|=128*g}},3229:(t,e,r)=>{var n=r(8287).Buffer,i=r(7449),o=r(5682),s=(r(3200),r(3100).Ber,r(8226)._),a=r(8226),f=r(1768),u=r(7460);void 0===i.RSA_NO_PADDING&&(i.RSA_NO_PADDING=3),t.exports=function(){var t={node10:["md4","md5","ripemd160","sha1","sha224","sha256","sha384","sha512"],node:["md4","md5","ripemd160","sha1","sha224","sha256","sha384","sha512"],iojs:["md4","md5","ripemd160","sha1","sha224","sha256","sha384","sha512"],browser:["md5","ripemd160","sha1","sha256","sha512"]},e="pkcs1_oaep",r="pkcs1",i={private:"pkcs1-private-pem","private-der":"pkcs1-private-der",public:"pkcs8-public-pem","public-der":"pkcs8-public-der"};function c(t,i,f){if(!(this instanceof c))return new c(t,i,f);s.isObject(i)&&(f=i,i=void 0),this.$options={signingScheme:r,signingSchemeOptions:{hash:"sha256",saltLength:null},encryptionScheme:e,encryptionSchemeOptions:{hash:"sha1",label:null},environment:a.detectEnvironment(),rsaUtils:this},this.keyPair=new o.Key,this.$cache={},n.isBuffer(t)||s.isString(t)?this.importKey(t,i):s.isObject(t)&&this.generateKeyPair(t.b,t.e),this.setOptions(f)}return c.prototype.setOptions=function(n){if((n=n||{}).environment&&(this.$options.environment=n.environment),n.signingScheme){if(s.isString(n.signingScheme)){var i=n.signingScheme.toLowerCase().split("-");1==i.length?t.node.indexOf(i[0])>-1?(this.$options.signingSchemeOptions={hash:i[0]},this.$options.signingScheme=r):(this.$options.signingScheme=i[0],this.$options.signingSchemeOptions={hash:null}):(this.$options.signingSchemeOptions={hash:i[1]},this.$options.signingScheme=i[0])}else s.isObject(n.signingScheme)&&(this.$options.signingScheme=n.signingScheme.scheme||r,this.$options.signingSchemeOptions=s.omit(n.signingScheme,"scheme"));if(!f.isSignature(this.$options.signingScheme))throw Error("Unsupported signing scheme");if(this.$options.signingSchemeOptions.hash&&-1===t[this.$options.environment].indexOf(this.$options.signingSchemeOptions.hash))throw Error("Unsupported hashing algorithm for "+this.$options.environment+" environment")}if(n.encryptionScheme){if(s.isString(n.encryptionScheme)?(this.$options.encryptionScheme=n.encryptionScheme.toLowerCase(),this.$options.encryptionSchemeOptions={}):s.isObject(n.encryptionScheme)&&(this.$options.encryptionScheme=n.encryptionScheme.scheme||e,this.$options.encryptionSchemeOptions=s.omit(n.encryptionScheme,"scheme")),!f.isEncryption(this.$options.encryptionScheme))throw Error("Unsupported encryption scheme");if(this.$options.encryptionSchemeOptions.hash&&-1===t[this.$options.environment].indexOf(this.$options.encryptionSchemeOptions.hash))throw Error("Unsupported hashing algorithm for "+this.$options.environment+" environment")}this.keyPair.setOptions(this.$options)},c.prototype.generateKeyPair=function(t,e){if(e=e||65537,(t=t||2048)%8!=0)throw Error("Key size must be a multiple of 8.");return this.keyPair.generate(t,e.toString(16)),this.$cache={},this},c.prototype.importKey=function(t,e){if(!t)throw Error("Empty key given");if(e&&(e=i[e]||e),!u.detectAndImport(this.keyPair,t,e)&&void 0===e)throw Error("Key format must be specified");return this.$cache={},this},c.prototype.exportKey=function(t){return t=i[t=t||"private"]||t,this.$cache[t]||(this.$cache[t]=u.detectAndExport(this.keyPair,t)),this.$cache[t]},c.prototype.isPrivate=function(){return this.keyPair.isPrivate()},c.prototype.isPublic=function(t){return this.keyPair.isPublic(t)},c.prototype.isEmpty=function(t){return!(this.keyPair.n||this.keyPair.e||this.keyPair.d)},c.prototype.encrypt=function(t,e,r){return this.$$encryptKey(!1,t,e,r)},c.prototype.decrypt=function(t,e){return this.$$decryptKey(!1,t,e)},c.prototype.encryptPrivate=function(t,e,r){return this.$$encryptKey(!0,t,e,r)},c.prototype.decryptPublic=function(t,e){return this.$$decryptKey(!0,t,e)},c.prototype.$$encryptKey=function(t,e,r,n){try{var i=this.keyPair.encrypt(this.$getDataForEncrypt(e,n),t);return"buffer"!=r&&r?i.toString(r):i}catch(t){throw Error("Error during encryption. Original error: "+t)}},c.prototype.$$decryptKey=function(t,e,r){try{e=s.isString(e)?n.from(e,"base64"):e;var i=this.keyPair.decrypt(e,t);if(null===i)throw Error("Key decrypt method returns null.");return this.$getDecryptedData(i,r)}catch(t){throw Error("Error during decryption (probably incorrect key). Original error: "+t)}},c.prototype.sign=function(t,e,r){if(!this.isPrivate())throw Error("This is not private key");var n=this.keyPair.sign(this.$getDataForEncrypt(t,r));return e&&"buffer"!=e&&(n=n.toString(e)),n},c.prototype.verify=function(t,e,r,n){if(!this.isPublic())throw Error("This is not public key");return n=n&&"buffer"!=n?n:null,this.keyPair.verify(this.$getDataForEncrypt(t,r),e,n)},c.prototype.getKeySize=function(){return this.keyPair.keySize},c.prototype.getMaxMessageSize=function(){return this.keyPair.maxMessageLength},c.prototype.$getDataForEncrypt=function(t,e){if(s.isString(t)||s.isNumber(t))return n.from(""+t,e||"utf8");if(n.isBuffer(t))return t;if(s.isObject(t))return n.from(JSON.stringify(t));throw Error("Unexpected data type")},c.prototype.$getDecryptedData=function(t,e){return"buffer"==(e=e||"buffer")?t:"json"==e?JSON.parse(t.toString()):t.toString(e)},c}()},4538:(t,e,r)=>{var n=r(3200);t.exports={getEngine:function(t,e){var i=r(7469);return"node"===e.environment&&"function"==typeof n.publicEncrypt&&"function"==typeof n.privateDecrypt&&(i="function"==typeof n.privateEncrypt&&"function"==typeof n.publicDecrypt?r(2418):r(1957)),i(t,e)}}},2418:(t,e,r)=>{var n=r(3200),i=r(7449),o=r(1768);t.exports=function(t,e){var r=o.pkcs1.makeScheme(t,e);return{encrypt:function(t,o){var s;if(o)return s=i.RSA_PKCS1_PADDING,e.encryptionSchemeOptions&&e.encryptionSchemeOptions.padding&&(s=e.encryptionSchemeOptions.padding),n.privateEncrypt({key:e.rsaUtils.exportKey("private"),padding:s},t);s=i.RSA_PKCS1_OAEP_PADDING,"pkcs1"===e.encryptionScheme&&(s=i.RSA_PKCS1_PADDING),e.encryptionSchemeOptions&&e.encryptionSchemeOptions.padding&&(s=e.encryptionSchemeOptions.padding);var a=t;return s===i.RSA_NO_PADDING&&(a=r.pkcs0pad(t)),n.publicEncrypt({key:e.rsaUtils.exportKey("public"),padding:s},a)},decrypt:function(t,o){var s;if(o)return s=i.RSA_PKCS1_PADDING,e.encryptionSchemeOptions&&e.encryptionSchemeOptions.padding&&(s=e.encryptionSchemeOptions.padding),n.publicDecrypt({key:e.rsaUtils.exportKey("public"),padding:s},t);s=i.RSA_PKCS1_OAEP_PADDING,"pkcs1"===e.encryptionScheme&&(s=i.RSA_PKCS1_PADDING),e.encryptionSchemeOptions&&e.encryptionSchemeOptions.padding&&(s=e.encryptionSchemeOptions.padding);var a=n.privateDecrypt({key:e.rsaUtils.exportKey("private"),padding:s},t);return s===i.RSA_NO_PADDING?r.pkcs0unpad(a):a}}}},7469:(t,e,r)=>{var n=r(1973),i=r(1768);t.exports=function(t,e){var r=i.pkcs1.makeScheme(t,e);return{encrypt:function(e,i){var o,s;return i?(o=new n(r.encPad(e,{type:1})),s=t.$doPrivate(o)):(o=new n(t.encryptionScheme.encPad(e)),s=t.$doPublic(o)),s.toBuffer(t.encryptedDataLength)},decrypt:function(e,i){var o,s=new n(e);return i?(o=t.$doPublic(s),r.encUnPad(o.toBuffer(t.encryptedDataLength),{type:1})):(o=t.$doPrivate(s),t.encryptionScheme.encUnPad(o.toBuffer(t.encryptedDataLength)))}}}},1957:(t,e,r)=>{var n=r(3200),i=r(7449),o=r(1768);t.exports=function(t,e){var s=r(7469)(t,e),a=o.pkcs1.makeScheme(t,e);return{encrypt:function(t,r){if(r)return s.encrypt(t,r);var o=i.RSA_PKCS1_OAEP_PADDING;"pkcs1"===e.encryptionScheme&&(o=i.RSA_PKCS1_PADDING),e.encryptionSchemeOptions&&e.encryptionSchemeOptions.padding&&(o=e.encryptionSchemeOptions.padding);var f=t;return o===i.RSA_NO_PADDING&&(f=a.pkcs0pad(t)),n.publicEncrypt({key:e.rsaUtils.exportKey("public"),padding:o},f)},decrypt:function(t,r){if(r)return s.decrypt(t,r);var o=i.RSA_PKCS1_OAEP_PADDING;"pkcs1"===e.encryptionScheme&&(o=i.RSA_PKCS1_PADDING),e.encryptionSchemeOptions&&e.encryptionSchemeOptions.padding&&(o=e.encryptionSchemeOptions.padding);var f=n.privateDecrypt({key:e.rsaUtils.exportKey("private"),padding:o},t);return o===i.RSA_NO_PADDING?a.pkcs0unpad(f):f}}}},3374:(t,e,r)=>{r(8226)._,r(8226),t.exports={privateExport:function(t,e){return{n:t.n.toBuffer(),e:t.e,d:t.d.toBuffer(),p:t.p.toBuffer(),q:t.q.toBuffer(),dmp1:t.dmp1.toBuffer(),dmq1:t.dmq1.toBuffer(),coeff:t.coeff.toBuffer()}},privateImport:function(t,e,r){if(!(e.n&&e.e&&e.d&&e.p&&e.q&&e.dmp1&&e.dmq1&&e.coeff))throw Error("Invalid key data");t.setPrivate(e.n,e.e,e.d,e.p,e.q,e.dmp1,e.dmq1,e.coeff)},publicExport:function(t,e){return{n:t.n.toBuffer(),e:t.e}},publicImport:function(t,e,r){if(!e.n||!e.e)throw Error("Invalid key data");t.setPublic(e.n,e.e)},autoImport:function(e,r){return!(!r.n||!r.e||(r.d&&r.p&&r.q&&r.dmp1&&r.dmq1&&r.coeff?(t.exports.privateImport(e,r),0):(t.exports.publicImport(e,r),0)))}}},7460:(t,e,r)=>{function n(t){t=t.split("-");for(var e="private",r={type:"default"},n=1;n{var n=r(8287).Buffer,i=r(8226)._,o=r(8226),s=r(1973);const a="-----BEGIN OPENSSH PRIVATE KEY-----",f="-----END OPENSSH PRIVATE KEY-----";function u(t){const e=t.buf.readInt32BE(t.off);t.off+=4;const r=t.buf.slice(t.off,t.off+e);return t.off+=e,r}function c(t,e){t.buf.writeInt32BE(e.byteLength,t.off),t.off+=4,t.off+=e.copy(t.buf,t.off)}t.exports={privateExport:function(t,e){const r=t.n.toBuffer();let i=n.alloc(4);for(i.writeUInt32BE(t.e,0);0===i[0];)i=i.slice(1);const s=t.d.toBuffer(),u=t.coeff.toBuffer(),h=t.p.toBuffer(),p=t.q.toBuffer();let l;l=void 0!==t.sshcomment?n.from(t.sshcomment):n.from([]);const y=15+i.byteLength+4+r.byteLength,g=23+r.byteLength+4+i.byteLength+4+s.byteLength+4+u.byteLength+4+h.byteLength+4+p.byteLength+4+l.byteLength;let d=43+y+4+g;d+=8*Math.ceil(g/8)-g;const v=n.alloc(d),m={buf:v,off:0};v.write("openssh-key-v1","utf8"),v.writeUInt8(0,14),m.off+=15,c(m,n.from("none")),c(m,n.from("none")),c(m,n.from("")),m.off=m.buf.writeUInt32BE(1,m.off),m.off=m.buf.writeUInt32BE(y,m.off),c(m,n.from("ssh-rsa")),c(m,i),c(m,r),m.off=m.buf.writeUInt32BE(d-47-y,m.off),m.off+=8,c(m,n.from("ssh-rsa")),c(m,r),c(m,i),c(m,s),c(m,u),c(m,h),c(m,p),c(m,l);let S=1;for(;m.off{var n=r(8287).Buffer,i=r(3100).Ber,o=r(8226)._,s=r(8226);const a="-----BEGIN RSA PRIVATE KEY-----",f="-----END RSA PRIVATE KEY-----",u="-----BEGIN RSA PUBLIC KEY-----",c="-----END RSA PUBLIC KEY-----";t.exports={privateExport:function(t,e){e=e||{};var r=t.n.toBuffer(),n=t.d.toBuffer(),o=t.p.toBuffer(),u=t.q.toBuffer(),c=t.dmp1.toBuffer(),h=t.dmq1.toBuffer(),p=t.coeff.toBuffer(),l=r.length+n.length+o.length+u.length+c.length+h.length+p.length+512,y=new i.Writer({size:l});return y.startSequence(),y.writeInt(0),y.writeBuffer(r,2),y.writeInt(t.e),y.writeBuffer(n,2),y.writeBuffer(o,2),y.writeBuffer(u,2),y.writeBuffer(c,2),y.writeBuffer(h,2),y.writeBuffer(p,2),y.endSequence(),"der"===e.type?y.buffer:a+"\\n"+s.linebrk(y.buffer.toString("base64"),64)+"\\n"+f},privateImport:function(t,e,r){var u;if("der"!==(r=r||{}).type){if(n.isBuffer(e)&&(e=e.toString("utf8")),!o.isString(e))throw Error("Unsupported key format");var c=s.trimSurroundingText(e,a,f).replace(/\\s+|\\n\\r|\\n|\\r$/gm,"");u=n.from(c,"base64")}else{if(!n.isBuffer(e))throw Error("Unsupported key format");u=e}var h=new i.Reader(u);h.readSequence(),h.readString(2,!0),t.setPrivate(h.readString(2,!0),h.readString(2,!0),h.readString(2,!0),h.readString(2,!0),h.readString(2,!0),h.readString(2,!0),h.readString(2,!0),h.readString(2,!0))},publicExport:function(t,e){e=e||{};var r=t.n.toBuffer(),n=r.length+512,o=new i.Writer({size:n});return o.startSequence(),o.writeBuffer(r,2),o.writeInt(t.e),o.endSequence(),"der"===e.type?o.buffer:u+"\\n"+s.linebrk(o.buffer.toString("base64"),64)+"\\n"+c},publicImport:function(t,e,r){var a;if("der"!==(r=r||{}).type){if(n.isBuffer(e)&&(e=e.toString("utf8")),o.isString(e)){var f=s.trimSurroundingText(e,u,c).replace(/\\s+|\\n\\r|\\n|\\r$/gm,"");a=n.from(f,"base64")}}else{if(!n.isBuffer(e))throw Error("Unsupported key format");a=e}var h=new i.Reader(a);h.readSequence(),t.setPublic(h.readString(2,!0),h.readString(2,!0))},autoImport:function(e,r){return/^[\\S\\s]*-----BEGIN RSA PRIVATE KEY-----\\s*(?=(([A-Za-z0-9+/=]+\\s*)+))\\1-----END RSA PRIVATE KEY-----[\\S\\s]*$/g.test(r)?(t.exports.privateImport(e,r),!0):!!/^[\\S\\s]*-----BEGIN RSA PUBLIC KEY-----\\s*(?=(([A-Za-z0-9+/=]+\\s*)+))\\1-----END RSA PUBLIC KEY-----[\\S\\s]*$/g.test(r)&&(t.exports.publicImport(e,r),!0)}}},8573:(t,e,r)=>{var n=r(8287).Buffer,i=r(3100).Ber,o=r(8226)._,s="1.2.840.113549.1.1.1",a=r(8226);const f="-----BEGIN PRIVATE KEY-----",u="-----END PRIVATE KEY-----",c="-----BEGIN PUBLIC KEY-----",h="-----END PUBLIC KEY-----";t.exports={privateExport:function(t,e){e=e||{};var r=t.n.toBuffer(),n=t.d.toBuffer(),o=t.p.toBuffer(),c=t.q.toBuffer(),h=t.dmp1.toBuffer(),p=t.dmq1.toBuffer(),l=t.coeff.toBuffer(),y=r.length+n.length+o.length+c.length+h.length+p.length+l.length+512,g=new i.Writer({size:y});g.startSequence(),g.writeInt(0),g.writeBuffer(r,2),g.writeInt(t.e),g.writeBuffer(n,2),g.writeBuffer(o,2),g.writeBuffer(c,2),g.writeBuffer(h,2),g.writeBuffer(p,2),g.writeBuffer(l,2),g.endSequence();var d=new i.Writer({size:y});return d.startSequence(),d.writeInt(0),d.startSequence(),d.writeOID(s),d.writeNull(),d.endSequence(),d.writeBuffer(g.buffer,4),d.endSequence(),"der"===e.type?d.buffer:f+"\\n"+a.linebrk(d.buffer.toString("base64"),64)+"\\n"+u},privateImport:function(t,e,r){var c;if("der"!==(r=r||{}).type){if(n.isBuffer(e)&&(e=e.toString("utf8")),!o.isString(e))throw Error("Unsupported key format");var h=a.trimSurroundingText(e,f,u).replace("-----END PRIVATE KEY-----","").replace(/\\s+|\\n\\r|\\n|\\r$/gm,"");c=n.from(h,"base64")}else{if(!n.isBuffer(e))throw Error("Unsupported key format");c=e}var p=new i.Reader(c);if(p.readSequence(),p.readInt(0),new i.Reader(p.readString(48,!0)).readOID(6,!0)!==s)throw Error("Invalid Public key format");var l=new i.Reader(p.readString(4,!0));l.readSequence(),l.readString(2,!0),t.setPrivate(l.readString(2,!0),l.readString(2,!0),l.readString(2,!0),l.readString(2,!0),l.readString(2,!0),l.readString(2,!0),l.readString(2,!0),l.readString(2,!0))},publicExport:function(t,e){e=e||{};var r=t.n.toBuffer(),n=r.length+512,o=new i.Writer({size:n});o.writeByte(0),o.startSequence(),o.writeBuffer(r,2),o.writeInt(t.e),o.endSequence();var f=new i.Writer({size:n});return f.startSequence(),f.startSequence(),f.writeOID(s),f.writeNull(),f.endSequence(),f.writeBuffer(o.buffer,3),f.endSequence(),"der"===e.type?f.buffer:c+"\\n"+a.linebrk(f.buffer.toString("base64"),64)+"\\n"+h},publicImport:function(t,e,r){var f;if("der"!==(r=r||{}).type){if(n.isBuffer(e)&&(e=e.toString("utf8")),o.isString(e)){var u=a.trimSurroundingText(e,c,h).replace(/\\s+|\\n\\r|\\n|\\r$/gm,"");f=n.from(u,"base64")}}else{if(!n.isBuffer(e))throw Error("Unsupported key format");f=e}var p=new i.Reader(f);if(p.readSequence(),new i.Reader(p.readString(48,!0)).readOID(6,!0)!==s)throw Error("Invalid Public key format");var l=new i.Reader(p.readString(3,!0));l.readByte(),l.readSequence(),t.setPublic(l.readString(2,!0),l.readString(2,!0))},autoImport:function(e,r){return/^[\\S\\s]*-----BEGIN PRIVATE KEY-----\\s*(?=(([A-Za-z0-9+/=]+\\s*)+))\\1-----END PRIVATE KEY-----[\\S\\s]*$/g.test(r)?(t.exports.privateImport(e,r),!0):!!/^[\\S\\s]*-----BEGIN PUBLIC KEY-----\\s*(?=(([A-Za-z0-9+/=]+\\s*)+))\\1-----END PUBLIC KEY-----[\\S\\s]*$/g.test(r)&&(t.exports.publicImport(e,r),!0)}}},1973:(t,e,r)=>{var n=r(8287).Buffer,i=r(3200),o=r(8226)._;function s(t,e){null!=t&&("number"==typeof t?this.fromNumber(t,e):n.isBuffer(t)?this.fromBuffer(t):null==e&&"string"!=typeof t?this.fromByteArray(t):this.fromString(t,e))}function a(){return new s(null)}s.prototype.am=function(t,e,r,n,i,o){for(var s=16383&e,a=e>>14;--o>=0;){var f=16383&this[t],u=this[t++]>>14,c=a*f+u*s;i=((f=s*f+((16383&c)<<14)+r[n]+i)>>28)+(c>>14)+a*u,r[n++]=268435455&f}return i},s.prototype.DB=28,s.prototype.DM=268435455,s.prototype.DV=1<<28,s.prototype.FV=Math.pow(2,52),s.prototype.F1=24,s.prototype.F2=4;var f,u,c=new Array;for(f="0".charCodeAt(0),u=0;u<=9;++u)c[f++]=u;for(f="a".charCodeAt(0),u=10;u<36;++u)c[f++]=u;for(f="A".charCodeAt(0),u=10;u<36;++u)c[f++]=u;function h(t){return"0123456789abcdefghijklmnopqrstuvwxyz".charAt(t)}function p(t,e){var r=c[t.charCodeAt(e)];return null==r?-1:r}function l(t){var e=a();return e.fromInt(t),e}function y(t){var e,r=1;return 0!=(e=t>>>16)&&(t=e,r+=16),0!=(e=t>>8)&&(t=e,r+=8),0!=(e=t>>4)&&(t=e,r+=4),0!=(e=t>>2)&&(t=e,r+=2),0!=(e=t>>1)&&(t=e,r+=1),r}function g(t){this.m=t}function d(t){this.m=t,this.mp=t.invDigit(),this.mpl=32767&this.mp,this.mph=this.mp>>15,this.um=(1<>=16,e+=16),255&t||(t>>=8,e+=8),15&t||(t>>=4,e+=4),3&t||(t>>=2,e+=2),1&t||++e,e}function E(t){for(var e=0;0!=t;)t&=t-1,++e;return e}function w(){}function O(t){return t}function B(t){this.r2=a(),this.q3=a(),s.ONE.dlShiftTo(2*t.t,this.r2),this.mu=this.r2.divide(t),this.m=t}g.prototype.convert=function(t){return t.s<0||t.compareTo(this.m)>=0?t.mod(this.m):t},g.prototype.revert=function(t){return t},g.prototype.reduce=function(t){t.divRemTo(this.m,null,t)},g.prototype.mulTo=function(t,e,r){t.multiplyTo(e,r),this.reduce(r)},g.prototype.sqrTo=function(t,e){t.squareTo(e),this.reduce(e)},d.prototype.convert=function(t){var e=a();return t.abs().dlShiftTo(this.m.t,e),e.divRemTo(this.m,null,e),t.s<0&&e.compareTo(s.ZERO)>0&&this.m.subTo(e,e),e},d.prototype.revert=function(t){var e=a();return t.copyTo(e),this.reduce(e),e},d.prototype.reduce=function(t){for(;t.t<=this.mt2;)t[t.t++]=0;for(var e=0;e>15)*this.mpl&this.um)<<15)&t.DM;for(t[r=e+this.m.t]+=this.m.am(0,n,t,e,0,this.m.t);t[r]>=t.DV;)t[r]-=t.DV,t[++r]++}t.clamp(),t.drShiftTo(this.m.t,t),t.compareTo(this.m)>=0&&t.subTo(this.m,t)},d.prototype.mulTo=function(t,e,r){t.multiplyTo(e,r),this.reduce(r)},d.prototype.sqrTo=function(t,e){t.squareTo(e),this.reduce(e)},w.prototype.convert=O,w.prototype.revert=O,w.prototype.mulTo=function(t,e,r){t.multiplyTo(e,r)},w.prototype.sqrTo=function(t,e){t.squareTo(e)},B.prototype.convert=function(t){if(t.s<0||t.t>2*this.m.t)return t.mod(this.m);if(t.compareTo(this.m)<0)return t;var e=a();return t.copyTo(e),this.reduce(e),e},B.prototype.revert=function(t){return t},B.prototype.reduce=function(t){for(t.drShiftTo(this.m.t-1,this.r2),t.t>this.m.t+1&&(t.t=this.m.t+1,t.clamp()),this.mu.multiplyUpperTo(this.r2,this.m.t+1,this.q3),this.m.multiplyLowerTo(this.q3,this.m.t+1,this.r2);t.compareTo(this.r2)<0;)t.dAddOffset(1,this.m.t+1);for(t.subTo(this.r2,t);t.compareTo(this.m)>=0;)t.subTo(this.m,t)},B.prototype.mulTo=function(t,e,r){t.multiplyTo(e,r),this.reduce(r)},B.prototype.sqrTo=function(t,e){t.squareTo(e),this.reduce(e)};var A=[2,3,5,7,11,13,17,19,23,29,31,37,41,43,47,53,59,61,67,71,73,79,83,89,97,101,103,107,109,113,127,131,137,139,149,151,157,163,167,173,179,181,191,193,197,199,211,223,227,229,233,239,241,251,257,263,269,271,277,281,283,293,307,311,313,317,331,337,347,349,353,359,367,373,379,383,389,397,401,409,419,421,431,433,439,443,449,457,461,463,467,479,487,491,499,503,509,521,523,541,547,557,563,569,571,577,587,593,599,601,607,613,617,619,631,641,643,647,653,659,661,673,677,683,691,701,709,719,727,733,739,743,751,757,761,769,773,787,797,809,811,821,823,827,829,839,853,857,859,863,877,881,883,887,907,911,919,929,937,941,947,953,967,971,977,983,991,997],x=(1<<26)/A[A.length-1];s.prototype.copyTo=function(t){for(var e=this.t-1;e>=0;--e)t[e]=this[e];t.t=this.t,t.s=this.s},s.prototype.fromInt=function(t){this.t=1,this.s=t<0?-1:0,t>0?this[0]=t:t<-1?this[0]=t+DV:this.t=0},s.prototype.fromString=function(t,e,r){var n;switch(e){case 2:n=1;break;case 4:n=2;break;case 8:n=3;break;case 16:n=4;break;case 32:n=5;break;case 256:n=8;break;default:return void this.fromRadix(t,e)}this.t=0,this.s=0;for(var i=t.length,o=!1,a=0;--i>=0;){var f=8==n?255&t[i]:p(t,i);f<0?"-"==t.charAt(i)&&(o=!0):(o=!1,0===a?this[this.t++]=f:a+n>this.DB?(this[this.t-1]|=(f&(1<>this.DB-a):this[this.t-1]|=f<=this.DB&&(a-=this.DB))}!r&&8==n&&128&t[0]&&(this.s=-1,a>0&&(this[this.t-1]|=(1<0&&this[this.t-1]==t;)--this.t},s.prototype.dlShiftTo=function(t,e){var r;for(r=this.t-1;r>=0;--r)e[r+t]=this[r];for(r=t-1;r>=0;--r)e[r]=0;e.t=this.t+t,e.s=this.s},s.prototype.drShiftTo=function(t,e){for(var r=t;r=0;--r)e[r+s+1]=this[r]>>i|a,a=(this[r]&o)<=0;--r)e[r]=0;e[s]=a,e.t=this.t+s+1,e.s=this.s,e.clamp()},s.prototype.rShiftTo=function(t,e){e.s=this.s;var r=Math.floor(t/this.DB);if(r>=this.t)e.t=0;else{var n=t%this.DB,i=this.DB-n,o=(1<>n;for(var s=r+1;s>n;n>0&&(e[this.t-r-1]|=(this.s&o)<>=this.DB;if(t.t>=this.DB;n+=this.s}else{for(n+=this.s;r>=this.DB;n-=t.s}e.s=n<0?-1:0,n<-1?e[r++]=this.DV+n:n>0&&(e[r++]=n),e.t=r,e.clamp()},s.prototype.multiplyTo=function(t,e){var r=this.abs(),n=t.abs(),i=r.t;for(e.t=i+n.t;--i>=0;)e[i]=0;for(i=0;i=0;)t[r]=0;for(r=0;r=e.DV&&(t[r+e.t]-=e.DV,t[r+e.t+1]=1)}t.t>0&&(t[t.t-1]+=e.am(r,e[r],t,2*r,0,1)),t.s=0,t.clamp()},s.prototype.divRemTo=function(t,e,r){var n=t.abs();if(!(n.t<=0)){var i=this.abs();if(i.t0?(n.lShiftTo(c,o),i.lShiftTo(c,r)):(n.copyTo(o),i.copyTo(r));var h=o.t,p=o[h-1];if(0!==p){var l=p*(1<1?o[h-2]>>this.F2:0),g=this.FV/l,d=(1<=0&&(r[r.t++]=1,r.subTo(_,r)),s.ONE.dlShiftTo(h,_),_.subTo(o,o);o.t=0;){var b=r[--m]==p?this.DM:Math.floor(r[m]*g+(r[m-1]+v)*d);if((r[m]+=o.am(0,b,r,S,0,h))0&&r.rShiftTo(c,r),f<0&&s.ZERO.subTo(r,r)}}},s.prototype.invDigit=function(){if(this.t<1)return 0;var t=this[0];if(!(1&t))return 0;var e=3&t;return(e=(e=(e=(e=e*(2-(15&t)*e)&15)*(2-(255&t)*e)&255)*(2-((65535&t)*e&65535))&65535)*(2-t*e%this.DV)%this.DV)>0?this.DV-e:-e},s.prototype.isEven=function(){return 0===(this.t>0?1&this[0]:this.s)},s.prototype.exp=function(t,e){if(t>4294967295||t<1)return s.ONE;var r=a(),n=a(),i=e.convert(this),o=y(t)-1;for(i.copyTo(r);--o>=0;)if(e.sqrTo(r,n),(t&1<0)e.mulTo(n,i,r);else{var f=r;r=n,n=f}return e.revert(r)},s.prototype.chunkSize=function(t){return Math.floor(Math.LN2*this.DB/Math.log(t))},s.prototype.toRadix=function(t){if(null==t&&(t=10),0===this.signum()||t<2||t>36)return"0";var e=this.chunkSize(t),r=Math.pow(t,e),n=l(r),i=a(),o=a(),s="";for(this.divRemTo(n,i,o);i.signum()>0;)s=(r+o.intValue()).toString(t).substr(1)+s,i.divRemTo(n,i,o);return o.intValue().toString(t)+s},s.prototype.fromRadix=function(t,e){this.fromInt(0),null==e&&(e=10);for(var r=this.chunkSize(e),n=Math.pow(e,r),i=!1,o=0,a=0,f=0;f=r&&(this.dMultiply(n),this.dAddOffset(a,0),o=0,a=0))}o>0&&(this.dMultiply(Math.pow(e,o)),this.dAddOffset(a,0)),i&&s.ZERO.subTo(this,this)},s.prototype.fromNumber=function(t,e){if("number"==typeof e)if(t<2)this.fromInt(1);else for(this.fromNumber(t),this.testBit(t-1)||this.bitwiseTo(s.ONE.shiftLeft(t-1),m,this),this.isEven()&&this.dAddOffset(1,0);!this.isProbablePrime(e);)this.dAddOffset(2,0),this.bitLength()>t&&this.subTo(s.ONE.shiftLeft(t-1),this);else{var r=i.randomBytes(1+(t>>3)),n=7&t;n>0?r[0]&=(1<>=this.DB;if(t.t>=this.DB;n+=this.s}else{for(n+=this.s;r>=this.DB;n+=t.s}e.s=n<0?-1:0,n>0?e[r++]=n:n<-1&&(e[r++]=this.DV+n),e.t=r,e.clamp()},s.prototype.dMultiply=function(t){this[this.t]=this.am(0,t-1,this,0,0,this.t),++this.t,this.clamp()},s.prototype.dAddOffset=function(t,e){if(0!==t){for(;this.t<=e;)this[this.t++]=0;for(this[e]+=t;this[e]>=this.DV;)this[e]-=this.DV,++e>=this.t&&(this[this.t++]=0),++this[e]}},s.prototype.multiplyLowerTo=function(t,e,r){var n,i=Math.min(this.t+t.t,e);for(r.s=0,r.t=i;i>0;)r[--i]=0;for(n=r.t-this.t;i=0;)r[n]=0;for(n=Math.max(e-this.t,0);n0)if(0===e)r=this[0]%t;else for(var n=this.t-1;n>=0;--n)r=(e*r+this[n])%t;return r},s.prototype.millerRabin=function(t){var e=this.subtract(s.ONE),r=e.getLowestSetBit();if(r<=0)return!1;var n=e.shiftRight(r);(t=t+1>>1)>A.length&&(t=A.length);for(var i=a(),o=0;o0)for(a>a)>0&&(i=!0,o=h(r));s>=0;)a>(a+=this.DB-e)):(r=this[s]>>(a-=e)&n,a<=0&&(a+=this.DB,--s)),r>0&&(i=!0),i&&(o+=h(r));return i?o:"0"},s.prototype.negate=function(){var t=a();return s.ZERO.subTo(this,t),t},s.prototype.abs=function(){return this.s<0?this.negate():this},s.prototype.compareTo=function(t){var e=this.s-t.s;if(0!=e)return e;var r=this.t;if(0!=(e=r-t.t))return this.s<0?-e:e;for(;--r>=0;)if(0!=(e=this[r]-t[r]))return e;return 0},s.prototype.bitLength=function(){return this.t<=0?0:this.DB*(this.t-1)+y(this[this.t-1]^this.s&this.DM)},s.prototype.mod=function(t){var e=a();return this.abs().divRemTo(t,null,e),this.s<0&&e.compareTo(s.ZERO)>0&&t.subTo(e,e),e},s.prototype.modPowInt=function(t,e){var r;return r=t<256||e.isEven()?new g(e):new d(e),this.exp(t,r)},s.prototype.clone=function(){var t=a();return this.copyTo(t),t},s.prototype.intValue=function(){if(this.s<0){if(1==this.t)return this[0]-this.DV;if(0===this.t)return-1}else{if(1==this.t)return this[0];if(0===this.t)return 0}return(this[1]&(1<<32-this.DB)-1)<>24},s.prototype.shortValue=function(){return 0==this.t?this.s:this[0]<<16>>16},s.prototype.signum=function(){return this.s<0?-1:this.t<=0||1==this.t&&this[0]<=0?0:1},s.prototype.toByteArray=function(){var t=this.t,e=new Array;e[0]=this.s;var r,n=this.DB-t*this.DB%8,i=0;if(t-- >0)for(n>n)!=(this.s&this.DM)>>n&&(e[i++]=r|this.s<=0;)n<8?(r=(this[t]&(1<>(n+=this.DB-8)):(r=this[t]>>(n-=8)&255,n<=0&&(n+=this.DB,--t)),128&r&&(r|=-256),0===i&&(128&this.s)!=(128&r)&&++i,(i>0||r!=this.s)&&(e[i++]=r);return e},s.prototype.toBuffer=function(t){var e=n.from(this.toByteArray());if(!0===t&&0===e[0])e=e.slice(1);else if(o.isNumber(t)){if(e.length>t){for(var r=0;r0?this:t},s.prototype.and=function(t){var e=a();return this.bitwiseTo(t,v,e),e},s.prototype.or=function(t){var e=a();return this.bitwiseTo(t,m,e),e},s.prototype.xor=function(t){var e=a();return this.bitwiseTo(t,S,e),e},s.prototype.andNot=function(t){var e=a();return this.bitwiseTo(t,_,e),e},s.prototype.not=function(){for(var t=a(),e=0;e=this.t?0!=this.s:!!(this[e]&1<1){var h=a();for(n.sqrTo(s[1],h);f<=c;)s[f]=a(),n.mulTo(h,s[f-2],s[f]),f+=2}var p,v,m=t.t-1,S=!0,_=a();for(i=y(t[m])-1;m>=0;){for(i>=u?p=t[m]>>i-u&c:(p=(t[m]&(1<0&&(p|=t[m-1]>>this.DB+i-u)),f=r;!(1&p);)p>>=1,--f;if((i-=f)<0&&(i+=this.DB,--m),S)s[p].copyTo(o),S=!1;else{for(;f>1;)n.sqrTo(o,_),n.sqrTo(_,o),f-=2;f>0?n.sqrTo(o,_):(v=o,o=_,_=v),n.mulTo(_,s[p],o)}for(;m>=0&&!(t[m]&1<=0?(r.subTo(n,r),e&&i.subTo(a,i),o.subTo(f,o)):(n.subTo(r,n),e&&a.subTo(i,a),f.subTo(o,f))}return 0!=n.compareTo(s.ONE)?s.ZERO:f.compareTo(t)>=0?f.subtract(t):f.signum()<0?(f.addTo(t,f),f.signum()<0?f.add(t):f):f},s.prototype.pow=function(t){return this.exp(t,new w)},s.prototype.gcd=function(t){var e=this.s<0?this.negate():this.clone(),r=t.s<0?t.negate():t.clone();if(e.compareTo(r)<0){var n=e;e=r,r=n}var i=e.getLowestSetBit(),o=r.getLowestSetBit();if(o<0)return e;for(i0&&(e.rShiftTo(o,e),r.rShiftTo(o,r));e.signum()>0;)(i=e.getLowestSetBit())>0&&e.rShiftTo(i,e),(i=r.getLowestSetBit())>0&&r.rShiftTo(i,r),e.compareTo(r)>=0?(e.subTo(r,e),e.rShiftTo(1,e)):(r.subTo(e,r),r.rShiftTo(1,r));return o>0&&r.lShiftTo(o,r),r},s.prototype.isProbablePrime=function(t){var e,r=this.abs();if(1==r.t&&r[0]<=A[A.length-1]){for(e=0;e{var n=r(8287).Buffer,i=r(8226)._,o=(r(3200),r(1973)),s=r(8226),a=r(1768),f=r(4538);e.BigInteger=o,t.exports.Key=function(){function t(){this.n=null,this.e=0,this.d=null,this.p=null,this.q=null,this.dmp1=null,this.dmq1=null,this.coeff=null}return t.prototype.setOptions=function(t){var e=a[t.signingScheme],r=a[t.encryptionScheme];e===r?this.signingScheme=this.encryptionScheme=r.makeScheme(this,t):(this.encryptionScheme=r.makeScheme(this,t),this.signingScheme=e.makeScheme(this,t)),this.encryptEngine=f.getEngine(this,t)},t.prototype.generate=function(t,e){var r=t>>1;this.e=parseInt(e,16);for(var n=new o(e,16);;){for(;this.p=new o(t-r,1),0!==this.p.subtract(o.ONE).gcd(n).compareTo(o.ONE)||!this.p.isProbablePrime(10););for(;this.q=new o(r,1),0!==this.q.subtract(o.ONE).gcd(n).compareTo(o.ONE)||!this.q.isProbablePrime(10););if(this.p.compareTo(this.q)<=0){var i=this.p;this.p=this.q,this.q=i}var s=this.p.subtract(o.ONE),a=this.q.subtract(o.ONE),f=s.multiply(a);if(0===f.gcd(n).compareTo(o.ONE)){if(this.n=this.p.multiply(this.q),this.n.bitLength()0&&(i.isNumber(e)||e.length>0)&&r.length>0))throw Error("Invalid RSA private key");this.n=new o(t),this.e=i.isNumber(e)?e:s.get32IntFromBuffer(e,0),this.d=new o(r),n&&a&&f&&u&&c&&(this.p=new o(n),this.q=new o(a),this.dmp1=new o(f),this.dmq1=new o(u),this.coeff=new o(c)),this.$$recalculateCache()},t.prototype.setPublic=function(t,e){if(!(t&&e&&t.length>0&&(i.isNumber(e)||e.length>0)))throw Error("Invalid RSA public key");this.n=new o(t),this.e=i.isNumber(e)?e:s.get32IntFromBuffer(e,0),this.$$recalculateCache()},t.prototype.$doPrivate=function(t){if(this.p||this.q)return t.modPow(this.d,this.n);for(var e=t.mod(this.p).modPow(this.dmp1,this.p),r=t.mod(this.q).modPow(this.dmq1,this.q);e.compareTo(r)<0;)e=e.add(this.p);return e.subtract(r).multiply(this.coeff).mod(this.p).multiply(this.q).add(r)},t.prototype.$doPublic=function(t){return t.modPowInt(this.e,this.n)},t.prototype.encrypt=function(t,e){var r=[],i=[],o=t.length,s=Math.ceil(o/this.maxMessageLength)||1,a=Math.ceil(o/s||1);if(1==s)r.push(t);else for(var f=0;f0)throw Error("Incorrect data or key");for(var r=[],i=0,o=0,s=t.length/this.encryptedDataLength,a=0;a>3},t}()},2487:(t,e,r)=>{var n=r(8287).Buffer,i=(r(1973),r(3200));t.exports={isEncryption:!0,isSignature:!1},t.exports.digestLength={md4:16,md5:16,ripemd160:20,rmd160:20,sha1:20,sha224:28,sha256:32,sha384:48,sha512:64};var o="sha1";t.exports.eme_oaep_mgf1=function(e,r,s){s=s||o;for(var a=t.exports.digestLength[s],f=Math.ceil(r/a),u=n.alloc(a*f),c=n.alloc(4),h=0;hf-2*u-2)throw new Error("Message is too long to encode into an encoded message with a length of "+f+" bytes, increaseemLen to fix this error (minimum value for given parameters and options: "+(f-2*u-2)+")");var c=i.createHash(r);c.update(a),c=c.digest();var h=n.alloc(f-e.length-2*u-1);h.fill(0),h[h.length-1]=1;for(var p=n.concat([c,h,e]),l=i.randomBytes(u),y=s(l,p.length,r),g=0;g{var n=r(8287).Buffer,i=r(1973),o=r(3200),s=r(7449),a={md2:n.from("3020300c06082a864886f70d020205000410","hex"),md5:n.from("3020300c06082a864886f70d020505000410","hex"),sha1:n.from("3021300906052b0e03021a05000414","hex"),sha224:n.from("302d300d06096086480165030402040500041c","hex"),sha256:n.from("3031300d060960864801650304020105000420","hex"),sha384:n.from("3041300d060960864801650304020205000430","hex"),sha512:n.from("3051300d060960864801650304020305000440","hex"),ripemd160:n.from("3021300906052b2403020105000414","hex"),rmd160:n.from("3021300906052b2403020105000414","hex")},f={ripemd160:"rmd160"},u="sha256";t.exports={isEncryption:!0,isSignature:!0},t.exports.makeScheme=function(t,e){function r(t,e){this.key=t,this.options=e}return r.prototype.maxMessageLength=function(){return this.options.encryptionSchemeOptions&&this.options.encryptionSchemeOptions.padding==s.RSA_NO_PADDING?this.key.encryptedDataLength:this.key.encryptedDataLength-11},r.prototype.encPad=function(t,e){var r;if(e=e||{},t.length>this.key.maxMessageLength)throw new Error("Message too long for RSA (n="+this.key.encryptedDataLength+", l="+t.length+")");if(this.options.encryptionSchemeOptions&&this.options.encryptionSchemeOptions.padding==s.RSA_NO_PADDING)return(r=n.alloc(this.key.maxMessageLength-t.length)).fill(0),n.concat([r,t]);if(1===e.type)return(r=n.alloc(this.key.encryptedDataLength-t.length-1)).fill(255,0,r.length-1),r[0]=1,r[r.length-1]=0,n.concat([r,t]);(r=n.alloc(this.key.encryptedDataLength-t.length))[0]=0,r[1]=2;for(var i=o.randomBytes(r.length-3),a=0;a=t.length)return null}else{if(0!==t[0]||2!==t[1])return null;for(r=3;0!==t[r];)if(++r>=t.length)return null}return t.slice(r+1,t.length)},r.prototype.sign=function(t){var e=this.options.signingSchemeOptions.hash||u;if("browser"===this.options.environment){e=f[e]||e;var r=o.createHash(e);r.update(t);var n=this.pkcs1pad(r.digest(),e);return this.key.$doPrivate(new i(n)).toBuffer(this.key.encryptedDataLength)}var s=o.createSign("RSA-"+e.toUpperCase());return s.update(t),s.sign(this.options.rsaUtils.exportKey("private"))},r.prototype.verify=function(t,e,r){if(this.options.encryptionSchemeOptions&&this.options.encryptionSchemeOptions.padding==s.RSA_NO_PADDING)return!1;var a=this.options.signingSchemeOptions.hash||u;if("browser"===this.options.environment){a=f[a]||a,r&&(e=n.from(e,r));var c=o.createHash(a);c.update(t);var h=this.pkcs1pad(c.digest(),a);return this.key.$doPublic(new i(e)).toBuffer().toString("hex")==h.toString("hex")}var p=o.createVerify("RSA-"+a.toUpperCase());return p.update(t),p.verify(this.options.rsaUtils.exportKey("public"),e,r)},r.prototype.pkcs0pad=function(t){var e=n.alloc(this.key.maxMessageLength-t.length);return e.fill(0),n.concat([e,t])},r.prototype.pkcs0unpad=function(t){return"function"==typeof t.lastIndexOf?t.slice(t.lastIndexOf("\\0")+1,t.length):t.slice(String.prototype.lastIndexOf.call(t,"\\0")+1,t.length)},r.prototype.pkcs1pad=function(t,e){var r=a[e];if(!r)throw Error("Unsupported hash algorithm");var i=n.concat([r,t]);if(i.length+10>this.key.encryptedDataLength)throw Error("Key is too short for signing algorithm ("+e+")");var o=n.alloc(this.key.encryptedDataLength-i.length-1);return o.fill(255,0,o.length-1),o[0]=1,o[o.length-1]=0,n.concat([o,i])},new r(t,e)}},4414:(t,e,r)=>{var n=r(8287).Buffer,i=r(1973),o=r(3200);t.exports={isEncryption:!1,isSignature:!0};var s="sha1";t.exports.makeScheme=function(t,e){var a=r(1768).pkcs1_oaep;function f(t,e){this.key=t,this.options=e}return f.prototype.sign=function(t){var e=o.createHash(this.options.signingSchemeOptions.hash||s);e.update(t);var r=this.emsa_pss_encode(e.digest(),this.key.keySize-1);return this.key.$doPrivate(new i(r)).toBuffer(this.key.encryptedDataLength)},f.prototype.verify=function(t,e,r){r&&(e=n.from(e,r)),e=new i(e);var a=Math.ceil((this.key.keySize-1)/8),f=this.key.$doPublic(e).toBuffer(a),u=o.createHash(this.options.signingSchemeOptions.hash||s);return u.update(t),this.emsa_pss_verify(u.digest(),f,this.key.keySize-1)},f.prototype.emsa_pss_encode=function(t,e){var r=this.options.signingSchemeOptions.hash||s,i=this.options.signingSchemeOptions.mgf||a.eme_oaep_mgf1,f=this.options.signingSchemeOptions.saltLength||20,u=a.digestLength[r],c=Math.ceil(e/8);if(c>8-S<<8-S;v[0]=v[0]&_;var b=n.alloc(v.length+l.length+1);return v.copy(b,0),l.copy(b,v.length),b[b.length-1]=188,b},f.prototype.emsa_pss_verify=function(t,e,r){var i=this.options.signingSchemeOptions.hash||s,f=this.options.signingSchemeOptions.mgf||a.eme_oaep_mgf1,u=this.options.signingSchemeOptions.saltLength||20,c=a.digestLength[i],h=Math.ceil(r/8);if(h>8-(g=8*h-r)<<8-g,p[0]=p[0]&l,y=0;0===p[y]&&y{t.exports={pkcs1:r(8290),pkcs1_oaep:r(2487),pss:r(4414),isEncryption:function(e){return t.exports[e]&&t.exports[e].isEncryption},isSignature:function(e){return t.exports[e]&&t.exports[e].isSignature}}},8226:(t,e,r)=>{var n=r(5606);r(3200),t.exports.linebrk=function(t,e){for(var r="",n=0;n+e0){if(r>=4)return t.readUIntBE(e,r);for(var n=0,i=e+r,o=0;i>e;i--,o+=2)n+=t[i-1]*Math.pow(16,o);return n}return NaN},t.exports._={isObject:function(t){var e=typeof t;return!!t&&("object"==e||"function"==e)},isString:function(t){return"string"==typeof t||t instanceof String},isNumber:function(t){return"number"==typeof t||!isNaN(parseFloat(t))&&isFinite(t)},omit:function(t,e){var r={};for(var n in t)t.hasOwnProperty(n)&&n!==e&&(r[n]=t[n]);return r}},t.exports.trimSurroundingText=function(t,e,r){var n=0,i=t.length,o=t.indexOf(e);o>=0&&(n=o+e.length);var s=t.indexOf(r,o);return s>=0&&(i=s),t.substring(n,i)}},8875:(t,e,r)=>{"use strict";var n;if(!Object.keys){var i=Object.prototype.hasOwnProperty,o=Object.prototype.toString,s=r(1093),a=Object.prototype.propertyIsEnumerable,f=!a.call({toString:null},"toString"),u=a.call((function(){}),"prototype"),c=["toString","toLocaleString","valueOf","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","constructor"],h=function(t){var e=t.constructor;return e&&e.prototype===t},p={$applicationCache:!0,$console:!0,$external:!0,$frame:!0,$frameElement:!0,$frames:!0,$innerHeight:!0,$innerWidth:!0,$onmozfullscreenchange:!0,$onmozfullscreenerror:!0,$outerHeight:!0,$outerWidth:!0,$pageXOffset:!0,$pageYOffset:!0,$parent:!0,$scrollLeft:!0,$scrollTop:!0,$scrollX:!0,$scrollY:!0,$self:!0,$webkitIndexedDB:!0,$webkitStorageInfo:!0,$window:!0},l=function(){if("undefined"==typeof window)return!1;for(var t in window)try{if(!p["$"+t]&&i.call(window,t)&&null!==window[t]&&"object"==typeof window[t])try{h(window[t])}catch(t){return!0}}catch(t){return!0}return!1}();n=function(t){var e=null!==t&&"object"==typeof t,r="[object Function]"===o.call(t),n=s(t),a=e&&"[object String]"===o.call(t),p=[];if(!e&&!r&&!n)throw new TypeError("Object.keys called on a non-object");var y=u&&r;if(a&&t.length>0&&!i.call(t,0))for(var g=0;g0)for(var d=0;d{"use strict";var n=Array.prototype.slice,i=r(1093),o=Object.keys,s=o?function(t){return o(t)}:r(8875),a=Object.keys;s.shim=function(){if(Object.keys){var t=function(){var t=Object.keys(arguments);return t&&t.length===arguments.length}(1,2);t||(Object.keys=function(t){return i(t)?a(n.call(t)):a(t)})}else Object.keys=s;return Object.keys||s},t.exports=s},1093:t=>{"use strict";var e=Object.prototype.toString;t.exports=function(t){var r=e.call(t),n="[object Arguments]"===r;return n||(n="[object Array]"!==r&&null!==t&&"object"==typeof t&&"number"==typeof t.length&&t.length>=0&&"[object Function]"===e.call(t.callee)),n}},8403:(t,e,r)=>{"use strict";var n=r(1189),i=r(1333)(),o=r(8075),s=Object,a=o("Array.prototype.push"),f=o("Object.prototype.propertyIsEnumerable"),u=i?Object.getOwnPropertySymbols:null;t.exports=function(t,e){if(null==t)throw new TypeError("target must be an object");var r=s(t);if(1===arguments.length)return r;for(var o=1;o{"use strict";var n=r(8403);t.exports=function(){return Object.assign?function(){if(!Object.assign)return!1;for(var t="abcdefghijklmnopqrst",e=t.split(""),r={},n=0;n{var e,r,n=t.exports={};function i(){throw new Error("setTimeout has not been defined")}function o(){throw new Error("clearTimeout has not been defined")}function s(t){if(e===setTimeout)return setTimeout(t,0);if((e===i||!e)&&setTimeout)return e=setTimeout,setTimeout(t,0);try{return e(t,0)}catch(r){try{return e.call(null,t,0)}catch(r){return e.call(this,t,0)}}}!function(){try{e="function"==typeof setTimeout?setTimeout:i}catch(t){e=i}try{r="function"==typeof clearTimeout?clearTimeout:o}catch(t){r=o}}();var a,f=[],u=!1,c=-1;function h(){u&&a&&(u=!1,a.length?f=a.concat(f):c=-1,f.length&&p())}function p(){if(!u){var t=s(h);u=!0;for(var e=f.length;e;){for(a=f,f=[];++c1)for(var r=1;r{"use strict";var n,i=r(5606),o=r(8287),s=o.Buffer,a={};for(n in o)o.hasOwnProperty(n)&&"SlowBuffer"!==n&&"Buffer"!==n&&(a[n]=o[n]);var f=a.Buffer={};for(n in s)s.hasOwnProperty(n)&&"allocUnsafe"!==n&&"allocUnsafeSlow"!==n&&(f[n]=s[n]);if(a.Buffer.prototype=s.prototype,f.from&&f.from!==Uint8Array.from||(f.from=function(t,e,r){if("number"==typeof t)throw new TypeError(\'The "value" argument must not be of type number. Received type \'+typeof t);if(t&&void 0===t.length)throw new TypeError("The first argument must be one of type string, Buffer, ArrayBuffer, Array, or Array-like Object. Received type "+typeof t);return s(t,e,r)}),f.alloc||(f.alloc=function(t,e,r){if("number"!=typeof t)throw new TypeError(\'The "size" argument must be of type number. Received type \'+typeof t);if(t<0||t>=2*(1<<30))throw new RangeError(\'The value "\'+t+\'" is invalid for option "size"\');var n=s(t);return e&&0!==e.length?"string"==typeof r?n.fill(e,r):n.fill(e):n.fill(0),n}),!a.kStringMaxLength)try{a.kStringMaxLength=i.binding("buffer").kStringMaxLength}catch(t){}a.constants||(a.constants={MAX_LENGTH:a.kMaxLength},a.kStringMaxLength&&(a.constants.MAX_STRING_LENGTH=a.kStringMaxLength)),t.exports=a},6897:(t,e,r)=>{"use strict";var n=r(453),i=r(41),o=r(592)(),s=r(5795),a=r(9675),f=n("%Math.floor%");t.exports=function(t,e){if("function"!=typeof t)throw new a("`fn` is not a function");if("number"!=typeof e||e<0||e>4294967295||f(e)!==e)throw new a("`length` must be a positive 32-bit integer");var r=arguments.length>2&&!!arguments[2],n=!0,u=!0;if("length"in t&&s){var c=s(t,"length");c&&!c.configurable&&(n=!1),c&&!c.writable&&(u=!1)}return(n||u||!r)&&(o?i(t,"length",e,!0,!0):i(t,"length",e)),t}},3200:(t,e,r)=>{var n=r(8287).Buffer,i=r(1396),o={randomBytes:function(t){for(var e=[],r=0;r{var n=r(8287).Buffer;const i=r(3229);let o={outputEncoding:"",PublicFormat:"pkcs1-public",PrivateFormat:"pkcs1-private",options:{environment:"browser",encryptionScheme:"pkcs1"}};t.exports={NodeRSA:i,encryptRSAWithPublicKey:function(t,e,r={}){return r=Object.assign({},o,r),new i(e,r.PublicFormat,r.options).encrypt(t,r.outEncoding||"base64")},encryptRSAWithPrivateKey:function(t,e,r={}){return r=Object.assign({},o,r),new i(e,r.PrivateFormat,r.options).encryptPrivate(t,r.outputEncoding||"base64")},decryptRSAWithPublicKey:function(t,e,r={}){return r=Object.assign({},o,r),new i(e,r.PublicEncoding,r.options).decryptPublic(t,r.outEncoding||"utf8")},decryptRSAWithPrivateKey:function(t,e,r={}){return r=Object.assign({},o,r),new i(e,r.PrivateEncoding,r.options).decrypt(t,r.outEncoding||"utf8")},sign:function(t,e,r={}){return r=Object.assign({},o,r),new i(e,r.PrivateEncoding,r.options).sign(t,r.outEncoding||"base64")},verify:function(t,e,r,s={}){return"string"==typeof e&&e.match(/^([0-9a-fA-F]{2})*$/)?e=n.from(e,"hex"):"string"==typeof e&&(e=n.from(e,"base64")),s=Object.assign({},o,s),new i(r,s.PublicEncoding,s.options).verify(t,e)}}},7449:t=>{"use strict";t.exports=JSON.parse(\'{"O_RDONLY":0,"O_WRONLY":1,"O_RDWR":2,"S_IFMT":61440,"S_IFREG":32768,"S_IFDIR":16384,"S_IFCHR":8192,"S_IFBLK":24576,"S_IFIFO":4096,"S_IFLNK":40960,"S_IFSOCK":49152,"O_CREAT":512,"O_EXCL":2048,"O_NOCTTY":131072,"O_TRUNC":1024,"O_APPEND":8,"O_DIRECTORY":1048576,"O_NOFOLLOW":256,"O_SYNC":128,"O_SYMLINK":2097152,"O_NONBLOCK":4,"S_IRWXU":448,"S_IRUSR":256,"S_IWUSR":128,"S_IXUSR":64,"S_IRWXG":56,"S_IRGRP":32,"S_IWGRP":16,"S_IXGRP":8,"S_IRWXO":7,"S_IROTH":4,"S_IWOTH":2,"S_IXOTH":1,"E2BIG":7,"EACCES":13,"EADDRINUSE":48,"EADDRNOTAVAIL":49,"EAFNOSUPPORT":47,"EAGAIN":35,"EALREADY":37,"EBADF":9,"EBADMSG":94,"EBUSY":16,"ECANCELED":89,"ECHILD":10,"ECONNABORTED":53,"ECONNREFUSED":61,"ECONNRESET":54,"EDEADLK":11,"EDESTADDRREQ":39,"EDOM":33,"EDQUOT":69,"EEXIST":17,"EFAULT":14,"EFBIG":27,"EHOSTUNREACH":65,"EIDRM":90,"EILSEQ":92,"EINPROGRESS":36,"EINTR":4,"EINVAL":22,"EIO":5,"EISCONN":56,"EISDIR":21,"ELOOP":62,"EMFILE":24,"EMLINK":31,"EMSGSIZE":40,"EMULTIHOP":95,"ENAMETOOLONG":63,"ENETDOWN":50,"ENETRESET":52,"ENETUNREACH":51,"ENFILE":23,"ENOBUFS":55,"ENODATA":96,"ENODEV":19,"ENOENT":2,"ENOEXEC":8,"ENOLCK":77,"ENOLINK":97,"ENOMEM":12,"ENOMSG":91,"ENOPROTOOPT":42,"ENOSPC":28,"ENOSR":98,"ENOSTR":99,"ENOSYS":78,"ENOTCONN":57,"ENOTDIR":20,"ENOTEMPTY":66,"ENOTSOCK":38,"ENOTSUP":45,"ENOTTY":25,"ENXIO":6,"EOPNOTSUPP":102,"EOVERFLOW":84,"EPERM":1,"EPIPE":32,"EPROTO":100,"EPROTONOSUPPORT":43,"EPROTOTYPE":41,"ERANGE":34,"EROFS":30,"ESPIPE":29,"ESRCH":3,"ESTALE":70,"ETIME":101,"ETIMEDOUT":60,"ETXTBSY":26,"EWOULDBLOCK":35,"EXDEV":18,"SIGHUP":1,"SIGINT":2,"SIGQUIT":3,"SIGILL":4,"SIGTRAP":5,"SIGABRT":6,"SIGIOT":6,"SIGBUS":10,"SIGFPE":8,"SIGKILL":9,"SIGUSR1":30,"SIGSEGV":11,"SIGUSR2":31,"SIGPIPE":13,"SIGALRM":14,"SIGTERM":15,"SIGCHLD":20,"SIGCONT":19,"SIGSTOP":17,"SIGTSTP":18,"SIGTTIN":21,"SIGTTOU":22,"SIGURG":16,"SIGXCPU":24,"SIGXFSZ":25,"SIGVTALRM":26,"SIGPROF":27,"SIGWINCH":28,"SIGIO":23,"SIGSYS":12,"SSL_OP_ALL":2147486719,"SSL_OP_ALLOW_UNSAFE_LEGACY_RENEGOTIATION":262144,"SSL_OP_CIPHER_SERVER_PREFERENCE":4194304,"SSL_OP_CISCO_ANYCONNECT":32768,"SSL_OP_COOKIE_EXCHANGE":8192,"SSL_OP_CRYPTOPRO_TLSEXT_BUG":2147483648,"SSL_OP_DONT_INSERT_EMPTY_FRAGMENTS":2048,"SSL_OP_EPHEMERAL_RSA":0,"SSL_OP_LEGACY_SERVER_CONNECT":4,"SSL_OP_MICROSOFT_BIG_SSLV3_BUFFER":32,"SSL_OP_MICROSOFT_SESS_ID_BUG":1,"SSL_OP_MSIE_SSLV2_RSA_PADDING":0,"SSL_OP_NETSCAPE_CA_DN_BUG":536870912,"SSL_OP_NETSCAPE_CHALLENGE_BUG":2,"SSL_OP_NETSCAPE_DEMO_CIPHER_CHANGE_BUG":1073741824,"SSL_OP_NETSCAPE_REUSE_CIPHER_CHANGE_BUG":8,"SSL_OP_NO_COMPRESSION":131072,"SSL_OP_NO_QUERY_MTU":4096,"SSL_OP_NO_SESSION_RESUMPTION_ON_RENEGOTIATION":65536,"SSL_OP_NO_SSLv2":16777216,"SSL_OP_NO_SSLv3":33554432,"SSL_OP_NO_TICKET":16384,"SSL_OP_NO_TLSv1":67108864,"SSL_OP_NO_TLSv1_1":268435456,"SSL_OP_NO_TLSv1_2":134217728,"SSL_OP_PKCS1_CHECK_1":0,"SSL_OP_PKCS1_CHECK_2":0,"SSL_OP_SINGLE_DH_USE":1048576,"SSL_OP_SINGLE_ECDH_USE":524288,"SSL_OP_SSLEAY_080_CLIENT_DH_BUG":128,"SSL_OP_SSLREF2_REUSE_CERT_TYPE_BUG":0,"SSL_OP_TLS_BLOCK_PADDING_BUG":512,"SSL_OP_TLS_D5_BUG":256,"SSL_OP_TLS_ROLLBACK_BUG":8388608,"ENGINE_METHOD_DSA":2,"ENGINE_METHOD_DH":4,"ENGINE_METHOD_RAND":8,"ENGINE_METHOD_ECDH":16,"ENGINE_METHOD_ECDSA":32,"ENGINE_METHOD_CIPHERS":64,"ENGINE_METHOD_DIGESTS":128,"ENGINE_METHOD_STORE":256,"ENGINE_METHOD_PKEY_METHS":512,"ENGINE_METHOD_PKEY_ASN1_METHS":1024,"ENGINE_METHOD_ALL":65535,"ENGINE_METHOD_NONE":0,"DH_CHECK_P_NOT_SAFE_PRIME":2,"DH_CHECK_P_NOT_PRIME":1,"DH_UNABLE_TO_CHECK_GENERATOR":4,"DH_NOT_SUITABLE_GENERATOR":8,"NPN_ENABLED":1,"RSA_PKCS1_PADDING":1,"RSA_SSLV23_PADDING":2,"RSA_NO_PADDING":3,"RSA_PKCS1_OAEP_PADDING":4,"RSA_X931_PADDING":5,"RSA_PKCS1_PSS_PADDING":6,"POINT_CONVERSION_COMPRESSED":2,"POINT_CONVERSION_UNCOMPRESSED":4,"POINT_CONVERSION_HYBRID":6,"F_OK":0,"R_OK":4,"W_OK":2,"X_OK":1,"UV_UDP_REUSEADDR":4}\')}},e={};function r(n){var i=e[n];if(void 0!==i)return i.exports;var o=e[n]={exports:{}};return t[n].call(o.exports,o,o.exports,r),o.exports}return r.g=function(){if("object"==typeof globalThis)return globalThis;try{return this||new Function("return this")()}catch(t){if("object"==typeof window)return window}}(),r(7033)})()));'},990:e=>{e.exports='(function webpackUniversalModuleDefinition(root,factory){if(typeof exports==="object"&&typeof module==="object"){module.exports=exports=factory()}else if(typeof define==="function"&&define.amd){define([],factory)}else{globalThis.JSEncrypt=factory()}})(this,()=>{return(()=>{var __webpack_modules__={"./lib/JSEncrypt.js":(__unused_webpack_module,__webpack_exports__,__webpack_require__)=>{"use strict";eval(\'__webpack_require__.r(__webpack_exports__);\\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\\n/* harmony export */ "JSEncrypt": () => (/* binding */ JSEncrypt)\\n/* harmony export */ });\\n/* harmony import */ var _lib_jsbn_base64__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./lib/jsbn/base64 */ "./lib/lib/jsbn/base64.js");\\n/* harmony import */ var _JSEncryptRSAKey__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./JSEncryptRSAKey */ "./lib/JSEncryptRSAKey.js");\\n/* provided dependency */ var process = __webpack_require__(/*! process/browser */ "./node_modules/process/browser.js");\\nvar _a;\\n\\n\\nvar version = typeof process !== \\\'undefined\\\'\\n ? (_a = process.env) === null || _a === void 0 ? void 0 : "3.3.2"\\n : undefined;\\n/**\\n *\\n * @param {Object} [options = {}] - An object to customize JSEncrypt behaviour\\n * possible parameters are:\\n * - default_key_size {number} default: 1024 the key size in bit\\n * - default_public_exponent {string} default: \\\'010001\\\' the hexadecimal representation of the public exponent\\n * - log {boolean} default: false whether log warn/error or not\\n * @constructor\\n */\\nvar JSEncrypt = /** @class */ (function () {\\n function JSEncrypt(options) {\\n if (options === void 0) { options = {}; }\\n options = options || {};\\n this.default_key_size = options.default_key_size\\n ? parseInt(options.default_key_size, 10)\\n : 1024;\\n this.default_public_exponent = options.default_public_exponent || "010001"; // 65537 default openssl public exponent for rsa key type\\n this.log = options.log || false;\\n // The private and public key.\\n this.key = null;\\n }\\n /**\\n * Method to set the rsa key parameter (one method is enough to set both the public\\n * and the private key, since the private key contains the public key paramenters)\\n * Log a warning if logs are enabled\\n * @param {Object|string} key the pem encoded string or an object (with or without header/footer)\\n * @public\\n */\\n JSEncrypt.prototype.setKey = function (key) {\\n if (this.log && this.key) {\\n console.warn("A key was already set, overriding existing.");\\n }\\n this.key = new _JSEncryptRSAKey__WEBPACK_IMPORTED_MODULE_1__.JSEncryptRSAKey(key);\\n };\\n /**\\n * Proxy method for setKey, for api compatibility\\n * @see setKey\\n * @public\\n */\\n JSEncrypt.prototype.setPrivateKey = function (privkey) {\\n // Create the key.\\n this.setKey(privkey);\\n };\\n /**\\n * Proxy method for setKey, for api compatibility\\n * @see setKey\\n * @public\\n */\\n JSEncrypt.prototype.setPublicKey = function (pubkey) {\\n // Sets the public key.\\n this.setKey(pubkey);\\n };\\n /**\\n * Proxy method for RSAKey object\\\'s decrypt, decrypt the string using the private\\n * components of the rsa key object. Note that if the object was not set will be created\\n * on the fly (by the getKey method) using the parameters passed in the JSEncrypt constructor\\n * @param {string} str base64 encoded crypted string to decrypt\\n * @return {string} the decrypted string\\n * @public\\n */\\n JSEncrypt.prototype.decrypt = function (str) {\\n // Return the decrypted string.\\n try {\\n return this.getKey().decrypt((0,_lib_jsbn_base64__WEBPACK_IMPORTED_MODULE_0__.b64tohex)(str));\\n }\\n catch (ex) {\\n return false;\\n }\\n };\\n /**\\n * Proxy method for RSAKey object\\\'s encrypt, encrypt the string using the public\\n * components of the rsa key object. Note that if the object was not set will be created\\n * on the fly (by the getKey method) using the parameters passed in the JSEncrypt constructor\\n * @param {string} str the string to encrypt\\n * @return {string} the encrypted string encoded in base64\\n * @public\\n */\\n JSEncrypt.prototype.encrypt = function (str) {\\n // Return the encrypted string.\\n try {\\n return (0,_lib_jsbn_base64__WEBPACK_IMPORTED_MODULE_0__.hex2b64)(this.getKey().encrypt(str));\\n }\\n catch (ex) {\\n return false;\\n }\\n };\\n /**\\n * Proxy method for RSAKey object\\\'s sign.\\n * @param {string} str the string to sign\\n * @param {function} digestMethod hash method\\n * @param {string} digestName the name of the hash algorithm\\n * @return {string} the signature encoded in base64\\n * @public\\n */\\n JSEncrypt.prototype.sign = function (str, digestMethod, digestName) {\\n // return the RSA signature of \\\'str\\\' in \\\'hex\\\' format.\\n try {\\n return (0,_lib_jsbn_base64__WEBPACK_IMPORTED_MODULE_0__.hex2b64)(this.getKey().sign(str, digestMethod, digestName));\\n }\\n catch (ex) {\\n return false;\\n }\\n };\\n /**\\n * Proxy method for RSAKey object\\\'s verify.\\n * @param {string} str the string to verify\\n * @param {string} signature the signature encoded in base64 to compare the string to\\n * @param {function} digestMethod hash method\\n * @return {boolean} whether the data and signature match\\n * @public\\n */\\n JSEncrypt.prototype.verify = function (str, signature, digestMethod) {\\n // Return the decrypted \\\'digest\\\' of the signature.\\n try {\\n return this.getKey().verify(str, (0,_lib_jsbn_base64__WEBPACK_IMPORTED_MODULE_0__.b64tohex)(signature), digestMethod);\\n }\\n catch (ex) {\\n return false;\\n }\\n };\\n /**\\n * Getter for the current JSEncryptRSAKey object. If it doesn\\\'t exists a new object\\n * will be created and returned\\n * @param {callback} [cb] the callback to be called if we want the key to be generated\\n * in an async fashion\\n * @returns {JSEncryptRSAKey} the JSEncryptRSAKey object\\n * @public\\n */\\n JSEncrypt.prototype.getKey = function (cb) {\\n // Only create new if it does not exist.\\n if (!this.key) {\\n // Get a new private key.\\n this.key = new _JSEncryptRSAKey__WEBPACK_IMPORTED_MODULE_1__.JSEncryptRSAKey();\\n if (cb && {}.toString.call(cb) === "[object Function]") {\\n this.key.generateAsync(this.default_key_size, this.default_public_exponent, cb);\\n return;\\n }\\n // Generate the key.\\n this.key.generate(this.default_key_size, this.default_public_exponent);\\n }\\n return this.key;\\n };\\n /**\\n * Returns the pem encoded representation of the private key\\n * If the key doesn\\\'t exists a new key will be created\\n * @returns {string} pem encoded representation of the private key WITH header and footer\\n * @public\\n */\\n JSEncrypt.prototype.getPrivateKey = function () {\\n // Return the private representation of this key.\\n return this.getKey().getPrivateKey();\\n };\\n /**\\n * Returns the pem encoded representation of the private key\\n * If the key doesn\\\'t exists a new key will be created\\n * @returns {string} pem encoded representation of the private key WITHOUT header and footer\\n * @public\\n */\\n JSEncrypt.prototype.getPrivateKeyB64 = function () {\\n // Return the private representation of this key.\\n return this.getKey().getPrivateBaseKeyB64();\\n };\\n /**\\n * Returns the pem encoded representation of the public key\\n * If the key doesn\\\'t exists a new key will be created\\n * @returns {string} pem encoded representation of the public key WITH header and footer\\n * @public\\n */\\n JSEncrypt.prototype.getPublicKey = function () {\\n // Return the private representation of this key.\\n return this.getKey().getPublicKey();\\n };\\n /**\\n * Returns the pem encoded representation of the public key\\n * If the key doesn\\\'t exists a new key will be created\\n * @returns {string} pem encoded representation of the public key WITHOUT header and footer\\n * @public\\n */\\n JSEncrypt.prototype.getPublicKeyB64 = function () {\\n // Return the private representation of this key.\\n return this.getKey().getPublicBaseKeyB64();\\n };\\nvar b64map="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/";var b64pad="=";var base64DecodeChars=new Array(-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,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,-1,62,-1,-1,-1,63,52,53,54,55,56,57,58,59,60,61,-1,-1,-1,-1,-1,-1,-1,0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,-1,-1,-1,-1,-1,-1,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,-1,-1,-1,-1,-1);function btoa(str){var out,i,len;var c1,c2,c3;len=str.length;i=0;out="";while(i>2);out+=b64map.charAt((c1&3)<<4);out+="==";break}c2=str.charCodeAt(i++);if(i==len){out+=b64map.charAt(c1>>2);out+=b64map.charAt((c1&3)<<4|(c2&240)>>4);out+=b64map.charAt((c2&15)<<2);out+="=";break}c3=str.charCodeAt(i++);out+=b64map.charAt(c1>>2);out+=b64map.charAt((c1&3)<<4|(c2&240)>>4);out+=b64map.charAt((c2&15)<<2|(c3&192)>>6);out+=b64map.charAt(c3&63)}return out}function atob(str){var c1,c2,c3,c4;var i,len,out;len=str.length;i=0;out="";while(i>4);do{c3=str.charCodeAt(i++)&255;if(c3==61)return out;c3=base64DecodeChars[c3]}while(i>2);do{c4=str.charCodeAt(i++)&255;if(c4==61)return out;c4=base64DecodeChars[c4]}while(i>6)+b64map.charAt(c&63)}if(i+1==h.length){c=parseInt(h.substring(i,i+1),16);ret+=b64map.charAt(c<<2)}else if(i+2==h.length){c=parseInt(h.substring(i,i+2),16);ret+=b64map.charAt(c>>2)+b64map.charAt((c&3)<<4)}while((ret.length&3)>0)ret+=b64pad;return ret}function hexToBytes(hex){for(var bytes=[],c=0;c>>4).toString(16));hex.push((bytes[i]&15).toString(16))}return hex.join("")}function b64tohex(str){for(var i=0,bin=atob(str.replace(/[ \\\\r\\\\n]+$/,"")),hex=[];i>3};JSEncrypt.prototype.decryptUnicodeLong=function(string){var k=this.getKey();var maxLength=(k.n.bitLength()+7>>3)*2;try{var hexString=b64tohex(string);var decryptedString="";var rexStr=".{1,"+maxLength+"}";var rex=new RegExp(rexStr,"g");var subStrArray=hexString.match(rex);if(subStrArray){subStrArray.forEach(function(entry){decryptedString+=k.decrypt(entry)});return decryptedString}}catch(ex){console.log("加密错误:"+ex.message);return false}};JSEncrypt.prototype.encryptUnicodeLong=function(string){var k=this.getKey();var maxLength=(k.n.bitLength()+7>>3)-11;try{var subStr="",encryptedString="";var subStart=0,subEnd=0;var bitLen=0,tmpPoint=0;for(var i=0,len=string.length;imaxLength){subStr=string.substring(subStart,subEnd);encryptedString+=k.encrypt(subStr);subStart=subEnd;bitLen=bitLen-tmpPoint}else{subEnd=i;tmpPoint=bitLen}}subStr=string.substring(subStart,len);encryptedString+=k.encrypt(subStr);return hex2b64(encryptedString)}catch(ex){console.log("解密错误:"+ex.message);return false}}; JSEncrypt.version = version;\\n return JSEncrypt;\\n}());\\n\\n\\n\\n//# sourceURL=webpack://JSEncrypt/./lib/JSEncrypt.js?\')},"./lib/JSEncryptRSAKey.js":(__unused_webpack_module,__webpack_exports__,__webpack_require__)=>{"use strict";eval(\'__webpack_require__.r(__webpack_exports__);\\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\\n/* harmony export */ "JSEncryptRSAKey": () => (/* binding */ JSEncryptRSAKey)\\n/* harmony export */ });\\n/* harmony import */ var _lib_jsbn_base64__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./lib/jsbn/base64 */ "./lib/lib/jsbn/base64.js");\\n/* harmony import */ var _lib_asn1js_hex__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./lib/asn1js/hex */ "./lib/lib/asn1js/hex.js");\\n/* harmony import */ var _lib_asn1js_base64__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./lib/asn1js/base64 */ "./lib/lib/asn1js/base64.js");\\n/* harmony import */ var _lib_asn1js_asn1__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./lib/asn1js/asn1 */ "./lib/lib/asn1js/asn1.js");\\n/* harmony import */ var _lib_jsbn_rsa__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./lib/jsbn/rsa */ "./lib/lib/jsbn/rsa.js");\\n/* harmony import */ var _lib_jsbn_jsbn__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./lib/jsbn/jsbn */ "./lib/lib/jsbn/jsbn.js");\\n/* harmony import */ var _lib_jsrsasign_asn1_1_0__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./lib/jsrsasign/asn1-1.0 */ "./lib/lib/jsrsasign/asn1-1.0.js");\\nvar __extends = (undefined && undefined.__extends) || (function () {\\n var extendStatics = function (d, b) {\\n extendStatics = Object.setPrototypeOf ||\\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\\n function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };\\n return extendStatics(d, b);\\n };\\n return function (d, b) {\\n if (typeof b !== "function" && b !== null)\\n throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");\\n extendStatics(d, b);\\n function __() { this.constructor = d; }\\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\\n };\\n})();\\n\\n\\n\\n\\n\\n\\n\\n/**\\n * Create a new JSEncryptRSAKey that extends Tom Wu\\\'s RSA key object.\\n * This object is just a decorator for parsing the key parameter\\n * @param {string|Object} key - The key in string format, or an object containing\\n * the parameters needed to build a RSAKey object.\\n * @constructor\\n */\\nvar JSEncryptRSAKey = /** @class */ (function (_super) {\\n __extends(JSEncryptRSAKey, _super);\\n function JSEncryptRSAKey(key) {\\n var _this = _super.call(this) || this;\\n // Call the super constructor.\\n // RSAKey.call(this);\\n // If a key key was provided.\\n if (key) {\\n // If this is a string...\\n if (typeof key === "string") {\\n _this.parseKey(key);\\n }\\n else if (JSEncryptRSAKey.hasPrivateKeyProperty(key) ||\\n JSEncryptRSAKey.hasPublicKeyProperty(key)) {\\n // Set the values for the key.\\n _this.parsePropertiesFrom(key);\\n }\\n }\\n return _this;\\n }\\n /**\\n * Method to parse a pem encoded string containing both a public or private key.\\n * The method will translate the pem encoded string in a der encoded string and\\n * will parse private key and public key parameters. This method accepts public key\\n * in the rsaencryption pkcs #1 format (oid: 1.2.840.113549.1.1.1).\\n *\\n * @todo Check how many rsa formats use the same format of pkcs #1.\\n *\\n * The format is defined as:\\n * PublicKeyInfo ::= SEQUENCE {\\n * algorithm AlgorithmIdentifier,\\n * PublicKey BIT STRING\\n * }\\n * Where AlgorithmIdentifier is:\\n * AlgorithmIdentifier ::= SEQUENCE {\\n * algorithm OBJECT IDENTIFIER, the OID of the enc algorithm\\n * parameters ANY DEFINED BY algorithm OPTIONAL (NULL for PKCS #1)\\n * }\\n * and PublicKey is a SEQUENCE encapsulated in a BIT STRING\\n * RSAPublicKey ::= SEQUENCE {\\n * modulus INTEGER, -- n\\n * publicExponent INTEGER -- e\\n * }\\n * it\\\'s possible to examine the structure of the keys obtained from openssl using\\n * an asn.1 dumper as the one used here to parse the components: http://lapo.it/asn1js/\\n * @argument {string} pem the pem encoded string, can include the BEGIN/END header/footer\\n * @private\\n */\\n JSEncryptRSAKey.prototype.parseKey = function (pem) {\\n try {\\n var modulus = 0;\\n var public_exponent = 0;\\n var reHex = /^\\\\s*(?:[0-9A-Fa-f][0-9A-Fa-f]\\\\s*)+$/;\\n var der = reHex.test(pem) ? _lib_asn1js_hex__WEBPACK_IMPORTED_MODULE_1__.Hex.decode(pem) : _lib_asn1js_base64__WEBPACK_IMPORTED_MODULE_2__.Base64.unarmor(pem);\\n var asn1 = _lib_asn1js_asn1__WEBPACK_IMPORTED_MODULE_3__.ASN1.decode(der);\\n // Fixes a bug with OpenSSL 1.0+ private keys\\n if (asn1.sub.length === 3) {\\n asn1 = asn1.sub[2].sub[0];\\n }\\n if (asn1.sub.length === 9) {\\n // Parse the private key.\\n modulus = asn1.sub[1].getHexStringValue(); // bigint\\n this.n = (0,_lib_jsbn_jsbn__WEBPACK_IMPORTED_MODULE_5__.parseBigInt)(modulus, 16);\\n public_exponent = asn1.sub[2].getHexStringValue(); // int\\n this.e = parseInt(public_exponent, 16);\\n var private_exponent = asn1.sub[3].getHexStringValue(); // bigint\\n this.d = (0,_lib_jsbn_jsbn__WEBPACK_IMPORTED_MODULE_5__.parseBigInt)(private_exponent, 16);\\n var prime1 = asn1.sub[4].getHexStringValue(); // bigint\\n this.p = (0,_lib_jsbn_jsbn__WEBPACK_IMPORTED_MODULE_5__.parseBigInt)(prime1, 16);\\n var prime2 = asn1.sub[5].getHexStringValue(); // bigint\\n this.q = (0,_lib_jsbn_jsbn__WEBPACK_IMPORTED_MODULE_5__.parseBigInt)(prime2, 16);\\n var exponent1 = asn1.sub[6].getHexStringValue(); // bigint\\n this.dmp1 = (0,_lib_jsbn_jsbn__WEBPACK_IMPORTED_MODULE_5__.parseBigInt)(exponent1, 16);\\n var exponent2 = asn1.sub[7].getHexStringValue(); // bigint\\n this.dmq1 = (0,_lib_jsbn_jsbn__WEBPACK_IMPORTED_MODULE_5__.parseBigInt)(exponent2, 16);\\n var coefficient = asn1.sub[8].getHexStringValue(); // bigint\\n this.coeff = (0,_lib_jsbn_jsbn__WEBPACK_IMPORTED_MODULE_5__.parseBigInt)(coefficient, 16);\\n }\\n else if (asn1.sub.length === 2) {\\n if (asn1.sub[0].sub) {\\n // Parse ASN.1 SubjectPublicKeyInfo type as defined by X.509\\n var bit_string = asn1.sub[1];\\n var sequence = bit_string.sub[0];\\n modulus = sequence.sub[0].getHexStringValue();\\n this.n = (0,_lib_jsbn_jsbn__WEBPACK_IMPORTED_MODULE_5__.parseBigInt)(modulus, 16);\\n public_exponent = sequence.sub[1].getHexStringValue();\\n this.e = parseInt(public_exponent, 16);\\n }\\n else {\\n // Parse ASN.1 RSAPublicKey type as defined by PKCS #1\\n modulus = asn1.sub[0].getHexStringValue();\\n this.n = (0,_lib_jsbn_jsbn__WEBPACK_IMPORTED_MODULE_5__.parseBigInt)(modulus, 16);\\n public_exponent = asn1.sub[1].getHexStringValue();\\n this.e = parseInt(public_exponent, 16);\\n }\\n }\\n else {\\n return false;\\n }\\n return true;\\n }\\n catch (ex) {\\n return false;\\n }\\n };\\n /**\\n * Translate rsa parameters in a hex encoded string representing the rsa key.\\n *\\n * The translation follow the ASN.1 notation :\\n * RSAPrivateKey ::= SEQUENCE {\\n * version Version,\\n * modulus INTEGER, -- n\\n * publicExponent INTEGER, -- e\\n * privateExponent INTEGER, -- d\\n * prime1 INTEGER, -- p\\n * prime2 INTEGER, -- q\\n * exponent1 INTEGER, -- d mod (p1)\\n * exponent2 INTEGER, -- d mod (q-1)\\n * coefficient INTEGER, -- (inverse of q) mod p\\n * }\\n * @returns {string} DER Encoded String representing the rsa private key\\n * @private\\n */\\n JSEncryptRSAKey.prototype.getPrivateBaseKey = function () {\\n var options = {\\n array: [\\n new _lib_jsrsasign_asn1_1_0__WEBPACK_IMPORTED_MODULE_6__.KJUR.asn1.DERInteger({ int: 0 }),\\n new _lib_jsrsasign_asn1_1_0__WEBPACK_IMPORTED_MODULE_6__.KJUR.asn1.DERInteger({ bigint: this.n }),\\n new _lib_jsrsasign_asn1_1_0__WEBPACK_IMPORTED_MODULE_6__.KJUR.asn1.DERInteger({ int: this.e }),\\n new _lib_jsrsasign_asn1_1_0__WEBPACK_IMPORTED_MODULE_6__.KJUR.asn1.DERInteger({ bigint: this.d }),\\n new _lib_jsrsasign_asn1_1_0__WEBPACK_IMPORTED_MODULE_6__.KJUR.asn1.DERInteger({ bigint: this.p }),\\n new _lib_jsrsasign_asn1_1_0__WEBPACK_IMPORTED_MODULE_6__.KJUR.asn1.DERInteger({ bigint: this.q }),\\n new _lib_jsrsasign_asn1_1_0__WEBPACK_IMPORTED_MODULE_6__.KJUR.asn1.DERInteger({ bigint: this.dmp1 }),\\n new _lib_jsrsasign_asn1_1_0__WEBPACK_IMPORTED_MODULE_6__.KJUR.asn1.DERInteger({ bigint: this.dmq1 }),\\n new _lib_jsrsasign_asn1_1_0__WEBPACK_IMPORTED_MODULE_6__.KJUR.asn1.DERInteger({ bigint: this.coeff }),\\n ],\\n };\\n var seq = new _lib_jsrsasign_asn1_1_0__WEBPACK_IMPORTED_MODULE_6__.KJUR.asn1.DERSequence(options);\\n return seq.getEncodedHex();\\n };\\n /**\\n * base64 (pem) encoded version of the DER encoded representation\\n * @returns {string} pem encoded representation without header and footer\\n * @public\\n */\\n JSEncryptRSAKey.prototype.getPrivateBaseKeyB64 = function () {\\n return (0,_lib_jsbn_base64__WEBPACK_IMPORTED_MODULE_0__.hex2b64)(this.getPrivateBaseKey());\\n };\\n /**\\n * Translate rsa parameters in a hex encoded string representing the rsa public key.\\n * The representation follow the ASN.1 notation :\\n * PublicKeyInfo ::= SEQUENCE {\\n * algorithm AlgorithmIdentifier,\\n * PublicKey BIT STRING\\n * }\\n * Where AlgorithmIdentifier is:\\n * AlgorithmIdentifier ::= SEQUENCE {\\n * algorithm OBJECT IDENTIFIER, the OID of the enc algorithm\\n * parameters ANY DEFINED BY algorithm OPTIONAL (NULL for PKCS #1)\\n * }\\n * and PublicKey is a SEQUENCE encapsulated in a BIT STRING\\n * RSAPublicKey ::= SEQUENCE {\\n * modulus INTEGER, -- n\\n * publicExponent INTEGER -- e\\n * }\\n * @returns {string} DER Encoded String representing the rsa public key\\n * @private\\n */\\n JSEncryptRSAKey.prototype.getPublicBaseKey = function () {\\n var first_sequence = new _lib_jsrsasign_asn1_1_0__WEBPACK_IMPORTED_MODULE_6__.KJUR.asn1.DERSequence({\\n array: [\\n new _lib_jsrsasign_asn1_1_0__WEBPACK_IMPORTED_MODULE_6__.KJUR.asn1.DERObjectIdentifier({ oid: "1.2.840.113549.1.1.1" }),\\n new _lib_jsrsasign_asn1_1_0__WEBPACK_IMPORTED_MODULE_6__.KJUR.asn1.DERNull(),\\n ],\\n });\\n var second_sequence = new _lib_jsrsasign_asn1_1_0__WEBPACK_IMPORTED_MODULE_6__.KJUR.asn1.DERSequence({\\n array: [\\n new _lib_jsrsasign_asn1_1_0__WEBPACK_IMPORTED_MODULE_6__.KJUR.asn1.DERInteger({ bigint: this.n }),\\n new _lib_jsrsasign_asn1_1_0__WEBPACK_IMPORTED_MODULE_6__.KJUR.asn1.DERInteger({ int: this.e }),\\n ],\\n });\\n var bit_string = new _lib_jsrsasign_asn1_1_0__WEBPACK_IMPORTED_MODULE_6__.KJUR.asn1.DERBitString({\\n hex: "00" + second_sequence.getEncodedHex(),\\n });\\n var seq = new _lib_jsrsasign_asn1_1_0__WEBPACK_IMPORTED_MODULE_6__.KJUR.asn1.DERSequence({\\n array: [first_sequence, bit_string],\\n });\\n return seq.getEncodedHex();\\n };\\n /**\\n * base64 (pem) encoded version of the DER encoded representation\\n * @returns {string} pem encoded representation without header and footer\\n * @public\\n */\\n JSEncryptRSAKey.prototype.getPublicBaseKeyB64 = function () {\\n return (0,_lib_jsbn_base64__WEBPACK_IMPORTED_MODULE_0__.hex2b64)(this.getPublicBaseKey());\\n };\\n /**\\n * wrap the string in block of width chars. The default value for rsa keys is 64\\n * characters.\\n * @param {string} str the pem encoded string without header and footer\\n * @param {Number} [width=64] - the length the string has to be wrapped at\\n * @returns {string}\\n * @private\\n */\\n JSEncryptRSAKey.wordwrap = function (str, width) {\\n width = width || 64;\\n if (!str) {\\n return str;\\n }\\n var regex = "(.{1," + width + "})( +|$\\\\n?)|(.{1," + width + "})";\\n return str.match(RegExp(regex, "g")).join("\\\\n");\\n };\\n /**\\n * Retrieve the pem encoded private key\\n * @returns {string} the pem encoded private key with header/footer\\n * @public\\n */\\n JSEncryptRSAKey.prototype.getPrivateKey = function () {\\n var key = "-----BEGIN RSA PRIVATE KEY-----\\\\n";\\n key += JSEncryptRSAKey.wordwrap(this.getPrivateBaseKeyB64()) + "\\\\n";\\n key += "-----END RSA PRIVATE KEY-----";\\n return key;\\n };\\n /**\\n * Retrieve the pem encoded public key\\n * @returns {string} the pem encoded public key with header/footer\\n * @public\\n */\\n JSEncryptRSAKey.prototype.getPublicKey = function () {\\n var key = "-----BEGIN PUBLIC KEY-----\\\\n";\\n key += JSEncryptRSAKey.wordwrap(this.getPublicBaseKeyB64()) + "\\\\n";\\n key += "-----END PUBLIC KEY-----";\\n return key;\\n };\\n /**\\n * Check if the object contains the necessary parameters to populate the rsa modulus\\n * and public exponent parameters.\\n * @param {Object} [obj={}] - An object that may contain the two public key\\n * parameters\\n * @returns {boolean} true if the object contains both the modulus and the public exponent\\n * properties (n and e)\\n * @todo check for types of n and e. N should be a parseable bigInt object, E should\\n * be a parseable integer number\\n * @private\\n */\\n JSEncryptRSAKey.hasPublicKeyProperty = function (obj) {\\n obj = obj || {};\\n return obj.hasOwnProperty("n") && obj.hasOwnProperty("e");\\n };\\n /**\\n * Check if the object contains ALL the parameters of an RSA key.\\n * @param {Object} [obj={}] - An object that may contain nine rsa key\\n * parameters\\n * @returns {boolean} true if the object contains all the parameters needed\\n * @todo check for types of the parameters all the parameters but the public exponent\\n * should be parseable bigint objects, the public exponent should be a parseable integer number\\n * @private\\n */\\n JSEncryptRSAKey.hasPrivateKeyProperty = function (obj) {\\n obj = obj || {};\\n return (obj.hasOwnProperty("n") &&\\n obj.hasOwnProperty("e") &&\\n obj.hasOwnProperty("d") &&\\n obj.hasOwnProperty("p") &&\\n obj.hasOwnProperty("q") &&\\n obj.hasOwnProperty("dmp1") &&\\n obj.hasOwnProperty("dmq1") &&\\n obj.hasOwnProperty("coeff"));\\n };\\n /**\\n * Parse the properties of obj in the current rsa object. Obj should AT LEAST\\n * include the modulus and public exponent (n, e) parameters.\\n * @param {Object} obj - the object containing rsa parameters\\n * @private\\n */\\n JSEncryptRSAKey.prototype.parsePropertiesFrom = function (obj) {\\n this.n = obj.n;\\n this.e = obj.e;\\n if (obj.hasOwnProperty("d")) {\\n this.d = obj.d;\\n this.p = obj.p;\\n this.q = obj.q;\\n this.dmp1 = obj.dmp1;\\n this.dmq1 = obj.dmq1;\\n this.coeff = obj.coeff;\\n }\\n };\\n return JSEncryptRSAKey;\\n}(_lib_jsbn_rsa__WEBPACK_IMPORTED_MODULE_4__.RSAKey));\\n\\n\\n\\n//# sourceURL=webpack://JSEncrypt/./lib/JSEncryptRSAKey.js?\')},"./lib/index.js":(__unused_webpack_module,__webpack_exports__,__webpack_require__)=>{"use strict";eval(\'__webpack_require__.r(__webpack_exports__);\\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\\n/* harmony export */ "JSEncrypt": () => (/* reexport safe */ _JSEncrypt__WEBPACK_IMPORTED_MODULE_0__.JSEncrypt),\\n/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__)\\n/* harmony export */ });\\n/* harmony import */ var _JSEncrypt__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./JSEncrypt */ "./lib/JSEncrypt.js");\\n\\n\\n/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (_JSEncrypt__WEBPACK_IMPORTED_MODULE_0__.JSEncrypt);\\n\\n\\n//# sourceURL=webpack://JSEncrypt/./lib/index.js?\')},"./lib/lib/asn1js/asn1.js":(__unused_webpack_module,__webpack_exports__,__webpack_require__)=>{"use strict";eval(\'__webpack_require__.r(__webpack_exports__);\\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\\n/* harmony export */ "ASN1": () => (/* binding */ ASN1),\\n/* harmony export */ "ASN1Tag": () => (/* binding */ ASN1Tag),\\n/* harmony export */ "Stream": () => (/* binding */ Stream)\\n/* harmony export */ });\\n/* harmony import */ var _int10__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./int10 */ "./lib/lib/asn1js/int10.js");\\n// ASN.1 JavaScript decoder\\n// Copyright (c) 2008-2014 Lapo Luchini \\n// Permission to use, copy, modify, and/or distribute this software for any\\n// purpose with or without fee is hereby granted, provided that the above\\n// copyright notice and this permission notice appear in all copies.\\n//\\n// THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES\\n// WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF\\n// MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR\\n// ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES\\n// WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN\\n// ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF\\n// OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.\\n/*jshint browser: true, strict: true, immed: true, latedef: true, undef: true, regexdash: false */\\n/*global oids */\\n\\nvar ellipsis = "\\\\u2026";\\nvar reTimeS = /^(\\\\d\\\\d)(0[1-9]|1[0-2])(0[1-9]|[12]\\\\d|3[01])([01]\\\\d|2[0-3])(?:([0-5]\\\\d)(?:([0-5]\\\\d)(?:[.,](\\\\d{1,3}))?)?)?(Z|[-+](?:[0]\\\\d|1[0-2])([0-5]\\\\d)?)?$/;\\nvar reTimeL = /^(\\\\d\\\\d\\\\d\\\\d)(0[1-9]|1[0-2])(0[1-9]|[12]\\\\d|3[01])([01]\\\\d|2[0-3])(?:([0-5]\\\\d)(?:([0-5]\\\\d)(?:[.,](\\\\d{1,3}))?)?)?(Z|[-+](?:[0]\\\\d|1[0-2])([0-5]\\\\d)?)?$/;\\nfunction stringCut(str, len) {\\n if (str.length > len) {\\n str = str.substring(0, len) + ellipsis;\\n }\\n return str;\\n}\\nvar Stream = /** @class */ (function () {\\n function Stream(enc, pos) {\\n this.hexDigits = "0123456789ABCDEF";\\n if (enc instanceof Stream) {\\n this.enc = enc.enc;\\n this.pos = enc.pos;\\n }\\n else {\\n // enc should be an array or a binary string\\n this.enc = enc;\\n this.pos = pos;\\n }\\n }\\n Stream.prototype.get = function (pos) {\\n if (pos === undefined) {\\n pos = this.pos++;\\n }\\n if (pos >= this.enc.length) {\\n throw new Error("Requesting byte offset ".concat(pos, " on a stream of length ").concat(this.enc.length));\\n }\\n return ("string" === typeof this.enc) ? this.enc.charCodeAt(pos) : this.enc[pos];\\n };\\n Stream.prototype.hexByte = function (b) {\\n return this.hexDigits.charAt((b >> 4) & 0xF) + this.hexDigits.charAt(b & 0xF);\\n };\\n Stream.prototype.hexDump = function (start, end, raw) {\\n var s = "";\\n for (var i = start; i < end; ++i) {\\n s += this.hexByte(this.get(i));\\n if (raw !== true) {\\n switch (i & 0xF) {\\n case 0x7:\\n s += " ";\\n break;\\n case 0xF:\\n s += "\\\\n";\\n break;\\n default:\\n s += " ";\\n }\\n }\\n }\\n return s;\\n };\\n Stream.prototype.isASCII = function (start, end) {\\n for (var i = start; i < end; ++i) {\\n var c = this.get(i);\\n if (c < 32 || c > 176) {\\n return false;\\n }\\n }\\n return true;\\n };\\n Stream.prototype.parseStringISO = function (start, end) {\\n var s = "";\\n for (var i = start; i < end; ++i) {\\n s += String.fromCharCode(this.get(i));\\n }\\n return s;\\n };\\n Stream.prototype.parseStringUTF = function (start, end) {\\n var s = "";\\n for (var i = start; i < end;) {\\n var c = this.get(i++);\\n if (c < 128) {\\n s += String.fromCharCode(c);\\n }\\n else if ((c > 191) && (c < 224)) {\\n s += String.fromCharCode(((c & 0x1F) << 6) | (this.get(i++) & 0x3F));\\n }\\n else {\\n s += String.fromCharCode(((c & 0x0F) << 12) | ((this.get(i++) & 0x3F) << 6) | (this.get(i++) & 0x3F));\\n }\\n }\\n return s;\\n };\\n Stream.prototype.parseStringBMP = function (start, end) {\\n var str = "";\\n var hi;\\n var lo;\\n for (var i = start; i < end;) {\\n hi = this.get(i++);\\n lo = this.get(i++);\\n str += String.fromCharCode((hi << 8) | lo);\\n }\\n return str;\\n };\\n Stream.prototype.parseTime = function (start, end, shortYear) {\\n var s = this.parseStringISO(start, end);\\n var m = (shortYear ? reTimeS : reTimeL).exec(s);\\n if (!m) {\\n return "Unrecognized time: " + s;\\n }\\n if (shortYear) {\\n // to avoid querying the timer, use the fixed range [1970, 2069]\\n // it will conform with ITU X.400 [-10, +40] sliding window until 2030\\n m[1] = +m[1];\\n m[1] += (+m[1] < 70) ? 2000 : 1900;\\n }\\n s = m[1] + "-" + m[2] + "-" + m[3] + " " + m[4];\\n if (m[5]) {\\n s += ":" + m[5];\\n if (m[6]) {\\n s += ":" + m[6];\\n if (m[7]) {\\n s += "." + m[7];\\n }\\n }\\n }\\n if (m[8]) {\\n s += " UTC";\\n if (m[8] != "Z") {\\n s += m[8];\\n if (m[9]) {\\n s += ":" + m[9];\\n }\\n }\\n }\\n return s;\\n };\\n Stream.prototype.parseInteger = function (start, end) {\\n var v = this.get(start);\\n var neg = (v > 127);\\n var pad = neg ? 255 : 0;\\n var len;\\n var s = "";\\n // skip unuseful bits (not allowed in DER)\\n while (v == pad && ++start < end) {\\n v = this.get(start);\\n }\\n len = end - start;\\n if (len === 0) {\\n return neg ? -1 : 0;\\n }\\n // show bit length of huge integers\\n if (len > 4) {\\n s = v;\\n len <<= 3;\\n while (((+s ^ pad) & 0x80) == 0) {\\n s = +s << 1;\\n --len;\\n }\\n s = "(" + len + " bit)\\\\n";\\n }\\n // decode the integer\\n if (neg) {\\n v = v - 256;\\n }\\n var n = new _int10__WEBPACK_IMPORTED_MODULE_0__.Int10(v);\\n for (var i = start + 1; i < end; ++i) {\\n n.mulAdd(256, this.get(i));\\n }\\n return s + n.toString();\\n };\\n Stream.prototype.parseBitString = function (start, end, maxLength) {\\n var unusedBit = this.get(start);\\n var lenBit = ((end - start - 1) << 3) - unusedBit;\\n var intro = "(" + lenBit + " bit)\\\\n";\\n var s = "";\\n for (var i = start + 1; i < end; ++i) {\\n var b = this.get(i);\\n var skip = (i == end - 1) ? unusedBit : 0;\\n for (var j = 7; j >= skip; --j) {\\n s += (b >> j) & 1 ? "1" : "0";\\n }\\n if (s.length > maxLength) {\\n return intro + stringCut(s, maxLength);\\n }\\n }\\n return intro + s;\\n };\\n Stream.prototype.parseOctetString = function (start, end, maxLength) {\\n if (this.isASCII(start, end)) {\\n return stringCut(this.parseStringISO(start, end), maxLength);\\n }\\n var len = end - start;\\n var s = "(" + len + " byte)\\\\n";\\n maxLength /= 2; // we work in bytes\\n if (len > maxLength) {\\n end = start + maxLength;\\n }\\n for (var i = start; i < end; ++i) {\\n s += this.hexByte(this.get(i));\\n }\\n if (len > maxLength) {\\n s += ellipsis;\\n }\\n return s;\\n };\\n Stream.prototype.parseOID = function (start, end, maxLength) {\\n var s = "";\\n var n = new _int10__WEBPACK_IMPORTED_MODULE_0__.Int10();\\n var bits = 0;\\n for (var i = start; i < end; ++i) {\\n var v = this.get(i);\\n n.mulAdd(128, v & 0x7F);\\n bits += 7;\\n if (!(v & 0x80)) { // finished\\n if (s === "") {\\n n = n.simplify();\\n if (n instanceof _int10__WEBPACK_IMPORTED_MODULE_0__.Int10) {\\n n.sub(80);\\n s = "2." + n.toString();\\n }\\n else {\\n var m = n < 80 ? n < 40 ? 0 : 1 : 2;\\n s = m + "." + (n - m * 40);\\n }\\n }\\n else {\\n s += "." + n.toString();\\n }\\n if (s.length > maxLength) {\\n return stringCut(s, maxLength);\\n }\\n n = new _int10__WEBPACK_IMPORTED_MODULE_0__.Int10();\\n bits = 0;\\n }\\n }\\n if (bits > 0) {\\n s += ".incomplete";\\n }\\n return s;\\n };\\n return Stream;\\n}());\\n\\nvar ASN1 = /** @class */ (function () {\\n function ASN1(stream, header, length, tag, sub) {\\n if (!(tag instanceof ASN1Tag)) {\\n throw new Error("Invalid tag value.");\\n }\\n this.stream = stream;\\n this.header = header;\\n this.length = length;\\n this.tag = tag;\\n this.sub = sub;\\n }\\n ASN1.prototype.typeName = function () {\\n switch (this.tag.tagClass) {\\n case 0: // universal\\n switch (this.tag.tagNumber) {\\n case 0x00:\\n return "EOC";\\n case 0x01:\\n return "BOOLEAN";\\n case 0x02:\\n return "INTEGER";\\n case 0x03:\\n return "BIT_STRING";\\n case 0x04:\\n return "OCTET_STRING";\\n case 0x05:\\n return "NULL";\\n case 0x06:\\n return "OBJECT_IDENTIFIER";\\n case 0x07:\\n return "ObjectDescriptor";\\n case 0x08:\\n return "EXTERNAL";\\n case 0x09:\\n return "REAL";\\n case 0x0A:\\n return "ENUMERATED";\\n case 0x0B:\\n return "EMBEDDED_PDV";\\n case 0x0C:\\n return "UTF8String";\\n case 0x10:\\n return "SEQUENCE";\\n case 0x11:\\n return "SET";\\n case 0x12:\\n return "NumericString";\\n case 0x13:\\n return "PrintableString"; // ASCII subset\\n case 0x14:\\n return "TeletexString"; // aka T61String\\n case 0x15:\\n return "VideotexString";\\n case 0x16:\\n return "IA5String"; // ASCII\\n case 0x17:\\n return "UTCTime";\\n case 0x18:\\n return "GeneralizedTime";\\n case 0x19:\\n return "GraphicString";\\n case 0x1A:\\n return "VisibleString"; // ASCII subset\\n case 0x1B:\\n return "GeneralString";\\n case 0x1C:\\n return "UniversalString";\\n case 0x1E:\\n return "BMPString";\\n }\\n return "Universal_" + this.tag.tagNumber.toString();\\n case 1:\\n return "Application_" + this.tag.tagNumber.toString();\\n case 2:\\n return "[" + this.tag.tagNumber.toString() + "]"; // Context\\n case 3:\\n return "Private_" + this.tag.tagNumber.toString();\\n }\\n };\\n ASN1.prototype.content = function (maxLength) {\\n if (this.tag === undefined) {\\n return null;\\n }\\n if (maxLength === undefined) {\\n maxLength = Infinity;\\n }\\n var content = this.posContent();\\n var len = Math.abs(this.length);\\n if (!this.tag.isUniversal()) {\\n if (this.sub !== null) {\\n return "(" + this.sub.length + " elem)";\\n }\\n return this.stream.parseOctetString(content, content + len, maxLength);\\n }\\n switch (this.tag.tagNumber) {\\n case 0x01: // BOOLEAN\\n return (this.stream.get(content) === 0) ? "false" : "true";\\n case 0x02: // INTEGER\\n return this.stream.parseInteger(content, content + len);\\n case 0x03: // BIT_STRING\\n return this.sub ? "(" + this.sub.length + " elem)" :\\n this.stream.parseBitString(content, content + len, maxLength);\\n case 0x04: // OCTET_STRING\\n return this.sub ? "(" + this.sub.length + " elem)" :\\n this.stream.parseOctetString(content, content + len, maxLength);\\n // case 0x05: // NULL\\n case 0x06: // OBJECT_IDENTIFIER\\n return this.stream.parseOID(content, content + len, maxLength);\\n // case 0x07: // ObjectDescriptor\\n // case 0x08: // EXTERNAL\\n // case 0x09: // REAL\\n // case 0x0A: // ENUMERATED\\n // case 0x0B: // EMBEDDED_PDV\\n case 0x10: // SEQUENCE\\n case 0x11: // SET\\n if (this.sub !== null) {\\n return "(" + this.sub.length + " elem)";\\n }\\n else {\\n return "(no elem)";\\n }\\n case 0x0C: // UTF8String\\n return stringCut(this.stream.parseStringUTF(content, content + len), maxLength);\\n case 0x12: // NumericString\\n case 0x13: // PrintableString\\n case 0x14: // TeletexString\\n case 0x15: // VideotexString\\n case 0x16: // IA5String\\n // case 0x19: // GraphicString\\n case 0x1A: // VisibleString\\n // case 0x1B: // GeneralString\\n // case 0x1C: // UniversalString\\n return stringCut(this.stream.parseStringISO(content, content + len), maxLength);\\n case 0x1E: // BMPString\\n return stringCut(this.stream.parseStringBMP(content, content + len), maxLength);\\n case 0x17: // UTCTime\\n case 0x18: // GeneralizedTime\\n return this.stream.parseTime(content, content + len, (this.tag.tagNumber == 0x17));\\n }\\n return null;\\n };\\n ASN1.prototype.toString = function () {\\n return this.typeName() + "@" + this.stream.pos + "[header:" + this.header + ",length:" + this.length + ",sub:" + ((this.sub === null) ? "null" : this.sub.length) + "]";\\n };\\n ASN1.prototype.toPrettyString = function (indent) {\\n if (indent === undefined) {\\n indent = "";\\n }\\n var s = indent + this.typeName() + " @" + this.stream.pos;\\n if (this.length >= 0) {\\n s += "+";\\n }\\n s += this.length;\\n if (this.tag.tagConstructed) {\\n s += " (constructed)";\\n }\\n else if ((this.tag.isUniversal() && ((this.tag.tagNumber == 0x03) || (this.tag.tagNumber == 0x04))) && (this.sub !== null)) {\\n s += " (encapsulates)";\\n }\\n s += "\\\\n";\\n if (this.sub !== null) {\\n indent += " ";\\n for (var i = 0, max = this.sub.length; i < max; ++i) {\\n s += this.sub[i].toPrettyString(indent);\\n }\\n }\\n return s;\\n };\\n ASN1.prototype.posStart = function () {\\n return this.stream.pos;\\n };\\n ASN1.prototype.posContent = function () {\\n return this.stream.pos + this.header;\\n };\\n ASN1.prototype.posEnd = function () {\\n return this.stream.pos + this.header + Math.abs(this.length);\\n };\\n ASN1.prototype.toHexString = function () {\\n return this.stream.hexDump(this.posStart(), this.posEnd(), true);\\n };\\n ASN1.decodeLength = function (stream) {\\n var buf = stream.get();\\n var len = buf & 0x7F;\\n if (len == buf) {\\n return len;\\n }\\n // no reason to use Int10, as it would be a huge buffer anyways\\n if (len > 6) {\\n throw new Error("Length over 48 bits not supported at position " + (stream.pos - 1));\\n }\\n if (len === 0) {\\n return null;\\n } // undefined\\n buf = 0;\\n for (var i = 0; i < len; ++i) {\\n buf = (buf * 256) + stream.get();\\n }\\n return buf;\\n };\\n /**\\n * Retrieve the hexadecimal value (as a string) of the current ASN.1 element\\n * @returns {string}\\n * @public\\n */\\n ASN1.prototype.getHexStringValue = function () {\\n var hexString = this.toHexString();\\n var offset = this.header * 2;\\n var length = this.length * 2;\\n return hexString.substr(offset, length);\\n };\\n ASN1.decode = function (str) {\\n var stream;\\n if (!(str instanceof Stream)) {\\n stream = new Stream(str, 0);\\n }\\n else {\\n stream = str;\\n }\\n var streamStart = new Stream(stream);\\n var tag = new ASN1Tag(stream);\\n var len = ASN1.decodeLength(stream);\\n var start = stream.pos;\\n var header = start - streamStart.pos;\\n var sub = null;\\n var getSub = function () {\\n var ret = [];\\n if (len !== null) {\\n // definite length\\n var end = start + len;\\n while (stream.pos < end) {\\n ret[ret.length] = ASN1.decode(stream);\\n }\\n if (stream.pos != end) {\\n throw new Error("Content size is not correct for container starting at offset " + start);\\n }\\n }\\n else {\\n // undefined length\\n try {\\n for (;;) {\\n var s = ASN1.decode(stream);\\n if (s.tag.isEOC()) {\\n break;\\n }\\n ret[ret.length] = s;\\n }\\n len = start - stream.pos; // undefined lengths are represented as negative values\\n }\\n catch (e) {\\n throw new Error("Exception while decoding undefined length content: " + e);\\n }\\n }\\n return ret;\\n };\\n if (tag.tagConstructed) {\\n // must have valid content\\n sub = getSub();\\n }\\n else if (tag.isUniversal() && ((tag.tagNumber == 0x03) || (tag.tagNumber == 0x04))) {\\n // sometimes BitString and OctetString are used to encapsulate ASN.1\\n try {\\n if (tag.tagNumber == 0x03) {\\n if (stream.get() != 0) {\\n throw new Error("BIT STRINGs with unused bits cannot encapsulate.");\\n }\\n }\\n sub = getSub();\\n for (var i = 0; i < sub.length; ++i) {\\n if (sub[i].tag.isEOC()) {\\n throw new Error("EOC is not supposed to be actual content.");\\n }\\n }\\n }\\n catch (e) {\\n // but silently ignore when they don\\\'t\\n sub = null;\\n }\\n }\\n if (sub === null) {\\n if (len === null) {\\n throw new Error("We can\\\'t skip over an invalid tag with undefined length at offset " + start);\\n }\\n stream.pos = start + Math.abs(len);\\n }\\n return new ASN1(streamStart, header, len, tag, sub);\\n };\\n return ASN1;\\n}());\\n\\nvar ASN1Tag = /** @class */ (function () {\\n function ASN1Tag(stream) {\\n var buf = stream.get();\\n this.tagClass = buf >> 6;\\n this.tagConstructed = ((buf & 0x20) !== 0);\\n this.tagNumber = buf & 0x1F;\\n if (this.tagNumber == 0x1F) { // long tag\\n var n = new _int10__WEBPACK_IMPORTED_MODULE_0__.Int10();\\n do {\\n buf = stream.get();\\n n.mulAdd(128, buf & 0x7F);\\n } while (buf & 0x80);\\n this.tagNumber = n.simplify();\\n }\\n }\\n ASN1Tag.prototype.isUniversal = function () {\\n return this.tagClass === 0x00;\\n };\\n ASN1Tag.prototype.isEOC = function () {\\n return this.tagClass === 0x00 && this.tagNumber === 0x00;\\n };\\n return ASN1Tag;\\n}());\\n\\n\\n\\n//# sourceURL=webpack://JSEncrypt/./lib/lib/asn1js/asn1.js?\')},"./lib/lib/asn1js/base64.js":(__unused_webpack_module,__webpack_exports__,__webpack_require__)=>{"use strict";eval(\'__webpack_require__.r(__webpack_exports__);\\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\\n/* harmony export */ "Base64": () => (/* binding */ Base64)\\n/* harmony export */ });\\n// Base64 JavaScript decoder\\n// Copyright (c) 2008-2013 Lapo Luchini \\n// Permission to use, copy, modify, and/or distribute this software for any\\n// purpose with or without fee is hereby granted, provided that the above\\n// copyright notice and this permission notice appear in all copies.\\n//\\n// THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES\\n// WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF\\n// MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR\\n// ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES\\n// WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN\\n// ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF\\n// OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.\\n/*jshint browser: true, strict: true, immed: true, latedef: true, undef: true, regexdash: false */\\nvar decoder;\\nvar Base64 = {\\n decode: function (a) {\\n var i;\\n if (decoder === undefined) {\\n var b64 = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/";\\n var ignore = "= \\\\f\\\\n\\\\r\\\\t\\\\u00A0\\\\u2028\\\\u2029";\\n decoder = Object.create(null);\\n for (i = 0; i < 64; ++i) {\\n decoder[b64.charAt(i)] = i;\\n }\\n decoder[\\\'-\\\'] = 62; //+\\n decoder[\\\'_\\\'] = 63; //-\\n for (i = 0; i < ignore.length; ++i) {\\n decoder[ignore.charAt(i)] = -1;\\n }\\n }\\n var out = [];\\n var bits = 0;\\n var char_count = 0;\\n for (i = 0; i < a.length; ++i) {\\n var c = a.charAt(i);\\n if (c == "=") {\\n break;\\n }\\n c = decoder[c];\\n if (c == -1) {\\n continue;\\n }\\n if (c === undefined) {\\n throw new Error("Illegal character at offset " + i);\\n }\\n bits |= c;\\n if (++char_count >= 4) {\\n out[out.length] = (bits >> 16);\\n out[out.length] = (bits >> 8) & 0xFF;\\n out[out.length] = bits & 0xFF;\\n bits = 0;\\n char_count = 0;\\n }\\n else {\\n bits <<= 6;\\n }\\n }\\n switch (char_count) {\\n case 1:\\n throw new Error("Base64 encoding incomplete: at least 2 bits missing");\\n case 2:\\n out[out.length] = (bits >> 10);\\n break;\\n case 3:\\n out[out.length] = (bits >> 16);\\n out[out.length] = (bits >> 8) & 0xFF;\\n break;\\n }\\n return out;\\n },\\n re: /-----BEGIN [^-]+-----([A-Za-z0-9+\\\\/=\\\\s]+)-----END [^-]+-----|begin-base64[^\\\\n]+\\\\n([A-Za-z0-9+\\\\/=\\\\s]+)====/,\\n unarmor: function (a) {\\n var m = Base64.re.exec(a);\\n if (m) {\\n if (m[1]) {\\n a = m[1];\\n }\\n else if (m[2]) {\\n a = m[2];\\n }\\n else {\\n throw new Error("RegExp out of sync");\\n }\\n }\\n return Base64.decode(a);\\n }\\n};\\n\\n\\n//# sourceURL=webpack://JSEncrypt/./lib/lib/asn1js/base64.js?\')},"./lib/lib/asn1js/hex.js":(__unused_webpack_module,__webpack_exports__,__webpack_require__)=>{"use strict";eval(\'__webpack_require__.r(__webpack_exports__);\\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\\n/* harmony export */ "Hex": () => (/* binding */ Hex)\\n/* harmony export */ });\\n// Hex JavaScript decoder\\n// Copyright (c) 2008-2013 Lapo Luchini \\n// Permission to use, copy, modify, and/or distribute this software for any\\n// purpose with or without fee is hereby granted, provided that the above\\n// copyright notice and this permission notice appear in all copies.\\n//\\n// THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES\\n// WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF\\n// MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR\\n// ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES\\n// WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN\\n// ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF\\n// OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.\\n/*jshint browser: true, strict: true, immed: true, latedef: true, undef: true, regexdash: false */\\nvar decoder;\\nvar Hex = {\\n decode: function (a) {\\n var i;\\n if (decoder === undefined) {\\n var hex = "0123456789ABCDEF";\\n var ignore = " \\\\f\\\\n\\\\r\\\\t\\\\u00A0\\\\u2028\\\\u2029";\\n decoder = {};\\n for (i = 0; i < 16; ++i) {\\n decoder[hex.charAt(i)] = i;\\n }\\n hex = hex.toLowerCase();\\n for (i = 10; i < 16; ++i) {\\n decoder[hex.charAt(i)] = i;\\n }\\n for (i = 0; i < ignore.length; ++i) {\\n decoder[ignore.charAt(i)] = -1;\\n }\\n }\\n var out = [];\\n var bits = 0;\\n var char_count = 0;\\n for (i = 0; i < a.length; ++i) {\\n var c = a.charAt(i);\\n if (c == "=") {\\n break;\\n }\\n c = decoder[c];\\n if (c == -1) {\\n continue;\\n }\\n if (c === undefined) {\\n throw new Error("Illegal character at offset " + i);\\n }\\n bits |= c;\\n if (++char_count >= 2) {\\n out[out.length] = bits;\\n bits = 0;\\n char_count = 0;\\n }\\n else {\\n bits <<= 4;\\n }\\n }\\n if (char_count) {\\n throw new Error("Hex encoding incomplete: 4 bits missing");\\n }\\n return out;\\n }\\n};\\n\\n\\n//# sourceURL=webpack://JSEncrypt/./lib/lib/asn1js/hex.js?\')},"./lib/lib/asn1js/int10.js":(__unused_webpack_module,__webpack_exports__,__webpack_require__)=>{"use strict";eval(\'__webpack_require__.r(__webpack_exports__);\\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\\n/* harmony export */ "Int10": () => (/* binding */ Int10)\\n/* harmony export */ });\\n// Big integer base-10 printing library\\n// Copyright (c) 2014 Lapo Luchini \\n// Permission to use, copy, modify, and/or distribute this software for any\\n// purpose with or without fee is hereby granted, provided that the above\\n// copyright notice and this permission notice appear in all copies.\\n//\\n// THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES\\n// WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF\\n// MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR\\n// ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES\\n// WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN\\n// ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF\\n// OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.\\n/*jshint browser: true, strict: true, immed: true, latedef: true, undef: true, regexdash: false */\\nvar max = 10000000000000; // biggest integer that can still fit 2^53 when multiplied by 256\\nvar Int10 = /** @class */ (function () {\\n function Int10(value) {\\n this.buf = [+value || 0];\\n }\\n Int10.prototype.mulAdd = function (m, c) {\\n // assert(m <= 256)\\n var b = this.buf;\\n var l = b.length;\\n var i;\\n var t;\\n for (i = 0; i < l; ++i) {\\n t = b[i] * m + c;\\n if (t < max) {\\n c = 0;\\n }\\n else {\\n c = 0 | (t / max);\\n t -= c * max;\\n }\\n b[i] = t;\\n }\\n if (c > 0) {\\n b[i] = c;\\n }\\n };\\n Int10.prototype.sub = function (c) {\\n // assert(m <= 256)\\n var b = this.buf;\\n var l = b.length;\\n var i;\\n var t;\\n for (i = 0; i < l; ++i) {\\n t = b[i] - c;\\n if (t < 0) {\\n t += max;\\n c = 1;\\n }\\n else {\\n c = 0;\\n }\\n b[i] = t;\\n }\\n while (b[b.length - 1] === 0) {\\n b.pop();\\n }\\n };\\n Int10.prototype.toString = function (base) {\\n if ((base || 10) != 10) {\\n throw new Error("only base 10 is supported");\\n }\\n var b = this.buf;\\n var s = b[b.length - 1].toString();\\n for (var i = b.length - 2; i >= 0; --i) {\\n s += (max + b[i]).toString().substring(1);\\n }\\n return s;\\n };\\n Int10.prototype.valueOf = function () {\\n var b = this.buf;\\n var v = 0;\\n for (var i = b.length - 1; i >= 0; --i) {\\n v = v * max + b[i];\\n }\\n return v;\\n };\\n Int10.prototype.simplify = function () {\\n var b = this.buf;\\n return (b.length == 1) ? b[0] : this;\\n };\\n return Int10;\\n}());\\n\\n\\n\\n//# sourceURL=webpack://JSEncrypt/./lib/lib/asn1js/int10.js?\')},"./lib/lib/jsbn/base64.js":(__unused_webpack_module,__webpack_exports__,__webpack_require__)=>{"use strict";eval(\'__webpack_require__.r(__webpack_exports__);\\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\\n/* harmony export */ "b64toBA": () => (/* binding */ b64toBA),\\n/* harmony export */ "b64tohex": () => (/* binding */ b64tohex),\\n/* harmony export */ "hex2b64": () => (/* binding */ hex2b64)\\n/* harmony export */ });\\n/* harmony import */ var _util__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./util */ "./lib/lib/jsbn/util.js");\\n\\nvar b64map = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/";\\nvar b64pad = "=";\\nfunction hex2b64(h) {\\n var i;\\n var c;\\n var ret = "";\\n for (i = 0; i + 3 <= h.length; i += 3) {\\n c = parseInt(h.substring(i, i + 3), 16);\\n ret += b64map.charAt(c >> 6) + b64map.charAt(c & 63);\\n }\\n if (i + 1 == h.length) {\\n c = parseInt(h.substring(i, i + 1), 16);\\n ret += b64map.charAt(c << 2);\\n }\\n else if (i + 2 == h.length) {\\n c = parseInt(h.substring(i, i + 2), 16);\\n ret += b64map.charAt(c >> 2) + b64map.charAt((c & 3) << 4);\\n }\\n while ((ret.length & 3) > 0) {\\n ret += b64pad;\\n }\\n return ret;\\n}\\n// convert a base64 string to hex\\nfunction b64tohex(s) {\\n var ret = "";\\n var i;\\n var k = 0; // b64 state, 0-3\\n var slop = 0;\\n for (i = 0; i < s.length; ++i) {\\n if (s.charAt(i) == b64pad) {\\n break;\\n }\\n var v = b64map.indexOf(s.charAt(i));\\n if (v < 0) {\\n continue;\\n }\\n if (k == 0) {\\n ret += (0,_util__WEBPACK_IMPORTED_MODULE_0__.int2char)(v >> 2);\\n slop = v & 3;\\n k = 1;\\n }\\n else if (k == 1) {\\n ret += (0,_util__WEBPACK_IMPORTED_MODULE_0__.int2char)((slop << 2) | (v >> 4));\\n slop = v & 0xf;\\n k = 2;\\n }\\n else if (k == 2) {\\n ret += (0,_util__WEBPACK_IMPORTED_MODULE_0__.int2char)(slop);\\n ret += (0,_util__WEBPACK_IMPORTED_MODULE_0__.int2char)(v >> 2);\\n slop = v & 3;\\n k = 3;\\n }\\n else {\\n ret += (0,_util__WEBPACK_IMPORTED_MODULE_0__.int2char)((slop << 2) | (v >> 4));\\n ret += (0,_util__WEBPACK_IMPORTED_MODULE_0__.int2char)(v & 0xf);\\n k = 0;\\n }\\n }\\n if (k == 1) {\\n ret += (0,_util__WEBPACK_IMPORTED_MODULE_0__.int2char)(slop << 2);\\n }\\n return ret;\\n}\\n// convert a base64 string to a byte/number array\\nfunction b64toBA(s) {\\n // piggyback on b64tohex for now, optimize later\\n var h = b64tohex(s);\\n var i;\\n var a = [];\\n for (i = 0; 2 * i < h.length; ++i) {\\n a[i] = parseInt(h.substring(2 * i, 2 * i + 2), 16);\\n }\\n return a;\\n}\\n\\n\\n//# sourceURL=webpack://JSEncrypt/./lib/lib/jsbn/base64.js?\')},"./lib/lib/jsbn/jsbn.js":(__unused_webpack_module,__webpack_exports__,__webpack_require__)=>{"use strict";eval(\'__webpack_require__.r(__webpack_exports__);\\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\\n/* harmony export */ "BigInteger": () => (/* binding */ BigInteger),\\n/* harmony export */ "intAt": () => (/* binding */ intAt),\\n/* harmony export */ "nbi": () => (/* binding */ nbi),\\n/* harmony export */ "nbits": () => (/* binding */ nbits),\\n/* harmony export */ "nbv": () => (/* binding */ nbv),\\n/* harmony export */ "parseBigInt": () => (/* binding */ parseBigInt)\\n/* harmony export */ });\\n/* harmony import */ var _util__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./util */ "./lib/lib/jsbn/util.js");\\n// Copyright (c) 2005 Tom Wu\\n// All Rights Reserved.\\n// See "LICENSE" for details.\\n// Basic JavaScript BN library - subset useful for RSA encryption.\\n\\n// Bits per digit\\nvar dbits;\\n// JavaScript engine analysis\\nvar canary = 0xdeadbeefcafe;\\nvar j_lm = ((canary & 0xffffff) == 0xefcafe);\\n//#region\\nvar lowprimes = [2, 3, 5, 7, 11, 13, 17, 19, 23, 29, 31, 37, 41, 43, 47, 53, 59, 61, 67, 71, 73, 79, 83, 89, 97, 101, 103, 107, 109, 113, 127, 131, 137, 139, 149, 151, 157, 163, 167, 173, 179, 181, 191, 193, 197, 199, 211, 223, 227, 229, 233, 239, 241, 251, 257, 263, 269, 271, 277, 281, 283, 293, 307, 311, 313, 317, 331, 337, 347, 349, 353, 359, 367, 373, 379, 383, 389, 397, 401, 409, 419, 421, 431, 433, 439, 443, 449, 457, 461, 463, 467, 479, 487, 491, 499, 503, 509, 521, 523, 541, 547, 557, 563, 569, 571, 577, 587, 593, 599, 601, 607, 613, 617, 619, 631, 641, 643, 647, 653, 659, 661, 673, 677, 683, 691, 701, 709, 719, 727, 733, 739, 743, 751, 757, 761, 769, 773, 787, 797, 809, 811, 821, 823, 827, 829, 839, 853, 857, 859, 863, 877, 881, 883, 887, 907, 911, 919, 929, 937, 941, 947, 953, 967, 971, 977, 983, 991, 997];\\nvar lplim = (1 << 26) / lowprimes[lowprimes.length - 1];\\n//#endregion\\n// (public) Constructor\\nvar BigInteger = /** @class */ (function () {\\n function BigInteger(a, b, c) {\\n if (a != null) {\\n if ("number" == typeof a) {\\n this.fromNumber(a, b, c);\\n }\\n else if (b == null && "string" != typeof a) {\\n this.fromString(a, 256);\\n }\\n else {\\n this.fromString(a, b);\\n }\\n }\\n }\\n //#region PUBLIC\\n // BigInteger.prototype.toString = bnToString;\\n // (public) return string representation in given radix\\n BigInteger.prototype.toString = function (b) {\\n if (this.s < 0) {\\n return "-" + this.negate().toString(b);\\n }\\n var k;\\n if (b == 16) {\\n k = 4;\\n }\\n else if (b == 8) {\\n k = 3;\\n }\\n else if (b == 2) {\\n k = 1;\\n }\\n else if (b == 32) {\\n k = 5;\\n }\\n else if (b == 4) {\\n k = 2;\\n }\\n else {\\n return this.toRadix(b);\\n }\\n var km = (1 << k) - 1;\\n var d;\\n var m = false;\\n var r = "";\\n var i = this.t;\\n var p = this.DB - (i * this.DB) % k;\\n if (i-- > 0) {\\n if (p < this.DB && (d = this[i] >> p) > 0) {\\n m = true;\\n r = (0,_util__WEBPACK_IMPORTED_MODULE_0__.int2char)(d);\\n }\\n while (i >= 0) {\\n if (p < k) {\\n d = (this[i] & ((1 << p) - 1)) << (k - p);\\n d |= this[--i] >> (p += this.DB - k);\\n }\\n else {\\n d = (this[i] >> (p -= k)) & km;\\n if (p <= 0) {\\n p += this.DB;\\n --i;\\n }\\n }\\n if (d > 0) {\\n m = true;\\n }\\n if (m) {\\n r += (0,_util__WEBPACK_IMPORTED_MODULE_0__.int2char)(d);\\n }\\n }\\n }\\n return m ? r : "0";\\n };\\n // BigInteger.prototype.negate = bnNegate;\\n // (public) -this\\n BigInteger.prototype.negate = function () {\\n var r = nbi();\\n BigInteger.ZERO.subTo(this, r);\\n return r;\\n };\\n // BigInteger.prototype.abs = bnAbs;\\n // (public) |this|\\n BigInteger.prototype.abs = function () {\\n return (this.s < 0) ? this.negate() : this;\\n };\\n // BigInteger.prototype.compareTo = bnCompareTo;\\n // (public) return + if this > a, - if this < a, 0 if equal\\n BigInteger.prototype.compareTo = function (a) {\\n var r = this.s - a.s;\\n if (r != 0) {\\n return r;\\n }\\n var i = this.t;\\n r = i - a.t;\\n if (r != 0) {\\n return (this.s < 0) ? -r : r;\\n }\\n while (--i >= 0) {\\n if ((r = this[i] - a[i]) != 0) {\\n return r;\\n }\\n }\\n return 0;\\n };\\n // BigInteger.prototype.bitLength = bnBitLength;\\n // (public) return the number of bits in "this"\\n BigInteger.prototype.bitLength = function () {\\n if (this.t <= 0) {\\n return 0;\\n }\\n return this.DB * (this.t - 1) + nbits(this[this.t - 1] ^ (this.s & this.DM));\\n };\\n // BigInteger.prototype.mod = bnMod;\\n // (public) this mod a\\n BigInteger.prototype.mod = function (a) {\\n var r = nbi();\\n this.abs().divRemTo(a, null, r);\\n if (this.s < 0 && r.compareTo(BigInteger.ZERO) > 0) {\\n a.subTo(r, r);\\n }\\n return r;\\n };\\n // BigInteger.prototype.modPowInt = bnModPowInt;\\n // (public) this^e % m, 0 <= e < 2^32\\n BigInteger.prototype.modPowInt = function (e, m) {\\n var z;\\n if (e < 256 || m.isEven()) {\\n z = new Classic(m);\\n }\\n else {\\n z = new Montgomery(m);\\n }\\n return this.exp(e, z);\\n };\\n // BigInteger.prototype.clone = bnClone;\\n // (public)\\n BigInteger.prototype.clone = function () {\\n var r = nbi();\\n this.copyTo(r);\\n return r;\\n };\\n // BigInteger.prototype.intValue = bnIntValue;\\n // (public) return value as integer\\n BigInteger.prototype.intValue = function () {\\n if (this.s < 0) {\\n if (this.t == 1) {\\n return this[0] - this.DV;\\n }\\n else if (this.t == 0) {\\n return -1;\\n }\\n }\\n else if (this.t == 1) {\\n return this[0];\\n }\\n else if (this.t == 0) {\\n return 0;\\n }\\n // assumes 16 < DB < 32\\n return ((this[1] & ((1 << (32 - this.DB)) - 1)) << this.DB) | this[0];\\n };\\n // BigInteger.prototype.byteValue = bnByteValue;\\n // (public) return value as byte\\n BigInteger.prototype.byteValue = function () {\\n return (this.t == 0) ? this.s : (this[0] << 24) >> 24;\\n };\\n // BigInteger.prototype.shortValue = bnShortValue;\\n // (public) return value as short (assumes DB>=16)\\n BigInteger.prototype.shortValue = function () {\\n return (this.t == 0) ? this.s : (this[0] << 16) >> 16;\\n };\\n // BigInteger.prototype.signum = bnSigNum;\\n // (public) 0 if this == 0, 1 if this > 0\\n BigInteger.prototype.signum = function () {\\n if (this.s < 0) {\\n return -1;\\n }\\n else if (this.t <= 0 || (this.t == 1 && this[0] <= 0)) {\\n return 0;\\n }\\n else {\\n return 1;\\n }\\n };\\n // BigInteger.prototype.toByteArray = bnToByteArray;\\n // (public) convert to bigendian byte array\\n BigInteger.prototype.toByteArray = function () {\\n var i = this.t;\\n var r = [];\\n r[0] = this.s;\\n var p = this.DB - (i * this.DB) % 8;\\n var d;\\n var k = 0;\\n if (i-- > 0) {\\n if (p < this.DB && (d = this[i] >> p) != (this.s & this.DM) >> p) {\\n r[k++] = d | (this.s << (this.DB - p));\\n }\\n while (i >= 0) {\\n if (p < 8) {\\n d = (this[i] & ((1 << p) - 1)) << (8 - p);\\n d |= this[--i] >> (p += this.DB - 8);\\n }\\n else {\\n d = (this[i] >> (p -= 8)) & 0xff;\\n if (p <= 0) {\\n p += this.DB;\\n --i;\\n }\\n }\\n if ((d & 0x80) != 0) {\\n d |= -256;\\n }\\n if (k == 0 && (this.s & 0x80) != (d & 0x80)) {\\n ++k;\\n }\\n if (k > 0 || d != this.s) {\\n r[k++] = d;\\n }\\n }\\n }\\n return r;\\n };\\n // BigInteger.prototype.equals = bnEquals;\\n BigInteger.prototype.equals = function (a) {\\n return (this.compareTo(a) == 0);\\n };\\n // BigInteger.prototype.min = bnMin;\\n BigInteger.prototype.min = function (a) {\\n return (this.compareTo(a) < 0) ? this : a;\\n };\\n // BigInteger.prototype.max = bnMax;\\n BigInteger.prototype.max = function (a) {\\n return (this.compareTo(a) > 0) ? this : a;\\n };\\n // BigInteger.prototype.and = bnAnd;\\n BigInteger.prototype.and = function (a) {\\n var r = nbi();\\n this.bitwiseTo(a, _util__WEBPACK_IMPORTED_MODULE_0__.op_and, r);\\n return r;\\n };\\n // BigInteger.prototype.or = bnOr;\\n BigInteger.prototype.or = function (a) {\\n var r = nbi();\\n this.bitwiseTo(a, _util__WEBPACK_IMPORTED_MODULE_0__.op_or, r);\\n return r;\\n };\\n // BigInteger.prototype.xor = bnXor;\\n BigInteger.prototype.xor = function (a) {\\n var r = nbi();\\n this.bitwiseTo(a, _util__WEBPACK_IMPORTED_MODULE_0__.op_xor, r);\\n return r;\\n };\\n // BigInteger.prototype.andNot = bnAndNot;\\n BigInteger.prototype.andNot = function (a) {\\n var r = nbi();\\n this.bitwiseTo(a, _util__WEBPACK_IMPORTED_MODULE_0__.op_andnot, r);\\n return r;\\n };\\n // BigInteger.prototype.not = bnNot;\\n // (public) ~this\\n BigInteger.prototype.not = function () {\\n var r = nbi();\\n for (var i = 0; i < this.t; ++i) {\\n r[i] = this.DM & ~this[i];\\n }\\n r.t = this.t;\\n r.s = ~this.s;\\n return r;\\n };\\n // BigInteger.prototype.shiftLeft = bnShiftLeft;\\n // (public) this << n\\n BigInteger.prototype.shiftLeft = function (n) {\\n var r = nbi();\\n if (n < 0) {\\n this.rShiftTo(-n, r);\\n }\\n else {\\n this.lShiftTo(n, r);\\n }\\n return r;\\n };\\n // BigInteger.prototype.shiftRight = bnShiftRight;\\n // (public) this >> n\\n BigInteger.prototype.shiftRight = function (n) {\\n var r = nbi();\\n if (n < 0) {\\n this.lShiftTo(-n, r);\\n }\\n else {\\n this.rShiftTo(n, r);\\n }\\n return r;\\n };\\n // BigInteger.prototype.getLowestSetBit = bnGetLowestSetBit;\\n // (public) returns index of lowest 1-bit (or -1 if none)\\n BigInteger.prototype.getLowestSetBit = function () {\\n for (var i = 0; i < this.t; ++i) {\\n if (this[i] != 0) {\\n return i * this.DB + (0,_util__WEBPACK_IMPORTED_MODULE_0__.lbit)(this[i]);\\n }\\n }\\n if (this.s < 0) {\\n return this.t * this.DB;\\n }\\n return -1;\\n };\\n // BigInteger.prototype.bitCount = bnBitCount;\\n // (public) return number of set bits\\n BigInteger.prototype.bitCount = function () {\\n var r = 0;\\n var x = this.s & this.DM;\\n for (var i = 0; i < this.t; ++i) {\\n r += (0,_util__WEBPACK_IMPORTED_MODULE_0__.cbit)(this[i] ^ x);\\n }\\n return r;\\n };\\n // BigInteger.prototype.testBit = bnTestBit;\\n // (public) true iff nth bit is set\\n BigInteger.prototype.testBit = function (n) {\\n var j = Math.floor(n / this.DB);\\n if (j >= this.t) {\\n return (this.s != 0);\\n }\\n return ((this[j] & (1 << (n % this.DB))) != 0);\\n };\\n // BigInteger.prototype.setBit = bnSetBit;\\n // (public) this | (1< 1) {\\n var g2 = nbi();\\n z.sqrTo(g[1], g2);\\n while (n <= km) {\\n g[n] = nbi();\\n z.mulTo(g2, g[n - 2], g[n]);\\n n += 2;\\n }\\n }\\n var j = e.t - 1;\\n var w;\\n var is1 = true;\\n var r2 = nbi();\\n var t;\\n i = nbits(e[j]) - 1;\\n while (j >= 0) {\\n if (i >= k1) {\\n w = (e[j] >> (i - k1)) & km;\\n }\\n else {\\n w = (e[j] & ((1 << (i + 1)) - 1)) << (k1 - i);\\n if (j > 0) {\\n w |= e[j - 1] >> (this.DB + i - k1);\\n }\\n }\\n n = k;\\n while ((w & 1) == 0) {\\n w >>= 1;\\n --n;\\n }\\n if ((i -= n) < 0) {\\n i += this.DB;\\n --j;\\n }\\n if (is1) { // ret == 1, don\\\'t bother squaring or multiplying it\\n g[w].copyTo(r);\\n is1 = false;\\n }\\n else {\\n while (n > 1) {\\n z.sqrTo(r, r2);\\n z.sqrTo(r2, r);\\n n -= 2;\\n }\\n if (n > 0) {\\n z.sqrTo(r, r2);\\n }\\n else {\\n t = r;\\n r = r2;\\n r2 = t;\\n }\\n z.mulTo(r2, g[w], r);\\n }\\n while (j >= 0 && (e[j] & (1 << i)) == 0) {\\n z.sqrTo(r, r2);\\n t = r;\\n r = r2;\\n r2 = t;\\n if (--i < 0) {\\n i = this.DB - 1;\\n --j;\\n }\\n }\\n }\\n return z.revert(r);\\n };\\n // BigInteger.prototype.modInverse = bnModInverse;\\n // (public) 1/this % m (HAC 14.61)\\n BigInteger.prototype.modInverse = function (m) {\\n var ac = m.isEven();\\n if ((this.isEven() && ac) || m.signum() == 0) {\\n return BigInteger.ZERO;\\n }\\n var u = m.clone();\\n var v = this.clone();\\n var a = nbv(1);\\n var b = nbv(0);\\n var c = nbv(0);\\n var d = nbv(1);\\n while (u.signum() != 0) {\\n while (u.isEven()) {\\n u.rShiftTo(1, u);\\n if (ac) {\\n if (!a.isEven() || !b.isEven()) {\\n a.addTo(this, a);\\n b.subTo(m, b);\\n }\\n a.rShiftTo(1, a);\\n }\\n else if (!b.isEven()) {\\n b.subTo(m, b);\\n }\\n b.rShiftTo(1, b);\\n }\\n while (v.isEven()) {\\n v.rShiftTo(1, v);\\n if (ac) {\\n if (!c.isEven() || !d.isEven()) {\\n c.addTo(this, c);\\n d.subTo(m, d);\\n }\\n c.rShiftTo(1, c);\\n }\\n else if (!d.isEven()) {\\n d.subTo(m, d);\\n }\\n d.rShiftTo(1, d);\\n }\\n if (u.compareTo(v) >= 0) {\\n u.subTo(v, u);\\n if (ac) {\\n a.subTo(c, a);\\n }\\n b.subTo(d, b);\\n }\\n else {\\n v.subTo(u, v);\\n if (ac) {\\n c.subTo(a, c);\\n }\\n d.subTo(b, d);\\n }\\n }\\n if (v.compareTo(BigInteger.ONE) != 0) {\\n return BigInteger.ZERO;\\n }\\n if (d.compareTo(m) >= 0) {\\n return d.subtract(m);\\n }\\n if (d.signum() < 0) {\\n d.addTo(m, d);\\n }\\n else {\\n return d;\\n }\\n if (d.signum() < 0) {\\n return d.add(m);\\n }\\n else {\\n return d;\\n }\\n };\\n // BigInteger.prototype.pow = bnPow;\\n // (public) this^e\\n BigInteger.prototype.pow = function (e) {\\n return this.exp(e, new NullExp());\\n };\\n // BigInteger.prototype.gcd = bnGCD;\\n // (public) gcd(this,a) (HAC 14.54)\\n BigInteger.prototype.gcd = function (a) {\\n var x = (this.s < 0) ? this.negate() : this.clone();\\n var y = (a.s < 0) ? a.negate() : a.clone();\\n if (x.compareTo(y) < 0) {\\n var t = x;\\n x = y;\\n y = t;\\n }\\n var i = x.getLowestSetBit();\\n var g = y.getLowestSetBit();\\n if (g < 0) {\\n return x;\\n }\\n if (i < g) {\\n g = i;\\n }\\n if (g > 0) {\\n x.rShiftTo(g, x);\\n y.rShiftTo(g, y);\\n }\\n while (x.signum() > 0) {\\n if ((i = x.getLowestSetBit()) > 0) {\\n x.rShiftTo(i, x);\\n }\\n if ((i = y.getLowestSetBit()) > 0) {\\n y.rShiftTo(i, y);\\n }\\n if (x.compareTo(y) >= 0) {\\n x.subTo(y, x);\\n x.rShiftTo(1, x);\\n }\\n else {\\n y.subTo(x, y);\\n y.rShiftTo(1, y);\\n }\\n }\\n if (g > 0) {\\n y.lShiftTo(g, y);\\n }\\n return y;\\n };\\n // BigInteger.prototype.isProbablePrime = bnIsProbablePrime;\\n // (public) test primality with certainty >= 1-.5^t\\n BigInteger.prototype.isProbablePrime = function (t) {\\n var i;\\n var x = this.abs();\\n if (x.t == 1 && x[0] <= lowprimes[lowprimes.length - 1]) {\\n for (i = 0; i < lowprimes.length; ++i) {\\n if (x[0] == lowprimes[i]) {\\n return true;\\n }\\n }\\n return false;\\n }\\n if (x.isEven()) {\\n return false;\\n }\\n i = 1;\\n while (i < lowprimes.length) {\\n var m = lowprimes[i];\\n var j = i + 1;\\n while (j < lowprimes.length && m < lplim) {\\n m *= lowprimes[j++];\\n }\\n m = x.modInt(m);\\n while (i < j) {\\n if (m % lowprimes[i++] == 0) {\\n return false;\\n }\\n }\\n }\\n return x.millerRabin(t);\\n };\\n //#endregion PUBLIC\\n //#region PROTECTED\\n // BigInteger.prototype.copyTo = bnpCopyTo;\\n // (protected) copy this to r\\n BigInteger.prototype.copyTo = function (r) {\\n for (var i = this.t - 1; i >= 0; --i) {\\n r[i] = this[i];\\n }\\n r.t = this.t;\\n r.s = this.s;\\n };\\n // BigInteger.prototype.fromInt = bnpFromInt;\\n // (protected) set from integer value x, -DV <= x < DV\\n BigInteger.prototype.fromInt = function (x) {\\n this.t = 1;\\n this.s = (x < 0) ? -1 : 0;\\n if (x > 0) {\\n this[0] = x;\\n }\\n else if (x < -1) {\\n this[0] = x + this.DV;\\n }\\n else {\\n this.t = 0;\\n }\\n };\\n // BigInteger.prototype.fromString = bnpFromString;\\n // (protected) set from string and radix\\n BigInteger.prototype.fromString = function (s, b) {\\n var k;\\n if (b == 16) {\\n k = 4;\\n }\\n else if (b == 8) {\\n k = 3;\\n }\\n else if (b == 256) {\\n k = 8;\\n /* byte array */\\n }\\n else if (b == 2) {\\n k = 1;\\n }\\n else if (b == 32) {\\n k = 5;\\n }\\n else if (b == 4) {\\n k = 2;\\n }\\n else {\\n this.fromRadix(s, b);\\n return;\\n }\\n this.t = 0;\\n this.s = 0;\\n var i = s.length;\\n var mi = false;\\n var sh = 0;\\n while (--i >= 0) {\\n var x = (k == 8) ? (+s[i]) & 0xff : intAt(s, i);\\n if (x < 0) {\\n if (s.charAt(i) == "-") {\\n mi = true;\\n }\\n continue;\\n }\\n mi = false;\\n if (sh == 0) {\\n this[this.t++] = x;\\n }\\n else if (sh + k > this.DB) {\\n this[this.t - 1] |= (x & ((1 << (this.DB - sh)) - 1)) << sh;\\n this[this.t++] = (x >> (this.DB - sh));\\n }\\n else {\\n this[this.t - 1] |= x << sh;\\n }\\n sh += k;\\n if (sh >= this.DB) {\\n sh -= this.DB;\\n }\\n }\\n if (k == 8 && ((+s[0]) & 0x80) != 0) {\\n this.s = -1;\\n if (sh > 0) {\\n this[this.t - 1] |= ((1 << (this.DB - sh)) - 1) << sh;\\n }\\n }\\n this.clamp();\\n if (mi) {\\n BigInteger.ZERO.subTo(this, this);\\n }\\n };\\n // BigInteger.prototype.clamp = bnpClamp;\\n // (protected) clamp off excess high words\\n BigInteger.prototype.clamp = function () {\\n var c = this.s & this.DM;\\n while (this.t > 0 && this[this.t - 1] == c) {\\n --this.t;\\n }\\n };\\n // BigInteger.prototype.dlShiftTo = bnpDLShiftTo;\\n // (protected) r = this << n*DB\\n BigInteger.prototype.dlShiftTo = function (n, r) {\\n var i;\\n for (i = this.t - 1; i >= 0; --i) {\\n r[i + n] = this[i];\\n }\\n for (i = n - 1; i >= 0; --i) {\\n r[i] = 0;\\n }\\n r.t = this.t + n;\\n r.s = this.s;\\n };\\n // BigInteger.prototype.drShiftTo = bnpDRShiftTo;\\n // (protected) r = this >> n*DB\\n BigInteger.prototype.drShiftTo = function (n, r) {\\n for (var i = n; i < this.t; ++i) {\\n r[i - n] = this[i];\\n }\\n r.t = Math.max(this.t - n, 0);\\n r.s = this.s;\\n };\\n // BigInteger.prototype.lShiftTo = bnpLShiftTo;\\n // (protected) r = this << n\\n BigInteger.prototype.lShiftTo = function (n, r) {\\n var bs = n % this.DB;\\n var cbs = this.DB - bs;\\n var bm = (1 << cbs) - 1;\\n var ds = Math.floor(n / this.DB);\\n var c = (this.s << bs) & this.DM;\\n for (var i = this.t - 1; i >= 0; --i) {\\n r[i + ds + 1] = (this[i] >> cbs) | c;\\n c = (this[i] & bm) << bs;\\n }\\n for (var i = ds - 1; i >= 0; --i) {\\n r[i] = 0;\\n }\\n r[ds] = c;\\n r.t = this.t + ds + 1;\\n r.s = this.s;\\n r.clamp();\\n };\\n // BigInteger.prototype.rShiftTo = bnpRShiftTo;\\n // (protected) r = this >> n\\n BigInteger.prototype.rShiftTo = function (n, r) {\\n r.s = this.s;\\n var ds = Math.floor(n / this.DB);\\n if (ds >= this.t) {\\n r.t = 0;\\n return;\\n }\\n var bs = n % this.DB;\\n var cbs = this.DB - bs;\\n var bm = (1 << bs) - 1;\\n r[0] = this[ds] >> bs;\\n for (var i = ds + 1; i < this.t; ++i) {\\n r[i - ds - 1] |= (this[i] & bm) << cbs;\\n r[i - ds] = this[i] >> bs;\\n }\\n if (bs > 0) {\\n r[this.t - ds - 1] |= (this.s & bm) << cbs;\\n }\\n r.t = this.t - ds;\\n r.clamp();\\n };\\n // BigInteger.prototype.subTo = bnpSubTo;\\n // (protected) r = this - a\\n BigInteger.prototype.subTo = function (a, r) {\\n var i = 0;\\n var c = 0;\\n var m = Math.min(a.t, this.t);\\n while (i < m) {\\n c += this[i] - a[i];\\n r[i++] = c & this.DM;\\n c >>= this.DB;\\n }\\n if (a.t < this.t) {\\n c -= a.s;\\n while (i < this.t) {\\n c += this[i];\\n r[i++] = c & this.DM;\\n c >>= this.DB;\\n }\\n c += this.s;\\n }\\n else {\\n c += this.s;\\n while (i < a.t) {\\n c -= a[i];\\n r[i++] = c & this.DM;\\n c >>= this.DB;\\n }\\n c -= a.s;\\n }\\n r.s = (c < 0) ? -1 : 0;\\n if (c < -1) {\\n r[i++] = this.DV + c;\\n }\\n else if (c > 0) {\\n r[i++] = c;\\n }\\n r.t = i;\\n r.clamp();\\n };\\n // BigInteger.prototype.multiplyTo = bnpMultiplyTo;\\n // (protected) r = this * a, r != this,a (HAC 14.12)\\n // "this" should be the larger one if appropriate.\\n BigInteger.prototype.multiplyTo = function (a, r) {\\n var x = this.abs();\\n var y = a.abs();\\n var i = x.t;\\n r.t = i + y.t;\\n while (--i >= 0) {\\n r[i] = 0;\\n }\\n for (i = 0; i < y.t; ++i) {\\n r[i + x.t] = x.am(0, y[i], r, i, 0, x.t);\\n }\\n r.s = 0;\\n r.clamp();\\n if (this.s != a.s) {\\n BigInteger.ZERO.subTo(r, r);\\n }\\n };\\n // BigInteger.prototype.squareTo = bnpSquareTo;\\n // (protected) r = this^2, r != this (HAC 14.16)\\n BigInteger.prototype.squareTo = function (r) {\\n var x = this.abs();\\n var i = r.t = 2 * x.t;\\n while (--i >= 0) {\\n r[i] = 0;\\n }\\n for (i = 0; i < x.t - 1; ++i) {\\n var c = x.am(i, x[i], r, 2 * i, 0, 1);\\n if ((r[i + x.t] += x.am(i + 1, 2 * x[i], r, 2 * i + 1, c, x.t - i - 1)) >= x.DV) {\\n r[i + x.t] -= x.DV;\\n r[i + x.t + 1] = 1;\\n }\\n }\\n if (r.t > 0) {\\n r[r.t - 1] += x.am(i, x[i], r, 2 * i, 0, 1);\\n }\\n r.s = 0;\\n r.clamp();\\n };\\n // BigInteger.prototype.divRemTo = bnpDivRemTo;\\n // (protected) divide this by m, quotient and remainder to q, r (HAC 14.20)\\n // r != q, this != m. q or r may be null.\\n BigInteger.prototype.divRemTo = function (m, q, r) {\\n var pm = m.abs();\\n if (pm.t <= 0) {\\n return;\\n }\\n var pt = this.abs();\\n if (pt.t < pm.t) {\\n if (q != null) {\\n q.fromInt(0);\\n }\\n if (r != null) {\\n this.copyTo(r);\\n }\\n return;\\n }\\n if (r == null) {\\n r = nbi();\\n }\\n var y = nbi();\\n var ts = this.s;\\n var ms = m.s;\\n var nsh = this.DB - nbits(pm[pm.t - 1]); // normalize modulus\\n if (nsh > 0) {\\n pm.lShiftTo(nsh, y);\\n pt.lShiftTo(nsh, r);\\n }\\n else {\\n pm.copyTo(y);\\n pt.copyTo(r);\\n }\\n var ys = y.t;\\n var y0 = y[ys - 1];\\n if (y0 == 0) {\\n return;\\n }\\n var yt = y0 * (1 << this.F1) + ((ys > 1) ? y[ys - 2] >> this.F2 : 0);\\n var d1 = this.FV / yt;\\n var d2 = (1 << this.F1) / yt;\\n var e = 1 << this.F2;\\n var i = r.t;\\n var j = i - ys;\\n var t = (q == null) ? nbi() : q;\\n y.dlShiftTo(j, t);\\n if (r.compareTo(t) >= 0) {\\n r[r.t++] = 1;\\n r.subTo(t, r);\\n }\\n BigInteger.ONE.dlShiftTo(ys, t);\\n t.subTo(y, y); // "negative" y so we can replace sub with am later\\n while (y.t < ys) {\\n y[y.t++] = 0;\\n }\\n while (--j >= 0) {\\n // Estimate quotient digit\\n var qd = (r[--i] == y0) ? this.DM : Math.floor(r[i] * d1 + (r[i - 1] + e) * d2);\\n if ((r[i] += y.am(0, qd, r, j, 0, ys)) < qd) { // Try it out\\n y.dlShiftTo(j, t);\\n r.subTo(t, r);\\n while (r[i] < --qd) {\\n r.subTo(t, r);\\n }\\n }\\n }\\n if (q != null) {\\n r.drShiftTo(ys, q);\\n if (ts != ms) {\\n BigInteger.ZERO.subTo(q, q);\\n }\\n }\\n r.t = ys;\\n r.clamp();\\n if (nsh > 0) {\\n r.rShiftTo(nsh, r);\\n } // Denormalize remainder\\n if (ts < 0) {\\n BigInteger.ZERO.subTo(r, r);\\n }\\n };\\n // BigInteger.prototype.invDigit = bnpInvDigit;\\n // (protected) return "-1/this % 2^DB"; useful for Mont. reduction\\n // justification:\\n // xy == 1 (mod m)\\n // xy = 1+km\\n // xy(2-xy) = (1+km)(1-km)\\n // x[y(2-xy)] = 1-k^2m^2\\n // x[y(2-xy)] == 1 (mod m^2)\\n // if y is 1/x mod m, then y(2-xy) is 1/x mod m^2\\n // should reduce x and y(2-xy) by m^2 at each step to keep size bounded.\\n // JS multiply "overflows" differently from C/C++, so care is needed here.\\n BigInteger.prototype.invDigit = function () {\\n if (this.t < 1) {\\n return 0;\\n }\\n var x = this[0];\\n if ((x & 1) == 0) {\\n return 0;\\n }\\n var y = x & 3; // y == 1/x mod 2^2\\n y = (y * (2 - (x & 0xf) * y)) & 0xf; // y == 1/x mod 2^4\\n y = (y * (2 - (x & 0xff) * y)) & 0xff; // y == 1/x mod 2^8\\n y = (y * (2 - (((x & 0xffff) * y) & 0xffff))) & 0xffff; // y == 1/x mod 2^16\\n // last step - calculate inverse mod DV directly;\\n // assumes 16 < DB <= 32 and assumes ability to handle 48-bit ints\\n y = (y * (2 - x * y % this.DV)) % this.DV; // y == 1/x mod 2^dbits\\n // we really want the negative inverse, and -DV < y < DV\\n return (y > 0) ? this.DV - y : -y;\\n };\\n // BigInteger.prototype.isEven = bnpIsEven;\\n // (protected) true iff this is even\\n BigInteger.prototype.isEven = function () {\\n return ((this.t > 0) ? (this[0] & 1) : this.s) == 0;\\n };\\n // BigInteger.prototype.exp = bnpExp;\\n // (protected) this^e, e < 2^32, doing sqr and mul with "r" (HAC 14.79)\\n BigInteger.prototype.exp = function (e, z) {\\n if (e > 0xffffffff || e < 1) {\\n return BigInteger.ONE;\\n }\\n var r = nbi();\\n var r2 = nbi();\\n var g = z.convert(this);\\n var i = nbits(e) - 1;\\n g.copyTo(r);\\n while (--i >= 0) {\\n z.sqrTo(r, r2);\\n if ((e & (1 << i)) > 0) {\\n z.mulTo(r2, g, r);\\n }\\n else {\\n var t = r;\\n r = r2;\\n r2 = t;\\n }\\n }\\n return z.revert(r);\\n };\\n // BigInteger.prototype.chunkSize = bnpChunkSize;\\n // (protected) return x s.t. r^x < DV\\n BigInteger.prototype.chunkSize = function (r) {\\n return Math.floor(Math.LN2 * this.DB / Math.log(r));\\n };\\n // BigInteger.prototype.toRadix = bnpToRadix;\\n // (protected) convert to radix string\\n BigInteger.prototype.toRadix = function (b) {\\n if (b == null) {\\n b = 10;\\n }\\n if (this.signum() == 0 || b < 2 || b > 36) {\\n return "0";\\n }\\n var cs = this.chunkSize(b);\\n var a = Math.pow(b, cs);\\n var d = nbv(a);\\n var y = nbi();\\n var z = nbi();\\n var r = "";\\n this.divRemTo(d, y, z);\\n while (y.signum() > 0) {\\n r = (a + z.intValue()).toString(b).substr(1) + r;\\n y.divRemTo(d, y, z);\\n }\\n return z.intValue().toString(b) + r;\\n };\\n // BigInteger.prototype.fromRadix = bnpFromRadix;\\n // (protected) convert from radix string\\n BigInteger.prototype.fromRadix = function (s, b) {\\n this.fromInt(0);\\n if (b == null) {\\n b = 10;\\n }\\n var cs = this.chunkSize(b);\\n var d = Math.pow(b, cs);\\n var mi = false;\\n var j = 0;\\n var w = 0;\\n for (var i = 0; i < s.length; ++i) {\\n var x = intAt(s, i);\\n if (x < 0) {\\n if (s.charAt(i) == "-" && this.signum() == 0) {\\n mi = true;\\n }\\n continue;\\n }\\n w = b * w + x;\\n if (++j >= cs) {\\n this.dMultiply(d);\\n this.dAddOffset(w, 0);\\n j = 0;\\n w = 0;\\n }\\n }\\n if (j > 0) {\\n this.dMultiply(Math.pow(b, j));\\n this.dAddOffset(w, 0);\\n }\\n if (mi) {\\n BigInteger.ZERO.subTo(this, this);\\n }\\n };\\n // BigInteger.prototype.fromNumber = bnpFromNumber;\\n // (protected) alternate constructor\\n BigInteger.prototype.fromNumber = function (a, b, c) {\\n if ("number" == typeof b) {\\n // new BigInteger(int,int,RNG)\\n if (a < 2) {\\n this.fromInt(1);\\n }\\n else {\\n this.fromNumber(a, c);\\n if (!this.testBit(a - 1)) {\\n // force MSB set\\n this.bitwiseTo(BigInteger.ONE.shiftLeft(a - 1), _util__WEBPACK_IMPORTED_MODULE_0__.op_or, this);\\n }\\n if (this.isEven()) {\\n this.dAddOffset(1, 0);\\n } // force odd\\n while (!this.isProbablePrime(b)) {\\n this.dAddOffset(2, 0);\\n if (this.bitLength() > a) {\\n this.subTo(BigInteger.ONE.shiftLeft(a - 1), this);\\n }\\n }\\n }\\n }\\n else {\\n // new BigInteger(int,RNG)\\n var x = [];\\n var t = a & 7;\\n x.length = (a >> 3) + 1;\\n b.nextBytes(x);\\n if (t > 0) {\\n x[0] &= ((1 << t) - 1);\\n }\\n else {\\n x[0] = 0;\\n }\\n this.fromString(x, 256);\\n }\\n };\\n // BigInteger.prototype.bitwiseTo = bnpBitwiseTo;\\n // (protected) r = this op a (bitwise)\\n BigInteger.prototype.bitwiseTo = function (a, op, r) {\\n var i;\\n var f;\\n var m = Math.min(a.t, this.t);\\n for (i = 0; i < m; ++i) {\\n r[i] = op(this[i], a[i]);\\n }\\n if (a.t < this.t) {\\n f = a.s & this.DM;\\n for (i = m; i < this.t; ++i) {\\n r[i] = op(this[i], f);\\n }\\n r.t = this.t;\\n }\\n else {\\n f = this.s & this.DM;\\n for (i = m; i < a.t; ++i) {\\n r[i] = op(f, a[i]);\\n }\\n r.t = a.t;\\n }\\n r.s = op(this.s, a.s);\\n r.clamp();\\n };\\n // BigInteger.prototype.changeBit = bnpChangeBit;\\n // (protected) this op (1<>= this.DB;\\n }\\n if (a.t < this.t) {\\n c += a.s;\\n while (i < this.t) {\\n c += this[i];\\n r[i++] = c & this.DM;\\n c >>= this.DB;\\n }\\n c += this.s;\\n }\\n else {\\n c += this.s;\\n while (i < a.t) {\\n c += a[i];\\n r[i++] = c & this.DM;\\n c >>= this.DB;\\n }\\n c += a.s;\\n }\\n r.s = (c < 0) ? -1 : 0;\\n if (c > 0) {\\n r[i++] = c;\\n }\\n else if (c < -1) {\\n r[i++] = this.DV + c;\\n }\\n r.t = i;\\n r.clamp();\\n };\\n // BigInteger.prototype.dMultiply = bnpDMultiply;\\n // (protected) this *= n, this >= 0, 1 < n < DV\\n BigInteger.prototype.dMultiply = function (n) {\\n this[this.t] = this.am(0, n - 1, this, 0, 0, this.t);\\n ++this.t;\\n this.clamp();\\n };\\n // BigInteger.prototype.dAddOffset = bnpDAddOffset;\\n // (protected) this += n << w words, this >= 0\\n BigInteger.prototype.dAddOffset = function (n, w) {\\n if (n == 0) {\\n return;\\n }\\n while (this.t <= w) {\\n this[this.t++] = 0;\\n }\\n this[w] += n;\\n while (this[w] >= this.DV) {\\n this[w] -= this.DV;\\n if (++w >= this.t) {\\n this[this.t++] = 0;\\n }\\n ++this[w];\\n }\\n };\\n // BigInteger.prototype.multiplyLowerTo = bnpMultiplyLowerTo;\\n // (protected) r = lower n words of "this * a", a.t <= n\\n // "this" should be the larger one if appropriate.\\n BigInteger.prototype.multiplyLowerTo = function (a, n, r) {\\n var i = Math.min(this.t + a.t, n);\\n r.s = 0; // assumes a,this >= 0\\n r.t = i;\\n while (i > 0) {\\n r[--i] = 0;\\n }\\n for (var j = r.t - this.t; i < j; ++i) {\\n r[i + this.t] = this.am(0, a[i], r, i, 0, this.t);\\n }\\n for (var j = Math.min(a.t, n); i < j; ++i) {\\n this.am(0, a[i], r, i, 0, n - i);\\n }\\n r.clamp();\\n };\\n // BigInteger.prototype.multiplyUpperTo = bnpMultiplyUpperTo;\\n // (protected) r = "this * a" without lower n words, n > 0\\n // "this" should be the larger one if appropriate.\\n BigInteger.prototype.multiplyUpperTo = function (a, n, r) {\\n --n;\\n var i = r.t = this.t + a.t - n;\\n r.s = 0; // assumes a,this >= 0\\n while (--i >= 0) {\\n r[i] = 0;\\n }\\n for (i = Math.max(n - this.t, 0); i < a.t; ++i) {\\n r[this.t + i - n] = this.am(n - i, a[i], r, 0, 0, this.t + i - n);\\n }\\n r.clamp();\\n r.drShiftTo(1, r);\\n };\\n // BigInteger.prototype.modInt = bnpModInt;\\n // (protected) this % n, n < 2^26\\n BigInteger.prototype.modInt = function (n) {\\n if (n <= 0) {\\n return 0;\\n }\\n var d = this.DV % n;\\n var r = (this.s < 0) ? n - 1 : 0;\\n if (this.t > 0) {\\n if (d == 0) {\\n r = this[0] % n;\\n }\\n else {\\n for (var i = this.t - 1; i >= 0; --i) {\\n r = (d * r + this[i]) % n;\\n }\\n }\\n }\\n return r;\\n };\\n // BigInteger.prototype.millerRabin = bnpMillerRabin;\\n // (protected) true if probably prime (HAC 4.24, Miller-Rabin)\\n BigInteger.prototype.millerRabin = function (t) {\\n var n1 = this.subtract(BigInteger.ONE);\\n var k = n1.getLowestSetBit();\\n if (k <= 0) {\\n return false;\\n }\\n var r = n1.shiftRight(k);\\n t = (t + 1) >> 1;\\n if (t > lowprimes.length) {\\n t = lowprimes.length;\\n }\\n var a = nbi();\\n for (var i = 0; i < t; ++i) {\\n // Pick bases at random, instead of starting at 2\\n a.fromInt(lowprimes[Math.floor(Math.random() * lowprimes.length)]);\\n var y = a.modPow(r, this);\\n if (y.compareTo(BigInteger.ONE) != 0 && y.compareTo(n1) != 0) {\\n var j = 1;\\n while (j++ < k && y.compareTo(n1) != 0) {\\n y = y.modPowInt(2, this);\\n if (y.compareTo(BigInteger.ONE) == 0) {\\n return false;\\n }\\n }\\n if (y.compareTo(n1) != 0) {\\n return false;\\n }\\n }\\n }\\n return true;\\n };\\n // BigInteger.prototype.square = bnSquare;\\n // (public) this^2\\n BigInteger.prototype.square = function () {\\n var r = nbi();\\n this.squareTo(r);\\n return r;\\n };\\n //#region ASYNC\\n // Public API method\\n BigInteger.prototype.gcda = function (a, callback) {\\n var x = (this.s < 0) ? this.negate() : this.clone();\\n var y = (a.s < 0) ? a.negate() : a.clone();\\n if (x.compareTo(y) < 0) {\\n var t = x;\\n x = y;\\n y = t;\\n }\\n var i = x.getLowestSetBit();\\n var g = y.getLowestSetBit();\\n if (g < 0) {\\n callback(x);\\n return;\\n }\\n if (i < g) {\\n g = i;\\n }\\n if (g > 0) {\\n x.rShiftTo(g, x);\\n y.rShiftTo(g, y);\\n }\\n // Workhorse of the algorithm, gets called 200 - 800 times per 512 bit keygen.\\n var gcda1 = function () {\\n if ((i = x.getLowestSetBit()) > 0) {\\n x.rShiftTo(i, x);\\n }\\n if ((i = y.getLowestSetBit()) > 0) {\\n y.rShiftTo(i, y);\\n }\\n if (x.compareTo(y) >= 0) {\\n x.subTo(y, x);\\n x.rShiftTo(1, x);\\n }\\n else {\\n y.subTo(x, y);\\n y.rShiftTo(1, y);\\n }\\n if (!(x.signum() > 0)) {\\n if (g > 0) {\\n y.lShiftTo(g, y);\\n }\\n setTimeout(function () { callback(y); }, 0); // escape\\n }\\n else {\\n setTimeout(gcda1, 0);\\n }\\n };\\n setTimeout(gcda1, 10);\\n };\\n // (protected) alternate constructor\\n BigInteger.prototype.fromNumberAsync = function (a, b, c, callback) {\\n if ("number" == typeof b) {\\n if (a < 2) {\\n this.fromInt(1);\\n }\\n else {\\n this.fromNumber(a, c);\\n if (!this.testBit(a - 1)) {\\n this.bitwiseTo(BigInteger.ONE.shiftLeft(a - 1), _util__WEBPACK_IMPORTED_MODULE_0__.op_or, this);\\n }\\n if (this.isEven()) {\\n this.dAddOffset(1, 0);\\n }\\n var bnp_1 = this;\\n var bnpfn1_1 = function () {\\n bnp_1.dAddOffset(2, 0);\\n if (bnp_1.bitLength() > a) {\\n bnp_1.subTo(BigInteger.ONE.shiftLeft(a - 1), bnp_1);\\n }\\n if (bnp_1.isProbablePrime(b)) {\\n setTimeout(function () { callback(); }, 0); // escape\\n }\\n else {\\n setTimeout(bnpfn1_1, 0);\\n }\\n };\\n setTimeout(bnpfn1_1, 0);\\n }\\n }\\n else {\\n var x = [];\\n var t = a & 7;\\n x.length = (a >> 3) + 1;\\n b.nextBytes(x);\\n if (t > 0) {\\n x[0] &= ((1 << t) - 1);\\n }\\n else {\\n x[0] = 0;\\n }\\n this.fromString(x, 256);\\n }\\n };\\n return BigInteger;\\n}());\\n\\n//#region REDUCERS\\n//#region NullExp\\nvar NullExp = /** @class */ (function () {\\n function NullExp() {\\n }\\n // NullExp.prototype.convert = nNop;\\n NullExp.prototype.convert = function (x) {\\n return x;\\n };\\n // NullExp.prototype.revert = nNop;\\n NullExp.prototype.revert = function (x) {\\n return x;\\n };\\n // NullExp.prototype.mulTo = nMulTo;\\n NullExp.prototype.mulTo = function (x, y, r) {\\n x.multiplyTo(y, r);\\n };\\n // NullExp.prototype.sqrTo = nSqrTo;\\n NullExp.prototype.sqrTo = function (x, r) {\\n x.squareTo(r);\\n };\\n return NullExp;\\n}());\\n// Modular reduction using "classic" algorithm\\nvar Classic = /** @class */ (function () {\\n function Classic(m) {\\n this.m = m;\\n }\\n // Classic.prototype.convert = cConvert;\\n Classic.prototype.convert = function (x) {\\n if (x.s < 0 || x.compareTo(this.m) >= 0) {\\n return x.mod(this.m);\\n }\\n else {\\n return x;\\n }\\n };\\n // Classic.prototype.revert = cRevert;\\n Classic.prototype.revert = function (x) {\\n return x;\\n };\\n // Classic.prototype.reduce = cReduce;\\n Classic.prototype.reduce = function (x) {\\n x.divRemTo(this.m, null, x);\\n };\\n // Classic.prototype.mulTo = cMulTo;\\n Classic.prototype.mulTo = function (x, y, r) {\\n x.multiplyTo(y, r);\\n this.reduce(r);\\n };\\n // Classic.prototype.sqrTo = cSqrTo;\\n Classic.prototype.sqrTo = function (x, r) {\\n x.squareTo(r);\\n this.reduce(r);\\n };\\n return Classic;\\n}());\\n//#endregion\\n//#region Montgomery\\n// Montgomery reduction\\nvar Montgomery = /** @class */ (function () {\\n function Montgomery(m) {\\n this.m = m;\\n this.mp = m.invDigit();\\n this.mpl = this.mp & 0x7fff;\\n this.mph = this.mp >> 15;\\n this.um = (1 << (m.DB - 15)) - 1;\\n this.mt2 = 2 * m.t;\\n }\\n // Montgomery.prototype.convert = montConvert;\\n // xR mod m\\n Montgomery.prototype.convert = function (x) {\\n var r = nbi();\\n x.abs().dlShiftTo(this.m.t, r);\\n r.divRemTo(this.m, null, r);\\n if (x.s < 0 && r.compareTo(BigInteger.ZERO) > 0) {\\n this.m.subTo(r, r);\\n }\\n return r;\\n };\\n // Montgomery.prototype.revert = montRevert;\\n // x/R mod m\\n Montgomery.prototype.revert = function (x) {\\n var r = nbi();\\n x.copyTo(r);\\n this.reduce(r);\\n return r;\\n };\\n // Montgomery.prototype.reduce = montReduce;\\n // x = x/R mod m (HAC 14.32)\\n Montgomery.prototype.reduce = function (x) {\\n while (x.t <= this.mt2) {\\n // pad x so am has enough room later\\n x[x.t++] = 0;\\n }\\n for (var i = 0; i < this.m.t; ++i) {\\n // faster way of calculating u0 = x[i]*mp mod DV\\n var j = x[i] & 0x7fff;\\n var u0 = (j * this.mpl + (((j * this.mph + (x[i] >> 15) * this.mpl) & this.um) << 15)) & x.DM;\\n // use am to combine the multiply-shift-add into one call\\n j = i + this.m.t;\\n x[j] += this.m.am(0, u0, x, i, 0, this.m.t);\\n // propagate carry\\n while (x[j] >= x.DV) {\\n x[j] -= x.DV;\\n x[++j]++;\\n }\\n }\\n x.clamp();\\n x.drShiftTo(this.m.t, x);\\n if (x.compareTo(this.m) >= 0) {\\n x.subTo(this.m, x);\\n }\\n };\\n // Montgomery.prototype.mulTo = montMulTo;\\n // r = "xy/R mod m"; x,y != r\\n Montgomery.prototype.mulTo = function (x, y, r) {\\n x.multiplyTo(y, r);\\n this.reduce(r);\\n };\\n // Montgomery.prototype.sqrTo = montSqrTo;\\n // r = "x^2/R mod m"; x != r\\n Montgomery.prototype.sqrTo = function (x, r) {\\n x.squareTo(r);\\n this.reduce(r);\\n };\\n return Montgomery;\\n}());\\n//#endregion Montgomery\\n//#region Barrett\\n// Barrett modular reduction\\nvar Barrett = /** @class */ (function () {\\n function Barrett(m) {\\n this.m = m;\\n // setup Barrett\\n this.r2 = nbi();\\n this.q3 = nbi();\\n BigInteger.ONE.dlShiftTo(2 * m.t, this.r2);\\n this.mu = this.r2.divide(m);\\n }\\n // Barrett.prototype.convert = barrettConvert;\\n Barrett.prototype.convert = function (x) {\\n if (x.s < 0 || x.t > 2 * this.m.t) {\\n return x.mod(this.m);\\n }\\n else if (x.compareTo(this.m) < 0) {\\n return x;\\n }\\n else {\\n var r = nbi();\\n x.copyTo(r);\\n this.reduce(r);\\n return r;\\n }\\n };\\n // Barrett.prototype.revert = barrettRevert;\\n Barrett.prototype.revert = function (x) {\\n return x;\\n };\\n // Barrett.prototype.reduce = barrettReduce;\\n // x = x mod m (HAC 14.42)\\n Barrett.prototype.reduce = function (x) {\\n x.drShiftTo(this.m.t - 1, this.r2);\\n if (x.t > this.m.t + 1) {\\n x.t = this.m.t + 1;\\n x.clamp();\\n }\\n this.mu.multiplyUpperTo(this.r2, this.m.t + 1, this.q3);\\n this.m.multiplyLowerTo(this.q3, this.m.t + 1, this.r2);\\n while (x.compareTo(this.r2) < 0) {\\n x.dAddOffset(1, this.m.t + 1);\\n }\\n x.subTo(this.r2, x);\\n while (x.compareTo(this.m) >= 0) {\\n x.subTo(this.m, x);\\n }\\n };\\n // Barrett.prototype.mulTo = barrettMulTo;\\n // r = x*y mod m; x,y != r\\n Barrett.prototype.mulTo = function (x, y, r) {\\n x.multiplyTo(y, r);\\n this.reduce(r);\\n };\\n // Barrett.prototype.sqrTo = barrettSqrTo;\\n // r = x^2 mod m; x != r\\n Barrett.prototype.sqrTo = function (x, r) {\\n x.squareTo(r);\\n this.reduce(r);\\n };\\n return Barrett;\\n}());\\n//#endregion\\n//#endregion REDUCERS\\n// return new, unset BigInteger\\nfunction nbi() { return new BigInteger(null); }\\nfunction parseBigInt(str, r) {\\n return new BigInteger(str, r);\\n}\\n// am: Compute w_j += (x*this_i), propagate carries,\\n// c is initial carry, returns final carry.\\n// c < 3*dvalue, x < 2*dvalue, this_i < dvalue\\n// We need to select the fastest one that works in this environment.\\nvar inBrowser = typeof navigator !== "undefined";\\nif (inBrowser && j_lm && (navigator.appName == "Microsoft Internet Explorer")) {\\n // am2 avoids a big mult-and-extract completely.\\n // Max digit bits should be <= 30 because we do bitwise ops\\n // on values up to 2*hdvalue^2-hdvalue-1 (< 2^31)\\n BigInteger.prototype.am = function am2(i, x, w, j, c, n) {\\n var xl = x & 0x7fff;\\n var xh = x >> 15;\\n while (--n >= 0) {\\n var l = this[i] & 0x7fff;\\n var h = this[i++] >> 15;\\n var m = xh * l + h * xl;\\n l = xl * l + ((m & 0x7fff) << 15) + w[j] + (c & 0x3fffffff);\\n c = (l >>> 30) + (m >>> 15) + xh * h + (c >>> 30);\\n w[j++] = l & 0x3fffffff;\\n }\\n return c;\\n };\\n dbits = 30;\\n}\\nelse if (inBrowser && j_lm && (navigator.appName != "Netscape")) {\\n // am1: use a single mult and divide to get the high bits,\\n // max digit bits should be 26 because\\n // max internal value = 2*dvalue^2-2*dvalue (< 2^53)\\n BigInteger.prototype.am = function am1(i, x, w, j, c, n) {\\n while (--n >= 0) {\\n var v = x * this[i++] + w[j] + c;\\n c = Math.floor(v / 0x4000000);\\n w[j++] = v & 0x3ffffff;\\n }\\n return c;\\n };\\n dbits = 26;\\n}\\nelse { // Mozilla/Netscape seems to prefer am3\\n // Alternately, set max digit bits to 28 since some\\n // browsers slow down when dealing with 32-bit numbers.\\n BigInteger.prototype.am = function am3(i, x, w, j, c, n) {\\n var xl = x & 0x3fff;\\n var xh = x >> 14;\\n while (--n >= 0) {\\n var l = this[i] & 0x3fff;\\n var h = this[i++] >> 14;\\n var m = xh * l + h * xl;\\n l = xl * l + ((m & 0x3fff) << 14) + w[j] + c;\\n c = (l >> 28) + (m >> 14) + xh * h;\\n w[j++] = l & 0xfffffff;\\n }\\n return c;\\n };\\n dbits = 28;\\n}\\nBigInteger.prototype.DB = dbits;\\nBigInteger.prototype.DM = ((1 << dbits) - 1);\\nBigInteger.prototype.DV = (1 << dbits);\\nvar BI_FP = 52;\\nBigInteger.prototype.FV = Math.pow(2, BI_FP);\\nBigInteger.prototype.F1 = BI_FP - dbits;\\nBigInteger.prototype.F2 = 2 * dbits - BI_FP;\\n// Digit conversions\\nvar BI_RC = [];\\nvar rr;\\nvar vv;\\nrr = "0".charCodeAt(0);\\nfor (vv = 0; vv <= 9; ++vv) {\\n BI_RC[rr++] = vv;\\n}\\nrr = "a".charCodeAt(0);\\nfor (vv = 10; vv < 36; ++vv) {\\n BI_RC[rr++] = vv;\\n}\\nrr = "A".charCodeAt(0);\\nfor (vv = 10; vv < 36; ++vv) {\\n BI_RC[rr++] = vv;\\n}\\nfunction intAt(s, i) {\\n var c = BI_RC[s.charCodeAt(i)];\\n return (c == null) ? -1 : c;\\n}\\n// return bigint initialized to value\\nfunction nbv(i) {\\n var r = nbi();\\n r.fromInt(i);\\n return r;\\n}\\n// returns bit length of the integer x\\nfunction nbits(x) {\\n var r = 1;\\n var t;\\n if ((t = x >>> 16) != 0) {\\n x = t;\\n r += 16;\\n }\\n if ((t = x >> 8) != 0) {\\n x = t;\\n r += 8;\\n }\\n if ((t = x >> 4) != 0) {\\n x = t;\\n r += 4;\\n }\\n if ((t = x >> 2) != 0) {\\n x = t;\\n r += 2;\\n }\\n if ((t = x >> 1) != 0) {\\n x = t;\\n r += 1;\\n }\\n return r;\\n}\\n// "constants"\\nBigInteger.ZERO = nbv(0);\\nBigInteger.ONE = nbv(1);\\n\\n\\n//# sourceURL=webpack://JSEncrypt/./lib/lib/jsbn/jsbn.js?\')},"./lib/lib/jsbn/prng4.js":(__unused_webpack_module,__webpack_exports__,__webpack_require__)=>{"use strict";eval(\'__webpack_require__.r(__webpack_exports__);\\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\\n/* harmony export */ "Arcfour": () => (/* binding */ Arcfour),\\n/* harmony export */ "prng_newstate": () => (/* binding */ prng_newstate),\\n/* harmony export */ "rng_psize": () => (/* binding */ rng_psize)\\n/* harmony export */ });\\n// prng4.js - uses Arcfour as a PRNG\\nvar Arcfour = /** @class */ (function () {\\n function Arcfour() {\\n this.i = 0;\\n this.j = 0;\\n this.S = [];\\n }\\n // Arcfour.prototype.init = ARC4init;\\n // Initialize arcfour context from key, an array of ints, each from [0..255]\\n Arcfour.prototype.init = function (key) {\\n var i;\\n var j;\\n var t;\\n for (i = 0; i < 256; ++i) {\\n this.S[i] = i;\\n }\\n j = 0;\\n for (i = 0; i < 256; ++i) {\\n j = (j + this.S[i] + key[i % key.length]) & 255;\\n t = this.S[i];\\n this.S[i] = this.S[j];\\n this.S[j] = t;\\n }\\n this.i = 0;\\n this.j = 0;\\n };\\n // Arcfour.prototype.next = ARC4next;\\n Arcfour.prototype.next = function () {\\n var t;\\n this.i = (this.i + 1) & 255;\\n this.j = (this.j + this.S[this.i]) & 255;\\n t = this.S[this.i];\\n this.S[this.i] = this.S[this.j];\\n this.S[this.j] = t;\\n return this.S[(t + this.S[this.i]) & 255];\\n };\\n return Arcfour;\\n}());\\n\\n// Plug in your RNG constructor here\\nfunction prng_newstate() {\\n return new Arcfour();\\n}\\n// Pool size must be a multiple of 4 and greater than 32.\\n// An array of bytes the size of the pool will be passed to init()\\nvar rng_psize = 256;\\n\\n\\n//# sourceURL=webpack://JSEncrypt/./lib/lib/jsbn/prng4.js?\')},"./lib/lib/jsbn/rng.js":(__unused_webpack_module,__webpack_exports__,__webpack_require__)=>{"use strict";eval(\'__webpack_require__.r(__webpack_exports__);\\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\\n/* harmony export */ "SecureRandom": () => (/* binding */ SecureRandom)\\n/* harmony export */ });\\n/* harmony import */ var _prng4__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./prng4 */ "./lib/lib/jsbn/prng4.js");\\n// Random number generator - requires a PRNG backend, e.g. prng4.js\\n\\nvar rng_state;\\nvar rng_pool = null;\\nvar rng_pptr;\\n// Initialize the pool with junk if needed.\\nif (rng_pool == null) {\\n rng_pool = [];\\n rng_pptr = 0;\\n var t = void 0;\\n if (typeof window !== \\\'undefined\\\' && window.crypto && window.crypto.getRandomValues) {\\n // Extract entropy (2048 bits) from RNG if available\\n var z = new Uint32Array(256);\\n window.crypto.getRandomValues(z);\\n for (t = 0; t < z.length; ++t) {\\n rng_pool[rng_pptr++] = z[t] & 255;\\n }\\n }\\n // Use mouse events for entropy, if we do not have enough entropy by the time\\n // we need it, entropy will be generated by Math.random.\\n var count = 0;\\n var onMouseMoveListener_1 = function (ev) {\\n count = count || 0;\\n if (count >= 256 || rng_pptr >= _prng4__WEBPACK_IMPORTED_MODULE_0__.rng_psize) {\\n if (window.removeEventListener) {\\n window.removeEventListener("mousemove", onMouseMoveListener_1, false);\\n }\\n else if (window.detachEvent) {\\n window.detachEvent("onmousemove", onMouseMoveListener_1);\\n }\\n return;\\n }\\n try {\\n var mouseCoordinates = ev.x + ev.y;\\n rng_pool[rng_pptr++] = mouseCoordinates & 255;\\n count += 1;\\n }\\n catch (e) {\\n // Sometimes Firefox will deny permission to access event properties for some reason. Ignore.\\n }\\n };\\n if (typeof window !== \\\'undefined\\\') {\\n if (window.addEventListener) {\\n window.addEventListener("mousemove", onMouseMoveListener_1, false);\\n }\\n else if (window.attachEvent) {\\n window.attachEvent("onmousemove", onMouseMoveListener_1);\\n }\\n }\\n}\\nfunction rng_get_byte() {\\n if (rng_state == null) {\\n rng_state = (0,_prng4__WEBPACK_IMPORTED_MODULE_0__.prng_newstate)();\\n // At this point, we may not have collected enough entropy. If not, fall back to Math.random\\n while (rng_pptr < _prng4__WEBPACK_IMPORTED_MODULE_0__.rng_psize) {\\n var random = Math.floor(65536 * Math.random());\\n rng_pool[rng_pptr++] = random & 255;\\n }\\n rng_state.init(rng_pool);\\n for (rng_pptr = 0; rng_pptr < rng_pool.length; ++rng_pptr) {\\n rng_pool[rng_pptr] = 0;\\n }\\n rng_pptr = 0;\\n }\\n // TODO: allow reseeding after first request\\n return rng_state.next();\\n}\\nvar SecureRandom = /** @class */ (function () {\\n function SecureRandom() {\\n }\\n SecureRandom.prototype.nextBytes = function (ba) {\\n for (var i = 0; i < ba.length; ++i) {\\n ba[i] = rng_get_byte();\\n }\\n };\\n return SecureRandom;\\n}());\\n\\n\\n\\n//# sourceURL=webpack://JSEncrypt/./lib/lib/jsbn/rng.js?\')},"./lib/lib/jsbn/rsa.js":(__unused_webpack_module,__webpack_exports__,__webpack_require__)=>{"use strict";eval(\'__webpack_require__.r(__webpack_exports__);\\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\\n/* harmony export */ "RSAKey": () => (/* binding */ RSAKey)\\n/* harmony export */ });\\n/* harmony import */ var _jsbn__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./jsbn */ "./lib/lib/jsbn/jsbn.js");\\n/* harmony import */ var _rng__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./rng */ "./lib/lib/jsbn/rng.js");\\n// Depends on jsbn.js and rng.js\\n// Version 1.1: support utf-8 encoding in pkcs1pad2\\n// convert a (hex) string to a bignum object\\n\\n\\n// function linebrk(s,n) {\\n// var ret = "";\\n// var i = 0;\\n// while(i + n < s.length) {\\n// ret += s.substring(i,i+n) + "\\\\n";\\n// i += n;\\n// }\\n// return ret + s.substring(i,s.length);\\n// }\\n// function byte2Hex(b) {\\n// if(b < 0x10)\\n// return "0" + b.toString(16);\\n// else\\n// return b.toString(16);\\n// }\\nfunction pkcs1pad1(s, n) {\\n if (n < s.length + 22) {\\n console.error("Message too long for RSA");\\n return null;\\n }\\n var len = n - s.length - 6;\\n var filler = "";\\n for (var f = 0; f < len; f += 2) {\\n filler += "ff";\\n }\\n var m = "0001" + filler + "00" + s;\\n return (0,_jsbn__WEBPACK_IMPORTED_MODULE_0__.parseBigInt)(m, 16);\\n}\\n// PKCS#1 (type 2, random) pad input string s to n bytes, and return a bigint\\nfunction pkcs1pad2(s, n) {\\n if (n < s.length + 11) { // TODO: fix for utf-8\\n console.error("Message too long for RSA");\\n return null;\\n }\\n var ba = [];\\n var i = s.length - 1;\\n while (i >= 0 && n > 0) {\\n var c = s.charCodeAt(i--);\\n if (c < 128) { // encode using utf-8\\n ba[--n] = c;\\n }\\n else if ((c > 127) && (c < 2048)) {\\n ba[--n] = (c & 63) | 128;\\n ba[--n] = (c >> 6) | 192;\\n }\\n else {\\n ba[--n] = (c & 63) | 128;\\n ba[--n] = ((c >> 6) & 63) | 128;\\n ba[--n] = (c >> 12) | 224;\\n }\\n }\\n ba[--n] = 0;\\n var rng = new _rng__WEBPACK_IMPORTED_MODULE_1__.SecureRandom();\\n var x = [];\\n while (n > 2) { // random non-zero pad\\n x[0] = 0;\\n while (x[0] == 0) {\\n rng.nextBytes(x);\\n }\\n ba[--n] = x[0];\\n }\\n ba[--n] = 2;\\n ba[--n] = 0;\\n return new _jsbn__WEBPACK_IMPORTED_MODULE_0__.BigInteger(ba);\\n}\\n// "empty" RSA key constructor\\nvar RSAKey = /** @class */ (function () {\\n function RSAKey() {\\n this.n = null;\\n this.e = 0;\\n this.d = null;\\n this.p = null;\\n this.q = null;\\n this.dmp1 = null;\\n this.dmq1 = null;\\n this.coeff = null;\\n }\\n //#region PROTECTED\\n // protected\\n // RSAKey.prototype.doPublic = RSADoPublic;\\n // Perform raw public operation on "x": return x^e (mod n)\\n RSAKey.prototype.doPublic = function (x) {\\n return x.modPowInt(this.e, this.n);\\n };\\n // RSAKey.prototype.doPrivate = RSADoPrivate;\\n // Perform raw private operation on "x": return x^d (mod n)\\n RSAKey.prototype.doPrivate = function (x) {\\n if (this.p == null || this.q == null) {\\n return x.modPow(this.d, this.n);\\n }\\n // TODO: re-calculate any missing CRT params\\n var xp = x.mod(this.p).modPow(this.dmp1, this.p);\\n var xq = x.mod(this.q).modPow(this.dmq1, this.q);\\n while (xp.compareTo(xq) < 0) {\\n xp = xp.add(this.p);\\n }\\n return xp.subtract(xq).multiply(this.coeff).mod(this.p).multiply(this.q).add(xq);\\n };\\n //#endregion PROTECTED\\n //#region PUBLIC\\n // RSAKey.prototype.setPublic = RSASetPublic;\\n // Set the public key fields N and e from hex strings\\n RSAKey.prototype.setPublic = function (N, E) {\\n if (N != null && E != null && N.length > 0 && E.length > 0) {\\n this.n = (0,_jsbn__WEBPACK_IMPORTED_MODULE_0__.parseBigInt)(N, 16);\\n this.e = parseInt(E, 16);\\n }\\n else {\\n console.error("Invalid RSA public key");\\n }\\n };\\n // RSAKey.prototype.encrypt = RSAEncrypt;\\n // Return the PKCS#1 RSA encryption of "text" as an even-length hex string\\n RSAKey.prototype.encrypt = function (text) {\\n var maxLength = (this.n.bitLength() + 7) >> 3;\\n var m = pkcs1pad2(text, maxLength);\\n if (m == null) {\\n return null;\\n }\\n var c = this.doPublic(m);\\n if (c == null) {\\n return null;\\n }\\n var h = c.toString(16);\\n var length = h.length;\\n // fix zero before result\\n for (var i = 0; i < maxLength * 2 - length; i++) {\\n h = "0" + h;\\n }\\n return h;\\n };\\n // RSAKey.prototype.setPrivate = RSASetPrivate;\\n // Set the private key fields N, e, and d from hex strings\\n RSAKey.prototype.setPrivate = function (N, E, D) {\\n if (N != null && E != null && N.length > 0 && E.length > 0) {\\n this.n = (0,_jsbn__WEBPACK_IMPORTED_MODULE_0__.parseBigInt)(N, 16);\\n this.e = parseInt(E, 16);\\n this.d = (0,_jsbn__WEBPACK_IMPORTED_MODULE_0__.parseBigInt)(D, 16);\\n }\\n else {\\n console.error("Invalid RSA private key");\\n }\\n };\\n // RSAKey.prototype.setPrivateEx = RSASetPrivateEx;\\n // Set the private key fields N, e, d and CRT params from hex strings\\n RSAKey.prototype.setPrivateEx = function (N, E, D, P, Q, DP, DQ, C) {\\n if (N != null && E != null && N.length > 0 && E.length > 0) {\\n this.n = (0,_jsbn__WEBPACK_IMPORTED_MODULE_0__.parseBigInt)(N, 16);\\n this.e = parseInt(E, 16);\\n this.d = (0,_jsbn__WEBPACK_IMPORTED_MODULE_0__.parseBigInt)(D, 16);\\n this.p = (0,_jsbn__WEBPACK_IMPORTED_MODULE_0__.parseBigInt)(P, 16);\\n this.q = (0,_jsbn__WEBPACK_IMPORTED_MODULE_0__.parseBigInt)(Q, 16);\\n this.dmp1 = (0,_jsbn__WEBPACK_IMPORTED_MODULE_0__.parseBigInt)(DP, 16);\\n this.dmq1 = (0,_jsbn__WEBPACK_IMPORTED_MODULE_0__.parseBigInt)(DQ, 16);\\n this.coeff = (0,_jsbn__WEBPACK_IMPORTED_MODULE_0__.parseBigInt)(C, 16);\\n }\\n else {\\n console.error("Invalid RSA private key");\\n }\\n };\\n // RSAKey.prototype.generate = RSAGenerate;\\n // Generate a new random private key B bits long, using public expt E\\n RSAKey.prototype.generate = function (B, E) {\\n var rng = new _rng__WEBPACK_IMPORTED_MODULE_1__.SecureRandom();\\n var qs = B >> 1;\\n this.e = parseInt(E, 16);\\n var ee = new _jsbn__WEBPACK_IMPORTED_MODULE_0__.BigInteger(E, 16);\\n for (;;) {\\n for (;;) {\\n this.p = new _jsbn__WEBPACK_IMPORTED_MODULE_0__.BigInteger(B - qs, 1, rng);\\n if (this.p.subtract(_jsbn__WEBPACK_IMPORTED_MODULE_0__.BigInteger.ONE).gcd(ee).compareTo(_jsbn__WEBPACK_IMPORTED_MODULE_0__.BigInteger.ONE) == 0 && this.p.isProbablePrime(10)) {\\n break;\\n }\\n }\\n for (;;) {\\n this.q = new _jsbn__WEBPACK_IMPORTED_MODULE_0__.BigInteger(qs, 1, rng);\\n if (this.q.subtract(_jsbn__WEBPACK_IMPORTED_MODULE_0__.BigInteger.ONE).gcd(ee).compareTo(_jsbn__WEBPACK_IMPORTED_MODULE_0__.BigInteger.ONE) == 0 && this.q.isProbablePrime(10)) {\\n break;\\n }\\n }\\n if (this.p.compareTo(this.q) <= 0) {\\n var t = this.p;\\n this.p = this.q;\\n this.q = t;\\n }\\n var p1 = this.p.subtract(_jsbn__WEBPACK_IMPORTED_MODULE_0__.BigInteger.ONE);\\n var q1 = this.q.subtract(_jsbn__WEBPACK_IMPORTED_MODULE_0__.BigInteger.ONE);\\n var phi = p1.multiply(q1);\\n if (phi.gcd(ee).compareTo(_jsbn__WEBPACK_IMPORTED_MODULE_0__.BigInteger.ONE) == 0) {\\n this.n = this.p.multiply(this.q);\\n this.d = ee.modInverse(phi);\\n this.dmp1 = this.d.mod(p1);\\n this.dmq1 = this.d.mod(q1);\\n this.coeff = this.q.modInverse(this.p);\\n break;\\n }\\n }\\n };\\n // RSAKey.prototype.decrypt = RSADecrypt;\\n // Return the PKCS#1 RSA decryption of "ctext".\\n // "ctext" is an even-length hex string and the output is a plain string.\\n RSAKey.prototype.decrypt = function (ctext) {\\n var c = (0,_jsbn__WEBPACK_IMPORTED_MODULE_0__.parseBigInt)(ctext, 16);\\n var m = this.doPrivate(c);\\n if (m == null) {\\n return null;\\n }\\n return pkcs1unpad2(m, (this.n.bitLength() + 7) >> 3);\\n };\\n // Generate a new random private key B bits long, using public expt E\\n RSAKey.prototype.generateAsync = function (B, E, callback) {\\n var rng = new _rng__WEBPACK_IMPORTED_MODULE_1__.SecureRandom();\\n var qs = B >> 1;\\n this.e = parseInt(E, 16);\\n var ee = new _jsbn__WEBPACK_IMPORTED_MODULE_0__.BigInteger(E, 16);\\n var rsa = this;\\n // These functions have non-descript names because they were originally for(;;) loops.\\n // I don\\\'t know about cryptography to give them better names than loop1-4.\\n var loop1 = function () {\\n var loop4 = function () {\\n if (rsa.p.compareTo(rsa.q) <= 0) {\\n var t = rsa.p;\\n rsa.p = rsa.q;\\n rsa.q = t;\\n }\\n var p1 = rsa.p.subtract(_jsbn__WEBPACK_IMPORTED_MODULE_0__.BigInteger.ONE);\\n var q1 = rsa.q.subtract(_jsbn__WEBPACK_IMPORTED_MODULE_0__.BigInteger.ONE);\\n var phi = p1.multiply(q1);\\n if (phi.gcd(ee).compareTo(_jsbn__WEBPACK_IMPORTED_MODULE_0__.BigInteger.ONE) == 0) {\\n rsa.n = rsa.p.multiply(rsa.q);\\n rsa.d = ee.modInverse(phi);\\n rsa.dmp1 = rsa.d.mod(p1);\\n rsa.dmq1 = rsa.d.mod(q1);\\n rsa.coeff = rsa.q.modInverse(rsa.p);\\n setTimeout(function () { callback(); }, 0); // escape\\n }\\n else {\\n setTimeout(loop1, 0);\\n }\\n };\\n var loop3 = function () {\\n rsa.q = (0,_jsbn__WEBPACK_IMPORTED_MODULE_0__.nbi)();\\n rsa.q.fromNumberAsync(qs, 1, rng, function () {\\n rsa.q.subtract(_jsbn__WEBPACK_IMPORTED_MODULE_0__.BigInteger.ONE).gcda(ee, function (r) {\\n if (r.compareTo(_jsbn__WEBPACK_IMPORTED_MODULE_0__.BigInteger.ONE) == 0 && rsa.q.isProbablePrime(10)) {\\n setTimeout(loop4, 0);\\n }\\n else {\\n setTimeout(loop3, 0);\\n }\\n });\\n });\\n };\\n var loop2 = function () {\\n rsa.p = (0,_jsbn__WEBPACK_IMPORTED_MODULE_0__.nbi)();\\n rsa.p.fromNumberAsync(B - qs, 1, rng, function () {\\n rsa.p.subtract(_jsbn__WEBPACK_IMPORTED_MODULE_0__.BigInteger.ONE).gcda(ee, function (r) {\\n if (r.compareTo(_jsbn__WEBPACK_IMPORTED_MODULE_0__.BigInteger.ONE) == 0 && rsa.p.isProbablePrime(10)) {\\n setTimeout(loop3, 0);\\n }\\n else {\\n setTimeout(loop2, 0);\\n }\\n });\\n });\\n };\\n setTimeout(loop2, 0);\\n };\\n setTimeout(loop1, 0);\\n };\\n RSAKey.prototype.sign = function (text, digestMethod, digestName) {\\n var header = getDigestHeader(digestName);\\n var digest = header + digestMethod(text).toString();\\n var m = pkcs1pad1(digest, this.n.bitLength() / 4);\\n if (m == null) {\\n return null;\\n }\\n var c = this.doPrivate(m);\\n if (c == null) {\\n return null;\\n }\\n var h = c.toString(16);\\n if ((h.length & 1) == 0) {\\n return h;\\n }\\n else {\\n return "0" + h;\\n }\\n };\\n RSAKey.prototype.verify = function (text, signature, digestMethod) {\\n var c = (0,_jsbn__WEBPACK_IMPORTED_MODULE_0__.parseBigInt)(signature, 16);\\n var m = this.doPublic(c);\\n if (m == null) {\\n return null;\\n }\\n var unpadded = m.toString(16).replace(/^1f+00/, "");\\n var digest = removeDigestHeader(unpadded);\\n return digest == digestMethod(text).toString();\\n };\\n return RSAKey;\\n}());\\n\\n// Undo PKCS#1 (type 2, random) padding and, if valid, return the plaintext\\nfunction pkcs1unpad2(d, n) {\\n var b = d.toByteArray();\\n var i = 0;\\n while (i < b.length && b[i] == 0) {\\n ++i;\\n }\\n if (b.length - i != n - 1 || b[i] != 2) {\\n return null;\\n }\\n ++i;\\n while (b[i] != 0) {\\n if (++i >= b.length) {\\n return null;\\n }\\n }\\n var ret = "";\\n while (++i < b.length) {\\n var c = b[i] & 255;\\n if (c < 128) { // utf-8 decode\\n ret += String.fromCharCode(c);\\n }\\n else if ((c > 191) && (c < 224)) {\\n ret += String.fromCharCode(((c & 31) << 6) | (b[i + 1] & 63));\\n ++i;\\n }\\n else {\\n ret += String.fromCharCode(((c & 15) << 12) | ((b[i + 1] & 63) << 6) | (b[i + 2] & 63));\\n i += 2;\\n }\\n }\\n return ret;\\n}\\n// https://tools.ietf.org/html/rfc3447#page-43\\nvar DIGEST_HEADERS = {\\n md2: "3020300c06082a864886f70d020205000410",\\n md5: "3020300c06082a864886f70d020505000410",\\n sha1: "3021300906052b0e03021a05000414",\\n sha224: "302d300d06096086480165030402040500041c",\\n sha256: "3031300d060960864801650304020105000420",\\n sha384: "3041300d060960864801650304020205000430",\\n sha512: "3051300d060960864801650304020305000440",\\n ripemd160: "3021300906052b2403020105000414"\\n};\\nfunction getDigestHeader(name) {\\n return DIGEST_HEADERS[name] || "";\\n}\\nfunction removeDigestHeader(str) {\\n for (var name_1 in DIGEST_HEADERS) {\\n if (DIGEST_HEADERS.hasOwnProperty(name_1)) {\\n var header = DIGEST_HEADERS[name_1];\\n var len = header.length;\\n if (str.substr(0, len) == header) {\\n return str.substr(len);\\n }\\n }\\n }\\n return str;\\n}\\n// Return the PKCS#1 RSA encryption of "text" as a Base64-encoded string\\n// function RSAEncryptB64(text) {\\n// var h = this.encrypt(text);\\n// if(h) return hex2b64(h); else return null;\\n// }\\n// public\\n// RSAKey.prototype.encrypt_b64 = RSAEncryptB64;\\n\\n\\n//# sourceURL=webpack://JSEncrypt/./lib/lib/jsbn/rsa.js?\')},"./lib/lib/jsbn/util.js":(__unused_webpack_module,__webpack_exports__,__webpack_require__)=>{"use strict";eval(\'__webpack_require__.r(__webpack_exports__);\\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\\n/* harmony export */ "cbit": () => (/* binding */ cbit),\\n/* harmony export */ "int2char": () => (/* binding */ int2char),\\n/* harmony export */ "lbit": () => (/* binding */ lbit),\\n/* harmony export */ "op_and": () => (/* binding */ op_and),\\n/* harmony export */ "op_andnot": () => (/* binding */ op_andnot),\\n/* harmony export */ "op_or": () => (/* binding */ op_or),\\n/* harmony export */ "op_xor": () => (/* binding */ op_xor)\\n/* harmony export */ });\\nvar BI_RM = "0123456789abcdefghijklmnopqrstuvwxyz";\\nfunction int2char(n) {\\n return BI_RM.charAt(n);\\n}\\n//#region BIT_OPERATIONS\\n// (public) this & a\\nfunction op_and(x, y) {\\n return x & y;\\n}\\n// (public) this | a\\nfunction op_or(x, y) {\\n return x | y;\\n}\\n// (public) this ^ a\\nfunction op_xor(x, y) {\\n return x ^ y;\\n}\\n// (public) this & ~a\\nfunction op_andnot(x, y) {\\n return x & ~y;\\n}\\n// return index of lowest 1-bit in x, x < 2^31\\nfunction lbit(x) {\\n if (x == 0) {\\n return -1;\\n }\\n var r = 0;\\n if ((x & 0xffff) == 0) {\\n x >>= 16;\\n r += 16;\\n }\\n if ((x & 0xff) == 0) {\\n x >>= 8;\\n r += 8;\\n }\\n if ((x & 0xf) == 0) {\\n x >>= 4;\\n r += 4;\\n }\\n if ((x & 3) == 0) {\\n x >>= 2;\\n r += 2;\\n }\\n if ((x & 1) == 0) {\\n ++r;\\n }\\n return r;\\n}\\n// return number of 1 bits in x\\nfunction cbit(x) {\\n var r = 0;\\n while (x != 0) {\\n x &= x - 1;\\n ++r;\\n }\\n return r;\\n}\\n//#endregion BIT_OPERATIONS\\n\\n\\n//# sourceURL=webpack://JSEncrypt/./lib/lib/jsbn/util.js?\')},"./lib/lib/jsrsasign/asn1-1.0.js":(__unused_webpack_module,__webpack_exports__,__webpack_require__)=>{"use strict";eval("__webpack_require__.r(__webpack_exports__);\\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\\n/* harmony export */ \\"KJUR\\": () => (/* binding */ KJUR)\\n/* harmony export */ });\\n/* harmony import */ var _jsbn_jsbn__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ../jsbn/jsbn */ \\"./lib/lib/jsbn/jsbn.js\\");\\n/* harmony import */ var _yahoo__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./yahoo */ \\"./lib/lib/jsrsasign/yahoo.js\\");\\n/* asn1-1.0.13.js (c) 2013-2017 Kenji Urushima | kjur.github.com/jsrsasign/license\\n */\\n/*\\n * asn1.js - ASN.1 DER encoder classes\\n *\\n * Copyright (c) 2013-2017 Kenji Urushima (kenji.urushima@gmail.com)\\n *\\n * This software is licensed under the terms of the MIT License.\\n * https://kjur.github.io/jsrsasign/license\\n *\\n * The above copyright and license notice shall be\\n * included in all copies or substantial portions of the Software.\\n */\\n\\n\\n/**\\n * @fileOverview\\n * @name asn1-1.0.js\\n * @author Kenji Urushima kenji.urushima@gmail.com\\n * @version asn1 1.0.13 (2017-Jun-02)\\n * @since jsrsasign 2.1\\n * @license MIT License\\n */\\n/**\\n * kjur\'s class library name space\\n *

\\n * This name space provides following name spaces:\\n *

    \\n *
  • {@link KJUR.asn1} - ASN.1 primitive hexadecimal encoder
  • \\n *
  • {@link KJUR.asn1.x509} - ASN.1 structure for X.509 certificate and CRL
  • \\n *
  • {@link KJUR.crypto} - Java Cryptographic Extension(JCE) style MessageDigest/Signature\\n * class and utilities
  • \\n *
\\n *

\\n * NOTE: Please ignore method summary and document of this namespace. This caused by a bug of jsdoc2.\\n * @name KJUR\\n * @namespace kjur\'s class library name space\\n */\\nvar KJUR = {};\\n/**\\n * kjur\'s ASN.1 class library name space\\n *

\\n * This is ITU-T X.690 ASN.1 DER encoder class library and\\n * class structure and methods is very similar to\\n * org.bouncycastle.asn1 package of\\n * well known BouncyCaslte Cryptography Library.\\n *

PROVIDING ASN.1 PRIMITIVES

\\n * Here are ASN.1 DER primitive classes.\\n *
    \\n *
  • 0x01 {@link KJUR.asn1.DERBoolean}
  • \\n *
  • 0x02 {@link KJUR.asn1.DERInteger}
  • \\n *
  • 0x03 {@link KJUR.asn1.DERBitString}
  • \\n *
  • 0x04 {@link KJUR.asn1.DEROctetString}
  • \\n *
  • 0x05 {@link KJUR.asn1.DERNull}
  • \\n *
  • 0x06 {@link KJUR.asn1.DERObjectIdentifier}
  • \\n *
  • 0x0a {@link KJUR.asn1.DEREnumerated}
  • \\n *
  • 0x0c {@link KJUR.asn1.DERUTF8String}
  • \\n *
  • 0x12 {@link KJUR.asn1.DERNumericString}
  • \\n *
  • 0x13 {@link KJUR.asn1.DERPrintableString}
  • \\n *
  • 0x14 {@link KJUR.asn1.DERTeletexString}
  • \\n *
  • 0x16 {@link KJUR.asn1.DERIA5String}
  • \\n *
  • 0x17 {@link KJUR.asn1.DERUTCTime}
  • \\n *
  • 0x18 {@link KJUR.asn1.DERGeneralizedTime}
  • \\n *
  • 0x30 {@link KJUR.asn1.DERSequence}
  • \\n *
  • 0x31 {@link KJUR.asn1.DERSet}
  • \\n *
\\n *

OTHER ASN.1 CLASSES

\\n *
    \\n *
  • {@link KJUR.asn1.ASN1Object}
  • \\n *
  • {@link KJUR.asn1.DERAbstractString}
  • \\n *
  • {@link KJUR.asn1.DERAbstractTime}
  • \\n *
  • {@link KJUR.asn1.DERAbstractStructured}
  • \\n *
  • {@link KJUR.asn1.DERTaggedObject}
  • \\n *
\\n *

SUB NAME SPACES

\\n *
    \\n *
  • {@link KJUR.asn1.cades} - CAdES long term signature format
  • \\n *
  • {@link KJUR.asn1.cms} - Cryptographic Message Syntax
  • \\n *
  • {@link KJUR.asn1.csr} - Certificate Signing Request (CSR/PKCS#10)
  • \\n *
  • {@link KJUR.asn1.tsp} - RFC 3161 Timestamping Protocol Format
  • \\n *
  • {@link KJUR.asn1.x509} - RFC 5280 X.509 certificate and CRL
  • \\n *
\\n *

\\n * NOTE: Please ignore method summary and document of this namespace.\\n * This caused by a bug of jsdoc2.\\n * @name KJUR.asn1\\n * @namespace\\n */\\nif (typeof KJUR.asn1 == \\"undefined\\" || !KJUR.asn1)\\n KJUR.asn1 = {};\\n/**\\n * ASN1 utilities class\\n * @name KJUR.asn1.ASN1Util\\n * @class ASN1 utilities class\\n * @since asn1 1.0.2\\n */\\nKJUR.asn1.ASN1Util = new function () {\\n this.integerToByteHex = function (i) {\\n var h = i.toString(16);\\n if ((h.length % 2) == 1)\\n h = \'0\' + h;\\n return h;\\n };\\n this.bigIntToMinTwosComplementsHex = function (bigIntegerValue) {\\n var h = bigIntegerValue.toString(16);\\n if (h.substr(0, 1) != \'-\') {\\n if (h.length % 2 == 1) {\\n h = \'0\' + h;\\n }\\n else {\\n if (!h.match(/^[0-7]/)) {\\n h = \'00\' + h;\\n }\\n }\\n }\\n else {\\n var hPos = h.substr(1);\\n var xorLen = hPos.length;\\n if (xorLen % 2 == 1) {\\n xorLen += 1;\\n }\\n else {\\n if (!h.match(/^[0-7]/)) {\\n xorLen += 2;\\n }\\n }\\n var hMask = \'\';\\n for (var i = 0; i < xorLen; i++) {\\n hMask += \'f\';\\n }\\n var biMask = new _jsbn_jsbn__WEBPACK_IMPORTED_MODULE_0__.BigInteger(hMask, 16);\\n var biNeg = biMask.xor(bigIntegerValue).add(_jsbn_jsbn__WEBPACK_IMPORTED_MODULE_0__.BigInteger.ONE);\\n h = biNeg.toString(16).replace(/^-/, \'\');\\n }\\n return h;\\n };\\n /**\\n * get PEM string from hexadecimal data and header string\\n * @name getPEMStringFromHex\\n * @memberOf KJUR.asn1.ASN1Util\\n * @function\\n * @param {String} dataHex hexadecimal string of PEM body\\n * @param {String} pemHeader PEM header string (ex. \'RSA PRIVATE KEY\')\\n * @return {String} PEM formatted string of input data\\n * @description\\n * This method converts a hexadecimal string to a PEM string with\\n * a specified header. Its line break will be CRLF(\\"\\\\r\\\\n\\").\\n * @example\\n * var pem = KJUR.asn1.ASN1Util.getPEMStringFromHex(\'616161\', \'RSA PRIVATE KEY\');\\n * // value of pem will be:\\n * -----BEGIN PRIVATE KEY-----\\n * YWFh\\n * -----END PRIVATE KEY-----\\n */\\n this.getPEMStringFromHex = function (dataHex, pemHeader) {\\n return hextopem(dataHex, pemHeader);\\n };\\n /**\\n * generate ASN1Object specifed by JSON parameters\\n * @name newObject\\n * @memberOf KJUR.asn1.ASN1Util\\n * @function\\n * @param {Array} param JSON parameter to generate ASN1Object\\n * @return {KJUR.asn1.ASN1Object} generated object\\n * @since asn1 1.0.3\\n * @description\\n * generate any ASN1Object specified by JSON param\\n * including ASN.1 primitive or structured.\\n * Generally \'param\' can be described as follows:\\n *
\\n * {TYPE-OF-ASNOBJ: ASN1OBJ-PARAMETER}\\n *
\\n * \'TYPE-OF-ASN1OBJ\' can be one of following symbols:\\n *
    \\n *
  • \'bool\' - DERBoolean
  • \\n *
  • \'int\' - DERInteger
  • \\n *
  • \'bitstr\' - DERBitString
  • \\n *
  • \'octstr\' - DEROctetString
  • \\n *
  • \'null\' - DERNull
  • \\n *
  • \'oid\' - DERObjectIdentifier
  • \\n *
  • \'enum\' - DEREnumerated
  • \\n *
  • \'utf8str\' - DERUTF8String
  • \\n *
  • \'numstr\' - DERNumericString
  • \\n *
  • \'prnstr\' - DERPrintableString
  • \\n *
  • \'telstr\' - DERTeletexString
  • \\n *
  • \'ia5str\' - DERIA5String
  • \\n *
  • \'utctime\' - DERUTCTime
  • \\n *
  • \'gentime\' - DERGeneralizedTime
  • \\n *
  • \'seq\' - DERSequence
  • \\n *
  • \'set\' - DERSet
  • \\n *
  • \'tag\' - DERTaggedObject
  • \\n *
\\n * @example\\n * newObject({\'prnstr\': \'aaa\'});\\n * newObject({\'seq\': [{\'int\': 3}, {\'prnstr\': \'aaa\'}]})\\n * // ASN.1 Tagged Object\\n * newObject({\'tag\': {\'tag\': \'a1\',\\n * \'explicit\': true,\\n * \'obj\': {\'seq\': [{\'int\': 3}, {\'prnstr\': \'aaa\'}]}}});\\n * // more simple representation of ASN.1 Tagged Object\\n * newObject({\'tag\': [\'a1\',\\n * true,\\n * {\'seq\': [\\n * {\'int\': 3},\\n * {\'prnstr\': \'aaa\'}]}\\n * ]});\\n */\\n this.newObject = function (param) {\\n var _KJUR = KJUR, _KJUR_asn1 = _KJUR.asn1, _DERBoolean = _KJUR_asn1.DERBoolean, _DERInteger = _KJUR_asn1.DERInteger, _DERBitString = _KJUR_asn1.DERBitString, _DEROctetString = _KJUR_asn1.DEROctetString, _DERNull = _KJUR_asn1.DERNull, _DERObjectIdentifier = _KJUR_asn1.DERObjectIdentifier, _DEREnumerated = _KJUR_asn1.DEREnumerated, _DERUTF8String = _KJUR_asn1.DERUTF8String, _DERNumericString = _KJUR_asn1.DERNumericString, _DERPrintableString = _KJUR_asn1.DERPrintableString, _DERTeletexString = _KJUR_asn1.DERTeletexString, _DERIA5String = _KJUR_asn1.DERIA5String, _DERUTCTime = _KJUR_asn1.DERUTCTime, _DERGeneralizedTime = _KJUR_asn1.DERGeneralizedTime, _DERSequence = _KJUR_asn1.DERSequence, _DERSet = _KJUR_asn1.DERSet, _DERTaggedObject = _KJUR_asn1.DERTaggedObject, _newObject = _KJUR_asn1.ASN1Util.newObject;\\n var keys = Object.keys(param);\\n if (keys.length != 1)\\n throw \\"key of param shall be only one.\\";\\n var key = keys[0];\\n if (\\":bool:int:bitstr:octstr:null:oid:enum:utf8str:numstr:prnstr:telstr:ia5str:utctime:gentime:seq:set:tag:\\".indexOf(\\":\\" + key + \\":\\") == -1)\\n throw \\"undefined key: \\" + key;\\n if (key == \\"bool\\")\\n return new _DERBoolean(param[key]);\\n if (key == \\"int\\")\\n return new _DERInteger(param[key]);\\n if (key == \\"bitstr\\")\\n return new _DERBitString(param[key]);\\n if (key == \\"octstr\\")\\n return new _DEROctetString(param[key]);\\n if (key == \\"null\\")\\n return new _DERNull(param[key]);\\n if (key == \\"oid\\")\\n return new _DERObjectIdentifier(param[key]);\\n if (key == \\"enum\\")\\n return new _DEREnumerated(param[key]);\\n if (key == \\"utf8str\\")\\n return new _DERUTF8String(param[key]);\\n if (key == \\"numstr\\")\\n return new _DERNumericString(param[key]);\\n if (key == \\"prnstr\\")\\n return new _DERPrintableString(param[key]);\\n if (key == \\"telstr\\")\\n return new _DERTeletexString(param[key]);\\n if (key == \\"ia5str\\")\\n return new _DERIA5String(param[key]);\\n if (key == \\"utctime\\")\\n return new _DERUTCTime(param[key]);\\n if (key == \\"gentime\\")\\n return new _DERGeneralizedTime(param[key]);\\n if (key == \\"seq\\") {\\n var paramList = param[key];\\n var a = [];\\n for (var i = 0; i < paramList.length; i++) {\\n var asn1Obj = _newObject(paramList[i]);\\n a.push(asn1Obj);\\n }\\n return new _DERSequence({ \'array\': a });\\n }\\n if (key == \\"set\\") {\\n var paramList = param[key];\\n var a = [];\\n for (var i = 0; i < paramList.length; i++) {\\n var asn1Obj = _newObject(paramList[i]);\\n a.push(asn1Obj);\\n }\\n return new _DERSet({ \'array\': a });\\n }\\n if (key == \\"tag\\") {\\n var tagParam = param[key];\\n if (Object.prototype.toString.call(tagParam) === \'[object Array]\' &&\\n tagParam.length == 3) {\\n var obj = _newObject(tagParam[2]);\\n return new _DERTaggedObject({ tag: tagParam[0],\\n explicit: tagParam[1],\\n obj: obj });\\n }\\n else {\\n var newParam = {};\\n if (tagParam.explicit !== undefined)\\n newParam.explicit = tagParam.explicit;\\n if (tagParam.tag !== undefined)\\n newParam.tag = tagParam.tag;\\n if (tagParam.obj === undefined)\\n throw \\"obj shall be specified for \'tag\'.\\";\\n newParam.obj = _newObject(tagParam.obj);\\n return new _DERTaggedObject(newParam);\\n }\\n }\\n };\\n /**\\n * get encoded hexadecimal string of ASN1Object specifed by JSON parameters\\n * @name jsonToASN1HEX\\n * @memberOf KJUR.asn1.ASN1Util\\n * @function\\n * @param {Array} param JSON parameter to generate ASN1Object\\n * @return hexadecimal string of ASN1Object\\n * @since asn1 1.0.4\\n * @description\\n * As for ASN.1 object representation of JSON object,\\n * please see {@link newObject}.\\n * @example\\n * jsonToASN1HEX({\'prnstr\': \'aaa\'});\\n */\\n this.jsonToASN1HEX = function (param) {\\n var asn1Obj = this.newObject(param);\\n return asn1Obj.getEncodedHex();\\n };\\n};\\n/**\\n * get dot noted oid number string from hexadecimal value of OID\\n * @name oidHexToInt\\n * @memberOf KJUR.asn1.ASN1Util\\n * @function\\n * @param {String} hex hexadecimal value of object identifier\\n * @return {String} dot noted string of object identifier\\n * @since jsrsasign 4.8.3 asn1 1.0.7\\n * @description\\n * This static method converts from hexadecimal string representation of\\n * ASN.1 value of object identifier to oid number string.\\n * @example\\n * KJUR.asn1.ASN1Util.oidHexToInt(\'550406\') → \\"2.5.4.6\\"\\n */\\nKJUR.asn1.ASN1Util.oidHexToInt = function (hex) {\\n var s = \\"\\";\\n var i01 = parseInt(hex.substr(0, 2), 16);\\n var i0 = Math.floor(i01 / 40);\\n var i1 = i01 % 40;\\n var s = i0 + \\".\\" + i1;\\n var binbuf = \\"\\";\\n for (var i = 2; i < hex.length; i += 2) {\\n var value = parseInt(hex.substr(i, 2), 16);\\n var bin = (\\"00000000\\" + value.toString(2)).slice(-8);\\n binbuf = binbuf + bin.substr(1, 7);\\n if (bin.substr(0, 1) == \\"0\\") {\\n var bi = new _jsbn_jsbn__WEBPACK_IMPORTED_MODULE_0__.BigInteger(binbuf, 2);\\n s = s + \\".\\" + bi.toString(10);\\n binbuf = \\"\\";\\n }\\n }\\n ;\\n return s;\\n};\\n/**\\n * get hexadecimal value of object identifier from dot noted oid value\\n * @name oidIntToHex\\n * @memberOf KJUR.asn1.ASN1Util\\n * @function\\n * @param {String} oidString dot noted string of object identifier\\n * @return {String} hexadecimal value of object identifier\\n * @since jsrsasign 4.8.3 asn1 1.0.7\\n * @description\\n * This static method converts from object identifier value string.\\n * to hexadecimal string representation of it.\\n * @example\\n * KJUR.asn1.ASN1Util.oidIntToHex(\\"2.5.4.6\\") → \\"550406\\"\\n */\\nKJUR.asn1.ASN1Util.oidIntToHex = function (oidString) {\\n var itox = function (i) {\\n var h = i.toString(16);\\n if (h.length == 1)\\n h = \'0\' + h;\\n return h;\\n };\\n var roidtox = function (roid) {\\n var h = \'\';\\n var bi = new _jsbn_jsbn__WEBPACK_IMPORTED_MODULE_0__.BigInteger(roid, 10);\\n var b = bi.toString(2);\\n var padLen = 7 - b.length % 7;\\n if (padLen == 7)\\n padLen = 0;\\n var bPad = \'\';\\n for (var i = 0; i < padLen; i++)\\n bPad += \'0\';\\n b = bPad + b;\\n for (var i = 0; i < b.length - 1; i += 7) {\\n var b8 = b.substr(i, 7);\\n if (i != b.length - 7)\\n b8 = \'1\' + b8;\\n h += itox(parseInt(b8, 2));\\n }\\n return h;\\n };\\n if (!oidString.match(/^[0-9.]+$/)) {\\n throw \\"malformed oid string: \\" + oidString;\\n }\\n var h = \'\';\\n var a = oidString.split(\'.\');\\n var i0 = parseInt(a[0]) * 40 + parseInt(a[1]);\\n h += itox(i0);\\n a.splice(0, 2);\\n for (var i = 0; i < a.length; i++) {\\n h += roidtox(a[i]);\\n }\\n return h;\\n};\\n// ********************************************************************\\n// Abstract ASN.1 Classes\\n// ********************************************************************\\n// ********************************************************************\\n/**\\n * base class for ASN.1 DER encoder object\\n * @name KJUR.asn1.ASN1Object\\n * @class base class for ASN.1 DER encoder object\\n * @property {Boolean} isModified flag whether internal data was changed\\n * @property {String} hTLV hexadecimal string of ASN.1 TLV\\n * @property {String} hT hexadecimal string of ASN.1 TLV tag(T)\\n * @property {String} hL hexadecimal string of ASN.1 TLV length(L)\\n * @property {String} hV hexadecimal string of ASN.1 TLV value(V)\\n * @description\\n */\\nKJUR.asn1.ASN1Object = function () {\\n var isModified = true;\\n var hTLV = null;\\n var hT = \'00\';\\n var hL = \'00\';\\n var hV = \'\';\\n /**\\n * get hexadecimal ASN.1 TLV length(L) bytes from TLV value(V)\\n * @name getLengthHexFromValue\\n * @memberOf KJUR.asn1.ASN1Object#\\n * @function\\n * @return {String} hexadecimal string of ASN.1 TLV length(L)\\n */\\n this.getLengthHexFromValue = function () {\\n if (typeof this.hV == \\"undefined\\" || this.hV == null) {\\n throw \\"this.hV is null or undefined.\\";\\n }\\n if (this.hV.length % 2 == 1) {\\n throw \\"value hex must be even length: n=\\" + hV.length + \\",v=\\" + this.hV;\\n }\\n var n = this.hV.length / 2;\\n var hN = n.toString(16);\\n if (hN.length % 2 == 1) {\\n hN = \\"0\\" + hN;\\n }\\n if (n < 128) {\\n return hN;\\n }\\n else {\\n var hNlen = hN.length / 2;\\n if (hNlen > 15) {\\n throw \\"ASN.1 length too long to represent by 8x: n = \\" + n.toString(16);\\n }\\n var head = 128 + hNlen;\\n return head.toString(16) + hN;\\n }\\n };\\n /**\\n * get hexadecimal string of ASN.1 TLV bytes\\n * @name getEncodedHex\\n * @memberOf KJUR.asn1.ASN1Object#\\n * @function\\n * @return {String} hexadecimal string of ASN.1 TLV\\n */\\n this.getEncodedHex = function () {\\n if (this.hTLV == null || this.isModified) {\\n this.hV = this.getFreshValueHex();\\n this.hL = this.getLengthHexFromValue();\\n this.hTLV = this.hT + this.hL + this.hV;\\n this.isModified = false;\\n //alert(\\"first time: \\" + this.hTLV);\\n }\\n return this.hTLV;\\n };\\n /**\\n * get hexadecimal string of ASN.1 TLV value(V) bytes\\n * @name getValueHex\\n * @memberOf KJUR.asn1.ASN1Object#\\n * @function\\n * @return {String} hexadecimal string of ASN.1 TLV value(V) bytes\\n */\\n this.getValueHex = function () {\\n this.getEncodedHex();\\n return this.hV;\\n };\\n this.getFreshValueHex = function () {\\n return \'\';\\n };\\n};\\n// == BEGIN DERAbstractString ================================================\\n/**\\n * base class for ASN.1 DER string classes\\n * @name KJUR.asn1.DERAbstractString\\n * @class base class for ASN.1 DER string classes\\n * @param {Array} params associative array of parameters (ex. {\'str\': \'aaa\'})\\n * @property {String} s internal string of value\\n * @extends KJUR.asn1.ASN1Object\\n * @description\\n *
\\n * As for argument \'params\' for constructor, you can specify one of\\n * following properties:\\n *
    \\n *
  • str - specify initial ASN.1 value(V) by a string
  • \\n *
  • hex - specify initial ASN.1 value(V) by a hexadecimal string
  • \\n *
\\n * NOTE: \'params\' can be omitted.\\n */\\nKJUR.asn1.DERAbstractString = function (params) {\\n KJUR.asn1.DERAbstractString.superclass.constructor.call(this);\\n var s = null;\\n var hV = null;\\n /**\\n * get string value of this string object\\n * @name getString\\n * @memberOf KJUR.asn1.DERAbstractString#\\n * @function\\n * @return {String} string value of this string object\\n */\\n this.getString = function () {\\n return this.s;\\n };\\n /**\\n * set value by a string\\n * @name setString\\n * @memberOf KJUR.asn1.DERAbstractString#\\n * @function\\n * @param {String} newS value by a string to set\\n */\\n this.setString = function (newS) {\\n this.hTLV = null;\\n this.isModified = true;\\n this.s = newS;\\n this.hV = stohex(this.s);\\n };\\n /**\\n * set value by a hexadecimal string\\n * @name setStringHex\\n * @memberOf KJUR.asn1.DERAbstractString#\\n * @function\\n * @param {String} newHexString value by a hexadecimal string to set\\n */\\n this.setStringHex = function (newHexString) {\\n this.hTLV = null;\\n this.isModified = true;\\n this.s = null;\\n this.hV = newHexString;\\n };\\n this.getFreshValueHex = function () {\\n return this.hV;\\n };\\n if (typeof params != \\"undefined\\") {\\n if (typeof params == \\"string\\") {\\n this.setString(params);\\n }\\n else if (typeof params[\'str\'] != \\"undefined\\") {\\n this.setString(params[\'str\']);\\n }\\n else if (typeof params[\'hex\'] != \\"undefined\\") {\\n this.setStringHex(params[\'hex\']);\\n }\\n }\\n};\\n_yahoo__WEBPACK_IMPORTED_MODULE_1__.YAHOO.lang.extend(KJUR.asn1.DERAbstractString, KJUR.asn1.ASN1Object);\\n// == END DERAbstractString ================================================\\n// == BEGIN DERAbstractTime ==================================================\\n/**\\n * base class for ASN.1 DER Generalized/UTCTime class\\n * @name KJUR.asn1.DERAbstractTime\\n * @class base class for ASN.1 DER Generalized/UTCTime class\\n * @param {Array} params associative array of parameters (ex. {\'str\': \'130430235959Z\'})\\n * @extends KJUR.asn1.ASN1Object\\n * @description\\n * @see KJUR.asn1.ASN1Object - superclass\\n */\\nKJUR.asn1.DERAbstractTime = function (params) {\\n KJUR.asn1.DERAbstractTime.superclass.constructor.call(this);\\n var s = null;\\n var date = null;\\n // --- PRIVATE METHODS --------------------\\n this.localDateToUTC = function (d) {\\n utc = d.getTime() + (d.getTimezoneOffset() * 60000);\\n var utcDate = new Date(utc);\\n return utcDate;\\n };\\n /*\\n * format date string by Data object\\n * @name formatDate\\n * @memberOf KJUR.asn1.AbstractTime;\\n * @param {Date} dateObject\\n * @param {string} type \'utc\' or \'gen\'\\n * @param {boolean} withMillis flag for with millisections or not\\n * @description\\n * \'withMillis\' flag is supported from asn1 1.0.6.\\n */\\n this.formatDate = function (dateObject, type, withMillis) {\\n var pad = this.zeroPadding;\\n var d = this.localDateToUTC(dateObject);\\n var year = String(d.getFullYear());\\n if (type == \'utc\')\\n year = year.substr(2, 2);\\n var month = pad(String(d.getMonth() + 1), 2);\\n var day = pad(String(d.getDate()), 2);\\n var hour = pad(String(d.getHours()), 2);\\n var min = pad(String(d.getMinutes()), 2);\\n var sec = pad(String(d.getSeconds()), 2);\\n var s = year + month + day + hour + min + sec;\\n if (withMillis === true) {\\n var millis = d.getMilliseconds();\\n if (millis != 0) {\\n var sMillis = pad(String(millis), 3);\\n sMillis = sMillis.replace(/[0]+$/, \\"\\");\\n s = s + \\".\\" + sMillis;\\n }\\n }\\n return s + \\"Z\\";\\n };\\n this.zeroPadding = function (s, len) {\\n if (s.length >= len)\\n return s;\\n return new Array(len - s.length + 1).join(\'0\') + s;\\n };\\n // --- PUBLIC METHODS --------------------\\n /**\\n * get string value of this string object\\n * @name getString\\n * @memberOf KJUR.asn1.DERAbstractTime#\\n * @function\\n * @return {String} string value of this time object\\n */\\n this.getString = function () {\\n return this.s;\\n };\\n /**\\n * set value by a string\\n * @name setString\\n * @memberOf KJUR.asn1.DERAbstractTime#\\n * @function\\n * @param {String} newS value by a string to set such like \\"130430235959Z\\"\\n */\\n this.setString = function (newS) {\\n this.hTLV = null;\\n this.isModified = true;\\n this.s = newS;\\n this.hV = stohex(newS);\\n };\\n /**\\n * set value by a Date object\\n * @name setByDateValue\\n * @memberOf KJUR.asn1.DERAbstractTime#\\n * @function\\n * @param {Integer} year year of date (ex. 2013)\\n * @param {Integer} month month of date between 1 and 12 (ex. 12)\\n * @param {Integer} day day of month\\n * @param {Integer} hour hours of date\\n * @param {Integer} min minutes of date\\n * @param {Integer} sec seconds of date\\n */\\n this.setByDateValue = function (year, month, day, hour, min, sec) {\\n var dateObject = new Date(Date.UTC(year, month - 1, day, hour, min, sec, 0));\\n this.setByDate(dateObject);\\n };\\n this.getFreshValueHex = function () {\\n return this.hV;\\n };\\n};\\n_yahoo__WEBPACK_IMPORTED_MODULE_1__.YAHOO.lang.extend(KJUR.asn1.DERAbstractTime, KJUR.asn1.ASN1Object);\\n// == END DERAbstractTime ==================================================\\n// == BEGIN DERAbstractStructured ============================================\\n/**\\n * base class for ASN.1 DER structured class\\n * @name KJUR.asn1.DERAbstractStructured\\n * @class base class for ASN.1 DER structured class\\n * @property {Array} asn1Array internal array of ASN1Object\\n * @extends KJUR.asn1.ASN1Object\\n * @description\\n * @see KJUR.asn1.ASN1Object - superclass\\n */\\nKJUR.asn1.DERAbstractStructured = function (params) {\\n KJUR.asn1.DERAbstractString.superclass.constructor.call(this);\\n var asn1Array = null;\\n /**\\n * set value by array of ASN1Object\\n * @name setByASN1ObjectArray\\n * @memberOf KJUR.asn1.DERAbstractStructured#\\n * @function\\n * @param {array} asn1ObjectArray array of ASN1Object to set\\n */\\n this.setByASN1ObjectArray = function (asn1ObjectArray) {\\n this.hTLV = null;\\n this.isModified = true;\\n this.asn1Array = asn1ObjectArray;\\n };\\n /**\\n * append an ASN1Object to internal array\\n * @name appendASN1Object\\n * @memberOf KJUR.asn1.DERAbstractStructured#\\n * @function\\n * @param {ASN1Object} asn1Object to add\\n */\\n this.appendASN1Object = function (asn1Object) {\\n this.hTLV = null;\\n this.isModified = true;\\n this.asn1Array.push(asn1Object);\\n };\\n this.asn1Array = new Array();\\n if (typeof params != \\"undefined\\") {\\n if (typeof params[\'array\'] != \\"undefined\\") {\\n this.asn1Array = params[\'array\'];\\n }\\n }\\n};\\n_yahoo__WEBPACK_IMPORTED_MODULE_1__.YAHOO.lang.extend(KJUR.asn1.DERAbstractStructured, KJUR.asn1.ASN1Object);\\n// ********************************************************************\\n// ASN.1 Object Classes\\n// ********************************************************************\\n// ********************************************************************\\n/**\\n * class for ASN.1 DER Boolean\\n * @name KJUR.asn1.DERBoolean\\n * @class class for ASN.1 DER Boolean\\n * @extends KJUR.asn1.ASN1Object\\n * @description\\n * @see KJUR.asn1.ASN1Object - superclass\\n */\\nKJUR.asn1.DERBoolean = function () {\\n KJUR.asn1.DERBoolean.superclass.constructor.call(this);\\n this.hT = \\"01\\";\\n this.hTLV = \\"0101ff\\";\\n};\\n_yahoo__WEBPACK_IMPORTED_MODULE_1__.YAHOO.lang.extend(KJUR.asn1.DERBoolean, KJUR.asn1.ASN1Object);\\n// ********************************************************************\\n/**\\n * class for ASN.1 DER Integer\\n * @name KJUR.asn1.DERInteger\\n * @class class for ASN.1 DER Integer\\n * @extends KJUR.asn1.ASN1Object\\n * @description\\n *
\\n * As for argument \'params\' for constructor, you can specify one of\\n * following properties:\\n *
    \\n *
  • int - specify initial ASN.1 value(V) by integer value
  • \\n *
  • bigint - specify initial ASN.1 value(V) by BigInteger object
  • \\n *
  • hex - specify initial ASN.1 value(V) by a hexadecimal string
  • \\n *
\\n * NOTE: \'params\' can be omitted.\\n */\\nKJUR.asn1.DERInteger = function (params) {\\n KJUR.asn1.DERInteger.superclass.constructor.call(this);\\n this.hT = \\"02\\";\\n /**\\n * set value by Tom Wu\'s BigInteger object\\n * @name setByBigInteger\\n * @memberOf KJUR.asn1.DERInteger#\\n * @function\\n * @param {BigInteger} bigIntegerValue to set\\n */\\n this.setByBigInteger = function (bigIntegerValue) {\\n this.hTLV = null;\\n this.isModified = true;\\n this.hV = KJUR.asn1.ASN1Util.bigIntToMinTwosComplementsHex(bigIntegerValue);\\n };\\n /**\\n * set value by integer value\\n * @name setByInteger\\n * @memberOf KJUR.asn1.DERInteger\\n * @function\\n * @param {Integer} integer value to set\\n */\\n this.setByInteger = function (intValue) {\\n var bi = new _jsbn_jsbn__WEBPACK_IMPORTED_MODULE_0__.BigInteger(String(intValue), 10);\\n this.setByBigInteger(bi);\\n };\\n /**\\n * set value by integer value\\n * @name setValueHex\\n * @memberOf KJUR.asn1.DERInteger#\\n * @function\\n * @param {String} hexadecimal string of integer value\\n * @description\\n *
\\n * NOTE: Value shall be represented by minimum octet length of\\n * two\'s complement representation.\\n * @example\\n * new KJUR.asn1.DERInteger(123);\\n * new KJUR.asn1.DERInteger({\'int\': 123});\\n * new KJUR.asn1.DERInteger({\'hex\': \'1fad\'});\\n */\\n this.setValueHex = function (newHexString) {\\n this.hV = newHexString;\\n };\\n this.getFreshValueHex = function () {\\n return this.hV;\\n };\\n if (typeof params != \\"undefined\\") {\\n if (typeof params[\'bigint\'] != \\"undefined\\") {\\n this.setByBigInteger(params[\'bigint\']);\\n }\\n else if (typeof params[\'int\'] != \\"undefined\\") {\\n this.setByInteger(params[\'int\']);\\n }\\n else if (typeof params == \\"number\\") {\\n this.setByInteger(params);\\n }\\n else if (typeof params[\'hex\'] != \\"undefined\\") {\\n this.setValueHex(params[\'hex\']);\\n }\\n }\\n};\\n_yahoo__WEBPACK_IMPORTED_MODULE_1__.YAHOO.lang.extend(KJUR.asn1.DERInteger, KJUR.asn1.ASN1Object);\\n// ********************************************************************\\n/**\\n * class for ASN.1 DER encoded BitString primitive\\n * @name KJUR.asn1.DERBitString\\n * @class class for ASN.1 DER encoded BitString primitive\\n * @extends KJUR.asn1.ASN1Object\\n * @description\\n *
\\n * As for argument \'params\' for constructor, you can specify one of\\n * following properties:\\n *
    \\n *
  • bin - specify binary string (ex. \'10111\')
  • \\n *
  • array - specify array of boolean (ex. [true,false,true,true])
  • \\n *
  • hex - specify hexadecimal string of ASN.1 value(V) including unused bits
  • \\n *
  • obj - specify {@link KJUR.asn1.ASN1Util.newObject}\\n * argument for \\"BitString encapsulates\\" structure.
  • \\n *
\\n * NOTE1: \'params\' can be omitted.
\\n * NOTE2: \'obj\' parameter have been supported since\\n * asn1 1.0.11, jsrsasign 6.1.1 (2016-Sep-25).
\\n * @example\\n * // default constructor\\n * o = new KJUR.asn1.DERBitString();\\n * // initialize with binary string\\n * o = new KJUR.asn1.DERBitString({bin: \\"1011\\"});\\n * // initialize with boolean array\\n * o = new KJUR.asn1.DERBitString({array: [true,false,true,true]});\\n * // initialize with hexadecimal string (04 is unused bits)\\n * o = new KJUR.asn1.DEROctetString({hex: \\"04bac0\\"});\\n * // initialize with ASN1Util.newObject argument for encapsulated\\n * o = new KJUR.asn1.DERBitString({obj: {seq: [{int: 3}, {prnstr: \'aaa\'}]}});\\n * // above generates a ASN.1 data like this:\\n * // BIT STRING, encapsulates {\\n * // SEQUENCE {\\n * // INTEGER 3\\n * // PrintableString \'aaa\'\\n * // }\\n * // }\\n */\\nKJUR.asn1.DERBitString = function (params) {\\n if (params !== undefined && typeof params.obj !== \\"undefined\\") {\\n var o = KJUR.asn1.ASN1Util.newObject(params.obj);\\n params.hex = \\"00\\" + o.getEncodedHex();\\n }\\n KJUR.asn1.DERBitString.superclass.constructor.call(this);\\n this.hT = \\"03\\";\\n /**\\n * set ASN.1 value(V) by a hexadecimal string including unused bits\\n * @name setHexValueIncludingUnusedBits\\n * @memberOf KJUR.asn1.DERBitString#\\n * @function\\n * @param {String} newHexStringIncludingUnusedBits\\n */\\n this.setHexValueIncludingUnusedBits = function (newHexStringIncludingUnusedBits) {\\n this.hTLV = null;\\n this.isModified = true;\\n this.hV = newHexStringIncludingUnusedBits;\\n };\\n /**\\n * set ASN.1 value(V) by unused bit and hexadecimal string of value\\n * @name setUnusedBitsAndHexValue\\n * @memberOf KJUR.asn1.DERBitString#\\n * @function\\n * @param {Integer} unusedBits\\n * @param {String} hValue\\n */\\n this.setUnusedBitsAndHexValue = function (unusedBits, hValue) {\\n if (unusedBits < 0 || 7 < unusedBits) {\\n throw \\"unused bits shall be from 0 to 7: u = \\" + unusedBits;\\n }\\n var hUnusedBits = \\"0\\" + unusedBits;\\n this.hTLV = null;\\n this.isModified = true;\\n this.hV = hUnusedBits + hValue;\\n };\\n /**\\n * set ASN.1 DER BitString by binary string
\\n * @name setByBinaryString\\n * @memberOf KJUR.asn1.DERBitString#\\n * @function\\n * @param {String} binaryString binary value string (i.e. \'10111\')\\n * @description\\n * Its unused bits will be calculated automatically by length of\\n * \'binaryValue\'.
\\n * NOTE: Trailing zeros \'0\' will be ignored.\\n * @example\\n * o = new KJUR.asn1.DERBitString();\\n * o.setByBooleanArray(\\"01011\\");\\n */\\n this.setByBinaryString = function (binaryString) {\\n binaryString = binaryString.replace(/0+$/, \'\');\\n var unusedBits = 8 - binaryString.length % 8;\\n if (unusedBits == 8)\\n unusedBits = 0;\\n for (var i = 0; i <= unusedBits; i++) {\\n binaryString += \'0\';\\n }\\n var h = \'\';\\n for (var i = 0; i < binaryString.length - 1; i += 8) {\\n var b = binaryString.substr(i, 8);\\n var x = parseInt(b, 2).toString(16);\\n if (x.length == 1)\\n x = \'0\' + x;\\n h += x;\\n }\\n this.hTLV = null;\\n this.isModified = true;\\n this.hV = \'0\' + unusedBits + h;\\n };\\n /**\\n * set ASN.1 TLV value(V) by an array of boolean
\\n * @name setByBooleanArray\\n * @memberOf KJUR.asn1.DERBitString#\\n * @function\\n * @param {array} booleanArray array of boolean (ex. [true, false, true])\\n * @description\\n * NOTE: Trailing falses will be ignored in the ASN.1 DER Object.\\n * @example\\n * o = new KJUR.asn1.DERBitString();\\n * o.setByBooleanArray([false, true, false, true, true]);\\n */\\n this.setByBooleanArray = function (booleanArray) {\\n var s = \'\';\\n for (var i = 0; i < booleanArray.length; i++) {\\n if (booleanArray[i] == true) {\\n s += \'1\';\\n }\\n else {\\n s += \'0\';\\n }\\n }\\n this.setByBinaryString(s);\\n };\\n /**\\n * generate an array of falses with specified length
\\n * @name newFalseArray\\n * @memberOf KJUR.asn1.DERBitString\\n * @function\\n * @param {Integer} nLength length of array to generate\\n * @return {array} array of boolean falses\\n * @description\\n * This static method may be useful to initialize boolean array.\\n * @example\\n * o = new KJUR.asn1.DERBitString();\\n * o.newFalseArray(3) → [false, false, false]\\n */\\n this.newFalseArray = function (nLength) {\\n var a = new Array(nLength);\\n for (var i = 0; i < nLength; i++) {\\n a[i] = false;\\n }\\n return a;\\n };\\n this.getFreshValueHex = function () {\\n return this.hV;\\n };\\n if (typeof params != \\"undefined\\") {\\n if (typeof params == \\"string\\" && params.toLowerCase().match(/^[0-9a-f]+$/)) {\\n this.setHexValueIncludingUnusedBits(params);\\n }\\n else if (typeof params[\'hex\'] != \\"undefined\\") {\\n this.setHexValueIncludingUnusedBits(params[\'hex\']);\\n }\\n else if (typeof params[\'bin\'] != \\"undefined\\") {\\n this.setByBinaryString(params[\'bin\']);\\n }\\n else if (typeof params[\'array\'] != \\"undefined\\") {\\n this.setByBooleanArray(params[\'array\']);\\n }\\n }\\n};\\n_yahoo__WEBPACK_IMPORTED_MODULE_1__.YAHOO.lang.extend(KJUR.asn1.DERBitString, KJUR.asn1.ASN1Object);\\n// ********************************************************************\\n/**\\n * class for ASN.1 DER OctetString
\\n * @name KJUR.asn1.DEROctetString\\n * @class class for ASN.1 DER OctetString\\n * @param {Array} params associative array of parameters (ex. {\'str\': \'aaa\'})\\n * @extends KJUR.asn1.DERAbstractString\\n * @description\\n * This class provides ASN.1 OctetString simple type.
\\n * Supported \\"params\\" attributes are:\\n *
    \\n *
  • str - to set a string as a value
  • \\n *
  • hex - to set a hexadecimal string as a value
  • \\n *
  • obj - to set a encapsulated ASN.1 value by JSON object\\n * which is defined in {@link KJUR.asn1.ASN1Util.newObject}
  • \\n *
\\n * NOTE: A parameter \'obj\' have been supported\\n * for \\"OCTET STRING, encapsulates\\" structure.\\n * since asn1 1.0.11, jsrsasign 6.1.1 (2016-Sep-25).\\n * @see KJUR.asn1.DERAbstractString - superclass\\n * @example\\n * // default constructor\\n * o = new KJUR.asn1.DEROctetString();\\n * // initialize with string\\n * o = new KJUR.asn1.DEROctetString({str: \\"aaa\\"});\\n * // initialize with hexadecimal string\\n * o = new KJUR.asn1.DEROctetString({hex: \\"616161\\"});\\n * // initialize with ASN1Util.newObject argument\\n * o = new KJUR.asn1.DEROctetString({obj: {seq: [{int: 3}, {prnstr: \'aaa\'}]}});\\n * // above generates a ASN.1 data like this:\\n * // OCTET STRING, encapsulates {\\n * // SEQUENCE {\\n * // INTEGER 3\\n * // PrintableString \'aaa\'\\n * // }\\n * // }\\n */\\nKJUR.asn1.DEROctetString = function (params) {\\n if (params !== undefined && typeof params.obj !== \\"undefined\\") {\\n var o = KJUR.asn1.ASN1Util.newObject(params.obj);\\n params.hex = o.getEncodedHex();\\n }\\n KJUR.asn1.DEROctetString.superclass.constructor.call(this, params);\\n this.hT = \\"04\\";\\n};\\n_yahoo__WEBPACK_IMPORTED_MODULE_1__.YAHOO.lang.extend(KJUR.asn1.DEROctetString, KJUR.asn1.DERAbstractString);\\n// ********************************************************************\\n/**\\n * class for ASN.1 DER Null\\n * @name KJUR.asn1.DERNull\\n * @class class for ASN.1 DER Null\\n * @extends KJUR.asn1.ASN1Object\\n * @description\\n * @see KJUR.asn1.ASN1Object - superclass\\n */\\nKJUR.asn1.DERNull = function () {\\n KJUR.asn1.DERNull.superclass.constructor.call(this);\\n this.hT = \\"05\\";\\n this.hTLV = \\"0500\\";\\n};\\n_yahoo__WEBPACK_IMPORTED_MODULE_1__.YAHOO.lang.extend(KJUR.asn1.DERNull, KJUR.asn1.ASN1Object);\\n// ********************************************************************\\n/**\\n * class for ASN.1 DER ObjectIdentifier\\n * @name KJUR.asn1.DERObjectIdentifier\\n * @class class for ASN.1 DER ObjectIdentifier\\n * @param {Array} params associative array of parameters (ex. {\'oid\': \'2.5.4.5\'})\\n * @extends KJUR.asn1.ASN1Object\\n * @description\\n *
\\n * As for argument \'params\' for constructor, you can specify one of\\n * following properties:\\n *
    \\n *
  • oid - specify initial ASN.1 value(V) by a oid string (ex. 2.5.4.13)
  • \\n *
  • hex - specify initial ASN.1 value(V) by a hexadecimal string
  • \\n *
\\n * NOTE: \'params\' can be omitted.\\n */\\nKJUR.asn1.DERObjectIdentifier = function (params) {\\n var itox = function (i) {\\n var h = i.toString(16);\\n if (h.length == 1)\\n h = \'0\' + h;\\n return h;\\n };\\n var roidtox = function (roid) {\\n var h = \'\';\\n var bi = new _jsbn_jsbn__WEBPACK_IMPORTED_MODULE_0__.BigInteger(roid, 10);\\n var b = bi.toString(2);\\n var padLen = 7 - b.length % 7;\\n if (padLen == 7)\\n padLen = 0;\\n var bPad = \'\';\\n for (var i = 0; i < padLen; i++)\\n bPad += \'0\';\\n b = bPad + b;\\n for (var i = 0; i < b.length - 1; i += 7) {\\n var b8 = b.substr(i, 7);\\n if (i != b.length - 7)\\n b8 = \'1\' + b8;\\n h += itox(parseInt(b8, 2));\\n }\\n return h;\\n };\\n KJUR.asn1.DERObjectIdentifier.superclass.constructor.call(this);\\n this.hT = \\"06\\";\\n /**\\n * set value by a hexadecimal string\\n * @name setValueHex\\n * @memberOf KJUR.asn1.DERObjectIdentifier#\\n * @function\\n * @param {String} newHexString hexadecimal value of OID bytes\\n */\\n this.setValueHex = function (newHexString) {\\n this.hTLV = null;\\n this.isModified = true;\\n this.s = null;\\n this.hV = newHexString;\\n };\\n /**\\n * set value by a OID string
\\n * @name setValueOidString\\n * @memberOf KJUR.asn1.DERObjectIdentifier#\\n * @function\\n * @param {String} oidString OID string (ex. 2.5.4.13)\\n * @example\\n * o = new KJUR.asn1.DERObjectIdentifier();\\n * o.setValueOidString(\\"2.5.4.13\\");\\n */\\n this.setValueOidString = function (oidString) {\\n if (!oidString.match(/^[0-9.]+$/)) {\\n throw \\"malformed oid string: \\" + oidString;\\n }\\n var h = \'\';\\n var a = oidString.split(\'.\');\\n var i0 = parseInt(a[0]) * 40 + parseInt(a[1]);\\n h += itox(i0);\\n a.splice(0, 2);\\n for (var i = 0; i < a.length; i++) {\\n h += roidtox(a[i]);\\n }\\n this.hTLV = null;\\n this.isModified = true;\\n this.s = null;\\n this.hV = h;\\n };\\n /**\\n * set value by a OID name\\n * @name setValueName\\n * @memberOf KJUR.asn1.DERObjectIdentifier#\\n * @function\\n * @param {String} oidName OID name (ex. \'serverAuth\')\\n * @since 1.0.1\\n * @description\\n * OID name shall be defined in \'KJUR.asn1.x509.OID.name2oidList\'.\\n * Otherwise raise error.\\n * @example\\n * o = new KJUR.asn1.DERObjectIdentifier();\\n * o.setValueName(\\"serverAuth\\");\\n */\\n this.setValueName = function (oidName) {\\n var oid = KJUR.asn1.x509.OID.name2oid(oidName);\\n if (oid !== \'\') {\\n this.setValueOidString(oid);\\n }\\n else {\\n throw \\"DERObjectIdentifier oidName undefined: \\" + oidName;\\n }\\n };\\n this.getFreshValueHex = function () {\\n return this.hV;\\n };\\n if (params !== undefined) {\\n if (typeof params === \\"string\\") {\\n if (params.match(/^[0-2].[0-9.]+$/)) {\\n this.setValueOidString(params);\\n }\\n else {\\n this.setValueName(params);\\n }\\n }\\n else if (params.oid !== undefined) {\\n this.setValueOidString(params.oid);\\n }\\n else if (params.hex !== undefined) {\\n this.setValueHex(params.hex);\\n }\\n else if (params.name !== undefined) {\\n this.setValueName(params.name);\\n }\\n }\\n};\\n_yahoo__WEBPACK_IMPORTED_MODULE_1__.YAHOO.lang.extend(KJUR.asn1.DERObjectIdentifier, KJUR.asn1.ASN1Object);\\n// ********************************************************************\\n/**\\n * class for ASN.1 DER Enumerated\\n * @name KJUR.asn1.DEREnumerated\\n * @class class for ASN.1 DER Enumerated\\n * @extends KJUR.asn1.ASN1Object\\n * @description\\n *
\\n * As for argument \'params\' for constructor, you can specify one of\\n * following properties:\\n *
    \\n *
  • int - specify initial ASN.1 value(V) by integer value
  • \\n *
  • hex - specify initial ASN.1 value(V) by a hexadecimal string
  • \\n *
\\n * NOTE: \'params\' can be omitted.\\n * @example\\n * new KJUR.asn1.DEREnumerated(123);\\n * new KJUR.asn1.DEREnumerated({int: 123});\\n * new KJUR.asn1.DEREnumerated({hex: \'1fad\'});\\n */\\nKJUR.asn1.DEREnumerated = function (params) {\\n KJUR.asn1.DEREnumerated.superclass.constructor.call(this);\\n this.hT = \\"0a\\";\\n /**\\n * set value by Tom Wu\'s BigInteger object\\n * @name setByBigInteger\\n * @memberOf KJUR.asn1.DEREnumerated#\\n * @function\\n * @param {BigInteger} bigIntegerValue to set\\n */\\n this.setByBigInteger = function (bigIntegerValue) {\\n this.hTLV = null;\\n this.isModified = true;\\n this.hV = KJUR.asn1.ASN1Util.bigIntToMinTwosComplementsHex(bigIntegerValue);\\n };\\n /**\\n * set value by integer value\\n * @name setByInteger\\n * @memberOf KJUR.asn1.DEREnumerated#\\n * @function\\n * @param {Integer} integer value to set\\n */\\n this.setByInteger = function (intValue) {\\n var bi = new _jsbn_jsbn__WEBPACK_IMPORTED_MODULE_0__.BigInteger(String(intValue), 10);\\n this.setByBigInteger(bi);\\n };\\n /**\\n * set value by integer value\\n * @name setValueHex\\n * @memberOf KJUR.asn1.DEREnumerated#\\n * @function\\n * @param {String} hexadecimal string of integer value\\n * @description\\n *
\\n * NOTE: Value shall be represented by minimum octet length of\\n * two\'s complement representation.\\n */\\n this.setValueHex = function (newHexString) {\\n this.hV = newHexString;\\n };\\n this.getFreshValueHex = function () {\\n return this.hV;\\n };\\n if (typeof params != \\"undefined\\") {\\n if (typeof params[\'int\'] != \\"undefined\\") {\\n this.setByInteger(params[\'int\']);\\n }\\n else if (typeof params == \\"number\\") {\\n this.setByInteger(params);\\n }\\n else if (typeof params[\'hex\'] != \\"undefined\\") {\\n this.setValueHex(params[\'hex\']);\\n }\\n }\\n};\\n_yahoo__WEBPACK_IMPORTED_MODULE_1__.YAHOO.lang.extend(KJUR.asn1.DEREnumerated, KJUR.asn1.ASN1Object);\\n// ********************************************************************\\n/**\\n * class for ASN.1 DER UTF8String\\n * @name KJUR.asn1.DERUTF8String\\n * @class class for ASN.1 DER UTF8String\\n * @param {Array} params associative array of parameters (ex. {\'str\': \'aaa\'})\\n * @extends KJUR.asn1.DERAbstractString\\n * @description\\n * @see KJUR.asn1.DERAbstractString - superclass\\n */\\nKJUR.asn1.DERUTF8String = function (params) {\\n KJUR.asn1.DERUTF8String.superclass.constructor.call(this, params);\\n this.hT = \\"0c\\";\\n};\\n_yahoo__WEBPACK_IMPORTED_MODULE_1__.YAHOO.lang.extend(KJUR.asn1.DERUTF8String, KJUR.asn1.DERAbstractString);\\n// ********************************************************************\\n/**\\n * class for ASN.1 DER NumericString\\n * @name KJUR.asn1.DERNumericString\\n * @class class for ASN.1 DER NumericString\\n * @param {Array} params associative array of parameters (ex. {\'str\': \'aaa\'})\\n * @extends KJUR.asn1.DERAbstractString\\n * @description\\n * @see KJUR.asn1.DERAbstractString - superclass\\n */\\nKJUR.asn1.DERNumericString = function (params) {\\n KJUR.asn1.DERNumericString.superclass.constructor.call(this, params);\\n this.hT = \\"12\\";\\n};\\n_yahoo__WEBPACK_IMPORTED_MODULE_1__.YAHOO.lang.extend(KJUR.asn1.DERNumericString, KJUR.asn1.DERAbstractString);\\n// ********************************************************************\\n/**\\n * class for ASN.1 DER PrintableString\\n * @name KJUR.asn1.DERPrintableString\\n * @class class for ASN.1 DER PrintableString\\n * @param {Array} params associative array of parameters (ex. {\'str\': \'aaa\'})\\n * @extends KJUR.asn1.DERAbstractString\\n * @description\\n * @see KJUR.asn1.DERAbstractString - superclass\\n */\\nKJUR.asn1.DERPrintableString = function (params) {\\n KJUR.asn1.DERPrintableString.superclass.constructor.call(this, params);\\n this.hT = \\"13\\";\\n};\\n_yahoo__WEBPACK_IMPORTED_MODULE_1__.YAHOO.lang.extend(KJUR.asn1.DERPrintableString, KJUR.asn1.DERAbstractString);\\n// ********************************************************************\\n/**\\n * class for ASN.1 DER TeletexString\\n * @name KJUR.asn1.DERTeletexString\\n * @class class for ASN.1 DER TeletexString\\n * @param {Array} params associative array of parameters (ex. {\'str\': \'aaa\'})\\n * @extends KJUR.asn1.DERAbstractString\\n * @description\\n * @see KJUR.asn1.DERAbstractString - superclass\\n */\\nKJUR.asn1.DERTeletexString = function (params) {\\n KJUR.asn1.DERTeletexString.superclass.constructor.call(this, params);\\n this.hT = \\"14\\";\\n};\\n_yahoo__WEBPACK_IMPORTED_MODULE_1__.YAHOO.lang.extend(KJUR.asn1.DERTeletexString, KJUR.asn1.DERAbstractString);\\n// ********************************************************************\\n/**\\n * class for ASN.1 DER IA5String\\n * @name KJUR.asn1.DERIA5String\\n * @class class for ASN.1 DER IA5String\\n * @param {Array} params associative array of parameters (ex. {\'str\': \'aaa\'})\\n * @extends KJUR.asn1.DERAbstractString\\n * @description\\n * @see KJUR.asn1.DERAbstractString - superclass\\n */\\nKJUR.asn1.DERIA5String = function (params) {\\n KJUR.asn1.DERIA5String.superclass.constructor.call(this, params);\\n this.hT = \\"16\\";\\n};\\n_yahoo__WEBPACK_IMPORTED_MODULE_1__.YAHOO.lang.extend(KJUR.asn1.DERIA5String, KJUR.asn1.DERAbstractString);\\n// ********************************************************************\\n/**\\n * class for ASN.1 DER UTCTime\\n * @name KJUR.asn1.DERUTCTime\\n * @class class for ASN.1 DER UTCTime\\n * @param {Array} params associative array of parameters (ex. {\'str\': \'130430235959Z\'})\\n * @extends KJUR.asn1.DERAbstractTime\\n * @description\\n *
\\n * As for argument \'params\' for constructor, you can specify one of\\n * following properties:\\n *
    \\n *
  • str - specify initial ASN.1 value(V) by a string (ex.\'130430235959Z\')
  • \\n *
  • hex - specify initial ASN.1 value(V) by a hexadecimal string
  • \\n *
  • date - specify Date object.
  • \\n *
\\n * NOTE: \'params\' can be omitted.\\n *

EXAMPLES

\\n * @example\\n * d1 = new KJUR.asn1.DERUTCTime();\\n * d1.setString(\'130430125959Z\');\\n *\\n * d2 = new KJUR.asn1.DERUTCTime({\'str\': \'130430125959Z\'});\\n * d3 = new KJUR.asn1.DERUTCTime({\'date\': new Date(Date.UTC(2015, 0, 31, 0, 0, 0, 0))});\\n * d4 = new KJUR.asn1.DERUTCTime(\'130430125959Z\');\\n */\\nKJUR.asn1.DERUTCTime = function (params) {\\n KJUR.asn1.DERUTCTime.superclass.constructor.call(this, params);\\n this.hT = \\"17\\";\\n /**\\n * set value by a Date object
\\n * @name setByDate\\n * @memberOf KJUR.asn1.DERUTCTime#\\n * @function\\n * @param {Date} dateObject Date object to set ASN.1 value(V)\\n * @example\\n * o = new KJUR.asn1.DERUTCTime();\\n * o.setByDate(new Date(\\"2016/12/31\\"));\\n */\\n this.setByDate = function (dateObject) {\\n this.hTLV = null;\\n this.isModified = true;\\n this.date = dateObject;\\n this.s = this.formatDate(this.date, \'utc\');\\n this.hV = stohex(this.s);\\n };\\n this.getFreshValueHex = function () {\\n if (typeof this.date == \\"undefined\\" && typeof this.s == \\"undefined\\") {\\n this.date = new Date();\\n this.s = this.formatDate(this.date, \'utc\');\\n this.hV = stohex(this.s);\\n }\\n return this.hV;\\n };\\n if (params !== undefined) {\\n if (params.str !== undefined) {\\n this.setString(params.str);\\n }\\n else if (typeof params == \\"string\\" && params.match(/^[0-9]{12}Z$/)) {\\n this.setString(params);\\n }\\n else if (params.hex !== undefined) {\\n this.setStringHex(params.hex);\\n }\\n else if (params.date !== undefined) {\\n this.setByDate(params.date);\\n }\\n }\\n};\\n_yahoo__WEBPACK_IMPORTED_MODULE_1__.YAHOO.lang.extend(KJUR.asn1.DERUTCTime, KJUR.asn1.DERAbstractTime);\\n// ********************************************************************\\n/**\\n * class for ASN.1 DER GeneralizedTime\\n * @name KJUR.asn1.DERGeneralizedTime\\n * @class class for ASN.1 DER GeneralizedTime\\n * @param {Array} params associative array of parameters (ex. {\'str\': \'20130430235959Z\'})\\n * @property {Boolean} withMillis flag to show milliseconds or not\\n * @extends KJUR.asn1.DERAbstractTime\\n * @description\\n *
\\n * As for argument \'params\' for constructor, you can specify one of\\n * following properties:\\n *
    \\n *
  • str - specify initial ASN.1 value(V) by a string (ex.\'20130430235959Z\')
  • \\n *
  • hex - specify initial ASN.1 value(V) by a hexadecimal string
  • \\n *
  • date - specify Date object.
  • \\n *
  • millis - specify flag to show milliseconds (from 1.0.6)
  • \\n *
\\n * NOTE1: \'params\' can be omitted.\\n * NOTE2: \'withMillis\' property is supported from asn1 1.0.6.\\n */\\nKJUR.asn1.DERGeneralizedTime = function (params) {\\n KJUR.asn1.DERGeneralizedTime.superclass.constructor.call(this, params);\\n this.hT = \\"18\\";\\n this.withMillis = false;\\n /**\\n * set value by a Date object\\n * @name setByDate\\n * @memberOf KJUR.asn1.DERGeneralizedTime#\\n * @function\\n * @param {Date} dateObject Date object to set ASN.1 value(V)\\n * @example\\n * When you specify UTC time, use \'Date.UTC\' method like this:
\\n * o1 = new DERUTCTime();\\n * o1.setByDate(date);\\n *\\n * date = new Date(Date.UTC(2015, 0, 31, 23, 59, 59, 0)); #2015JAN31 23:59:59\\n */\\n this.setByDate = function (dateObject) {\\n this.hTLV = null;\\n this.isModified = true;\\n this.date = dateObject;\\n this.s = this.formatDate(this.date, \'gen\', this.withMillis);\\n this.hV = stohex(this.s);\\n };\\n this.getFreshValueHex = function () {\\n if (this.date === undefined && this.s === undefined) {\\n this.date = new Date();\\n this.s = this.formatDate(this.date, \'gen\', this.withMillis);\\n this.hV = stohex(this.s);\\n }\\n return this.hV;\\n };\\n if (params !== undefined) {\\n if (params.str !== undefined) {\\n this.setString(params.str);\\n }\\n else if (typeof params == \\"string\\" && params.match(/^[0-9]{14}Z$/)) {\\n this.setString(params);\\n }\\n else if (params.hex !== undefined) {\\n this.setStringHex(params.hex);\\n }\\n else if (params.date !== undefined) {\\n this.setByDate(params.date);\\n }\\n if (params.millis === true) {\\n this.withMillis = true;\\n }\\n }\\n};\\n_yahoo__WEBPACK_IMPORTED_MODULE_1__.YAHOO.lang.extend(KJUR.asn1.DERGeneralizedTime, KJUR.asn1.DERAbstractTime);\\n// ********************************************************************\\n/**\\n * class for ASN.1 DER Sequence\\n * @name KJUR.asn1.DERSequence\\n * @class class for ASN.1 DER Sequence\\n * @extends KJUR.asn1.DERAbstractStructured\\n * @description\\n *
\\n * As for argument \'params\' for constructor, you can specify one of\\n * following properties:\\n *
    \\n *
  • array - specify array of ASN1Object to set elements of content
  • \\n *
\\n * NOTE: \'params\' can be omitted.\\n */\\nKJUR.asn1.DERSequence = function (params) {\\n KJUR.asn1.DERSequence.superclass.constructor.call(this, params);\\n this.hT = \\"30\\";\\n this.getFreshValueHex = function () {\\n var h = \'\';\\n for (var i = 0; i < this.asn1Array.length; i++) {\\n var asn1Obj = this.asn1Array[i];\\n h += asn1Obj.getEncodedHex();\\n }\\n this.hV = h;\\n return this.hV;\\n };\\n};\\n_yahoo__WEBPACK_IMPORTED_MODULE_1__.YAHOO.lang.extend(KJUR.asn1.DERSequence, KJUR.asn1.DERAbstractStructured);\\n// ********************************************************************\\n/**\\n * class for ASN.1 DER Set\\n * @name KJUR.asn1.DERSet\\n * @class class for ASN.1 DER Set\\n * @extends KJUR.asn1.DERAbstractStructured\\n * @description\\n *
\\n * As for argument \'params\' for constructor, you can specify one of\\n * following properties:\\n *
    \\n *
  • array - specify array of ASN1Object to set elements of content
  • \\n *
  • sortflag - flag for sort (default: true). ASN.1 BER is not sorted in \'SET OF\'.
  • \\n *
\\n * NOTE1: \'params\' can be omitted.
\\n * NOTE2: sortflag is supported since 1.0.5.\\n */\\nKJUR.asn1.DERSet = function (params) {\\n KJUR.asn1.DERSet.superclass.constructor.call(this, params);\\n this.hT = \\"31\\";\\n this.sortFlag = true; // item shall be sorted only in ASN.1 DER\\n this.getFreshValueHex = function () {\\n var a = new Array();\\n for (var i = 0; i < this.asn1Array.length; i++) {\\n var asn1Obj = this.asn1Array[i];\\n a.push(asn1Obj.getEncodedHex());\\n }\\n if (this.sortFlag == true)\\n a.sort();\\n this.hV = a.join(\'\');\\n return this.hV;\\n };\\n if (typeof params != \\"undefined\\") {\\n if (typeof params.sortflag != \\"undefined\\" &&\\n params.sortflag == false)\\n this.sortFlag = false;\\n }\\n};\\n_yahoo__WEBPACK_IMPORTED_MODULE_1__.YAHOO.lang.extend(KJUR.asn1.DERSet, KJUR.asn1.DERAbstractStructured);\\n// ********************************************************************\\n/**\\n * class for ASN.1 DER TaggedObject\\n * @name KJUR.asn1.DERTaggedObject\\n * @class class for ASN.1 DER TaggedObject\\n * @extends KJUR.asn1.ASN1Object\\n * @description\\n *
\\n * Parameter \'tagNoNex\' is ASN.1 tag(T) value for this object.\\n * For example, if you find \'[1]\' tag in a ASN.1 dump,\\n * \'tagNoHex\' will be \'a1\'.\\n *
\\n * As for optional argument \'params\' for constructor, you can specify *ANY* of\\n * following properties:\\n *
    \\n *
  • explicit - specify true if this is explicit tag otherwise false\\n * (default is \'true\').
  • \\n *
  • tag - specify tag (default is \'a0\' which means [0])
  • \\n *
  • obj - specify ASN1Object which is tagged
  • \\n *
\\n * @example\\n * d1 = new KJUR.asn1.DERUTF8String({\'str\':\'a\'});\\n * d2 = new KJUR.asn1.DERTaggedObject({\'obj\': d1});\\n * hex = d2.getEncodedHex();\\n */\\nKJUR.asn1.DERTaggedObject = function (params) {\\n KJUR.asn1.DERTaggedObject.superclass.constructor.call(this);\\n this.hT = \\"a0\\";\\n this.hV = \'\';\\n this.isExplicit = true;\\n this.asn1Object = null;\\n /**\\n * set value by an ASN1Object\\n * @name setString\\n * @memberOf KJUR.asn1.DERTaggedObject#\\n * @function\\n * @param {Boolean} isExplicitFlag flag for explicit/implicit tag\\n * @param {Integer} tagNoHex hexadecimal string of ASN.1 tag\\n * @param {ASN1Object} asn1Object ASN.1 to encapsulate\\n */\\n this.setASN1Object = function (isExplicitFlag, tagNoHex, asn1Object) {\\n this.hT = tagNoHex;\\n this.isExplicit = isExplicitFlag;\\n this.asn1Object = asn1Object;\\n if (this.isExplicit) {\\n this.hV = this.asn1Object.getEncodedHex();\\n this.hTLV = null;\\n this.isModified = true;\\n }\\n else {\\n this.hV = null;\\n this.hTLV = asn1Object.getEncodedHex();\\n this.hTLV = this.hTLV.replace(/^../, tagNoHex);\\n this.isModified = false;\\n }\\n };\\n this.getFreshValueHex = function () {\\n return this.hV;\\n };\\n if (typeof params != \\"undefined\\") {\\n if (typeof params[\'tag\'] != \\"undefined\\") {\\n this.hT = params[\'tag\'];\\n }\\n if (typeof params[\'explicit\'] != \\"undefined\\") {\\n this.isExplicit = params[\'explicit\'];\\n }\\n if (typeof params[\'obj\'] != \\"undefined\\") {\\n this.asn1Object = params[\'obj\'];\\n this.setASN1Object(this.isExplicit, this.hT, this.asn1Object);\\n }\\n }\\n};\\n_yahoo__WEBPACK_IMPORTED_MODULE_1__.YAHOO.lang.extend(KJUR.asn1.DERTaggedObject, KJUR.asn1.ASN1Object);\\n\\n\\n//# sourceURL=webpack://JSEncrypt/./lib/lib/jsrsasign/asn1-1.0.js?")},"./lib/lib/jsrsasign/yahoo.js":(__unused_webpack_module,__webpack_exports__,__webpack_require__)=>{"use strict";eval(\'__webpack_require__.r(__webpack_exports__);\\n/* harmony export */ __webpack_require__.d(__webpack_exports__, {\\n/* harmony export */ "YAHOO": () => (/* binding */ YAHOO)\\n/* harmony export */ });\\n/*!\\nCopyright (c) 2011, Yahoo! Inc. All rights reserved.\\nCode licensed under the BSD License:\\nhttp://developer.yahoo.com/yui/license.html\\nversion: 2.9.0\\n*/\\nvar YAHOO = {};\\nYAHOO.lang = {\\n /**\\n * Utility to set up the prototype, constructor and superclass properties to\\n * support an inheritance strategy that can chain constructors and methods.\\n * Static members will not be inherited.\\n *\\n * @method extend\\n * @static\\n * @param {Function} subc the object to modify\\n * @param {Function} superc the object to inherit\\n * @param {Object} overrides additional properties/methods to add to the\\n * subclass prototype. These will override the\\n * matching items obtained from the superclass\\n * if present.\\n */\\n extend: function (subc, superc, overrides) {\\n if (!superc || !subc) {\\n throw new Error("YAHOO.lang.extend failed, please check that " +\\n "all dependencies are included.");\\n }\\n var F = function () { };\\n F.prototype = superc.prototype;\\n subc.prototype = new F();\\n subc.prototype.constructor = subc;\\n subc.superclass = superc.prototype;\\n if (superc.prototype.constructor == Object.prototype.constructor) {\\n superc.prototype.constructor = superc;\\n }\\n if (overrides) {\\n var i;\\n for (i in overrides) {\\n subc.prototype[i] = overrides[i];\\n }\\n /*\\n * IE will not enumerate native functions in a derived object even if the\\n * function was overridden. This is a workaround for specific functions\\n * we care about on the Object prototype.\\n * @property _IEEnumFix\\n * @param {Function} r the object to receive the augmentation\\n * @param {Function} s the object that supplies the properties to augment\\n * @static\\n * @private\\n */\\n var _IEEnumFix = function () { }, ADD = ["toString", "valueOf"];\\n try {\\n if (/MSIE/.test(navigator.userAgent)) {\\n _IEEnumFix = function (r, s) {\\n for (i = 0; i < ADD.length; i = i + 1) {\\n var fname = ADD[i], f = s[fname];\\n if (typeof f === \\\'function\\\' && f != Object.prototype[fname]) {\\n r[fname] = f;\\n }\\n }\\n };\\n }\\n }\\n catch (ex) { }\\n ;\\n _IEEnumFix(subc.prototype, overrides);\\n }\\n }\\n};\\n\\n\\n//# sourceURL=webpack://JSEncrypt/./lib/lib/jsrsasign/yahoo.js?\')},"./node_modules/process/browser.js":module=>{eval("// shim for using process in browser\\nvar process = module.exports = {};\\n\\n// cached from whatever global is present so that test runners that stub it\\n// don\'t break things. But we need to wrap it in a try catch in case it is\\n// wrapped in strict mode code which doesn\'t define any globals. It\'s inside a\\n// function because try/catches deoptimize in certain engines.\\n\\nvar cachedSetTimeout;\\nvar cachedClearTimeout;\\n\\nfunction defaultSetTimout() {\\n throw new Error(\'setTimeout has not been defined\');\\n}\\nfunction defaultClearTimeout () {\\n throw new Error(\'clearTimeout has not been defined\');\\n}\\n(function () {\\n try {\\n if (typeof setTimeout === \'function\') {\\n cachedSetTimeout = setTimeout;\\n } else {\\n cachedSetTimeout = defaultSetTimout;\\n }\\n } catch (e) {\\n cachedSetTimeout = defaultSetTimout;\\n }\\n try {\\n if (typeof clearTimeout === \'function\') {\\n cachedClearTimeout = clearTimeout;\\n } else {\\n cachedClearTimeout = defaultClearTimeout;\\n }\\n } catch (e) {\\n cachedClearTimeout = defaultClearTimeout;\\n }\\n} ())\\nfunction runTimeout(fun) {\\n if (cachedSetTimeout === setTimeout) {\\n //normal enviroments in sane situations\\n return setTimeout(fun, 0);\\n }\\n // if setTimeout wasn\'t available but was latter defined\\n if ((cachedSetTimeout === defaultSetTimout || !cachedSetTimeout) && setTimeout) {\\n cachedSetTimeout = setTimeout;\\n return setTimeout(fun, 0);\\n }\\n try {\\n // when when somebody has screwed with setTimeout but no I.E. maddness\\n return cachedSetTimeout(fun, 0);\\n } catch(e){\\n try {\\n // When we are in I.E. but the script has been evaled so I.E. doesn\'t trust the global object when called normally\\n return cachedSetTimeout.call(null, fun, 0);\\n } catch(e){\\n // same as above but when it\'s a version of I.E. that must have the global object for \'this\', hopfully our context correct otherwise it will throw a global error\\n return cachedSetTimeout.call(this, fun, 0);\\n }\\n }\\n\\n\\n}\\nfunction runClearTimeout(marker) {\\n if (cachedClearTimeout === clearTimeout) {\\n //normal enviroments in sane situations\\n return clearTimeout(marker);\\n }\\n // if clearTimeout wasn\'t available but was latter defined\\n if ((cachedClearTimeout === defaultClearTimeout || !cachedClearTimeout) && clearTimeout) {\\n cachedClearTimeout = clearTimeout;\\n return clearTimeout(marker);\\n }\\n try {\\n // when when somebody has screwed with setTimeout but no I.E. maddness\\n return cachedClearTimeout(marker);\\n } catch (e){\\n try {\\n // When we are in I.E. but the script has been evaled so I.E. doesn\'t trust the global object when called normally\\n return cachedClearTimeout.call(null, marker);\\n } catch (e){\\n // same as above but when it\'s a version of I.E. that must have the global object for \'this\', hopfully our context correct otherwise it will throw a global error.\\n // Some versions of I.E. have different rules for clearTimeout vs setTimeout\\n return cachedClearTimeout.call(this, marker);\\n }\\n }\\n\\n\\n\\n}\\nvar queue = [];\\nvar draining = false;\\nvar currentQueue;\\nvar queueIndex = -1;\\n\\nfunction cleanUpNextTick() {\\n if (!draining || !currentQueue) {\\n return;\\n }\\n draining = false;\\n if (currentQueue.length) {\\n queue = currentQueue.concat(queue);\\n } else {\\n queueIndex = -1;\\n }\\n if (queue.length) {\\n drainQueue();\\n }\\n}\\n\\nfunction drainQueue() {\\n if (draining) {\\n return;\\n }\\n var timeout = runTimeout(cleanUpNextTick);\\n draining = true;\\n\\n var len = queue.length;\\n while(len) {\\n currentQueue = queue;\\n queue = [];\\n while (++queueIndex < len) {\\n if (currentQueue) {\\n currentQueue[queueIndex].run();\\n }\\n }\\n queueIndex = -1;\\n len = queue.length;\\n }\\n currentQueue = null;\\n draining = false;\\n runClearTimeout(timeout);\\n}\\n\\nprocess.nextTick = function (fun) {\\n var args = new Array(arguments.length - 1);\\n if (arguments.length > 1) {\\n for (var i = 1; i < arguments.length; i++) {\\n args[i - 1] = arguments[i];\\n }\\n }\\n queue.push(new Item(fun, args));\\n if (queue.length === 1 && !draining) {\\n runTimeout(drainQueue);\\n }\\n};\\n\\n// v8 likes predictible objects\\nfunction Item(fun, array) {\\n this.fun = fun;\\n this.array = array;\\n}\\nItem.prototype.run = function () {\\n this.fun.apply(null, this.array);\\n};\\nprocess.title = \'browser\';\\nprocess.browser = true;\\nprocess.env = {};\\nprocess.argv = [];\\nprocess.version = \'\'; // empty string to avoid regexp issues\\nprocess.versions = {};\\n\\nfunction noop() {}\\n\\nprocess.on = noop;\\nprocess.addListener = noop;\\nprocess.once = noop;\\nprocess.off = noop;\\nprocess.removeListener = noop;\\nprocess.removeAllListeners = noop;\\nprocess.emit = noop;\\nprocess.prependListener = noop;\\nprocess.prependOnceListener = noop;\\n\\nprocess.listeners = function (name) { return [] }\\n\\nprocess.binding = function (name) {\\n throw new Error(\'process.binding is not supported\');\\n};\\n\\nprocess.cwd = function () { return \'/\' };\\nprocess.chdir = function (dir) {\\n throw new Error(\'process.chdir is not supported\');\\n};\\nprocess.umask = function() { return 0; };\\n\\n\\n//# sourceURL=webpack://JSEncrypt/./node_modules/process/browser.js?")}};var __webpack_module_cache__={};function __webpack_require__(moduleId){var cachedModule=__webpack_module_cache__[moduleId];if(cachedModule!==undefined){return cachedModule.exports}var module=__webpack_module_cache__[moduleId]={exports:{}};__webpack_modules__[moduleId](module,module.exports,__webpack_require__);return module.exports}(()=>{__webpack_require__.d=(exports,definition)=>{for(var key in definition){if(__webpack_require__.o(definition,key)&&!__webpack_require__.o(exports,key)){Object.defineProperty(exports,key,{enumerable:true,get:definition[key]})}}}})();(()=>{__webpack_require__.o=(obj,prop)=>Object.prototype.hasOwnProperty.call(obj,prop)})();(()=>{__webpack_require__.r=exports=>{if(typeof Symbol!=="undefined"&&Symbol.toStringTag){Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"})}Object.defineProperty(exports,"__esModule",{value:true})}})();var __webpack_exports__=__webpack_require__("./lib/index.js");__webpack_exports__=__webpack_exports__["default"];return __webpack_exports__})()});'}},t={};function n(r){var a=t[r];if(void 0!==a)return a.exports;var i=t[r]={exports:{}};return e[r](i,i.exports,n),i.exports}"function"!=typeof Object.assign&&(Object.assign=function(){for(var e=arguments[0],t=1;t { + _o.msg = _o.msg.trim().split("\n").map(_it => _it.trim()).join("\n"); + return _o + }) +} + +function init_test() { + console.log("init_test_start"); + console.log("当前版本号:" + VERSION); + console.log("本地代理地址:" + getProxyUrl()); + console.log(RKEY); + console.log(JSON.stringify(rule)); + console.log("init_test_end") +} + +function ocr_demo_test() { + let img_base64 = `iVBORw0KGgoAAAANSUhEUgAAAIAAAAAoBAMAAADEX+97AAAAG1BMVEXz+/4thQTa7N6QwIFFkyNeokKozqDB3b93sWHFR+MEAAAACXBIWXMAAA7EAAAOxAGVKw4bAAABN0lEQVRIie2TQU+DQBCFt9vScvQpxR4xrcSjJCZ67JDGXsX+AdR4B3vpsSYm/m2HXaRLmuySepR3Gdidb/btDAjRq5dT96eCMlfBuzi1QLZUoZy2yz5sOvI+9iomaPEZ6nWnEtxqIyiM1RcAy44GNDhBXUjot/VVNweV1ah68FqWRyjKIOqAcyYF6rGcmpYnHzGt3fycNoMw0d3/THFu7hFSJ/8OXO6iTM8/KSg09obAzIHLO250LgQ0txOZSfgrV4Exdw98uGycJ0ErAeExZGhOmFHV9zHO6qVSj0MpLq7xZON56o++MjlsEgfVhbQWWME+xQX7J4V6zfi9A1Ly9rP1BvEXp+BbVJ/M77n+wfOIDVp51pZ4iBxvmj9AGrtvry6emwfKnVkW+ZRKd5ZNMvob36vXP9YPDmQki8QiCFAAAAAASUVORK5CYII=`; + OcrApi.api = OCR_API; + let code = OcrApi.classification(img_base64); + log("测试验证码图片的ocr识别结果为:" + code) +} + +function rsa_demo_test() { + let t1 = (new Date).getTime(); + let pkcs1_public = ` +-----BEGIN RSA PUBLIC KEY----- +MEgCQQCrI0pQ/ERRpJ3Ou190XJedFq846nDYP52rOtXyDxlFK5D3p6JJu2RwsKwy +lsQ9xY0xYPpRZUZKMEeR7e9gmRNLAgMBAAE= +-----END RSA PUBLIC KEY----- +`.trim(); + let pkcs1_public_pem = ` +MEgCQQCrI0pQ/ERRpJ3Ou190XJedFq846nDYP52rOtXyDxlFK5D3p6JJu2RwsKwy +lsQ9xY0xYPpRZUZKMEeR7e9gmRNLAgMBAAE= +`.trim(); + let pkcs8_public = ` +-----BEGIN PUBLIC KEY----- +MFwwDQYJKoZIhvcNAQEBBQADSwAwSAJBAKsjSlD8RFGknc67X3Rcl50WrzjqcNg/ +nas61fIPGUUrkPenokm7ZHCwrDKWxD3FjTFg+lFlRkowR5Ht72CZE0sCAwEAAQ== +-----END PUBLIC KEY-----`.trim(); + let pkcs8_public_pem = ` +MFwwDQYJKoZIhvcNAQEBBQADSwAwSAJBAKsjSlD8RFGknc67X3Rcl50WrzjqcNg/ +nas61fIPGUUrkPenokm7ZHCwrDKWxD3FjTFg+lFlRkowR5Ht72CZE0sCAwEAAQ== +`.trim(); + let pkcs1_private = ` +-----BEGIN RSA PRIVATE KEY----- +MIIBOAIBAAJBAKsjSlD8RFGknc67X3Rcl50WrzjqcNg/nas61fIPGUUrkPenokm7 +ZHCwrDKWxD3FjTFg+lFlRkowR5Ht72CZE0sCAwEAAQI/b6OV1z65UokQaMvSeRXt +0Yv6wiYtduQI9qpq5nzy/ytaqsbBfClNTi/HifKPKxlRouWFkc518EQI8LBxoarJ +AiEA4DaONMplV8PQNa3TKn2F+SDEvLOCjdL0kHKdN90Ti28CIQDDZnTBaHgZwZbA +hS7Bbf5yvwjWMhO6Y7l04/Qm7R+35QIgPuQuqXIoUSD080mp1N5WyRW++atksIF+ +5lGv9e6GP/MCICnj8y/rl6Pd7tXDN6zcSeqLrfdNsREKhB3dKOCXgW9JAiAFYtFS +EJNBXVRTK42SNsZ2hJ/9xLwOwnH2epT8Q43s3Q== +-----END RSA PRIVATE KEY----- +`.trim(); + let pkcs8_private = ` +-----BEGIN PRIVATE KEY----- +MIIBUgIBADANBgkqhkiG9w0BAQEFAASCATwwggE4AgEAAkEAqyNKUPxEUaSdzrtf +dFyXnRavOOpw2D+dqzrV8g8ZRSuQ96eiSbtkcLCsMpbEPcWNMWD6UWVGSjBHke3v +YJkTSwIDAQABAj9vo5XXPrlSiRBoy9J5Fe3Ri/rCJi125Aj2qmrmfPL/K1qqxsF8 +KU1OL8eJ8o8rGVGi5YWRznXwRAjwsHGhqskCIQDgNo40ymVXw9A1rdMqfYX5IMS8 +s4KN0vSQcp033ROLbwIhAMNmdMFoeBnBlsCFLsFt/nK/CNYyE7pjuXTj9CbtH7fl +AiA+5C6pcihRIPTzSanU3lbJFb75q2SwgX7mUa/17oY/8wIgKePzL+uXo93u1cM3 +rNxJ6out902xEQqEHd0o4JeBb0kCIAVi0VIQk0FdVFMrjZI2xnaEn/3EvA7CcfZ6 +lPxDjezd +-----END PRIVATE KEY----- +`.trim(); + let data = ` +NodeRsa +这是node-rsa 现在修改集成在drpy里使用`.trim(); + let encryptedWithPublic = NODERSA.encryptRSAWithPublicKey(data, pkcs1_public, { + outputEncoding: "base64", + options: { + environment: "browser", + encryptionScheme: "pkcs1_oaep" + } + }); + console.log("公钥加密"); + console.log(encryptedWithPublic); + let decryptedWithPrivate = NODERSA.decryptRSAWithPrivateKey(encryptedWithPublic, pkcs1_private, { + options: { + environment: "browser", + encryptionScheme: "pkcs1_oaep" + } + }); + console.log("私钥解密"); + console.log(decryptedWithPrivate); + let pkcs1_sha256_sign = NODERSA.sign("1", pkcs1_private, { + outputEncoding: "base64", + options: { + environment: "browser", + encryptionScheme: "pkcs1", + signingScheme: "pkcs1-sha256" + } + }); + console.log("pkcs1_sha256_sign"); + console.log(pkcs1_sha256_sign); + let pkcs1_sha256_sign_verify = NODERSA.verify("1", "Oulx2QrgeipKYBtqEDqFb2s/+ndk2cGQxO4CkhU7iBM1vyNmmvqubpsmeoUuN3waGrYZLknSEdwBkfv0tUMpFQ==", pkcs1_private, { + options: { + environment: "browser", + encryptionScheme: "pkcs1", + signingScheme: "pkcs1-sha256" + } + }); + console.log("pkcs1_sha256_sign_verify"); + console.log(pkcs1_sha256_sign_verify); + let pkcs1_oaep_sha256 = NODERSA.encryptRSAWithPublicKey(data, `-----BEGIN RSA PUBLIC KEY----- +MIIBCgKCAQEA5KOq1gRNyllLNWKQy8sGpZE3Q1ULLSmzZw+eaAhj9lvqn7IsT1du +SYn08FfoOA2qMwtz+1O2l1mgzNoSVCyVpVabnTG+C9XKeZXAnJHd8aYA7l7Sxhdm +kte+iymYZ0ZBPzijo8938iugtVvqi9UgDmnY3u/NlQDqiL5BGqSxSTd/Sgmy3zD8 +PYzEa3wD9vehQ5fZZ45vKIq8GNVh2Z8+IGO85FF1OsN7+b2yGJa/FmDDNn0+HP+m +PfI+kYBqEVpo0Ztbc3UdxgFwGC8O1n8AQyriwHnSOtIiuBH62J/7qyC/3LEAApRb +Dd9YszqzmODjQUddZKHmvc638VW+azc0EwIDAQAB +-----END RSA PUBLIC KEY----- +`, { + outputEncoding: "base64", + options: { + environment: "browser", + encryptionScheme: { + scheme: "pkcs1_oaep", + hash: "sha256" + } + } + }); + console.log("pkcs1_oaep_sha256"); + console.log(pkcs1_oaep_sha256); + decryptedWithPrivate = NODERSA.decryptRSAWithPrivateKey("kSZesAAyYh2hdsQnYMdGqb6gKAzTauBKouvBzWcc4+F8RvGd0nwO6mVkUMVilPgUuNxjEauHayHiY8gI3Py45UI3+km0rSGyHrS6dHiHgCkMejXHieglYzAB0IxX3Jkm4z/66bdB/D+GFy0oct5fGCMI1UHPjEAYOsazJDa8lBFNbjiWFeb/qiZtIx3vGM7KYPAZzyRf/zPbbQ8zy9xOmRuOl5nnIxgo0Okp3KO/RIPO4GZOSBA8f2lx1UtNwwrXAMpcNavtoqHVcjJ/9lcotXYQFrn5b299pSIRf2gVm8ZJ31SK6Z8cc14nKtvgnmsgClDzIXJ1o1RcDK+knVAySg==", `-----BEGIN RSA PRIVATE KEY----- +MIIEpAIBAAKCAQEA5KOq1gRNyllLNWKQy8sGpZE3Q1ULLSmzZw+eaAhj9lvqn7Is +T1duSYn08FfoOA2qMwtz+1O2l1mgzNoSVCyVpVabnTG+C9XKeZXAnJHd8aYA7l7S +xhdmkte+iymYZ0ZBPzijo8938iugtVvqi9UgDmnY3u/NlQDqiL5BGqSxSTd/Sgmy +3zD8PYzEa3wD9vehQ5fZZ45vKIq8GNVh2Z8+IGO85FF1OsN7+b2yGJa/FmDDNn0+ +HP+mPfI+kYBqEVpo0Ztbc3UdxgFwGC8O1n8AQyriwHnSOtIiuBH62J/7qyC/3LEA +ApRbDd9YszqzmODjQUddZKHmvc638VW+azc0EwIDAQABAoIBADZ/QGgUzInvsLp/ +zO2WbfYm39o/uhNAvk9RbLt1TIZbMFhyOpeKynHi3Swwd9xsfWX/U9zS/lGi/m31 +iKrhmaW4OA1G3vqpMcK7TBbFufYwUEaA+ZJX344euH8pIfdzyneMQ4z3Far2dS7l +QsmjuilVV2kEFadveXewiYoVOWCu00w6bN8wy2SIHlQn+kIL6HQhWz12iKKflIKu +eGRdzLHsKmBt6WbY1Wuhx7HU0fAKdlBDPxCHNlI+kybUYE9o5C2vJiaVM5wqJBgZ +8Dz8kt1QbLJ910JoLXkLVQ8uC8NJKQwFtqQjTGPnEq0+wbgz6Ij599rKZkwW/xq9 +l6KoUiECgYEA6Ah42tVdkNW047f03xVYXFH96RgorHRS36mR8Y+ONUq1fwKidovC +WjwVujt4OPf3l1W6iyn/F6cu/bsmvPrSc3HTN0B1V31QK4OjgetxQ2PSbTldH02J +NPzkt+v+cPxXpx/P5mgt7Weefw5txU547KubGrHUV5rBKFtIx9pj16MCgYEA/EF0 +o19+D24DZAPwlDS5VbEd7FStnwY4oQ5PqbuNOSbSJLMWU0AqzXcRokp8UTyCZ0X3 +ATkS1REq97kShCuR+npTR6a6DlY7sdpPI1SMLNajgB2tkx0EOzX+PfNIbHUd4jpJ +I0ZMAHv/OOtkzQHDaeTWBTrzsWm6/nTiykfduNECgYEA46AMD4HpPECqKAs66e5i +tI6q7JSKskObWVdcmQEfnSAhVOwcvPb2Ptda6UuV8S0xcwDi88rLOUUFUFzc79+P +vTkY38cYVi/VChsluDpk7ptqv0PbGu5Rf+3n4pZdEjI7OvR2W64wAAn67uIUxc7p +yiO/ET0K9rYWb6S9jXGtKMkCgYEA2kPAqoO7zZoBMQ7/oR0lp/HC1HRIbiqx4RlC +8Lgpb+QZPEwA6zPAVVvLVENi4d+bbcRp/xLlKpraNNJcJSSWAMbLPFoU7sbKjA87 +HnTPfRSTEA2d3Ibk3F7Rh8TzS3Ti0JZiJjVzGZAwu41iAMifzwaD8K6boUy80eNN +QH2CaaECgYBUsLYvC/MiYg3w+LGOONuQongoVUXjGqnw2bjVa9RK7lwRdXPUqJ51 +MpVO98IkoLvGSI/0sGNP3GKNhC+eMGjJAVwFyEuOn+JsmMv9Y9uStIVi5tIHIhKw +m7mp8il0kaftHdSxTbspG3tZ2fjIiFIZkLEOmRpd7ogWumgOajzUdA== +-----END RSA PRIVATE KEY-----`, { + options: { + environment: "browser", + encryptionScheme: "pkcs1_oaep" + } + }); + console.log("decryptedWithPrivate"); + console.log(decryptedWithPrivate); + (() => { + let key = new NODERSA.NodeRSA({ + b: 1024 + }); + key.setOptions({ + encryptionScheme: "pkcs1" + }); + let text = `你好drpy node-ras`; + let encrypted = key.encrypt(text, "base64"); + console.log("encrypted: ", encrypted); + const decrypted = key.decrypt(encrypted, "utf8"); + console.log("decrypted: ", decrypted) + })(); + let t2 = (new Date).getTime(); + console.log("rsa_demo_test 测试耗时:" + (t2 - t1) + "毫秒") +} + +function pre() { + if (typeof rule.预处理 === "string" && rule.预处理 && rule.预处理.trim()) { + let code = rule.预处理.trim(); + console.log("执行预处理代码:" + code); + if (code.startsWith("js:")) { + code = code.replace("js:", "") + } + try { + eval(code) + } catch (e) { + console.log(`预处理执行失败:${e.message}`) + } + } +} +let rule = {}; +const MOBILE_UA = "Mozilla/5.0 (Linux; Android 11; Pixel 5) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/90.0.4430.91 Mobile Safari/537.36"; +const PC_UA = "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/95.0.4638.54 Safari/537.36"; +const UA = "Mozilla/5.0"; +const UC_UA = "Mozilla/5.0 (Linux; U; Android 9; zh-CN; MI 9 Build/PKQ1.181121.001) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/57.0.2987.108 UCBrowser/12.5.5.1035 Mobile Safari/537.36"; +const IOS_UA = "Mozilla/5.0 (iPhone; CPU iPhone OS 13_2_3 like Mac OS X) AppleWebKit/605.1.15 (KHTML, like Gecko) Version/13.0.3 Mobile/15E148 Safari/604.1"; +const RULE_CK = "cookie"; +const CATE_EXCLUDE = "首页|留言|APP|下载|资讯|新闻|动态"; +const TAB_EXCLUDE = "猜你|喜欢|下载|剧情|榜|评论"; +const OCR_RETRY = 3; +const OCR_API = "https://api.nn.ci/ocr/b64/text"; +if (typeof MY_URL === "undefined") { + var MY_URL +} +var HOST; +var RKEY; +var fetch; +var print; +var log; +var rule_fetch_params; +var fetch_params; +var oheaders; +var _pdfh; +var _pdfa; +var _pd; +const DOM_CHECK_ATTR = /(url|src|href|-original|-src|-play|-url|style)$/; +const SPECIAL_URL = /^(ftp|magnet|thunder|ws):/; +const NOADD_INDEX = /:eq|:lt|:gt|:first|:last|^body$|^#/; +const URLJOIN_ATTR = /(url|src|href|-original|-src|-play|-url|style)$|^(data-|url-|src-)/; +const SELECT_REGEX = /:eq|:lt|:gt|#/g; +const SELECT_REGEX_A = /:eq|:lt|:gt/g; +const $js = { + toString(func) { + let strfun = func.toString(); + return strfun.replace(/^\(\)(\s+)?=>(\s+)?\{/, "js:").replace(/\}$/, "") + } +}; + +function window_b64() { + let b64map = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/"; + let base64DecodeChars = new Array(-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, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, -1, 62, -1, -1, -1, 63, 52, 53, 54, 55, 56, 57, 58, 59, 60, 61, -1, -1, -1, -1, -1, -1, -1, 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, -1, -1, -1, -1, -1, -1, 26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51, -1, -1, -1, -1, -1); + + function btoa(str) { + var out, i, len; + var c1, c2, c3; + len = str.length; + i = 0; + out = ""; + while (i < len) { + c1 = str.charCodeAt(i++) & 255; + if (i == len) { + out += b64map.charAt(c1 >> 2); + out += b64map.charAt((c1 & 3) << 4); + out += "=="; + break + } + c2 = str.charCodeAt(i++); + if (i == len) { + out += b64map.charAt(c1 >> 2); + out += b64map.charAt((c1 & 3) << 4 | (c2 & 240) >> 4); + out += b64map.charAt((c2 & 15) << 2); + out += "="; + break + } + c3 = str.charCodeAt(i++); + out += b64map.charAt(c1 >> 2); + out += b64map.charAt((c1 & 3) << 4 | (c2 & 240) >> 4); + out += b64map.charAt((c2 & 15) << 2 | (c3 & 192) >> 6); + out += b64map.charAt(c3 & 63) + } + return out + } + + function atob(str) { + var c1, c2, c3, c4; + var i, len, out; + len = str.length; + i = 0; + out = ""; + while (i < len) { + do { + c1 = base64DecodeChars[str.charCodeAt(i++) & 255] + } while (i < len && c1 == -1); + if (c1 == -1) break; + do { + c2 = base64DecodeChars[str.charCodeAt(i++) & 255] + } while (i < len && c2 == -1); + if (c2 == -1) break; + out += String.fromCharCode(c1 << 2 | (c2 & 48) >> 4); + do { + c3 = str.charCodeAt(i++) & 255; + if (c3 == 61) return out; + c3 = base64DecodeChars[c3] + } while (i < len && c3 == -1); + if (c3 == -1) break; + out += String.fromCharCode((c2 & 15) << 4 | (c3 & 60) >> 2); + do { + c4 = str.charCodeAt(i++) & 255; + if (c4 == 61) return out; + c4 = base64DecodeChars[c4] + } while (i < len && c4 == -1); + if (c4 == -1) break; + out += String.fromCharCode((c3 & 3) << 6 | c4) + } + return out + } + return { + atob: atob, + btoa: btoa + } +} +if (typeof atob !== "function" || typeof btoa !== "function") { + var { + atob, + btoa + } = window_b64() +} +if (typeof Object.assign !== "function") { + Object.assign = function() { + let target = arguments[0]; + for (let i = 1; i < arguments.length; i++) { + let source = arguments[i]; + for (let key in source) { + if (Object.prototype.hasOwnProperty.call(source, key)) { + target[key] = source[key] + } + } + } + return target + } +} +if (!String.prototype.includes) { + String.prototype.includes = function(search, start) { + if (typeof start !== "number") { + start = 0 + } + if (start + search.length > this.length) { + return false + } else { + return this.indexOf(search, start) !== -1 + } + } +} +if (!Array.prototype.includes) { + Object.defineProperty(Array.prototype, "includes", { + value: function(searchElement, fromIndex) { + if (this == null) { + throw new TypeError('"this" is null or not defined') + } + var o = Object(this); + var len = o.length >>> 0; + if (len === 0) { + return false + } + var n = fromIndex | 0; + var k = Math.max(n >= 0 ? n : len - Math.abs(n), 0); + while (k < len) { + if (o[k] === searchElement) { + return true + } + k++ + } + return false + }, + enumerable: false + }) +} +if (typeof String.prototype.startsWith !== "function") { + String.prototype.startsWith = function(prefix) { + return this.slice(0, prefix.length) === prefix + } +} +if (typeof String.prototype.endsWith !== "function") { + String.prototype.endsWith = function(suffix) { + return this.indexOf(suffix, this.length - suffix.length) !== -1 + } +} +Object.defineProperty(Object.prototype, "myValues", { + value: function(obj) { + if (obj == null) { + throw new TypeError("Cannot convert undefined or null to object") + } + var res = []; + for (var k in obj) { + if (obj.hasOwnProperty(k)) { + res.push(obj[k]) + } + } + return res + }, + enumerable: false +}); +if (typeof Object.prototype.values !== "function") { + Object.defineProperty(Object.prototype, "values", { + value: function(obj) { + if (obj == null) { + throw new TypeError("Cannot convert undefined or null to object") + } + var res = []; + for (var k in obj) { + if (obj.hasOwnProperty(k)) { + res.push(obj[k]) + } + } + return res + }, + enumerable: false + }) +} +if (typeof Array.prototype.join !== "function") { + Object.defineProperty(Array.prototype, "join", { + value: function(emoji) { + emoji = emoji || ""; + let self = this; + let str = ""; + let i = 0; + if (!Array.isArray(self)) { + throw String(self) + "is not Array" + } + if (self.length === 0) { + return "" + } + if (self.length === 1) { + return String(self[0]) + } + i = 1; + str = this[0]; + for (; i < self.length; i++) { + str += String(emoji) + String(self[i]) + } + return str + }, + enumerable: false + }) +} +if (typeof Array.prototype.toReversed !== "function") { + Object.defineProperty(Array.prototype, "toReversed", { + value: function() { + const clonedList = this.slice(); + const reversedList = clonedList.reverse(); + return reversedList + }, + enumerable: false + }) +} +Object.defineProperty(Array.prototype, "append", { + value: Array.prototype.push, + enumerable: false +}); +Object.defineProperty(String.prototype, "strip", { + value: String.prototype.trim, + enumerable: false +}); +Object.defineProperty(String.prototype, "rstrip", { + value: function(chars) { + let regex = new RegExp(chars + "$"); + return this.replace(regex, "") + }, + enumerable: false +}); + +function 是否正版(vipUrl) { + let flag = new RegExp("qq.com|iqiyi.com|youku.com|mgtv.com|bilibili.com|sohu.com|ixigua.com|pptv.com|miguvideo.com|le.com|1905.com|fun.tv"); + return flag.test(vipUrl) +} + +function urlDeal(vipUrl) { + if (!vipUrl) { + return "" + } + if (!是否正版(vipUrl)) { + return vipUrl + } + if (!/miguvideo/.test(vipUrl)) { + vipUrl = vipUrl.split("#")[0].split("?")[0] + } + return vipUrl +} + +function setResult(d) { + if (!Array.isArray(d)) { + return [] + } + VODS = []; + d.forEach(function(it) { + let obj = { + vod_id: it.url || "", + vod_name: it.title || "", + vod_remarks: it.desc || "", + vod_content: it.content || "", + vod_pic: it.pic_url || it.img || "" + }; + let keys = Object.keys(it); + if (keys.includes("tname")) { + obj.type_name = it.tname || "" + } + if (keys.includes("tid")) { + obj.type_id = it.tid || "" + } + if (keys.includes("year")) { + obj.vod_year = it.year || "" + } + if (keys.includes("actor")) { + obj.vod_actor = it.actor || "" + } + if (keys.includes("director")) { + obj.vod_director = it.director || "" + } + if (keys.includes("area")) { + obj.vod_area = it.area || "" + } + VODS.push(obj) + }); + return VODS +} + +function setResult2(res) { + VODS = res.list || []; + return VODS +} + +function setHomeResult(res) { + if (!res || typeof res !== "object") { + return [] + } + return setResult(res.list) +} + +function rc(js) { + if (js === "maomi_aes.js") { + var a = CryptoJS.enc.Utf8.parse("625222f9149e961d"); + var t = CryptoJS.enc.Utf8.parse("5efdtf6060e2o330"); + return { + De: function(word) { + word = CryptoJS.enc.Hex.parse(word); + return CryptoJS.AES.decrypt(CryptoJS.enc.Base64.stringify(word), a, { + iv: t, + mode: CryptoJS.mode.CBC, + padding: CryptoJS.pad.Pkcs7 + }).toString(CryptoJS.enc.Utf8) + }, + En: function(word) { + var Encrypted = CryptoJS.AES.encrypt(word, a, { + iv: t, + mode: CryptoJS.mode.CBC, + padding: CryptoJS.pad.Pkcs7 + }); + return Encrypted.ciphertext.toString() + } + } + } + return {} +} + +function maoss(jxurl, ref, key) { + fetch_params = JSON.parse(JSON.stringify(rule_fetch_params)); + eval(getCryptoJS()); + try { + var getVideoInfo = function(text) { + return CryptoJS.AES.decrypt(text, key, { + iv: iv, + padding: CryptoJS.pad.Pkcs7 + }).toString(CryptoJS.enc.Utf8) + }; + var token_key = key == undefined ? "dvyYRQlnPRCMdQSe" : key; + if (ref) { + var html = request(jxurl, { + headers: { + Referer: ref + } + }) + } else { + var html = request(jxurl) + } + if (html.indexOf("&btwaf=") != -1) { + html = request(jxurl + "&btwaf" + html.match(/&btwaf(.*?)"/)[1], { + headers: { + Referer: ref + } + }) + } + var token_iv = html.split('_token = "')[1].split('"')[0]; + var key = CryptoJS.enc.Utf8.parse(token_key); + var iv = CryptoJS.enc.Utf8.parse(token_iv); + eval(html.match(/var config = {[\s\S]*?}/)[0] + ""); + if (!config.url.startsWith("http")) { + config.url = CryptoJS.AES.decrypt(config.url, key, { + iv: iv, + padding: CryptoJS.pad.Pkcs7 + }).toString(CryptoJS.enc.Utf8) + } + return config.url + } catch (e) { + return "" + } +} + +function urlencode(str) { + str = (str + "").toString(); + return encodeURIComponent(str).replace(/!/g, "%21").replace(/'/g, "%27").replace(/\(/g, "%28").replace(/\)/g, "%29").replace(/\*/g, "%2A").replace(/%20/g, "+") +} + +function encodeUrl(str) { + if (typeof encodeURI == "function") { + return encodeURI(str) + } else { + str = (str + "").toString(); + return encodeURIComponent(str).replace(/%2F/g, "/").replace(/%3F/g, "?").replace(/%3A/g, ":").replace(/%40/g, "@").replace(/%3D/g, "=").replace(/%3A/g, ":").replace(/%2C/g, ",").replace(/%2B/g, "+").replace(/%24/g, "$") + } +} + +function base64Encode(text) { + return CryptoJS.enc.Base64.stringify(CryptoJS.enc.Utf8.parse(text)) +} + +function base64Decode(text) { + return CryptoJS.enc.Utf8.stringify(CryptoJS.enc.Base64.parse(text)) +} + +function md5(text) { + return CryptoJS.MD5(text).toString() +} + +function uint8ArrayToBase64(uint8Array) { + let binaryString = String.fromCharCode.apply(null, Array.from(uint8Array)); + return btoa(binaryString) +} + +function Utf8ArrayToStr(array) { + var out, i, len, c; + var char2, char3; + out = ""; + len = array.length; + i = 0; + while (i < len) { + c = array[i++]; + switch (c >> 4) { + case 0: + case 1: + case 2: + case 3: + case 4: + case 5: + case 6: + case 7: + out += String.fromCharCode(c); + break; + case 12: + case 13: + char2 = array[i++]; + out += String.fromCharCode((c & 31) << 6 | char2 & 63); + break; + case 14: + char2 = array[i++]; + char3 = array[i++]; + out += String.fromCharCode((c & 15) << 12 | (char2 & 63) << 6 | (char3 & 63) << 0); + break + } + } + return out +} + +function gzip(str) { + let arr = pako.gzip(str, {}); + return uint8ArrayToBase64(arr) +} + +function ungzip(b64Data) { + let strData = atob(b64Data); + const charData = strData.split("").map(function(x) { + return x.charCodeAt(0) + }); + const binData = new Uint8Array(charData); + const data = pako.inflate(binData); + return Utf8ArrayToStr(data) +} + +function encodeStr(input, encoding) { + encoding = encoding || "gbk"; + if (encoding.startsWith("gb")) { + input = gbkTool.encode(input) + } + return input +} + +function decodeStr(input, encoding) { + encoding = encoding || "gbk"; + if (encoding.startsWith("gb")) { + input = gbkTool.decode(input) + } + return input +} + +function getCryptoJS() { + return 'console.log("CryptoJS已装载");' +} +const RSA = { + decode: function(data, key, option) { + option = option || {}; + if (typeof JSEncrypt === "function") { + let chunkSize = option.chunkSize || 117; + let privateKey = this.getPrivateKey(key); + const decryptor = new JSEncrypt; + decryptor.setPrivateKey(privateKey); + let uncrypted = ""; + uncrypted = decryptor.decryptUnicodeLong(data); + return uncrypted + } else { + return false + } + }, + encode: function(data, key, option) { + option = option || {}; + if (typeof JSEncrypt === "function") { + let chunkSize = option.chunkSize || 117; + let publicKey = this.getPublicKey(key); + const encryptor = new JSEncrypt; + encryptor.setPublicKey(publicKey); + let encrypted = ""; + encrypted = encryptor.encryptUnicodeLong(data); + return encrypted + } else { + return false + } + }, + fixKey(key, prefix, endfix) { + if (!key.includes(prefix)) { + key = prefix + key + } + if (!key.includes(endfix)) { + key += endfix + } + return key + }, + getPrivateKey(key) { + let prefix = "-----BEGIN RSA PRIVATE KEY-----"; + let endfix = "-----END RSA PRIVATE KEY-----"; + return this.fixKey(key, prefix, endfix) + }, + getPublicKey(key) { + let prefix = "-----BEGIN PUBLIC KEY-----"; + let endfix = "-----END PUBLIC KEY-----"; + return this.fixKey(key, prefix, endfix) + } +}; + +function getProxyUrl() { + if (typeof getProxy === "function") { + return getProxy(true) + } else { + return "http://127.0.0.1:9978/proxy?do=js" + } +} + +function fixAdM3u8(m3u8_text, m3u8_url, ad_remove) { + if (!m3u8_text && !m3u8_url || !m3u8_text && m3u8_url && !m3u8_url.startsWith("http")) { + return "" + } + if (!m3u8_text) { + log("m3u8_url:" + m3u8_url); + m3u8_text = request(m3u8_url) + } + log("len(m3u8_text):" + m3u8_text.length); + if (!ad_remove) { + return m3u8_text + } + if (ad_remove.startsWith("reg:")) { + ad_remove = ad_remove.slice(4) + } else if (ad_remove.startsWith("js:")) { + ad_remove = ad_remove.slice(3) + } + let m3u8_start = m3u8_text.slice(0, m3u8_text.indexOf("#EXTINF")).trim(); + let m3u8_body = m3u8_text.slice(m3u8_text.indexOf("#EXTINF"), m3u8_text.indexOf("#EXT-X-ENDLIST")).trim(); + let m3u8_end = m3u8_text.slice(m3u8_text.indexOf("#EXT-X-ENDLIST")).trim(); + let murls = []; + let m3_body_list = m3u8_body.split("\n"); + let m3_len = m3_body_list.length; + let i = 0; + while (i < m3_len) { + let mi = m3_body_list[i]; + let mi_1 = m3_body_list[i + 1]; + if (mi.startsWith("#EXTINF")) { + murls.push([mi, mi_1].join("&")); + i += 2 + } else if (mi.startsWith("#EXT-X-DISCONTINUITY")) { + let mi_2 = m3_body_list[i + 2]; + murls.push([mi, mi_1, mi_2].join("&")); + i += 3 + } else { + break + } + } + let new_m3u8_body = []; + for (let murl of murls) { + if (ad_remove && new RegExp(ad_remove).test(murl)) {} else { + let murl_list = murl.split("&"); + if (!murl_list[murl_list.length - 1].startsWith("http") && m3u8_url.startsWith("http")) { + murl_list[murl_list.length - 1] = urljoin(m3u8_url, murl_list[murl_list.length - 1]) + } + murl_list.forEach(it => { + new_m3u8_body.push(it) + }) + } + } + new_m3u8_body = new_m3u8_body.join("\n").trim(); + m3u8_text = [m3u8_start, new_m3u8_body, m3u8_end].join("\n").trim(); + return m3u8_text +} + +function fixAdM3u8Ai(m3u8_url, headers) { + let ts = (new Date).getTime(); + let option = headers ? { + headers: headers + } : {}; + + function b(s1, s2) { + let i = 0; + while (i < s1.length) { + if (s1[i] !== s2[i]) { + break + } + i++ + } + return i + } + + function reverseString(str) { + return str.split("").reverse().join("") + } + let m3u8 = request(m3u8_url, option); + m3u8 = m3u8.trim().split("\n").map(it => it.startsWith("#") ? it : urljoin(m3u8_url, it)).join("\n"); + m3u8 = m3u8.replace(/\n\n/gi, "\n"); + let last_url = m3u8.split("\n").slice(-1)[0]; + if (last_url.length < 5) { + last_url = m3u8.split("\n").slice(-2)[0] + } + if (last_url.includes(".m3u8") && last_url !== m3u8_url) { + m3u8_url = urljoin2(m3u8_url, last_url); + log("嵌套的m3u8_url:" + m3u8_url); + m3u8 = request(m3u8_url, option) + } + let s = m3u8.trim().split("\n").filter(it => it.trim()).join("\n"); + let ss = s.split("\n"); + if (m3u8_url.indexOf("ffzy") > 0) { + let j = 0, + k1 = 0, + m = 0, + n = 0, + t = 0; + let s2 = ""; + for (let i = 0; i < ss.length; i++) { + let s = ss[i]; + let s1 = ""; + if (s.startsWith("#EXTINF")) { + s1 = s.slice(8); + n++; + if (n == 1) k1 = i; + if (s2.indexOf(s1) == -1) { + s2 = s2 + s1; + m++ + } + t = t + parseFloat(s1); + i++; + s = ss[i] + } + if (s.startsWith("#EXT-X-DISCONTINUITY")) { + if (n == 5) { + log("n:" + n); + log("m:" + m); + for (let j = k1; j < k1 + n * 2; j++) { + log(ss[j]) + } + log("广告位置:" + k1); + log("数据条数:" + n); + log("数据种类:" + m); + log("广告时间:" + t.toFixed(5)); + ss.splice(k1, 2 * n + 1); + i = i - 2 * n + 1 + } + t = 0; + m = 0; + n = 0; + s2 = "" + } + } + } + let firststr = ""; + let maxl = 0; + let kk = 0; + let kkk1 = 1; + let kkk2 = 0; + let secondstr = ""; + for (let i = 0; i < ss.length; i++) { + let s = ss[i]; + if (!s.startsWith("#")) { + if (kk == 0) firststr = s; + if (kk > 0) { + if (maxl > b(firststr, s) + 1) { + if (secondstr.length < 5) secondstr = s; + kkk2++ + } else { + maxl = b(firststr, s); + kkk1++ + } + } + kk++; + if (kk >= 30) break + } + } + if (kkk2 > kkk1) firststr = secondstr; + let firststrlen = firststr.length; + let ml = Math.round(ss.length / 2).toString().length; + let maxc = 0; + let laststr = ss.toReversed().find(x => { + if (!x.startsWith("#")) { + let k = b(reverseString(firststr), reverseString(x)); + maxl = b(firststr, x); + maxc++; + if (firststrlen - maxl <= ml + k || maxc > 10) { + return true + } + } + return false + }); + log("最后一条切片:" + laststr); + let ad_urls = []; + for (let i = 0; i < ss.length; i++) { + let s = ss[i]; + if (!s.startsWith("#")) { + if (b(firststr, s) < maxl) { + ad_urls.push(s); + ss.splice(i - 1, 2); + i = i - 2 + } else { + ss[i] = urljoin(m3u8_url, s) + } + } else { + ss[i] = s.replace(/URI=\"(.*)\"/, 'URI="' + urljoin(m3u8_url, "$1") + '"') + } + } + log("处理的m3u8地址:" + m3u8_url); + log("----广告地址----"); + log(ad_urls); + m3u8 = ss.join("\n"); + log("处理耗时:" + ((new Date).getTime() - ts).toString()); + log(m3u8); + return m3u8 +} + +function forceOrder(lists, key, option) { + let start = Math.floor(lists.length / 2); + let end = Math.min(lists.length - 1, start + 1); + if (start >= end) { + return lists + } + let first = lists[start]; + let second = lists[end]; + if (key) { + try { + first = first[key]; + second = second[key] + } catch (e) {} + } + if (option && typeof option === "function") { + try { + first = option(first); + second = option(second) + } catch (e) {} + } + first += ""; + second += ""; + if (first.match(/(\d+)/) && second.match(/(\d+)/)) { + let num1 = Number(first.match(/(\d+)/)[1]); + let num2 = Number(second.match(/(\d+)/)[1]); + if (num1 > num2) { + lists.reverse() + } + } + return lists +} +let VODS = []; +let VOD = {}; +let TABS = []; +let LISTS = []; + +function getQuery(url) { + try { + if (url.indexOf("?") > -1) { + url = url.slice(url.indexOf("?") + 1) + } + let arr = url.split("#")[0].split("&"); + const resObj = {}; + arr.forEach(item => { + let arr1 = item.split("="); + let key = arr1[0]; + let value = arr1.slice(1).join("="); + resObj[key] = value + }); + return resObj + } catch (err) { + log(`getQuery发生错误:${e.message}`); + return {} + } +} + +function urljoin(fromPath, nowPath) { + fromPath = fromPath || ""; + nowPath = nowPath || ""; + return joinUrl(fromPath, nowPath) +} +var urljoin2 = urljoin; +const defaultParser = { + pdfh: pdfh, + pdfa: pdfa, + pd: pd +}; + +function pdfh2(html, parse) { + let html2 = html; + try { + if (typeof html !== "string") { + html2 = html.rr(html.ele).toString() + } + } catch (e) { + print(`html对象转文本发生了错误:${e.message}`) + } + let result = defaultParser.pdfh(html2, parse); + let option = parse.includes("&&") ? parse.split("&&").slice(-1)[0] : parse.split(" ").slice(-1)[0]; + if (/style/.test(option.toLowerCase()) && /url\(/.test(result)) { + try { + result = result.match(/url\((.*?)\)/)[1]; + result = result.replace(/^['|"](.*)['|"]$/, "$1") + } catch (e) {} + } + return result +} + +function pdfa2(html, parse) { + let html2 = html; + try { + if (typeof html !== "string") { + html2 = html.rr(html.ele).toString() + } + } catch (e) { + print(`html对象转文本发生了错误:${e.message}`) + } + return defaultParser.pdfa(html2, parse) +} + +function pd2(html, parse, uri) { + let ret = pdfh2(html, parse); + if (typeof uri === "undefined" || !uri) { + uri = "" + } + if (DOM_CHECK_ATTR.test(parse) && !SPECIAL_URL.test(ret)) { + if (/http/.test(ret)) { + ret = ret.slice(ret.indexOf("http")) + } else { + ret = urljoin(MY_URL, ret) + } + } + return ret +} +const parseTags = { + jsp: { + pdfh: pdfh2, + pdfa: pdfa2, + pd: pd2 + }, + json: { + pdfh(html, parse) { + if (!parse || !parse.trim()) { + return "" + } + if (typeof html === "string") { + html = JSON.parse(html) + } + parse = parse.trim(); + if (!parse.startsWith("$.")) { + parse = "$." + parse + } + parse = parse.split("||"); + for (let ps of parse) { + let ret = cheerio.jp(ps, html); + if (Array.isArray(ret)) { + ret = ret[0] || "" + } else { + ret = ret || "" + } + if (ret && typeof ret !== "string") { + ret = ret.toString() + } + if (ret) { + return ret + } + } + return "" + }, + pdfa(html, parse) { + if (!parse || !parse.trim()) { + return "" + } + if (typeof html === "string") { + html = JSON.parse(html) + } + parse = parse.trim(); + if (!parse.startsWith("$.")) { + parse = "$." + parse + } + let ret = cheerio.jp(parse, html); + if (Array.isArray(ret) && Array.isArray(ret[0]) && ret.length === 1) { + return ret[0] || [] + } + return ret || [] + }, + pd(html, parse) { + let ret = parseTags.json.pdfh(html, parse); + if (ret) { + return urljoin(MY_URL, ret) + } + return ret + } + }, + jq: { + pdfh(html, parse) { + if (!html || !parse || !parse.trim()) { + return "" + } + parse = parse.trim(); + let result = defaultParser.pdfh(html, parse); + return result + }, + pdfa(html, parse) { + if (!html || !parse || !parse.trim()) { + return [] + } + parse = parse.trim(); + let result = defaultParser.pdfa(html, parse); + print(`pdfa解析${parse}=>${result.length}`); + return result + }, + pd(html, parse, base_url) { + if (!html || !parse || !parse.trim()) { + return "" + } + parse = parse.trim(); + base_url = base_url || MY_URL; + return defaultParser.pd(html, parse, base_url) + } + }, + getParse(p0) { + if (p0.startsWith("jsp:")) { + return this.jsp + } else if (p0.startsWith("json:")) { + return this.json + } else if (p0.startsWith("jq:")) { + return this.jq + } else { + return this.jq + } + } +}; +const stringify = JSON.stringify; +const jsp = parseTags.jsp; +const jq = parseTags.jq; + +function readFile(filePath) { + filePath = filePath || "./uri.min.js"; + var fd = os.open(filePath); + var buffer = new ArrayBuffer(1024); + var len = os.read(fd, buffer, 0, 1024); + console.log(len); + let text = String.fromCharCode.apply(null, new Uint8Array(buffer)); + console.log(text); + return text +} + +function dealJson(html) { + try { + html = html.trim(); + if (!(html.startsWith("{") && html.endsWith("}") || html.startsWith("[") && html.endsWith("]"))) { + html = "{" + html.match(/.*?\{(.*)\}/m)[1] + "}" + } + } catch (e) {} + try { + html = JSON.parse(html) + } catch (e) {} + return html +} +var OcrApi = { + api: OCR_API, + classification: function(img) { + let code = ""; + try { + log("通过drpy_ocr验证码接口过验证..."); + let html = ""; + if (this.api.endsWith("drpy/text")) { + html = request(this.api, { + data: { + img: img + }, + headers: { + "User-Agent": PC_UA + }, + method: "POST" + }, true) + } else { + html = post(this.api, { + body: img + }) + } + code = html || "" + } catch (e) { + log(`OCR识别验证码发生错误:${e.message}`) + } + return code + } +}; + +function verifyCode(url) { + let cnt = 0; + let host = getHome(url); + let cookie = ""; + while (cnt < OCR_RETRY) { + try { + let yzm_url = `${host}/index.php/verify/index.html`; + console.log(`验证码链接:${yzm_url}`); + let hhtml = request(yzm_url, { + withHeaders: true, + toBase64: true + }, true); + let json = JSON.parse(hhtml); + if (!cookie) { + let setCk = Object.keys(json).find(it => it.toLowerCase() === "set-cookie"); + cookie = setCk ? json[setCk].split(";")[0] : "" + } + console.log("cookie:" + cookie); + let img = json.body; + let code = OcrApi.classification(img); + console.log(`第${cnt+1}次验证码识别结果:${code}`); + let submit_url = `${host}/index.php/ajax/verify_check?type=search&verify=${code}`; + console.log(submit_url); + let html = request(submit_url, { + headers: { + Cookie: cookie + }, + method: "POST" + }); + html = JSON.parse(html); + if (html.msg === "ok") { + console.log(`第${cnt+1}次验证码提交成功`); + return cookie + } else if (html.msg !== "ok" && cnt + 1 >= OCR_RETRY) { + cookie = "" + } + } catch (e) { + console.log(`第${cnt+1}次验证码提交失败:${e.message}`); + if (cnt + 1 >= OCR_RETRY) { + cookie = "" + } + } + cnt += 1 + } + return cookie +} + +function setItem(k, v) { + local.set(RKEY, k, v); + console.log(`规则${RKEY}设置${k} => ${v}`) +} + +function getItem(k, v) { + return local.get(RKEY, k) || v +} + +function clearItem(k) { + local.delete(RKEY, k) +} + +function getHome(url) { + if (!url) { + return "" + } + let tmp = url.split("//"); + url = tmp[0] + "//" + tmp[1].split("/")[0]; + try { + url = decodeURIComponent(url) + } catch (e) {} + return url +} + +function buildUrl(url, obj) { + obj = obj || {}; + if (url.indexOf("?") < 0) { + url += "?" + } + let param_list = []; + let keys = Object.keys(obj); + keys.forEach(it => { + param_list.push(it + "=" + obj[it]) + }); + let prs = param_list.join("&"); + if (keys.length > 0 && !url.endsWith("?")) { + url += "&" + } + url += prs; + return url +} + +function $require(url) { + eval(request(url)) +} + +function keysToLowerCase(obj) { + return Object.keys(obj).reduce((result, key) => { + const newKey = key.toLowerCase(); + result[newKey] = obj[key]; + return result + }, {}) +} + +function buildQueryString(params) { + const queryArray = []; + for (const key in params) { + if (params.hasOwnProperty(key)) { + let value = params[key]; + if (value === undefined || value === null) { + value = "" + } else { + value = value.toString() + } + const encodedKey = encodeURIComponent(key); + const encodedValue = encodeURIComponent(value); + queryArray.push(encodedKey + "=" + encodedValue) + } + } + return queryArray.join("&") +} + +function parseQueryString(query) { + const params = {}; + query.split("&").forEach(function(part) { + const regex = /^(.*?)=(.*)/; + const match = part.match(regex); + if (match) { + const key = decodeURIComponent(match[1]); + const value = decodeURIComponent(match[2]); + params[key] = value + } + }); + return params +} + +function encodeIfContainsSpecialChars(value) { + const specialChars = ":/?#[]@!$'()*+,;=%"; + if (specialChars.split("").some(char => value.includes(char))) { + return encodeURIComponent(value) + } + return value +} + +function objectToQueryString(obj) { + const encoded = []; + for (let key in obj) { + if (obj.hasOwnProperty(key)) { + encoded.push(encodeURIComponent(key) + "=" + encodeIfContainsSpecialChars(obj[key])) + } + } + return encoded.join("&") +} + +function request(url, obj, ocr_flag) { + ocr_flag = ocr_flag || false; + if (typeof obj === "undefined" || !obj || obj === {}) { + if (!fetch_params || !fetch_params.headers) { + let headers = { + "User-Agent": MOBILE_UA + }; + if (rule.headers) { + Object.assign(headers, rule.headers) + } + if (!fetch_params) { + fetch_params = {} + } + fetch_params.headers = headers + } + if (!fetch_params.headers.Referer) { + fetch_params.headers.Referer = getHome(url) + } + obj = fetch_params + } else { + let headers = obj.headers || {}; + let keys = Object.keys(headers).map(it => it.toLowerCase()); + if (!keys.includes("user-agent")) { + headers["User-Agent"] = MOBILE_UA; + if (typeof fetch_params === "object" && fetch_params && fetch_params.headers) { + let fetch_headers = keysToLowerCase(fetch_params.headers); + if (fetch_headers["user-agent"]) { + headers["User-Agent"] = fetch_headers["user-agent"] + } + } + } + if (!keys.includes("referer")) { + headers["Referer"] = getHome(url) + } + obj.headers = headers + } + if (rule.encoding && rule.encoding !== "utf-8" && !ocr_flag) { + if (!obj.headers.hasOwnProperty("Content-Type") && !obj.headers.hasOwnProperty("content-type")) { + obj.headers["Content-Type"] = "text/html; charset=" + rule.encoding + } + } + if (typeof obj.body != "undefined" && obj.body && typeof obj.body === "string") { + if (!obj.headers.hasOwnProperty("Content-Type") && !obj.headers.hasOwnProperty("content-type")) { + obj.headers["Content-Type"] = "application/x-www-form-urlencoded; charset=" + rule.encoding + } + } else if (typeof obj.body != "undefined" && obj.body && typeof obj.body === "object") { + obj.data = obj.body; + delete obj.body + } + if (!url) { + return obj.withHeaders ? "{}" : "" + } + if (obj.toBase64) { + obj.buffer = 2; + delete obj.toBase64 + } + if (obj.redirect === false) { + obj.redirect = 0 + } + if (obj.headers.hasOwnProperty("Content-Type") || obj.headers.hasOwnProperty("content-type")) { + let _contentType = obj.headers["Content-Type"] || obj.headers["content-type"] || ""; + if (_contentType.includes("application/x-www-form-urlencoded")) { + log("custom body is application/x-www-form-urlencoded"); + if (typeof obj.body == "string") { + let temp_obj = parseQueryString(obj.body); + console.log(JSON.stringify(temp_obj)) + } + } + } + console.log(JSON.stringify(obj.headers)); + console.log("request:" + url + `|method:${obj.method||"GET"}|body:${obj.body||""}`); + let res = req(url, obj); + let html = res.content || ""; + if (obj.withHeaders) { + let htmlWithHeaders = res.headers; + htmlWithHeaders.body = html; + return JSON.stringify(htmlWithHeaders) + } else { + return html + } +} + +function post(url, obj) { + obj = obj || {}; + obj.method = "POST"; + return request(url, obj) +} + +function reqCookie(url, obj, all_cookie) { + obj = obj || {}; + obj.withHeaders = true; + all_cookie = all_cookie || false; + let html = request(url, obj); + let json = JSON.parse(html); + let setCk = Object.keys(json).find(it => it.toLowerCase() === "set-cookie"); + let cookie = setCk ? json[setCk] : ""; + if (Array.isArray(cookie)) { + cookie = cookie.join(";") + } + if (!all_cookie) { + cookie = cookie.split(";")[0] + } + html = json.body; + return { + cookie: cookie, + html: html + } +} +fetch = request; +print = function(data) { + data = data || ""; + if (typeof data == "object" && Object.keys(data).length > 0) { + try { + data = JSON.stringify(data); + console.log(data) + } catch (e) { + console.log(typeof data + ":" + data.length); + return + } + } else if (typeof data == "object" && Object.keys(data).length < 1) { + console.log("null object") + } else { + console.log(data) + } +}; +log = print; + +function checkHtml(html, url, obj) { + if (/\?btwaf=/.test(html)) { + let btwaf = html.match(/btwaf(.*?)"/)[1]; + url = url.split("#")[0] + "?btwaf" + btwaf; + print("宝塔验证访问链接:" + url); + html = request(url, obj) + } + return html +} + +function getCode(url, obj) { + let html = request(url, obj); + html = checkHtml(html, url, obj); + return html +} + +function getHtml(url) { + let obj = {}; + if (rule.headers) { + obj.headers = rule.headers + } + let cookie = getItem(RULE_CK, ""); + if (cookie) { + if (obj.headers && !Object.keys(obj.headers).map(it => it.toLowerCase()).includes("cookie")) { + log("历史无cookie,新增过验证后的cookie"); + obj.headers["Cookie"] = cookie + } else if (obj.headers && obj.headers.cookie && obj.headers.cookie !== cookie) { + obj.headers["Cookie"] = cookie; + log("历史有小写过期的cookie,更新过验证后的cookie") + } else if (obj.headers && obj.headers.Cookie && obj.headers.Cookie !== cookie) { + obj.headers["Cookie"] = cookie; + log("历史有大写过期的cookie,更新过验证后的cookie") + } else if (!obj.headers) { + obj.headers = { + Cookie: cookie + }; + log("历史无headers,更新过验证后的含cookie的headers") + } + } + let html = getCode(url, obj); + return html +} + +function homeParse(homeObj) { + fetch_params = JSON.parse(JSON.stringify(rule_fetch_params)); + let classes = []; + if (homeObj.class_name && homeObj.class_url) { + let names = homeObj.class_name.split("&"); + let urls = homeObj.class_url.split("&"); + let cnt = Math.min(names.length, urls.length); + for (let i = 0; i < cnt; i++) { + classes.push({ + type_id: urls[i], + type_name: names[i] + }) + } + } + if (homeObj.class_parse) { + if (homeObj.class_parse.startsWith("js:")) { + var input = homeObj.MY_URL; + try { + eval(homeObj.class_parse.replace("js:", "")); + if (Array.isArray(input)) { + classes = input + } + } catch (e) { + log(`通过js动态获取分类发生了错误:${e.message}`) + } + } else { + let p = homeObj.class_parse.split(";"); + let p0 = p[0]; + let _ps = parseTags.getParse(p0); + let is_json = p0.startsWith("json:"); + _pdfa = _ps.pdfa; + _pdfh = _ps.pdfh; + _pd = _ps.pd; + MY_URL = rule.url; + if (is_json) { + try { + let cms_cate_url = homeObj.MY_URL.replace("ac=detail", "ac=list"); + let html = homeObj.home_html || getHtml(cms_cate_url); + if (html) { + if (cms_cate_url === homeObj.MY_URL) { + homeHtmlCache = html + } + let list = _pdfa(html, p0.replace("json:", "")); + if (list && list.length > 0) { + classes = list + } + } + } catch (e) { + console.log(e.message) + } + } else if (p.length >= 3 && !is_json) { + try { + let html = homeObj.home_html || getHtml(homeObj.MY_URL); + if (html) { + homeHtmlCache = html; + let list = _pdfa(html, p0); + if (list && list.length > 0) { + list.forEach((it, idex) => { + try { + let name = _pdfh(it, p[1]); + if (homeObj.cate_exclude && new RegExp(homeObj.cate_exclude).test(name)) { + return + } + let url = _pd(it, p[2]); + if (p.length > 3 && p[3] && !homeObj.home_html) { + let exp = new RegExp(p[3]); + url = url.match(exp)[1] + } + classes.push({ + type_id: url.trim(), + type_name: name.trim() + }) + } catch (e) { + console.log(`分类列表定位第${idex}个元素正常报错:${e.message}`) + } + }) + } + } + } catch (e) { + console.log(e.message) + } + } + } + } + classes = classes.filter(it => !homeObj.cate_exclude || !new RegExp(homeObj.cate_exclude).test(it.type_name)); + let resp = { + class: classes + }; + if (homeObj.filter) { + resp.filters = homeObj.filter + } + console.log(JSON.stringify(resp)); + return JSON.stringify(resp) +} + +function getPP(p, pn, pp, ppn) { + try { + let ps = p[pn] === "*" && pp.length > ppn ? pp[ppn] : p[pn]; + return ps + } catch (e) { + return "" + } +} + +function homeVodParse(homeVodObj) { + fetch_params = JSON.parse(JSON.stringify(rule_fetch_params)); + let d = []; + MY_URL = homeVodObj.homeUrl; + console.log(MY_URL); + let t1 = (new Date).getTime(); + let p = homeVodObj.推荐; + print("p:" + p); + if (p === "*" && rule.一级) { + p = rule.一级; + homeVodObj.double = false + } + if (!p || typeof p !== "string") { + return "{}" + } + p = p.trim(); + let pp = rule.一级 ? rule.一级.split(";") : []; + if (p.startsWith("js:")) { + const TYPE = "home"; + var input = MY_URL; + HOST = rule.host; + eval(p.replace("js:", "")); + d = VODS + } else { + p = p.split(";"); + if (!homeVodObj.double && p.length < 5) { + return "{}" + } else if (homeVodObj.double && p.length < 6) { + return "{}" + } + let p0 = getPP(p, 0, pp, 0); + let _ps = parseTags.getParse(p0); + _pdfa = _ps.pdfa; + _pdfh = _ps.pdfh; + _pd = _ps.pd; + let is_json = p0.startsWith("json:"); + p0 = p0.replace(/^(jsp:|json:|jq:)/, ""); + let html = homeHtmlCache || getHtml(MY_URL); + homeHtmlCache = undefined; + if (is_json) { + html = dealJson(html) + } + try { + console.log("double:" + homeVodObj.double); + if (homeVodObj.double) { + let items = _pdfa(html, p0); + let p1 = getPP(p, 1, pp, 0); + let p2 = getPP(p, 2, pp, 1); + let p3 = getPP(p, 3, pp, 2); + let p4 = getPP(p, 4, pp, 3); + let p5 = getPP(p, 5, pp, 4); + let p6 = getPP(p, 6, pp, 5); + for (let item of items) { + let items2 = _pdfa(item, p1); + for (let item2 of items2) { + try { + let title = _pdfh(item2, p2); + let img = ""; + try { + img = _pd(item2, p3) + } catch (e) {} + let desc = ""; + try { + desc = _pdfh(item2, p4) + } catch (e) {} + let links = []; + for (let _p5 of p5.split("+")) { + let link = !homeVodObj.detailUrl ? _pd(item2, _p5, MY_URL) : _pdfh(item2, _p5); + links.push(link) + } + let content; + if (p.length > 6 && p[6]) { + content = _pdfh(item2, p6) + } else { + content = "" + } + let vid = links.join("$"); + if (rule.二级 === "*") { + vid = vid + "@@" + title + "@@" + img + } + let vod = { + vod_name: title, + vod_pic: img, + vod_remarks: desc, + vod_content: content, + vod_id: vid + }; + d.push(vod) + } catch (e) { + console.log(`首页列表双层定位处理发生错误:${e.message}`) + } + } + } + } else { + let items = _pdfa(html, p0); + let p1 = getPP(p, 1, pp, 1); + let p2 = getPP(p, 2, pp, 2); + let p3 = getPP(p, 3, pp, 3); + let p4 = getPP(p, 4, pp, 4); + let p5 = getPP(p, 5, pp, 5); + for (let item of items) { + try { + let title = _pdfh(item, p1); + let img = ""; + try { + img = _pd(item, p2, MY_URL) + } catch (e) {} + let desc = ""; + try { + desc = _pdfh(item, p3) + } catch (e) {} + let links = []; + for (let _p5 of p4.split("+")) { + let link = !homeVodObj.detailUrl ? _pd(item, _p5, MY_URL) : _pdfh(item, _p5); + links.push(link) + } + let content; + if (p.length > 5 && p[5]) { + content = _pdfh(item, p5) + } else { + content = "" + } + let vid = links.join("$"); + if (rule.二级 === "*") { + vid = vid + "@@" + title + "@@" + img + } + let vod = { + vod_name: title, + vod_pic: img, + vod_remarks: desc, + vod_content: content, + vod_id: vid + }; + d.push(vod) + } catch (e) { + console.log(`首页列表单层定位处理发生错误:${e.message}`) + } + } + } + } catch (e) {} + } + let t2 = (new Date).getTime(); + console.log("加载首页推荐耗时:" + (t2 - t1) + "毫秒"); + if (rule.图片替换) { + if (rule.图片替换.startsWith("js:")) { + d.forEach(it => { + try { + var input = it.vod_pic; + eval(rule.图片替换.trim().replace("js:", "")); + it.vod_pic = input + } catch (e) { + log(`图片:${it.vod_pic}替换错误:${e.message}`) + } + }) + } else if (rule.图片替换.includes("=>")) { + let replace_from = rule.图片替换.split("=>")[0]; + let replace_to = rule.图片替换.split("=>")[1]; + d.forEach(it => { + if (it.vod_pic && it.vod_pic.startsWith("http")) { + it.vod_pic = it.vod_pic.replace(replace_from, replace_to) + } + }) + } + } + if (rule.图片来源) { + d.forEach(it => { + if (it.vod_pic && it.vod_pic.startsWith("http")) { + it.vod_pic = it.vod_pic + rule.图片来源 + } + }) + } + if (d.length > 0) { + print(d.slice(0, 2)) + } + return JSON.stringify({ + list: d + }) +} + +function categoryParse(cateObj) { + fetch_params = JSON.parse(JSON.stringify(rule_fetch_params)); + let p = cateObj.一级; + if (!p || typeof p !== "string") { + return "{}" + } + let d = []; + let url = cateObj.url.replaceAll("fyclass", cateObj.tid); + if (cateObj.pg === 1 && url.includes("[") && url.includes("]")) { + url = url.split("[")[1].split("]")[0] + } else if (cateObj.pg > 1 && url.includes("[") && url.includes("]")) { + url = url.split("[")[0] + } + if (rule.filter_url) { + if (!/fyfilter/.test(url)) { + if (!url.endsWith("&") && !rule.filter_url.startsWith("&")) { + url += "&" + } + url += rule.filter_url + } else { + url = url.replace("fyfilter", rule.filter_url) + } + url = url.replaceAll("fyclass", cateObj.tid); + let fl = cateObj.filter ? cateObj.extend : {}; + if (rule.filter_def && typeof rule.filter_def === "object") { + try { + if (Object.keys(rule.filter_def).length > 0 && rule.filter_def.hasOwnProperty(cateObj.tid)) { + let self_fl_def = rule.filter_def[cateObj.tid]; + if (self_fl_def && typeof self_fl_def === "object") { + let fl_def = JSON.parse(JSON.stringify(self_fl_def)); + fl = Object.assign(fl_def, fl) + } + } + } catch (e) { + print(`合并不同分类对应的默认筛选出错:${e.message}`) + } + } + let new_url; + new_url = cheerio.jinja2(url, { + fl: fl, + fyclass: cateObj.tid + }); + url = new_url + } + if (/fypage/.test(url)) { + if (url.includes("(") && url.includes(")")) { + let url_rep = url.match(/.*?\((.*)\)/)[1]; + let cnt_page = url_rep.replaceAll("fypage", cateObj.pg); + let cnt_pg = eval(cnt_page); + url = url.replaceAll(url_rep, cnt_pg).replaceAll("(", "").replaceAll(")", "") + } else { + url = url.replaceAll("fypage", cateObj.pg) + } + } + MY_URL = url; + console.log(MY_URL); + p = p.trim(); + const MY_CATE = cateObj.tid; + if (p.startsWith("js:")) { + var MY_FL = cateObj.extend; + const TYPE = "cate"; + var input = MY_URL; + const MY_PAGE = cateObj.pg; + var desc = ""; + eval(p.trim().replace("js:", "")); + d = VODS + } else { + p = p.split(";"); + if (p.length < 5) { + return "{}" + } + let _ps = parseTags.getParse(p[0]); + _pdfa = _ps.pdfa; + _pdfh = _ps.pdfh; + _pd = _ps.pd; + let is_json = p[0].startsWith("json:"); + p[0] = p[0].replace(/^(jsp:|json:|jq:)/, ""); + try { + let html = getHtml(MY_URL); + if (html) { + if (is_json) { + html = dealJson(html) + } + let list = _pdfa(html, p[0]); + list.forEach(it => { + let links = p[4].split("+").map(p4 => { + return !rule.detailUrl ? _pd(it, p4, MY_URL) : _pdfh(it, p4) + }); + let link = links.join("$"); + let vod_id = rule.detailUrl ? MY_CATE + "$" + link : link; + let vod_name = _pdfh(it, p[1]).replace(/\n|\t/g, "").trim(); + let vod_pic = _pd(it, p[2], MY_URL); + if (rule.二级 === "*") { + vod_id = vod_id + "@@" + vod_name + "@@" + vod_pic + } + d.push({ + vod_id: vod_id, + vod_name: vod_name, + vod_pic: vod_pic, + vod_remarks: _pdfh(it, p[3]).replace(/\n|\t/g, "").trim() + }) + }) + } + } catch (e) { + console.log(e.message) + } + } + if (rule.图片替换) { + if (rule.图片替换.startsWith("js:")) { + d.forEach(it => { + try { + var input = it.vod_pic; + eval(rule.图片替换.trim().replace("js:", "")); + it.vod_pic = input + } catch (e) { + log(`图片:${it.vod_pic}替换错误:${e.message}`) + } + }) + } else if (rule.图片替换.includes("=>")) { + let replace_from = rule.图片替换.split("=>")[0]; + let replace_to = rule.图片替换.split("=>")[1]; + d.forEach(it => { + if (it.vod_pic && it.vod_pic.startsWith("http")) { + it.vod_pic = it.vod_pic.replace(replace_from, replace_to) + } + }) + } + } + if (rule.图片来源) { + d.forEach(it => { + if (it.vod_pic && it.vod_pic.startsWith("http")) { + it.vod_pic = it.vod_pic + rule.图片来源 + } + }) + } + if (d.length > 0) { + print(d.slice(0, 2)) + } + let pagecount = 0; + if (rule.pagecount && typeof rule.pagecount === "object" && rule.pagecount.hasOwnProperty(MY_CATE)) { + print(`MY_CATE:${MY_CATE},pagecount:${JSON.stringify(rule.pagecount)}`); + pagecount = parseInt(rule.pagecount[MY_CATE]) + } + let nodata = { + list: [{ + vod_name: "无数据,防无限请求", + vod_id: "no_data", + vod_remarks: "不要点,会崩的", + vod_pic: "https://ghproxy.net/https://raw.githubusercontent.com/hjdhnx/dr_py/main/404.jpg" + }], + total: 1, + pagecount: 1, + page: 1, + limit: 1 + }; + let vod = d.length < 1 ? JSON.stringify(nodata) : JSON.stringify({ + page: parseInt(cateObj.pg), + pagecount: pagecount || 999, + limit: 20, + total: 999, + list: d + }); + return vod +} + +function searchParse(searchObj) { + fetch_params = JSON.parse(JSON.stringify(rule_fetch_params)); + let d = []; + if (!searchObj.searchUrl) { + return "{}" + } + if (rule.searchNoPage && Number(searchObj.pg) > 1) { + return "{}" + } + let p = searchObj.搜索 === "*" && rule.一级 ? rule.一级 : searchObj.搜索; + if (!p || typeof p !== "string") { + return "{}" + } + p = p.trim(); + let pp = rule.一级 ? rule.一级.split(";") : []; + let url = searchObj.searchUrl.replaceAll("**", searchObj.wd); + if (searchObj.pg === 1 && url.includes("[") && url.includes("]") && !url.includes("#")) { + url = url.split("[")[1].split("]")[0] + } else if (searchObj.pg > 1 && url.includes("[") && url.includes("]") && !url.includes("#")) { + url = url.split("[")[0] + } + if (/fypage/.test(url)) { + if (url.includes("(") && url.includes(")")) { + let url_rep = url.match(/.*?\((.*)\)/)[1]; + let cnt_page = url_rep.replaceAll("fypage", searchObj.pg); + let cnt_pg = eval(cnt_page); + url = url.replaceAll(url_rep, cnt_pg).replaceAll("(", "").replaceAll(")", "") + } else { + url = url.replaceAll("fypage", searchObj.pg) + } + } + MY_URL = url; + console.log(MY_URL); + if (p.startsWith("js:")) { + const TYPE = "search"; + const MY_PAGE = searchObj.pg; + const KEY = searchObj.wd; + var input = MY_URL; + var detailUrl = rule.detailUrl || ""; + eval(p.trim().replace("js:", "")); + d = VODS + } else { + p = p.split(";"); + if (p.length < 5) { + return "{}" + } + let p0 = getPP(p, 0, pp, 0); + let _ps = parseTags.getParse(p0); + _pdfa = _ps.pdfa; + _pdfh = _ps.pdfh; + _pd = _ps.pd; + let is_json = p0.startsWith("json:"); + p0 = p0.replace(/^(jsp:|json:|jq:)/, ""); + try { + let req_method = MY_URL.split(";").length > 1 ? MY_URL.split(";")[1].toLowerCase() : "get"; + let html; + if (req_method === "post") { + let rurls = MY_URL.split(";")[0].split("#"); + let rurl = rurls[0]; + let params = rurls.length > 1 ? rurls[1] : ""; + print(`post=》rurl:${rurl},params:${params}`); + let _fetch_params = JSON.parse(JSON.stringify(rule_fetch_params)); + let postData = { + body: params + }; + Object.assign(_fetch_params, postData); + html = post(rurl, _fetch_params) + } else if (req_method === "postjson") { + let rurls = MY_URL.split(";")[0].split("#"); + let rurl = rurls[0]; + let params = rurls.length > 1 ? rurls[1] : ""; + print(`postjson-》rurl:${rurl},params:${params}`); + try { + params = JSON.parse(params) + } catch (e) { + params = "{}" + } + let _fetch_params = JSON.parse(JSON.stringify(rule_fetch_params)); + let postData = { + body: params + }; + Object.assign(_fetch_params, postData); + html = post(rurl, _fetch_params) + } else { + html = getHtml(MY_URL) + } + if (html) { + let search_tag = rule.搜索验证标识 || "系统安全验证|输入验证码"; + if (new RegExp(search_tag).test(html)) { + let cookie = verifyCode(MY_URL); + if (cookie) { + console.log(`本次成功过验证,cookie:${cookie}`); + setItem(RULE_CK, cookie) + } else { + console.log(`本次自动过搜索验证失败,cookie:${cookie}`) + } + html = getHtml(MY_URL) + } + if (!html.includes(searchObj.wd)) { + console.log("搜索结果源码未包含关键字,疑似搜索失败,正为您打印结果源码"); + console.log(html) + } + if (is_json) { + html = dealJson(html) + } + let list = _pdfa(html, p0); + let p1 = getPP(p, 1, pp, 1); + let p2 = getPP(p, 2, pp, 2); + let p3 = getPP(p, 3, pp, 3); + let p4 = getPP(p, 4, pp, 4); + let p5 = getPP(p, 5, pp, 5); + list.forEach(it => { + let links = p4.split("+").map(_p4 => { + return !rule.detailUrl ? _pd(it, _p4, MY_URL) : _pdfh(it, _p4) + }); + let link = links.join("$"); + let content; + if (p.length > 5 && p[5]) { + content = _pdfh(it, p5) + } else { + content = "" + } + let vod_id = link; + let vod_name = _pdfh(it, p1).replace(/\n|\t/g, "").trim(); + let vod_pic = _pd(it, p2, MY_URL); + if (rule.二级 === "*") { + vod_id = vod_id + "@@" + vod_name + "@@" + vod_pic + } + let ob = { + vod_id: vod_id, + vod_name: vod_name, + vod_pic: vod_pic, + vod_remarks: _pdfh(it, p3).replace(/\n|\t/g, "").trim(), + vod_content: content.replace(/\n|\t/g, "").trim() + }; + d.push(ob) + }) + } + } catch (e) { + print(`搜索发生错误:${e.message}`); + return "{}" + } + } + if (rule.图片替换) { + if (rule.图片替换.startsWith("js:")) { + d.forEach(it => { + try { + var input = it.vod_pic; + eval(rule.图片替换.trim().replace("js:", "")); + it.vod_pic = input + } catch (e) { + log(`图片:${it.vod_pic}替换错误:${e.message}`) + } + }) + } else if (rule.图片替换.includes("=>")) { + let replace_from = rule.图片替换.split("=>")[0]; + let replace_to = rule.图片替换.split("=>")[1]; + d.forEach(it => { + if (it.vod_pic && it.vod_pic.startsWith("http")) { + it.vod_pic = it.vod_pic.replace(replace_from, replace_to) + } + }) + } + } + if (rule.图片来源) { + d.forEach(it => { + if (it.vod_pic && it.vod_pic.startsWith("http")) { + it.vod_pic = it.vod_pic + rule.图片来源 + } + }) + } + return JSON.stringify({ + page: parseInt(searchObj.pg), + pagecount: 10, + limit: 20, + total: 100, + list: d + }) +} + +function detailParse(detailObj) { + let t1 = (new Date).getTime(); + fetch_params = JSON.parse(JSON.stringify(rule_fetch_params)); + let orId = detailObj.orId; + let vod_name = "片名"; + let vod_pic = ""; + let vod_id = orId; + if (rule.二级 === "*") { + let extra = orId.split("@@"); + vod_name = extra.length > 1 ? extra[1] : vod_name; + vod_pic = extra.length > 2 ? extra[2] : vod_pic + } + let vod = { + vod_id: vod_id, + vod_name: vod_name, + vod_pic: vod_pic, + type_name: "类型", + vod_year: "年份", + vod_area: "地区", + vod_remarks: "更新信息", + vod_actor: "主演", + vod_director: "导演", + vod_content: "简介" + }; + let p = detailObj.二级; + let url = detailObj.url; + let detailUrl = detailObj.detailUrl; + let fyclass = detailObj.fyclass; + let tab_exclude = detailObj.tab_exclude; + let html = detailObj.html || ""; + MY_URL = url; + if (detailObj.二级访问前) { + try { + print(`尝试在二级访问前执行代码:${detailObj.二级访问前}`); + eval(detailObj.二级访问前.trim().replace("js:", "")) + } catch (e) { + print(`二级访问前执行代码出现错误:${e.message}`) + } + } + if (p === "*") { + vod.vod_play_from = "在线播放"; + vod.vod_remarks = detailUrl; + vod.vod_actor = "没有二级,只有一级链接直接嗅探播放"; + vod.vod_content = MY_URL; + vod.vod_play_url = "嗅探播放$" + MY_URL.split("@@")[0] + } else if (typeof p === "string" && p.trim().startsWith("js:")) { + const TYPE = "detail"; + var input = MY_URL; + var play_url = ""; + eval(p.trim().replace("js:", "")); + vod = VOD; + console.log(JSON.stringify(vod)) + } else if (p && typeof p === "object") { + let tt1 = (new Date).getTime(); + if (!html) { + html = getHtml(MY_URL) + } + print(`二级${MY_URL}仅获取源码耗时:${(new Date).getTime()-tt1}毫秒`); + let _ps; + if (p.is_json) { + print("二级是json"); + _ps = parseTags.json; + html = dealJson(html) + } else if (p.is_jsp) { + print("二级是jsp"); + _ps = parseTags.jsp + } else if (p.is_jq) { + print("二级是jq"); + _ps = parseTags.jq + } else { + print("二级默认jq"); + _ps = parseTags.jq + } + let tt2 = (new Date).getTime(); + print(`二级${MY_URL}获取并装载源码耗时:${tt2-tt1}毫秒`); + _pdfa = _ps.pdfa; + _pdfh = _ps.pdfh; + _pd = _ps.pd; + if (p.title) { + let p1 = p.title.split(";"); + vod.vod_name = _pdfh(html, p1[0]).replace(/\n|\t/g, "").trim(); + let type_name = p1.length > 1 ? _pdfh(html, p1[1]).replace(/\n|\t/g, "").replace(/ /g, "").trim() : ""; + vod.type_name = type_name || vod.type_name + } + if (p.desc) { + try { + let p1 = p.desc.split(";"); + vod.vod_remarks = _pdfh(html, p1[0]).replace(/\n|\t/g, "").trim(); + vod.vod_year = p1.length > 1 ? _pdfh(html, p1[1]).replace(/\n|\t/g, "").trim() : ""; + vod.vod_area = p1.length > 2 ? _pdfh(html, p1[2]).replace(/\n|\t/g, "").trim() : ""; + vod.vod_actor = p1.length > 3 ? _pdfh(html, p1[3]).replace(/\n|\t/g, "").trim() : ""; + vod.vod_director = p1.length > 4 ? _pdfh(html, p1[4]).replace(/\n|\t/g, "").trim() : "" + } catch (e) {} + } + if (p.content) { + try { + let p1 = p.content.split(";"); + vod.vod_content = _pdfh(html, p1[0]).replace(/\n|\t/g, "").trim() + } catch (e) {} + } + if (p.img) { + try { + let p1 = p.img.split(";"); + vod.vod_pic = _pd(html, p1[0], MY_URL) + } catch (e) {} + } + let vod_play_from = "$$$"; + let playFrom = []; + if (p.重定向 && p.重定向.startsWith("js:")) { + print("开始执行重定向代码:" + p.重定向); + html = eval(p.重定向.replace("js:", "")) + } + if (p.tabs) { + if (p.tabs.startsWith("js:")) { + print("开始执行tabs代码:" + p.tabs); + var input = MY_URL; + eval(p.tabs.replace("js:", "")); + playFrom = TABS + } else { + let p_tab = p.tabs.split(";")[0]; + let vHeader = _pdfa(html, p_tab); + console.log(vHeader.length); + let tab_text = p.tab_text || "body&&Text"; + let new_map = {}; + for (let v of vHeader) { + let v_title = _pdfh(v, tab_text).trim(); + if (!v_title) { + v_title = "线路空" + } + console.log(v_title); + if (tab_exclude && new RegExp(tab_exclude).test(v_title)) { + continue + } + if (!new_map.hasOwnProperty(v_title)) { + new_map[v_title] = 1 + } else { + new_map[v_title] += 1 + } + if (new_map[v_title] > 1) { + v_title += Number(new_map[v_title] - 1) + } + playFrom.push(v_title) + } + } + console.log(JSON.stringify(playFrom)) + } else { + playFrom = ["在线播放"] + } + vod.vod_play_from = playFrom.join(vod_play_from); + let vod_play_url = "$$$"; + let vod_tab_list = []; + if (p.lists) { + if (p.lists.startsWith("js:")) { + print("开始执行lists代码:" + p.lists); + try { + var input = MY_URL; + var play_url = ""; + eval(p.lists.replace("js:", "")); + for (let i in LISTS) { + if (LISTS.hasOwnProperty(i)) { + try { + LISTS[i] = LISTS[i].map(it => it.split("$").slice(0, 2).join("$")) + } catch (e) { + print(`格式化LISTS发生错误:${e.message}`) + } + } + } + vod_play_url = LISTS.map(it => it.join("#")).join(vod_play_url) + } catch (e) { + print(`js执行lists: 发生错误:${e.message}`) + } + } else { + let list_text = p.list_text || "body&&Text"; + let list_url = p.list_url || "a&&href"; + let list_url_prefix = p.list_url_prefix || ""; + let is_tab_js = p.tabs.trim().startsWith("js:"); + for (let i = 0; i < playFrom.length; i++) { + let tab_name = playFrom[i]; + let tab_ext = p.tabs.split(";").length > 1 && !is_tab_js ? p.tabs.split(";")[1] : ""; + let p1 = p.lists.replaceAll("#idv", tab_name).replaceAll("#id", i); + tab_ext = tab_ext.replaceAll("#idv", tab_name).replaceAll("#id", i); + let tabName = tab_ext ? _pdfh(html, tab_ext) : tab_name; + console.log(tabName); + let new_vod_list = []; + let tt1 = (new Date).getTime(); + if (typeof pdfl === "function") { + new_vod_list = pdfl(html, p1, list_text, list_url, MY_URL); + if (list_url_prefix) { + new_vod_list = new_vod_list.map(it => it.split("$")[0] + "$" + list_url_prefix + it.split("$").slice(1).join("$")) + } + } else { + let vodList = []; + try { + vodList = _pdfa(html, p1); + console.log("len(vodList):" + vodList.length) + } catch (e) {} + for (let i = 0; i < vodList.length; i++) { + let it = vodList[i]; + new_vod_list.push(_pdfh(it, list_text).trim() + "$" + list_url_prefix + _pd(it, list_url, MY_URL)) + } + } + if (new_vod_list.length > 0) { + new_vod_list = forceOrder(new_vod_list, "", x => x.split("$")[0]); + console.log(`drpy影响性能代码共计列表数循环次数:${new_vod_list.length},耗时:${(new Date).getTime()-tt1}毫秒`) + } + let vlist = new_vod_list.join("#"); + vod_tab_list.push(vlist) + } + vod_play_url = vod_tab_list.join(vod_play_url) + } + } + vod.vod_play_url = vod_play_url + } + if (rule.图片替换 && rule.图片替换.includes("=>")) { + let replace_from = rule.图片替换.split("=>")[0]; + let replace_to = rule.图片替换.split("=>")[1]; + vod.vod_pic = vod.vod_pic.replace(replace_from, replace_to) + } + if (rule.图片来源 && vod.vod_pic && vod.vod_pic.startsWith("http")) { + vod.vod_pic = vod.vod_pic + rule.图片来源 + } + if (!vod.vod_id || vod_id.includes("$") && vod.vod_id !== vod_id) { + vod.vod_id = vod_id + } + let t2 = (new Date).getTime(); + console.log(`加载二级界面${MY_URL}耗时:${t2-t1}毫秒`); + try { + vod = vodDeal(vod) + } catch (e) { + console.log(`vodDeal发生错误:${e.message}`) + } + return JSON.stringify({ + list: [vod] + }) +} + +function get_tab_index(vod) { + let obj = {}; + vod.vod_play_from.split("$$$").forEach((it, index) => { + obj[it] = index + }); + return obj +} + +function vodDeal(vod) { + let vod_play_from = vod.vod_play_from.split("$$$"); + let vod_play_url = vod.vod_play_url.split("$$$"); + let tab_removed_list = vod_play_from; + let tab_ordered_list = vod_play_from; + let tab_renamed_list = vod_play_from; + let tab_list = vod_play_from; + let play_ordered_list = vod_play_url; + if (rule.tab_remove && rule.tab_remove.length > 0 || rule.tab_order && rule.tab_order.length > 0) { + let tab_index_dict = get_tab_index(vod); + if (rule.tab_remove && rule.tab_remove.length > 0) { + tab_removed_list = vod_play_from.filter(it => !rule.tab_remove.includes(it)); + tab_list = tab_removed_list + } + if (rule.tab_order && rule.tab_order.length > 0) { + let tab_order = rule.tab_order; + tab_ordered_list = tab_removed_list.sort((a, b) => { + const getOrderIndex = (tabName, orderRules) => { + for (let i = 0; i < orderRules.length; i++) { + if (tabName.includes(orderRules[i])) { + return i + } + } + return 9999 + }; + const indexA = getOrderIndex(a, tab_order); + const indexB = getOrderIndex(b, tab_order); + return indexA - indexB + }); + tab_list = tab_ordered_list + } + play_ordered_list = tab_list.map(it => vod_play_url[tab_index_dict[it]]) + } + if (rule.tab_rename && typeof rule.tab_rename === "object" & Object.keys(rule.tab_rename).length > 0) { + tab_renamed_list = tab_list.map(it => rule.tab_rename[it] || it); + tab_list = tab_renamed_list + } + vod.vod_play_from = tab_list.join("$$$"); + vod.vod_play_url = play_ordered_list.join("$$$"); + return vod +} + +function tellIsJx(url) { + try { + let is_vip = !/\.(m3u8|mp4|m4a)$/.test(url.split("?")[0]) && 是否正版(url); + return is_vip ? 1 : 0 + } catch (e) { + return 1 + } +} + +function playParse(playObj) { + fetch_params = JSON.parse(JSON.stringify(rule_fetch_params)); + MY_URL = playObj.url; + var MY_FLAG = playObj.flag; + if (!/http/.test(MY_URL)) { + try { + MY_URL = base64Decode(MY_URL) + } catch (e) {} + } + MY_URL = decodeURIComponent(MY_URL); + var input = MY_URL; + var flag = MY_FLAG; + let common_play = { + parse: SPECIAL_URL.test(input) || /^(push:)/.test(input) ? 0 : 1, + url: input, + flag: flag, + jx: tellIsJx(input) + }; + let lazy_play; + if (!rule.play_parse || !rule.lazy) { + lazy_play = common_play + } else if (rule.play_parse && rule.lazy && typeof rule.lazy === "string") { + try { + let lazy_code = rule.lazy.trim(); + if (lazy_code.startsWith("js:")) { + lazy_code = lazy_code.replace("js:", "").trim() + } + print("开始执行js免嗅=>" + lazy_code); + eval(lazy_code); + lazy_play = typeof input === "object" ? input : { + parse: SPECIAL_URL.test(input) || /^(push:)/.test(input) ? 0 : 1, + jx: tellIsJx(input), + url: input + } + } catch (e) { + print(`js免嗅错误:${e.message}`); + lazy_play = common_play + } + } else { + lazy_play = common_play + } + if (Array.isArray(rule.play_json) && rule.play_json.length > 0) { + let web_url = lazy_play.url; + for (let pjson of rule.play_json) { + if (pjson.re && (pjson.re === "*" || web_url.match(new RegExp(pjson.re)))) { + if (pjson.json && typeof pjson.json === "object") { + let base_json = pjson.json; + lazy_play = Object.assign(lazy_play, base_json); + break + } + } + } + } else if (rule.play_json && !Array.isArray(rule.play_json)) { + let base_json = { + jx: 1, + parse: 1 + }; + lazy_play = Object.assign(lazy_play, base_json) + } else if (!rule.play_json) { + let base_json = { + jx: 0, + parse: 1 + }; + lazy_play = Object.assign(lazy_play, base_json) + } + console.log(JSON.stringify(lazy_play)); + return JSON.stringify(lazy_play) +} + +function proxyParse(proxyObj) { + var input = proxyObj.params; + if (proxyObj.proxy_rule) { + log("准备执行本地代理规则:\n" + proxyObj.proxy_rule); + try { + eval(proxyObj.proxy_rule); + if (input && input !== proxyObj.params && Array.isArray(input) && input.length >= 3) { + return input + } else { + return [404, "text/plain", "Not Found"] + } + } catch (e) { + return [500, "text/plain", "代理规则错误:" + e.message] + } + } else { + return [404, "text/plain", "Not Found"] + } +} + +function isVideoParse(isVideoObj) { + var input = isVideoObj.url; + if (!isVideoObj.t) { + let re_matcher = new RegExp(isVideoObj.isVideo, "i"); + return re_matcher.test(input) + } else { + try { + eval(isVideoObj.isVideo); + if (typeof input === "boolean") { + return input + } else { + return false + } + } catch (e) { + log(`执行嗅探规则发生错误:${e.message}`); + return false + } + } +} + +function removeHeader(content, options = {}) { + const { + mode = "header-only", fileType + } = options; + const COMMENT_CONFIG = { + ".js": { + start: "/*", + end: "*/", + regex: /^\s*\/\*([\s\S]*?)\*\/\s*/, + headerRegex: /@header\(([\s\S]*?)\)/, + topCommentsRegex: /^(\s*(\/\/[^\n]*\n|\/\*[\s\S]*?\*\/)\s*)+/ + }, + ".py": { + start: '"""', + end: '"""', + regex: /^\s*"""([\s\S]*?)"""\s*/, + headerRegex: /@header\(([\s\S]*?)\)/, + topCommentsRegex: /^(\s*(#[^\n]*\n|'''[\s\S]*?'''|"""[\s\S]*?""")\s*)+/ + } + }; + if (!fileType) throw new Error("fileType option is required"); + const ext = fileType.startsWith(".") ? fileType : `.${fileType}`; + const config = COMMENT_CONFIG[ext]; + if (!config) throw new Error(`Unsupported file type: ${ext}`); + if (mode === "top-comments") { + const match = content.match(config.topCommentsRegex); + if (match) { + return content.substring(match[0].length).trim() + } + return content.trim() + } + const match = content.match(config.regex); + if (!match) return content.trim(); + let [fullComment, innerContent] = match; + if (config.headerRegex.test(innerContent)) { + innerContent = innerContent.replace(config.headerRegex, ""); + const cleanedInner = innerContent.split("\n").filter(line => line.trim().length > 0).join("\n"); + if (!cleanedInner.trim()) { + return content.replace(fullComment, "").trim() + } else { + const newComment = `${config.start}${cleanedInner}${config.end}`; + return content.replace(fullComment, newComment).trim() + } + } + return content.trim() +} + +function getOriginalJs(js_code) { + let current_match = /var rule|function|let |var |const|class Rule|async|this\./; + if (current_match.test(js_code)) { + return js_code + } + js_code = removeHeader(js_code, { + mode: "top-comments", + fileType: ".js" + }); + let rsa_private_key = "MIIEvQIBADANBgkqhkiG9w0BAQEFAASCBKcwggSjAgEAAoIBAQCqin/jUpqM6+fgYP/oMqj9zcdHMM0mEZXLeTyixIJWP53lzJV2N2E3OP6BBpUmq2O1a9aLnTIbADBaTulTNiOnVGoNG58umBnupnbmmF8iARbDp2mTzdMMeEgLdrfXS6Y3VvazKYALP8EhEQykQVarexR78vRq7ltY3quXx7cgI0ROfZz5Sw3UOLQJ+VoWmwIxu9AMEZLVzFDQN93hzuzs3tNyHK6xspBGB7zGbwCg+TKi0JeqPDrXxYUpAz1cQ/MO+Da0WgvkXnvrry8NQROHejdLVOAslgr6vYthH9bKbsGyNY3H+P12kcxo9RAcVveONnZbcMyxjtF5dWblaernAgMBAAECggEAGdEHlSEPFmAr5PKqKrtoi6tYDHXdyHKHC5tZy4YV+Pp+a6gxxAiUJejx1hRqBcWSPYeKne35BM9dgn5JofgjI5SKzVsuGL6bxl3ayAOu+xXRHWM9f0t8NHoM5fdd0zC3g88dX3fb01geY2QSVtcxSJpEOpNH3twgZe6naT2pgiq1S4okpkpldJPo5GYWGKMCHSLnKGyhwS76gF8bTPLoay9Jxk70uv6BDUMlA4ICENjmsYtd3oirWwLwYMEJbSFMlyJvB7hjOjR/4RpT4FPnlSsIpuRtkCYXD4jdhxGlvpXREw97UF2wwnEUnfgiZJ2FT/MWmvGGoaV/CfboLsLZuQKBgQDTNZdJrs8dbijynHZuuRwvXvwC03GDpEJO6c1tbZ1s9wjRyOZjBbQFRjDgFeWs9/T1aNBLUrgsQL9c9nzgUziXjr1Nmu52I0Mwxi13Km/q3mT+aQfdgNdu6ojsI5apQQHnN/9yMhF6sNHg63YOpH+b+1bGRCtr1XubuLlumKKscwKBgQDOtQ2lQjMtwsqJmyiyRLiUOChtvQ5XI7B2mhKCGi8kZ+WEAbNQcmThPesVzW+puER6D4Ar4hgsh9gCeuTaOzbRfZ+RLn3Aksu2WJEzfs6UrGvm6DU1INn0z/tPYRAwPX7sxoZZGxqML/z+/yQdf2DREoPdClcDa2Lmf1KpHdB+vQKBgBXFCVHz7a8n4pqXG/HvrIMJdEpKRwH9lUQS/zSPPtGzaLpOzchZFyQQBwuh1imM6Te+VPHeldMh3VeUpGxux39/m+160adlnRBS7O7CdgSsZZZ/dusS06HAFNraFDZf1/VgJTk9BeYygX+AZYu+0tReBKSs9BjKSVJUqPBIVUQXAoGBAJcZ7J6oVMcXxHxwqoAeEhtvLcaCU9BJK36XQ/5M67ceJ72mjJC6/plUbNukMAMNyyi62gO6I9exearecRpB/OGIhjNXm99Ar59dAM9228X8gGfryLFMkWcO/fNZzb6lxXmJ6b2LPY3KqpMwqRLTAU/zy+ax30eFoWdDHYa4X6e1AoGAfa8asVGOJ8GL9dlWufEeFkDEDKO9ww5GdnpN+wqLwePWqeJhWCHad7bge6SnlylJp5aZXl1+YaBTtOskC4Whq9TP2J+dNIgxsaF5EFZQJr8Xv+lY9lu0CruYOh9nTNF9x3nubxJgaSid/7yRPfAGnsJRiknB5bsrCvgsFQFjJVs="; + let decode_content = ""; + + function aes_decrypt(data) { + let key = CryptoJS.enc.Hex.parse("686A64686E780A0A0A0A0A0A0A0A0A0A"); + let iv = CryptoJS.enc.Hex.parse("647A797964730A0A0A0A0A0A0A0A0A0A"); + let encrypted = CryptoJS.AES.decrypt({ + ciphertext: CryptoJS.enc.Base64.parse(data) + }, key, { + iv: iv, + mode: CryptoJS.mode.CBC, + padding: CryptoJS.pad.Pkcs7 + }).toString(CryptoJS.enc.Utf8); + return encrypted + } + let error_log = false; + + function logger(text) { + if (error_log) { + log(text) + } + } + let decode_funcs = [text => { + try { + return ungzip(text) + } catch (e) { + logger("非gzip加密"); + return "" + } + }, text => { + try { + return base64Decode(text) + } catch (e) { + logger("非b64加密"); + return "" + } + }, text => { + try { + return aes_decrypt(text) + } catch (e) { + logger("非aes加密"); + return "" + } + }, text => { + try { + return RSA.decode(text, rsa_private_key, null) + } catch (e) { + logger("非rsa加密"); + return "" + } + }]; + let func_index = 0; + while (!current_match.test(decode_content)) { + decode_content = decode_funcs[func_index](js_code); + func_index++; + if (func_index >= decode_funcs.length) { + break + } + } + return decode_content +} + +function runMain(main_func_code, arg) { + let mainFunc = function() { + return "" + }; + try { + eval(main_func_code + "\nmainFunc=main;"); + return mainFunc(arg) + } catch (e) { + log(`执行main_funct发生了错误:${e.message}`); + return "" + } +} + +function init(ext) { + console.log("init"); + rule = {}; + rule_fetch_params = {}; + fetch_params = null; + try { + let muban = 模板.getMubans(); + if (typeof ext == "object") { + rule = ext + } else if (typeof ext == "string") { + let is_file = ext.startsWith("file://"); + if (ext.startsWith("http") || is_file) { + let query = getQuery(ext); + if (is_file) { + ext = ext.split("?")[0] + } + let js = request(ext, { + method: "GET" + }); + if (js) { + js = getOriginalJs(js); + eval("(function(){" + js.replace("var rule", "rule") + "})()") + } + if (query.type === "url" && query.params) { + if (is_file && /^http/.test(query.params)) { + rule.params = query.params + } else { + rule.params = urljoin(ext, query.params) + } + } else if (query.params) { + rule.params = query.params + } + } else { + ext = getOriginalJs(ext); + eval("(function(){" + ext.replace("var rule", "rule") + "})()") + } + } else { + console.log(`规则加载失败,不支持的规则类型:${typeof ext}`); + return + } + rule.host = (rule.host || "").rstrip("/"); + HOST = rule.host; + if (rule.hostJs) { + console.log(`检测到hostJs,准备执行...`); + try { + eval(rule.hostJs); + rule.host = HOST.rstrip("/") + } catch (e) { + console.log(`执行${rule.hostJs}获取host发生错误:${e.message}`) + } + } + if (rule["模板"] === "自动") { + try { + let host_headers = rule["headers"] || {}; + let host_html = getCode(HOST, { + headers: host_headers + }); + let match_muban = ""; + let muban_keys = Object.keys(muban).filter(it => !/默认|短视2|采集1/.test(it)); + for (let muban_key of muban_keys) { + try { + let host_data = JSON.parse(home({}, host_html, muban[muban_key].class_parse)); + if (host_data.class && host_data.class.length > 0) { + match_muban = muban_key; + console.log(`自动匹配模板:【${muban_key}】`); + break + } + } catch (e) { + console.log(`自动匹配模板:【${muban_key}】错误:${e.message}`) + } + } + if (match_muban) { + muban["自动"] = muban[match_muban]; + if (rule["模板修改"] && rule["模板修改"].startsWith("js:")) { + eval(rule["模板修改"].replace("js:", "").trim()) + } + } else { + delete rule["模板"] + } + } catch (e) { + delete rule["模板"] + } + } + if (rule.模板 && muban.hasOwnProperty(rule.模板)) { + print("继承模板:" + rule.模板); + rule = Object.assign(muban[rule.模板], rule) + } + let rule_cate_excludes = (rule.cate_exclude || "").split("|").filter(it => it.trim()); + let rule_tab_excludes = (rule.tab_exclude || "").split("|").filter(it => it.trim()); + rule_cate_excludes = rule_cate_excludes.concat(CATE_EXCLUDE.split("|").filter(it => it.trim())); + rule_tab_excludes = rule_tab_excludes.concat(TAB_EXCLUDE.split("|").filter(it => it.trim())); + rule.cate_exclude = rule_cate_excludes.join("|"); + rule.tab_exclude = rule_tab_excludes.join("|"); + rule.类型 = rule.类型 || "影视"; + rule.url = rule.url || ""; + rule.double = rule.double || false; + rule.homeUrl = rule.homeUrl || ""; + rule.detailUrl = rule.detailUrl || ""; + rule.searchUrl = rule.searchUrl || ""; + rule.homeUrl = rule.host && rule.homeUrl ? urljoin(rule.host, rule.homeUrl) : rule.homeUrl || rule.host; + rule.homeUrl = cheerio.jinja2(rule.homeUrl, { + rule: rule + }); + rule.detailUrl = rule.host && rule.detailUrl ? urljoin(rule.host, rule.detailUrl) : rule.detailUrl; + rule.二级访问前 = rule.二级访问前 || ""; + if (rule.url.includes("[") && rule.url.includes("]")) { + let u1 = rule.url.split("[")[0]; + let u2 = rule.url.split("[")[1].split("]")[0]; + rule.url = rule.host && rule.url ? urljoin(rule.host, u1) + "[" + urljoin(rule.host, u2) + "]" : rule.url + } else { + rule.url = rule.host && rule.url ? urljoin(rule.host, rule.url) : rule.url + } + if (rule.searchUrl.includes("[") && rule.searchUrl.includes("]") && !rule.searchUrl.includes("#")) { + let u1 = rule.searchUrl.split("[")[0]; + let u2 = rule.searchUrl.split("[")[1].split("]")[0]; + rule.searchUrl = rule.host && rule.searchUrl ? urljoin(rule.host, u1) + "[" + urljoin(rule.host, u2) + "]" : rule.searchUrl + } else { + rule.searchUrl = rule.host && rule.searchUrl ? urljoin(rule.host, rule.searchUrl) : rule.searchUrl + } + rule.timeout = rule.timeout || 5e3; + rule.encoding = rule.编码 || rule.encoding || "utf-8"; + rule.search_encoding = rule.搜索编码 || rule.search_encoding || ""; + rule.图片来源 = rule.图片来源 || ""; + rule.图片替换 = rule.图片替换 || ""; + rule.play_json = rule.hasOwnProperty("play_json") ? rule.play_json : []; + rule.pagecount = rule.hasOwnProperty("pagecount") ? rule.pagecount : {}; + rule.proxy_rule = rule.hasOwnProperty("proxy_rule") ? rule.proxy_rule : ""; + if (!rule.hasOwnProperty("sniffer")) { + rule.sniffer = false + } + rule.sniffer = rule.hasOwnProperty("sniffer") ? rule.sniffer : ""; + rule.sniffer = !!(rule.sniffer && rule.sniffer !== "0" && rule.sniffer !== "false"); + rule.isVideo = rule.hasOwnProperty("isVideo") ? rule.isVideo : ""; + if (rule.sniffer && !rule.isVideo) { + rule.isVideo = "http((?!http).){12,}?\\.(m3u8|mp4|flv|avi|mkv|rm|wmv|mpg|m4a|mp3)\\?.*|http((?!http).){12,}\\.(m3u8|mp4|flv|avi|mkv|rm|wmv|mpg|m4a|mp3)|http((?!http).)*?video/tos*|http((?!http).)*?obj/tos*" + } + rule.tab_remove = rule.hasOwnProperty("tab_remove") ? rule.tab_remove : []; + rule.tab_order = rule.hasOwnProperty("tab_order") ? rule.tab_order : []; + rule.tab_rename = rule.hasOwnProperty("tab_rename") ? rule.tab_rename : {}; + if (rule.headers && typeof rule.headers === "object") { + try { + let header_keys = Object.keys(rule.headers); + for (let k of header_keys) { + if (k.toLowerCase() === "user-agent") { + let v = rule.headers[k]; + console.log(v); + if (["MOBILE_UA", "PC_UA", "UC_UA", "IOS_UA", "UA"].includes(v)) { + rule.headers[k] = eval(v) + } + } else if (k.toLowerCase() === "cookie") { + let v = rule.headers[k]; + if (v && v.startsWith("http")) { + console.log(v); + try { + v = fetch(v); + console.log(v); + rule.headers[k] = v + } catch (e) { + console.log(`从${v}获取cookie发生错误:${e.message}`) + } + } + } + } + } catch (e) { + console.log(`处理headers发生错误:${e.message}`) + } + } else { + rule.headers = {} + } + oheaders = deepCopy(rule.headers); + rule_fetch_params = { + headers: rule.headers, + timeout: rule.timeout, + encoding: rule.encoding + }; + RKEY = typeof key !== "undefined" && key ? key : "drpy_" + (rule.title || rule.host); + pre(); + init_test() + } catch (e) { + console.log(`init_test发生错误:${e.message}`) + } +} +let homeHtmlCache = undefined; + +function home(filter, home_html, class_parse) { + console.log("home"); + home_html = home_html || ""; + class_parse = class_parse || ""; + if (typeof rule.filter === "string" && rule.filter.trim().length > 0) { + try { + let filter_json = ungzip(rule.filter.trim()); + rule.filter = JSON.parse(filter_json) + } catch (e) { + rule.filter = {} + } + } + let homeObj = { + filter: rule.filter || false, + MY_URL: rule.homeUrl, + class_name: rule.class_name || "", + class_url: rule.class_url || "", + class_parse: class_parse || rule.class_parse || "", + cate_exclude: rule.cate_exclude, + home_html: home_html + }; + return homeParse(homeObj) +} + +function homeVod(params) { + console.log("homeVod"); + let homeVodObj = { + "推荐": rule.推荐, + double: rule.double, + homeUrl: rule.homeUrl, + detailUrl: rule.detailUrl + }; + return homeVodParse(homeVodObj) +} + +function category(tid, pg, filter, extend) { + let cateObj = { + url: rule.url, + "一级": rule.一级, + tid: tid, + pg: parseInt(pg), + filter: filter, + extend: extend + }; + return categoryParse(cateObj) +} + +function detail(vod_url) { + let orId = vod_url; + let fyclass = ""; + log("orId:" + orId); + if (vod_url.indexOf("$") > -1) { + let tmp = vod_url.split("$"); + fyclass = tmp[0]; + vod_url = tmp[1] + } + let detailUrl = vod_url.split("@@")[0]; + let url; + if (!detailUrl.startsWith("http") && !detailUrl.includes("/")) { + url = rule.detailUrl.replaceAll("fyid", detailUrl).replaceAll("fyclass", fyclass) + } else if (detailUrl.includes("/")) { + url = urljoin(rule.homeUrl, detailUrl) + } else { + url = detailUrl + } + let detailObj = { + orId: orId, + url: url, + "二级": rule.二级, + "二级访问前": rule.二级访问前, + detailUrl: detailUrl, + fyclass: fyclass, + tab_exclude: rule.tab_exclude + }; + return detailParse(detailObj) +} + +function play(flag, id, flags) { + let playObj = { + url: id, + flag: flag, + flags: flags + }; + return playParse(playObj) +} + +function search(wd, quick, pg) { + if (rule.search_encoding) { + if (rule.search_encoding.toLowerCase() !== "utf-8") { + wd = encodeStr(wd, rule.search_encoding) + } + } else if (rule.encoding && rule.encoding.toLowerCase() !== "utf-8") { + wd = encodeStr(wd, rule.encoding) + } + let searchObj = { + searchUrl: rule.searchUrl, + "搜索": rule.搜索, + wd: wd, + pg: pg || 1, + quick: quick + }; + return searchParse(searchObj) +} + +function proxy(params) { + if (rule.proxy_rule && rule.proxy_rule.trim()) { + rule.proxy_rule = rule.proxy_rule.trim() + } + if (rule.proxy_rule.startsWith("js:")) { + rule.proxy_rule = rule.proxy_rule.replace("js:", "") + } + let proxyObj = { + params: params, + proxy_rule: rule.proxy_rule + }; + return proxyParse(proxyObj) +} + +function sniffer() { + let enable_sniffer = rule.sniffer || false; + if (enable_sniffer) { + log("开始执行辅助嗅探代理规则...") + } + return enable_sniffer +} + +function isVideo(url) { + let t = 0; + let is_video; + if (rule.isVideo && rule.isVideo.trim()) { + is_video = rule.isVideo.trim() + } + if (is_video.startsWith("js:")) { + is_video = is_video.replace("js:", ""); + t = 1 + } + let isVideoObj = { + url: url, + isVideo: is_video, + t: t + }; + let result = isVideoParse(isVideoObj); + if (result) { + log("成功执行辅助嗅探规则并检测到视频地址:\n" + rule.isVideo) + } + return result +} + +function getRule(key) { + return key ? rule[key] || "" : rule +} + +function deepCopy(_obj) { + return JSON.parse(JSON.stringify(_obj)) +} + +function matchesAll(str, pattern, flatten) { + if (!pattern.global) { + pattern = new RegExp(pattern.source, "g" + (pattern.ignoreCase ? "i" : "") + (pattern.multiline ? "m" : "")) + } + var matches = []; + var match; + while ((match = pattern.exec(str)) !== null) { + matches.push(match) + } + return flatten ? matches.flat() : matches +} + +function stringUtils() { + Object.defineProperties(String.prototype, { + replaceX: { + value: function(regex, replacement) { + let matches = matchesAll(this, regex, true); + if (matches && matches.length > 1) { + const hasCaptureGroup = /\$\d/.test(replacement); + if (hasCaptureGroup) { + return this.replace(regex, m => m.replace(regex, replacement)) + } else { + return this.replace(regex, (m, p1) => m.replace(p1, replacement)) + } + } + return this.replace(regex, replacement) + }, + configurable: true, + enumerable: false, + writable: true + }, + parseX: { + get: function() { + try { + return JSON.parse(this) + } catch (e) { + console.log(e.message); + return this.startsWith("[") ? [] : {} + } + }, + configurable: true, + enumerable: false + } + }) +} + +function cut(text, start, end, method, All) { + let result = ""; + let c = (t, s, e) => { + let result = ""; + let rs = []; + let results = []; + try { + let lr = new RegExp(String.raw`${s}`.toString()); + let rr = new RegExp(String.raw`${e}`.toString()); + const segments = t.split(lr); + if (segments.length < 2) return ""; + let cutSegments = segments.slice(1).map(segment => { + let splitSegment = segment.split(rr); + return splitSegment.length < 2 ? undefined : splitSegment[0] + e + }).filter(f => f); + if (All) { + return `[${cutSegments.join(",")}]` + } else { + return cutSegments[0] + } + } catch (e) { + console.log(`Error cutting text:${e.message}`) + } + return result + }; + result = c(text, start, end); + stringUtils(); + if (method && typeof method === "function") { + result = method(result) + } + return result +} + +function DRPY() { + return { + runMain: runMain, + getRule: getRule, + init: init, + home: home, + homeVod: homeVod, + category: category, + detail: detail, + play: play, + search: search, + proxy: proxy, + sniffer: sniffer, + isVideo: isVideo, + fixAdM3u8Ai: fixAdM3u8Ai + } +} +export default { + runMain: runMain, + getRule: getRule, + init: init, + home: home, + homeVod: homeVod, + category: category, + detail: detail, + play: play, + search: search, + proxy: proxy, + sniffer: sniffer, + isVideo: isVideo, + fixAdM3u8Ai: fixAdM3u8Ai, + DRPY: DRPY +}; \ No newline at end of file diff --git a/潇洒/magnet/js/CLX.js b/潇洒/magnet/js/CLX.js new file mode 100644 index 00000000..25d0af25 --- /dev/null +++ b/潇洒/magnet/js/CLX.js @@ -0,0 +1 @@ +dmFyIHJ1bGUgPSB7Cgl0aXRsZTon56OB5Yqb54aKW+ejgV0nLAoJaG9zdDonaHR0cHM6Ly93d3cuY2lsaXhpb25nLmNvbScsCglob21lVXJsOicvdG9wMjUwL2luZGV4Lmh0bWwnLAoJLy8gdXJsOiAnL2Z5Y2xhc3MvaW5kZXhfKGZ5cGFnZS0xKS5odG1sJywKCXVybDogJy9meWNsYXNzZnlmaWx0ZXItKGZ5cGFnZS0xKS5odG1sJywKCWZpbHRlcl91cmw6Jy17e2ZsLmNsYXNzIG9yICIwIn19LXt7ZmwuYXJlYSBvciAiMCJ9fScsCglmaWx0ZXI6ewoJCSIxIjpbeyJrZXkiOiJjbGFzcyIsIm5hbWUiOiLnsbvlnosiLCJ2YWx1ZSI6W3sibiI6IuWFqOmDqCIsInYiOiIwIn0seyJuIjoi5Ymn5oOFIiwidiI6IjEifSx7Im4iOiLllpzliaciLCJ2IjoiMiJ9LHsibiI6IuaDiuaCmiIsInYiOiIzIn0seyJuIjoi5Yqo5L2cIiwidiI6IjQifSx7Im4iOiLniLHmg4UiLCJ2IjoiNSJ9LHsibiI6IueKr+e9qiIsInYiOiI2In0seyJuIjoi5oGQ5oCWIiwidiI6IjcifSx7Im4iOiLlhpLpmakiLCJ2IjoiOCJ9LHsibiI6IuaCrOeWkSIsInYiOiI5In0seyJuIjoi56eR5bm7IiwidiI6IjEwIn0seyJuIjoi5a625bqtIiwidiI6IjExIn0seyJuIjoi5aWH5bm7IiwidiI6IjEyIn0seyJuIjoi5Yqo55S7IiwidiI6IjEzIn0seyJuIjoi5oiY5LqJIiwidiI6IjE0In0seyJuIjoi5Y6G5Y+yIiwidiI6IjE1In0seyJuIjoi5Lyg6K6wIiwidiI6IjE2In0seyJuIjoi6Z+z5LmQIiwidiI6IjE3In0seyJuIjoi5q2M6IieIiwidiI6IjE4In0seyJuIjoi6L+Q5YqoIiwidiI6IjE5In0seyJuIjoi6KW/6YOoIiwidiI6IjIwIn0seyJuIjoi54G+6Zq+IiwidiI6IjIxIn0seyJuIjoi5Y+k6KOFIiwidiI6IjIyIn0seyJuIjoi5oOF6ImyIiwidiI6IjIzIn0seyJuIjoi5ZCM5oCnIiwidiI6IjI0In0seyJuIjoi5YS/56ulIiwidiI6IjI1In0seyJuIjoi57qq5b2V54mHIiwidiI6IjI2In1dfSx7ImtleSI6ImFyZWEiLCJuYW1lIjoi5Zyw5Yy6IiwidmFsdWUiOlt7Im4iOiLlhajpg6giLCJ2IjoiMCJ9LHsibiI6IuWkp+mZhiIsInYiOiIxIn0seyJuIjoi6aaZ5rivIiwidiI6IjIifSx7Im4iOiLlj7Dmub4iLCJ2IjoiMyJ9LHsibiI6Iue+juWbvSIsInYiOiI0In0seyJuIjoi5pel5pysIiwidiI6IjUifSx7Im4iOiLpn6nlm70iLCJ2IjoiNiJ9LHsibiI6IuiLseWbvSIsInYiOiI3In0seyJuIjoi5rOV5Zu9IiwidiI6IjgifSx7Im4iOiLlvrflm70iLCJ2IjoiOSJ9LHsibiI6IuWNsOW6piIsInYiOiIxMCJ9LHsibiI6IuazsOWbvSIsInYiOiIxMSJ9LHsibiI6IuS4uem6piIsInYiOiIxMiJ9LHsibiI6IueRnuWFuCIsInYiOiIxMyJ9LHsibiI6IuW3tOilvyIsInYiOiIxNCJ9LHsibiI6IuWKoOaLv+WkpyIsInYiOiIxNSJ9LHsibiI6IuS/hOe9l+aWryIsInYiOiIxNiJ9LHsibiI6IuaEj+Wkp+WIqSIsInYiOiIxNyJ9LHsibiI6IuavlOWIqeaXtiIsInYiOiIxOCJ9LHsibiI6IueIseWwlOWFsCIsInYiOiIxOSJ9LHsibiI6Iuilv+ePreeJmSIsInYiOiIyMCJ9LHsibiI6Iua+s+Wkp+WIqeS6miIsInYiOiIyMSJ9LHsibiI6IuazouWFsCIsInYiOiIyMiJ9LHsibiI6IuWcn+iAs+WFtiIsInYiOiIyMyJ9LHsibiI6Iui2iuWNlyIsInYiOiIyNCJ9XX1dLAoJCSIyIjpbeyJrZXkiOiJjbGFzcyIsIm5hbWUiOiLnsbvlnosiLCJ2YWx1ZSI6W3sibiI6IuWFqOmDqCIsInYiOiIwIn0seyJuIjoi5Ymn5oOFIiwidiI6IjEifSx7Im4iOiLllpzliaciLCJ2IjoiMiJ9LHsibiI6IuaDiuaCmiIsInYiOiIzIn0seyJuIjoi5Yqo5L2cIiwidiI6IjQifSx7Im4iOiLniLHmg4UiLCJ2IjoiNSJ9LHsibiI6IueKr+e9qiIsInYiOiI2In0seyJuIjoi5oGQ5oCWIiwidiI6IjcifSx7Im4iOiLlhpLpmakiLCJ2IjoiOCJ9LHsibiI6IuaCrOeWkSIsInYiOiI5In0seyJuIjoi56eR5bm7IiwidiI6IjEwIn0seyJuIjoi5a625bqtIiwidiI6IjExIn0seyJuIjoi5aWH5bm7IiwidiI6IjEyIn0seyJuIjoi5Yqo55S7IiwidiI6IjEzIn0seyJuIjoi5oiY5LqJIiwidiI6IjE0In0seyJuIjoi5Y6G5Y+yIiwidiI6IjE1In0seyJuIjoi5Lyg6K6wIiwidiI6IjE2In0seyJuIjoi6Z+z5LmQIiwidiI6IjE3In0seyJuIjoi5q2M6IieIiwidiI6IjE4In0seyJuIjoi6L+Q5YqoIiwidiI6IjE5In0seyJuIjoi6KW/6YOoIiwidiI6IjIwIn0seyJuIjoi54G+6Zq+IiwidiI6IjIxIn0seyJuIjoi5Y+k6KOFIiwidiI6IjIyIn0seyJuIjoi5oOF6ImyIiwidiI6IjIzIn0seyJuIjoi5ZCM5oCnIiwidiI6IjI0In0seyJuIjoi5YS/56ulIiwidiI6IjI1In0seyJuIjoi57qq5b2V54mHIiwidiI6IjI2In1dfSx7ImtleSI6ImFyZWEiLCJuYW1lIjoi5Zyw5Yy6IiwidmFsdWUiOlt7Im4iOiLlhajpg6giLCJ2IjoiMCJ9LHsibiI6IuWkp+mZhiIsInYiOiIxIn0seyJuIjoi6aaZ5rivIiwidiI6IjIifSx7Im4iOiLlj7Dmub4iLCJ2IjoiMyJ9LHsibiI6Iue+juWbvSIsInYiOiI0In0seyJuIjoi5pel5pysIiwidiI6IjUifSx7Im4iOiLpn6nlm70iLCJ2IjoiNiJ9LHsibiI6IuiLseWbvSIsInYiOiI3In0seyJuIjoi5rOV5Zu9IiwidiI6IjgifSx7Im4iOiLlvrflm70iLCJ2IjoiOSJ9LHsibiI6IuWNsOW6piIsInYiOiIxMCJ9LHsibiI6IuazsOWbvSIsInYiOiIxMSJ9LHsibiI6IuS4uem6piIsInYiOiIxMiJ9LHsibiI6IueRnuWFuCIsInYiOiIxMyJ9LHsibiI6IuW3tOilvyIsInYiOiIxNCJ9LHsibiI6IuWKoOaLv+WkpyIsInYiOiIxNSJ9LHsibiI6IuS/hOe9l+aWryIsInYiOiIxNiJ9LHsibiI6IuaEj+Wkp+WIqSIsInYiOiIxNyJ9LHsibiI6IuavlOWIqeaXtiIsInYiOiIxOCJ9LHsibiI6IueIseWwlOWFsCIsInYiOiIxOSJ9LHsibiI6Iuilv+ePreeJmSIsInYiOiIyMCJ9LHsibiI6Iua+s+Wkp+WIqeS6miIsInYiOiIyMSJ9LHsibiI6IuazouWFsCIsInYiOiIyMiJ9LHsibiI6IuWcn+iAs+WFtiIsInYiOiIyMyJ9LHsibiI6Iui2iuWNlyIsInYiOiIyNCJ9XX1dCgl9LAoJc2VhcmNoVXJsOiAnL2Uvc2VhcmNoL2luZGV4LnBocCNjbGFzc2lkPTEsMiZzaG93PXRpdGxlJnRlbXBpZD0xJmtleWJvYXJkPSoqO3Bvc3QnLAoJc2VhcmNoYWJsZToyLAoJcXVpY2tTZWFyY2g6MCwKCWZpbHRlcmFibGU6MSwKCWhlYWRlcnM6ewoJCSdVc2VyLUFnZW50JzogJ01PQklMRV9VQScKCX0sCgl0aW1lb3V0OjUwMDAsCgljbGFzc19uYW1lOifnlLXlvbEm5Ymn6ZuGJuixhueTo+eUteW9sVRvcDI1MCZJTURCIFRvcDI1MCbpq5jliIbmgqznlpHniYcm6auY5YiG5Zac5Ymn54mHJumrmOWIhuS8oOiusOeJhybpq5jliIbniLHmg4XniYcm6auY5YiG54qv572q54mHJumrmOWIhuaBkOaAlueJhybpq5jliIblhpLpmanniYcm6auY5YiG5q2m5L6g54mHJumrmOWIhuWlh+W5u+eJhybpq5jliIbljoblj7LniYcm6auY5YiG5oiY5LqJ54mHJumrmOWIhuatjOiInueJhybpq5jliIbngb7pmr7niYcm6auY5YiG5oOF6Imy54mHJumrmOWIhuilv+mDqOeJhybpq5jliIbpn7PkuZDniYcm6auY5YiG56eR5bm754mHJumrmOWIhuWKqOS9nOeJhybpq5jliIbliqjnlLvniYcm6auY5YiG57qq5b2V54mHJuWGt+mXqOS9s+eJhycsCgljbGFzc191cmw6JzEmMiYvdG9wMjUwLyYvcy9pbWRidG9wMjUwLyYvcy9zdXNwZW5zZS8mL3MvY29tZWR5LyYvcy9iaW9waWMvJi9zL3JvbWFuY2UvJi9zL2NyaW1lLyYvcy9ob3Jyb3IvJi9zL2FkdmVudHVyZS8mL3MvbWFydGlhbC8mL3MvZmFudGFzeS8mL3MvaGlzdG9yeS8mL3Mvd2FyLyYvcy9tdXNpY2FsLyYvcy9kaXNhc3Rlci8mL3MvZXJvdGljLyYvcy93ZXN0LyYvcy9tdXNpYy8mL3Mvc2NpLWZpLyZzL2FjdGlvbi8mL3MvYW5pbWF0aW9uLyYvcy9kb2N1bWVudGFyeS8mL3MvdW5wb3B1bGFyLycsCglwbGF5X3BhcnNlOnRydWUsCglsYXp5OicnLAoJbGltaXQ6NiwKCeaOqOiNkDogYGpzOgoJCXBkZmg9anNwLnBkZmg7cGRmYT1qc3AucGRmYTtwZD1qc3AucGQ7CgkJdmFyIGQgPSBbXTsKCQl2YXIgaHRtbCA9IHJlcXVlc3QoaW5wdXQpOwoJCXZhciBsaXN0ID0gcGRmYShodG1sLCAnYm9keSYmLmNvbCcpOwoJCWxpc3QuZm9yRWFjaChpdCA9PiB7CgkJCWQucHVzaCh7CgkJCQl0aXRsZTogcGRmaChpdCwgJ2gyJiZUZXh0JyksCgkJCQlkZXNjOiBwZGZoKGl0LCAnLm1lLWF1dG8mJlRleHQnKSArICfliIYgLyAnICsgcGRmaChpdCwgJy5zbWFsbCYmVGV4dCcpLAoJCQkJLy8gcGljX3VybDogcGQoaXQsICcuY2FyZC1pbWcmJnN0eWxlJyksIC8vIOWPquaciSDlvbHop4ZUVibniLHkvazniYgg5pyJ5Zu+54mHCgkJCQlwaWNfdXJsOiAvIScvLnRlc3QocGQoaXQsICcuY2FyZC1pbWcmJnN0eWxlJykpP3BkKGl0LCAnLmNhcmQtaW1nJiZzdHlsZScpOnBkKGl0LCAnLmNhcmQtaW1nJiZzdHlsZScpLnJlcGxhY2VBbGwoIiciLCIiKSwgLy8g5YW85a65IOW9seinhlRWJueIseS9rOeJiCDku6XlpJbnmoTlhbblroPlo7PlrZAKCQkJCXVybDogcGQoaXQsICdhJiZocmVmJykKCQkJfSk7CgkJfSkKCQlzZXRSZXN1bHQoZCk7CglgLAoJ5LiA57qnOiBganM6CgkJcGRmaD1qc3AucGRmaDtwZGZhPWpzcC5wZGZhO3BkPWpzcC5wZDsKCQl2YXIgZCA9IFtdOwoJCWlmIChNWV9DQVRFICE9PSAnMScgJiYgTVlfQ0FURSAhPT0gJzInKSB7CgkJCWxldCB0dXJsID0gKE1ZX1BBR0UgPT09IDEpPyAnaW5kZXgnIDogJ2luZGV4XycrIE1ZX1BBR0U7CgkJCWlucHV0ID0gSE9TVCArIE1ZX0NBVEUgKyB0dXJsICsgJy5odG1sJzsKCQl9CgkJdmFyIGh0bWwgPSByZXF1ZXN0KGlucHV0KTsKCQl2YXIgbGlzdCA9IHBkZmEoaHRtbCwgJ2JvZHkmJi5jb2wnKTsKCQlsaXN0LmZvckVhY2goaXQgPT4gewoJCQlkLnB1c2goewoJCQkJdGl0bGU6IHBkZmgoaXQsICdoMiYmVGV4dCcpLAoJCQkJZGVzYzogcGRmaChpdCwgJy5tZS1hdXRvJiZUZXh0JykgKyAn5YiGIC8gJyArIHBkZmgoaXQsICcuc21hbGwmJlRleHQnKSwKCQkJCS8vIHBpY191cmw6IHBkZmgoaXQsICcuY2FyZC1pbWcmJnN0eWxlJyksIC8vIOWPquaciSDlvbHop4ZUVibniLHkvazniYgg5pyJ5Zu+54mHCgkJCQlwaWNfdXJsOiAvIScvLnRlc3QocGQoaXQsICcuY2FyZC1pbWcmJnN0eWxlJykpP3BkKGl0LCAnLmNhcmQtaW1nJiZzdHlsZScpOnBkKGl0LCAnLmNhcmQtaW1nJiZzdHlsZScpLnJlcGxhY2VBbGwoIiciLCIiKSwgLy8g5YW85a65IOW9seinhlRWJueIseS9rOeJiCDku6XlpJbnmoTlhbblroPlo7PlrZAKCQkJCXVybDogcGQoaXQsICdhJiZocmVmJykKCQkJfSk7CgkJfSkKCQlzZXRSZXN1bHQoZCk7CglgLAoJ5LqM57qnOnsKCQl0aXRsZTonaDEmJlRleHQ7cC5tYi0yOmVxKDQpJiZUZXh0JywKCQlkZXNjOidwLm1iLTI6ZXEoMSkmJlRleHQ7OztwLm1iLTI6ZXEoNykmJlRleHQ7cC5tYi0yOmVxKDUpJiZUZXh0JywKCQlpbWc6Jy5yb3VuZGVkLTImJnNyYycsCgkJY29udGVudDonLm12X2NhcmRfYm94JiZUZXh0JywKCQkvLyB0YWJzOidqczpUQUJTID0gWyLpgZPplb/no4HlipsiXScsCgkJLy8gbGlzdHM6Jy5tdl9kb3duOmVxKCNpZCkmJi5ib3JkZXItYm90dG9tJywKCQkvLyBsaXN0X3RleHQ6J2EmJlRleHQnLAoJCS8vIGxpc3RfdXJsOidhJiZocmVmJywKCgkJdGFiczonanM6VEFCUyA9IFsi6YGT6ZW/56OB5YqbIiwi6YGT6ZW/5Zyo57q/6aKE6KeIIl0nLAoJCWxpc3RzOmBqczoKCQlsb2coVEFCUyk7CgkJcGRmaD1qc3AucGRmaDtwZGZhPWpzcC5wZGZhO3BkPWpzcC5wZDsKCQlMSVNUUyA9IFtdOwoJCXZhciBkZD1bXTsKCQlUQUJTLmZvckVhY2goZnVuY3Rpb24odGFiKSB7CgkJCWlmICgv6YGT6ZW/56OB5YqbLy50ZXN0KHRhYikpIHsKCQkJCXZhciBkID0gcGRmYShodG1sLCAnLm12X2Rvd24mJi5ib3JkZXItYm90dG9tJyk7CgkJCQlkID0gZC5tYXAoZnVuY3Rpb24oaXQpIHsKCQkJCQl2YXIgdGl0bGUgPSBwZGZoKGl0LCAnYSYmVGV4dCcpOwoJCQkJCWxvZygndGl0bGUgPj4+Pj4+Pj4+Pj4+Pj4+Pj4+Pj4+Pj4+Pj4nICsgdGl0bGUpOwoJCQkJCXZhciBidXJsID0gcGQoaXQsICdhJiZocmVmJyk7CgkJCQkJbG9nKCdidXJsID4+Pj4+Pj4+Pj4+Pj4+Pj4+Pj4+Pj4+Pj4+JyArIGJ1cmwpOwoJCQkJCXJldHVybiB0aXRsZSArICckJyArIGJ1cmwKCQkJCX0pOwoJCQkJTElTVFMucHVzaChkKQoJCQl9IGVsc2UgaWYgKC/pgZPplb/lnKjnur/pooTop4gvLnRlc3QodGFiKSkgewoJCQkJdmFyIGQgPSBwZChodG1sLCAnaWZyYW1lJiZzcmMnKTsKCQkJCWlmIChkKSB7CgkJCQkJZD1bJ+esrOS4gOmbhuWcqOe6v+aSreaUvumihOiniCQnICsgZF0KCQkJCX0gZWxzZSB7CgkJCQkJZD1bJ+ayoeaciemihOiniOS4jeimgeeCuSRodHRwOi8vd3d3LnNoYXJlbmljZS5uZXQvZG91eWluLzIzODUyJ10KCQkJCX0KCQkJCUxJU1RTLnB1c2goZCkKCQkJfQoJCX0pOwoJCWAsCgl9LAoJ5pCc57SiOicuY29sO2gyJiZUZXh0Oy5jYXJkLWltZyYmc3R5bGU7Lm1lLWF1dG8mJlRleHQ7YSYmaHJlZicsCn0= \ No newline at end of file diff --git a/潇洒/magnet/json/BGTV.json b/潇洒/magnet/json/BGTV.json new file mode 100644 index 00000000..6972e0e8 --- /dev/null +++ b/潇洒/magnet/json/BGTV.json @@ -0,0 +1,17 @@ +{ + "主页url": "https://www.bugutv.org/", + "搜索url": "https://www.bugutv.org/?cat=&s={wd}", + "搜索数组": "content-area\">&&", + "简介": "◎简*介

&&

", + "导演": "◎导*演&&
", + "主演": "◎主*演&&
", + "影片年代": "◎上映 日期&&
", + "影片地区": "◎产*地&&
", + "线路数组": "entry-content u-text-format u-clearfix&&\"content-template", + "线路标题": "磁力", + "播放数组": "entry-content u-text-format u-clearfix&&\"content-template", + "播放列表": "

&&

[包含:magnet]", + "播放链接": "*\">&&", + "分类": "4K蓝光原盘$4kuhd#4K电影$4kmovie#4K剧集$4ktv#杜比视界$dolbyvision#4K纪录片$4kdocu#4K演示片$4kdemo/4ktv-4ktv#杜比演示片$4kdemo/dolbydomo#DTS演示片$4kdemo/dtsdomo#8K演示片$4kdemo/8kdemo#蓝光电影$bluraymovie/bluray-movie#蓝光剧集$bluraymovie/bluraytv#3D蓝光$bluraymovie/3dmovie#蓝光纪录片$bluraymovie/documentary#蓝光演唱会$bluraymovie/audiotest", + "分类url": "https://www.bugutv.org/{cateId}/page/{catePg}" +} \ No newline at end of file diff --git a/潇洒/magnet/json/BTTT.json b/潇洒/magnet/json/BTTT.json new file mode 100644 index 00000000..b49de57c --- /dev/null +++ b/潇洒/magnet/json/BTTT.json @@ -0,0 +1,71 @@ +{ + "规则名": "BT天堂", + "规则作者": "", + "请求头参数": "PC_UA", + "网页编码格式": "UTF-8", + "图片是否需要代理": "0", + "是否开启获取首页数据": "1", + "首页推荐链接": "https://www.bttt11.com", + "首页列表数组规则": "body&&.ul-imgtxt1", + "首页片单列表数组规则": "li", + "首页片单是否Jsoup写法": "1", + "首页片单标题": "h3&&Text", + "首页片单链接": "a&&href", + "首页片单图片": "img&&src", + "首页片单副标题": "span,-1&&Text", + "首页片单链接加前缀": "https://www.bttt11.com", + "首页片单链接加后缀": "", + "分类起始页码": "0", + "分类链接": "https://www.bttt11.com/html/{cateId}-{catePg}.html", + //"分类链接": "https://www.clgod.xyz/list/{catePg}-{cateId}-0-0.html", + "分类名称": "欧美电影&日韩电影&港台电影&大陆电影&亚太电影&欧美剧&日韩剧&港台剧&国产剧&亚太剧&动漫&综艺&纪录片", + "分类名称替换词": "1&2&3&4&5&6&7&8&9&10&11&12&13", + //"分类名称": "电影&动作&灵异&奇幻&宗教&励志&犯罪&功夫&喜剧&黑色&幽默&爱情&香港&纪录片&灾难&亲情&暴力&僵尸&丧尸&悬疑&人性&惊悚&血腥&武侠&剧情&历史&战争&经典&漫画&改编&恐怖&穿越&青春&黑帮&文艺&浪漫&同志&冒险&动画&演唱会", + //"分类名称替换词": "0&1&2&3&4&5&6&7&8&10&11&12&1315&16&17&18&19&20&21&22&23&24&25&27&28&29&30&31&32&33&34&35&36&37&38&39&40&41&42", + "筛选数据": {}, + "分类截取模式": "1", + "分类列表数组规则": ".ul-imgtxt2&&li", + "分类片单是否Jsoup写法": "1", + "分类片单标题": "h3&&Text", + "分类片单链接": "a&&href", + "分类片单图片": "img&&src", + "分类片单副标题": "span,-1--a&&Text!更新时间:", + "分类片单链接加前缀": "https://www.bttt11.com", + "分类片单链接加后缀": "", + "搜索请求头参数": "User-Agent$PC_UA", + "搜索链接": "https://www.bttt11.com/e/search/;post", + "POST请求数据": "show=title,newstext&keyboard={wd}&searchtype=影视搜索", + "搜索截取模式": "1", + "搜索列表数组规则": ".ul-imgtxt2&&li", + "搜索片单是否Jsoup写法": "1", + "搜索片单图片": "img&&src", + "搜索片单标题": "h3&&Text", + "搜索片单链接": "a&&href", + "搜索片单副标题": "span,-1--a&&Text!更新时间:", + "搜索片单链接加前缀": "https://www.bttt11.com", + "搜索片单链接加后缀": "", + "链接是否直接播放": "0", + "直接播放链接加前缀": "", + "直接播放链接加后缀": "", + "直接播放直链视频请求头": "", + "详情是否Jsoup写法": "0", + "类型详情": "

◎类  别&&

", + "年代详情": "

◎年  代&&

", + "地区详情": "

◎产  地&&

", + "演员详情": "", + "简介详情": "", + "线路列表数组规则": "", + "线路标题": "", + "播放列表数组规则": "body&&.container", + "选集列表数组规则": "a[href^=magnet]||a[href^=ed2K]", + "选集标题链接是否Jsoup写法": "1", + "选集标题": "Text", + "选集链接": "a&&href", + "是否反转选集序列": "0", + "选集链接加前缀": "", + "选集链接加后缀": "", + "分析MacPlayer": "0", + "是否开启手动嗅探": "0", + "手动嗅探视频链接关键词": ".mp4#.m3u8#.flv", + "手动嗅探视频链接过滤词": ".html" +} \ No newline at end of file diff --git a/潇洒/magnet/json/DYG.json b/潇洒/magnet/json/DYG.json new file mode 100644 index 00000000..85fda74f --- /dev/null +++ b/潇洒/magnet/json/DYG.json @@ -0,0 +1,131 @@ +//写法思路来海阔视界,xpath筛选。本人是海阔用户,所以搬了海阔的jsoup写法过来。2022年9月17日 +//jsoup规则写法请查阅海阔视界或者海阔影视相关教程。不支持js写法 +//本文档为完整模板,请不要去无中生有添加多余的键值参数。 +{ + //规则名 + "title": "电影港", + //作者 + "author": "香雅情", + //请求头UA,键名$键值,每一组用#分开,不填则默认okhttp/3.12.11,可填MOBILE_UA或PC_UA使用内置的手机版或电脑版UA + //多个请求头参数写法示例,"User-Agent$PC_UA#Referer$http://ww.baidu.com#Cookie$ser=ok",每一组用#分开。 + //习惯查看手机源码写建议用手机版UA,习惯查看PC版源码写建议用电脑版UA + "Headers":"PC_UA", + //网页编码格式默认UTF-8编码,UTF-8,GBK,GB2312 + "Coding_format":"gb2312", + //图片是否需要代理 + "PicNeedProxy":"0", + //是否开启获取首页数据,0关闭,1开启 + "homeContent":"0", + //分类链接起始页码,禁止负数和含小数点。 + "firstpage": "1", + //分类链接,{cateId}是分类,{catePg}是页码,第一页没有页码的可以这样写 第二页链接[firstPage=第一页的链接] + "class_url": "https://www.dygang.tv/{cateId}/index_{catePg}.htm[firstPage=https://www.dygang.cc/{cateId}/index.htm]", + //分类名,分类1&分类2&分类3 + "class_name": "最新电影&经典高清&国配电影&经典港片&国剧&日韩剧&美剧&综艺&动漫&纪录片&高清原盘&4K高清区&3D电影&电影专题", + //分类名替换词,替换词1&替换词2&替换词3,替换词包含英文&的用两个中文&&代替,示例:&&id=0&&&id=1 + "class_value": "ys&bd&gy&gp&dsj&dsj1&yx&zy&dmq&jilupian&1080p&4K&3d&dyzt", + //筛选数据,json格式,参考xpath的筛选写法 + "filterdata":{}, + + //分类页面截取数据模式,0为json,其它数字为普通网页。 + "cat_mode": "1", + //分类列表数组定位,最多支持3层,能力有限,不是所有页面都能支持 + "cat_arr_rule": "body&&table[width=388]", + //分类片单信息jsoup与xb截取写法切换,只作用于html网页,1为jsoup写法(默认),0为xb写法 + "cat_is_jsoup":"1", + //分类片单标题 + "cat_title": "img&&alt", + //分类片单链接 + "cat_url": "a&&href", + //分类片单图片,支持自定义图片链接 + "cat_pic": "img&&src", + //分类片单副标题 + "cat_subtitle":"[align=center]&&Text", + //分类片单链接补前缀 + "cat_prefix": "https://www.dygang.tv", + //分类片单链接补后缀 + "cat_suffix": "", + + //搜索请求头参数,不填则默认okhttp/3.12.11,可填MOBILE_UA或PC_UA使用内置的手机版或电脑版UA + //多个请求头参数写法示例,键名$键值,每一组用#分开。"User-Agent$PC_UA#Referer$http://ww.baidu.com#Cookie$ser=ok"。 + "SHeaders":"User-Agent$PC_UA#Content-Type$charset=gb2312", + //搜索链接,搜索关键字用{wd}表示,post请求的最后面加;post + //POST链接示例 http://www.lezhutv.com/index.php?m=vod-search;post + "search_url": "https://www.dygang.tv/e/search/index123.php;post", + //POST搜索body,填写搜索关键字的键值,一般常见的是searchword和wd,不是POST搜索的可留空或删除。 + "sea_PtBody":"keyboard={wd}&submit=搜+索&show=title,smalltext&tempid=1&tbname=article", + + //搜索截取模式,0为json搜索,只支持列表在list数组里的,其它数字为网页截取。 + "search_mode": "1", + //搜索列表数组定位,不填默认内置list,最多支持3层,能力有限,不是所有页面都能支持。 + "sea_arr_rule": "body&&table[width=388]", + //搜索片单信息jsoup与xb截取写法切换,只作用于html网页,1为jsoup写法(默认),0为xb写法 + "sea_is_jsoup":"1", + //搜索片单图片,支持自定义图片链接 + "sea_pic": "img&&src", + //搜索片单标题 + "sea_title": "img&&alt", + //搜索片单链接 + "sea_url": "a&&href", + //搜索片单副标题 + "sea_subtitle":"", + //搜索片单链接补前缀 + "search_prefix": "https://www.dygang.tv", + //搜索片单链接补后缀,这个一般json搜索的需要 + "search_suffix": "", + + //片单链接是否直接播放,0否,1分类片单链接直接播放,2详情选集链接直接播放。 + //设置成直接播放后,后面3个参数请注意该留空的请务必留空。 + "force_play": "0", + //直接播放链接补前缀 + "play_prefix": "", + //直接播放链接补后缀,设置为#isVideo=true#可强制识别为视频链接 + "play_suffix": "", + //直接播放链接设置请求头,只对直链视频有效,每一组用#分开 + "play_header": "", + + //项目信息jsoup与xb截取写法切换,1为jsoup写法(默认),0为xb写法 + "proj_is_jsoup":"0", + //类型数据,截取前缀&&截取后缀 + "proj_cate": "", + //年代数据,截取前缀&&截取后缀 + "proj_year": "", + //地区数据,截取前缀&&截取后缀 + "proj_area": "", + //演员数据,截取前缀&&截取后缀 + "proj_actor": "演  员&&var player_aaaa={"flag":"play","encrypt这种源码的链接解析 + //如果网页源码里没有这种请设置为0 + "Anal_MacPlayer":"0", + //是否开启手动嗅探,只对网页嗅探有效,0否,1是 + "ManualSniffer":"0", + //手动嗅探视频链接关键字,每个用#隔开 + "VideoFormat":".mp4#.m3u8#.flv", + //手动嗅探视频链接过滤关键词,每个用#隔开 + "VideoFilter":".html#=http" +} \ No newline at end of file diff --git a/潇洒/magnet/json/HLJ.json b/潇洒/magnet/json/HLJ.json new file mode 100644 index 00000000..12199302 --- /dev/null +++ b/潇洒/magnet/json/HLJ.json @@ -0,0 +1,21 @@ +{ + "搜索模式": "1", + "搜索url": "https://www.foxjun.com/s/?q={wd}", + "搜索数组": "class=\"media\">&&/div>", + "搜索图片": "src=\"&&\"", + "搜索标题": "《&&》", + "搜索副标题": "》&&\"", + "搜索链接": "href=\"&&\"", + "标题": "《&&》", + "副标题": "》&&\"", + "影片年代": "上映日期:&&

", + "影片类型": "类型:&&

", + "主演": "主演:&&

", + "简介": "简介:&&

", + "播放数组": "&&", + "播放列表": "[包含:magnet]", + "播放标题": ">&&<", + "播放链接": "href=\"&&\"", + "分类url": "https://www.foxjun.com/channel/{cateId}.html?apage1={catepg}", + "分类": "国产剧$guochanju#电影$dianying#动画$donghua#美欧剧$meiouju#日韩剧$rihanju" +} \ No newline at end of file diff --git a/潇洒/magnet/json/XH.json b/潇洒/magnet/json/XH.json new file mode 100644 index 00000000..bd2a4915 --- /dev/null +++ b/潇洒/magnet/json/XH.json @@ -0,0 +1,27 @@ +{ + "站名": "雪花", + "主页url": "https://n3300.com/", + "分类url": "https://n3300.com/ekOtxEBafND5Chtml/{cateId}/list_{catePg}.html", + "分类": "喜剧片$xiju#爱情片$aiqing#科幻片$kehuan#剧情片$juqing#悬疑片$xuannian#战争片$zhanzheng#恐怖片$kongbu#灾难片$zainan#连续剧$lianxuju#动漫$dongman#综艺片$zongyijiemu", + "二次截取": "", + "数组": "默认--pic\">&&||首页--col-sm&&", + "图片": "src=\"&&\"", + "标题": "FF0000'>&&<", + "链接": "href=\"&&\"", + "副标题": "4K", + "影片年代": "年  代&&
", + "影片地区": "产  地&&
", + "影片类型": "类  别&&
", + "状态": "片  长 &&
", + "导演": "导  演&&
", + "主演": "主  演&&
", + "简介": "简  介&&", + "线路数组": "下载地址列表&&

", + "线路标题": "磁力", + "播放二次截取": "本站专用电影&&&&", + "播放列表": "", + "播放链接": "href=\"&&\\&", + "播放标题": "dn=&&<", + "搜索url": "https://n3300.com/plus/search.php?kwtype=0&keyword={wd}" +} \ No newline at end of file diff --git a/潇洒/magnet/json/XLYS.json b/潇洒/magnet/json/XLYS.json new file mode 100644 index 00000000..88d0f732 --- /dev/null +++ b/潇洒/magnet/json/XLYS.json @@ -0,0 +1,35 @@ +{ + "站名": "修罗影视", + "请求头": "User-Agent@Mozilla/5.0 (Linux;; Android 12;; PEHM00 Build/SKQ1.210216.001;; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/130.0.6723.108 Mobile Safari/537.36", + "编码": "UTF-8", + "图片代理": "0", + "直接播放": "0", + "主页url": "http://v.xlys.ltd.ua", + "分类url": "http://v.xlys.ltd.ua/s/{cateId}/{catePg}", + "分类": "动作$dongzuo#爱情$aiqing#喜剧$xiju#科幻$kehuan#恐怖$kongbu#战争$zhanzheng#武侠$wuxia#魔幻$mohuan#剧情$juqing#动画$donghua#惊悚$jingsong#灾难$zainan#悬疑$xuanyi#警匪$jingfei#文艺$wenyi#青春$qingchun#冒险$maoxian#犯罪$fanzui#纪录$jilu#古装$guzhuang#奇幻$qihuan#国语$guoyu#综艺$zongyi#历史$lishi#运动$yundong#原创压制$yuanchuang#美剧$meiju#韩剧$hanju#国产电视剧$guoju#日剧$riju#英剧$yingju#德剧$deju#俄剧$eju#巴剧$baju#加剧$jiaju#西剧$spanish#意大利剧$yidaliju#泰剧$taiju#港台剧$gangtaiju#法剧$faju#澳剧$aoju", + "数组": "card-link&&/h3>", + "标题": "&&<", + "图片": "src=\"&&\"", + "副标题": "red-fg\">&&<", + "链接": "href=\"&&\"", + "影片年代": "上映日期:&&

", + "影片地区": "地区:&&

", + "影片类型": "类型:&&

", + "状态": "豆瓣 :&&", + "导演": "导演:&&

", + "主演": "主演:&&", + "线路数组": "download-list\">&&", + "线路标题": "磁力", + "播放二次截取": "", + "播放数组": "&&", + "倒序": "0", + "播放列表": "", + "播放标题": ">&&<", + "播放链接": "", + "解析": "", + "跳转播放链接": "", + "跳转解析": "", + "搜索请求头": "User-Agent$MOBILE_UA", + "搜索url": "http://v.xlys.ltd.ua/search/{wd}/{pg}" +} \ No newline at end of file diff --git a/潇洒/movie/js/AQY.js b/潇洒/movie/js/AQY.js new file mode 100644 index 00000000..5ea07b09 --- /dev/null +++ b/潇洒/movie/js/AQY.js @@ -0,0 +1 @@ +H4sIAAAAAAAAA+1de3MbRRL/n0+h2qNkCcmSVpItS7rFlQtcVa4OQh2EqivjU22ksb2JpFV2VzbGVlXIw3lAngUhD5MAeTiEPBwIuUSJw5fxSvJf9xWuZ2ZXWj1mM74zwRTrFM7uTM9vunu6e7pnl82srPm0ahH5JN/Caz74MRSjiDK+IfPmseaZU+bzQ+bRtQnz/sXJoTDpn1F1A7pnDKOiZ6LRubm5iHJAmVciebXUJimhPVoRqKyGAjJkpUib7IGV/NywXFE6g6OzSgGpzt9KeUqdU4yZqo606NS8UhiXp1HZyBnzFSSJfrlqzORVdb+CJL9e3bsfzUuYCF/reU3ZCzTW/DqStfxM9/y0LUImcjChjitT0oxRKo74MeAbb/grMOm71RJg4yt/RdVhbnz5vvIJkuJJv64YSCIIXdPJe7Ee47SpVC0aSsYn0rsppWggjRJ0NWWsRcA/Q+JQxjfRuSdtwBO0DpXUArIma3eV5RLCfc1nz82zxxunz5v1M700s3Kxivph6Xg82Dx6e+Pw7Z5hdCjuHupqr4V9LJzm4XuN8/cat5ZZUKLIC2XeXGs9OOICNcaL1Liwuv7kZLP+Cwsp2Y002b7tA7UXwpjREMrlZQNNq9p8TikwV+XhM/PqZ7/ZepgXls0TK/+3BpvHHzYOH2XBjHJzc/L2+toWmEbj0N3mhXMsnPhYmluulXPm02csIG6YxqdnGwcvMOWKcbNz8kFz7Q5TrjS/go5fXK+fYAGlNrFezS+Y6hHj/K58zEXNYnwsyS3Y1TsgGxMpwa+hwycbhy67sMQLtPH1+cbFm2yOuBffvP/YrN9jLn4qMdLjZxxhSkPTilpmxSZzedX8vP7bxaZTp1sPmAJzr+TGrUuNJw8GytIGg5CQ5rb65ovT5pU1JhS3hd1daTz6kQWT4Bbv2vcu3PA7zlc3G8t3mdzE+DfTn1Zd+BFFcYR//VfN+i23JeMOwObRx+b9wyyoHo44/GYeMjmm1xDzN58+Wn/Wq4ZX4TtCWcj4hHgsPir0owiz0In7NoEz4oLDsZZtnKQLDreZAm2CaRHQtwmcuAsOtxMDreiCwx2kgDbmgsO9ScRjYpqNI3I7DNCOueBwRwOgTbngcMdcoB0dhl9MZWMKMYfJuPcXII4BZoyp+CHciTFj3JjpGHH860xIMZ2O5eBXmhty7OWQYxhyjB+yceVR46vvXQBHkwCY6gXkCIyKnqtUcZGrM+tQGuJaPx9pPXr62+UWR0/1T9/G4Xa39eeXzXPsdJMb5tlFF27izFWY7IwYinunAt6pwFZ5x5kbrevMcp5/t27dPuhyLMC/q20cXjOfHGLzExvlz3NdjwYS/Nn7vVvrL75hssSdiLhXdeLoCLdk7kc5YoI773Y/HIin0iL/gc7SlcZXTAMA6biZaq2ecins42n+MvrTx+bh3lDXBuIvx19S14+OcJtAc+1O49vjTKQkf5Vzesk8w6wo+ZNR93wjzl8ou56eJfgt2/V4KJ4aG+MX7cSKW0SCSMLvuUvLja/Zh4z8q3b/B/PZv9l+yw/05ZLb2Veyx7R/98dDS0eBA6a43JFl/ck988qaeWa18fSFy7HFFh0P9ZZO3mFDF4532OAdNvTieIcNDEzvsME7bGjDvNLDhoR32OAdNmzReqzX640Lx5jPovkLO9fqJ8VfbSxdWa/3qqODw71bt47daR55zKx+EukEdwLROP3dxiVmCE3xV5o3XkAQYeJw2z2kuBvXr7mIxv+4EGrExsmD7Id8Ym8a8bsvW6DWWHI5E0ts4uwIoG4wXyvBUJuPGl6x4RUbXrHBh+MVG05Ir9jwio1+mC0oNpJeseEVG1u3Hq1vmelmAvZZ/ieAZ68277KfJAIUt7M1Pv2sefyhC1RyE08lzruUCgA1yr0zNb751rzCfDSJudqi96gx1ObfwdvWWb71UOHGysalJabY/Cvh/nImv+PfXYHSjYmzRa9T/g8Pmryqw6s6vKqDD8erOpyQr7Dq8IqEXphtVCSMekWCVyRs1XosX1uv15sr7GPp+CbegTzy0Dxz3Q1M5A//jUuXXQ7w42nufXbj2k/rT8+yT/BF/vegWsevtp4yX18DKP5HJs0frro8DIAyIbX5t2e2dZnwsneYxE2L62XSXibtZdJ8OF4m7YT0MmkH53/gTDox4qXS2z6V9rb5P9Q27wXMXphtFDBFL2Bu/4DpuYcD5tXmEynPPba9e3j5hJdPWCO8gNkP82oDpveBx+0fMD33cMD8+u7xGgUmf1Vf8r1Y+pnVqIbgpoTKhWhR0Y1xWKpyGRVzSkGams8XZV33F2RDtj8aiz/cSvvI11w1ZOTK1ZIUT1rM0u+w5ujcjsWXFhamihFHQ63mx05K2/EVNPQ9+KK9fc14rKzth7k1VEQAlgMWUa6IZlGRDsH7NFDRhxq0iV7XahajM0guIE3v+mLsHh1pwzvwN3LxIryz+y+7/v52bs+OIadWDaWE1KqR8Y3EYjHaRLSUw+aMHfuLn1srS+aJFX/z2j3y1xc/m2sP/RB1WifqfnP1nHnkF7958nbj+Q9++I+Q1O+Ya182TxyDMTdbD+w3oSguVWXcnxjxi/5RvzjiT/oTKX/Cn7CPUotKSTHw9kVvK0V5PleRNR3YMbQqsojkT+Yzvtf36RFDfd/QlPJ0IBD0SW865De0+R6LLCLDB0bjk3yC4Av5lHKlakT0SlExAsK4EJyITWa76PNqWVeLKFJUpwMwLpjtQ9OQXgEi/L3kKWTkZzDZID8oIWNGLYDg08gY4AcDVq/LTbpXUt2PvSCaiIjJyKDDdTJkp1o2gH74AzB0PEiugJxgdGA00Y+H5+bmhqdUrTQMy4HKebDXwlAfTq3bMQeIvxdcCUT/2/u7342QJQrYCukhVqZ8AUwcgfkiSjlfrBaQHhCw8wrB4ACxydq0v0Ld+2OZQ2yw7MTE7NkGk+z7mDm6IJdL8v4qJHtYyxBqxHgqEoM/YiadTo1FK5r68fx4QZUwYZV+7nmf7oepJIZR9Su2Wzk1HyqCCf0KShjADFsf4rbRR2cH8IHF5md6FMBWC1sl/OpgqOJXVoNDBVT8WpDy0Dh9u3XqbKb98fT1Jweb9RW436dnsAsWpInJ7Cz+bHtJopOUsMoCUXu3CEz8yz8ZCkaDWWUqoJX8fq00IU4GFwixNURDEGXzKBDt37Lw6DeiYaG/RwhRpNpAJHt6On46LAiEgXf+mdu544O3JUkSRGFx0XGbFAbzJAzc2IWw3e74Qjzu0IVgZ6i9vQO1/d12Z3dnu7cIrG+4C8EaVi3+7rukoQNVpBsBwlQwi9v36SCXI+ZhOiIc7ojgYIrl2QEbaiwBQpGNAe9gckmPWJF+QsBfsR8mH7AXJqX3dsK+nO3FpTsKmTjsBAkGa2QmnMhEsMwRCOVvy0A7VS3ncYQP4K7gAjYLUIxECOXi3mppV2FxkdwZs7sKmGVyYyVJuwrAtxhcgNCcp2P0vKqh8c5lSDCPL330kSFkBKE9ulDVyLYSxONCUldbjUS2QfPELUacbckBbYmRAY3ioMZECgzImqkIdqobuzXQNfSQJmIhO9Vq2bAkDLxUxGCoFywkbFxZgiRdIIK1p9si7KgQ6oEj8wndWnQMsWYT8P//dGG1dewnnzCYZYvfzspOqfmqvrgoCLUae41GnbZQQZqiFkJCY/laj/SuDDXv3h3EUxulPTHF75/RhXMcXK0IEhJeF0Kgt2whUqnqM4EFHPDx9k//AQsyEqe0YQyUwb/CFSVPslHSp5TAF/doxU5wiOyrTENYyCXSsdxIPIZvx/NyBfubBNfhObS3AoEC/mR1ZPwD6dWiESgEs3acrn/eH6c3HVWIj2c/3P2WtDCrFiCUgeWE8RVmnEYGfEeSdejBVU37BnfIeUPV7BtcRdjXBQXiqaNP1pBsX+dp6mjfaghXJ7p9C2qDyxpmKmLPLZF4hK+ykHUv2KGwyzBsegtOEujrfrChhqzASfcWBemwORIwvMrBkIA9pp9G5KCJ99MIrQdHwAv/8/yyTU9cs01SbpsukBDj7RWFOFQADDgYNY8+tPp7XJZ0W27yexCc3Fv+ViM5VwD1LxkdVd1LfKpm92LTkShi2zepKukhiGPGijz/DiDhCD4ufLjrPQiE9KTCGkDfy3MMwNgUkPjIrI43aGEklc6lUnGBGBttI9TEifEePiHGJztitDkF03UQDvR2CCIYLyQw/J2YfdvNpB69Q+5V6WzCCuwGkGJUtbJPMch61IKRfapSDsBMnYShgtQKFJklWSnnIPpqxGeDC0Re24V1HD3Y1P0JAJ67M5rGRIsJHLHaa4e7JQdhm7220qxoQEXFgVNTKngKsiC4OCdZF+avnQF1pxMOGnKN/+EdKgq9Cdurkelam7A+o2rGByR8U8Nr34eJnWU6JhempptxmvFke5PqY2qUaveAZdF0gJ2cD9ODAEyAud6DE3j2qRPJqqK6WtXyKKrP4hH43ykaz0PaNeqn7SRXpuZMc7CQ4MfnLsS0hNABva3KtyDaS13VNN0mLEaCdD+YOKBPZm3ywUvf1rm1G9p6BxPo0zq0DdI5NPdpXDG69Y3hqLbxRkj0vRm96Zb65I7e5EHKIh4ej8XIcZ0kCkRfBS5dEVJDNeQizR7IZbZjkqQRVXRI2nEDtmFC8iZMB6m7qgUwgCLFs8qfSUcUOkJiVgmFgq9AViGkbEbYjlwdAwD/hQAV6BE0CHlfrUM00IjsVMrotwcIyWRvhEa1k2TS5AoTWnvE4qJtMeSK2gpY3rTT6PqDcHIslounWClXuNplyDVnPCOHhVOaCnUeOVvq7sD5YsEtRhOmSSoJN1WMbQXEPwntxK5xdrn56DuS2KnlDC3CCmoer6iepQv5lprfBbf0huhrUMeHu7ACenqsMDWIHgq27lZj9q9YtcBX7bX/Agi3uR65bQAA \ No newline at end of file diff --git a/潇洒/movie/js/CBH.js b/潇洒/movie/js/CBH.js new file mode 100644 index 00000000..64052924 --- /dev/null +++ b/潇洒/movie/js/CBH.js @@ -0,0 +1 @@ +LyoqCiAqICAgIOWOn+WIm+ivuuS4tOmjjgogKiAg5Y6f5Yib5pe26Ze077yaMjAyNC0wNS0wNwogKiAg6L2s6L296K+35LiN6KaB5Yig6Zmk5q2k54mI5p2D5aOw5piOCiAqLwoKCnZhciBydWxlID0gewogICAgdGl0bGU6ICLmlrDojLbmna/ni5AiLAogICAgaG9zdDogImh0dHBzOi8vd3d3LmNiaGZveC5jb20vIiwKICAgIHVybDogIi9jaGJ5cy9meWZpbHRlci5odG1sIiwKICAgIHNlYXJjaGFibGU6IDIsCiAgICBxdWlja1NlYXJjaDogMCwKICAgIGZpbHRlcmFibGU6IDEsCiAgICBkZXRhaWxVcmw6ICIvY2JodHYvZnlpZC5odG1sIiwKICAgIGhvbWVVcmw6ICIvbGFiZWwvaG90Lmh0bWwiLAogICAgZmlsdGVyX3VybDogInt7ZmwuY2F0ZUlkfX17e2ZsLmFyZWF9fXt7ZmwuYnl9fXt7ZmwuY2xhc3N9fXt7ZmwubGFuZ319e3tmbC5sZXR0ZXJ9fS9wYWdlL2Z5cGFnZXt7ZmwueWVhcn19IiwKICAgIGZpbHRlcjogewogICAgICAgICJkaWFueWluZyI6IFt7CiAgICAgICAgICAgICJrZXkiOiAiY2xhc3MiLAogICAgICAgICAgICAibmFtZSI6ICLliafmg4UiLAogICAgICAgICAgICAidmFsdWUiOiBbewogICAgICAgICAgICAgICAgIm4iOiAi5YWo6YOoIiwKICAgICAgICAgICAgICAgICJ2IjogIiIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5Zac5YmnIiwKICAgICAgICAgICAgICAgICJ2IjogIi9jbGFzcy/llpzliaciCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIueIseaDhSIsCiAgICAgICAgICAgICAgICAidiI6ICIvY2xhc3Mv54ix5oOFIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLmgZDmgJYiLAogICAgICAgICAgICAgICAgInYiOiAiL2NsYXNzL+aBkOaAliIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5Yqo5L2cIiwKICAgICAgICAgICAgICAgICJ2IjogIi9jbGFzcy/liqjkvZwiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuenkeW5uyIsCiAgICAgICAgICAgICAgICAidiI6ICIvY2xhc3Mv56eR5bm7IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLliafmg4UiLAogICAgICAgICAgICAgICAgInYiOiAiL2NsYXNzL+WJp+aDhSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5oiY5LqJIiwKICAgICAgICAgICAgICAgICJ2IjogIi9jbGFzcy/miJjkuokiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuitpuWMqiIsCiAgICAgICAgICAgICAgICAidiI6ICIvY2xhc3Mv6K2m5YyqIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLniq/nvaoiLAogICAgICAgICAgICAgICAgInYiOiAiL2NsYXNzL+eKr+e9qiIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5Yqo55S7IiwKICAgICAgICAgICAgICAgICJ2IjogIi9jbGFzcy/liqjnlLsiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuWlh+W5uyIsCiAgICAgICAgICAgICAgICAidiI6ICIvY2xhc3Mv5aWH5bm7IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLmrabkvqAiLAogICAgICAgICAgICAgICAgInYiOiAiL2NsYXNzL+atpuS+oCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5YaS6ZmpIiwKICAgICAgICAgICAgICAgICJ2IjogIi9jbGFzcy/lhpLpmakiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuaequaImCIsCiAgICAgICAgICAgICAgICAidiI6ICIvY2xhc3Mv5p6q5oiYIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLmgZDmgJYiLAogICAgICAgICAgICAgICAgInYiOiAiL2NsYXNzL+aBkOaAliIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5oKs55aRIiwKICAgICAgICAgICAgICAgICJ2IjogIi9jbGFzcy/mgqznlpEiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuaDiuaCmiIsCiAgICAgICAgICAgICAgICAidiI6ICIvY2xhc3Mv5oOK5oKaIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLnu4/lhbgiLAogICAgICAgICAgICAgICAgInYiOiAiL2NsYXNzL+e7j+WFuCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi6Z2S5pilIiwKICAgICAgICAgICAgICAgICJ2IjogIi9jbGFzcy/pnZLmmKUiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuaWh+iJuiIsCiAgICAgICAgICAgICAgICAidiI6ICIvY2xhc3Mv5paH6Im6IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLlvq7nlLXlvbEiLAogICAgICAgICAgICAgICAgInYiOiAiL2NsYXNzL+W+rueUteW9sSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5Y+k6KOFIiwKICAgICAgICAgICAgICAgICJ2IjogIi9jbGFzcy/lj6Too4UiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuWOhuWPsiIsCiAgICAgICAgICAgICAgICAidiI6ICIvY2xhc3Mv5Y6G5Y+yIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLov5DliqgiLAogICAgICAgICAgICAgICAgInYiOiAiL2NsYXNzL+i/kOWKqCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5Yac5p2RIiwKICAgICAgICAgICAgICAgICJ2IjogIi9jbGFzcy/lhpzmnZEiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuWEv+erpSIsCiAgICAgICAgICAgICAgICAidiI6ICIvY2xhc3Mv5YS/56ulIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLnvZHnu5znlLXlvbEiLAogICAgICAgICAgICAgICAgInYiOiAiL2NsYXNzL+e9kee7nOeUteW9sSIKICAgICAgICAgICAgfV0KICAgICAgICB9LCB7CiAgICAgICAgICAgICJrZXkiOiAiYXJlYSIsCiAgICAgICAgICAgICJuYW1lIjogIuWcsOWMuiIsCiAgICAgICAgICAgICJ2YWx1ZSI6IFt7CiAgICAgICAgICAgICAgICAibiI6ICLlhajpg6giLAogICAgICAgICAgICAgICAgInYiOiAiIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLlpKfpmYYiLAogICAgICAgICAgICAgICAgInYiOiAiL2FyZWEv5Lit5Zu95aSn6ZmGIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLpppnmuK8iLAogICAgICAgICAgICAgICAgInYiOiAiL2FyZWEv5Lit5Zu96aaZ5rivIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLlj7Dmub4iLAogICAgICAgICAgICAgICAgInYiOiAiL2FyZWEv5Lit5Zu95Y+w5rm+IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLnvo7lm70iLAogICAgICAgICAgICAgICAgInYiOiAiL2FyZWEv576O5Zu9IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLpn6nlm70iLAogICAgICAgICAgICAgICAgInYiOiAiL2FyZWEv6Z+p5Zu9IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLoi7Hlm70iLAogICAgICAgICAgICAgICAgInYiOiAiL2FyZWEv6Iux5Zu9IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLml6XmnKwiLAogICAgICAgICAgICAgICAgInYiOiAiL2FyZWEv5pel5pysIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLlvrflm70iLAogICAgICAgICAgICAgICAgInYiOiAiL2FyZWEv5b635Zu9IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLms7Dlm70iLAogICAgICAgICAgICAgICAgInYiOiAiL2FyZWEv5rOw5Zu9IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLljbDluqYiLAogICAgICAgICAgICAgICAgInYiOiAiL2FyZWEv5Y2w5bqmIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLms5Xlm70iLAogICAgICAgICAgICAgICAgInYiOiAiL2FyZWEv5rOV5Zu9IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLmhI/lpKfliKkiLAogICAgICAgICAgICAgICAgInYiOiAiL2FyZWEv5oSP5aSn5YipIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLopb/nj63niZkiLAogICAgICAgICAgICAgICAgInYiOiAiL2FyZWEv6KW/54+t54mZIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLliqDmi7/lpKciLAogICAgICAgICAgICAgICAgInYiOiAiL2FyZWEv5Yqg5ou/5aSnIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLlhbbku5YiLAogICAgICAgICAgICAgICAgInYiOiAiL2FyZWEv5YW25LuWIgogICAgICAgICAgICB9XQogICAgICAgIH0sIHsKICAgICAgICAgICAgImtleSI6ICJsYW5nIiwKICAgICAgICAgICAgIm5hbWUiOiAi6K+t6KiAIiwKICAgICAgICAgICAgInZhbHVlIjogW3sKICAgICAgICAgICAgICAgICJuIjogIuWFqOmDqCIsCiAgICAgICAgICAgICAgICAidiI6ICIiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuWbveivrSIsCiAgICAgICAgICAgICAgICAidiI6ICIvbGFuZy/lm73or60iCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuiLseivrSIsCiAgICAgICAgICAgICAgICAidiI6ICIvbGFuZy/oi7Hor60iCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIueypOivrSIsCiAgICAgICAgICAgICAgICAidiI6ICIvbGFuZy/nsqTor60iCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIumXveWNl+ivrSIsCiAgICAgICAgICAgICAgICAidiI6ICIvbGFuZy/pl73ljZfor60iCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIumfqeivrSIsCiAgICAgICAgICAgICAgICAidiI6ICIvbGFuZy/pn6nor60iCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuaXpeivrSIsCiAgICAgICAgICAgICAgICAidiI6ICIvbGFuZy/ml6Xor60iCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuazleivrSIsCiAgICAgICAgICAgICAgICAidiI6ICIvbGFuZy/ms5Xor60iCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuW+t+ivrSIsCiAgICAgICAgICAgICAgICAidiI6ICIvbGFuZy/lvrfor60iCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuWFtuWugyIsCiAgICAgICAgICAgICAgICAidiI6ICIvbGFuZy/lhbblroMiCiAgICAgICAgICAgIH1dCiAgICAgICAgfSwgewogICAgICAgICAgICAia2V5IjogInllYXIiLAogICAgICAgICAgICAibmFtZSI6ICLlubTku70iLAogICAgICAgICAgICAidmFsdWUiOiBbewogICAgICAgICAgICAgICAgIm4iOiAi5YWo6YOoIiwKICAgICAgICAgICAgICAgICJ2IjogIiIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAyNSIsCiAgICAgICAgICAgICAgICAidiI6ICIveWVhci8yMDI1IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDI0IiwKICAgICAgICAgICAgICAgICJ2IjogIi95ZWFyLzIwMjQiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMjMiLAogICAgICAgICAgICAgICAgInYiOiAiL3llYXIvMjAyMyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAyMiIsCiAgICAgICAgICAgICAgICAidiI6ICIveWVhci8yMDIyIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDIxIiwKICAgICAgICAgICAgICAgICJ2IjogIi95ZWFyLzIwMjEiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMjAiLAogICAgICAgICAgICAgICAgInYiOiAiL3llYXIvMjAyMCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAxOSIsCiAgICAgICAgICAgICAgICAidiI6ICIveWVhci8yMDE5IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDE4IiwKICAgICAgICAgICAgICAgICJ2IjogIi95ZWFyLzIwMTgiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMTciLAogICAgICAgICAgICAgICAgInYiOiAiL3llYXIvMjAxNyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAxNiIsCiAgICAgICAgICAgICAgICAidiI6ICIveWVhci8yMDE2IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDE1IiwKICAgICAgICAgICAgICAgICJ2IjogIi95ZWFyLzIwMTUiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMTQiLAogICAgICAgICAgICAgICAgInYiOiAiL3llYXIvMjAxNCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAxMyIsCiAgICAgICAgICAgICAgICAidiI6ICIveWVhci8yMDEzIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDEyIiwKICAgICAgICAgICAgICAgICJ2IjogIi95ZWFyLzIwMTIiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMTEiLAogICAgICAgICAgICAgICAgInYiOiAiL3llYXIvMjAxMSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAxMCIsCiAgICAgICAgICAgICAgICAidiI6ICIveWVhci8yMDEwIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDA5IiwKICAgICAgICAgICAgICAgICJ2IjogIi95ZWFyLzIwMDkiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMDgiLAogICAgICAgICAgICAgICAgInYiOiAiL3llYXIvMjAwOCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAwNiIsCiAgICAgICAgICAgICAgICAidiI6ICIveWVhci8yMDA2IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDA1IiwKICAgICAgICAgICAgICAgICJ2IjogIi95ZWFyLzIwMDUiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMDQiLAogICAgICAgICAgICAgICAgInYiOiAiL3llYXIvMjAwNCIKICAgICAgICAgICAgfV0KICAgICAgICB9LCB7CiAgICAgICAgICAgICJrZXkiOiAibGV0dGVyIiwKICAgICAgICAgICAgIm5hbWUiOiAi5a2X5q+NIiwKICAgICAgICAgICAgInZhbHVlIjogW3sKICAgICAgICAgICAgICAgICJuIjogIuWFqOmDqCIsCiAgICAgICAgICAgICAgICAidiI6ICIiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIkEiLAogICAgICAgICAgICAgICAgInYiOiAiL2xldHRlci9BIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICJCIiwKICAgICAgICAgICAgICAgICJ2IjogIi9sZXR0ZXIvQiIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiQyIsCiAgICAgICAgICAgICAgICAidiI6ICIvbGV0dGVyL0MiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIkQiLAogICAgICAgICAgICAgICAgInYiOiAiL2xldHRlci9EIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICJFIiwKICAgICAgICAgICAgICAgICJ2IjogIi9sZXR0ZXIvRSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiRiIsCiAgICAgICAgICAgICAgICAidiI6ICIvbGV0dGVyL0YiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIkciLAogICAgICAgICAgICAgICAgInYiOiAiL2xldHRlci9HIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICJIIiwKICAgICAgICAgICAgICAgICJ2IjogIi9sZXR0ZXIvSCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiSSIsCiAgICAgICAgICAgICAgICAidiI6ICIvbGV0dGVyL0kiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIkoiLAogICAgICAgICAgICAgICAgInYiOiAiL2xldHRlci9KIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICJLIiwKICAgICAgICAgICAgICAgICJ2IjogIi9sZXR0ZXIvSyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiTCIsCiAgICAgICAgICAgICAgICAidiI6ICIvbGV0dGVyL0wiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIk0iLAogICAgICAgICAgICAgICAgInYiOiAiL2xldHRlci9NIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICJOIiwKICAgICAgICAgICAgICAgICJ2IjogIi9sZXR0ZXIvTiIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiTyIsCiAgICAgICAgICAgICAgICAidiI6ICIvbGV0dGVyL08iCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIlAiLAogICAgICAgICAgICAgICAgInYiOiAiL2xldHRlci9QIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICJRIiwKICAgICAgICAgICAgICAgICJ2IjogIi9sZXR0ZXIvUSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiUiIsCiAgICAgICAgICAgICAgICAidiI6ICIvbGV0dGVyL1IiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIlMiLAogICAgICAgICAgICAgICAgInYiOiAiL2xldHRlci9TIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICJUIiwKICAgICAgICAgICAgICAgICJ2IjogIi9sZXR0ZXIvVCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiVSIsCiAgICAgICAgICAgICAgICAidiI6ICIvbGV0dGVyL1UiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIlYiLAogICAgICAgICAgICAgICAgInYiOiAiL2xldHRlci9WIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICJXIiwKICAgICAgICAgICAgICAgICJ2IjogIi9sZXR0ZXIvVyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiWCIsCiAgICAgICAgICAgICAgICAidiI6ICIvbGV0dGVyL1giCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIlkiLAogICAgICAgICAgICAgICAgInYiOiAiL2xldHRlci9ZIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICJaIiwKICAgICAgICAgICAgICAgICJ2IjogIi9sZXR0ZXIvWiIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMC05IiwKICAgICAgICAgICAgICAgICJ2IjogIi9sZXR0ZXIvMC05IgogICAgICAgICAgICB9XQogICAgICAgIH0sIHsKICAgICAgICAgICAgImtleSI6ICJieSIsCiAgICAgICAgICAgICJuYW1lIjogIuaOkuW6jyIsCiAgICAgICAgICAgICJ2YWx1ZSI6IFt7CiAgICAgICAgICAgICAgICAibiI6ICLml7bpl7QiLAogICAgICAgICAgICAgICAgInYiOiAiL2J5L3RpbWUiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuS6uuawlCIsCiAgICAgICAgICAgICAgICAidiI6ICIvYnkvaGl0cyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi6K+E5YiGIiwKICAgICAgICAgICAgICAgICJ2IjogIi9ieS9zY29yZSIKICAgICAgICAgICAgfV0KICAgICAgICB9XSwKICAgICAgICAiZGlhbnNoaWp1IjogW3sKICAgICAgICAgICAgImtleSI6ICJjbGFzcyIsCiAgICAgICAgICAgICJuYW1lIjogIuWJp+aDhSIsCiAgICAgICAgICAgICJ2YWx1ZSI6IFt7CiAgICAgICAgICAgICAgICAibiI6ICLlhajpg6giLAogICAgICAgICAgICAgICAgInYiOiAiIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLlj6Too4UiLAogICAgICAgICAgICAgICAgInYiOiAiL2NsYXNzL+WPpOijhSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5oiY5LqJIiwKICAgICAgICAgICAgICAgICJ2IjogIi9jbGFzcy/miJjkuokiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIumdkuaYpeWBtuWDjyIsCiAgICAgICAgICAgICAgICAidiI6ICIvY2xhc3Mv6Z2S5pil5YG25YOPIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLllpzliaciLAogICAgICAgICAgICAgICAgInYiOiAiL2NsYXNzL+WWnOWJpyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5a625bqtIiwKICAgICAgICAgICAgICAgICJ2IjogIi9jbGFzcy/lrrbluq0iCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIueKr+e9qiIsCiAgICAgICAgICAgICAgICAidiI6ICIvY2xhc3Mv54qv572qIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLliqjkvZwiLAogICAgICAgICAgICAgICAgInYiOiAiL2NsYXNzL+WKqOS9nCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5aWH5bm7IiwKICAgICAgICAgICAgICAgICJ2IjogIi9jbGFzcy/lpYflubsiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuWJp+aDhSIsCiAgICAgICAgICAgICAgICAidiI6ICIvY2xhc3Mv5Ymn5oOFIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLljoblj7IiLAogICAgICAgICAgICAgICAgInYiOiAiL2NsYXNzL+WOhuWPsiIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi57uP5YW4IiwKICAgICAgICAgICAgICAgICJ2IjogIi9jbGFzcy/nu4/lhbgiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuS5oeadkSIsCiAgICAgICAgICAgICAgICAidiI6ICIvY2xhc3Mv5Lmh5p2RIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLmg4Xmma8iLAogICAgICAgICAgICAgICAgInYiOiAiL2NsYXNzL+aDheaZryIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5ZWG5oiYIiwKICAgICAgICAgICAgICAgICJ2IjogIi9jbGFzcy/llYbmiJgiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIue9keWJpyIsCiAgICAgICAgICAgICAgICAidiI6ICIvY2xhc3Mv572R5YmnIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLlhbbku5YiLAogICAgICAgICAgICAgICAgInYiOiAiL2NsYXNzL+WFtuS7liIKICAgICAgICAgICAgfV0KICAgICAgICB9LCB7CiAgICAgICAgICAgICJrZXkiOiAiYXJlYSIsCiAgICAgICAgICAgICJuYW1lIjogIuWcsOWMuiIsCiAgICAgICAgICAgICJ2YWx1ZSI6IFt7CiAgICAgICAgICAgICAgICAibiI6ICLlhajpg6giLAogICAgICAgICAgICAgICAgInYiOiAiIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLlhoXlnLAiLAogICAgICAgICAgICAgICAgInYiOiAiL2FyZWEv5YaF5ZywIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLpn6nlm70iLAogICAgICAgICAgICAgICAgInYiOiAiL2FyZWEv6Z+p5Zu9IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLpppnmuK8iLAogICAgICAgICAgICAgICAgInYiOiAiL2FyZWEv6aaZ5rivIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLlj7Dmub4iLAogICAgICAgICAgICAgICAgInYiOiAiL2FyZWEv5Y+w5rm+IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLml6XmnKwiLAogICAgICAgICAgICAgICAgInYiOiAiL2FyZWEv5pel5pysIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLnvo7lm70iLAogICAgICAgICAgICAgICAgInYiOiAiL2FyZWEv576O5Zu9IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLms7Dlm70iLAogICAgICAgICAgICAgICAgInYiOiAiL2FyZWEv5rOw5Zu9IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLoi7Hlm70iLAogICAgICAgICAgICAgICAgInYiOiAiL2FyZWEv6Iux5Zu9IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLmlrDliqDlnaEiLAogICAgICAgICAgICAgICAgInYiOiAiL2FyZWEv5paw5Yqg5Z2hIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLlhbbku5YiLAogICAgICAgICAgICAgICAgInYiOiAiL2FyZWEv5YW25LuWIgogICAgICAgICAgICB9XQogICAgICAgIH0sIHsKICAgICAgICAgICAgImtleSI6ICJsYW5nIiwKICAgICAgICAgICAgIm5hbWUiOiAi6K+t6KiAIiwKICAgICAgICAgICAgInZhbHVlIjogW3sKICAgICAgICAgICAgICAgICJuIjogIuWFqOmDqCIsCiAgICAgICAgICAgICAgICAidiI6ICIiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuWbveivrSIsCiAgICAgICAgICAgICAgICAidiI6ICIvbGFuZy/lm73or60iCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuiLseivrSIsCiAgICAgICAgICAgICAgICAidiI6ICIvbGFuZy/oi7Hor60iCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIueypOivrSIsCiAgICAgICAgICAgICAgICAidiI6ICIvbGFuZy/nsqTor60iCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIumXveWNl+ivrSIsCiAgICAgICAgICAgICAgICAidiI6ICIvbGFuZy/pl73ljZfor60iCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIumfqeivrSIsCiAgICAgICAgICAgICAgICAidiI6ICIvbGFuZy/pn6nor60iCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuaXpeivrSIsCiAgICAgICAgICAgICAgICAidiI6ICIvbGFuZy/ml6Xor60iCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuWFtuWugyIsCiAgICAgICAgICAgICAgICAidiI6ICIvbGFuZy/lhbblroMiCiAgICAgICAgICAgIH1dCiAgICAgICAgfSwgewogICAgICAgICAgICAia2V5IjogInllYXIiLAogICAgICAgICAgICAibmFtZSI6ICLlubTku70iLAogICAgICAgICAgICAidmFsdWUiOiBbewogICAgICAgICAgICAgICAgIm4iOiAi5YWo6YOoIiwKICAgICAgICAgICAgICAgICJ2IjogIiIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAyNSIsCiAgICAgICAgICAgICAgICAidiI6ICIveWVhci8yMDI1IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDI0IiwKICAgICAgICAgICAgICAgICJ2IjogIi95ZWFyLzIwMjQiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMjMiLAogICAgICAgICAgICAgICAgInYiOiAiL3llYXIvMjAyMyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAyMiIsCiAgICAgICAgICAgICAgICAidiI6ICIveWVhci8yMDIyIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDIxIiwKICAgICAgICAgICAgICAgICJ2IjogIi95ZWFyLzIwMjEiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMjAiLAogICAgICAgICAgICAgICAgInYiOiAiL3llYXIvMjAyMCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAxOSIsCiAgICAgICAgICAgICAgICAidiI6ICIveWVhci8yMDE5IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDE4IiwKICAgICAgICAgICAgICAgICJ2IjogIi95ZWFyLzIwMTgiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMTciLAogICAgICAgICAgICAgICAgInYiOiAiL3llYXIvMjAxNyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAxNiIsCiAgICAgICAgICAgICAgICAidiI6ICIveWVhci8yMDE2IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDE1IiwKICAgICAgICAgICAgICAgICJ2IjogIi95ZWFyLzIwMTUiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMTQiLAogICAgICAgICAgICAgICAgInYiOiAiL3llYXIvMjAxNCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAxMyIsCiAgICAgICAgICAgICAgICAidiI6ICIveWVhci8yMDEzIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDEyIiwKICAgICAgICAgICAgICAgICJ2IjogIi95ZWFyLzIwMTIiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMTEiLAogICAgICAgICAgICAgICAgInYiOiAiL3llYXIvMjAxMSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAxMCIsCiAgICAgICAgICAgICAgICAidiI6ICIveWVhci8yMDEwIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDA5IiwKICAgICAgICAgICAgICAgICJ2IjogIi95ZWFyLzIwMDkiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMDgiLAogICAgICAgICAgICAgICAgInYiOiAiL3llYXIvMjAwOCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAwNiIsCiAgICAgICAgICAgICAgICAidiI6ICIveWVhci8yMDA2IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDA1IiwKICAgICAgICAgICAgICAgICJ2IjogIi95ZWFyLzIwMDUiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMDQiLAogICAgICAgICAgICAgICAgInYiOiAiL3llYXIvMjAwNCIKICAgICAgICAgICAgfV0KICAgICAgICB9LCB7CiAgICAgICAgICAgICJrZXkiOiAibGV0dGVyIiwKICAgICAgICAgICAgIm5hbWUiOiAi5a2X5q+NIiwKICAgICAgICAgICAgInZhbHVlIjogW3sKICAgICAgICAgICAgICAgICJuIjogIuWFqOmDqCIsCiAgICAgICAgICAgICAgICAidiI6ICIiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIkEiLAogICAgICAgICAgICAgICAgInYiOiAiL2xldHRlci9BIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICJCIiwKICAgICAgICAgICAgICAgICJ2IjogIi9sZXR0ZXIvQiIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiQyIsCiAgICAgICAgICAgICAgICAidiI6ICIvbGV0dGVyL0MiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIkQiLAogICAgICAgICAgICAgICAgInYiOiAiL2xldHRlci9EIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICJFIiwKICAgICAgICAgICAgICAgICJ2IjogIi9sZXR0ZXIvRSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiRiIsCiAgICAgICAgICAgICAgICAidiI6ICIvbGV0dGVyL0YiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIkciLAogICAgICAgICAgICAgICAgInYiOiAiL2xldHRlci9HIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICJIIiwKICAgICAgICAgICAgICAgICJ2IjogIi9sZXR0ZXIvSCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiSSIsCiAgICAgICAgICAgICAgICAidiI6ICIvbGV0dGVyL0kiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIkoiLAogICAgICAgICAgICAgICAgInYiOiAiL2xldHRlci9KIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICJLIiwKICAgICAgICAgICAgICAgICJ2IjogIi9sZXR0ZXIvSyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiTCIsCiAgICAgICAgICAgICAgICAidiI6ICIvbGV0dGVyL0wiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIk0iLAogICAgICAgICAgICAgICAgInYiOiAiL2xldHRlci9NIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICJOIiwKICAgICAgICAgICAgICAgICJ2IjogIi9sZXR0ZXIvTiIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiTyIsCiAgICAgICAgICAgICAgICAidiI6ICIvbGV0dGVyL08iCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIlAiLAogICAgICAgICAgICAgICAgInYiOiAiL2xldHRlci9QIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICJRIiwKICAgICAgICAgICAgICAgICJ2IjogIi9sZXR0ZXIvUSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiUiIsCiAgICAgICAgICAgICAgICAidiI6ICIvbGV0dGVyL1IiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIlMiLAogICAgICAgICAgICAgICAgInYiOiAiL2xldHRlci9TIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICJUIiwKICAgICAgICAgICAgICAgICJ2IjogIi9sZXR0ZXIvVCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiVSIsCiAgICAgICAgICAgICAgICAidiI6ICIvbGV0dGVyL1UiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIlYiLAogICAgICAgICAgICAgICAgInYiOiAiL2xldHRlci9WIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICJXIiwKICAgICAgICAgICAgICAgICJ2IjogIi9sZXR0ZXIvVyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiWCIsCiAgICAgICAgICAgICAgICAidiI6ICIvbGV0dGVyL1giCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIlkiLAogICAgICAgICAgICAgICAgInYiOiAiL2xldHRlci9ZIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICJaIiwKICAgICAgICAgICAgICAgICJ2IjogIi9sZXR0ZXIvWiIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMC05IiwKICAgICAgICAgICAgICAgICJ2IjogIi9sZXR0ZXIvMC05IgogICAgICAgICAgICB9XQogICAgICAgIH0sIHsKICAgICAgICAgICAgImtleSI6ICJieSIsCiAgICAgICAgICAgICJuYW1lIjogIuaOkuW6jyIsCiAgICAgICAgICAgICJ2YWx1ZSI6IFt7CiAgICAgICAgICAgICAgICAibiI6ICLml7bpl7QiLAogICAgICAgICAgICAgICAgInYiOiAiL2J5L3RpbWUiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuS6uuawlCIsCiAgICAgICAgICAgICAgICAidiI6ICIvYnkvaGl0cyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi6K+E5YiGIiwKICAgICAgICAgICAgICAgICJ2IjogIi9ieS9zY29yZSIKICAgICAgICAgICAgfV0KICAgICAgICB9XSwKICAgICAgICAiem9uZ3lpIjogW3sKICAgICAgICAgICAgImtleSI6ICJjbGFzcyIsCiAgICAgICAgICAgICJuYW1lIjogIuWJp+aDhSIsCiAgICAgICAgICAgICJ2YWx1ZSI6IFt7CiAgICAgICAgICAgICAgICAibiI6ICLlhajpg6giLAogICAgICAgICAgICAgICAgInYiOiAiMyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi6YCJ56eAIiwKICAgICAgICAgICAgICAgICJ2IjogIi9jbGFzcy/pgInnp4AiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuaDheaEnyIsCiAgICAgICAgICAgICAgICAidiI6ICIvY2xhc3Mv5oOF5oSfIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLorr/osIgiLAogICAgICAgICAgICAgICAgInYiOiAiL2NsYXNzL+iuv+iwiCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5pKt5oqlIiwKICAgICAgICAgICAgICAgICJ2IjogIi9jbGFzcy/mkq3miqUiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuaXhea4uCIsCiAgICAgICAgICAgICAgICAidiI6ICIvY2xhc3Mv5peF5ri4IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLpn7PkuZAiLAogICAgICAgICAgICAgICAgInYiOiAiL2NsYXNzL+mfs+S5kCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi576O6aOfIiwKICAgICAgICAgICAgICAgICJ2IjogIi9jbGFzcy/nvo7po58iCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIue6quWuniIsCiAgICAgICAgICAgICAgICAidiI6ICIvY2xhc3Mv57qq5a6eIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLmm7LoiboiLAogICAgICAgICAgICAgICAgInYiOiAiL2NsYXNzL+absuiJuiIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi55Sf5rS7IiwKICAgICAgICAgICAgICAgICJ2IjogIi9jbGFzcy/nlJ/mtLsiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIua4uOaIj+S6kuWKqCIsCiAgICAgICAgICAgICAgICAidiI6ICIvY2xhc3Mv5ri45oiP5LqS5YqoIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLotKLnu48iLAogICAgICAgICAgICAgICAgInYiOiAiL2NsYXNzL+i0oue7jyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5rGC6IGMIiwKICAgICAgICAgICAgICAgICJ2IjogIi9jbGFzcy/msYLogYwiCiAgICAgICAgICAgIH1dCiAgICAgICAgfSwgewogICAgICAgICAgICAia2V5IjogImFyZWEiLAogICAgICAgICAgICAibmFtZSI6ICLlnLDljLoiLAogICAgICAgICAgICAidmFsdWUiOiBbewogICAgICAgICAgICAgICAgIm4iOiAi5YWo6YOoIiwKICAgICAgICAgICAgICAgICJ2IjogIiIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5YaF5ZywIiwKICAgICAgICAgICAgICAgICJ2IjogIi9hcmVhL+WGheWcsCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5riv5Y+wIiwKICAgICAgICAgICAgICAgICJ2IjogIi9hcmVhL+a4r+WPsCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5pel6Z+pIiwKICAgICAgICAgICAgICAgICJ2IjogIi9hcmVhL+aXpemfqSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5qyn576OIiwKICAgICAgICAgICAgICAgICJ2IjogIi9hcmVhL+asp+e+jiIKICAgICAgICAgICAgfV0KICAgICAgICB9LCB7CiAgICAgICAgICAgICJrZXkiOiAibGFuZyIsCiAgICAgICAgICAgICJuYW1lIjogIuivreiogCIsCiAgICAgICAgICAgICJ2YWx1ZSI6IFt7CiAgICAgICAgICAgICAgICAibiI6ICLlhajpg6giLAogICAgICAgICAgICAgICAgInYiOiAiIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLlm73or60iLAogICAgICAgICAgICAgICAgInYiOiAiL2xhbmcv5Zu96K+tIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLoi7Hor60iLAogICAgICAgICAgICAgICAgInYiOiAiL2xhbmcv6Iux6K+tIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLnsqTor60iLAogICAgICAgICAgICAgICAgInYiOiAiL2xhbmcv57Kk6K+tIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLpl73ljZfor60iLAogICAgICAgICAgICAgICAgInYiOiAiL2xhbmcv6Ze95Y2X6K+tIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLpn6nor60iLAogICAgICAgICAgICAgICAgInYiOiAiL2xhbmcv6Z+p6K+tIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLml6Xor60iLAogICAgICAgICAgICAgICAgInYiOiAiL2xhbmcv5pel6K+tIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLlhbblroMiLAogICAgICAgICAgICAgICAgInYiOiAiL2xhbmcv5YW25a6DIgogICAgICAgICAgICB9XQogICAgICAgIH0sIHsKICAgICAgICAgICAgImtleSI6ICJ5ZWFyIiwKICAgICAgICAgICAgIm5hbWUiOiAi5bm05Lu9IiwKICAgICAgICAgICAgInZhbHVlIjogW3sKICAgICAgICAgICAgICAgICJuIjogIuWFqOmDqCIsCiAgICAgICAgICAgICAgICAidiI6ICIiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMjUiLAogICAgICAgICAgICAgICAgInYiOiAiL3llYXIvMjAyNSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAyNCIsCiAgICAgICAgICAgICAgICAidiI6ICIveWVhci8yMDI0IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDIzIiwKICAgICAgICAgICAgICAgICJ2IjogIi95ZWFyLzIwMjMiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMjIiLAogICAgICAgICAgICAgICAgInYiOiAiL3llYXIvMjAyMiIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAyMSIsCiAgICAgICAgICAgICAgICAidiI6ICIveWVhci8yMDIxIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDIwIiwKICAgICAgICAgICAgICAgICJ2IjogIi95ZWFyLzIwMjAiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMTkiLAogICAgICAgICAgICAgICAgInYiOiAiL3llYXIvMjAxOSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAxOCIsCiAgICAgICAgICAgICAgICAidiI6ICIveWVhci8yMDE4IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDE3IiwKICAgICAgICAgICAgICAgICJ2IjogIi95ZWFyLzIwMTciCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMTYiLAogICAgICAgICAgICAgICAgInYiOiAiL3llYXIvMjAxNiIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAxNSIsCiAgICAgICAgICAgICAgICAidiI6ICIveWVhci8yMDE1IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDE0IiwKICAgICAgICAgICAgICAgICJ2IjogIi95ZWFyLzIwMTQiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMTMiLAogICAgICAgICAgICAgICAgInYiOiAiL3llYXIvMjAxMyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAxMiIsCiAgICAgICAgICAgICAgICAidiI6ICIveWVhci8yMDEyIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDExIiwKICAgICAgICAgICAgICAgICJ2IjogIi95ZWFyLzIwMTEiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMTAiLAogICAgICAgICAgICAgICAgInYiOiAiL3llYXIvMjAxMCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAwOSIsCiAgICAgICAgICAgICAgICAidiI6ICIveWVhci8yMDA5IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDA4IiwKICAgICAgICAgICAgICAgICJ2IjogIi95ZWFyLzIwMDgiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMDYiLAogICAgICAgICAgICAgICAgInYiOiAiL3llYXIvMjAwNiIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAwNSIsCiAgICAgICAgICAgICAgICAidiI6ICIveWVhci8yMDA1IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDA0IiwKICAgICAgICAgICAgICAgICJ2IjogIi95ZWFyLzIwMDQiCiAgICAgICAgICAgIH1dCiAgICAgICAgfSwgewogICAgICAgICAgICAia2V5IjogImxldHRlciIsCiAgICAgICAgICAgICJuYW1lIjogIuWtl+avjSIsCiAgICAgICAgICAgICJ2YWx1ZSI6IFt7CiAgICAgICAgICAgICAgICAibiI6ICLlhajpg6giLAogICAgICAgICAgICAgICAgInYiOiAiIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICJBIiwKICAgICAgICAgICAgICAgICJ2IjogIi9sZXR0ZXIvQSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiQiIsCiAgICAgICAgICAgICAgICAidiI6ICIvbGV0dGVyL0IiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIkMiLAogICAgICAgICAgICAgICAgInYiOiAiL2xldHRlci9DIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICJEIiwKICAgICAgICAgICAgICAgICJ2IjogIi9sZXR0ZXIvRCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiRSIsCiAgICAgICAgICAgICAgICAidiI6ICIvbGV0dGVyL0UiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIkYiLAogICAgICAgICAgICAgICAgInYiOiAiL2xldHRlci9GIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICJHIiwKICAgICAgICAgICAgICAgICJ2IjogIi9sZXR0ZXIvRyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiSCIsCiAgICAgICAgICAgICAgICAidiI6ICIvbGV0dGVyL0giCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIkkiLAogICAgICAgICAgICAgICAgInYiOiAiL2xldHRlci9JIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICJKIiwKICAgICAgICAgICAgICAgICJ2IjogIi9sZXR0ZXIvSiIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiSyIsCiAgICAgICAgICAgICAgICAidiI6ICIvbGV0dGVyL0siCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIkwiLAogICAgICAgICAgICAgICAgInYiOiAiL2xldHRlci9MIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICJNIiwKICAgICAgICAgICAgICAgICJ2IjogIi9sZXR0ZXIvTSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiTiIsCiAgICAgICAgICAgICAgICAidiI6ICIvbGV0dGVyL04iCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIk8iLAogICAgICAgICAgICAgICAgInYiOiAiL2xldHRlci9PIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICJQIiwKICAgICAgICAgICAgICAgICJ2IjogIi9sZXR0ZXIvUCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiUSIsCiAgICAgICAgICAgICAgICAidiI6ICIvbGV0dGVyL1EiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIlIiLAogICAgICAgICAgICAgICAgInYiOiAiL2xldHRlci9SIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICJTIiwKICAgICAgICAgICAgICAgICJ2IjogIi9sZXR0ZXIvUyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiVCIsCiAgICAgICAgICAgICAgICAidiI6ICIvbGV0dGVyL1QiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIlUiLAogICAgICAgICAgICAgICAgInYiOiAiL2xldHRlci9VIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICJWIiwKICAgICAgICAgICAgICAgICJ2IjogIi9sZXR0ZXIvViIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiVyIsCiAgICAgICAgICAgICAgICAidiI6ICIvbGV0dGVyL1ciCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIlgiLAogICAgICAgICAgICAgICAgInYiOiAiL2xldHRlci9YIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICJZIiwKICAgICAgICAgICAgICAgICJ2IjogIi9sZXR0ZXIvWSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiWiIsCiAgICAgICAgICAgICAgICAidiI6ICIvbGV0dGVyL1oiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjAtOSIsCiAgICAgICAgICAgICAgICAidiI6ICIvbGV0dGVyLzAtOSIKICAgICAgICAgICAgfV0KICAgICAgICB9LCB7CiAgICAgICAgICAgICJrZXkiOiAiYnkiLAogICAgICAgICAgICAibmFtZSI6ICLmjpLluo8iLAogICAgICAgICAgICAidmFsdWUiOiBbewogICAgICAgICAgICAgICAgIm4iOiAi5pe26Ze0IiwKICAgICAgICAgICAgICAgICJ2IjogIi9ieS90aW1lIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLkurrmsJQiLAogICAgICAgICAgICAgICAgInYiOiAiL2J5L2hpdHMiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuivhOWIhiIsCiAgICAgICAgICAgICAgICAidiI6ICIvYnkvc2NvcmUiCiAgICAgICAgICAgIH1dCiAgICAgICAgfV0sCiAgICAgICAgImRvbmdtbmEiOiBbewogICAgICAgICAgICAia2V5IjogImFyZWEiLAogICAgICAgICAgICAibmFtZSI6ICLlnLDljLoiLAogICAgICAgICAgICAidmFsdWUiOiBbewogICAgICAgICAgICAgICAgIm4iOiAi5YWo6YOoIiwKICAgICAgICAgICAgICAgICJ2IjogIiIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5YaF5ZywIiwKICAgICAgICAgICAgICAgICJ2IjogIi9hcmVhL+WGheWcsCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5riv5Y+wIiwKICAgICAgICAgICAgICAgICJ2IjogIi9hcmVhL+a4r+WPsCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5pel6Z+pIiwKICAgICAgICAgICAgICAgICJ2IjogIi9hcmVhL+aXpemfqSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5qyn576OIiwKICAgICAgICAgICAgICAgICJ2IjogIi9hcmVhL+asp+e+jiIKICAgICAgICAgICAgfV0KICAgICAgICB9LCB7CiAgICAgICAgICAgICJrZXkiOiAibGFuZyIsCiAgICAgICAgICAgICJuYW1lIjogIuivreiogCIsCiAgICAgICAgICAgICJ2YWx1ZSI6IFt7CiAgICAgICAgICAgICAgICAibiI6ICLlhajpg6giLAogICAgICAgICAgICAgICAgInYiOiAiIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLlm73or60iLAogICAgICAgICAgICAgICAgInYiOiAiL2xhbmcv5Zu96K+tIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLoi7Hor60iLAogICAgICAgICAgICAgICAgInYiOiAiL2xhbmcv6Iux6K+tIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLnsqTor60iLAogICAgICAgICAgICAgICAgInYiOiAiL2xhbmcv57Kk6K+tIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLpl73ljZfor60iLAogICAgICAgICAgICAgICAgInYiOiAiL2xhbmcv6Ze95Y2X6K+tIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLpn6nor60iLAogICAgICAgICAgICAgICAgInYiOiAiL2xhbmcv6Z+p6K+tIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLml6Xor60iLAogICAgICAgICAgICAgICAgInYiOiAiL2xhbmcv5pel6K+tIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLlhbblroMiLAogICAgICAgICAgICAgICAgInYiOiAiL2xhbmcv5YW25a6DIgogICAgICAgICAgICB9XQogICAgICAgIH0sIHsKICAgICAgICAgICAgImtleSI6ICJ5ZWFyIiwKICAgICAgICAgICAgIm5hbWUiOiAi5bm05Lu9IiwKICAgICAgICAgICAgInZhbHVlIjogW3sKICAgICAgICAgICAgICAgICJuIjogIuWFqOmDqCIsCiAgICAgICAgICAgICAgICAidiI6ICIiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMjUiLAogICAgICAgICAgICAgICAgInYiOiAiL3llYXIvMjAyNSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAyNCIsCiAgICAgICAgICAgICAgICAidiI6ICIveWVhci8yMDI0IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDIzIiwKICAgICAgICAgICAgICAgICJ2IjogIi95ZWFyLzIwMjMiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMjIiLAogICAgICAgICAgICAgICAgInYiOiAiL3llYXIvMjAyMiIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAyMSIsCiAgICAgICAgICAgICAgICAidiI6ICIveWVhci8yMDIxIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDIwIiwKICAgICAgICAgICAgICAgICJ2IjogIi95ZWFyLzIwMjAiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMTkiLAogICAgICAgICAgICAgICAgInYiOiAiL3llYXIvMjAxOSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAxOCIsCiAgICAgICAgICAgICAgICAidiI6ICIveWVhci8yMDE4IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDE3IiwKICAgICAgICAgICAgICAgICJ2IjogIi95ZWFyLzIwMTciCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMTYiLAogICAgICAgICAgICAgICAgInYiOiAiL3llYXIvMjAxNiIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAxNSIsCiAgICAgICAgICAgICAgICAidiI6ICIveWVhci8yMDE1IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDE0IiwKICAgICAgICAgICAgICAgICJ2IjogIi95ZWFyLzIwMTQiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMTMiLAogICAgICAgICAgICAgICAgInYiOiAiL3llYXIvMjAxMyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAxMiIsCiAgICAgICAgICAgICAgICAidiI6ICIveWVhci8yMDEyIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDExIiwKICAgICAgICAgICAgICAgICJ2IjogIi95ZWFyLzIwMTEiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMTAiLAogICAgICAgICAgICAgICAgInYiOiAiL3llYXIvMjAxMCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAwOSIsCiAgICAgICAgICAgICAgICAidiI6ICIveWVhci8yMDA5IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDA4IiwKICAgICAgICAgICAgICAgICJ2IjogIi95ZWFyLzIwMDgiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMDYiLAogICAgICAgICAgICAgICAgInYiOiAiL3llYXIvMjAwNiIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAwNSIsCiAgICAgICAgICAgICAgICAidiI6ICIveWVhci8yMDA1IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDA0IiwKICAgICAgICAgICAgICAgICJ2IjogIi95ZWFyLzIwMDQiCiAgICAgICAgICAgIH1dCiAgICAgICAgfSwgewogICAgICAgICAgICAia2V5IjogImxldHRlciIsCiAgICAgICAgICAgICJuYW1lIjogIuWtl+avjSIsCiAgICAgICAgICAgICJ2YWx1ZSI6IFt7CiAgICAgICAgICAgICAgICAibiI6ICLlhajpg6giLAogICAgICAgICAgICAgICAgInYiOiAiIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICJBIiwKICAgICAgICAgICAgICAgICJ2IjogIi9sZXR0ZXIvQSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiQiIsCiAgICAgICAgICAgICAgICAidiI6ICIvbGV0dGVyL0IiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIkMiLAogICAgICAgICAgICAgICAgInYiOiAiL2xldHRlci9DIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICJEIiwKICAgICAgICAgICAgICAgICJ2IjogIi9sZXR0ZXIvRCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiRSIsCiAgICAgICAgICAgICAgICAidiI6ICIvbGV0dGVyL0UiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIkYiLAogICAgICAgICAgICAgICAgInYiOiAiL2xldHRlci9GIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICJHIiwKICAgICAgICAgICAgICAgICJ2IjogIi9sZXR0ZXIvRyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiSCIsCiAgICAgICAgICAgICAgICAidiI6ICIvbGV0dGVyL0giCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIkkiLAogICAgICAgICAgICAgICAgInYiOiAiL2xldHRlci9JIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICJKIiwKICAgICAgICAgICAgICAgICJ2IjogIi9sZXR0ZXIvSiIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiSyIsCiAgICAgICAgICAgICAgICAidiI6ICIvbGV0dGVyL0siCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIkwiLAogICAgICAgICAgICAgICAgInYiOiAiL2xldHRlci9MIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICJNIiwKICAgICAgICAgICAgICAgICJ2IjogIi9sZXR0ZXIvTSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiTiIsCiAgICAgICAgICAgICAgICAidiI6ICIvbGV0dGVyL04iCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIk8iLAogICAgICAgICAgICAgICAgInYiOiAiL2xldHRlci9PIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICJQIiwKICAgICAgICAgICAgICAgICJ2IjogIi9sZXR0ZXIvUCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiUSIsCiAgICAgICAgICAgICAgICAidiI6ICIvbGV0dGVyL1EiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIlIiLAogICAgICAgICAgICAgICAgInYiOiAiL2xldHRlci9SIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICJTIiwKICAgICAgICAgICAgICAgICJ2IjogIi9sZXR0ZXIvUyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiVCIsCiAgICAgICAgICAgICAgICAidiI6ICIvbGV0dGVyL1QiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIlUiLAogICAgICAgICAgICAgICAgInYiOiAiL2xldHRlci9VIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICJWIiwKICAgICAgICAgICAgICAgICJ2IjogIi9sZXR0ZXIvViIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiVyIsCiAgICAgICAgICAgICAgICAidiI6ICIvbGV0dGVyL1ciCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIlgiLAogICAgICAgICAgICAgICAgInYiOiAiL2xldHRlci9YIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICJZIiwKICAgICAgICAgICAgICAgICJ2IjogIi9sZXR0ZXIvWSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiWiIsCiAgICAgICAgICAgICAgICAidiI6ICIvbGV0dGVyL1oiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjAtOSIsCiAgICAgICAgICAgICAgICAidiI6ICIvbGV0dGVyLzAtOSIKICAgICAgICAgICAgfV0KICAgICAgICB9LCB7CiAgICAgICAgICAgICJrZXkiOiAiYnkiLAogICAgICAgICAgICAibmFtZSI6ICLmjpLluo8iLAogICAgICAgICAgICAidmFsdWUiOiBbewogICAgICAgICAgICAgICAgIm4iOiAi5pe26Ze0IiwKICAgICAgICAgICAgICAgICJ2IjogIi9ieS90aW1lIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLkurrmsJQiLAogICAgICAgICAgICAgICAgInYiOiAiL2J5L2hpdHMiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuivhOWIhiIsCiAgICAgICAgICAgICAgICAidiI6ICIvYnkvc2NvcmUiCiAgICAgICAgICAgIH1dCiAgICAgICAgfV0sCiAgICAgICAgImppbHVwaWFuIjogW3sKICAgICAgICAgICAgImtleSI6ICJhcmVhIiwKICAgICAgICAgICAgIm5hbWUiOiAi5Zyw5Yy6IiwKICAgICAgICAgICAgInZhbHVlIjogW3sKICAgICAgICAgICAgICAgICJuIjogIuWFqOmDqCIsCiAgICAgICAgICAgICAgICAidiI6ICIiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuWGheWcsCIsCiAgICAgICAgICAgICAgICAidiI6ICIvYXJlYS/lhoXlnLAiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIua4r+WPsCIsCiAgICAgICAgICAgICAgICAidiI6ICIvYXJlYS/muK/lj7AiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuaXpemfqSIsCiAgICAgICAgICAgICAgICAidiI6ICIvYXJlYS/ml6Xpn6kiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuasp+e+jiIsCiAgICAgICAgICAgICAgICAidiI6ICIvYXJlYS/mrKfnvo4iCiAgICAgICAgICAgIH1dCiAgICAgICAgfSwgewogICAgICAgICAgICAia2V5IjogImxhbmciLAogICAgICAgICAgICAibmFtZSI6ICLor63oqIAiLAogICAgICAgICAgICAidmFsdWUiOiBbewogICAgICAgICAgICAgICAgIm4iOiAi5YWo6YOoIiwKICAgICAgICAgICAgICAgICJ2IjogIiIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5Zu96K+tIiwKICAgICAgICAgICAgICAgICJ2IjogIi9sYW5nL+WbveivrSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi6Iux6K+tIiwKICAgICAgICAgICAgICAgICJ2IjogIi9sYW5nL+iLseivrSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi57Kk6K+tIiwKICAgICAgICAgICAgICAgICJ2IjogIi9sYW5nL+eypOivrSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi6Ze95Y2X6K+tIiwKICAgICAgICAgICAgICAgICJ2IjogIi9sYW5nL+mXveWNl+ivrSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi6Z+p6K+tIiwKICAgICAgICAgICAgICAgICJ2IjogIi9sYW5nL+mfqeivrSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5pel6K+tIiwKICAgICAgICAgICAgICAgICJ2IjogIi9sYW5nL+aXpeivrSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5YW25a6DIiwKICAgICAgICAgICAgICAgICJ2IjogIi9sYW5nL+WFtuWugyIKICAgICAgICAgICAgfV0KICAgICAgICB9LCB7CiAgICAgICAgICAgICJrZXkiOiAieWVhciIsCiAgICAgICAgICAgICJuYW1lIjogIuW5tOS7vSIsCiAgICAgICAgICAgICJ2YWx1ZSI6IFt7CiAgICAgICAgICAgICAgICAibiI6ICLlhajpg6giLAogICAgICAgICAgICAgICAgInYiOiAiIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDI1IiwKICAgICAgICAgICAgICAgICJ2IjogIi95ZWFyLzIwMjUiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMjQiLAogICAgICAgICAgICAgICAgInYiOiAiL3llYXIvMjAyNCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAyMyIsCiAgICAgICAgICAgICAgICAidiI6ICIveWVhci8yMDIzIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDIyIiwKICAgICAgICAgICAgICAgICJ2IjogIi95ZWFyLzIwMjIiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMjEiLAogICAgICAgICAgICAgICAgInYiOiAiL3llYXIvMjAyMSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAyMCIsCiAgICAgICAgICAgICAgICAidiI6ICIveWVhci8yMDIwIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDE5IiwKICAgICAgICAgICAgICAgICJ2IjogIi95ZWFyLzIwMTkiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMTgiLAogICAgICAgICAgICAgICAgInYiOiAiL3llYXIvMjAxOCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAxNyIsCiAgICAgICAgICAgICAgICAidiI6ICIveWVhci8yMDE3IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDE2IiwKICAgICAgICAgICAgICAgICJ2IjogIi95ZWFyLzIwMTYiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMTUiLAogICAgICAgICAgICAgICAgInYiOiAiL3llYXIvMjAxNSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAxNCIsCiAgICAgICAgICAgICAgICAidiI6ICIveWVhci8yMDE0IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDEzIiwKICAgICAgICAgICAgICAgICJ2IjogIi95ZWFyLzIwMTMiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMTIiLAogICAgICAgICAgICAgICAgInYiOiAiL3llYXIvMjAxMiIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAxMSIsCiAgICAgICAgICAgICAgICAidiI6ICIveWVhci8yMDExIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDEwIiwKICAgICAgICAgICAgICAgICJ2IjogIi95ZWFyLzIwMTAiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMDkiLAogICAgICAgICAgICAgICAgInYiOiAiL3llYXIvMjAwOSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAwOCIsCiAgICAgICAgICAgICAgICAidiI6ICIveWVhci8yMDA4IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDA2IiwKICAgICAgICAgICAgICAgICJ2IjogIi95ZWFyLzIwMDYiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMDUiLAogICAgICAgICAgICAgICAgInYiOiAiL3llYXIvMjAwNSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAwNCIsCiAgICAgICAgICAgICAgICAidiI6ICIveWVhci8yMDA0IgogICAgICAgICAgICB9XQogICAgICAgIH0sIHsKICAgICAgICAgICAgImtleSI6ICJsZXR0ZXIiLAogICAgICAgICAgICAibmFtZSI6ICLlrZfmr40iLAogICAgICAgICAgICAidmFsdWUiOiBbewogICAgICAgICAgICAgICAgIm4iOiAi5YWo6YOoIiwKICAgICAgICAgICAgICAgICJ2IjogIiIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiQSIsCiAgICAgICAgICAgICAgICAidiI6ICIvbGV0dGVyL0EiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIkIiLAogICAgICAgICAgICAgICAgInYiOiAiL2xldHRlci9CIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICJDIiwKICAgICAgICAgICAgICAgICJ2IjogIi9sZXR0ZXIvQyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiRCIsCiAgICAgICAgICAgICAgICAidiI6ICIvbGV0dGVyL0QiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIkUiLAogICAgICAgICAgICAgICAgInYiOiAiL2xldHRlci9FIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICJGIiwKICAgICAgICAgICAgICAgICJ2IjogIi9sZXR0ZXIvRiIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiRyIsCiAgICAgICAgICAgICAgICAidiI6ICIvbGV0dGVyL0ciCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIkgiLAogICAgICAgICAgICAgICAgInYiOiAiL2xldHRlci9IIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICJJIiwKICAgICAgICAgICAgICAgICJ2IjogIi9sZXR0ZXIvSSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiSiIsCiAgICAgICAgICAgICAgICAidiI6ICIvbGV0dGVyL0oiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIksiLAogICAgICAgICAgICAgICAgInYiOiAiL2xldHRlci9LIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICJMIiwKICAgICAgICAgICAgICAgICJ2IjogIi9sZXR0ZXIvTCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiTSIsCiAgICAgICAgICAgICAgICAidiI6ICIvbGV0dGVyL00iCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIk4iLAogICAgICAgICAgICAgICAgInYiOiAiL2xldHRlci9OIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICJPIiwKICAgICAgICAgICAgICAgICJ2IjogIi9sZXR0ZXIvTyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiUCIsCiAgICAgICAgICAgICAgICAidiI6ICIvbGV0dGVyL1AiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIlEiLAogICAgICAgICAgICAgICAgInYiOiAiL2xldHRlci9RIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICJSIiwKICAgICAgICAgICAgICAgICJ2IjogIi9sZXR0ZXIvUiIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiUyIsCiAgICAgICAgICAgICAgICAidiI6ICIvbGV0dGVyL1MiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIlQiLAogICAgICAgICAgICAgICAgInYiOiAiL2xldHRlci9UIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICJVIiwKICAgICAgICAgICAgICAgICJ2IjogIi9sZXR0ZXIvVSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiViIsCiAgICAgICAgICAgICAgICAidiI6ICIvbGV0dGVyL1YiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIlciLAogICAgICAgICAgICAgICAgInYiOiAiL2xldHRlci9XIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICJYIiwKICAgICAgICAgICAgICAgICJ2IjogIi9sZXR0ZXIvWCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiWSIsCiAgICAgICAgICAgICAgICAidiI6ICIvbGV0dGVyL1kiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIloiLAogICAgICAgICAgICAgICAgInYiOiAiL2xldHRlci9aIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIwLTkiLAogICAgICAgICAgICAgICAgInYiOiAiL2xldHRlci8wLTkiCiAgICAgICAgICAgIH1dCiAgICAgICAgfSwgewogICAgICAgICAgICAia2V5IjogImJ5IiwKICAgICAgICAgICAgIm5hbWUiOiAi5o6S5bqPIiwKICAgICAgICAgICAgInZhbHVlIjogW3sKICAgICAgICAgICAgICAgICJuIjogIuaXtumXtCIsCiAgICAgICAgICAgICAgICAidiI6ICIvYnkvdGltZSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5Lq65rCUIiwKICAgICAgICAgICAgICAgICJ2IjogIi9ieS9oaXRzIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLor4TliIYiLAogICAgICAgICAgICAgICAgInYiOiAiL2J5L3Njb3JlIgogICAgICAgICAgICB9XQogICAgICAgIH1dCiAgICB9LAogICAgZmlsdGVyX2RlZjogewogICAgICAgIGRpYW55aW5nOiB7CiAgICAgICAgICAgIGNhdGVJZDogImRpYW55aW5nIgogICAgICAgIH0sCiAgICAgICAgZGlhbnNoaWp1OiB7CiAgICAgICAgICAgIGNhdGVJZDogImRpYW5zaGlqdSIKICAgICAgICB9LAogICAgICAgIHpvbmd5aTogewogICAgICAgICAgICBjYXRlSWQ6ICJ6b25neWkiCiAgICAgICAgfSwKICAgICAgICBkb25nbW5hOiB7CiAgICAgICAgICAgIGNhdGVJZDogImRvbmdtbmEiCiAgICAgICAgfSwKICAgICAgICBqaWx1cGlhbjogewogICAgICAgICAgICBjYXRlSWQ6ICJqaWx1cGlhbiIKICAgICAgICB9LAogICAgfSwKICAgIGNsYXNzX25hbWU6ICLnlLXlvbEm5Ymn6ZuGJuWKqOa8qybnu7zoibom6K6w5b2V54mHIiwKICAgIGNsYXNzX3VybDogImRpYW55aW5nJmRpYW5zaGlqdSZkb25nbW5hJnpvbmd5aSZqaWx1cGlhbiIsCiAgICBoZWFkZXJzOiB7CiAgICAgICAgIlVzZXItQWdlbnQiOiAiTW96aWxsYS81LjAgKFdpbmRvd3MgTlQgMTAuMDsgV2luNjQ7IHg2NCkgQXBwbGVXZWJLaXQvIgogICAgfSwKICAgIHBsYXlfcGFyc2U6IHRydWUsCiAgICBsYXp5OiBganM6CQoJCXZhciBodG1sID0gSlNPTi5wYXJzZShyZXF1ZXN0KGlucHV0KS5tYXRjaCgvciBwbGF5ZXJfLio/PSguKj8pPC8pWzFdKTsKICAgICAgICB2YXIgdXJsID0gaHRtbC51cmw7CiAgICAgICAgdmFyIGZyb20gPSBodG1sLmZyb207CiAgICAgICAgaWYgKGh0bWwuZW5jcnlwdCA9PSAnMScpIHsKICAgICAgICAgICAgdXJsID0gZGVjb2RlVVJJKHVybCkKICAgICAgICB9IGVsc2UgaWYgKGh0bWwuZW5jcnlwdCA9PSAnMicpIHsKICAgICAgICAgICAgdXJsID0gZGVjb2RlVVJJKGJhc2U2NERlY29kZSh1cmwpKQogICAgICAgIH0KICAgICAgICBpZiAoL1wubTN1OHxcLm1wNC8udGVzdCh1cmwpKSB7CiAgICAgICAgICAgIGlucHV0ID0gdXJsCiAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgdmFyIGN1cnJlbnREYXRlID0gbmV3IERhdGUoKTsKICAgICAgICAgICAgdmFyIHllYXIgPSBjdXJyZW50RGF0ZS5nZXRGdWxsWWVhcigpOwogICAgICAgICAgICB2YXIgbW9udGggPSBTdHJpbmcoY3VycmVudERhdGUuZ2V0TW9udGgoKSArIDEpLnBhZFN0YXJ0KDIsICcwJyk7CiAgICAgICAgICAgIHZhciBkYXkgPSBTdHJpbmcoY3VycmVudERhdGUuZ2V0RGF0ZSgpKS5wYWRTdGFydCgyLCAnMCcpOwogICAgICAgICAgICBjb25zdCB1cmxUaW1lID0geWVhciArIG1vbnRoICsgZGF5OwogICAgICAgICAgICB2YXIgTWFjUGxheWVyQ29uZmlnID0ge307CiAgICAgICAgICAgIGV2YWwoZmV0Y2goSE9TVCArICcvc3RhdGljL2pzL3BsYXllcmNvbmZpZy5qcz90PScgKyB1cmxUaW1lKS5yZXBsYWNlKCd2YXIgTWFjJywgJ01hYycpKTsKICAgICAgICAgICAgdmFyIHBhcnNlVXJsID0gTWFjUGxheWVyQ29uZmlnLnBsYXllcl9saXN0W2Zyb21dLnBhcnNlOwogICAgICAgICAgICBpZiAocGFyc2VVcmwgJiYgcGFyc2VVcmwgIT0gIiIpIHsKCQkJCWxldCAkcGxheVVybCA9ICIiOwoJCQkJaWYocGFyc2VVcmwuc3RhcnRzV2l0aCgiaHR0cCIpKXsKCQkJCQkkcGxheVVybCA9IHBhcnNlVXJsOwoJCQkJfWVsc2V7CgkJCQkJJHBsYXlVcmwgPSBIT1NUICsgcGFyc2VVcmw7CgkJCQl9CiAgICAgICAgICAgICAgICBpbnB1dCA9IHsKICAgICAgICAgICAgICAgICAgICB1cmw6IHVybCwKICAgICAgICAgICAgICAgICAgICBwbGF5VXJsOiAkcGxheVVybCwKICAgICAgICAgICAgICAgICAgICBwYXJzZTogMSwKICAgICAgICAgICAgICAgICAgICBoZWFkZXI6IEpTT04uc3RyaW5naWZ5KHsKICAgICAgICAgICAgICAgICAgICAgICAgJ3VzZXItYWdlbnQnOiAnTW96aWxsYS81LjAnLAogICAgICAgICAgICAgICAgICAgICAgICAnT3JpZ2luJzogaW5wdXQKICAgICAgICAgICAgICAgICAgICB9KQogICAgICAgICAgICAgICAgfQogICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgICAgaW5wdXQgICAgICAgCiAgICAgICAgICAgIH0KICAgICAgICB9CglgLAogICAg5o6o6I2QOiBganM6CiAgICAgICAgbGV0IGQgPSBbXTsKICAgICAgICBwZGZoID0ganNwLnBkZmg7cGRmYSA9IGpzcC5wZGZhO3BkID0ganNwLnBkOwogICAgICAgIGxldCBodG1sID0gcmVxdWVzdChpbnB1dCk7CgkJbGV0IGl0ZW1zID0gcGRmYShodG1sLCAiZGl2Lm1vZHVsZS1pdGVtcyBkaXYubW9kdWxlLWNhcmQtaXRlbSIpOwoJCWZ1bmN0aW9uIHNodWZmbGVBcnJheShhcnJheSkgewogICAgICAgICAgICBmb3IgKGxldCBpID0gYXJyYXkubGVuZ3RoIC0gMTsgaSA+IDA7IGktLSkgewogICAgICAgICAgICAgIGNvbnN0IGogPSBNYXRoLmZsb29yKE1hdGgucmFuZG9tKCkgKiAoaSArIDEpKTsKICAgICAgICAgICAgICBbYXJyYXlbaV0sIGFycmF5W2pdXSA9IFthcnJheVtqXSwgYXJyYXlbaV1dOwogICAgICAgICAgICB9CiAgICAgICAgICAgIHJldHVybiBhcnJheTsKICAgICAgICB9CgkJY29uc3Qgc2h1ZmZsZWRBcnJheSA9IHNodWZmbGVBcnJheShpdGVtcyk7CiAgICAgICAgc2h1ZmZsZWRBcnJheS5mb3JFYWNoKGl0ID0+IHsKICAgICAgICAgICAgZC5wdXNoKHsKCQkJCXVybDpwZGZoKGl0LCJkaXYubW9kdWxlLWNhcmQtaXRlbS10aXRsZSYmYSYmaHJlZiIpLAogICAgICAgICAgICAgICAgdGl0bGU6cGRmaChpdCwiZGl2Lm1vZHVsZS1jYXJkLWl0ZW0tdGl0bGUmJmEmJlRleHQiKSwKICAgICAgICAgICAgICAgIGltZzpwZGZoKGl0LCJkaXYubW9kdWxlLWl0ZW0tcGljJiZpbWcmJmRhdGEtb3JpZ2luYWwiKSwKICAgICAgICAgICAgICAgIGRlc2M6cGRmaChpdCwiZGl2Lm1vZHVsZS1jYXJkLWl0ZW0tY2xhc3MmJlRleHQiKSArICIvIiArIHBkZmgoaXQsImRpdi5tb2R1bGUtaXRlbS1ub3RlJiZUZXh0IikKICAgICAgICAgICAgfSkKICAgICAgICB9KTsKICAgICAgICBzZXRSZXN1bHQoZCk7CiAgICBgLAogICAg5LiA57qnOiBganM6CiAgICAgICAgdmFyIGQgPSBbXTsKICAgICAgICBwZGZoID0ganNwLnBkZmg7cGRmYSA9IGpzcC5wZGZhO3BkID0ganNwLnBkOwogICAgICAgIHZhciBodG1sID0gcmVxdWVzdChpbnB1dCk7CiAgICAgICAgbGV0IGl0ZW1zID0gcGRmYShodG1sLCAiYS5tb2R1bGUtaXRlbSIpOwkJCiAgICAgICAgaXRlbXMuZm9yRWFjaChpdCA9PiB7CiAgICAgICAgICAgIGQucHVzaCh7CiAgICAgICAgICAgICAgICB1cmw6cGRmaChpdCwiYSYmaHJlZiIpLAogICAgICAgICAgICAgICAgdGl0bGU6cGRmaChpdCwiYSYmdGl0bGUiKSwKICAgICAgICAgICAgICAgIGltZzpwZGZoKGl0LCJkaXYubW9kdWxlLWl0ZW0tcGljJiZpbWcmJmRhdGEtb3JpZ2luYWwiKSwKICAgICAgICAgICAgICAgIGRlc2M6cGRmaChpdCwiZGl2Lm1vZHVsZS1pdGVtLW5vdGUmJlRleHQiKQogICAgICAgICAgICB9KQogICAgICAgIH0pOwogICAgICAgIHNldFJlc3VsdChkKQogICAgYCwKICAgIOS6jOe6pzogJGpzLnRvU3RyaW5nKCgpID0+IHsKICAgICAgICBWT0QgPSB7fTsKICAgICAgICBsZXQgaHRtbCA9IHJlcXVlc3QoaW5wdXQpOwogICAgICAgIFZPRC52b2RfbmFtZSA9IHBkZmgoaHRtbCwgImgxJiZUZXh0Iik7CiAgICAgICAgVk9ELnZvZF9waWMgPSBwZChodG1sLCAiLm1vZHVsZS1pdGVtLXBpYyYmaW1nJiZkYXRhLW9yaWdpbmFsIik7CiAgICAgICAgVk9ELnZvZF95ZWFyID0gcGRmaChodG1sLCAiLm1vZHVsZS1pbmZvLXRhZy1saW5rOmVxKDApJiZUZXh0Iik7CiAgICAgICAgVk9ELnZvZF9hcmVhID0gcGRmaChodG1sLCAiLm1vZHVsZS1pbmZvLXRhZy1saW5rOmVxKDEpJiZUZXh0Iik7CiAgICAgICAgVk9ELnR5cGVfbmFtZSA9IHBkZmgoaHRtbCwgIi5tb2R1bGUtaW5mby10YWctbGluazplcSgyKSYmVGV4dCIpOwogICAgICAgIFZPRC52b2RfYWN0b3IgPSBwZGZoKGh0bWwsICIubW9kdWxlLWluZm8taXRlbS1jb250ZW50OmVxKDEpJiZUZXh0Iik7CiAgICAgICAgVk9ELnZvZF9kaXJlY3RvciA9IHBkZmgoaHRtbCwgIi5tb2R1bGUtaW5mby1pdGVtLWNvbnRlbnQ6ZXEoMCkmJlRleHQiKTsKICAgICAgICBWT0Qudm9kX3JlbWFya3MgPSAi5LiN5L+h5bm/5ZGK5bCx5L2g6LWi5LqGIjsKICAgICAgICBWT0Qudm9kX2NvbnRlbnQgPSBwZGZoKGh0bWwsICIubW9kdWxlLWluZm8taW50cm9kdWN0aW9uLWNvbnRlbnQmJlRleHQiKTsKICAgICAgICBpZiAodHlwZW9mIHBsYXlfdXJsID09PSAidW5kZWZpbmVkIikgewogICAgICAgICAgICB2YXIgcGxheV91cmwgPSAiIgogICAgICAgIH0KICAgICAgICBsZXQgcGxheUZyb20gPSBbXTsKICAgICAgICBsZXQgcGxheVVybCA9IFtdOwogICAgICAgIGxldCB0YWJzID0gcGRmYShodG1sLCAiZGl2Lm1vZHVsZS10YWItaXRlbSIpOwogICAgICAgIHRhYnMuZm9yRWFjaCgoaXQsIGluZGV4KSA9PiB7CiAgICAgICAgICAgIHBsYXlGcm9tLnB1c2goJ+irvuS4tOmiqC0nICsgcGRmaChpdCwgJ3NwYW4mJlRleHQnKSArICJbIiArIHBkZmgoaXQsICdzbWFsbCYmVGV4dCcpICsgIl0iKTsKICAgICAgICAgICAgbGV0IHBsYXlUYWcgPSAiZGl2Lm1vZHVsZS1wbGF5LWxpc3Q6ZXEoIiArIGluZGV4ICsgIikgYSI7CiAgICAgICAgICAgIGxldCB0YWdzID0gcGRmYShodG1sLCBwbGF5VGFnKTsKICAgICAgICAgICAgbGV0IG1hcFVybCA9IHRhZ3MubWFwKCh0YWcpID0+IHsKICAgICAgICAgICAgICAgIGxldCB0aXRsZSA9IHBkZmgodGFnLCAiYSYmVGV4dCIpLnRyaW0oKTsKICAgICAgICAgICAgICAgIGxldCBwdXJsID0gcGQodGFnLCAiYSYmaHJlZiIpOwogICAgICAgICAgICAgICAgcmV0dXJuIHRpdGxlICsgIiQiICsgcGxheV91cmwgKyB1cmxlbmNvZGUocHVybCk7CiAgICAgICAgICAgIH0pOwogICAgICAgICAgICBwbGF5VXJsLnB1c2gobWFwVXJsLmpvaW4oIiMiKSkKICAgICAgICB9KTsKICAgICAgICBWT0Qudm9kX3BsYXlfZnJvbSA9IHBsYXlGcm9tLmpvaW4oIiQkJCIpOwogICAgICAgIFZPRC52b2RfcGxheV91cmwgPSBwbGF5VXJsLmpvaW4oIiQkJCIpOwogICAgfSksCiAgICBkb3VibGU6IGZhbHNlLAogICAgc2VhcmNoVXJsOiAiL2luZGV4LnBocC92b2Qvc2VhcmNoL3dkLyoqLmh0bWwiLAogICAg5pCc57SiOiBganM6CiAgICAgICAgdmFyIGQgPSBbXTsKICAgICAgICBwZGZoID0ganNwLnBkZmg7cGRmYSA9IGpzcC5wZGZhO3BkID0ganNwLnBkOwogICAgICAgIHZhciBodG1sID0gcmVxdWVzdChpbnB1dCk7ICAgICAgIAogICAgICAgIGxldCBsaXN0ID0gcGRmYShodG1sLCAiZGl2Lm1vZHVsZS1pdGVtIik7CiAgICAgICAgbGlzdC5mb3JFYWNoKGl0ID0+IHsKICAgICAgICAgICAgZC5wdXNoKHsKICAgICAgICAgICAgICAgIHRpdGxlOiBwZGZoKGl0LCAiZGl2Lm1vZHVsZS1jYXJkLWl0ZW0tdGl0bGUmJlRleHQiKSwKICAgICAgICAgICAgICAgIGRlc2M6IHBkZmgoaXQsICJkaXYubW9kdWxlLWl0ZW0tbm90ZSYmVGV4dCIpLAogICAgICAgICAgICAgICAgcGljX3VybDogcGRmaChpdCwgImRpdi5tb2R1bGUtaXRlbS1waWMmJmltZyYmZGF0YS1vcmlnaW5hbCIpLAogICAgICAgICAgICAgICAgdXJsOiBwZGZoKGl0LCAiZGl2Lm1vZHVsZS1jYXJkLWl0ZW0tdGl0bGUmJmEmJmhyZWYiKQogICAgICAgICAgICB9KQogICAgICAgIH0pOwogICAgICAgIHNldFJlc3VsdChkKQogICAgYAp9Ow== \ No newline at end of file diff --git a/潇洒/movie/js/CJZW.js b/潇洒/movie/js/CJZW.js new file mode 100644 index 00000000..fc8dccc5 --- /dev/null +++ b/潇洒/movie/js/CJZW.js @@ -0,0 +1 @@ +Z2xvYmFsVGhpcy5nZXRSYW5kb21JdGVtID0gZnVuY3Rpb24gKGl0ZW1zKSB7CiAgICByZXR1cm4gaXRlbXNbTWF0aC5yYW5kb20oKSAqIGl0ZW1zLmxlbmd0aCB8IDBdOwp9CnZhciBydWxlID0gewogICAgdGl0bGU6ICfph4fpm4bkuYvnjotb5ZCIXScsCiAgICBhdXRob3I6ICfpgZPplb8nLAogICAgdmVyc2lvbjogJzIwMjQwNzA2IGJldGExNycsCiAgICB1cGRhdGVfaW5mbzogYGAudHJpbSgpLAogICAgaG9zdDogJycsCiAgICBob21lVGlkOiAnJywKICAgIGhvbWVVcmw6ICcvYXBpLnBocC9wcm92aWRlL3ZvZC8/YWM9ZGV0YWlsJnQ9e3tydWxlLmhvbWVUaWR9fScsCiAgICBkZXRhaWxVcmw6ICcvYXBpLnBocC9wcm92aWRlL3ZvZC8/YWM9ZGV0YWlsJmlkcz1meWlkJywKICAgIHNlYXJjaFVybDogJy9hcGkucGhwL3Byb3ZpZGUvdm9kLz93ZD0qKiZwZz0jVHJ1ZVBhZ2UjI3BhZ2U9ZnlwYWdlJywKICAgIGNsYXNzVXJsOiAnL2FwaS5waHAvcHJvdmlkZS92b2QvJywKICAgIHVybDogJy9hcGkucGhwL3Byb3ZpZGUvdm9kLz9hYz1kZXRhaWwmcGc9ZnlwYWdlJnQ9ZnlmaWx0ZXInLAogICAgZmlsdGVyX3VybDogJ3t7Zmwu57G75Z6LfX0nLAogICAgaGVhZGVyczogewogICAgICAgICdVc2VyLUFnZW50JzogJ01PQklMRV9VQScKICAgIH0sCiAgICB0aW1lb3V0OiA1MDAwLAogICAgbGltaXQ6IDIwLAogICAgc2VhcmNoX2xpbWl0OiAxMCwKICAgIHNlYXJjaGFibGU6IDEsCiAgICBxdWlja1NlYXJjaDogMCwKICAgIGZpbHRlcmFibGU6IDEsCiAgICBwbGF5X3BhcnNlOiB0cnVlLAogICAgcGFyc2VfdXJsOiAnJywKICAgIHNlYXJjaF9tYXRjaDogZmFsc2UsCiAgICBzZWFyY2hfcGljOiB0cnVlLAogICAg6aKE5aSE55CGOiAkanMudG9TdHJpbmcoKCkgPT4gewogICAgICAgIGZ1bmN0aW9uIGdldENsYXNzZXMoaXRlbSkgewogICAgICAgICAgICBsZXQgY2xhc3NlcyA9IFtdOwogICAgICAgICAgICBpZiAoaXRlbS5jbGFzc19uYW1lICYmIGl0ZW0uY2xhc3NfdXJsKSB7CiAgICAgICAgICAgICAgICBpZiAoIS8mfOeUteW9sXznlLXop4bliad857u86Im6fOWKqOa8q1tcdTRFMDAtXHU5RkE1XSsvLnRlc3QoaXRlbS5jbGFzc19uYW1lKSkgewogICAgICAgICAgICAgICAgICAgIHRyeSB7CiAgICAgICAgICAgICAgICAgICAgICAgIGl0ZW0uY2xhc3NfbmFtZSA9IHVuZ3ppcChpdGVtLmNsYXNzX25hbWUpCiAgICAgICAgICAgICAgICAgICAgfSBjYXRjaCAoZSkgewogICAgICAgICAgICAgICAgICAgICAgICBsb2coYOS4jeivhuWIq+eahGNsYXNzX25hbWXlr7zoh7Rnemlw6Kej56CB5aSx6LSlOiR7ZX1gKQogICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gY2xhc3NlcwogICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgIGxldCBuYW1lcyA9IGl0ZW0uY2xhc3NfbmFtZS5zcGxpdCgnJicpOwogICAgICAgICAgICAgICAgbGV0IHVybHMgPSBpdGVtLmNsYXNzX3VybC5zcGxpdCgnJicpOwogICAgICAgICAgICAgICAgbGV0IGNudCA9IE1hdGgubWluKG5hbWVzLmxlbmd0aCwgdXJscy5sZW5ndGgpOwogICAgICAgICAgICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCBjbnQ7IGkrKykgewogICAgICAgICAgICAgICAgICAgIGNsYXNzZXMucHVzaCh7CiAgICAgICAgICAgICAgICAgICAgICAgICd0eXBlX2lkJzogdXJsc1tpXSwKICAgICAgICAgICAgICAgICAgICAgICAgJ3R5cGVfbmFtZSc6IG5hbWVzW2ldCiAgICAgICAgICAgICAgICAgICAgfSk7CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0KICAgICAgICAgICAgcmV0dXJuIGNsYXNzZXMKICAgICAgICB9CiAgICAgICAgaWYgKHR5cGVvZihiYXRjaEZldGNoKSA9PT0gJ2Z1bmN0aW9uJykgewogICAgICAgICAgICBydWxlLnNlYXJjaF9saW1pdCA9IDE2OwogICAgICAgICAgICBsb2coJ+W9k+WJjeeoi+W6j+aUr+aMgeaJuemHj+ivt+axgltiYXRjaEZldGNoXSzmkJzntKLpmZDliLblt7Lorr7nva7kuLoxNicpOwogICAgICAgIH0KICAgICAgICBsZXQgX3VybCA9IHJ1bGUucGFyYW1zOwogICAgICAgIGxvZyhg5Lyg5YWl5Y+C5pWwOiR7X3VybH1gKTsKICAgICAgICBpZiAoX3VybCAmJiB0eXBlb2YoX3VybCkgPT09ICdzdHJpbmcnICYmIC9eKGh0dHB8ZmlsZSkvLnRlc3QoX3VybCkpIHsKICAgICAgICAgICAgaWYgKF91cmwuaW5jbHVkZXMoJyQnKSkgewogICAgICAgICAgICAgICAgbGV0IF91cmxfcGFyYW1zID0gX3VybC5zcGxpdCgnJCcpOwogICAgICAgICAgICAgICAgX3VybCA9IF91cmxfcGFyYW1zWzBdOwogICAgICAgICAgICAgICAgcnVsZS5zZWFyY2hfbWF0Y2ggPSAhIShfdXJsX3BhcmFtc1sxXSk7CiAgICAgICAgICAgICAgICBpZiAoX3VybF9wYXJhbXMubGVuZ3RoID4gMikgewogICAgICAgICAgICAgICAgICAgIHJ1bGUuc2VhcmNoX3BpYyA9ICEhKF91cmxfcGFyYW1zWzJdKTsKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgfQogICAgICAgICAgICBsZXQgaHRtbCA9IHJlcXVlc3QoX3VybCk7CiAgICAgICAgICAgIGxldCBqc29uID0gSlNPTi5wYXJzZShodG1sKTsKICAgICAgICAgICAgbGV0IF9jbGFzc2VzID0gW107CiAgICAgICAgICAgIHJ1bGUuZmlsdGVyID0ge307CiAgICAgICAgICAgIHJ1bGUuZmlsdGVyX2RlZiA9IHt9OwogICAgICAgICAgICBqc29uLmZvckVhY2goaXQgPT4gewogICAgICAgICAgICAgICAgbGV0IF9vYmogPSB7CiAgICAgICAgICAgICAgICAgICAgdHlwZV9uYW1lOiBpdC5uYW1lLAogICAgICAgICAgICAgICAgICAgIHR5cGVfaWQ6IGl0LnVybCwKICAgICAgICAgICAgICAgICAgICBwYXJzZV91cmw6IGl0LnBhcnNlX3VybCB8fCAnJywKICAgICAgICAgICAgICAgICAgICBzZWFyY2hhYmxlOiBpdC5zZWFyY2hhYmxlICE9PSAwLAogICAgICAgICAgICAgICAgICAgIGFwaTogaXQuYXBpIHx8ICcnLAogICAgICAgICAgICAgICAgICAgIGNhdGVfZXhjbHVkZTogaXQuY2F0ZV9leGNsdWRlIHx8ICcnLAogICAgICAgICAgICAgICAgICAgIGNhdGVfZXhjbHVkZXM6IGl0LmNhdGVfZXhjbHVkZXMgfHwgW10sCiAgICAgICAgICAgICAgICB9OwogICAgICAgICAgICAgICAgX2NsYXNzZXMucHVzaChfb2JqKTsKICAgICAgICAgICAgICAgIHRyeSB7CiAgICAgICAgICAgICAgICAgICAgbGV0IGpzb24xID0gW107CiAgICAgICAgICAgICAgICAgICAgaWYgKGl0LmNsYXNzX25hbWUgJiYgaXQuY2xhc3NfdXJsKSB7CiAgICAgICAgICAgICAgICAgICAgICAgIGpzb24xID0gZ2V0Q2xhc3NlcyhpdCk7CiAgICAgICAgICAgICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgICAgICAgICAgICAganNvbjEgPSBKU09OLnBhcnNlKHJlcXVlc3QodXJsam9pbihfb2JqLnR5cGVfaWQsIF9vYmouYXBpIHx8IHJ1bGUuY2xhc3NVcmwpKSkuY2xhc3M7CiAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgIGlmIChfb2JqLmNhdGVfZXhjbHVkZXMgJiYgQXJyYXkuaXNBcnJheShfb2JqLmNhdGVfZXhjbHVkZXMpICYmIF9vYmouY2F0ZV9leGNsdWRlcy5sZW5ndGggPiAwKSB7CiAgICAgICAgICAgICAgICAgICAgICAgIGpzb24xID0ganNvbjEuZmlsdGVyKGNsID0+ICFfb2JqLmNhdGVfZXhjbHVkZXMuaW5jbHVkZXMoY2wudHlwZV9uYW1lKSk7CiAgICAgICAgICAgICAgICAgICAgfSBlbHNlIGlmIChfb2JqLmNhdGVfZXhjbHVkZSkgewogICAgICAgICAgICAgICAgICAgICAgICBqc29uMSA9IGpzb24xLmZpbHRlcihjbCA9PiAhbmV3IFJlZ0V4cChfb2JqLmNhdGVfZXhjbHVkZSwgJ2knKS50ZXN0KGNsLnR5cGVfbmFtZSkpOwogICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgICBydWxlLmZpbHRlcltfb2JqLnR5cGVfaWRdID0gW3sKICAgICAgICAgICAgICAgICAgICAgICAgICAgICJrZXkiOiAi57G75Z6LIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICJuYW1lIjogIuexu+WeiyIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAidmFsdWUiOiBqc29uMS5tYXAoaSA9PiB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIm4iOiBpLnR5cGVfbmFtZSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJ3YnOiBpLnR5cGVfaWQKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9KQogICAgICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgXTsKICAgICAgICAgICAgICAgICAgICBpZiAoanNvbjEubGVuZ3RoID4gMCkgewogICAgICAgICAgICAgICAgICAgICAgICBydWxlLmZpbHRlcl9kZWZbaXQudXJsXSA9IHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICLnsbvlnosiOiBqc29uMVswXS50eXBlX2lkCiAgICAgICAgICAgICAgICAgICAgICAgIH07CiAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgfSBjYXRjaCAoZSkgewogICAgICAgICAgICAgICAgICAgIHJ1bGUuZmlsdGVyW2l0LnVybF0gPSBbewogICAgICAgICAgICAgICAgICAgICAgICAgICAgImtleSI6ICLnsbvlnosiLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgIm5hbWUiOiAi57G75Z6LIiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ2YWx1ZSI6IFt7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJuIjogIuWFqOmDqCIsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICJ2IjogIiIKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBdCiAgICAgICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgICBdOwogICAgICAgICAgICAgICAgfQogICAgICAgICAgICB9KTsKICAgICAgICAgICAgcnVsZS5jbGFzc2VzID0gX2NsYXNzZXM7CiAgICAgICAgfQogICAgfSksCiAgICBjbGFzc19wYXJzZTogJGpzLnRvU3RyaW5nKCgpID0+IHsKICAgICAgICBpbnB1dCA9IHJ1bGUuY2xhc3NlczsKICAgIH0pLAogICAg5o6o6I2QOiAkanMudG9TdHJpbmcoKCkgPT4gewogICAgICAgIFZPRFMgPSBbXTsKICAgICAgICBpZiAocnVsZS5jbGFzc2VzKSB7CiAgICAgICAgICAgIGxldCByYW5kb21DbGFzcyA9IGdldFJhbmRvbUl0ZW0ocnVsZS5jbGFzc2VzKTsKICAgICAgICAgICAgbGV0IF91cmwgPSB1cmxqb2luKHJhbmRvbUNsYXNzLnR5cGVfaWQsIGlucHV0KTsKICAgICAgICAgICAgaWYgKHJhbmRvbUNsYXNzLmFwaSkgewogICAgICAgICAgICAgICAgX3VybCA9IF91cmwucmVwbGFjZSgnL2FwaS5waHAvcHJvdmlkZS92b2QvJywgcmFuZG9tQ2xhc3MuYXBpKQogICAgICAgICAgICB9CiAgICAgICAgICAgIHRyeSB7CiAgICAgICAgICAgICAgICBsZXQgaHRtbCA9IHJlcXVlc3QoX3VybCwgewogICAgICAgICAgICAgICAgICAgIHRpbWVvdXQ6IHJ1bGUudGltZW91dAogICAgICAgICAgICAgICAgfSk7CiAgICAgICAgICAgICAgICBsZXQganNvbiA9IEpTT04ucGFyc2UoaHRtbCk7CiAgICAgICAgICAgICAgICBWT0RTID0ganNvbi5saXN0OwogICAgICAgICAgICAgICAgVk9EUy5mb3JFYWNoKGl0ID0+IHsKICAgICAgICAgICAgICAgICAgICBpdC52b2RfaWQgPSByYW5kb21DbGFzcy50eXBlX2lkICsgJyQnICsgaXQudm9kX2lkOwogICAgICAgICAgICAgICAgICAgIGl0LnZvZF9yZW1hcmtzID0gaXQudm9kX3JlbWFya3MgKyAnfCcgKyByYW5kb21DbGFzcy50eXBlX25hbWU7CiAgICAgICAgICAgICAgICB9KTsKICAgICAgICAgICAgfSBjYXRjaCAoZSkge30KICAgICAgICB9CiAgICB9KSwKICAgIOS4gOe6pzogJGpzLnRvU3RyaW5nKCgpID0+IHsKICAgICAgICBWT0RTID0gW107CiAgICAgICAgaWYgKHJ1bGUuY2xhc3NlcykgewogICAgICAgICAgICBsZXQgX3VybCA9IHVybGpvaW4oTVlfQ0FURSwgaW5wdXQpOwogICAgICAgICAgICBsZXQgY3VycmVudF92b2QgPSBydWxlLmNsYXNzZXMuZmluZChpdGVtID0+IGl0ZW0udHlwZV9pZCA9PT0gTVlfQ0FURSk7CiAgICAgICAgICAgIGlmIChjdXJyZW50X3ZvZCAmJiBjdXJyZW50X3ZvZC5hcGkpIHsKICAgICAgICAgICAgICAgIF91cmwgPSBfdXJsLnJlcGxhY2UoJy9hcGkucGhwL3Byb3ZpZGUvdm9kLycsIGN1cnJlbnRfdm9kLmFwaSkKICAgICAgICAgICAgfQogICAgICAgICAgICBsZXQgaHRtbCA9IHJlcXVlc3QoX3VybCk7CiAgICAgICAgICAgIGxldCBqc29uID0gSlNPTi5wYXJzZShodG1sKTsKICAgICAgICAgICAgVk9EUyA9IGpzb24ubGlzdDsKICAgICAgICAgICAgVk9EUy5mb3JFYWNoKGl0ID0+IHsKICAgICAgICAgICAgICAgIGl0LnZvZF9pZCA9IE1ZX0NBVEUgKyAnJCcgKyBpdC52b2RfaWQKICAgICAgICAgICAgfSk7CiAgICAgICAgfQogICAgfSksCiAgICDkuoznuqc6ICRqcy50b1N0cmluZygoKSA9PiB7CiAgICAgICAgVk9EID0ge307CiAgICAgICAgaWYgKG9ySWQgPT09ICd1cGRhdGVfaW5mbycpIHsKICAgICAgICAgICAgVk9EID0gewogICAgICAgICAgICAgICAgdm9kX2NvbnRlbnQ6IHJ1bGUudXBkYXRlX2luZm8udHJpbSgpLAogICAgICAgICAgICAgICAgdm9kX25hbWU6ICfmm7TmlrDml6Xlv5cnLAogICAgICAgICAgICAgICAgdHlwZV9uYW1lOiAn5pu05paw5pel5b+XJywKICAgICAgICAgICAgICAgIHZvZF9waWM6ICdodHRwczovL3Jlc291cmNlLWNkbi50dXhpYW9iZWkuY29tL3ZpZGVvL0Z0V2hzMm1ld1hfN25FdUU1MV9rNnp2ZzZhd2wucG5nJywKICAgICAgICAgICAgICAgIHZvZF9yZW1hcmtzOiBg54mI5pysOiR7cnVsZS52ZXJzaW9ufWAsCiAgICAgICAgICAgICAgICB2b2RfcGxheV9mcm9tOiAn6YGT6ZW/5Zyo57q/JywKICAgICAgICAgICAgICAgIHZvZF9wbGF5X3VybDogJ+maj+acuuWwj+inhumikSRodHRwOi8vYXBpLnl1am4uY24vYXBpL3p6eGpqLnBocCcsCiAgICAgICAgICAgIH07CiAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgaWYgKHJ1bGUuY2xhc3NlcykgewogICAgICAgICAgICAgICAgbGV0IF91cmwgPSB1cmxqb2luKGZ5Y2xhc3MsIGlucHV0KTsKICAgICAgICAgICAgICAgIGxldCBjdXJyZW50X3ZvZCA9IHJ1bGUuY2xhc3Nlcy5maW5kKGl0ZW0gPT4gaXRlbS50eXBlX2lkID09PSBmeWNsYXNzKTsKICAgICAgICAgICAgICAgIGlmIChjdXJyZW50X3ZvZCAmJiBjdXJyZW50X3ZvZC5hcGkpIHsKICAgICAgICAgICAgICAgICAgICBfdXJsID0gX3VybC5yZXBsYWNlKCcvYXBpLnBocC9wcm92aWRlL3ZvZC8nLCBjdXJyZW50X3ZvZC5hcGkpCiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICBsZXQgaHRtbCA9IHJlcXVlc3QoX3VybCk7CiAgICAgICAgICAgICAgICBsZXQganNvbiA9IEpTT04ucGFyc2UoaHRtbCk7CiAgICAgICAgICAgICAgICBsZXQgZGF0YSA9IGpzb24ubGlzdDsKICAgICAgICAgICAgICAgIFZPRCA9IGRhdGFbMF07CiAgICAgICAgICAgICAgICBpZiAoY3VycmVudF92b2QgJiYgY3VycmVudF92b2QudHlwZV9uYW1lKSB7CiAgICAgICAgICAgICAgICAgICAgVk9ELnZvZF9wbGF5X2Zyb20gPSBWT0Qudm9kX3BsYXlfZnJvbS5zcGxpdCgnJCQkJykubWFwKGl0ID0+IGN1cnJlbnRfdm9kLnR5cGVfbmFtZSArICd8JyArIGl0KS5qb2luKCckJCQnKQogICAgICAgICAgICAgICAgfQogICAgICAgICAgICB9CiAgICAgICAgfQogICAgfSksCiAgICDmkJzntKI6ICRqcy50b1N0cmluZygoKSA9PiB7CiAgICAgICAgVk9EUyA9IFtdOwogICAgICAgIGlmIChydWxlLmNsYXNzZXMpIHsKICAgICAgICAgICAgbGV0IGNhblNlYXJjaCA9IHJ1bGUuY2xhc3Nlcy5maWx0ZXIoaXQgPT4gaXQuc2VhcmNoYWJsZSk7CiAgICAgICAgICAgIGxldCBwYWdlID0gTnVtYmVyKE1ZX1BBR0UpOwogICAgICAgICAgICBwYWdlID0gKE1ZX1BBR0UgLSAxKSAlIE1hdGguY2VpbChjYW5TZWFyY2gubGVuZ3RoIC8gcnVsZS5zZWFyY2hfbGltaXQpICsgMTsKICAgICAgICAgICAgbGV0IHRydWVQYWdlID0gTWF0aC5jZWlsKE1ZX1BBR0UgLyBNYXRoLmNlaWwoY2FuU2VhcmNoLmxlbmd0aCAvIHJ1bGUuc2VhcmNoX2xpbWl0KSk7CiAgICAgICAgICAgIGlmIChydWxlLnNlYXJjaF9saW1pdCkgewogICAgICAgICAgICAgICAgbGV0IHN0YXJ0ID0gKHBhZ2UgLSAxKSAqIHJ1bGUuc2VhcmNoX2xpbWl0OwogICAgICAgICAgICAgICAgbGV0IGVuZCA9IHBhZ2UgKiBydWxlLnNlYXJjaF9saW1pdDsKICAgICAgICAgICAgICAgIGxldCB0MSA9IG5ldyBEYXRlKCkuZ2V0VGltZSgpOwogICAgICAgICAgICAgICAgbGV0IHNlYXJjaE1vZGUgPSB0eXBlb2YoYmF0Y2hGZXRjaCkgPT09ICdmdW5jdGlvbicgPyAn5om56YePJyA6ICfljZXkuKonOwogICAgICAgICAgICAgICAgbG9nKCdzdGFydDonICsgc3RhcnQpOwogICAgICAgICAgICAgICAgbG9nKCdlbmQ6JyArIGVuZCk7CiAgICAgICAgICAgICAgICBsb2coJ+aQnOe0ouaooeW8jzonICsgc2VhcmNoTW9kZSk7CiAgICAgICAgICAgICAgICBsb2coJ+eyvuWHhuaQnOe0ojonICsgcnVsZS5zZWFyY2hfbWF0Y2gpOwogICAgICAgICAgICAgICAgbG9nKCflvLrliLbojrflj5blm77niYc6JyArIHJ1bGUuc2VhcmNoX3BpYyk7CiAgICAgICAgICAgICAgICBpZiAoc3RhcnQgPCBjYW5TZWFyY2gubGVuZ3RoKSB7CiAgICAgICAgICAgICAgICAgICAgbGV0IHNlYXJjaF9jbGFzc2VzID0gY2FuU2VhcmNoLnNsaWNlKHN0YXJ0LCBlbmQpOwogICAgICAgICAgICAgICAgICAgIGxldCB1cmxzID0gW107CiAgICAgICAgICAgICAgICAgICAgc2VhcmNoX2NsYXNzZXMuZm9yRWFjaChpdCA9PiB7CiAgICAgICAgICAgICAgICAgICAgICAgIGxldCBfdXJsID0gdXJsam9pbihpdC50eXBlX2lkLCBpbnB1dCk7CiAgICAgICAgICAgICAgICAgICAgICAgIGlmIChpdC5hcGkpIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIF91cmwgPSBfdXJsLnJlcGxhY2UoJy9hcGkucGhwL3Byb3ZpZGUvdm9kLycsIGl0LmFwaSkKICAgICAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgICAgICBfdXJsID0gX3VybC5yZXBsYWNlKCIjVHJ1ZVBhZ2UjIiwgIiIgKyB0cnVlUGFnZSk7CiAgICAgICAgICAgICAgICAgICAgICAgIHVybHMucHVzaChfdXJsKTsKICAgICAgICAgICAgICAgICAgICB9KTsKICAgICAgICAgICAgICAgICAgICBsZXQgcmVzdWx0c19saXN0ID0gW107CiAgICAgICAgICAgICAgICAgICAgbGV0IHJlc3VsdHMgPSBbXTsKICAgICAgICAgICAgICAgICAgICBpZiAodHlwZW9mKGJhdGNoRmV0Y2gpID09PSAnZnVuY3Rpb24nKSB7CiAgICAgICAgICAgICAgICAgICAgICAgIGxldCByZXFVcmxzID0gdXJscy5tYXAoaXQgPT4gewogICAgICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1cmw6IGl0LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIG9wdGlvbnM6IHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGltZW91dDogcnVsZS50aW1lb3V0CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgICAgICB9KTsKICAgICAgICAgICAgICAgICAgICAgICAgbGV0IHJldHMgPSBiYXRjaEZldGNoKHJlcVVybHMpOwogICAgICAgICAgICAgICAgICAgICAgICBsZXQgZGV0YWlsVXJscyA9IFtdOwogICAgICAgICAgICAgICAgICAgICAgICBsZXQgZGV0YWlsVXJsQ291bnQgPSAwOwogICAgICAgICAgICAgICAgICAgICAgICByZXRzLmZvckVhY2goKHJldCwgaWR4KSA9PiB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBsZXQgaXQgPSBzZWFyY2hfY2xhc3Nlc1tpZHhdOwogICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgKHJldCkgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRyeSB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxldCBqc29uID0gSlNPTi5wYXJzZShyZXQpOwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsZXQgZGF0YSA9IGpzb24ubGlzdDsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGF0YS5mb3JFYWNoKGkgPT4gewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaS5zaXRlX25hbWUgPSBpdC50eXBlX25hbWU7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpLnZvZF9pZCA9IGl0LnR5cGVfaWQgKyAnJCcgKyBpLnZvZF9pZDsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGkudm9kX3JlbWFya3MgPSBpLnZvZF9yZW1hcmtzICsgJ3wnICsgaXQudHlwZV9uYW1lOwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9KTsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgKHJ1bGUuc2VhcmNoX21hdGNoKSB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkYXRhID0gZGF0YS5maWx0ZXIoaXRlbSA9PiBpdGVtLnZvZF9uYW1lICYmIChuZXcgUmVnRXhwKEtFWSwgJ2knKSkudGVzdChpdGVtLnZvZF9uYW1lKSkKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZiAoZGF0YS5sZW5ndGggPiAwKSB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZiAocnVsZS5zZWFyY2hfcGljICYmICFkYXRhWzBdLnZvZF9waWMpIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsb2coYOW9k+WJjeaQnOe0ouermeeCueOAkCR7aXQudHlwZV9uYW1lfeOAkeayoeWbvueJhyzlsJ3or5Xorr/pl67kuoznuqfljrvojrflj5blm77niYdgKTsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsZXQgZGV0YWlsVXJsID0gdXJsc1tpZHhdLnNwbGl0KCd3ZD0nKVswXSArICdhYz1kZXRhaWwmaWRzPScgKyBkYXRhLm1hcChrID0+IGsudm9kX2lkLnNwbGl0KCckJylbMV0pLmpvaW4oJywnKTsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkZXRhaWxVcmxzLnB1c2goZGV0YWlsVXJsKTsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXN1bHRzX2xpc3QucHVzaCh7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRhdGE6IGRhdGEsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhhc19waWM6IGZhbHNlLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkZXRhaWxVcmxDb3VudDogZGV0YWlsVXJsQ291bnQKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9KTsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkZXRhaWxVcmxDb3VudCsrOwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXN1bHRzX2xpc3QucHVzaCh7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRhdGE6IGRhdGEsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGhhc19waWM6IHRydWUKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9KTsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0gY2F0Y2ggKGUpIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbG9nKGDor7fmsYI6JHtpdC50eXBlX2lkfeWPkeeUn+mUmeivrzoke2UubWVzc2FnZX1gKQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgICAgICAgfSk7CiAgICAgICAgICAgICAgICAgICAgICAgIGxldCByZXFVcmxzMiA9IGRldGFpbFVybHMubWFwKGl0ID0+IHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJldHVybiB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdXJsOiBpdCwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBvcHRpb25zOiB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRpbWVvdXQ6IHJ1bGUudGltZW91dAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgICAgICAgfSk7CiAgICAgICAgICAgICAgICAgICAgICAgIGxldCByZXRzMiA9IHJlcVVybHMyLmxlbmd0aCA+IDAgPyBiYXRjaEZldGNoKHJlcVVybHMyKSA6IFtdOwogICAgICAgICAgICAgICAgICAgICAgICBmb3IgKGxldCBrID0gMDsgayA8IHJlc3VsdHNfbGlzdC5sZW5ndGg7IGsrKykgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgbGV0IHJlc3VsdF9kYXRhID0gcmVzdWx0c19saXN0W2tdLmRhdGE7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZiAoIXJlc3VsdHNfbGlzdFtrXS5oYXNfcGljKSB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdHJ5IHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbGV0IGRldGFpbEpzb24gPSBKU09OLnBhcnNlKHJldHMyW3Jlc3VsdHNfbGlzdFtrXS5kZXRhaWxVcmxDb3VudF0pOwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsb2coJ+S6jOe6p+aVsOaNruWIl+ihqOWFg+e0oOaVsDonICsgZGV0YWlsSnNvbi5saXN0Lmxlbmd0aCk7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJlc3VsdF9kYXRhLmZvckVhY2goKGQsIF9zZXEpID0+IHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxldCBkZXRhaWxWb2RQaWMgPSBkZXRhaWxKc29uLmxpc3QuZmluZCh2b2QgPT4gdm9kLnZvZF9pZC50b1N0cmluZygpID09PSBkLnZvZF9pZC5zcGxpdCgnJCcpWzFdKTsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmIChkZXRhaWxWb2RQaWMpIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBPYmplY3QuYXNzaWduKGQsIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdm9kX3BpYzogZGV0YWlsVm9kUGljLnZvZF9waWMKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9KTsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSk7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSBjYXRjaCAoZSkgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsb2coYOW8uuWItuiOt+WPlue9keermSR7cmVzdWx0X2RhdGFbMF0uc2l0ZV9uYW1lfeeahOaQnOe0ouWbvueJh+Wksei0pToke2UubWVzc2FnZX1gKTsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXN1bHRzID0gcmVzdWx0cy5jb25jYXQocmVzdWx0X2RhdGEpOwogICAgICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgICAgICAgICAgICAgdXJscy5mb3JFYWNoKChfdXJsLCBpZHgpID0+IHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxldCBpdCA9IHNlYXJjaF9jbGFzc2VzW2lkeF07CiAgICAgICAgICAgICAgICAgICAgICAgICAgICB0cnkgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxldCBodG1sID0gcmVxdWVzdChfdXJsKTsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsZXQganNvbiA9IEpTT04ucGFyc2UoaHRtbCk7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbGV0IGRhdGEgPSBqc29uLmxpc3Q7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGF0YS5mb3JFYWNoKGkgPT4gewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpLnZvZF9pZCA9IGl0LnR5cGVfaWQgKyAnJCcgKyBpLnZvZF9pZDsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaS52b2RfcmVtYXJrcyA9IGkudm9kX3JlbWFya3MgKyAnfCcgKyBpdC50eXBlX25hbWU7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSk7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgKHJ1bGUuc2VhcmNoX21hdGNoKSB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRhdGEgPSBkYXRhLmZpbHRlcihpdGVtID0+IGl0ZW0udm9kX25hbWUgJiYgKG5ldyBSZWdFeHAoS0VZLCAnaScpKS50ZXN0KGl0ZW0udm9kX25hbWUpKQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZiAoZGF0YS5sZW5ndGggPiAwKSB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmIChydWxlLnNlYXJjaF9waWMgJiYgIWRhdGFbMF0udm9kX3BpYykgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbG9nKGDlvZPliY3mkJzntKLnq5nngrnjgJAke2l0LnR5cGVfbmFtZX3jgJHmsqHlm77niYcs5bCd6K+V6K6/6Zeu5LqM57qn5Y676I635Y+W5Zu+54mHYCk7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsZXQgZGV0YWlsVXJsID0gdXJsc1tpZHhdLnNwbGl0KCd3ZD0nKVswXSArICdhYz1kZXRhaWwmaWRzPScgKyBkYXRhLm1hcChrID0+IGsudm9kX2lkLnNwbGl0KCckJylbMV0pLmpvaW4oJywnKTsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRyeSB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbGV0IGRldGFpbEpzb24gPSBKU09OLnBhcnNlKHJlcXVlc3QoZGV0YWlsVXJsKSk7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbG9nKCfkuoznuqfmlbDmja7liJfooajlhYPntKDmlbA6JyArIGRldGFpbEpzb24ubGlzdC5sZW5ndGgpOwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRhdGEuZm9yRWFjaCgoZCwgX3NlcSkgPT4gewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsZXQgZGV0YWlsVm9kUGljID0gZGV0YWlsSnNvbi5saXN0LmZpbmQodm9kID0+IHZvZC52b2RfaWQudG9TdHJpbmcoKSA9PT0gZC52b2RfaWQuc3BsaXQoJyQnKVsxXSk7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmIChkZXRhaWxWb2RQaWMpIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIE9iamVjdC5hc3NpZ24oZCwgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZvZF9waWM6IGRldGFpbFZvZFBpYy52b2RfcGljCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB9KTsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0pOwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfSBjYXRjaCAoZSkgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxvZyhg5by65Yi26I635Y+W572R56uZJHtpdC50eXBlX2lkfeeahOaQnOe0ouWbvueJh+Wksei0pToke2UubWVzc2FnZX1gKTsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICByZXN1bHRzID0gcmVzdWx0cy5jb25jYXQoZGF0YSk7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHJlc3VsdHMgPSByZXN1bHRzLmNvbmNhdChkYXRhKTsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0gY2F0Y2ggKGUpIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBsb2coYOivt+axgjoke2l0LnR5cGVfaWR95Y+R55Sf6ZSZ6K+vOiR7ZS5tZXNzYWdlfWApCiAgICAgICAgICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgICAgIH0pOwogICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgICBWT0RTID0gcmVzdWx0czsKICAgICAgICAgICAgICAgICAgICBsZXQgdDIgPSBuZXcgRGF0ZSgpLmdldFRpbWUoKTsKICAgICAgICAgICAgICAgICAgICBsb2coYCR7c2VhcmNoTW9kZX3mkJzntKI6JHt1cmxzLmxlbmd0aH3kuKrnq5nogJfml7Y6JHsoTnVtYmVyKHQyKSAtIE51bWJlcih0MSkpfW1zYCkKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgfQogICAgICAgIH0KICAgIH0pLAogICAgbGF6eTogJGpzLnRvU3RyaW5nKCgpID0+IHsKICAgICAgICBsZXQgcGFyc2VfdXJsID0gJyc7CiAgICAgICAgaWYgKGZsYWcgJiYgZmxhZy5pbmNsdWRlcygnfCcpKSB7CiAgICAgICAgICAgIGxldCB0eXBlX25hbWUgPSBmbGFnLnNwbGl0KCd8JylbMF07CiAgICAgICAgICAgIGxldCBjdXJyZW50X3ZvZCA9IHJ1bGUuY2xhc3Nlcy5maW5kKGl0ZW0gPT4gaXRlbS50eXBlX25hbWUgPT09IHR5cGVfbmFtZSk7CiAgICAgICAgICAgIGlmIChjdXJyZW50X3ZvZCAmJiBjdXJyZW50X3ZvZC5wYXJzZV91cmwpIHsKICAgICAgICAgICAgICAgIHBhcnNlX3VybCA9IGN1cnJlbnRfdm9kLnBhcnNlX3VybAogICAgICAgICAgICB9CiAgICAgICAgfQogICAgICAgIGlmICgvXC4obTN1OHxtcDQpLy50ZXN0KGlucHV0KSkgewogICAgICAgICAgICBpbnB1dCA9IHsKICAgICAgICAgICAgICAgIHBhcnNlOiAwLAogICAgICAgICAgICAgICAgdXJsOiBpbnB1dAogICAgICAgICAgICB9CiAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgaWYgKHBhcnNlX3VybC5zdGFydHNXaXRoKCdqc29uOicpKSB7CiAgICAgICAgICAgICAgICBsZXQgcHVybCA9IHBhcnNlX3VybC5yZXBsYWNlKCdqc29uOicsICcnKSArIGlucHV0OwogICAgICAgICAgICAgICAgbGV0IGh0bWwgPSByZXF1ZXN0KHB1cmwpOwogICAgICAgICAgICAgICAgaW5wdXQgPSB7CiAgICAgICAgICAgICAgICAgICAgcGFyc2U6IDAsCiAgICAgICAgICAgICAgICAgICAgdXJsOiBKU09OLnBhcnNlKGh0bWwpLnVybAogICAgICAgICAgICAgICAgfQogICAgICAgICAgICB9IGVsc2UgewogICAgICAgICAgICAgICAgaW5wdXQgPSBwYXJzZV91cmwgKyBpbnB1dDsKICAgICAgICAgICAgfQogICAgICAgIH0KICAgIH0pLAp9Cg== \ No newline at end of file diff --git a/潇洒/movie/js/DDG.js b/潇洒/movie/js/DDG.js new file mode 100644 index 00000000..ed36e96a --- /dev/null +++ b/潇洒/movie/js/DDG.js @@ -0,0 +1 @@ +bXViYW4u6aaW5Zu+Mi7kuoznuqcuZGVzYyA9ICdwLmRhdGE6ZXEoLTEpJiZUZXh0Ozs7cC5kYXRhOmVxKC0yKSYmVGV4dDtwLmRhdGE6ZXEoLTMpJiZUZXh0JzsKdmFyIHJ1bGUgPSB7CiAgICB0aXRsZTogJ+i+vui+vum+nycsCiAgICDmqKHmnb86ICfpppblm74yJywKICAgIGhvc3Q6ICdodHRwczovL3d3dy5kYWRhZ3VpLm1lJywKICAgIC8vIHVybDonL3ZvZHNob3cvZnljbGFzcy0tLS0tLS0tZnlwYWdlLS0tLmh0bWwnLAogICAgdXJsOiAnL3ZvZHNob3cvZnljbGFzc2Z5ZmlsdGVyLmh0bWwnLAogICAgZmlsdGVyYWJsZTogMSwgLy/mmK/lkKblkK/nlKjliIbnsbvnrZvpgIksCiAgICBmaWx0ZXJfdXJsOiAnLXt7ZmwuYXJlYX19LXt7ZmwuYnl9fS17e2ZsLmNsYXNzfX0te3tmbC5sYW5nfX0te3tmbC5sZXR0ZXJ9fS0tLWZ5cGFnZS0tLXt7ZmwueWVhcn19JywKICAgIGZpbHRlcjogewogICAgICAgICIxIjogW3sKICAgICAgICAgICAgImtleSI6ICJhcmVhIiwKICAgICAgICAgICAgIm5hbWUiOiAi5Zyw5Yy6IiwKICAgICAgICAgICAgInZhbHVlIjogW3sKICAgICAgICAgICAgICAgICJuIjogIuWFqOmDqCIsCiAgICAgICAgICAgICAgICAidiI6ICIiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuWkp+mZhiIsCiAgICAgICAgICAgICAgICAidiI6ICLlpKfpmYYiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIummmea4ryIsCiAgICAgICAgICAgICAgICAidiI6ICLpppnmuK8iCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuWPsOa5viIsCiAgICAgICAgICAgICAgICAidiI6ICLlj7Dmub4iCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIue+juWbvSIsCiAgICAgICAgICAgICAgICAidiI6ICLnvo7lm70iCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuazleWbvSIsCiAgICAgICAgICAgICAgICAidiI6ICLms5Xlm70iCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuiLseWbvSIsCiAgICAgICAgICAgICAgICAidiI6ICLoi7Hlm70iCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuaXpeacrCIsCiAgICAgICAgICAgICAgICAidiI6ICLml6XmnKwiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIumfqeWbvSIsCiAgICAgICAgICAgICAgICAidiI6ICLpn6nlm70iCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuW+t+WbvSIsCiAgICAgICAgICAgICAgICAidiI6ICLlvrflm70iCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuazsOWbvSIsCiAgICAgICAgICAgICAgICAidiI6ICLms7Dlm70iCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuWNsOW6piIsCiAgICAgICAgICAgICAgICAidiI6ICLljbDluqYiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuaEj+Wkp+WIqSIsCiAgICAgICAgICAgICAgICAidiI6ICLmhI/lpKfliKkiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuilv+ePreeJmSIsCiAgICAgICAgICAgICAgICAidiI6ICLopb/nj63niZkiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuWKoOaLv+WkpyIsCiAgICAgICAgICAgICAgICAidiI6ICLliqDmi7/lpKciCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuWFtuS7liIsCiAgICAgICAgICAgICAgICAidiI6ICLlhbbku5YiCiAgICAgICAgICAgIH1dCiAgICAgICAgfSwgewogICAgICAgICAgICAia2V5IjogInllYXIiLAogICAgICAgICAgICAibmFtZSI6ICLlubTku70iLAogICAgICAgICAgICAidmFsdWUiOiBbewogICAgICAgICAgICAgICAgIm4iOiAi5YWo6YOoIiwKICAgICAgICAgICAgICAgICJ2IjogIiIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAyNSIsCiAgICAgICAgICAgICAgICAidiI6ICIyMDI1IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDI0IiwKICAgICAgICAgICAgICAgICJ2IjogIjIwMjQiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMjMiLAogICAgICAgICAgICAgICAgInYiOiAiMjAyMyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAyMiIsCiAgICAgICAgICAgICAgICAidiI6ICIyMDIyIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDIxIiwKICAgICAgICAgICAgICAgICJ2IjogIjIwMjEiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMjAiLAogICAgICAgICAgICAgICAgInYiOiAiMjAyMCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAxOSIsCiAgICAgICAgICAgICAgICAidiI6ICIyMDE5IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDE4IiwKICAgICAgICAgICAgICAgICJ2IjogIjIwMTgiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMTciLAogICAgICAgICAgICAgICAgInYiOiAiMjAxNyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAxNiIsCiAgICAgICAgICAgICAgICAidiI6ICIyMDE2IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDE1IiwKICAgICAgICAgICAgICAgICJ2IjogIjIwMTUiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMTQiLAogICAgICAgICAgICAgICAgInYiOiAiMjAxNCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAxMyIsCiAgICAgICAgICAgICAgICAidiI6ICIyMDEzIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDEyIiwKICAgICAgICAgICAgICAgICJ2IjogIjIwMTIiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMTEiLAogICAgICAgICAgICAgICAgInYiOiAiMjAxMSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAxMCIsCiAgICAgICAgICAgICAgICAidiI6ICIyMDEwIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDA5IiwKICAgICAgICAgICAgICAgICJ2IjogIjIwMDkiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMDgiLAogICAgICAgICAgICAgICAgInYiOiAiMjAwOCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAwNyIsCiAgICAgICAgICAgICAgICAidiI6ICIyMDA3IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDA2IiwKICAgICAgICAgICAgICAgICJ2IjogIjIwMDYiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMDUiLAogICAgICAgICAgICAgICAgInYiOiAiMjAwNSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAwNCIsCiAgICAgICAgICAgICAgICAidiI6ICIyMDA0IgogICAgICAgICAgICB9XQogICAgICAgIH0sIHsKICAgICAgICAgICAgImtleSI6ICJsYW5nIiwKICAgICAgICAgICAgIm5hbWUiOiAi6K+t6KiAIiwKICAgICAgICAgICAgInZhbHVlIjogW3sKICAgICAgICAgICAgICAgICJuIjogIuWFqOmDqCIsCiAgICAgICAgICAgICAgICAidiI6ICIiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuWbveivrSIsCiAgICAgICAgICAgICAgICAidiI6ICLlm73or60iCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuiLseivrSIsCiAgICAgICAgICAgICAgICAidiI6ICLoi7Hor60iCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIueypOivrSIsCiAgICAgICAgICAgICAgICAidiI6ICLnsqTor60iCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIumXveWNl+ivrSIsCiAgICAgICAgICAgICAgICAidiI6ICLpl73ljZfor60iCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIumfqeivrSIsCiAgICAgICAgICAgICAgICAidiI6ICLpn6nor60iCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuaXpeivrSIsCiAgICAgICAgICAgICAgICAidiI6ICLml6Xor60iCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuazleivrSIsCiAgICAgICAgICAgICAgICAidiI6ICLms5Xor60iCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuW+t+ivrSIsCiAgICAgICAgICAgICAgICAidiI6ICLlvrfor60iCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuWFtuWugyIsCiAgICAgICAgICAgICAgICAidiI6ICLlhbblroMiCiAgICAgICAgICAgIH1dCiAgICAgICAgfSwgewogICAgICAgICAgICAia2V5IjogImJ5IiwKICAgICAgICAgICAgIm5hbWUiOiAi5o6S5bqPIiwKICAgICAgICAgICAgInZhbHVlIjogW3sKICAgICAgICAgICAgICAgICJuIjogIuaXtumXtCIsCiAgICAgICAgICAgICAgICAidiI6ICJ0aW1lIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLkurrmsJQiLAogICAgICAgICAgICAgICAgInYiOiAiaGl0cyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi6K+E5YiGIiwKICAgICAgICAgICAgICAgICJ2IjogInNjb3JlIgogICAgICAgICAgICB9XQogICAgICAgIH1dLAogICAgICAgICIyIjogW3sKICAgICAgICAgICAgImtleSI6ICJhcmVhIiwKICAgICAgICAgICAgIm5hbWUiOiAi5Zyw5Yy6IiwKICAgICAgICAgICAgInZhbHVlIjogW3sKICAgICAgICAgICAgICAgICJuIjogIuWFqOmDqCIsCiAgICAgICAgICAgICAgICAidiI6ICIiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuWGheWcsCIsCiAgICAgICAgICAgICAgICAidiI6ICLlhoXlnLAiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIumfqeWbvSIsCiAgICAgICAgICAgICAgICAidiI6ICLpn6nlm70iCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIummmea4ryIsCiAgICAgICAgICAgICAgICAidiI6ICLpppnmuK8iCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuWPsOa5viIsCiAgICAgICAgICAgICAgICAidiI6ICLlj7Dmub4iCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuaXpeacrCIsCiAgICAgICAgICAgICAgICAidiI6ICLml6XmnKwiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIue+juWbvSIsCiAgICAgICAgICAgICAgICAidiI6ICLnvo7lm70iCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuazsOWbvSIsCiAgICAgICAgICAgICAgICAidiI6ICLms7Dlm70iCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuiLseWbvSIsCiAgICAgICAgICAgICAgICAidiI6ICLoi7Hlm70iCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuaWsOWKoOWdoSIsCiAgICAgICAgICAgICAgICAidiI6ICLmlrDliqDlnaEiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuWFtuS7liIsCiAgICAgICAgICAgICAgICAidiI6ICLlhbbku5YiCiAgICAgICAgICAgIH1dCiAgICAgICAgfSwgewogICAgICAgICAgICAia2V5IjogInllYXIiLAogICAgICAgICAgICAibmFtZSI6ICLlubTku70iLAogICAgICAgICAgICAidmFsdWUiOiBbewogICAgICAgICAgICAgICAgIm4iOiAi5YWo6YOoIiwKICAgICAgICAgICAgICAgICJ2IjogIiIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAyNSIsCiAgICAgICAgICAgICAgICAidiI6ICIyMDI1IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDI0IiwKICAgICAgICAgICAgICAgICJ2IjogIjIwMjQiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMjMiLAogICAgICAgICAgICAgICAgInYiOiAiMjAyMyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAyMiIsCiAgICAgICAgICAgICAgICAidiI6ICIyMDIyIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDIxIiwKICAgICAgICAgICAgICAgICJ2IjogIjIwMjEiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMjAiLAogICAgICAgICAgICAgICAgInYiOiAiMjAyMCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAxOSIsCiAgICAgICAgICAgICAgICAidiI6ICIyMDE5IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDE4IiwKICAgICAgICAgICAgICAgICJ2IjogIjIwMTgiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMTciLAogICAgICAgICAgICAgICAgInYiOiAiMjAxNyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAxNiIsCiAgICAgICAgICAgICAgICAidiI6ICIyMDE2IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDE1IiwKICAgICAgICAgICAgICAgICJ2IjogIjIwMTUiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMTQiLAogICAgICAgICAgICAgICAgInYiOiAiMjAxNCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAxMyIsCiAgICAgICAgICAgICAgICAidiI6ICIyMDEzIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDEyIiwKICAgICAgICAgICAgICAgICJ2IjogIjIwMTIiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMTEiLAogICAgICAgICAgICAgICAgInYiOiAiMjAxMSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAxMCIsCiAgICAgICAgICAgICAgICAidiI6ICIyMDEwIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDA5IiwKICAgICAgICAgICAgICAgICJ2IjogIjIwMDkiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMDgiLAogICAgICAgICAgICAgICAgInYiOiAiMjAwOCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAwNyIsCiAgICAgICAgICAgICAgICAidiI6ICIyMDA3IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDA2IiwKICAgICAgICAgICAgICAgICJ2IjogIjIwMDYiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMDUiLAogICAgICAgICAgICAgICAgInYiOiAiMjAwNSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAwNCIsCiAgICAgICAgICAgICAgICAidiI6ICIyMDA0IgogICAgICAgICAgICB9XQogICAgICAgIH0sIHsKICAgICAgICAgICAgImtleSI6ICJsYW5nIiwKICAgICAgICAgICAgIm5hbWUiOiAi6K+t6KiAIiwKICAgICAgICAgICAgInZhbHVlIjogW3sKICAgICAgICAgICAgICAgICJuIjogIuWFqOmDqCIsCiAgICAgICAgICAgICAgICAidiI6ICIiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuWbveivrSIsCiAgICAgICAgICAgICAgICAidiI6ICLlm73or60iCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuiLseivrSIsCiAgICAgICAgICAgICAgICAidiI6ICLoi7Hor60iCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIueypOivrSIsCiAgICAgICAgICAgICAgICAidiI6ICLnsqTor60iCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIumXveWNl+ivrSIsCiAgICAgICAgICAgICAgICAidiI6ICLpl73ljZfor60iCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIumfqeivrSIsCiAgICAgICAgICAgICAgICAidiI6ICLpn6nor60iCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuaXpeivrSIsCiAgICAgICAgICAgICAgICAidiI6ICLml6Xor60iCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuWFtuWugyIsCiAgICAgICAgICAgICAgICAidiI6ICLlhbblroMiCiAgICAgICAgICAgIH1dCiAgICAgICAgfSwgewogICAgICAgICAgICAia2V5IjogImJ5IiwKICAgICAgICAgICAgIm5hbWUiOiAi5o6S5bqPIiwKICAgICAgICAgICAgInZhbHVlIjogW3sKICAgICAgICAgICAgICAgICJuIjogIuaXtumXtCIsCiAgICAgICAgICAgICAgICAidiI6ICJ0aW1lIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLkurrmsJQiLAogICAgICAgICAgICAgICAgInYiOiAiaGl0cyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi6K+E5YiGIiwKICAgICAgICAgICAgICAgICJ2IjogInNjb3JlIgogICAgICAgICAgICB9XQogICAgICAgIH1dLAogICAgICAgICIzIjogW3sKICAgICAgICAgICAgImtleSI6ICJhcmVhIiwKICAgICAgICAgICAgIm5hbWUiOiAi5Zyw5Yy6IiwKICAgICAgICAgICAgInZhbHVlIjogW3sKICAgICAgICAgICAgICAgICJuIjogIuWFqOmDqCIsCiAgICAgICAgICAgICAgICAidiI6ICIiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuWGheWcsCIsCiAgICAgICAgICAgICAgICAidiI6ICLlhoXlnLAiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIua4r+WPsCIsCiAgICAgICAgICAgICAgICAidiI6ICLmuK/lj7AiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuaXpemfqSIsCiAgICAgICAgICAgICAgICAidiI6ICLml6Xpn6kiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuasp+e+jiIsCiAgICAgICAgICAgICAgICAidiI6ICLmrKfnvo4iCiAgICAgICAgICAgIH1dCiAgICAgICAgfSwgewogICAgICAgICAgICAia2V5IjogInllYXIiLAogICAgICAgICAgICAibmFtZSI6ICLlubTku70iLAogICAgICAgICAgICAidmFsdWUiOiBbewogICAgICAgICAgICAgICAgIm4iOiAi5YWo6YOoIiwKICAgICAgICAgICAgICAgICJ2IjogIiIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAyNSIsCiAgICAgICAgICAgICAgICAidiI6ICIyMDI1IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDI0IiwKICAgICAgICAgICAgICAgICJ2IjogIjIwMjQiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMjMiLAogICAgICAgICAgICAgICAgInYiOiAiMjAyMyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAyMiIsCiAgICAgICAgICAgICAgICAidiI6ICIyMDIyIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDIxIiwKICAgICAgICAgICAgICAgICJ2IjogIjIwMjEiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMjAiLAogICAgICAgICAgICAgICAgInYiOiAiMjAyMCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAxOSIsCiAgICAgICAgICAgICAgICAidiI6ICIyMDE5IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDE4IiwKICAgICAgICAgICAgICAgICJ2IjogIjIwMTgiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMTciLAogICAgICAgICAgICAgICAgInYiOiAiMjAxNyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAxNiIsCiAgICAgICAgICAgICAgICAidiI6ICIyMDE2IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDE1IiwKICAgICAgICAgICAgICAgICJ2IjogIjIwMTUiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMTQiLAogICAgICAgICAgICAgICAgInYiOiAiMjAxNCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAxMyIsCiAgICAgICAgICAgICAgICAidiI6ICIyMDEzIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDEyIiwKICAgICAgICAgICAgICAgICJ2IjogIjIwMTIiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMTEiLAogICAgICAgICAgICAgICAgInYiOiAiMjAxMSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAxMCIsCiAgICAgICAgICAgICAgICAidiI6ICIyMDEwIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDA5IiwKICAgICAgICAgICAgICAgICJ2IjogIjIwMDkiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMDgiLAogICAgICAgICAgICAgICAgInYiOiAiMjAwOCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAwNyIsCiAgICAgICAgICAgICAgICAidiI6ICIyMDA3IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDA2IiwKICAgICAgICAgICAgICAgICJ2IjogIjIwMDYiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMDUiLAogICAgICAgICAgICAgICAgInYiOiAiMjAwNSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAwNCIsCiAgICAgICAgICAgICAgICAidiI6ICIyMDA0IgogICAgICAgICAgICB9XQogICAgICAgIH0sIHsKICAgICAgICAgICAgImtleSI6ICJsYW5nIiwKICAgICAgICAgICAgIm5hbWUiOiAi6K+t6KiAIiwKICAgICAgICAgICAgInZhbHVlIjogW3sKICAgICAgICAgICAgICAgICJuIjogIuWFqOmDqCIsCiAgICAgICAgICAgICAgICAidiI6ICIiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuWbveivrSIsCiAgICAgICAgICAgICAgICAidiI6ICLlm73or60iCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuiLseivrSIsCiAgICAgICAgICAgICAgICAidiI6ICLoi7Hor60iCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIueypOivrSIsCiAgICAgICAgICAgICAgICAidiI6ICLnsqTor60iCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIumXveWNl+ivrSIsCiAgICAgICAgICAgICAgICAidiI6ICLpl73ljZfor60iCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIumfqeivrSIsCiAgICAgICAgICAgICAgICAidiI6ICLpn6nor60iCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuaXpeivrSIsCiAgICAgICAgICAgICAgICAidiI6ICLml6Xor60iCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuWFtuWugyIsCiAgICAgICAgICAgICAgICAidiI6ICLlhbblroMiCiAgICAgICAgICAgIH1dCiAgICAgICAgfSwgewogICAgICAgICAgICAia2V5IjogImJ5IiwKICAgICAgICAgICAgIm5hbWUiOiAi5o6S5bqPIiwKICAgICAgICAgICAgInZhbHVlIjogW3sKICAgICAgICAgICAgICAgICJuIjogIuaXtumXtCIsCiAgICAgICAgICAgICAgICAidiI6ICJ0aW1lIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLkurrmsJQiLAogICAgICAgICAgICAgICAgInYiOiAiaGl0cyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi6K+E5YiGIiwKICAgICAgICAgICAgICAgICJ2IjogInNjb3JlIgogICAgICAgICAgICB9XQogICAgICAgIH1dLAogICAgICAgICI0IjogW3sKICAgICAgICAgICAgImtleSI6ICJhcmVhIiwKICAgICAgICAgICAgIm5hbWUiOiAi5Zyw5Yy6IiwKICAgICAgICAgICAgInZhbHVlIjogW3sKICAgICAgICAgICAgICAgICJuIjogIuWFqOmDqCIsCiAgICAgICAgICAgICAgICAidiI6ICIiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuWbveS6pyIsCiAgICAgICAgICAgICAgICAidiI6ICLlm73kuqciCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuaXpeacrCIsCiAgICAgICAgICAgICAgICAidiI6ICLml6XmnKwiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuasp+e+jiIsCiAgICAgICAgICAgICAgICAidiI6ICLmrKfnvo4iCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuWFtuS7liIsCiAgICAgICAgICAgICAgICAidiI6ICLlhbbku5YiCiAgICAgICAgICAgIH1dCiAgICAgICAgfSwgewogICAgICAgICAgICAia2V5IjogInllYXIiLAogICAgICAgICAgICAibmFtZSI6ICLlubTku70iLAogICAgICAgICAgICAidmFsdWUiOiBbewogICAgICAgICAgICAgICAgIm4iOiAi5YWo6YOoIiwKICAgICAgICAgICAgICAgICJ2IjogIiIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAyNSIsCiAgICAgICAgICAgICAgICAidiI6ICIyMDI1IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDI0IiwKICAgICAgICAgICAgICAgICJ2IjogIjIwMjQiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMjMiLAogICAgICAgICAgICAgICAgInYiOiAiMjAyMyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAyMiIsCiAgICAgICAgICAgICAgICAidiI6ICIyMDIyIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDIxIiwKICAgICAgICAgICAgICAgICJ2IjogIjIwMjEiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMjAiLAogICAgICAgICAgICAgICAgInYiOiAiMjAyMCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAxOSIsCiAgICAgICAgICAgICAgICAidiI6ICIyMDE5IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDE4IiwKICAgICAgICAgICAgICAgICJ2IjogIjIwMTgiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMTciLAogICAgICAgICAgICAgICAgInYiOiAiMjAxNyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAxNiIsCiAgICAgICAgICAgICAgICAidiI6ICIyMDE2IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDE1IiwKICAgICAgICAgICAgICAgICJ2IjogIjIwMTUiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMTQiLAogICAgICAgICAgICAgICAgInYiOiAiMjAxNCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAxMyIsCiAgICAgICAgICAgICAgICAidiI6ICIyMDEzIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDEyIiwKICAgICAgICAgICAgICAgICJ2IjogIjIwMTIiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMTEiLAogICAgICAgICAgICAgICAgInYiOiAiMjAxMSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAxMCIsCiAgICAgICAgICAgICAgICAidiI6ICIyMDEwIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDA5IiwKICAgICAgICAgICAgICAgICJ2IjogIjIwMDkiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMDgiLAogICAgICAgICAgICAgICAgInYiOiAiMjAwOCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAwNyIsCiAgICAgICAgICAgICAgICAidiI6ICIyMDA3IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDA2IiwKICAgICAgICAgICAgICAgICJ2IjogIjIwMDYiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMDUiLAogICAgICAgICAgICAgICAgInYiOiAiMjAwNSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAwNCIsCiAgICAgICAgICAgICAgICAidiI6ICIyMDA0IgogICAgICAgICAgICB9XQogICAgICAgIH0sIHsKICAgICAgICAgICAgImtleSI6ICJsYW5nIiwKICAgICAgICAgICAgIm5hbWUiOiAi6K+t6KiAIiwKICAgICAgICAgICAgInZhbHVlIjogW3sKICAgICAgICAgICAgICAgICJuIjogIuWFqOmDqCIsCiAgICAgICAgICAgICAgICAidiI6ICIiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuWbveivrSIsCiAgICAgICAgICAgICAgICAidiI6ICLlm73or60iCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuiLseivrSIsCiAgICAgICAgICAgICAgICAidiI6ICLoi7Hor60iCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIueypOivrSIsCiAgICAgICAgICAgICAgICAidiI6ICLnsqTor60iCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIumXveWNl+ivrSIsCiAgICAgICAgICAgICAgICAidiI6ICLpl73ljZfor60iCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIumfqeivrSIsCiAgICAgICAgICAgICAgICAidiI6ICLpn6nor60iCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuaXpeivrSIsCiAgICAgICAgICAgICAgICAidiI6ICLml6Xor60iCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuWFtuWugyIsCiAgICAgICAgICAgICAgICAidiI6ICLlhbblroMiCiAgICAgICAgICAgIH1dCiAgICAgICAgfSwgewogICAgICAgICAgICAia2V5IjogImJ5IiwKICAgICAgICAgICAgIm5hbWUiOiAi5o6S5bqPIiwKICAgICAgICAgICAgInZhbHVlIjogW3sKICAgICAgICAgICAgICAgICJuIjogIuaXtumXtCIsCiAgICAgICAgICAgICAgICAidiI6ICJ0aW1lIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLkurrmsJQiLAogICAgICAgICAgICAgICAgInYiOiAiaGl0cyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi6K+E5YiGIiwKICAgICAgICAgICAgICAgICJ2IjogInNjb3JlIgogICAgICAgICAgICB9XQogICAgICAgIH1dCiAgICB9LAogICAgc2VhcmNoVXJsOiAnL3ZvZHNlYXJjaC8qKi0tLS0tLS0tLS1meXBhZ2UtLS0uaHRtbCcsCiAgICBjbGFzc19wYXJzZTogJy5zdHVpLWhlYWRlcl9fbWVudSBsaTpndCgwKTpsdCg1KTthJiZUZXh0O2EmJmhyZWY7LiovKC4qPykuaHRtbCcsCiAgICBsYXp5OiBganM6CiAgICAgICAgdmFyIGh0bWwgPSBKU09OLnBhcnNlKHJlcXVlc3QoaW5wdXQpLm1hdGNoKC9yIHBsYXllcl8uKj89KC4qPyk8LylbMV0pOwogICAgICAgIHZhciB1cmwgPSBodG1sLnVybDsKICAgICAgICBpZiAoaHRtbC5lbmNyeXB0ID09ICcxJykgewogICAgICAgICAgICB1cmwgPSB1bmVzY2FwZSh1cmwpCiAgICAgICAgfSBlbHNlIGlmIChodG1sLmVuY3J5cHQgPT0gJzInKSB7CiAgICAgICAgICAgIHVybCA9IHVuZXNjYXBlKGJhc2U2NERlY29kZSh1cmwpKQogICAgICAgIH0KICAgICAgICBpZiAoL1xcLm0zdTh8XFwubXA0Ly50ZXN0KHVybCkpIHsKICAgICAgICAgICAgaW5wdXQgPSB7CiAgICAgICAgICAgICAgICBqeDogMCwKICAgICAgICAgICAgICAgIHVybDogdXJsLAogICAgICAgICAgICAgICAgcGFyc2U6IDAKICAgICAgICAgICAgfQogICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgIGlucHV0CiAgICAgICAgfQogICAgYCwKICAgIC8vIOaQnOe0ojogbXViYW4u6aaW5Zu+Mi7mkJzntKIxLAogICAg5pCc57SiOiAndWwuc3R1aS12b2RsaXN0JiZsaTthJiZ0aXRsZTsubGF6eWxvYWQmJmRhdGEtb3JpZ2luYWw7LnBpYy10ZXh0JiZUZXh0O2EmJmhyZWYnLAp9 \ No newline at end of file diff --git a/潇洒/movie/js/DDYS.js b/潇洒/movie/js/DDYS.js new file mode 100644 index 00000000..17a33e49 --- /dev/null +++ b/潇洒/movie/js/DDYS.js @@ -0,0 +1 @@ +dmFyIHJ1bGUgPSB7CiAgICB0aXRsZTogJ+ein+iwg+W9seinhicsCiAgICBob3N0OiAnaHR0cDovL3d3dy42MTg2NDguY29tJywKICAgIC8vIGhvbWVVcmw6Jy8nLAogICAgdXJsOiAnL2RpZS10aWFvL2Z5Y2xhc3MtZnlwYWdlLmh0bWwnLAogICAgc2VhcmNoVXJsOiAnL2RpZWRpYW9jaC9wYWdlL2Z5cGFnZS93ZC8qKi5odG1sJywKICAgIHNlYXJjaGFibGU6IDIsIC8v5piv5ZCm5ZCv55So5YWo5bGA5pCc57SiLAogICAgcXVpY2tTZWFyY2g6IDAsIC8v5piv5ZCm5ZCv55So5b+r6YCf5pCc57SiLAogICAgZmlsdGVyYWJsZTogMCwgLy/mmK/lkKblkK/nlKjliIbnsbvnrZvpgIksCiAgICBoZWFkZXJzOiB7IC8v572R56uZ55qE6K+35rGC5aS0LOWujOaVtOaUr+aMgeaJgOacieeahCzluLjluKZ1YeWSjGNvb2tpZXMKICAgICAgICAnVXNlci1BZ2VudCc6ICdNT0JJTEVfVUEnLAogICAgICAgIC8vICJDb29raWUiOiAic2VhcmNobmVlZD1vayIKICAgIH0sCiAgICAvL2NsYXNzX3BhcnNlOicuc3R1aS1oZWFkZXJfX21lbnUgbGkuaGlkZGVuLXhzO2EmJlRleHQ7YSYmaHJlZjsuKi8oLio/KS5odG1sJywKICAgIGNsYXNzX25hbWU6ICfnlLXlvbEm55S16KeG5YmnJue7vOiJuibliqjmvKsnLAogICAgY2xhc3NfdXJsOiAnMSYyJjMmNCcsCiAgICBwbGF5X3BhcnNlOiB0cnVlLAogICAgbGF6eTogJycsCiAgICBsaW1pdDogOCwKICAgIOaOqOiNkDogJy5zdHVpLXZvZGxpc3QuY2xlYXJmaXg7LnN0dWktdm9kbGlzdF9fYm94O2EmJnRpdGxlO2EmJmRhdGEtb3JpZ2luYWw7LnBpYy10ZXh0JiZUZXh0O2EmJmhyZWYnLAogICAgZG91YmxlOiB0cnVlLCAvLyDmjqjojZDlhoXlrrnmmK/lkKblj4zlsYLlrprkvY0KICAgIOS4gOe6pzogJy5zdHVpLXZvZGxpc3QuY2xlYXJmaXggbGk7YSYmdGl0bGU7YSYmZGF0YS1vcmlnaW5hbDsucGljLXRleHQmJlRleHQ7YSYmaHJlZicsCiAgICDkuoznuqc6IHsKICAgICAgICAidGl0bGUiOiAiaDEudGl0bGUmJlRleHQ7LnN0dWktY29udGVudF9fZGV0YWlsIHA6ZXEoMikmJlRleHQiLAogICAgICAgICJpbWciOiAiLmxhenlsb2FkJiZkYXRhLW9yaWdpbmFsIiwKICAgICAgICAiZGVzYyI6ICIudmlkZW8taW5mby1pdGVtczplcSgtMikmJlRleHQ7LnZpZGVvLWluZm8taXRlbXM6ZXEoLTEpJiZUZXh0Oy52aWRlby1pbmZvLWl0ZW1zOmVxKC0yKSYmVGV4dDsuc3R1aS1jb250ZW50X19kZXRhaWwgcDplcSg3KSYmVGV4dDsuc3R1aS1jb250ZW50X19kZXRhaWwgcDplcSg2KSYmVGV4dCIsCiAgICAgICAgImNvbnRlbnQiOiAiLnN0dWktY29udGVudF9fZGV0YWlsIHA6ZXEoOSkmJlRleHQiLAogICAgICAgICJ0YWJzIjogIi5uYXYubmF2LXRhYnMgbGkiLAogICAgICAgICJsaXN0cyI6ICIudGFiLXBhbmUuZmFkZTplcSgjaWQpJiZ1bCYmbGkiCiAgICB9LAogICAg5pCc57SiOiAnLnN0dWktdm9kbGlzdC5jbGVhcmZpeCBsaTthJiZ0aXRsZTthJiZkYXRhLW9yaWdpbmFsOy5waWMtdGV4dCYmVGV4dDthJiZocmVmJywKfQ== \ No newline at end of file diff --git a/潇洒/movie/js/GZYS.js b/潇洒/movie/js/GZYS.js new file mode 100644 index 00000000..18a698a5 --- /dev/null +++ b/潇洒/movie/js/GZYS.js @@ -0,0 +1 @@ +dmFyIHJ1bGUgPSB7CiAgICB0aXRsZTogJ+eTnOWtkCcsCiAgICBob3N0OiAnaHR0cHM6Ly9hcGkuOHV0ZHRjcS5jb20nLAogICAgdXJsOiAnL0FwcC9JbmRleExpc3QvaW5kZXhMaXN0JywKICAgIC8vICAgaG9tZVVybDogJ2h0dHA6Ly8xMjQuMjIyLjExNi41L2hvbWVkYXRhL2hvbWUuanNvbicsCiAgICBzZWFyY2hVcmw6ICcvQXBwL0luZGV4L2ZpbmRNb3JlVm9kIyoqJywKICAgIHNlYXJjaGFibGU6IDIsCiAgICBxdWlja1NlYXJjaDogMSwKICAgIGZpbHRlcmFibGU6IDEsCiAgICBjbGFzc19uYW1lOiAn55S15b2xJueUteinhuWJpybliqjmvKsm57u86Im6JuefreWJpycsCiAgICBjbGFzc191cmw6ICcxJjImNCYzJjY0JywKICAgIGZpbHRlcjogJ0g0c0lBQUFBQUFBQUErMmE3VTRhUVJTRy8zc1ZodC9iWkhmNVdub3JqV2xvNFlmcGh3bHFFMk5NdEdvTFdJc21GYlJpMnFZcW9CZ3h0VlZSOEdaMmR1VXVPbWNoZnVEdURISTJ4SmhENGhHWXlUenY3aGxtNTd5WjZhRmgvZ3BvZ2VmREw1eTM4SnErZnVjMHZrbE84ZVpBUEpXTUI1UzdUZS9qNzVKZWJSL2lieWVUZDhaMUgvOW1NQmlKTFpaYjgrV3VzVzdHaEM1cTRGN2p6UDMrUXNoMnFiWHhTUWpwZE1HU1dyc2IxdW1oa05UcGdyNm1YTTA2YTRxdnFkMEZTN0txSmJ2NVZVZ3lMeGZzUnNIS0h5b3MrOU5hdXVSM1UySE5FN2JaVUt5RkhQL0UwaFhGK3JQbWZPRU1wL0EvK0hTMWRPVDgyN20wY3dkMlpnT3Z0ckJqRmF0Q3RaMHU2RnovcUhEcDRseTN1MkJKNW1tUkxSZk0rbmR4dXBkcnJMNnJXUGthVHdMYitzVnZlQTN1YmF0U3RiWjIrQjJHQWREVGJ2R2ZlWjRYNjJoM3VVKzY4ODNJOWFkYkN0eFhvcWxrUE9XMUVybTFQZUtWU0ZmMWtCRGhkUENCRXBSUmduNVFkQmxGOTRPaXlTaWFIeFJWUnZFaisxcE1RdUVkZktBWU1vcmhCeVVxbzBUOW9FUmtsQWlhb3FuUHREQTdPNWFSd2dvUElRaEJDRG9FRFFKK2FxZ3E1NXZudnlVU1ZKWGpWR0NxUUZkQmh3cUtWTkNtUmlCRUlSZ1E4SE1wMW9zc0xSWlRGUjQwQ0RxRUlJUVFoRENFQ0lRb0JBTUNYcGJSbXl3RFpCa2d5d0JaQnNneVFKWUJzZ3lRWllBc0EyUVplRm5XNXJGVnFJaFQ2T056Y1h6eWxkZGowYVhwRVQ4VldiWnNOb3AyNXJPSUUwWm41MlBWenE5S0tIb01mVEg1SXN1VUpKZ0lsbUtuajZ6NVJRa2xpcWFVVnRuWnVZUmlvQk16dDJMTjVpVVVmRjR5SmZrZDAxVDB4YVRYelhwR2h0RjgrTW5ZMzJTWkNlS25XWDJQTmRaa3Z4bjBUYlBubXEzdlRkblZvQ2VhblQyMEczdXluNlpMYnZwZW9jZFNFNTVMdEV0YmYydTBmWDdCVnRMQ05UcnhjalNCZjd3VlozbHhLZUhFRTRtSlVYNkZQc0RzK1FNSmJQejFXQXFQYXUydnM3VFlIdkpHZVUwTjU5MUllMHorMUg4MGZsdXh4cjdVeVc4anY0MzhOazhTK1cyRDhOdWdnaE9uay95MkxncjViUStra045R2ZwdXJCUExiSGlLTC9MYUIrVzJiRGJOZVlwbVMwRDdRL2RrM3l6QkJmemJOTWt6SW54MnpESU0zRUoxOXJBeUQ5bHphbTFnWkJ1M3RXWDlQMkhaZWhzR2JlODZtV0laQnUzdlh1M0NodGVPQzZYc3hJR3NIQVhzNjFrNklySjB1Q0ZrN25pU3lkdHhKWk8xNDZDQnJ4eE5DMWc1Wk8wSUtXVHZkRkxKMmJra2dhNGVzbllGYU8rYnBBVlRDMmJKMXNTODg1NEEvZzlJMkt1UWs5REdVNFk3MUlrZTVlRWw5SjR0S2J3VHM2WlRlUVNxOXV5QlVlbnVTcVBSMkoxSHA3YUdEU205UENKWGVWSG9MS1ZSNmQxT285TDRsZ1VwdktyMEhlNnJDMlJmeml1NHFJOXlsNitpREZYQ3FJbGZyZ1lRK1c4SDNmM3hqMWdQSnArTVZQWkJjVGxqMFBTdW94a2ZBbmtDTlB6VHpIK1N0UHhDc1JBQUEnLAogICAgLy8gbGltaXQ6IDYsCiAgICAvL2RvdWJsZTogZmFsc2UsCiAgICBwbGF5X3BhcnNlOiB0cnVlLAogICAgbGF6eTogJGpzLnRvU3RyaW5nKCgpID0+IHsKICAgICAgICBsZXQgZCA9IFtdOwogICAgICAgIC8vY29uc29sZS5sb2coIndhbmd6aGk9PT0iK2lucHV0KQogICAgICAgIHZhciB2b2RfaWQgPSBpbnB1dC5zcGxpdCgiLyIpWzBdOwogICAgICAgIHZhciB2dXJsX2lkID0gaW5wdXQuc3BsaXQoIi8iKVsxXTsKICAgICAgICB2YXIgcmVzb2x1dGlvbiA9IGlucHV0LnNwbGl0KCI/IilbMV0KCiAgICAgICAgZnVuY3Rpb24gRW5jcnlwdChwbGFpblRleHQpIHsKICAgICAgICAgICAgbGV0IGtleSA9IENyeXB0b0pTLmVuYy5VdGY4LnBhcnNlKCJtdlhCU1c3ZWtyZUl0TnNUIik7CiAgICAgICAgICAgIGxldCBpdiA9IENyeXB0b0pTLmVuYy5VdGY4LnBhcnNlKCIyVTNJckpMOHN6QUtwMEZqIik7CiAgICAgICAgICAgIC8vIOWwhuaWh+acrOWKoOWvhuS4uiBBRVMvQ0JDL1BLQ1M1UGFkZGluZyDmoLzlvI8KICAgICAgICAgICAgbGV0IGVuY3J5cHRlZCA9IENyeXB0b0pTLkFFUy5lbmNyeXB0KHBsYWluVGV4dCwga2V5LCB7CiAgICAgICAgICAgICAgICBpdjogaXYsCiAgICAgICAgICAgICAgICBtb2RlOiBDcnlwdG9KUy5tb2RlLkNCQywKICAgICAgICAgICAgICAgIHBhZGRpbmc6IENyeXB0b0pTLnBhZC5Qa2NzNwogICAgICAgICAgICB9KTsKCiAgICAgICAgICAgIC8vIOiOt+WPluWKoOWvhue7k+aenOW5tui9rOS4uiBIZXgg5qC85byPCiAgICAgICAgICAgIGxldCBlbmNyeXB0ZWRIZXggPSBlbmNyeXB0ZWQuY2lwaGVydGV4dC50b1N0cmluZyhDcnlwdG9KUy5lbmMuSGV4KTsKICAgICAgICAgICAgcmV0dXJuIGVuY3J5cHRlZEhleC50b1VwcGVyQ2FzZSgpOyAvLyDov5Tlm57lpKflhpkgSGV4IOagvOW8jwogICAgICAgIH0KCiAgICAgICAgZnVuY3Rpb24gRGVjcnlwdCh3b3JkLCBrZXksIGl2KSB7CiAgICAgICAgICAgIGxldCBlbmNyeXB0ZWRIZXhTdHIgPSBDcnlwdG9KUy5lbmMuSGV4LnBhcnNlKHdvcmQpOwoKICAgICAgICAgICAgLy8g5L2/55SoQUVTL0NCQy9QS0NTNVBhZGRpbmfmqKHlvI/ov5vooYzop6Plr4YKICAgICAgICAgICAgbGV0IGRlY3J5cHQgPSBDcnlwdG9KUy5BRVMuZGVjcnlwdCh7CiAgICAgICAgICAgICAgICBjaXBoZXJ0ZXh0OiBlbmNyeXB0ZWRIZXhTdHIKICAgICAgICAgICAgfSwga2V5LCB7CiAgICAgICAgICAgICAgICBpdjogaXYsCiAgICAgICAgICAgICAgICBtb2RlOiBDcnlwdG9KUy5tb2RlLkNCQywgLy8g5L2/55SoQ0JD5qih5byPCiAgICAgICAgICAgICAgICBwYWRkaW5nOiBDcnlwdG9KUy5wYWQuUGtjczcgLy8g5L2/55SoUEtDUyM35aGr5YWFCiAgICAgICAgICAgIH0pOwoKICAgICAgICAgICAgLy8g5bCG6Kej5a+G5ZCO55qE5pWw5o2u6L2s5o2i5Li65Y6f5aeL5paH5pysCiAgICAgICAgICAgIGxldCBkZWNyeXB0ZWRTdHIgPSBkZWNyeXB0LnRvU3RyaW5nKENyeXB0b0pTLmVuYy5VdGY4KTsKCiAgICAgICAgICAgIC8vIOi/lOWbnuino+WvhuWQjueahOaWh+acrAogICAgICAgICAgICByZXR1cm4gZGVjcnlwdGVkU3RyOwogICAgICAgIH0KICAgICAgICB2YXIgdGltZXN0YW1wID0gbmV3IERhdGUoKS5nZXRUaW1lKCkgLyAxMDAwOyAvL2xvZyh0aW1lc3RhbXApCiAgICAgICAgdmFyIHQgPSB0aW1lc3RhbXAudG9TdHJpbmcoKS5zcGxpdCgnLicpWzBdOyAvL2xvZyh0KQogICAgICAgIHZhciByZXF1ZXN0X2tleSA9IEpTT04uc3RyaW5naWZ5KHsKICAgICAgICAgICAgImRvbWFpbl90eXBlIjogIjgiLAogICAgICAgICAgICAidm9kX2lkIjogdm9kX2lkLAogICAgICAgICAgICAidHlwZSI6ICJwbGF5IiwKICAgICAgICAgICAgInJlc29sdXRpb24iOiByZXNvbHV0aW9uLAogICAgICAgICAgICAidnVybF9pZCI6IHZ1cmxfaWQKICAgICAgICB9KTsgLy9sb2cocmVxdWVzdF9rZXkpCiAgICAgICAgdmFyIHJlcXVlc3Rfa2V5MiA9IEVuY3J5cHQocmVxdWVzdF9rZXkpOyAvL2xvZyhyZXF1ZXN0X2tleTIpCiAgICAgICAgdmFyIHNpZ25hdHVyZSA9ICd0b2tlbl9pZD0sdG9rZW49MWJlODZlOGUxOGE5ZmExOGIyYjhkNTQzMjY5OWRhZDAuYWMwMDhlZDY1MGZkMDg3YmZiZWNmMmZkYTlkODJlOTgzNTI1M2VmMjQ4NDNlNmIxOGZjZDEyOGIxMDc2MzQ5N2JjZjlkNTNlOTU5ZjUzNzdjZGUwMzhjMjBjY2Y5ZDE3ZjYwNGM5YjhiYjZlNjEwNDFkZWY4NjcyOWIyZmM3NDA4YmQyNDFlMjNjMjEzYWM1N2YwMjI2ZWU2NTZlMmJiMGE1ODNhZTBlNGYzYmY2YzZhYjZjNDkwYzlhNmYwZDhjZGZkMzY2YWFjZjVkODMxOTM2NzFhOGY3N2NkMWFmMWZmMmU5MTQ1ZGU5MmVjNDNlYzg3Y2Y0YmRjNTYzZjZlOTE5ZmUzMjg2MWIwZTkzYjExOGVjMzdkODAzNWZiYjNjLjU5ZGQwNWM1ZDlhOGFlNzI2NTI4NzgzMTI4MjE4ZjE1ZmU2ZjJjMGM4MTQ1ZWRkYWIxMTJiMzc0ZmNmZTNkNzkscGhvbmVfdHlwZT0xLHJlcXVlc3Rfa2V5PScgKyByZXF1ZXN0X2tleTIgKyAnLGFwcF9pZD0xLHRpbWU9JyArIHQgKyAnLGtleXM9Wkg4Z3BkcDlieGp1RzJOSzk3c29sM283VWl6KzllVkVhVk1sRTJGazNqN0VSZXNNM1lIbkVDWlVIN0JPTk5UanB5N1JWTmkvWWltR3VOWXJpQzdDbXN3djRQTllpRll6dzlRaGxxWkt3TmZDTTZJVXBGWjBUNHJaeDhHNzh6a3YydE5WYmZZQzRxTlFlZEdpMDduV1ozM2RsU3VWeFJPVmZZNUp4T1dITUkwPSomenZkdmR2ZGRiZmlra2t1bXRtZHdxcHBwP3w0WSFzITJicic7IC8vbG9nKHNpZ25hdHVyZSkKICAgICAgICB2YXIgc2lnbmF0dXJlMiA9IG1kNShzaWduYXR1cmUpOyAvL2xvZyhzaWduYXR1cmUyKQogICAgICAgIHZhciBib2R5ID0gJ3Rva2VuPTFiZTg2ZThlMThhOWZhMThiMmI4ZDU0MzI2OTlkYWQwLmFjMDA4ZWQ2NTBmZDA4N2JmYmVjZjJmZGE5ZDgyZTk4MzUyNTNlZjI0ODQzZTZiMThmY2QxMjhiMTA3NjM0OTdiY2Y5ZDUzZTk1OWY1Mzc3Y2RlMDM4YzIwY2NmOWQxN2Y2MDRjOWI4YmI2ZTYxMDQxZGVmODY3MjliMmZjNzQwOGJkMjQxZTIzYzIxM2FjNTdmMDIyNmVlNjU2ZTJiYjBhNTgzYWUwZTRmM2JmNmM2YWI2YzQ5MGM5YTZmMGQ4Y2RmZDM2NmFhY2Y1ZDgzMTkzNjcxYThmNzdjZDFhZjFmZjJlOTE0NWRlOTJlYzQzZWM4N2NmNGJkYzU2M2Y2ZTkxOWZlMzI4NjFiMGU5M2IxMThlYzM3ZDgwMzVmYmIzYy41OWRkMDVjNWQ5YThhZTcyNjUyODc4MzEyODIxOGYxNWZlNmYyYzBjODE0NWVkZGFiMTEyYjM3NGZjZmUzZDc5JnRva2VuX2lkPSZwaG9uZV90eXBlPTEmdGltZT0nICsgdCArICcmcGhvbmVfbW9kZWw9eGlhb21pLTIyMDIxMjExcmMma2V5cz1aSDhncGRwOWJ4anVHMk5LOTdzb2wzbzdVaXolMkI5ZVZFYVZNbEUyRmszajdFUmVzTTNZSG5FQ1pVSDdCT05OVGpweTdSVk5pJTJGWWltR3VOWXJpQzdDbXN3djRQTllpRll6dzlRaGxxWkt3TmZDTTZJVXBGWjBUNHJaeDhHNzh6a3YydE5WYmZZQzRxTlFlZEdpMDduV1ozM2RsU3VWeFJPVmZZNUp4T1dITUkwJTNEJnJlcXVlc3Rfa2V5PScgKyByZXF1ZXN0X2tleTIgKyAnJnNpZ25hdHVyZT0nICsgc2lnbmF0dXJlMiArICcmYXBwX2lkPTEmYWRfdmVyc2lvbj0xJzsgLy9sb2coYm9keSkKCiAgICAgICAgdmFyIGh0bWwgPSBmZXRjaCgnaHR0cHM6Ly9hcGkuOHV0ZHRjcS5jb20vQXBwL1Jlc291cmNlL1Z1cmxEZXRhaWwvc2hvd09uZScsIHsKICAgICAgICAgICAgaGVhZGVyczogewogICAgICAgICAgICAgICAgJ0NhY2hlLUNvbnRyb2wnOiAnbm8tY2FjaGUnLAogICAgICAgICAgICAgICAgJ1ZlcnNpb24nOiAnMjQwNjAyNScsCiAgICAgICAgICAgICAgICAnUGFja2FnZU5hbWUnOiAnY29tLnVmMDc2YmYwYzI0Ni5xZTQzOWYwZDVlLm04YWFmNTZiNzI1YS5pZmViNjQ3MzQ2ZicsCiAgICAgICAgICAgICAgICAnVmVyJzogJzEuOS4yJywKICAgICAgICAgICAgICAgICdSZWZlcmVyJzogJ2h0dHBzOi8vYXBpLjh1dGR0Y3EuY29tJywKICAgICAgICAgICAgICAgICdYLUN1c3RvbWVyLUNsaWVudC1JcCc6ICcxMjcuMC4wLjEnLAogICAgICAgICAgICAgICAgJ0NvbnRlbnQtVHlwZSc6ICdhcHBsaWNhdGlvbi94LXd3dy1mb3JtLXVybGVuY29kZWQnLAogICAgICAgICAgICAgICAgJ0hvc3QnOiAnYXBpLjh1dGR0Y3EuY29tJywKICAgICAgICAgICAgICAgICdDb25uZWN0aW9uJzogJ0tlZXAtQWxpdmUnLAogICAgICAgICAgICAgICAgLy8nQWNjZXB0LUVuY29kaW5nJzogJ2d6aXAnLAogICAgICAgICAgICAgICAgJ1VzZXItQWdlbnQnOiAnb2todHRwLzMuMTIuMCcKICAgICAgICAgICAgfSwKICAgICAgICAgICAgYm9keTogYm9keSwKICAgICAgICAgICAgbWV0aG9kOiAnUE9TVCcsCiAgICAgICAgICAgIHJlamVjdENvZGluZzogdHJ1ZQogICAgICAgIH0pOyAvL2xvZyhodG1sKQoKICAgICAgICB2YXIgZGF0YSA9IEpTT04ucGFyc2UoaHRtbCkuZGF0YTsKICAgICAgICAvLyAvL2NvbnNvbGUubG9nKCJkZGRkZGQ9PT09PSIrSlNPTi5zdHJpbmdpZnkoZGF0YSkpCiAgICAgICAgdmFyIHJlc3BvbnNlX2tleSA9IGRhdGEucmVzcG9uc2Vfa2V5OyAvL2xvZyhyZXNwb25zZV9rZXkpCiAgICAgICAgdmFyIGtleXMgPSBkYXRhLmtleXM7IC8vbG9nKGtleXMpCgogICAgICAgIHZhciBib2R5a2V5ID0gIk1JSUNkZ0lCQURBTkJna3Foa2lHOXcwQkFRRUZBQVNDQW1Bd2dnSmNBZ0VBQW9HQWU2aEtyV0xpMXpRbWpUVDFvemJFNFFkRmVKR054dWJ4bGQ2R3JGR3hpbXhmTXNNQjZCcEpocGNUb3VBcXl3QUZwcGlLZXRVQkJiWHdZc1lVMXdOcjY0OFhWbVBtQ01DeTRyWTh2ZGxpRm5iTVVqMDg2RFU2Wisvb1hCZFdVMy9iMUcwRE4zRTl3VUxSU3djS1pUM3dqL2NDSTF2c0NtM2dqMlI1U3FrQTlZMENBd0VBQVFLQmdBSkgrNEN4VjAvekJWY0xpQkNIdlNBTm0wbDdIZXR5YlRoL2oycDBZMXNUWHJvNEFMd0FhQ1RVZXFkQmpXaUxTbzlsTndESEZ5cTh6WDkwK2dOeGE3YzVFcWNXVjlGbWxWWHI4VmhmQnpjWm8xblhlTmRYRlQ3dFEyeWFoL29kdGRjeCt2Uk1TR0pkMXQvNWs1YkRkOXdBdllkSURibE1BZyt3aUtLWjVLY2RBa0VBMWNDYWtFTjROZXhrRjV0SFBSclI2WE9ZL1hIZmtxWHhFaE1xbU5iQjlVMzRzYVRKbkxXSUhDOElYeXM2UW16ejMwVHR6Q2p1T3FLUlJ5K0ZNTTRUZHdKQkFKUVpGUGpzR0MrUnFjRzVVdlZNaU1QaG53ZS9iWEVlaFNoSzg2eUpLL2cvVWlLck84N2gzYUV1NWdjSnFCeWdUcTNCQkJvSDJtZDNwci9XK2hVTVdCc0NRUUNoZmhUSXJkRGluS2k2bFJ4cmRCbm4wT2hqZzJjd3VxSzV6elU5cC9OK1M5eDdDazh3VUk1M0RLbThqVUpFOFdBRzdXTGovb0NPV0VoK2ljNk5Jd1RkQWtFQWowWDhuaHg2QVhzZ0NZUnFsMWtsYnF0Vm1MOCs5NUtaSzdQbkxXRy9JZmpRVXkzcFBHb1NhWjdmZHF1RzhicThveWY1K2R6akUvb1RYY0J5Uys2WFJRSkFQLzVjaXkxYkwzTmhVaHNhT1Z5NTVNSFhuUGpkY1RYMEZhTGkreWJYWklmSVEyUDRyYjE5bVZxMWZlTWJDWGh6K0wxckc4b2F0NWxZS2ZwZThrODNaQT09IjsgLy9sb2coYm9keWtleSkKICAgICAgICB2YXIgYm9keWtleWl2ID0gSlNPTi5wYXJzZShSU0EuZGVjb2RlKGtleXMsIGJvZHlrZXkpKTsgLy9sb2coYm9keWtleWl2KQogICAgICAgIHZhciBrZXkgPSBDcnlwdG9KUy5lbmMuVXRmOC5wYXJzZShib2R5a2V5aXYua2V5KTsgLy9sb2coa2V5KQogICAgICAgIHZhciBpdiA9IENyeXB0b0pTLmVuYy5VdGY4LnBhcnNlKGJvZHlrZXlpdi5pdik7IC8vbG9nKGl2KQogICAgICAgIHZhciBodG1sMiA9IERlY3J5cHQocmVzcG9uc2Vfa2V5LCBrZXksIGl2KTsgLy9sb2coaHRtbDIpCiAgICAgICAgdmFyIHVybCA9IEpTT04ucGFyc2UoaHRtbDIpLnVybDsgLy9sb2codXJsKQogICAgICAgIGlucHV0ID0gewogICAgICAgICAgICB1cmw6IHVybCwKICAgICAgICAgICAgcGFyc2U6IDAsCiAgICAgICAgICAgIGhlYWRlcjogcnVsZS5oZWFkZXJzCiAgICAgICAgfQogICAgICAgIHNldFJlc3VsdChkKQogICAgfSksCiAgICAvLyAgIOaOqOiNkDogJGpzLnRvU3RyaW5nKCgpID0+IHsKICAgIC8vICAgICBsZXQgZCA9IFtdOwogICAgLy8gICAgIGxldCBkYXRhID0gSlNPTi5wYXJzZShyZXF1ZXN0KGlucHV0KSkKICAgIC8vICAgICBkYXRhLmZvckVhY2goaXRlbSA9PiB7CiAgICAvLyAgICAgICBpdGVtLmRhdGFzLmZvckVhY2goaXQgPT4gewogICAgLy8gICAgICAgICBsZXQgaWQgPSBgaHR0cDovLzExNC4xMzIuNTUuMjMvYmwvbWIvYXBpLnBocC9wcm92aWRlL3ZvZC8/YWM9dmlkZW9saXN0JndkPSR7aXQudGl0bGV9JmA7CiAgICAvLyAgICAgICAgIGQucHVzaCh7CiAgICAvLyAgICAgICAgICAgdXJsOiBpZCwKICAgIC8vICAgICAgICAgICB0aXRsZTogaXQudGl0bGUsCiAgICAvLyAgICAgICAgICAgaW1nOiBpdC5waWMsCiAgICAvLyAgICAgICAgICAgZGVzYzogaXQuYWNyLAogICAgLy8gICAgICAgICB9KQogICAgLy8gICAgICAgfSk7CiAgICAvLyAgICAgfSk7CiAgICAvLyAgICAgc2V0UmVzdWx0KGQpCiAgICAvLyAgIH0pLAogICAg5LiA57qnOiAkanMudG9TdHJpbmcoKCkgPT4gewogICAgICAgIGxldCBkID0gW107CgogICAgICAgIGZ1bmN0aW9uIEVuY3J5cHQocGxhaW5UZXh0KSB7CiAgICAgICAgICAgIGxldCBrZXkgPSBDcnlwdG9KUy5lbmMuVXRmOC5wYXJzZSgibXZYQlNXN2VrcmVJdE5zVCIpOwogICAgICAgICAgICBsZXQgaXYgPSBDcnlwdG9KUy5lbmMuVXRmOC5wYXJzZSgiMlUzSXJKTDhzekFLcDBGaiIpOwogICAgICAgICAgICAvLyDlsIbmlofmnKzliqDlr4bkuLogQUVTL0NCQy9QS0NTNVBhZGRpbmcg5qC85byPCiAgICAgICAgICAgIGxldCBlbmNyeXB0ZWQgPSBDcnlwdG9KUy5BRVMuZW5jcnlwdChwbGFpblRleHQsIGtleSwgewogICAgICAgICAgICAgICAgaXY6IGl2LAogICAgICAgICAgICAgICAgbW9kZTogQ3J5cHRvSlMubW9kZS5DQkMsCiAgICAgICAgICAgICAgICBwYWRkaW5nOiBDcnlwdG9KUy5wYWQuUGtjczcKICAgICAgICAgICAgfSk7CgogICAgICAgICAgICAvLyDojrflj5bliqDlr4bnu5PmnpzlubbovazkuLogSGV4IOagvOW8jwogICAgICAgICAgICBsZXQgZW5jcnlwdGVkSGV4ID0gZW5jcnlwdGVkLmNpcGhlcnRleHQudG9TdHJpbmcoQ3J5cHRvSlMuZW5jLkhleCk7CiAgICAgICAgICAgIHJldHVybiBlbmNyeXB0ZWRIZXgudG9VcHBlckNhc2UoKTsgLy8g6L+U5Zue5aSn5YaZIEhleCDmoLzlvI8KICAgICAgICB9CgogICAgICAgIGZ1bmN0aW9uIERlY3J5cHQod29yZCwga2V5LCBpdikgewogICAgICAgICAgICBsZXQgZW5jcnlwdGVkSGV4U3RyID0gQ3J5cHRvSlMuZW5jLkhleC5wYXJzZSh3b3JkKTsKCiAgICAgICAgICAgIC8vIOS9v+eUqEFFUy9DQkMvUEtDUzVQYWRkaW5n5qih5byP6L+b6KGM6Kej5a+GCiAgICAgICAgICAgIGxldCBkZWNyeXB0ID0gQ3J5cHRvSlMuQUVTLmRlY3J5cHQoewogICAgICAgICAgICAgICAgY2lwaGVydGV4dDogZW5jcnlwdGVkSGV4U3RyCiAgICAgICAgICAgIH0sIGtleSwgewogICAgICAgICAgICAgICAgaXY6IGl2LAogICAgICAgICAgICAgICAgbW9kZTogQ3J5cHRvSlMubW9kZS5DQkMsIC8vIOS9v+eUqENCQ+aooeW8jwogICAgICAgICAgICAgICAgcGFkZGluZzogQ3J5cHRvSlMucGFkLlBrY3M3IC8vIOS9v+eUqFBLQ1MjN+Whq+WFhQogICAgICAgICAgICB9KTsKCiAgICAgICAgICAgIC8vIOWwhuino+WvhuWQjueahOaVsOaNrui9rOaNouS4uuWOn+Wni+aWh+acrAogICAgICAgICAgICBsZXQgZGVjcnlwdGVkU3RyID0gZGVjcnlwdC50b1N0cmluZyhDcnlwdG9KUy5lbmMuVXRmOCk7CgogICAgICAgICAgICAvLyDov5Tlm57op6Plr4blkI7nmoTmlofmnKwKICAgICAgICAgICAgcmV0dXJuIGRlY3J5cHRlZFN0cjsKICAgICAgICB9CgogICAgICAgIGZ1bmN0aW9uIGdldGJvZHkzKGtleSwgdCkgewogICAgICAgICAgICB2YXIgc2lnbmF0dXJlID0gJ3Rva2VuX2lkPSx0b2tlbj0xYmU4NmU4ZTE4YTlmYTE4YjJiOGQ1NDMyNjk5ZGFkMC5hYzAwOGVkNjUwZmQwODdiZmJlY2YyZmRhOWQ4MmU5ODM1MjUzZWYyNDg0M2U2YjE4ZmNkMTI4YjEwNzYzNDk3YmNmOWQ1M2U5NTlmNTM3N2NkZTAzOGMyMGNjZjlkMTdmNjA0YzliOGJiNmU2MTA0MWRlZjg2NzI5YjJmYzc0MDhiZDI0MWUyM2MyMTNhYzU3ZjAyMjZlZTY1NmUyYmIwYTU4M2FlMGU0ZjNiZjZjNmFiNmM0OTBjOWE2ZjBkOGNkZmQzNjZhYWNmNWQ4MzE5MzY3MWE4Zjc3Y2QxYWYxZmYyZTkxNDVkZTkyZWM0M2VjODdjZjRiZGM1NjNmNmU5MTlmZTMyODYxYjBlOTNiMTE4ZWMzN2Q4MDM1ZmJiM2MuNTlkZDA1YzVkOWE4YWU3MjY1Mjg3ODMxMjgyMThmMTVmZTZmMmMwYzgxNDVlZGRhYjExMmIzNzRmY2ZlM2Q3OSxwaG9uZV90eXBlPTEscmVxdWVzdF9rZXk9JyArIGtleSArICcsYXBwX2lkPTEsdGltZT0nICsgdCArICcsa2V5cz1xRHBvdEUyYmVkaW1LM1FHcWx5VjVpZVhYQzNFaGFQTFErSU9KeUhuSGZsQ2o1dy83RVNLN0ZneXdNdnJnanhieDBHa2xFRkxJNCtKc2hneVNlNjMzT0lSc3R1a3R3ZGlDeTNDVCtmTFNwdXhCSkRJbGZYUURhZUgzaWcxd2lCMEpzWjYwMVhIaUZ3ZUdNdTR0WmZuU3BIZzNPbm9MNm56L3V1clVpZjJPSzQ9KiZ6dmR2ZHZkZGJmaWtra3VtdG1kd3FwcHA/fDRZIXMhMmJyJzsgLy9sb2coc2lnbmF0dXJlKQogICAgICAgICAgICB2YXIgc2lnbmF0dXJlMiA9IG1kNShzaWduYXR1cmUpLnRvVXBwZXJDYXNlKCk7IC8vbG9nKHNpZ25hdHVyZTIpCiAgICAgICAgICAgIHZhciBib2R5ID0gJ3Rva2VuPTFiZTg2ZThlMThhOWZhMThiMmI4ZDU0MzI2OTlkYWQwLmFjMDA4ZWQ2NTBmZDA4N2JmYmVjZjJmZGE5ZDgyZTk4MzUyNTNlZjI0ODQzZTZiMThmY2QxMjhiMTA3NjM0OTdiY2Y5ZDUzZTk1OWY1Mzc3Y2RlMDM4YzIwY2NmOWQxN2Y2MDRjOWI4YmI2ZTYxMDQxZGVmODY3MjliMmZjNzQwOGJkMjQxZTIzYzIxM2FjNTdmMDIyNmVlNjU2ZTJiYjBhNTgzYWUwZTRmM2JmNmM2YWI2YzQ5MGM5YTZmMGQ4Y2RmZDM2NmFhY2Y1ZDgzMTkzNjcxYThmNzdjZDFhZjFmZjJlOTE0NWRlOTJlYzQzZWM4N2NmNGJkYzU2M2Y2ZTkxOWZlMzI4NjFiMGU5M2IxMThlYzM3ZDgwMzVmYmIzYy41OWRkMDVjNWQ5YThhZTcyNjUyODc4MzEyODIxOGYxNWZlNmYyYzBjODE0NWVkZGFiMTEyYjM3NGZjZmUzZDc5JnRva2VuX2lkPSZwaG9uZV90eXBlPTEmdGltZT0nICsgdCArICcmcGhvbmVfbW9kZWw9eGlhb21pLTIyMDIxMjExcmMma2V5cz1xRHBvdEUyYmVkaW1LM1FHcWx5VjVpZVhYQzNFaGFQTFElMkJJT0p5SG5IZmxDajV3JTJGN0VTSzdGZ3l3TXZyZ2p4YngwR2tsRUZMSTQlMkJKc2hneVNlNjMzT0lSc3R1a3R3ZGlDeTNDVCUyQmZMU3B1eEJKRElsZlhRRGFlSDNpZzF3aUIwSnNaNjAxWEhpRndlR011NHRaZm5TcEhnM09ub0w2bnolMkZ1dXJVaWYyT0s0JTNEJnJlcXVlc3Rfa2V5PScgKyBrZXkgKyAnJnNpZ25hdHVyZT0nICsgc2lnbmF0dXJlMiArICcmYXBwX2lkPTEmYWRfdmVyc2lvbj0xJzsKICAgICAgICAgICAgcmV0dXJuIGJvZHkKICAgICAgICB9CiAgICAgICAgY29uc3QgYm9keWtleSA9ICJNSUlDZGdJQkFEQU5CZ2txaGtpRzl3MEJBUUVGQUFTQ0FtQXdnZ0pjQWdFQUFvR0FlNmhLcldMaTF6UW1qVFQxb3piRTRRZEZlSkdOeHVieGxkNkdyRkd4aW14Zk1zTUI2QnBKaHBjVG91QXF5d0FGcHBpS2V0VUJCYlh3WXNZVTF3TnI2NDhYVm1QbUNNQ3k0clk4dmRsaUZuYk1VajA4NkRVNlorL29YQmRXVTMvYjFHMEROM0U5d1VMUlN3Y0taVDN3ai9jQ0kxdnNDbTNnajJSNVNxa0E5WTBDQXdFQUFRS0JnQUpIKzRDeFYwL3pCVmNMaUJDSHZTQU5tMGw3SGV0eWJUaC9qMnAwWTFzVFhybzRBTHdBYUNUVWVxZEJqV2lMU285bE53REhGeXE4elg5MCtnTnhhN2M1RXFjV1Y5Rm1sVlhyOFZoZkJ6Y1pvMW5YZU5kWEZUN3RRMnlhaC9vZHRkY3grdlJNU0dKZDF0LzVrNWJEZDl3QXZZZElEYmxNQWcrd2lLS1o1S2NkQWtFQTFjQ2FrRU40TmV4a0Y1dEhQUnJSNlhPWS9YSGZrcVh4RWhNcW1OYkI5VTM0c2FUSm5MV0lIQzhJWHlzNlFtenozMFR0ekNqdU9xS1JSeStGTU00VGR3SkJBSlFaRlBqc0dDK1JxY0c1VXZWTWlNUGhud2UvYlhFZWhTaEs4NnlKSy9nL1VpS3JPODdoM2FFdTVnY0pxQnlnVHEzQkJCb0gybWQzcHIvVytoVU1XQnNDUVFDaGZoVElyZERpbktpNmxSeHJkQm5uME9oamcyY3d1cUs1enpVOXAvTitTOXg3Q2s4d1VJNTNES204alVKRThXQUc3V0xqL29DT1dFaCtpYzZOSXdUZEFrRUFqMFg4bmh4NkFYc2dDWVJxbDFrbGJxdFZtTDgrOTVLWks3UG5MV0cvSWZqUVV5M3BQR29TYVo3ZmRxdUc4YnE4b3lmNStkempFL29UWGNCeVMrNlhSUUpBUC81Y2l5MWJMM05oVWhzYU9WeTU1TUhYblBqZGNUWDBGYUxpK3liWFpJZklRMlA0cmIxOW1WcTFmZU1iQ1hoeitMMXJHOG9hdDVsWUtmcGU4azgzWkE9PSI7CgogICAgICAgIGZ1bmN0aW9uIGdldGh0bWwodSwgYm9keSwgaGVhZGVycykgewogICAgICAgICAgICB2YXIgaGQgPSBmZXRjaCh1LCB7CiAgICAgICAgICAgICAgICBoZWFkZXJzOiBoZWFkZXJzLAogICAgICAgICAgICAgICAgYm9keTogYm9keSwKICAgICAgICAgICAgICAgIG1ldGhvZDogJ1BPU1QnLAogICAgICAgICAgICAgICAgcmVqZWN0Q29kaW5nOiB0cnVlCiAgICAgICAgICAgIH0pOwogICAgICAgICAgICB2YXIgYmFubmVyID0gSlNPTi5wYXJzZShoZCkuZGF0YTsKICAgICAgICAgICAgdmFyIHJlc3BvbnNlX2tleSA9IGJhbm5lci5yZXNwb25zZV9rZXk7IC8vbG9nKCkKICAgICAgICAgICAgdmFyIGtleXMgPSBiYW5uZXIua2V5czsgLy9sb2coa2V5cykKICAgICAgICAgICAgdmFyIGJvZHlrZXlpdiA9IEpTT04ucGFyc2UoUlNBLmRlY29kZShrZXlzLCBib2R5a2V5KSk7CiAgICAgICAgICAgIHZhciBrZXkgPSBDcnlwdG9KUy5lbmMuVXRmOC5wYXJzZShib2R5a2V5aXYua2V5KTsKICAgICAgICAgICAgdmFyIGl2ID0gQ3J5cHRvSlMuZW5jLlV0ZjgucGFyc2UoYm9keWtleWl2Lml2KTsKICAgICAgICAgICAgdmFyIGh0bWwgPSBEZWNyeXB0KHJlc3BvbnNlX2tleSwga2V5LCBpdik7CiAgICAgICAgICAgIHJldHVybiBodG1sCiAgICAgICAgfQoKICAgICAgICBmdW5jdGlvbiBocXN1YihNWV9DQVRFKSB7CiAgICAgICAgICAgIHZhciBzdWJzID0gWyI1IiwgIjEyIiwgIjMwIiwgIjIyIiwgIiJdCiAgICAgICAgICAgIHZhciB0aWRzID0gWyIxIiwgIjIiLCAiNCIsICIzIiwgIjY0Il0KICAgICAgICAgICAgbGV0IGluZGV4ID0gdGlkcy5pbmRleE9mKE1ZX0NBVEUpOwogICAgICAgICAgICBpZiAoaW5kZXggIT09IC0xKSB7CiAgICAgICAgICAgICAgICByZXR1cm4gc3Vic1tpbmRleF07CiAgICAgICAgICAgIH0KICAgICAgICAgICAgcmV0dXJuICIiOyAvLyDmiJbogIXmoLnmja7pnIDopoHov5Tlm57lhbbku5blgLwKICAgICAgICB9CiAgICAgICAgdmFyIGhlYWRlcnMgPSB7CiAgICAgICAgICAgICdDYWNoZS1Db250cm9sJzogJ25vLWNhY2hlJywKICAgICAgICAgICAgJ1ZlcnNpb24nOiAnMjQwNjAyNScsCiAgICAgICAgICAgICdQYWNrYWdlTmFtZSc6ICdjb20udWYwNzZiZjBjMjQ2LnFlNDM5ZjBkNWUubThhYWY1NmI3MjVhLmlmZWI2NDczNDZmJywKICAgICAgICAgICAgJ1Zlcic6ICcxLjkuMicsCiAgICAgICAgICAgICdSZWZlcmVyJzogJ2h0dHBzOi8vYXBpLjh1dGR0Y3EuY29tJywKICAgICAgICAgICAgJ1gtQ3VzdG9tZXItQ2xpZW50LUlwJzogJzEyNy4wLjAuMScsCiAgICAgICAgICAgICdDb250ZW50LVR5cGUnOiAnYXBwbGljYXRpb24veC13d3ctZm9ybS11cmxlbmNvZGVkJywKICAgICAgICAgICAgJ0hvc3QnOiAnYXBpLjh1dGR0Y3EuY29tJywKICAgICAgICAgICAgJ0Nvbm5lY3Rpb24nOiAnS2VlcC1BbGl2ZScsCiAgICAgICAgICAgIC8vJ0FjY2VwdC1FbmNvZGluZyc6ICdnemlwJywKICAgICAgICAgICAgJ1VzZXItQWdlbnQnOiAnb2todHRwLzMuMTIuMCcKICAgICAgICB9CiAgICAgICAgdmFyIHRpZCA9IE1ZX0NBVEU7CiAgICAgICAgdmFyIHN1YiA9IGhxc3ViKE1ZX0NBVEUpCiAgICAgICAgdmFyIHRpbWVzdGFtcCA9IG5ldyBEYXRlKCkuZ2V0VGltZSgpIC8gMTAwMDsKICAgICAgICB2YXIgdCA9IHRpbWVzdGFtcC50b1N0cmluZygpLnNwbGl0KCcuJylbMF07CiAgICAgICAgdmFyIHJlcXVlc3Rfa2V5ID0gSlNPTi5zdHJpbmdpZnkoewogICAgICAgICAgICAiYXJlYSI6IChNWV9GTC5hcmVhIHx8IDApLnRvU3RyaW5nKCksCiAgICAgICAgICAgICJzdWIiOiAoTVlfRkwuc3ViIHx8IHN1YikudG9TdHJpbmcoKSwKICAgICAgICAgICAgInllYXIiOiAoTVlfRkwueWVhciB8fCAwKS50b1N0cmluZygpLAogICAgICAgICAgICAicGFnZVNpemUiOiAiMzAiLAogICAgICAgICAgICAic29ydCI6IChNWV9GTC5zb3J0IHx8ICJkX2lkIikudG9TdHJpbmcoKSwKICAgICAgICAgICAgInBhZ2UiOiBNWV9QQUdFLAogICAgICAgICAgICAidGlkIjogdGlkCiAgICAgICAgfSk7CiAgICAgICAgdmFyIHJlcXVlc3Rfa2V5MiA9IEVuY3J5cHQocmVxdWVzdF9rZXkpOwogICAgICAgIHZhciBib2R5ID0gZ2V0Ym9keTMocmVxdWVzdF9rZXkyLCB0KQogICAgICAgIHZhciBodG1sMiA9IGdldGh0bWwoImh0dHBzOi8vYXBpLjh1dGR0Y3EuY29tL0FwcC9JbmRleExpc3QvaW5kZXhMaXN0IiwgYm9keSwgaGVhZGVycykKICAgICAgICAvL2NvbnNvbGUubG9nKCJ0dHR0dGxpZWI9PSIraHRtbDIpCiAgICAgICAgdmFyIGxpc3QgPSBKU09OLnBhcnNlKGh0bWwyKS5saXN0OyAvL2xvZyhsaXN0KQogICAgICAgIGxpc3QuZm9yRWFjaChkYXRhID0+IHsKICAgICAgICAgICAgZC5wdXNoKHsKICAgICAgICAgICAgICAgIHRpdGxlOiBkYXRhLnZvZF9uYW1lLAogICAgICAgICAgICAgICAgZGVzYzogZGF0YS52b2RfY29udGludSA9PSAwID8gJ+eUteW9sScgOiAn5pu05paw6IezJyArIGRhdGEudm9kX2NvbnRpbnUgKyAn6ZuGJywKICAgICAgICAgICAgICAgIHllYXI6IGRhdGEudm9kX3Njcm9lLAogICAgICAgICAgICAgICAgaW1nOiBkYXRhLnZvZF9waWMsCiAgICAgICAgICAgICAgICB1cmw6IGAke2RhdGEudm9kX2lkfS8ke2RhdGEudm9kX2NvbnRpbnV9YCwKICAgICAgICAgICAgfSkKICAgICAgICB9KQogICAgICAgIHNldFJlc3VsdChkKQogICAgfSksCiAgICDkuoznuqc6ICRqcy50b1N0cmluZygoKSA9PiB7CiAgICAgICAgLy8gdmFyIGQgPSBbXTsKICAgICAgICBmdW5jdGlvbiBFbmNyeXB0KHBsYWluVGV4dCkgewogICAgICAgICAgICBsZXQga2V5ID0gQ3J5cHRvSlMuZW5jLlV0ZjgucGFyc2UoIm12WEJTVzdla3JlSXROc1QiKTsKICAgICAgICAgICAgbGV0IGl2ID0gQ3J5cHRvSlMuZW5jLlV0ZjgucGFyc2UoIjJVM0lySkw4c3pBS3AwRmoiKTsKICAgICAgICAgICAgLy8g5bCG5paH5pys5Yqg5a+G5Li6IEFFUy9DQkMvUEtDUzVQYWRkaW5nIOagvOW8jwogICAgICAgICAgICBsZXQgZW5jcnlwdGVkID0gQ3J5cHRvSlMuQUVTLmVuY3J5cHQocGxhaW5UZXh0LCBrZXksIHsKICAgICAgICAgICAgICAgIGl2OiBpdiwKICAgICAgICAgICAgICAgIG1vZGU6IENyeXB0b0pTLm1vZGUuQ0JDLAogICAgICAgICAgICAgICAgcGFkZGluZzogQ3J5cHRvSlMucGFkLlBrY3M3CiAgICAgICAgICAgIH0pOwoKICAgICAgICAgICAgLy8g6I635Y+W5Yqg5a+G57uT5p6c5bm26L2s5Li6IEhleCDmoLzlvI8KICAgICAgICAgICAgbGV0IGVuY3J5cHRlZEhleCA9IGVuY3J5cHRlZC5jaXBoZXJ0ZXh0LnRvU3RyaW5nKENyeXB0b0pTLmVuYy5IZXgpOwogICAgICAgICAgICByZXR1cm4gZW5jcnlwdGVkSGV4LnRvVXBwZXJDYXNlKCk7IC8vIOi/lOWbnuWkp+WGmSBIZXgg5qC85byPCiAgICAgICAgfQoKICAgICAgICBmdW5jdGlvbiBEZWNyeXB0KHdvcmQsIGtleSwgaXYpIHsKICAgICAgICAgICAgbGV0IGVuY3J5cHRlZEhleFN0ciA9IENyeXB0b0pTLmVuYy5IZXgucGFyc2Uod29yZCk7CgogICAgICAgICAgICAvLyDkvb/nlKhBRVMvQ0JDL1BLQ1M1UGFkZGluZ+aooeW8j+i/m+ihjOino+WvhgogICAgICAgICAgICBsZXQgZGVjcnlwdCA9IENyeXB0b0pTLkFFUy5kZWNyeXB0KHsKICAgICAgICAgICAgICAgIGNpcGhlcnRleHQ6IGVuY3J5cHRlZEhleFN0cgogICAgICAgICAgICB9LCBrZXksIHsKICAgICAgICAgICAgICAgIGl2OiBpdiwKICAgICAgICAgICAgICAgIG1vZGU6IENyeXB0b0pTLm1vZGUuQ0JDLCAvLyDkvb/nlKhDQkPmqKHlvI8KICAgICAgICAgICAgICAgIHBhZGRpbmc6IENyeXB0b0pTLnBhZC5Qa2NzNyAvLyDkvb/nlKhQS0NTIzfloavlhYUKICAgICAgICAgICAgfSk7CgogICAgICAgICAgICAvLyDlsIbop6Plr4blkI7nmoTmlbDmja7ovazmjaLkuLrljp/lp4vmlofmnKwKICAgICAgICAgICAgbGV0IGRlY3J5cHRlZFN0ciA9IGRlY3J5cHQudG9TdHJpbmcoQ3J5cHRvSlMuZW5jLlV0ZjgpOwoKICAgICAgICAgICAgLy8g6L+U5Zue6Kej5a+G5ZCO55qE5paH5pysCiAgICAgICAgICAgIHJldHVybiBkZWNyeXB0ZWRTdHI7CiAgICAgICAgfQoKICAgICAgICBmdW5jdGlvbiBnZXRib2R5MihrZXksIHQpIHsKICAgICAgICAgICAgdmFyIHNpZ25hdHVyZSA9ICd0b2tlbl9pZD0sdG9rZW49MWJlODZlOGUxOGE5ZmExOGIyYjhkNTQzMjY5OWRhZDAuYWMwMDhlZDY1MGZkMDg3YmZiZWNmMmZkYTlkODJlOTgzNTI1M2VmMjQ4NDNlNmIxOGZjZDEyOGIxMDc2MzQ5N2JjZjlkNTNlOTU5ZjUzNzdjZGUwMzhjMjBjY2Y5ZDE3ZjYwNGM5YjhiYjZlNjEwNDFkZWY4NjcyOWIyZmM3NDA4YmQyNDFlMjNjMjEzYWM1N2YwMjI2ZWU2NTZlMmJiMGE1ODNhZTBlNGYzYmY2YzZhYjZjNDkwYzlhNmYwZDhjZGZkMzY2YWFjZjVkODMxOTM2NzFhOGY3N2NkMWFmMWZmMmU5MTQ1ZGU5MmVjNDNlYzg3Y2Y0YmRjNTYzZjZlOTE5ZmUzMjg2MWIwZTkzYjExOGVjMzdkODAzNWZiYjNjLjU5ZGQwNWM1ZDlhOGFlNzI2NTI4NzgzMTI4MjE4ZjE1ZmU2ZjJjMGM4MTQ1ZWRkYWIxMTJiMzc0ZmNmZTNkNzkscGhvbmVfdHlwZT0xLHJlcXVlc3Rfa2V5PScgKyBrZXkgKyAnLGFwcF9pZD0xLHRpbWU9JyArIHQgKyAnLGtleXM9UW14aTVjaVdYYlF6a3I3bytTVU5pVXVReFFFZjgvQVZ5VVdZNFQvQkdoY1hCSVV6NG5PeUhCR2Y5QTRLYk0waUtGM3lwOU03V0FZMHJyczVQemRUQU9CNDVwbGNTMnpaMHdVaWJjWHVHSjI5VlZHUldLR3dFOXp1MnZMd2hmZ2pUYWFEcFhvNHJieSs3R3hYVGt0ekpteHZuZU9VZFllSGkrUFpzVGhsdlBJPSomenZkdmR2ZGRiZmlra2t1bXRtZHdxcHBwP3w0WSFzITJicic7IC8vbG9nKHNpZ25hdHVyZSkKICAgICAgICAgICAgdmFyIHNpZ25hdHVyZTIgPSBtZDUoc2lnbmF0dXJlKTsgLy9sb2coc2lnbmF0dXJlMikKICAgICAgICAgICAgdmFyIGJvZHkgPSAndG9rZW49MWJlODZlOGUxOGE5ZmExOGIyYjhkNTQzMjY5OWRhZDAuYWMwMDhlZDY1MGZkMDg3YmZiZWNmMmZkYTlkODJlOTgzNTI1M2VmMjQ4NDNlNmIxOGZjZDEyOGIxMDc2MzQ5N2JjZjlkNTNlOTU5ZjUzNzdjZGUwMzhjMjBjY2Y5ZDE3ZjYwNGM5YjhiYjZlNjEwNDFkZWY4NjcyOWIyZmM3NDA4YmQyNDFlMjNjMjEzYWM1N2YwMjI2ZWU2NTZlMmJiMGE1ODNhZTBlNGYzYmY2YzZhYjZjNDkwYzlhNmYwZDhjZGZkMzY2YWFjZjVkODMxOTM2NzFhOGY3N2NkMWFmMWZmMmU5MTQ1ZGU5MmVjNDNlYzg3Y2Y0YmRjNTYzZjZlOTE5ZmUzMjg2MWIwZTkzYjExOGVjMzdkODAzNWZiYjNjLjU5ZGQwNWM1ZDlhOGFlNzI2NTI4NzgzMTI4MjE4ZjE1ZmU2ZjJjMGM4MTQ1ZWRkYWIxMTJiMzc0ZmNmZTNkNzkmdG9rZW5faWQ9JnBob25lX3R5cGU9MSZ0aW1lPScgKyB0ICsgJyZwaG9uZV9tb2RlbD14aWFvbWktMjIwMjEyMTFyYyZrZXlzPVFteGk1Y2lXWGJRemtyN28lMkJTVU5pVXVReFFFZjglMkZBVnlVV1k0VCUyRkJHaGNYQklVejRuT3lIQkdmOUE0S2JNMGlLRjN5cDlNN1dBWTBycnM1UHpkVEFPQjQ1cGxjUzJ6WjB3VWliY1h1R0oyOVZWR1JXS0d3RTl6dTJ2THdoZmdqVGFhRHBYbzRyYnklMkI3R3hYVGt0ekpteHZuZU9VZFllSGklMkJQWnNUaGx2UEklM0QmcmVxdWVzdF9rZXk9JyArIGtleSArICcmc2lnbmF0dXJlPScgKyBzaWduYXR1cmUyICsgJyZhcHBfaWQ9MSZhZF92ZXJzaW9uPTEnOyAvL2xvZyhib2R5KQogICAgICAgICAgICByZXR1cm4gYm9keQogICAgICAgIH0KICAgICAgICBjb25zdCBib2R5a2V5ID0gIk1JSUNkZ0lCQURBTkJna3Foa2lHOXcwQkFRRUZBQVNDQW1Bd2dnSmNBZ0VBQW9HQWU2aEtyV0xpMXpRbWpUVDFvemJFNFFkRmVKR054dWJ4bGQ2R3JGR3hpbXhmTXNNQjZCcEpocGNUb3VBcXl3QUZwcGlLZXRVQkJiWHdZc1lVMXdOcjY0OFhWbVBtQ01DeTRyWTh2ZGxpRm5iTVVqMDg2RFU2Wisvb1hCZFdVMy9iMUcwRE4zRTl3VUxSU3djS1pUM3dqL2NDSTF2c0NtM2dqMlI1U3FrQTlZMENBd0VBQVFLQmdBSkgrNEN4VjAvekJWY0xpQkNIdlNBTm0wbDdIZXR5YlRoL2oycDBZMXNUWHJvNEFMd0FhQ1RVZXFkQmpXaUxTbzlsTndESEZ5cTh6WDkwK2dOeGE3YzVFcWNXVjlGbWxWWHI4VmhmQnpjWm8xblhlTmRYRlQ3dFEyeWFoL29kdGRjeCt2Uk1TR0pkMXQvNWs1YkRkOXdBdllkSURibE1BZyt3aUtLWjVLY2RBa0VBMWNDYWtFTjROZXhrRjV0SFBSclI2WE9ZL1hIZmtxWHhFaE1xbU5iQjlVMzRzYVRKbkxXSUhDOElYeXM2UW16ejMwVHR6Q2p1T3FLUlJ5K0ZNTTRUZHdKQkFKUVpGUGpzR0MrUnFjRzVVdlZNaU1QaG53ZS9iWEVlaFNoSzg2eUpLL2cvVWlLck84N2gzYUV1NWdjSnFCeWdUcTNCQkJvSDJtZDNwci9XK2hVTVdCc0NRUUNoZmhUSXJkRGluS2k2bFJ4cmRCbm4wT2hqZzJjd3VxSzV6elU5cC9OK1M5eDdDazh3VUk1M0RLbThqVUpFOFdBRzdXTGovb0NPV0VoK2ljNk5Jd1RkQWtFQWowWDhuaHg2QVhzZ0NZUnFsMWtsYnF0Vm1MOCs5NUtaSzdQbkxXRy9JZmpRVXkzcFBHb1NhWjdmZHF1RzhicThveWY1K2R6akUvb1RYY0J5Uys2WFJRSkFQLzVjaXkxYkwzTmhVaHNhT1Z5NTVNSFhuUGpkY1RYMEZhTGkreWJYWklmSVEyUDRyYjE5bVZxMWZlTWJDWGh6K0wxckc4b2F0NWxZS2ZwZThrODNaQT09IjsKCiAgICAgICAgZnVuY3Rpb24gZ2V0aHRtbCh1LCBib2R5LCBoZWFkZXJzKSB7CiAgICAgICAgICAgIHZhciBoZCA9IGZldGNoKHUsIHsKICAgICAgICAgICAgICAgIGhlYWRlcnM6IGhlYWRlcnMsCiAgICAgICAgICAgICAgICBib2R5OiBib2R5LAogICAgICAgICAgICAgICAgbWV0aG9kOiAnUE9TVCcsCiAgICAgICAgICAgICAgICByZWplY3RDb2Rpbmc6IHRydWUKICAgICAgICAgICAgfSk7CiAgICAgICAgICAgIHZhciBiYW5uZXIgPSBKU09OLnBhcnNlKGhkKS5kYXRhOwogICAgICAgICAgICB2YXIgcmVzcG9uc2Vfa2V5ID0gYmFubmVyLnJlc3BvbnNlX2tleTsgLy9sb2coKQogICAgICAgICAgICB2YXIga2V5cyA9IGJhbm5lci5rZXlzOyAvL2xvZyhrZXlzKQogICAgICAgICAgICB2YXIgYm9keWtleWl2ID0gSlNPTi5wYXJzZShSU0EuZGVjb2RlKGtleXMsIGJvZHlrZXkpKTsKICAgICAgICAgICAgdmFyIGtleSA9IENyeXB0b0pTLmVuYy5VdGY4LnBhcnNlKGJvZHlrZXlpdi5rZXkpOwogICAgICAgICAgICB2YXIgaXYgPSBDcnlwdG9KUy5lbmMuVXRmOC5wYXJzZShib2R5a2V5aXYuaXYpOwogICAgICAgICAgICB2YXIgaHRtbCA9IERlY3J5cHQocmVzcG9uc2Vfa2V5LCBrZXksIGl2KTsKICAgICAgICAgICAgcmV0dXJuIGh0bWwKICAgICAgICB9CiAgICAgICAgY29uc3QgaGVhZGVycyA9IHsKICAgICAgICAgICAgJ0NhY2hlLUNvbnRyb2wnOiAnbm8tY2FjaGUnLAogICAgICAgICAgICAnVmVyc2lvbic6ICcyNDA2MDI1JywKICAgICAgICAgICAgJ1BhY2thZ2VOYW1lJzogJ2NvbS51ZjA3NmJmMGMyNDYucWU0MzlmMGQ1ZS5tOGFhZjU2YjcyNWEuaWZlYjY0NzM0NmYnLAogICAgICAgICAgICAnVmVyJzogJzEuOS4yJywKICAgICAgICAgICAgJ1JlZmVyZXInOiAnaHR0cHM6Ly9hcGkuOHV0ZHRjcS5jb20nLAogICAgICAgICAgICAnWC1DdXN0b21lci1DbGllbnQtSXAnOiAnMTI3LjAuMC4xJywKICAgICAgICAgICAgJ0NvbnRlbnQtVHlwZSc6ICdhcHBsaWNhdGlvbi94LXd3dy1mb3JtLXVybGVuY29kZWQnLAogICAgICAgICAgICAnSG9zdCc6ICdhcGkuOHV0ZHRjcS5jb20nLAogICAgICAgICAgICAnQ29ubmVjdGlvbic6ICdLZWVwLUFsaXZlJywKICAgICAgICAgICAgLy8nQWNjZXB0LUVuY29kaW5nJzogJ2d6aXAnLAogICAgICAgICAgICAnVXNlci1BZ2VudCc6ICdva2h0dHAvMy4xMi4wJwogICAgICAgIH0KICAgICAgICAvLyB2YXIgTVlfVVJMID0gTVlfVVJMLnNwbGl0KCIjIyIpWzFdOyAvL2xvZyhNWV9VUkwpCiAgICAgICAgaW5wdXQgPSBpbnB1dC5yZXBsYWNlKCdodHRwczovL2FwaS44dXRkdGNxLmNvbS8nLCAnJyk7CiAgICAgICAgLy9jb25zb2xlLmxvZygiaW5wdXQtLS0tPT09PSIraW5wdXQpCgogICAgICAgIC8vIHZhciB2b2RfY29udGludSA9IGlucHV0LnNwbGl0KCIvIilbMV07IC8vbG9nKHZvZF9pZCkKICAgICAgICB2YXIgdm9kX2lkID0gaW5wdXQuc3BsaXQoIi8iKVswXTsKICAgICAgICAvL2NvbnNvbGUubG9nKCJ2b2QtLS0tPT09PSIrdm9kX2lkKQogICAgICAgIHZhciB0aW1lc3RhbXAgPSBuZXcgRGF0ZSgpLmdldFRpbWUoKSAvIDEwMDA7CiAgICAgICAgdmFyIHQgPSB0aW1lc3RhbXAudG9TdHJpbmcoKS5zcGxpdCgnLicpWzBdOwogICAgICAgIHZhciByZXF1ZXN0X2tleSA9IEpTT04uc3RyaW5naWZ5KHsKICAgICAgICAgICAgInRva2VuX2lkIjogIjM5MzY2OCIsCiAgICAgICAgICAgICJ2b2RfaWQiOiB2b2RfaWQsCiAgICAgICAgICAgICJtb2JpbGVfdGltZSI6IHQsCiAgICAgICAgICAgICJ0b2tlbiI6ICIxYmU4NmU4ZTE4YTlmYTE4YjJiOGQ1NDMyNjk5ZGFkMC5hYzAwOGVkNjUwZmQwODdiZmJlY2YyZmRhOWQ4MmU5ODM1MjUzZWYyNDg0M2U2YjE4ZmNkMTI4YjEwNzYzNDk3YmNmOWQ1M2U5NTlmNTM3N2NkZTAzOGMyMGNjZjlkMTdmNjA0YzliOGJiNmU2MTA0MWRlZjg2NzI5YjJmYzc0MDhiZDI0MWUyM2MyMTNhYzU3ZjAyMjZlZTY1NmUyYmIwYTU4M2FlMGU0ZjNiZjZjNmFiNmM0OTBjOWE2ZjBkOGNkZmQzNjZhYWNmNWQ4MzE5MzY3MWE4Zjc3Y2QxYWYxZmYyZTkxNDVkZTkyZWM0M2VjODdjZjRiZGM1NjNmNmU5MTlmZTMyODYxYjBlOTNiMTE4ZWMzN2Q4MDM1ZmJiM2MuNTlkZDA1YzVkOWE4YWU3MjY1Mjg3ODMxMjgyMThmMTVmZTZmMmMwYzgxNDVlZGRhYjExMmIzNzRmY2ZlM2Q3OSIKICAgICAgICB9KTsKICAgICAgICB2YXIgcmVxdWVzdF9rZXkyID0gRW5jcnlwdChyZXF1ZXN0X2tleSk7CiAgICAgICAgdmFyIGJvZHkgPSBnZXRib2R5MihyZXF1ZXN0X2tleTIsIHQpCiAgICAgICAgdmFyIGh0bWwgPSBnZXRodG1sKCJodHRwczovL2FwaS44dXRkdGNxLmNvbS9BcHAvSW5kZXhQbGF5L3BsYXlJbmZvIiwgYm9keSwgaGVhZGVycykKICAgICAgICB2YXIgZGF0YTIgPSBKU09OLnBhcnNlKGh0bWwpLnZvZEluZm87IC8vY29uc29sZS5sb2coImh3dWR3dWRnLT09PT0iK0pTT04uc3RyaW5naWZ5KGRhdGEyKSkKICAgICAgICB2YXIgcmVxdWVzdF9rZXkzID0gSlNPTi5zdHJpbmdpZnkoewogICAgICAgICAgICAidnVybF9jbG91ZF9pZCI6ICIyIiwKICAgICAgICAgICAgInZvZF9kX2lkIjogdm9kX2lkCiAgICAgICAgfSk7IC8vbG9nKHJlcXVlc3Rfa2V5MykKICAgICAgICB2YXIgcmVxdWVzdF9rZXk0ID0gRW5jcnlwdChyZXF1ZXN0X2tleTMpOyAvL2xvZyhyZXF1ZXN0X2tleTQpCiAgICAgICAgdmFyIGJvZHkyID0gZ2V0Ym9keTIocmVxdWVzdF9rZXk0LCB0KQoKICAgICAgICB2YXIgaHRtbDMgPSBnZXRodG1sKCJodHRwczovL2FwaS44dXRkdGNxLmNvbS9BcHAvUmVzb3VyY2UvVnVybC9zaG93IiwgYm9keTIsIGhlYWRlcnMpOyAvL2xvZyhodG1sMykKCiAgICAgICAgdmFyIGxpc3QgPSBKU09OLnBhcnNlKGh0bWwzKS5saXN0OwogICAgICAgIGxldCBubm5tbSA9IFtdOwogICAgICAgIGxpc3QuZm9yRWFjaChpdGVtID0+IHsKICAgICAgICAgICAgLy8g6I635Y+WcGxheeWvueixoeeahOaJgOacieWAvAogICAgICAgICAgICBjb25zdCBwbGF5UGFyYW1zID0gT2JqZWN0LnZhbHVlcyhpdGVtLnBsYXkpOwogICAgICAgICAgICBsZXQgbGFzdFBhcmFtID0gbnVsbDsKCiAgICAgICAgICAgIC8vIOS7juaVsOe7hOeahOacgOWQjuS4gOS4quWFg+e0oOW8gOWni++8jOWQkeWJjeafpeaJvu+8jOebtOWIsOaJvuWIsOS4gOS4qumdnuepuueahHBhcmFt5YC8CiAgICAgICAgICAgIGZvciAobGV0IGkgPSBwbGF5UGFyYW1zLmxlbmd0aCAtIDE7IGkgPj0gMDsgaS0tKSB7CiAgICAgICAgICAgICAgICBpZiAocGxheVBhcmFtc1tpXS5wYXJhbSkgewogICAgICAgICAgICAgICAgICAgIGxhc3RQYXJhbSA9IHBsYXlQYXJhbXNbaV0ucGFyYW07CiAgICAgICAgICAgICAgICAgICAgYnJlYWs7CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0KCiAgICAgICAgICAgIC8vIOS9v+eUqOato+WImeihqOi+vuW8j+WMuemFjXZ1cmxfaWQKICAgICAgICAgICAgY29uc3QgdnVybElkTWF0Y2ggPSBsYXN0UGFyYW0ubWF0Y2goL3Z1cmxfaWQ9KFxkKykvKTsKICAgICAgICAgICAgY29uc3QgcmVzb2x1dGlvbiA9IGxhc3RQYXJhbS5tYXRjaCgvcmVzb2x1dGlvbj0oXGQrKS8pOwogICAgICAgICAgICAvLyDlpoLmnpzljLnphY3miJDlip/vvIzlsIZ0aXRsZeWSjHZ1cmxfaWTnu4TlkIjlkI5wdXNo5YiwcmVzdWx05pWw57uECiAgICAgICAgICAgIGlmICh2dXJsSWRNYXRjaCkgewogICAgICAgICAgICAgICAgbm5ubW0ucHVzaChgJHtpdGVtLnRpdGxlfSQke3ZvZF9pZH0vJHt2dXJsSWRNYXRjaFsxXX0/JHtyZXNvbHV0aW9uWzFdfWApOwogICAgICAgICAgICB9CiAgICAgICAgfSk7CiAgICAgICAgVk9EID0gewogICAgICAgICAgICB0aXRsZTogZGF0YTIudm9kX25hbWUsCiAgICAgICAgICAgIHR5cGU6IGRhdGEyLnZpZGVvVGFnLnRvU3RyaW5nKCksCiAgICAgICAgICAgIGRlc2M6IGRhdGEyLnZvZF91c2VfY29udGVudCwKICAgICAgICAgICAgdm9kX2FjdG9yOiBkYXRhMi52b2RfYWN0b3IsCiAgICAgICAgICAgIHZvZF9hcmVhOiBkYXRhMi52b2RfYXJlYSwKICAgICAgICAgICAgdm9kX2RpcmVjdG9yOiBkYXRhMi52b2RfZGlyZWN0b3IsCiAgICAgICAgICAgIGltZzogZGF0YTIudm9kX3BpYywKICAgICAgICAgICAgdm9kX3BsYXlfZnJvbTogJ+eTnOWtkEhEJywKICAgICAgICAgICAgdm9kX3BsYXlfdXJsOiBubm5tbS5qb2luKCcjJykKICAgICAgICB9CiAgICB9KSwKICAgIOaQnOe0ojogJGpzLnRvU3RyaW5nKCgpID0+IHsKICAgICAgICBsZXQgZCA9IFtdOwoKICAgICAgICBmdW5jdGlvbiBFbmNyeXB0KHBsYWluVGV4dCkgewogICAgICAgICAgICBsZXQga2V5ID0gQ3J5cHRvSlMuZW5jLlV0ZjgucGFyc2UoIm12WEJTVzdla3JlSXROc1QiKTsKICAgICAgICAgICAgbGV0IGl2ID0gQ3J5cHRvSlMuZW5jLlV0ZjgucGFyc2UoIjJVM0lySkw4c3pBS3AwRmoiKTsKICAgICAgICAgICAgLy8g5bCG5paH5pys5Yqg5a+G5Li6IEFFUy9DQkMvUEtDUzVQYWRkaW5nIOagvOW8jwogICAgICAgICAgICBsZXQgZW5jcnlwdGVkID0gQ3J5cHRvSlMuQUVTLmVuY3J5cHQocGxhaW5UZXh0LCBrZXksIHsKICAgICAgICAgICAgICAgIGl2OiBpdiwKICAgICAgICAgICAgICAgIG1vZGU6IENyeXB0b0pTLm1vZGUuQ0JDLAogICAgICAgICAgICAgICAgcGFkZGluZzogQ3J5cHRvSlMucGFkLlBrY3M3CiAgICAgICAgICAgIH0pOwoKICAgICAgICAgICAgLy8g6I635Y+W5Yqg5a+G57uT5p6c5bm26L2s5Li6IEhleCDmoLzlvI8KICAgICAgICAgICAgbGV0IGVuY3J5cHRlZEhleCA9IGVuY3J5cHRlZC5jaXBoZXJ0ZXh0LnRvU3RyaW5nKENyeXB0b0pTLmVuYy5IZXgpOwogICAgICAgICAgICByZXR1cm4gZW5jcnlwdGVkSGV4LnRvVXBwZXJDYXNlKCk7IC8vIOi/lOWbnuWkp+WGmSBIZXgg5qC85byPCiAgICAgICAgfQoKICAgICAgICBmdW5jdGlvbiBEZWNyeXB0KHdvcmQsIGtleSwgaXYpIHsKICAgICAgICAgICAgbGV0IGVuY3J5cHRlZEhleFN0ciA9IENyeXB0b0pTLmVuYy5IZXgucGFyc2Uod29yZCk7CgogICAgICAgICAgICAvLyDkvb/nlKhBRVMvQ0JDL1BLQ1M1UGFkZGluZ+aooeW8j+i/m+ihjOino+WvhgogICAgICAgICAgICBsZXQgZGVjcnlwdCA9IENyeXB0b0pTLkFFUy5kZWNyeXB0KHsKICAgICAgICAgICAgICAgIGNpcGhlcnRleHQ6IGVuY3J5cHRlZEhleFN0cgogICAgICAgICAgICB9LCBrZXksIHsKICAgICAgICAgICAgICAgIGl2OiBpdiwKICAgICAgICAgICAgICAgIG1vZGU6IENyeXB0b0pTLm1vZGUuQ0JDLCAvLyDkvb/nlKhDQkPmqKHlvI8KICAgICAgICAgICAgICAgIHBhZGRpbmc6IENyeXB0b0pTLnBhZC5Qa2NzNyAvLyDkvb/nlKhQS0NTIzfloavlhYUKICAgICAgICAgICAgfSk7CgogICAgICAgICAgICAvLyDlsIbop6Plr4blkI7nmoTmlbDmja7ovazmjaLkuLrljp/lp4vmlofmnKwKICAgICAgICAgICAgbGV0IGRlY3J5cHRlZFN0ciA9IGRlY3J5cHQudG9TdHJpbmcoQ3J5cHRvSlMuZW5jLlV0ZjgpOwoKICAgICAgICAgICAgLy8g6L+U5Zue6Kej5a+G5ZCO55qE5paH5pysCiAgICAgICAgICAgIHJldHVybiBkZWNyeXB0ZWRTdHI7CiAgICAgICAgfQoKICAgICAgICBmdW5jdGlvbiBnZXRib2R5MyhrZXksIHQpIHsKICAgICAgICAgICAgdmFyIHNpZ25hdHVyZSA9ICd0b2tlbl9pZD0sdG9rZW49MWJlODZlOGUxOGE5ZmExOGIyYjhkNTQzMjY5OWRhZDAuYWMwMDhlZDY1MGZkMDg3YmZiZWNmMmZkYTlkODJlOTgzNTI1M2VmMjQ4NDNlNmIxOGZjZDEyOGIxMDc2MzQ5N2JjZjlkNTNlOTU5ZjUzNzdjZGUwMzhjMjBjY2Y5ZDE3ZjYwNGM5YjhiYjZlNjEwNDFkZWY4NjcyOWIyZmM3NDA4YmQyNDFlMjNjMjEzYWM1N2YwMjI2ZWU2NTZlMmJiMGE1ODNhZTBlNGYzYmY2YzZhYjZjNDkwYzlhNmYwZDhjZGZkMzY2YWFjZjVkODMxOTM2NzFhOGY3N2NkMWFmMWZmMmU5MTQ1ZGU5MmVjNDNlYzg3Y2Y0YmRjNTYzZjZlOTE5ZmUzMjg2MWIwZTkzYjExOGVjMzdkODAzNWZiYjNjLjU5ZGQwNWM1ZDlhOGFlNzI2NTI4NzgzMTI4MjE4ZjE1ZmU2ZjJjMGM4MTQ1ZWRkYWIxMTJiMzc0ZmNmZTNkNzkscGhvbmVfdHlwZT0xLHJlcXVlc3Rfa2V5PScgKyBrZXkgKyAnLGFwcF9pZD0xLHRpbWU9JyArIHQgKyAnLGtleXM9cURwb3RFMmJlZGltSzNRR3FseVY1aWVYWEMzRWhhUExRK0lPSnlIbkhmbENqNXcvN0VTSzdGZ3l3TXZyZ2p4YngwR2tsRUZMSTQrSnNoZ3lTZTYzM09JUnN0dWt0d2RpQ3kzQ1QrZkxTcHV4QkpESWxmWFFEYWVIM2lnMXdpQjBKc1o2MDFYSGlGd2VHTXU0dFpmblNwSGczT25vTDZuei91dXJVaWYyT0s0PSomenZkdmR2ZGRiZmlra2t1bXRtZHdxcHBwP3w0WSFzITJicic7IC8vbG9nKHNpZ25hdHVyZSkKICAgICAgICAgICAgdmFyIHNpZ25hdHVyZTIgPSBtZDUoc2lnbmF0dXJlKTsgLy9sb2coc2lnbmF0dXJlMikKICAgICAgICAgICAgdmFyIGJvZHkgPSAndG9rZW49MWJlODZlOGUxOGE5ZmExOGIyYjhkNTQzMjY5OWRhZDAuYWMwMDhlZDY1MGZkMDg3YmZiZWNmMmZkYTlkODJlOTgzNTI1M2VmMjQ4NDNlNmIxOGZjZDEyOGIxMDc2MzQ5N2JjZjlkNTNlOTU5ZjUzNzdjZGUwMzhjMjBjY2Y5ZDE3ZjYwNGM5YjhiYjZlNjEwNDFkZWY4NjcyOWIyZmM3NDA4YmQyNDFlMjNjMjEzYWM1N2YwMjI2ZWU2NTZlMmJiMGE1ODNhZTBlNGYzYmY2YzZhYjZjNDkwYzlhNmYwZDhjZGZkMzY2YWFjZjVkODMxOTM2NzFhOGY3N2NkMWFmMWZmMmU5MTQ1ZGU5MmVjNDNlYzg3Y2Y0YmRjNTYzZjZlOTE5ZmUzMjg2MWIwZTkzYjExOGVjMzdkODAzNWZiYjNjLjU5ZGQwNWM1ZDlhOGFlNzI2NTI4NzgzMTI4MjE4ZjE1ZmU2ZjJjMGM4MTQ1ZWRkYWIxMTJiMzc0ZmNmZTNkNzkmdG9rZW5faWQ9JnBob25lX3R5cGU9MSZ0aW1lPScgKyB0ICsgJyZwaG9uZV9tb2RlbD14aWFvbWktMjIwMjEyMTFyYyZrZXlzPXFEcG90RTJiZWRpbUszUUdxbHlWNWllWFhDM0VoYVBMUSUyQklPSnlIbkhmbENqNXclMkY3RVNLN0ZneXdNdnJnanhieDBHa2xFRkxJNCUyQkpzaGd5U2U2MzNPSVJzdHVrdHdkaUN5M0NUJTJCZkxTcHV4QkpESWxmWFFEYWVIM2lnMXdpQjBKc1o2MDFYSGlGd2VHTXU0dFpmblNwSGczT25vTDZueiUyRnV1clVpZjJPSzQlM0QmcmVxdWVzdF9rZXk9JyArIGtleSArICcmc2lnbmF0dXJlPScgKyBzaWduYXR1cmUyICsgJyZhcHBfaWQ9MSZhZF92ZXJzaW9uPTEnOwogICAgICAgICAgICByZXR1cm4gYm9keQogICAgICAgIH0KICAgICAgICBjb25zdCBib2R5a2V5ID0gIk1JSUNkZ0lCQURBTkJna3Foa2lHOXcwQkFRRUZBQVNDQW1Bd2dnSmNBZ0VBQW9HQWU2aEtyV0xpMXpRbWpUVDFvemJFNFFkRmVKR054dWJ4bGQ2R3JGR3hpbXhmTXNNQjZCcEpocGNUb3VBcXl3QUZwcGlLZXRVQkJiWHdZc1lVMXdOcjY0OFhWbVBtQ01DeTRyWTh2ZGxpRm5iTVVqMDg2RFU2Wisvb1hCZFdVMy9iMUcwRE4zRTl3VUxSU3djS1pUM3dqL2NDSTF2c0NtM2dqMlI1U3FrQTlZMENBd0VBQVFLQmdBSkgrNEN4VjAvekJWY0xpQkNIdlNBTm0wbDdIZXR5YlRoL2oycDBZMXNUWHJvNEFMd0FhQ1RVZXFkQmpXaUxTbzlsTndESEZ5cTh6WDkwK2dOeGE3YzVFcWNXVjlGbWxWWHI4VmhmQnpjWm8xblhlTmRYRlQ3dFEyeWFoL29kdGRjeCt2Uk1TR0pkMXQvNWs1YkRkOXdBdllkSURibE1BZyt3aUtLWjVLY2RBa0VBMWNDYWtFTjROZXhrRjV0SFBSclI2WE9ZL1hIZmtxWHhFaE1xbU5iQjlVMzRzYVRKbkxXSUhDOElYeXM2UW16ejMwVHR6Q2p1T3FLUlJ5K0ZNTTRUZHdKQkFKUVpGUGpzR0MrUnFjRzVVdlZNaU1QaG53ZS9iWEVlaFNoSzg2eUpLL2cvVWlLck84N2gzYUV1NWdjSnFCeWdUcTNCQkJvSDJtZDNwci9XK2hVTVdCc0NRUUNoZmhUSXJkRGluS2k2bFJ4cmRCbm4wT2hqZzJjd3VxSzV6elU5cC9OK1M5eDdDazh3VUk1M0RLbThqVUpFOFdBRzdXTGovb0NPV0VoK2ljNk5Jd1RkQWtFQWowWDhuaHg2QVhzZ0NZUnFsMWtsYnF0Vm1MOCs5NUtaSzdQbkxXRy9JZmpRVXkzcFBHb1NhWjdmZHF1RzhicThveWY1K2R6akUvb1RYY0J5Uys2WFJRSkFQLzVjaXkxYkwzTmhVaHNhT1Z5NTVNSFhuUGpkY1RYMEZhTGkreWJYWklmSVEyUDRyYjE5bVZxMWZlTWJDWGh6K0wxckc4b2F0NWxZS2ZwZThrODNaQT09IjsKCiAgICAgICAgZnVuY3Rpb24gZ2V0aHRtbCh1LCBib2R5LCBoZWFkZXJzKSB7CiAgICAgICAgICAgIHZhciBoZCA9IGZldGNoKHUsIHsKICAgICAgICAgICAgICAgIGhlYWRlcnM6IGhlYWRlcnMsCiAgICAgICAgICAgICAgICBib2R5OiBib2R5LAogICAgICAgICAgICAgICAgbWV0aG9kOiAnUE9TVCcsCiAgICAgICAgICAgICAgICByZWplY3RDb2Rpbmc6IHRydWUKICAgICAgICAgICAgfSk7CiAgICAgICAgICAgIHZhciBiYW5uZXIgPSBKU09OLnBhcnNlKGhkKS5kYXRhOwogICAgICAgICAgICB2YXIgcmVzcG9uc2Vfa2V5ID0gYmFubmVyLnJlc3BvbnNlX2tleTsgLy9sb2coKQogICAgICAgICAgICAvL2NvbnNvbGUubG9nKCJyZXNwb25zZV9rZXk9PSIrcmVzcG9uc2Vfa2V5KQogICAgICAgICAgICB2YXIga2V5cyA9IGJhbm5lci5rZXlzOyAvL2xvZyhrZXlzKQogICAgICAgICAgICB2YXIgYm9keWtleWl2ID0gSlNPTi5wYXJzZShSU0EuZGVjb2RlKGtleXMsIGJvZHlrZXkpKTsKICAgICAgICAgICAgLy9jb25zb2xlLmxvZygicnNheHh4eD09IitKU09OLnN0cmluZ2lmeShib2R5a2V5aXYpKQogICAgICAgICAgICB2YXIga2V5ID0gQ3J5cHRvSlMuZW5jLlV0ZjgucGFyc2UoYm9keWtleWl2LmtleSk7CiAgICAgICAgICAgIHZhciBpdiA9IENyeXB0b0pTLmVuYy5VdGY4LnBhcnNlKGJvZHlrZXlpdi5pdik7CiAgICAgICAgICAgIHZhciBodG1sID0gRGVjcnlwdChyZXNwb25zZV9rZXksIGtleSwgaXYpOwogICAgICAgICAgICAvL2NvbnNvbGUubG9nKCJuc2tqc253a2pkbmVqZD09PXFxeHh4cT0iK0pTT04uc3RyaW5naWZ5KGh0bWwpKQogICAgICAgICAgICByZXR1cm4gaHRtbAogICAgICAgIH0KICAgICAgICB2YXIgdGltZXN0YW1wID0gbmV3IERhdGUoKS5nZXRUaW1lKCkgLyAxMDAwOwogICAgICAgIHZhciB0ID0gdGltZXN0YW1wLnRvU3RyaW5nKCkuc3BsaXQoJy4nKVswXTsKICAgICAgICB2YXIgdXJsID0gaW5wdXQuc3BsaXQoIiMiKVswXTsgLy91cmwKICAgICAgICB2YXIgcmVxdWVzdF9rZXkxMSA9IGlucHV0LnNwbGl0KCIjIilbMV0KCiAgICAgICAgdmFyIHJlcXVlc3Rfa2V5ID0gSlNPTi5zdHJpbmdpZnkoewogICAgICAgICAgICAia2V5d29yZHMiOiByZXF1ZXN0X2tleTExLAogICAgICAgICAgICAib3JkZXJfdmFsIjogIjEiCiAgICAgICAgfSkKICAgICAgICAvL2NvbnNvbGUubG9nKCJuc2tqc253a2pkbmVqZD09PXFxeHh4cT10dHR0IityZXF1ZXN0X2tleSkKICAgICAgICB2YXIgcmVxdWVzdF9rZXkyID0gRW5jcnlwdChyZXF1ZXN0X2tleSk7CiAgICAgICAgdmFyIGJvZHkgPSBnZXRib2R5MyhyZXF1ZXN0X2tleTIsIHQpCiAgICAgICAgdmFyIGhlYWRlcnMgPSB7CiAgICAgICAgICAgICdDYWNoZS1Db250cm9sJzogJ25vLWNhY2hlJywKICAgICAgICAgICAgJ1ZlcnNpb24nOiAnMjQwNjAyNScsCiAgICAgICAgICAgICdQYWNrYWdlTmFtZSc6ICdjb20udWYwNzZiZjBjMjQ2LnFlNDM5ZjBkNWUubThhYWY1NmI3MjVhLmlmZWI2NDczNDZmJywKICAgICAgICAgICAgJ1Zlcic6ICcxLjkuMicsCiAgICAgICAgICAgICdSZWZlcmVyJzogJ2h0dHBzOi8vYXBpLjh1dGR0Y3EuY29tJywKICAgICAgICAgICAgJ1gtQ3VzdG9tZXItQ2xpZW50LUlwJzogJzEyNy4wLjAuMScsCiAgICAgICAgICAgICdDb250ZW50LVR5cGUnOiAnYXBwbGljYXRpb24veC13d3ctZm9ybS11cmxlbmNvZGVkJywKICAgICAgICAgICAgJ0hvc3QnOiAnYXBpLjh1dGR0Y3EuY29tJywKICAgICAgICAgICAgJ0Nvbm5lY3Rpb24nOiAnS2VlcC1BbGl2ZScsCiAgICAgICAgICAgICdVc2VyLUFnZW50JzogJ29raHR0cC8zLjEyLjAnCiAgICAgICAgfQogICAgICAgIHZhciBodG1sID0gZ2V0aHRtbCh1cmwsIGJvZHksIGhlYWRlcnMpCiAgICAgICAgLy9jb25zb2xlLmxvZygibnNranNud2tqZG5lamQ9PT09IitodG1sKQoKICAgICAgICB2YXIgbGlzdCA9IEpTT04ucGFyc2UoaHRtbCkubGlzdDsgLy9sb2cobGlzdCkKICAgICAgICAvL2NvbnNvbGUubG9nKCJuc2tqc253a2pkbmVqZD09PXFxcXFxPSIrbGlzdCkKICAgICAgICBsaXN0LmZvckVhY2goZGF0YSA9PiB7CiAgICAgICAgICAgIGQucHVzaCh7CiAgICAgICAgICAgICAgICB0aXRsZTogZGF0YS52b2RfbmFtZSwKICAgICAgICAgICAgICAgIGRlc2M6IGRhdGEudm9kX2NvbnRpbnUgPT0gMCA/ICfnlLXlvbEnIDogJ+abtOaWsOiHsycgKyBkYXRhLnZvZF9jb250aW51ICsgJ+mbhicsCiAgICAgICAgICAgICAgICBjb250ZW50OiBkYXRhLnZvZF9hZGR0aW1lLAogICAgICAgICAgICAgICAgaW1nOiBkYXRhLnZvZF9waWMsCiAgICAgICAgICAgICAgICB1cmw6IGAke2RhdGEudm9kX2lkfS8ke2RhdGEudm9kX2NvbnRpbnV9YCwKICAgICAgICAgICAgfSkKICAgICAgICB9KQogICAgICAgIHNldFJlc3VsdChkKQogICAgfSksCn0= \ No newline at end of file diff --git a/潇洒/movie/js/JQQ.js b/潇洒/movie/js/JQQ.js new file mode 100644 index 00000000..2646d891 --- /dev/null +++ b/潇洒/movie/js/JQQ.js @@ -0,0 +1 @@ +T2JqZWN0LmFzc2lnbihtdWJhbi5teHByby7kuoznuqcsIHsKICAgIHRhYl90ZXh0OiAnZGl2LS1zbWFsbCYmVGV4dCcsCn0pOwp2YXIgcnVsZSA9IHsKICAgIOaooeadvzogJ214cHJvJywKICAgIHRpdGxlOiAn5Ymn5ZyI5ZyIJywKICAgIGhvc3Q6ICdodHRwczovL3d3dy5qcXF6eC5jYy8nLAogICAgdXJsOiAnL3ZvZHNob3cvaWQvZnljbGFzcy9wYWdlL2Z5cGFnZS5odG1sJywKICAgIHNlYXJjaFVybDogJy92b2RzZWFyY2gqKi9wYWdlL2Z5cGFnZS5odG1sJywKICAgIGNsYXNzX3BhcnNlOiAnLm5hdmJhci1pdGVtcyBsaTpndCgyKTpsdCg4KTthJiZUZXh0O2EmJmhyZWY7LiovKC4qPylcLmh0bWwnLAogICAgY2F0ZV9leGNsdWRlOiAn5LuK5pel5pu05pawfOeDreamnCcsCn0= \ No newline at end of file diff --git a/潇洒/movie/js/JRDM.js b/潇洒/movie/js/JRDM.js new file mode 100644 index 00000000..9f06f84d --- /dev/null +++ b/潇洒/movie/js/JRDM.js @@ -0,0 +1 @@ +Z2xvYmFsVGhpcy5oX29zdCA9ICdodHRwOi8vMTE4LjEwNy40MS4xMzQ6MzU1NTUvJzsKdmFyIGtleSA9IENyeXB0b0pTLmVuYy5CYXNlNjQucGFyc2UoIlpHTXpNalV3Tm1RNVlqVmpZbVk0WlE9PSIpOwp2YXIgaXYgPSBDcnlwdG9KUy5lbmMuQmFzZTY0LnBhcnNlKCJaR016TWpVd05tUTVZalZqWW1ZNFpRPT0iKTsKZ2xvYmFsVGhpcy5BRVNfRGVjcnlwdCA9IGZ1bmN0aW9uKHdvcmQpIHsKICAgIHRyeSB7CiAgICAgICAgdmFyIGRlY3J5cHQgPSBDcnlwdG9KUy5BRVMuZGVjcnlwdCh3b3JkLCBrZXksIHsKICAgICAgICAgICAgaXY6IGl2LAogICAgICAgICAgICBtb2RlOiBDcnlwdG9KUy5tb2RlLkNCQywKICAgICAgICAgICAgcGFkZGluZzogQ3J5cHRvSlMucGFkLlBrY3M3LAogICAgICAgIH0pOwogICAgICAgIGNvbnN0IGRlY3J5cHRlZFRleHQgPSBkZWNyeXB0LnRvU3RyaW5nKENyeXB0b0pTLmVuYy5VdGY4KTsKICAgICAgICBpZiAoIWRlY3J5cHRlZFRleHQpIHsKICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKCLop6Plr4blkI7nmoTlhoXlrrnkuLrnqboiKTsKICAgICAgICB9CiAgICAgICAgcmV0dXJuIGRlY3J5cHRlZFRleHQ7CiAgICB9IGNhdGNoIChlKSB7CiAgICAgICAgY29uc29sZS5lcnJvcigi6Kej5a+G5aSx6LSlOiIsIGUpOwogICAgICAgIHJldHVybiBudWxsOwogICAgfQp9OwpnbG9iYWxUaGlzLkFFU19FbmNyeXB0ID0gZnVuY3Rpb24od29yZCkgewogICAgdmFyIGVuY3J5cHRlZCA9IENyeXB0b0pTLkFFUy5lbmNyeXB0KHdvcmQsIGtleSwgewogICAgICAgIGl2OiBpdiwKICAgICAgICBtb2RlOiBDcnlwdG9KUy5tb2RlLkNCQywKICAgICAgICBwYWRkaW5nOiBDcnlwdG9KUy5wYWQuUGtjczcKICAgIH0pOwogICAgcmV0dXJuIGVuY3J5cHRlZC50b1N0cmluZygpOwp9OwoKZ2xvYmFsVGhpcy52b2QxID0gZnVuY3Rpb24odCwgcGcpIHsKICAgIGxldCBodG1sMSA9IHJlcXVlc3QoaF9vc3QgKyAnYXBpLnBocC9nZXRhcHBhcGkuaW5kZXgvdHlwZUZpbHRlclZvZExpc3QnLCB7CiAgICAgICAgYm9keTogewogICAgICAgICAgICBhcmVhOiAn5YWo6YOoJywKICAgICAgICAgICAgeWVhcjogJ+WFqOmDqCcsCiAgICAgICAgICAgIHR5cGVfaWQ6IHQsCiAgICAgICAgICAgIHBhZ2U6IHBnLAogICAgICAgICAgICBzb3J0OiAn5pyA5pawJywKICAgICAgICAgICAgbGFuZzogJ+WFqOmDqCcsCiAgICAgICAgICAgIGNsYXNzOiAn5YWo6YOoJwogICAgICAgIH0sCiAgICAgICAgaGVhZGVyczogewogICAgICAgICAgICAnVXNlci1BZ2VudCc6ICdva2h0dHAvMy4xNC45JywKICAgICAgICAgICAgJ0NvbnRlbnQtVHlwZSc6ICdhcHBsaWNhdGlvbi94LXd3dy1mb3JtLXVybGVuY29kZWQnCiAgICAgICAgfSwKICAgICAgICAnbWV0aG9kJzogJ1BPU1QnCiAgICB9LCB0cnVlKTsKICAgIGxldCBodG1sID0gSlNPTi5wYXJzZShodG1sMSk7CiAgICByZXR1cm4gKEFFU19EZWNyeXB0KGh0bWwuZGF0YSkpOwp9Cmdsb2JhbFRoaXMudm9kaWRzID0gZnVuY3Rpb24oaWRzKSB7CiAgICBsZXQgaHRtbDEgPSBmZXRjaChoX29zdCArICdhcGkucGhwL2dldGFwcGFwaS5pbmRleC92b2REZXRhaWwnLCB7CiAgICAgICAgbWV0aG9kOiAnUE9TVCcsCiAgICAgICAgaGVhZGVyczogewogICAgICAgICAgICAnVXNlci1BZ2VudCc6ICdva2h0dHAvMy4xNC45JywKICAgICAgICAgICAgJ0NvbnRlbnQtVHlwZSc6ICdhcHBsaWNhdGlvbi94LXd3dy1mb3JtLXVybGVuY29kZWQnCiAgICAgICAgfSwKICAgICAgICBib2R5OiB7CiAgICAgICAgICAgIHZvZF9pZDogaWRzLAogICAgICAgIH0KICAgIH0pOwogICAgbGV0IGh0bWwgPSBKU09OLnBhcnNlKGh0bWwxKTsKICAgIGNvbnN0IHJkYXRhID0gSlNPTi5wYXJzZShBRVNfRGVjcnlwdChodG1sLmRhdGEpKTsKICAgIGNvbnN0IGRhdGEgPSB7CiAgICAgICAgdm9kX2lkOiBpZHMsCiAgICAgICAgdm9kX25hbWU6IHJkYXRhLnZvZC52b2RfbmFtZSwKICAgICAgICB2b2RfcmVtYXJrczogcmRhdGEudm9kLnZvZF9yZW1hcmtzLAogICAgICAgIHZvZF9hY3RvcjogcmRhdGEudm9kLnZvZF9hY3RvciwKICAgICAgICB2b2RfZGlyZWN0b3I6IHJkYXRhLnZvZC52b2RfZGlyZWN0b3IsCiAgICAgICAgdm9kX2NvbnRlbnQ6IHJkYXRhLnZvZC52b2RfY29udGVudCwKICAgICAgICB2b2RfcGxheV9mcm9tOiAnJywKICAgICAgICB2b2RfcGxheV91cmw6ICcnCiAgICB9OwoKICAgIHJkYXRhLnZvZF9wbGF5X2xpc3QuZm9yRWFjaCgodmFsdWUpID0+IHsKICAgICAgICBkYXRhLnZvZF9wbGF5X2Zyb20gKz0gdmFsdWUucGxheWVyX2luZm8uc2hvdyArICckJCQnOwogICAgICAgIHZhbHVlLnVybHMuZm9yRWFjaCgodikgPT4gewogICAgICAgICAgICBkYXRhLnZvZF9wbGF5X3VybCArPSB2Lm5hbWUgKyAnJCcgKyB2YWx1ZS5wbGF5ZXJfaW5mby5wYXJzZSArICd+JyArIHYudXJsICsgJ34nICsgcmRhdGEudm9kLnZvZF9uYW1lICsgJ34nICsgdi5uYW1lICsgJyMnOwogICAgICAgIH0pOwogICAgICAgIGRhdGEudm9kX3BsYXlfdXJsICs9ICckJCQnOwogICAgfSk7CiAgICByZXR1cm4gZGF0YTsKfQovL+aQnOe0ogpnbG9iYWxUaGlzLnNzdm9kID0gZnVuY3Rpb24od2QpIHsKICAgIHZhciBodG1sMSA9IGZldGNoKGhfb3N0ICsgJ2FwaS5waHAvZ2V0YXBwYXBpLmluZGV4L3NlYXJjaExpc3QnLCB7CiAgICAgICAgbWV0aG9kOiAnUE9TVCcsCiAgICAgICAgaGVhZGVyczogewogICAgICAgICAgICAnVXNlci1BZ2VudCc6ICdva2h0dHAvMy4xNC45JywKICAgICAgICAgICAgJ0NvbnRlbnQtVHlwZSc6ICdhcHBsaWNhdGlvbi94LXd3dy1mb3JtLXVybGVuY29kZWQnCiAgICAgICAgfSwKICAgICAgICBib2R5OiB7CiAgICAgICAgICAgIGtleXdvcmRzOiB3ZCwKICAgICAgICAgICAgdHlwZXBhZ2VfaWQ6IDEsCiAgICAgICAgfQogICAgfSk7CiAgICBsZXQgaHRtbCA9IEpTT04ucGFyc2UoaHRtbDEpOwogICAgcmV0dXJuIEFFU19EZWNyeXB0KGh0bWwuZGF0YSk7Cn0KLy/op6PmnpAKZ2xvYmFsVGhpcy5qeHggPSBmdW5jdGlvbihpZCwgdXJsLCBuYW1lLCBqdWppKSB7CiAgICAvKiBpZigiNzQxODUyOTYzIiE9PSc3NDE4NTI5NjMnKXsKICAgICAgcmV0dXJuICdodHRwczovL3MwLm1hbGwudGNsLmNvbS9ncm91cDEvTTAwLzAwLzg5L0N2b0dCR2RjT1BhQUFVeHZBRHdabmlWVjJiYzQ3Ni5tcDQnOwogICAgIH0qLwogICAgLy9jb25zb2xlLmxvZyhpZCk7CiAgICBpZiAoaWQuc3RhcnRzV2l0aCgnaHR0cCcpKSB7CiAgICAgICAgcmV0dXJuIHsKICAgICAgICAgICAgcGFyc2U6IDEsCiAgICAgICAgICAgIHVybDogaWQgKyB1cmwsCiAgICAgICAgICAgIGp4OiAwLAogICAgICAgICAgICBkYW5tYWt1OiAnaHR0cDovLzEwMy40NS4xNjIuMjA3OjI1MjUyL2hiZG0ucGhwP2tleT03ODk0NTYxMjMyJmlkPScgKyAnJmptPScgKyBuYW1lICsgJyZqcz0nICsganVqaSArICcma2V5PTc0MTg1Mjk2MycKICAgICAgICB9OwogICAgfQogICAgaWYgKGlkID09IDApIHsKICAgICAgICByZXR1cm4gewogICAgICAgICAgICBwYXJzZTogMCwKICAgICAgICAgICAgdXJsOiB1cmwsCiAgICAgICAgICAgIGp4OiAxLAogICAgICAgICAgICBkYW5tYWt1OiAnaHR0cDovLzEwMy40NS4xNjIuMjA3OjI1MjUyL2hiZG0ucGhwP2tleT03ODk0NTYxMjMyJmlkPScgKyAnJmptPScgKyBuYW1lICsgJyZqcz0nICsganVqaSArICcma2V5PTc0MTg1Mjk2MycKICAgICAgICB9OwogICAgfQoKICAgIGxldCBodG1sMSA9IHJlcXVlc3QoaF9vc3QgKyAnYXBpLnBocC9nZXRhcHBhcGkuaW5kZXgvdm9kUGFyc2UnLCB7CiAgICAgICAgbWV0aG9kOiAnUE9TVCcsCiAgICAgICAgaGVhZGVyczogewogICAgICAgICAgICAnVXNlci1BZ2VudCc6ICdva2h0dHAvMy4xNC45JywKICAgICAgICAgICAgJ0NvbnRlbnQtVHlwZSc6ICdhcHBsaWNhdGlvbi94LXd3dy1mb3JtLXVybGVuY29kZWQnCiAgICAgICAgfSwKICAgICAgICBib2R5OiB7CiAgICAgICAgICAgIHBhcnNlX2FwaTogaWQsCiAgICAgICAgICAgIHVybDogQUVTX0VuY3J5cHQodXJsKSwKICAgICAgICB9CiAgICB9KTsKICAgIGxldCBodG1sID0gQUVTX0RlY3J5cHQoSlNPTi5wYXJzZShodG1sMSkuZGF0YSk7CiAgICBjb25zb2xlLmxvZyhodG1sKTsKICAgIGxldCBkZWNyeSA9IGh0bWwucmVwbGFjZSgvXG4vZywgJycpLnJlcGxhY2UoL1xcL2csICcnKTsKICAgIGxldCBtYXRjaGVzID0gZGVjcnkubWF0Y2goLyJ1cmwiOiIoW14iXSspIi8pOwogICAgaWYgKCFtYXRjaGVzIHx8IG1hdGNoZXNbMV0gPT09IG51bGwpIHsKICAgICAgICBtYXRjaGVzID0gZGVjcnkubWF0Y2goLyJ1cmwiOiAiKFteIl0rKSIvKTsKICAgIH0KICAgIHJldHVybiB7CiAgICAgICAgcGFyc2U6IDAsCiAgICAgICAgdXJsOiBtYXRjaGVzWzFdLAogICAgICAgIGp4OiAwLAogICAgICAgIGRhbm1ha3U6ICdodHRwOi8vMTAzLjQ1LjE2Mi4yMDc6MjUyNTIvaGJkbS5waHA/a2V5PTc4OTQ1NjEyMzImaWQ9JyArICcmam09JyArIG5hbWUgKyAnJmpzPScgKyBqdWppICsgJyZrZXk9NzQxODUyOTYzJwogICAgfTsKfQoKdmFyIHJ1bGUgPSB7CiAgICB0aXRsZTogJ+W3qOS6uicsCiAgICBob3N0OiAnJywKICAgIGRldGFpbFVybDogJ2Z5aWQnLAogICAgc2VhcmNoVXJsOiAnKionLAogICAgdXJsOiAnZnljbGFzcycsCiAgICBzZWFyY2hhYmxlOiAyLAogICAgcXVpY2tTZWFyY2g6IDEsCiAgICBmaWx0ZXJhYmxlOiAwLAogICAgY2xhc3NfbmFtZTogJ+eUteW9sSbnlLXop4bliacm57u86Im6JuWKqOa8qycsCiAgICBjbGFzc191cmw6ICcxJjImMyY0JywKICAgIHBsYXlfcGFyc2U6IHRydWUsCiAgICBsYXp5OiAkanMudG9TdHJpbmcoKCkgPT4gewogICAgICAgIGNvbnN0IHBhcnRzID0gaW5wdXQuc3BsaXQoJ34nKTsKICAgICAgICBpbnB1dCA9IGp4eChwYXJ0c1swXSwgcGFydHNbMV0sIHBhcnRzWzJdLCBwYXJ0c1szXSk7CiAgICB9KSwKICAgIOaOqOiNkDogJGpzLnRvU3RyaW5nKCgpID0+IHsKICAgICAgICBsZXQgZGF0YSA9IHZvZDEoMCwgMCk7CiAgICAgICAgbGV0IGJhdGEgPSBKU09OLnBhcnNlKGRhdGEpLnJlY29tbWVuZF9saXN0OwogICAgICAgIGJhdGEuZm9yRWFjaChpdCA9PiB7CiAgICAgICAgICAgIGQucHVzaCh7CiAgICAgICAgICAgICAgICB1cmw6IGl0LnZvZF9pZCwKICAgICAgICAgICAgICAgIHRpdGxlOiBpdC52b2RfbmFtZSwKICAgICAgICAgICAgICAgIGltZzogaXQudm9kX3BpYywKICAgICAgICAgICAgICAgIGRlc2M6IGl0LnZvZF9yZW1hcmtzCiAgICAgICAgICAgIH0pOwogICAgICAgIH0pOwogICAgICAgIHNldFJlc3VsdChkKTsKICAgIH0pLAogICAg5LiA57qnOiAkanMudG9TdHJpbmcoKCkgPT4gewogICAgICAgIGxldCBkYXRhID0gdm9kMShpbnB1dCwgTVlfUEFHRSk7CiAgICAgICAgbGV0IGJhdGEgPSBKU09OLnBhcnNlKGRhdGEpLnJlY29tbWVuZF9saXN0OwogICAgICAgIGJhdGEuZm9yRWFjaChpdCA9PiB7CiAgICAgICAgICAgIGQucHVzaCh7CiAgICAgICAgICAgICAgICB1cmw6IGl0LnZvZF9pZCwKICAgICAgICAgICAgICAgIHRpdGxlOiBpdC52b2RfbmFtZSwKICAgICAgICAgICAgICAgIGltZzogaXQudm9kX3BpYywKICAgICAgICAgICAgICAgIGRlc2M6IGl0LnZvZF9yZW1hcmtzCiAgICAgICAgICAgIH0pOwogICAgICAgIH0pOwogICAgICAgIHNldFJlc3VsdChkKTsKICAgIH0pLAogICAg5LqM57qnOiAkanMudG9TdHJpbmcoKCkgPT4gewogICAgICAgIGNvbnNvbGUubG9nKCLosIPor5Xkv6Hmga8yIiArIGlucHV0KTsKICAgICAgICBsZXQgZGF0YSA9IHZvZGlkcyhpbnB1dCk7CiAgICAgICAgLy9jb25zb2xlLmxvZyhkYXRhKTsKICAgICAgICBWT0QgPSBkYXRhOwogICAgfSksCiAgICDmkJzntKI6ICRqcy50b1N0cmluZygoKSA9PiB7CiAgICAgICAgbGV0IGRhdGEgPSBzc3ZvZChpbnB1dCk7CiAgICAgICAgbGV0IGJhdGEgPSBKU09OLnBhcnNlKGRhdGEpLnNlYXJjaF9saXN0OwogICAgICAgIGJhdGEuZm9yRWFjaChpdCA9PiB7CiAgICAgICAgICAgIGQucHVzaCh7CiAgICAgICAgICAgICAgICB1cmw6IGl0LnZvZF9pZCwKICAgICAgICAgICAgICAgIHRpdGxlOiBpdC52b2RfbmFtZSwKICAgICAgICAgICAgICAgIGltZzogaXQudm9kX3BpYywKICAgICAgICAgICAgICAgIGRlc2M6IGl0LnZvZF9yZW1hcmtzCiAgICAgICAgICAgIH0pOwogICAgICAgIH0pOwogICAgICAgIC8vICBjb25zb2xlLmxvZyhkYXRhKTsKICAgICAgICBzZXRSZXN1bHQoZCk7CiAgICB9KSwKfQ== \ No newline at end of file diff --git a/潇洒/movie/js/KLM.js b/潇洒/movie/js/KLM.js new file mode 100644 index 00000000..dc2e6153 --- /dev/null +++ b/潇洒/movie/js/KLM.js @@ -0,0 +1 @@ +dmFyIHJ1bGUgPSB7CiAgICB0aXRsZTogJ+eci+S6huS5iCcsCiAgICBob3N0OiAnaHR0cHM6Ly93d3cua3Nrc2wuY29tJywKICAgIC8vIHVybDonL3Nob3cvZnljbGFzcy9wYWdlL2Z5cGFnZS5odG1sJywKICAgIHVybDogJy9zaG93L2Z5Y2xhc3NmeWZpbHRlci5odG1sJywKICAgIGZpbHRlcmFibGU6IDEsIC8v5piv5ZCm5ZCv55So5YiG57G7562b6YCJLAogICAgZmlsdGVyX3VybDogJ3t7ZmwuYXJlYX19e3tmbC5ieSBvciAiL2J5L3RpbWUifX17e2ZsLmNsYXNzfX0vcGFnZS9meXBhZ2V7e2ZsLnllYXJ9fScsCiAgICBmaWx0ZXI6IHsKICAgICAgICAiZHkiOiBbewogICAgICAgICAgICAia2V5IjogImFyZWEiLAogICAgICAgICAgICAibmFtZSI6ICLlnLDljLoiLAogICAgICAgICAgICAidmFsdWUiOiBbewogICAgICAgICAgICAgICAgIm4iOiAi5YWo6YOoIiwKICAgICAgICAgICAgICAgICJ2IjogIiIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5Lit5Zu95aSn6ZmGIiwKICAgICAgICAgICAgICAgICJ2IjogIi9hcmVhL+S4reWbveWkp+mZhiIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5Lit5Zu96aaZ5rivIiwKICAgICAgICAgICAgICAgICJ2IjogIi9hcmVhL+S4reWbvemmmea4ryIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5Lit5Zu95Y+w5rm+IiwKICAgICAgICAgICAgICAgICJ2IjogIi9hcmVhL+S4reWbveWPsOa5viIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi576O5Zu9IiwKICAgICAgICAgICAgICAgICJ2IjogIi9hcmVhL+e+juWbvSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5pel5pysIiwKICAgICAgICAgICAgICAgICJ2IjogIi9hcmVhL+aXpeacrCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi6Z+p5Zu9IiwKICAgICAgICAgICAgICAgICJ2IjogIi9hcmVhL+mfqeWbvSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi6Iux5Zu9IiwKICAgICAgICAgICAgICAgICJ2IjogIi9hcmVhL+iLseWbvSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5rOV5Zu9IiwKICAgICAgICAgICAgICAgICJ2IjogIi9hcmVhL+azleWbvSIKICAgICAgICAgICAgfV0KICAgICAgICB9LCB7CiAgICAgICAgICAgICJrZXkiOiAiY2xhc3MiLAogICAgICAgICAgICAibmFtZSI6ICLliIbnsbsiLAogICAgICAgICAgICAidmFsdWUiOiBbewogICAgICAgICAgICAgICAgIm4iOiAi5YWo6YOoIiwKICAgICAgICAgICAgICAgICJ2IjogIiIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5Zac5YmnIiwKICAgICAgICAgICAgICAgICJ2IjogIi9jbGFzcy/llpzliaciCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIueIseaDhSIsCiAgICAgICAgICAgICAgICAidiI6ICIvY2xhc3Mv54ix5oOFIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLmgZDmgJYiLAogICAgICAgICAgICAgICAgInYiOiAiL2NsYXNzL+aBkOaAliIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5Yqo5L2cIiwKICAgICAgICAgICAgICAgICJ2IjogIi9jbGFzcy/liqjkvZwiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuenkeW5uyIsCiAgICAgICAgICAgICAgICAidiI6ICIvY2xhc3Mv56eR5bm7IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLliafmg4UiLAogICAgICAgICAgICAgICAgInYiOiAiL2NsYXNzL+WJp+aDhSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi6K2m5YyqIiwKICAgICAgICAgICAgICAgICJ2IjogIi9jbGFzcy/orabljKoiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIueKr+e9qiIsCiAgICAgICAgICAgICAgICAidiI6ICIvY2xhc3Mv54qv572qIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLliqjnlLsiLAogICAgICAgICAgICAgICAgInYiOiAiL2NsYXNzL+WKqOeUuyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5aWH5bm7IiwKICAgICAgICAgICAgICAgICJ2IjogIi9jbGFzcy/lpYflubsiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuatpuS+oCIsCiAgICAgICAgICAgICAgICAidiI6ICIvY2xhc3Mv5q2m5L6gIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLlhpLpmakiLAogICAgICAgICAgICAgICAgInYiOiAiL2NsYXNzL+WGkumZqSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5p6q5oiYIiwKICAgICAgICAgICAgICAgICJ2IjogIi9jbGFzcy/mnqrmiJgiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuaBkOaAliIsCiAgICAgICAgICAgICAgICAidiI6ICIvY2xhc3Mv5oGQ5oCWIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLmgqznlpEiLAogICAgICAgICAgICAgICAgInYiOiAiL2NsYXNzL+aCrOeWkSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5oOK5oKaIiwKICAgICAgICAgICAgICAgICJ2IjogIi9jbGFzcy/mg4rmgpoiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIue7j+WFuCIsCiAgICAgICAgICAgICAgICAidiI6ICIvY2xhc3Mv57uP5YW4IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLpnZLmmKUiLAogICAgICAgICAgICAgICAgInYiOiAiL2NsYXNzL+mdkuaYpSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5paH6Im6IiwKICAgICAgICAgICAgICAgICJ2IjogIi9jbGFzcy/mlofoiboiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuWPpOijhSIsCiAgICAgICAgICAgICAgICAidiI6ICIvY2xhc3Mv5Y+k6KOFIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLljoblj7IiLAogICAgICAgICAgICAgICAgInYiOiAiL2NsYXNzL+WOhuWPsiIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi6L+Q5YqoIiwKICAgICAgICAgICAgICAgICJ2IjogIi9jbGFzcy/ov5DliqgiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuWGnOadkSIsCiAgICAgICAgICAgICAgICAidiI6ICIvY2xhc3Mv5Yac5p2RIgogICAgICAgICAgICB9XQogICAgICAgIH0sIHsKICAgICAgICAgICAgImtleSI6ICJ5ZWFyIiwKICAgICAgICAgICAgIm5hbWUiOiAi5bm05Lu9IiwKICAgICAgICAgICAgInZhbHVlIjogW3sKICAgICAgICAgICAgICAgICJuIjogIuWFqOmDqCIsCiAgICAgICAgICAgICAgICAidiI6ICIiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMjUiLAogICAgICAgICAgICAgICAgInYiOiAiL3llYXIvMjAyNSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAyNCIsCiAgICAgICAgICAgICAgICAidiI6ICIveWVhci8yMDI0IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDIzIiwKICAgICAgICAgICAgICAgICJ2IjogIi95ZWFyLzIwMjMiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMjIiLAogICAgICAgICAgICAgICAgInYiOiAiL3llYXIvMjAyMiIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAyMSIsCiAgICAgICAgICAgICAgICAidiI6ICIveWVhci8yMDIxIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDIwIiwKICAgICAgICAgICAgICAgICJ2IjogIi95ZWFyLzIwMjAiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMTkiLAogICAgICAgICAgICAgICAgInYiOiAiL3llYXIvMjAxOSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAxOCIsCiAgICAgICAgICAgICAgICAidiI6ICIveWVhci8yMDE4IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDE3IiwKICAgICAgICAgICAgICAgICJ2IjogIi95ZWFyLzIwMTciCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMTYiLAogICAgICAgICAgICAgICAgInYiOiAiL3llYXIvMjAxNiIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAxNSIsCiAgICAgICAgICAgICAgICAidiI6ICIveWVhci8yMDE1IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDE0IiwKICAgICAgICAgICAgICAgICJ2IjogIi95ZWFyLzIwMTQiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMTMiLAogICAgICAgICAgICAgICAgInYiOiAiL3llYXIvMjAxMyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAxMiIsCiAgICAgICAgICAgICAgICAidiI6ICIveWVhci8yMDEyIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDExIiwKICAgICAgICAgICAgICAgICJ2IjogIi95ZWFyLzIwMTEiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMTAiLAogICAgICAgICAgICAgICAgInYiOiAiL3llYXIvMjAxMCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAwOSIsCiAgICAgICAgICAgICAgICAidiI6ICIveWVhci8yMDA5IgogICAgICAgICAgICB9XQogICAgICAgIH0sIHsKICAgICAgICAgICAgImtleSI6ICJieSIsCiAgICAgICAgICAgICJuYW1lIjogIuaOkuW6jyIsCiAgICAgICAgICAgICJ2YWx1ZSI6IFt7CiAgICAgICAgICAgICAgICAibiI6ICLml7bpl7QiLAogICAgICAgICAgICAgICAgInYiOiAiL2J5L3RpbWUiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuS6uuawlCIsCiAgICAgICAgICAgICAgICAidiI6ICIvYnkvaGl0cyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi6K+E5YiGIiwKICAgICAgICAgICAgICAgICJ2IjogIi9ieS9zY29yZSIKICAgICAgICAgICAgfV0KICAgICAgICB9XSwKICAgICAgICAidHYiOiBbewogICAgICAgICAgICAia2V5IjogImFyZWEiLAogICAgICAgICAgICAibmFtZSI6ICLlnLDljLoiLAogICAgICAgICAgICAidmFsdWUiOiBbewogICAgICAgICAgICAgICAgIm4iOiAi5YWo6YOoIiwKICAgICAgICAgICAgICAgICJ2IjogIiIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5Lit5Zu95aSn6ZmGIiwKICAgICAgICAgICAgICAgICJ2IjogIi9hcmVhL+S4reWbveWkp+mZhiIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5Lit5Zu96aaZ5rivIiwKICAgICAgICAgICAgICAgICJ2IjogIi9hcmVhL+S4reWbvemmmea4ryIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5Lit5Zu95Y+w5rm+IiwKICAgICAgICAgICAgICAgICJ2IjogIi9hcmVhL+S4reWbveWPsOa5viIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi576O5Zu9IiwKICAgICAgICAgICAgICAgICJ2IjogIi9hcmVhL+e+juWbvSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5pel5pysIiwKICAgICAgICAgICAgICAgICJ2IjogIi9hcmVhL+aXpeacrCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi6Z+p5Zu9IiwKICAgICAgICAgICAgICAgICJ2IjogIi9hcmVhL+mfqeWbvSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi6Iux5Zu9IiwKICAgICAgICAgICAgICAgICJ2IjogIi9hcmVhL+iLseWbvSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5rOV5Zu9IiwKICAgICAgICAgICAgICAgICJ2IjogIi9hcmVhL+azleWbvSIKICAgICAgICAgICAgfV0KICAgICAgICB9LCB7CiAgICAgICAgICAgICJrZXkiOiAiY2xhc3MiLAogICAgICAgICAgICAibmFtZSI6ICLliIbnsbsiLAogICAgICAgICAgICAidmFsdWUiOiBbewogICAgICAgICAgICAgICAgIm4iOiAi5YWo6YOoIiwKICAgICAgICAgICAgICAgICJ2IjogIiIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5Y+k6KOFIiwKICAgICAgICAgICAgICAgICJ2IjogIi9jbGFzcy/lj6Too4UiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuiogOaDhSIsCiAgICAgICAgICAgICAgICAidiI6ICIvY2xhc3Mv6KiA5oOFIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLmrabkvqAiLAogICAgICAgICAgICAgICAgInYiOiAiL2NsYXNzL+atpuS+oCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5YG25YOPIiwKICAgICAgICAgICAgICAgICJ2IjogIi9jbGFzcy/nvo7lm70iCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuWutuW6rSIsCiAgICAgICAgICAgICAgICAidiI6ICIvY2xhc3Mv5a625bqtIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLllpzliaciLAogICAgICAgICAgICAgICAgInYiOiAiL2NsYXNzL+WWnOWJpyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5oiY5LqJIiwKICAgICAgICAgICAgICAgICJ2IjogIi9jbGFzcy/miJjkuokiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuWGm+aXhSIsCiAgICAgICAgICAgICAgICAidiI6ICIvY2xhc3Mv5Yab5peFIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLosI3miJgiLAogICAgICAgICAgICAgICAgInYiOiAiL2NsYXNzL+iwjeaImCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5oKs55aRIiwKICAgICAgICAgICAgICAgICJ2IjogIi9jbGFzcy/mgqznlpEiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIue9quahiCIsCiAgICAgICAgICAgICAgICAidiI6ICIvY2xhc3Mv572q5qGIIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLnqb/otooiLAogICAgICAgICAgICAgICAgInYiOiAiL2NsYXNzL+epv+i2iiIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5a6r5bu3IiwKICAgICAgICAgICAgICAgICJ2IjogIi9jbGFzcy/lrqvlu7ciCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuWOhuWPsiIsCiAgICAgICAgICAgICAgICAidiI6ICIvY2xhc3Mv5Y6G5Y+yIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLnpZ7or50iLAogICAgICAgICAgICAgICAgInYiOiAiL2NsYXNzL+elnuivnSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi56eR5bm7IiwKICAgICAgICAgICAgICAgICJ2IjogIi9jbGFzcy/np5HlubsiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuW5tOS7oyIsCiAgICAgICAgICAgICAgICAidiI6ICIvY2xhc3Mv5bm05LujIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLlhpzmnZEiLAogICAgICAgICAgICAgICAgInYiOiAiL2NsYXNzL+WGnOadkSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5ZWG5oiYIiwKICAgICAgICAgICAgICAgICJ2IjogIi9jbGFzcy/llYbmiJgiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuWJp+aDhSIsCiAgICAgICAgICAgICAgICAidiI6ICIvY2xhc3Mv5Ymn5oOFIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLlpYflubsiLAogICAgICAgICAgICAgICAgInYiOiAiL2NsYXNzL+Wlh+W5uyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi572R5YmnIiwKICAgICAgICAgICAgICAgICJ2IjogIi9jbGFzcy/nvZHliaciCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIumDveW4giIsCiAgICAgICAgICAgICAgICAidiI6ICIvY2xhc3Mv6YO95biCIgogICAgICAgICAgICB9XQogICAgICAgIH0sIHsKICAgICAgICAgICAgImtleSI6ICJ5ZWFyIiwKICAgICAgICAgICAgIm5hbWUiOiAi5bm05Lu9IiwKICAgICAgICAgICAgInZhbHVlIjogW3sKICAgICAgICAgICAgICAgICJuIjogIuWFqOmDqCIsCiAgICAgICAgICAgICAgICAidiI6ICIiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMjUiLAogICAgICAgICAgICAgICAgInYiOiAiL3llYXIvMjAyNSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAyNCIsCiAgICAgICAgICAgICAgICAidiI6ICIveWVhci8yMDI0IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDIzIiwKICAgICAgICAgICAgICAgICJ2IjogIi95ZWFyLzIwMjMiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMjIiLAogICAgICAgICAgICAgICAgInYiOiAiL3llYXIvMjAyMiIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAyMSIsCiAgICAgICAgICAgICAgICAidiI6ICIveWVhci8yMDIxIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDIwIiwKICAgICAgICAgICAgICAgICJ2IjogIi95ZWFyLzIwMjAiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMTkiLAogICAgICAgICAgICAgICAgInYiOiAiL3llYXIvMjAxOSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAxOCIsCiAgICAgICAgICAgICAgICAidiI6ICIveWVhci8yMDE4IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDE3IiwKICAgICAgICAgICAgICAgICJ2IjogIi95ZWFyLzIwMTciCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMTYiLAogICAgICAgICAgICAgICAgInYiOiAiL3llYXIvMjAxNiIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAxNSIsCiAgICAgICAgICAgICAgICAidiI6ICIveWVhci8yMDE1IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDE0IiwKICAgICAgICAgICAgICAgICJ2IjogIi95ZWFyLzIwMTQiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMTMiLAogICAgICAgICAgICAgICAgInYiOiAiL3llYXIvMjAxMyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAxMiIsCiAgICAgICAgICAgICAgICAidiI6ICIveWVhci8yMDEyIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDExIiwKICAgICAgICAgICAgICAgICJ2IjogIi95ZWFyLzIwMTEiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMTAiLAogICAgICAgICAgICAgICAgInYiOiAiL3llYXIvMjAxMCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAwOSIsCiAgICAgICAgICAgICAgICAidiI6ICIveWVhci8yMDA5IgogICAgICAgICAgICB9XQogICAgICAgIH0sIHsKICAgICAgICAgICAgImtleSI6ICJieSIsCiAgICAgICAgICAgICJuYW1lIjogIuaOkuW6jyIsCiAgICAgICAgICAgICJ2YWx1ZSI6IFt7CiAgICAgICAgICAgICAgICAibiI6ICLml7bpl7QiLAogICAgICAgICAgICAgICAgInYiOiAiL2J5L3RpbWUiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuS6uuawlCIsCiAgICAgICAgICAgICAgICAidiI6ICIvYnkvaGl0cyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi6K+E5YiGIiwKICAgICAgICAgICAgICAgICJ2IjogIi9ieS9zY29yZSIKICAgICAgICAgICAgfV0KICAgICAgICB9XSwKICAgICAgICAienkiOiBbewogICAgICAgICAgICAia2V5IjogImFyZWEiLAogICAgICAgICAgICAibmFtZSI6ICLlnLDljLoiLAogICAgICAgICAgICAidmFsdWUiOiBbewogICAgICAgICAgICAgICAgIm4iOiAi5YWo6YOoIiwKICAgICAgICAgICAgICAgICJ2IjogIiIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5Lit5Zu95aSn6ZmGIiwKICAgICAgICAgICAgICAgICJ2IjogIi9hcmVhL+S4reWbveWkp+mZhiIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5Lit5Zu96aaZ5rivIiwKICAgICAgICAgICAgICAgICJ2IjogIi9hcmVhL+S4reWbvemmmea4ryIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5Lit5Zu95Y+w5rm+IiwKICAgICAgICAgICAgICAgICJ2IjogIi9hcmVhL+S4reWbveWPsOa5viIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi576O5Zu9IiwKICAgICAgICAgICAgICAgICJ2IjogIi9hcmVhL+e+juWbvSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5pel5pysIiwKICAgICAgICAgICAgICAgICJ2IjogIi9hcmVhL+aXpeacrCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi6Z+p5Zu9IiwKICAgICAgICAgICAgICAgICJ2IjogIi9hcmVhL+mfqeWbvSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi6Iux5Zu9IiwKICAgICAgICAgICAgICAgICJ2IjogIi9hcmVhL+iLseWbvSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5rOV5Zu9IiwKICAgICAgICAgICAgICAgICJ2IjogIi9hcmVhL+azleWbvSIKICAgICAgICAgICAgfV0KICAgICAgICB9LCB7CiAgICAgICAgICAgICJrZXkiOiAiY2xhc3MiLAogICAgICAgICAgICAibmFtZSI6ICLliIbnsbsiLAogICAgICAgICAgICAidmFsdWUiOiBbewogICAgICAgICAgICAgICAgIm4iOiAi5YWo6YOoIiwKICAgICAgICAgICAgICAgICJ2IjogIiIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi6KGo5ryUIiwKICAgICAgICAgICAgICAgICJ2IjogIi9jbGFzcy/ooajmvJQiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuaSreaKpSIsCiAgICAgICAgICAgICAgICAidiI6ICIvY2xhc3Mv5pKt5oqlIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLorr/osIgiLAogICAgICAgICAgICAgICAgInYiOiAiL2NsYXNzL+iuv+iwiCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5L2T6aqMIiwKICAgICAgICAgICAgICAgICJ2IjogIi9jbGFzcy/kvZPpqowiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuWFu+aIkCIsCiAgICAgICAgICAgICAgICAidiI6ICIvY2xhc3Mv5YW75oiQIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLmuLjmiI8iLAogICAgICAgICAgICAgICAgInYiOiAiL2NsYXNzL+a4uOaIjyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5Lqy5a2QIiwKICAgICAgICAgICAgICAgICJ2IjogIi9jbGFzcy/kurLlrZAiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIue+jumjnyIsCiAgICAgICAgICAgICAgICAidiI6ICIvY2xhc3Mv576O6aOfIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLmg4XmhJ8iLAogICAgICAgICAgICAgICAgInYiOiAiL2NsYXNzL+aDheaEnyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi6YCJ56eAIiwKICAgICAgICAgICAgICAgICJ2IjogIi9jbGFzcy/pgInnp4AiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuebiuaZuiIsCiAgICAgICAgICAgICAgICAidiI6ICIvY2xhc3Mv55uK5pm6IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLmmZrkvJoiLAogICAgICAgICAgICAgICAgInYiOiAiL2NsYXNzL+aZmuS8miIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi6Z+z5LmQIiwKICAgICAgICAgICAgICAgICJ2IjogIi9jbGFzcy/pn7PkuZAiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuaWh+WMliIsCiAgICAgICAgICAgICAgICAidiI6ICIvY2xhc3Mv5paH5YyWIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLllpzliaciLAogICAgICAgICAgICAgICAgInYiOiAiL2NsYXNzL+WWnOWJpyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5puy6Im6IiwKICAgICAgICAgICAgICAgICJ2IjogIi9jbGFzcy/mm7LoiboiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuiBjOWcuiIsCiAgICAgICAgICAgICAgICAidiI6ICIvY2xhc3Mv6IGM5Zy6IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLohLHlj6Pnp4AiLAogICAgICAgICAgICAgICAgInYiOiAiL2NsYXNzL+iEseWPo+engCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5paH6Im6IiwKICAgICAgICAgICAgICAgICJ2IjogIi9jbGFzcy/mlofoiboiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuernuaKgCIsCiAgICAgICAgICAgICAgICAidiI6ICIvY2xhc3Mv56ue5oqAIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLmva7mtYHmlofljJYiLAogICAgICAgICAgICAgICAgInYiOiAiL2NsYXNzL+a9rua1geaWh+WMliIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5L2T6IKyIiwKICAgICAgICAgICAgICAgICJ2IjogIi9jbGFzcy/kvZPogrIiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIui1hOiuryIsCiAgICAgICAgICAgICAgICAidiI6ICIvY2xhc3Mv6LWE6K6vIgogICAgICAgICAgICB9XQogICAgICAgIH0sIHsKICAgICAgICAgICAgImtleSI6ICJ5ZWFyIiwKICAgICAgICAgICAgIm5hbWUiOiAi5bm05Lu9IiwKICAgICAgICAgICAgInZhbHVlIjogW3sKICAgICAgICAgICAgICAgICJuIjogIuWFqOmDqCIsCiAgICAgICAgICAgICAgICAidiI6ICIiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMjUiLAogICAgICAgICAgICAgICAgInYiOiAiL3llYXIvMjAyNSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAyNCIsCiAgICAgICAgICAgICAgICAidiI6ICIveWVhci8yMDI0IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDIzIiwKICAgICAgICAgICAgICAgICJ2IjogIi95ZWFyLzIwMjMiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMjIiLAogICAgICAgICAgICAgICAgInYiOiAiL3llYXIvMjAyMiIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAyMSIsCiAgICAgICAgICAgICAgICAidiI6ICIveWVhci8yMDIxIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDIwIiwKICAgICAgICAgICAgICAgICJ2IjogIi95ZWFyLzIwMjAiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMTkiLAogICAgICAgICAgICAgICAgInYiOiAiL3llYXIvMjAxOSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAxOCIsCiAgICAgICAgICAgICAgICAidiI6ICIveWVhci8yMDE4IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDE3IiwKICAgICAgICAgICAgICAgICJ2IjogIi95ZWFyLzIwMTciCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMTYiLAogICAgICAgICAgICAgICAgInYiOiAiL3llYXIvMjAxNiIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAxNSIsCiAgICAgICAgICAgICAgICAidiI6ICIveWVhci8yMDE1IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDE0IiwKICAgICAgICAgICAgICAgICJ2IjogIi95ZWFyLzIwMTQiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMTMiLAogICAgICAgICAgICAgICAgInYiOiAiL3llYXIvMjAxMyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAxMiIsCiAgICAgICAgICAgICAgICAidiI6ICIveWVhci8yMDEyIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDExIiwKICAgICAgICAgICAgICAgICJ2IjogIi95ZWFyLzIwMTEiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMTAiLAogICAgICAgICAgICAgICAgInYiOiAiL3llYXIvMjAxMCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAwOSIsCiAgICAgICAgICAgICAgICAidiI6ICIveWVhci8yMDA5IgogICAgICAgICAgICB9XQogICAgICAgIH0sIHsKICAgICAgICAgICAgImtleSI6ICJieSIsCiAgICAgICAgICAgICJuYW1lIjogIuaOkuW6jyIsCiAgICAgICAgICAgICJ2YWx1ZSI6IFt7CiAgICAgICAgICAgICAgICAibiI6ICLml7bpl7QiLAogICAgICAgICAgICAgICAgInYiOiAiL2J5L3RpbWUiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuS6uuawlCIsCiAgICAgICAgICAgICAgICAidiI6ICIvYnkvaGl0cyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi6K+E5YiGIiwKICAgICAgICAgICAgICAgICJ2IjogIi9ieS9zY29yZSIKICAgICAgICAgICAgfV0KICAgICAgICB9XSwKICAgICAgICAiZG0iOiBbewogICAgICAgICAgICAia2V5IjogImFyZWEiLAogICAgICAgICAgICAibmFtZSI6ICLlnLDljLoiLAogICAgICAgICAgICAidmFsdWUiOiBbewogICAgICAgICAgICAgICAgIm4iOiAi5YWo6YOoIiwKICAgICAgICAgICAgICAgICJ2IjogIiIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5Lit5Zu95aSn6ZmGIiwKICAgICAgICAgICAgICAgICJ2IjogIi9hcmVhL+S4reWbveWkp+mZhiIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5Lit5Zu96aaZ5rivIiwKICAgICAgICAgICAgICAgICJ2IjogIi9hcmVhL+S4reWbvemmmea4ryIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5Lit5Zu95Y+w5rm+IiwKICAgICAgICAgICAgICAgICJ2IjogIi9hcmVhL+S4reWbveWPsOa5viIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi576O5Zu9IiwKICAgICAgICAgICAgICAgICJ2IjogIi9hcmVhL+e+juWbvSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5pel5pysIiwKICAgICAgICAgICAgICAgICJ2IjogIi9hcmVhL+aXpeacrCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi6Z+p5Zu9IiwKICAgICAgICAgICAgICAgICJ2IjogIi9hcmVhL+mfqeWbvSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi6Iux5Zu9IiwKICAgICAgICAgICAgICAgICJ2IjogIi9hcmVhL+iLseWbvSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5rOV5Zu9IiwKICAgICAgICAgICAgICAgICJ2IjogIi9hcmVhL+azleWbvSIKICAgICAgICAgICAgfV0KICAgICAgICB9LCB7CiAgICAgICAgICAgICJrZXkiOiAiY2xhc3MiLAogICAgICAgICAgICAibmFtZSI6ICLliIbnsbsiLAogICAgICAgICAgICAidmFsdWUiOiBbewogICAgICAgICAgICAgICAgIm4iOiAi5YWo6YOoIiwKICAgICAgICAgICAgICAgICJ2IjogIiIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi54Ot6ZeoIiwKICAgICAgICAgICAgICAgICJ2IjogIi9jbGFzcy/ng63pl6giCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuaQnueskSIsCiAgICAgICAgICAgICAgICAidiI6ICIvY2xhc3Mv5pCe56yRIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLnlarliaciLAogICAgICAgICAgICAgICAgInYiOiAiL2NsYXNzL+eVquWJpyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5Zu95YibIiwKICAgICAgICAgICAgICAgICJ2IjogIi9jbGFzcy/lm73liJsiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuWkp+eUteW9sSIsCiAgICAgICAgICAgICAgICAidiI6ICIvY2xhc3Mv5aSn55S15b2xIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLng63ooYAiLAogICAgICAgICAgICAgICAgInYiOiAiL2NsYXNzL+eDreihgCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5YKs5rOqIiwKICAgICAgICAgICAgICAgICJ2IjogIi9jbGFzcy/lgqzms6oiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuWKseW/lyIsCiAgICAgICAgICAgICAgICAidiI6ICIvY2xhc3Mv5Yqx5b+XIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLmnLrmiJgiLAogICAgICAgICAgICAgICAgInYiOiAiL2NsYXNzL+acuuaImCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5qC85paXIiwKICAgICAgICAgICAgICAgICJ2IjogIi9jbGFzcy/moLzmlpciCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuaBi+eIsSIsCiAgICAgICAgICAgICAgICAidiI6ICIvY2xhc3Mv5oGL54ixIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLnp5HlubsiLAogICAgICAgICAgICAgICAgInYiOiAiL2NsYXNzL+enkeW5uyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5aWH5bm7IiwKICAgICAgICAgICAgICAgICJ2IjogIi9jbGFzcy/lpYflubsiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIumtlOW5uyIsCiAgICAgICAgICAgICAgICAidiI6ICIvY2xhc3Mv6a2U5bm7IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLmjqjnkIYiLAogICAgICAgICAgICAgICAgInYiOiAiL2NsYXNzL+aOqOeQhiIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5qCh5ZutIiwKICAgICAgICAgICAgICAgICJ2IjogIi9jbGFzcy/moKHlm60iCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuaXpeW4uCIsCiAgICAgICAgICAgICAgICAidiI6ICIvY2xhc3Mv5pel5bi4IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLnu4/lhbgiLAogICAgICAgICAgICAgICAgInYiOiAiL2NsYXNzL+e7j+WFuCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5Y6G5Y+yIiwKICAgICAgICAgICAgICAgICJ2IjogIi9jbGFzcy/ljoblj7IiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIue+jumjnyIsCiAgICAgICAgICAgICAgICAidiI6ICIvY2xhc3Mv576O6aOfIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLmrabkvqAiLAogICAgICAgICAgICAgICAgInYiOiAiL2NsYXNzL+atpuS+oCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi546E5bm7IiwKICAgICAgICAgICAgICAgICJ2IjogIi9jbGFzcy/njoTlubsiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuernuaKgCIsCiAgICAgICAgICAgICAgICAidiI6ICIvY2xhc3Mv56ue5oqAIgogICAgICAgICAgICB9XQogICAgICAgIH0sIHsKICAgICAgICAgICAgImtleSI6ICJ5ZWFyIiwKICAgICAgICAgICAgIm5hbWUiOiAi5bm05Lu9IiwKICAgICAgICAgICAgInZhbHVlIjogW3sKICAgICAgICAgICAgICAgICJuIjogIuWFqOmDqCIsCiAgICAgICAgICAgICAgICAidiI6ICIiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMjUiLAogICAgICAgICAgICAgICAgInYiOiAiL3llYXIvMjAyNSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAyNCIsCiAgICAgICAgICAgICAgICAidiI6ICIveWVhci8yMDI0IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDIzIiwKICAgICAgICAgICAgICAgICJ2IjogIi95ZWFyLzIwMjMiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMjIiLAogICAgICAgICAgICAgICAgInYiOiAiL3llYXIvMjAyMiIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAyMSIsCiAgICAgICAgICAgICAgICAidiI6ICIveWVhci8yMDIxIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDIwIiwKICAgICAgICAgICAgICAgICJ2IjogIi95ZWFyLzIwMjAiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMTkiLAogICAgICAgICAgICAgICAgInYiOiAiL3llYXIvMjAxOSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAxOCIsCiAgICAgICAgICAgICAgICAidiI6ICIveWVhci8yMDE4IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDE3IiwKICAgICAgICAgICAgICAgICJ2IjogIi95ZWFyLzIwMTciCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMTYiLAogICAgICAgICAgICAgICAgInYiOiAiL3llYXIvMjAxNiIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAxNSIsCiAgICAgICAgICAgICAgICAidiI6ICIveWVhci8yMDE1IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDE0IiwKICAgICAgICAgICAgICAgICJ2IjogIi95ZWFyLzIwMTQiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMTMiLAogICAgICAgICAgICAgICAgInYiOiAiL3llYXIvMjAxMyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAxMiIsCiAgICAgICAgICAgICAgICAidiI6ICIveWVhci8yMDEyIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDExIiwKICAgICAgICAgICAgICAgICJ2IjogIi95ZWFyLzIwMTEiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMTAiLAogICAgICAgICAgICAgICAgInYiOiAiL3llYXIvMjAxMCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAwOSIsCiAgICAgICAgICAgICAgICAidiI6ICIveWVhci8yMDA5IgogICAgICAgICAgICB9XQogICAgICAgIH0sIHsKICAgICAgICAgICAgImtleSI6ICJieSIsCiAgICAgICAgICAgICJuYW1lIjogIuaOkuW6jyIsCiAgICAgICAgICAgICJ2YWx1ZSI6IFt7CiAgICAgICAgICAgICAgICAibiI6ICLml7bpl7QiLAogICAgICAgICAgICAgICAgInYiOiAiL2J5L3RpbWUiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuS6uuawlCIsCiAgICAgICAgICAgICAgICAidiI6ICIvYnkvaGl0cyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi6K+E5YiGIiwKICAgICAgICAgICAgICAgICJ2IjogIi9ieS9zY29yZSIKICAgICAgICAgICAgfV0KICAgICAgICB9XSwKICAgICAgICAiamwiOiBbewogICAgICAgICAgICAia2V5IjogImFyZWEiLAogICAgICAgICAgICAibmFtZSI6ICLlnLDljLoiLAogICAgICAgICAgICAidmFsdWUiOiBbewogICAgICAgICAgICAgICAgIm4iOiAi5YWo6YOoIiwKICAgICAgICAgICAgICAgICJ2IjogIiIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5Lit5Zu95aSn6ZmGIiwKICAgICAgICAgICAgICAgICJ2IjogIi9hcmVhL+S4reWbveWkp+mZhiIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5pel5pysIiwKICAgICAgICAgICAgICAgICJ2IjogIi9hcmVhL+aXpeacrCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi576O5Zu9IiwKICAgICAgICAgICAgICAgICJ2IjogIi9hcmVhL+e+juWbvSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5Zu95aSWIiwKICAgICAgICAgICAgICAgICJ2IjogIi9hcmVhL+WbveWkliIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5YW25LuWIiwKICAgICAgICAgICAgICAgICJ2IjogIi9hcmVhL+WFtuS7liIKICAgICAgICAgICAgfV0KICAgICAgICB9LCB7CiAgICAgICAgICAgICJrZXkiOiAiY2xhc3MiLAogICAgICAgICAgICAibmFtZSI6ICLliIbnsbsiLAogICAgICAgICAgICAidmFsdWUiOiBbewogICAgICAgICAgICAgICAgIm4iOiAi5YWo6YOoIiwKICAgICAgICAgICAgICAgICJ2IjogIiIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi56S+5LyaIiwKICAgICAgICAgICAgICAgICJ2IjogIi9jbGFzcy/npL7kvJoiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuWKqOeJqSIsCiAgICAgICAgICAgICAgICAidiI6ICIvY2xhc3Mv5Yqo54mpIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLmlofljJYiLAogICAgICAgICAgICAgICAgInYiOiAiL2NsYXNzL+aWh+WMliIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi6Ieq54S2IiwKICAgICAgICAgICAgICAgICJ2IjogIi9jbGFzcy/oh6rnhLYiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuS6uuaWhyIsCiAgICAgICAgICAgICAgICAidiI6ICIvY2xhc3Mv5Lq65paHIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLlhpvkuosiLAogICAgICAgICAgICAgICAgInYiOiAiL2NsYXNzL+WGm+S6iyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5Y6G5Y+yIiwKICAgICAgICAgICAgICAgICJ2IjogIi9jbGFzcy/ljoblj7IiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuiusOW9lSIsCiAgICAgICAgICAgICAgICAidiI6ICIvY2xhc3Mv6K6w5b2VIgogICAgICAgICAgICB9XQogICAgICAgIH0sIHsKICAgICAgICAgICAgImtleSI6ICJ5ZWFyIiwKICAgICAgICAgICAgIm5hbWUiOiAi5bm05Lu9IiwKICAgICAgICAgICAgInZhbHVlIjogW3sKICAgICAgICAgICAgICAgICJuIjogIuWFqOmDqCIsCiAgICAgICAgICAgICAgICAidiI6ICIiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMjUiLAogICAgICAgICAgICAgICAgInYiOiAiL3llYXIvMjAyNSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAyNCIsCiAgICAgICAgICAgICAgICAidiI6ICIveWVhci8yMDI0IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDIzIiwKICAgICAgICAgICAgICAgICJ2IjogIi95ZWFyLzIwMjMiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMjIiLAogICAgICAgICAgICAgICAgInYiOiAiL3llYXIvMjAyMiIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAyMSIsCiAgICAgICAgICAgICAgICAidiI6ICIveWVhci8yMDIxIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDIwIiwKICAgICAgICAgICAgICAgICJ2IjogIi95ZWFyLzIwMjAiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMTkiLAogICAgICAgICAgICAgICAgInYiOiAiL3llYXIvMjAxOSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAxOCIsCiAgICAgICAgICAgICAgICAidiI6ICIveWVhci8yMDE4IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDE3IiwKICAgICAgICAgICAgICAgICJ2IjogIi95ZWFyLzIwMTciCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMTYiLAogICAgICAgICAgICAgICAgInYiOiAiL3llYXIvMjAxNiIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAxNSIsCiAgICAgICAgICAgICAgICAidiI6ICIveWVhci8yMDE1IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDE0IiwKICAgICAgICAgICAgICAgICJ2IjogIi95ZWFyLzIwMTQiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMTMiLAogICAgICAgICAgICAgICAgInYiOiAiL3llYXIvMjAxMyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAxMiIsCiAgICAgICAgICAgICAgICAidiI6ICIveWVhci8yMDEyIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDExIiwKICAgICAgICAgICAgICAgICJ2IjogIi95ZWFyLzIwMTEiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMTAiLAogICAgICAgICAgICAgICAgInYiOiAiL3llYXIvMjAxMCIKICAgICAgICAgICAgfV0KICAgICAgICB9LCB7CiAgICAgICAgICAgICJrZXkiOiAiYnkiLAogICAgICAgICAgICAibmFtZSI6ICLmjpLluo8iLAogICAgICAgICAgICAidmFsdWUiOiBbewogICAgICAgICAgICAgICAgIm4iOiAi5pe26Ze0IiwKICAgICAgICAgICAgICAgICJ2IjogIi9ieS90aW1lIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLkurrmsJQiLAogICAgICAgICAgICAgICAgInYiOiAiL2J5L2hpdHMiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuivhOWIhiIsCiAgICAgICAgICAgICAgICAidiI6ICIvYnkvc2NvcmUiCiAgICAgICAgICAgIH1dCiAgICAgICAgfV0KICAgIH0sCiAgICAvLyBzZWFyY2hVcmw6Jy9jaC5odG1sP3dkPSoqJywKICAgIHNlYXJjaFVybDogJy9jaC9wYWdlL2Z5cGFnZS93ZC8qKi5odG1sJywKICAgIHNlYXJjaGFibGU6IDIsCiAgICBoZWFkZXJzOiB7CiAgICAgICAgJ1VzZXItQWdlbnQnOiAnVUNfVUEnCiAgICB9LAogICAgdGltZW91dDogNTAwMCwKICAgIC8vIGNsYXNzX25hbWU6ICfnlLXlvbEm55S16KeG5YmnJuWKqOa8qybnu7zoibom57qq5b2V54mHJywvL+mdmeaAgeWIhuexu+WQjeensOaLvOaOpQogICAgLy8gY2xhc3NfdXJsOiAnZHkmdHYmZG0menkmamwnLC8v6Z2Z5oCB5YiG57G75qCH6K+G5ou85o6lCiAgICBjbGFzc19wYXJzZTogJy52aS1uYXYuc3dpcGVyLXdyYXBwZXImJmxpOmd0KDApOmx0KDYpO2EmJlRleHQ7YSYmaHJlZjsuKi8oLio/KS5odG1sJywKICAgIHBsYXlfcGFyc2U6IHRydWUsCiAgICBsYXp5OiBganM6CiAgICAgICAgdmFyIGh0bWwgPSBKU09OLnBhcnNlKHJlcXVlc3QoaW5wdXQpLm1hdGNoKC9yIHBsYXllcl8uKj89KC4qPyk8LylbMV0pOwogICAgICAgIHZhciB1cmwgPSBodG1sLnVybDsKICAgICAgICBpZiAoaHRtbC5lbmNyeXB0ID09ICcxJykgewogICAgICAgICAgICB1cmwgPSB1bmVzY2FwZSh1cmwpCiAgICAgICAgfSBlbHNlIGlmIChodG1sLmVuY3J5cHQgPT0gJzInKSB7CiAgICAgICAgICAgIHVybCA9IHVuZXNjYXBlKGJhc2U2NERlY29kZSh1cmwpKQogICAgICAgIH0KICAgICAgICBpZiAoL1xcLm0zdTh8XFwubXA0Ly50ZXN0KHVybCkpIHsKICAgICAgICAgICAgaW5wdXQgPSB7CiAgICAgICAgICAgICAgICBqeDogMCwKICAgICAgICAgICAgICAgIHVybDogdXJsLAogICAgICAgICAgICAgICAgcGFyc2U6IDAKICAgICAgICAgICAgfQogICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgIGlucHV0CiAgICAgICAgfQogICAgYCwKICAgIGxpbWl0OiA1LAogICAg5o6o6I2QOiAnLmR4LXRvcDtsaTthJiZ0aXRsZTthJiZkYXRhLW9yaWdpbmFsOy52b2RfcmVtYXJrcyYmVGV4dDthJiZocmVmJywKICAgIGRvdWJsZTogdHJ1ZSwgLy8g5o6o6I2Q5YaF5a655piv5ZCm5Y+M5bGC5a6a5L2NCiAgICDkuIDnuqc6ICd1bC5keC1saXN0IGxpO2EmJnRpdGxlO2EmJmRhdGEtb3JpZ2luYWw7LnZvZF9yZW1hcmtzJiZUZXh0O2EmJmhyZWYnLAogICAg5LqM57qnOiB7CiAgICAgICAgInRpdGxlIjogImgxLS1zcGFuJiZUZXh0OyIsCiAgICAgICAgImltZyI6ICIucGljSG92ZXImJmltZyYmc3JjIiwKICAgICAgICAiZGVzYyI6ICI7OzsudmlkZW8taW5mby1pdGVtOmVxKDApJiZUZXh0Oy5pdGVtLXRhZ3MmJlRleHQiLAogICAgICAgICJjb250ZW50IjogIi52b2RfY29udGVudCYmVGV4dCIsCiAgICAgICAgInRhYnMiOiAiLnBsYXktdGl0bGUgaDIiLAogICAgICAgICJsaXN0cyI6ICIucGxheV9saS5mbi1jbGVhcjplcSgjaWQpIGEiCiAgICB9LAogICAg5pCc57SiOiAnKicsCn0= \ No newline at end of file diff --git a/潇洒/movie/js/MGDM.js b/潇洒/movie/js/MGDM.js new file mode 100644 index 00000000..d7733f0b --- /dev/null +++ b/潇洒/movie/js/MGDM.js @@ -0,0 +1 @@ +dmFyIHJ1bGUgPSB7CiAgICB0aXRsZTogJ+eZvuW/meaXoOaenFvlrphdJywKICAgIGhvc3Q6ICdodHRwczovL3BpYW5rdS5hcGkuJTZkJTY3JTc0JTc2LmNvbScsCiAgICBob21lVXJsOiAnJywKICAgIC8vIHNlYXJjaFVybDogJ2h0dHBzOi8vbW9iaWxlc28uYnouJTZkJTY3JTc0JTc2LmNvbS9wYy9zZWFyY2gvdjE/cT0qKiZwbj1meXBhZ2UmcGM9MTAnLAogICAgLy8g5paw54mI5o6l5Y+j5pCc57Si5Y+Y5oiQdjLlubbkuJTliqDkuobpqozor4HvvIzom4vnlrwKICAgIC8vIHNlYXJjaFVybDogJ2h0dHBzOi8vbW9iaWxlc28uYnoubWd0di5jb20vcGMvc2VhcmNoL3YyP2FsbG93ZWRSQz0xJnNyYz1tZ3R2JmRpZD1jZjAzYjk1OS02OTQ1LTRjYjYtYmNiMy04ODc2MjQ1OTM1NGQmdGltZXN0YW1wPTIwMjQtMDYtMjFUMTUlM0E1MiUzQTU1WiZzaWduVmVyc2lvbj0xJnNpZ25Ob25jZT04ZGFlNjdhMWZhZmM0YmRhOTg0ZWM4ZGViNDc2NjZhZCZxPSoqJnBuPWZ5cGFnZSZwYz0xMCZjb3JyPTEmX3N1cHBvcnQ9MTAwMDAwMDAmc2lnbmF0dXJlPTRlMjdmZGRjZDJhMWE2NmQ2YzE3NjRlZDZiNzRiYWI3JywKICAgIC8vIOeUqOaJi+acuueahOWQp++8jOaQnuS4jeWumui/meS4qgogICAgc2VhcmNoVXJsOiAnaHR0cHM6Ly9tb2JpbGVzby5iei4lNmQlNjclNzQlNzYuY29tL21zaXRlL3NlYXJjaC92Mj9xPSoqJnBuPWZ5cGFnZSZwYz0xMCcsCiAgICBkZXRhaWxVcmw6ICdodHRwczovL3Bjd2ViLmFwaS5tZ3R2LmNvbS9lcGlzb2RlL2xpc3Q/cGFnZT0xJnNpemU9NTAmdmlkZW9faWQ9ZnlpZCcsCiAgICBzZWFyY2hhYmxlOiAyLAogICAgcXVpY2tTZWFyY2g6IDAsCiAgICBmaWx0ZXJhYmxlOiAxLAogICAgbXVsdGk6IDEsCiAgICAvLyDliIbnsbvpk77mjqVmeXBhZ2Xlj4LmlbDmlK/mjIEx5LiqKCnooajovr7lvI8KICAgIC8vIGh0dHBzOi8vd3d3Lm1ndHYuY29tL2xpYi8zP2xhc3RwPWxpc3RfaW5kZXgma2luZD1hMSZ5ZWFyPWFsbCZjaGFyZ2VJbmZvPWExJnNvcnQ9YzIKICAgIHVybDogJy9yaWRlci9saXN0L3Bjd2ViL3YzP3BsYXRmb3JtPXBjd2ViJmNoYW5uZWxJZD1meWNsYXNzJnBuPWZ5cGFnZSZwYz04MCZodWRvbmc9MSZfc3VwcG9ydD0xMDAwMDAwMCZraW5kPWExJmFyZWE9YTEnLAogICAgZmlsdGVyX3VybDogJ3llYXI9e3tmbC55ZWFyIG9yICJhbGwifX0mc29ydD17e2ZsLnNvcnQgb3IgImFsbCJ9fSZjaGFyZ2VJbmZvPXt7ZmwuY2hhcmdlSW5mbyBvciAiYWxsIn19JywKICAgIGhlYWRlcnM6IHsKICAgICAgICAnVXNlci1BZ2VudCc6ICdQQ19VQScKICAgIH0sCiAgICB0aW1lb3V0OiA1MDAwLAogICAgY2xhc3NfbmFtZTogJ+eUteinhuWJpybnlLXlvbEm57u86Im6JuWKqOa8qybnuqrlvZXniYcm5pWZ6IKyJuWwkeWEvycsCiAgICBjbGFzc191cmw6ICcyJjMmMSY1MCY1MSYxMTUmMTAnLAogICAgZmlsdGVyOiB7CiAgICAgICAgIjEiOiBbewogICAgICAgICAgICAia2V5IjogImNoYXJnZUluZm8iLAogICAgICAgICAgICAibmFtZSI6ICLku5jotLnnsbvlnosiLAogICAgICAgICAgICAidmFsdWUiOiBbewogICAgICAgICAgICAgICAgIm4iOiAi5YWo6YOoIiwKICAgICAgICAgICAgICAgICJ2IjogImFsbCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5YWN6LS5IiwKICAgICAgICAgICAgICAgICJ2IjogImIxIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICJ2aXAiLAogICAgICAgICAgICAgICAgInYiOiAiYjIiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIlZJUOeUqOWIuCIsCiAgICAgICAgICAgICAgICAidiI6ICJiMyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5LuY6LS554K55pKtIiwKICAgICAgICAgICAgICAgICJ2IjogImI0IgogICAgICAgICAgICB9XQogICAgICAgIH0sIHsKICAgICAgICAgICAgImtleSI6ICJzb3J0IiwKICAgICAgICAgICAgIm5hbWUiOiAi5o6S5bqPIiwKICAgICAgICAgICAgInZhbHVlIjogW3sKICAgICAgICAgICAgICAgICJuIjogIuacgOaWsCIsCiAgICAgICAgICAgICAgICAidiI6ICJjMSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5pyA54OtIiwKICAgICAgICAgICAgICAgICJ2IjogImMyIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLnn6XkuY7pq5jliIYiLAogICAgICAgICAgICAgICAgInYiOiAiYzQiCiAgICAgICAgICAgIH1dCiAgICAgICAgfSwgewogICAgICAgICAgICAia2V5IjogInllYXIiLAogICAgICAgICAgICAibmFtZSI6ICLlubTku6MiLAogICAgICAgICAgICAidmFsdWUiOiBbewogICAgICAgICAgICAgICAgIm4iOiAi5YWo6YOoIiwKICAgICAgICAgICAgICAgICJ2IjogImFsbCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAyNSIsCiAgICAgICAgICAgICAgICAidiI6ICIyMDI1IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDI0IiwKICAgICAgICAgICAgICAgICJ2IjogIjIwMjQiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMjMiLAogICAgICAgICAgICAgICAgInYiOiAiMjAyMyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAyMiIsCiAgICAgICAgICAgICAgICAidiI6ICIyMDIyIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDIxIiwKICAgICAgICAgICAgICAgICJ2IjogIjIwMjEiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMjAiLAogICAgICAgICAgICAgICAgInYiOiAiMjAyMCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAxOSIsCiAgICAgICAgICAgICAgICAidiI6ICIyMDE5IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDE4IiwKICAgICAgICAgICAgICAgICJ2IjogIjIwMTgiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMTciLAogICAgICAgICAgICAgICAgInYiOiAiMjAxNyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAxNiIsCiAgICAgICAgICAgICAgICAidiI6ICIyMDE2IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDE1IiwKICAgICAgICAgICAgICAgICJ2IjogIjIwMTUiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMTQiLAogICAgICAgICAgICAgICAgInYiOiAiMjAxNCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAxMyIsCiAgICAgICAgICAgICAgICAidiI6ICIyMDEzIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDEyIiwKICAgICAgICAgICAgICAgICJ2IjogIjIwMTIiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMTEiLAogICAgICAgICAgICAgICAgInYiOiAiMjAxMSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAxMCIsCiAgICAgICAgICAgICAgICAidiI6ICIyMDEwIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDA5IiwKICAgICAgICAgICAgICAgICJ2IjogIjIwMDkiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMDgiLAogICAgICAgICAgICAgICAgInYiOiAiMjAwOCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAwNyIsCiAgICAgICAgICAgICAgICAidiI6ICIyMDA3IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDA2IiwKICAgICAgICAgICAgICAgICJ2IjogIjIwMDYiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMDUiLAogICAgICAgICAgICAgICAgInYiOiAiMjAwNSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAwNCIsCiAgICAgICAgICAgICAgICAidiI6ICIyMDA0IgogICAgICAgICAgICB9XQogICAgICAgIH1dLAogICAgICAgICIyIjogW3sKICAgICAgICAgICAgImtleSI6ICJjaGFyZ2VJbmZvIiwKICAgICAgICAgICAgIm5hbWUiOiAi5LuY6LS557G75Z6LIiwKICAgICAgICAgICAgInZhbHVlIjogW3sKICAgICAgICAgICAgICAgICJuIjogIuWFqOmDqCIsCiAgICAgICAgICAgICAgICAidiI6ICJhbGwiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuWFjei0uSIsCiAgICAgICAgICAgICAgICAidiI6ICJiMSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAidmlwIiwKICAgICAgICAgICAgICAgICJ2IjogImIyIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICJWSVDnlKjliLgiLAogICAgICAgICAgICAgICAgInYiOiAiYjMiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuS7mOi0ueeCueaSrSIsCiAgICAgICAgICAgICAgICAidiI6ICJiNCIKICAgICAgICAgICAgfV0KICAgICAgICB9LCB7CiAgICAgICAgICAgICJrZXkiOiAic29ydCIsCiAgICAgICAgICAgICJuYW1lIjogIuaOkuW6jyIsCiAgICAgICAgICAgICJ2YWx1ZSI6IFt7CiAgICAgICAgICAgICAgICAibiI6ICLmnIDmlrAiLAogICAgICAgICAgICAgICAgInYiOiAiYzEiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuacgOeDrSIsCiAgICAgICAgICAgICAgICAidiI6ICJjMiIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi55+l5LmO6auY5YiGIiwKICAgICAgICAgICAgICAgICJ2IjogImM0IgogICAgICAgICAgICB9XQogICAgICAgIH0sIHsKICAgICAgICAgICAgImtleSI6ICJ5ZWFyIiwKICAgICAgICAgICAgIm5hbWUiOiAi5bm05LujIiwKICAgICAgICAgICAgInZhbHVlIjogW3sKICAgICAgICAgICAgICAgICJuIjogIuWFqOmDqCIsCiAgICAgICAgICAgICAgICAidiI6ICJhbGwiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMjUiLAogICAgICAgICAgICAgICAgInYiOiAiMjAyNSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAyNCIsCiAgICAgICAgICAgICAgICAidiI6ICIyMDI0IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDIzIiwKICAgICAgICAgICAgICAgICJ2IjogIjIwMjMiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMjIiLAogICAgICAgICAgICAgICAgInYiOiAiMjAyMiIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAyMSIsCiAgICAgICAgICAgICAgICAidiI6ICIyMDIxIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDIwIiwKICAgICAgICAgICAgICAgICJ2IjogIjIwMjAiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMTkiLAogICAgICAgICAgICAgICAgInYiOiAiMjAxOSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAxOCIsCiAgICAgICAgICAgICAgICAidiI6ICIyMDE4IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDE3IiwKICAgICAgICAgICAgICAgICJ2IjogIjIwMTciCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMTYiLAogICAgICAgICAgICAgICAgInYiOiAiMjAxNiIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAxNSIsCiAgICAgICAgICAgICAgICAidiI6ICIyMDE1IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDE0IiwKICAgICAgICAgICAgICAgICJ2IjogIjIwMTQiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMTMiLAogICAgICAgICAgICAgICAgInYiOiAiMjAxMyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAxMiIsCiAgICAgICAgICAgICAgICAidiI6ICIyMDEyIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDExIiwKICAgICAgICAgICAgICAgICJ2IjogIjIwMTEiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMTAiLAogICAgICAgICAgICAgICAgInYiOiAiMjAxMCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAwOSIsCiAgICAgICAgICAgICAgICAidiI6ICIyMDA5IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDA4IiwKICAgICAgICAgICAgICAgICJ2IjogIjIwMDgiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMDciLAogICAgICAgICAgICAgICAgInYiOiAiMjAwNyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAwNiIsCiAgICAgICAgICAgICAgICAidiI6ICIyMDA2IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDA1IiwKICAgICAgICAgICAgICAgICJ2IjogIjIwMDUiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMDQiLAogICAgICAgICAgICAgICAgInYiOiAiMjAwNCIKICAgICAgICAgICAgfV0KICAgICAgICB9XSwKICAgICAgICAiMyI6IFt7CiAgICAgICAgICAgICJrZXkiOiAiY2hhcmdlSW5mbyIsCiAgICAgICAgICAgICJuYW1lIjogIuS7mOi0ueexu+WeiyIsCiAgICAgICAgICAgICJ2YWx1ZSI6IFt7CiAgICAgICAgICAgICAgICAibiI6ICLlhajpg6giLAogICAgICAgICAgICAgICAgInYiOiAiYWxsIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLlhY3otLkiLAogICAgICAgICAgICAgICAgInYiOiAiYjEiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogInZpcCIsCiAgICAgICAgICAgICAgICAidiI6ICJiMiIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiVklQ55So5Yi4IiwKICAgICAgICAgICAgICAgICJ2IjogImIzIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLku5jotLnngrnmkq0iLAogICAgICAgICAgICAgICAgInYiOiAiYjQiCiAgICAgICAgICAgIH1dCiAgICAgICAgfSwgewogICAgICAgICAgICAia2V5IjogInNvcnQiLAogICAgICAgICAgICAibmFtZSI6ICLmjpLluo8iLAogICAgICAgICAgICAidmFsdWUiOiBbewogICAgICAgICAgICAgICAgIm4iOiAi5pyA5pawIiwKICAgICAgICAgICAgICAgICJ2IjogImMxIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLmnIDng60iLAogICAgICAgICAgICAgICAgInYiOiAiYzIiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuefpeS5jumrmOWIhiIsCiAgICAgICAgICAgICAgICAidiI6ICJjNCIKICAgICAgICAgICAgfV0KICAgICAgICB9LCB7CiAgICAgICAgICAgICJrZXkiOiAieWVhciIsCiAgICAgICAgICAgICJuYW1lIjogIuW5tOS7oyIsCiAgICAgICAgICAgICJ2YWx1ZSI6IFt7CiAgICAgICAgICAgICAgICAibiI6ICLlhajpg6giLAogICAgICAgICAgICAgICAgInYiOiAiYWxsIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDI1IiwKICAgICAgICAgICAgICAgICJ2IjogIjIwMjUiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMjQiLAogICAgICAgICAgICAgICAgInYiOiAiMjAyNCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAyMyIsCiAgICAgICAgICAgICAgICAidiI6ICIyMDIzIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDIyIiwKICAgICAgICAgICAgICAgICJ2IjogIjIwMjIiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMjEiLAogICAgICAgICAgICAgICAgInYiOiAiMjAyMSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAyMCIsCiAgICAgICAgICAgICAgICAidiI6ICIyMDIwIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDE5IiwKICAgICAgICAgICAgICAgICJ2IjogIjIwMTkiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMTgiLAogICAgICAgICAgICAgICAgInYiOiAiMjAxOCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAxNyIsCiAgICAgICAgICAgICAgICAidiI6ICIyMDE3IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDE2IiwKICAgICAgICAgICAgICAgICJ2IjogIjIwMTYiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMTUiLAogICAgICAgICAgICAgICAgInYiOiAiMjAxNSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAxNCIsCiAgICAgICAgICAgICAgICAidiI6ICIyMDE0IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDEzIiwKICAgICAgICAgICAgICAgICJ2IjogIjIwMTMiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMTIiLAogICAgICAgICAgICAgICAgInYiOiAiMjAxMiIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAxMSIsCiAgICAgICAgICAgICAgICAidiI6ICIyMDExIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDEwIiwKICAgICAgICAgICAgICAgICJ2IjogIjIwMTAiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMDkiLAogICAgICAgICAgICAgICAgInYiOiAiMjAwOSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAwOCIsCiAgICAgICAgICAgICAgICAidiI6ICIyMDA4IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDA3IiwKICAgICAgICAgICAgICAgICJ2IjogIjIwMDciCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMDYiLAogICAgICAgICAgICAgICAgInYiOiAiMjAwNiIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAwNSIsCiAgICAgICAgICAgICAgICAidiI6ICIyMDA1IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDA0IiwKICAgICAgICAgICAgICAgICJ2IjogIjIwMDQiCiAgICAgICAgICAgIH1dCiAgICAgICAgfV0sCiAgICAgICAgIjUwIjogW3sKICAgICAgICAgICAgImtleSI6ICJjaGFyZ2VJbmZvIiwKICAgICAgICAgICAgIm5hbWUiOiAi5LuY6LS557G75Z6LIiwKICAgICAgICAgICAgInZhbHVlIjogW3sKICAgICAgICAgICAgICAgICJuIjogIuWFqOmDqCIsCiAgICAgICAgICAgICAgICAidiI6ICJhbGwiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuWFjei0uSIsCiAgICAgICAgICAgICAgICAidiI6ICJiMSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAidmlwIiwKICAgICAgICAgICAgICAgICJ2IjogImIyIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICJWSVDnlKjliLgiLAogICAgICAgICAgICAgICAgInYiOiAiYjMiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuS7mOi0ueeCueaSrSIsCiAgICAgICAgICAgICAgICAidiI6ICJiNCIKICAgICAgICAgICAgfV0KICAgICAgICB9LCB7CiAgICAgICAgICAgICJrZXkiOiAic29ydCIsCiAgICAgICAgICAgICJuYW1lIjogIuaOkuW6jyIsCiAgICAgICAgICAgICJ2YWx1ZSI6IFt7CiAgICAgICAgICAgICAgICAibiI6ICLmnIDmlrAiLAogICAgICAgICAgICAgICAgInYiOiAiYzEiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuacgOeDrSIsCiAgICAgICAgICAgICAgICAidiI6ICJjMiIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi55+l5LmO6auY5YiGIiwKICAgICAgICAgICAgICAgICJ2IjogImM0IgogICAgICAgICAgICB9XQogICAgICAgIH0sIHsKICAgICAgICAgICAgImtleSI6ICJ5ZWFyIiwKICAgICAgICAgICAgIm5hbWUiOiAi5bm05LujIiwKICAgICAgICAgICAgInZhbHVlIjogW3sKICAgICAgICAgICAgICAgICJuIjogIuWFqOmDqCIsCiAgICAgICAgICAgICAgICAidiI6ICJhbGwiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMjUiLAogICAgICAgICAgICAgICAgInYiOiAiMjAyNSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAyNCIsCiAgICAgICAgICAgICAgICAidiI6ICIyMDI0IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDIzIiwKICAgICAgICAgICAgICAgICJ2IjogIjIwMjMiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMjIiLAogICAgICAgICAgICAgICAgInYiOiAiMjAyMiIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAyMSIsCiAgICAgICAgICAgICAgICAidiI6ICIyMDIxIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDIwIiwKICAgICAgICAgICAgICAgICJ2IjogIjIwMjAiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMTkiLAogICAgICAgICAgICAgICAgInYiOiAiMjAxOSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAxOCIsCiAgICAgICAgICAgICAgICAidiI6ICIyMDE4IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDE3IiwKICAgICAgICAgICAgICAgICJ2IjogIjIwMTciCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMTYiLAogICAgICAgICAgICAgICAgInYiOiAiMjAxNiIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAxNSIsCiAgICAgICAgICAgICAgICAidiI6ICIyMDE1IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDE0IiwKICAgICAgICAgICAgICAgICJ2IjogIjIwMTQiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMTMiLAogICAgICAgICAgICAgICAgInYiOiAiMjAxMyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAxMiIsCiAgICAgICAgICAgICAgICAidiI6ICIyMDEyIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDExIiwKICAgICAgICAgICAgICAgICJ2IjogIjIwMTEiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMTAiLAogICAgICAgICAgICAgICAgInYiOiAiMjAxMCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAwOSIsCiAgICAgICAgICAgICAgICAidiI6ICIyMDA5IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDA4IiwKICAgICAgICAgICAgICAgICJ2IjogIjIwMDgiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMDciLAogICAgICAgICAgICAgICAgInYiOiAiMjAwNyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAwNiIsCiAgICAgICAgICAgICAgICAidiI6ICIyMDA2IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDA1IiwKICAgICAgICAgICAgICAgICJ2IjogIjIwMDUiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMDQiLAogICAgICAgICAgICAgICAgInYiOiAiMjAwNCIKICAgICAgICAgICAgfV0KICAgICAgICB9XSwKICAgICAgICAiNTEiOiBbewogICAgICAgICAgICAia2V5IjogImNoYXJnZUluZm8iLAogICAgICAgICAgICAibmFtZSI6ICLku5jotLnnsbvlnosiLAogICAgICAgICAgICAidmFsdWUiOiBbewogICAgICAgICAgICAgICAgIm4iOiAi5YWo6YOoIiwKICAgICAgICAgICAgICAgICJ2IjogImFsbCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5YWN6LS5IiwKICAgICAgICAgICAgICAgICJ2IjogImIxIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICJ2aXAiLAogICAgICAgICAgICAgICAgInYiOiAiYjIiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIlZJUOeUqOWIuCIsCiAgICAgICAgICAgICAgICAidiI6ICJiMyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5LuY6LS554K55pKtIiwKICAgICAgICAgICAgICAgICJ2IjogImI0IgogICAgICAgICAgICB9XQogICAgICAgIH0sIHsKICAgICAgICAgICAgImtleSI6ICJzb3J0IiwKICAgICAgICAgICAgIm5hbWUiOiAi5o6S5bqPIiwKICAgICAgICAgICAgInZhbHVlIjogW3sKICAgICAgICAgICAgICAgICJuIjogIuacgOaWsCIsCiAgICAgICAgICAgICAgICAidiI6ICJjMSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5pyA54OtIiwKICAgICAgICAgICAgICAgICJ2IjogImMyIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLnn6XkuY7pq5jliIYiLAogICAgICAgICAgICAgICAgInYiOiAiYzQiCiAgICAgICAgICAgIH1dCiAgICAgICAgfSwgewogICAgICAgICAgICAia2V5IjogInllYXIiLAogICAgICAgICAgICAibmFtZSI6ICLlubTku6MiLAogICAgICAgICAgICAidmFsdWUiOiBbewogICAgICAgICAgICAgICAgIm4iOiAi5YWo6YOoIiwKICAgICAgICAgICAgICAgICJ2IjogImFsbCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAyNSIsCiAgICAgICAgICAgICAgICAidiI6ICIyMDI1IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDI0IiwKICAgICAgICAgICAgICAgICJ2IjogIjIwMjQiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMjMiLAogICAgICAgICAgICAgICAgInYiOiAiMjAyMyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAyMiIsCiAgICAgICAgICAgICAgICAidiI6ICIyMDIyIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDIxIiwKICAgICAgICAgICAgICAgICJ2IjogIjIwMjEiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMjAiLAogICAgICAgICAgICAgICAgInYiOiAiMjAyMCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAxOSIsCiAgICAgICAgICAgICAgICAidiI6ICIyMDE5IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDE4IiwKICAgICAgICAgICAgICAgICJ2IjogIjIwMTgiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMTciLAogICAgICAgICAgICAgICAgInYiOiAiMjAxNyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAxNiIsCiAgICAgICAgICAgICAgICAidiI6ICIyMDE2IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDE1IiwKICAgICAgICAgICAgICAgICJ2IjogIjIwMTUiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMTQiLAogICAgICAgICAgICAgICAgInYiOiAiMjAxNCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAxMyIsCiAgICAgICAgICAgICAgICAidiI6ICIyMDEzIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDEyIiwKICAgICAgICAgICAgICAgICJ2IjogIjIwMTIiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMTEiLAogICAgICAgICAgICAgICAgInYiOiAiMjAxMSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAxMCIsCiAgICAgICAgICAgICAgICAidiI6ICIyMDEwIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDA5IiwKICAgICAgICAgICAgICAgICJ2IjogIjIwMDkiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMDgiLAogICAgICAgICAgICAgICAgInYiOiAiMjAwOCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAwNyIsCiAgICAgICAgICAgICAgICAidiI6ICIyMDA3IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDA2IiwKICAgICAgICAgICAgICAgICJ2IjogIjIwMDYiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMDUiLAogICAgICAgICAgICAgICAgInYiOiAiMjAwNSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAwNCIsCiAgICAgICAgICAgICAgICAidiI6ICIyMDA0IgogICAgICAgICAgICB9XQogICAgICAgIH1dLAogICAgICAgICIxMTUiOiBbewogICAgICAgICAgICAia2V5IjogImNoYXJnZUluZm8iLAogICAgICAgICAgICAibmFtZSI6ICLku5jotLnnsbvlnosiLAogICAgICAgICAgICAidmFsdWUiOiBbewogICAgICAgICAgICAgICAgIm4iOiAi5YWo6YOoIiwKICAgICAgICAgICAgICAgICJ2IjogImFsbCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5YWN6LS5IiwKICAgICAgICAgICAgICAgICJ2IjogImIxIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICJ2aXAiLAogICAgICAgICAgICAgICAgInYiOiAiYjIiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIlZJUOeUqOWIuCIsCiAgICAgICAgICAgICAgICAidiI6ICJiMyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5LuY6LS554K55pKtIiwKICAgICAgICAgICAgICAgICJ2IjogImI0IgogICAgICAgICAgICB9XQogICAgICAgIH0sIHsKICAgICAgICAgICAgImtleSI6ICJzb3J0IiwKICAgICAgICAgICAgIm5hbWUiOiAi5o6S5bqPIiwKICAgICAgICAgICAgInZhbHVlIjogW3sKICAgICAgICAgICAgICAgICJuIjogIuacgOaWsCIsCiAgICAgICAgICAgICAgICAidiI6ICJjMSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5pyA54OtIiwKICAgICAgICAgICAgICAgICJ2IjogImMyIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLnn6XkuY7pq5jliIYiLAogICAgICAgICAgICAgICAgInYiOiAiYzQiCiAgICAgICAgICAgIH1dCiAgICAgICAgfSwgewogICAgICAgICAgICAia2V5IjogInllYXIiLAogICAgICAgICAgICAibmFtZSI6ICLlubTku6MiLAogICAgICAgICAgICAidmFsdWUiOiBbewogICAgICAgICAgICAgICAgIm4iOiAi5YWo6YOoIiwKICAgICAgICAgICAgICAgICJ2IjogImFsbCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAyNSIsCiAgICAgICAgICAgICAgICAidiI6ICIyMDI1IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDI0IiwKICAgICAgICAgICAgICAgICJ2IjogIjIwMjQiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMjMiLAogICAgICAgICAgICAgICAgInYiOiAiMjAyMyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAyMiIsCiAgICAgICAgICAgICAgICAidiI6ICIyMDIyIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDIxIiwKICAgICAgICAgICAgICAgICJ2IjogIjIwMjEiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMjAiLAogICAgICAgICAgICAgICAgInYiOiAiMjAyMCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAxOSIsCiAgICAgICAgICAgICAgICAidiI6ICIyMDE5IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDE4IiwKICAgICAgICAgICAgICAgICJ2IjogIjIwMTgiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMTciLAogICAgICAgICAgICAgICAgInYiOiAiMjAxNyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAxNiIsCiAgICAgICAgICAgICAgICAidiI6ICIyMDE2IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDE1IiwKICAgICAgICAgICAgICAgICJ2IjogIjIwMTUiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMTQiLAogICAgICAgICAgICAgICAgInYiOiAiMjAxNCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAxMyIsCiAgICAgICAgICAgICAgICAidiI6ICIyMDEzIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDEyIiwKICAgICAgICAgICAgICAgICJ2IjogIjIwMTIiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMTEiLAogICAgICAgICAgICAgICAgInYiOiAiMjAxMSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAxMCIsCiAgICAgICAgICAgICAgICAidiI6ICIyMDEwIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDA5IiwKICAgICAgICAgICAgICAgICJ2IjogIjIwMDkiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMDgiLAogICAgICAgICAgICAgICAgInYiOiAiMjAwOCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAwNyIsCiAgICAgICAgICAgICAgICAidiI6ICIyMDA3IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDA2IiwKICAgICAgICAgICAgICAgICJ2IjogIjIwMDYiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMDUiLAogICAgICAgICAgICAgICAgInYiOiAiMjAwNSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAwNCIsCiAgICAgICAgICAgICAgICAidiI6ICIyMDA0IgogICAgICAgICAgICB9XQogICAgICAgIH1dCiAgICB9LAogICAgbGltaXQ6IDIwLAogICAgcGxheV9wYXJzZTogdHJ1ZSwKICAgIGxhenk6ICRqcy50b1N0cmluZygoKSA9PiB7CiAgICAgICAgdHJ5IHsKICAgICAgICAgICAgbGV0IGFwaSA9ICIiICsgaW5wdXQuc3BsaXQoIj8iKVswXTsKICAgICAgICAgICAgY29uc29sZS5sb2coYXBpKTsKICAgICAgICAgICAgbGV0IHJlc3BvbnNlID0gZmV0Y2goYXBpLCB7CiAgICAgICAgICAgICAgICBtZXRob2Q6ICdnZXQnLAogICAgICAgICAgICAgICAgaGVhZGVyczogewogICAgICAgICAgICAgICAgICAgICdVc2VyLUFnZW50JzogJ29raHR0cC8zLjE0LjknLAogICAgICAgICAgICAgICAgICAgICdDb250ZW50LVR5cGUnOiAnYXBwbGljYXRpb24veC13d3ctZm9ybS11cmxlbmNvZGVkJwogICAgICAgICAgICAgICAgfQogICAgICAgICAgICB9KTsKICAgICAgICAgICAgbGV0IGJhdGEgPSBKU09OLnBhcnNlKHJlc3BvbnNlKTsKICAgICAgICAgICAgaWYgKGJhdGEudXJsLmluY2x1ZGVzKCJtZ3R2IikpIHsKICAgICAgICAgICAgICAgIGlucHV0ID0gewogICAgICAgICAgICAgICAgICAgIHBhcnNlOiAwLAogICAgICAgICAgICAgICAgICAgIHVybDogYmF0YS51cmwsCiAgICAgICAgICAgICAgICAgICAgang6IDAsCiAgICAgICAgICAgICAgICAgICAgZGFubWFrdTogImh0dHA6Ly8xMDMuNDUuMTYyLjIwNzoyNTI1Mi9oYmRtLnBocD9rZXk9Nzg5NDU2MTIzMiZpZD0iICsgaW5wdXQuc3BsaXQoIj8iKVswXQogICAgICAgICAgICAgICAgfTsKICAgICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgICAgIGlucHV0ID0gewogICAgICAgICAgICAgICAgICAgIHBhcnNlOiAwLAogICAgICAgICAgICAgICAgICAgIHVybDogaW5wdXQuc3BsaXQoIj8iKVswXSwKICAgICAgICAgICAgICAgICAgICBqeDogMSwKICAgICAgICAgICAgICAgICAgICBkYW5tYWt1OiAiaHR0cDovLzEwMy40NS4xNjIuMjA3OjI1MjUyL2hiZG0ucGhwP2tleT03ODk0NTYxMjMyJmlkPSIgKyBpbnB1dC5zcGxpdCgiPyIpWzBdCiAgICAgICAgICAgICAgICB9OwogICAgICAgICAgICB9CiAgICAgICAgfSBjYXRjaCB7CiAgICAgICAgICAgIGlucHV0ID0gewogICAgICAgICAgICAgICAgcGFyc2U6IDAsCiAgICAgICAgICAgICAgICB1cmw6IGlucHV0LnNwbGl0KCI/IilbMF0sCiAgICAgICAgICAgICAgICBqeDogMSwKICAgICAgICAgICAgICAgIGRhbm1ha3U6ICJodHRwOi8vMTAzLjQ1LjE2Mi4yMDc6MjUyNTIvaGJkbS5waHA/a2V5PTc4OTQ1NjEyMzImaWQ9IiArIGlucHV0LnNwbGl0KCI/IilbMF0KICAgICAgICAgICAgfTsKICAgICAgICB9CiAgICB9KSwKICAgIC8vIOaJi+WKqOiwg+eUqOino+aekOivt+axgmpzb27nmoR1cmws5q2kbGF6eeS4jeaWueS+vwogICAgLy8gbGF6eTonanM6cHJpbnQoaW5wdXQpO2ZldGNoX3BhcmFtcy5oZWFkZXJzWyJ1c2VyLWFnZW50Il09TU9CSUxFX1VBO2xldCBodG1sPXJlcXVlc3QoaW5wdXQpO2xldCBydXJsPWh0bWwubWF0Y2goL3dpbmRvd1xcLm9wZW5cXChcJyguKj8pXCcsLylbMV07cnVybD11cmxEZWFsKHJ1cmwpO2lucHV0PXtwYXJzZToxLHVybDpydXJsfTsnLAogICAgLy8g5o6o6I2QOicubGlzdF9pdGVtO2ltZyYmYWx0O2ltZyYmc3JjO2EmJlRleHQ7YSYmZGF0YS1mbG9hdCcsCiAgICDkuIDnuqc6ICdqc29uOmRhdGEuaGl0RG9jczt0aXRsZTtpbWc7dXBkYXRlSW5mb3x8cmlnaHRDb3JuZXIudGV4dDtwbGF5UGFydElkJywKICAgIC8vIOS4gOe6pzonanNvbjpkYXRhLmhpdERvY3M7dGl0bGU7aW1nO3VwZGF0ZUluZm87cGxheVBhcnRJZCcsCiAgICDkuoznuqc6ICRqcy50b1N0cmluZygoKSA9PiB7CiAgICAgICAgZmV0Y2hfcGFyYW1zLmhlYWRlcnMuUmVmZXJlciA9ICJodHRwczovL3d3dy5tZ3R2LmNvbSI7CiAgICAgICAgZmV0Y2hfcGFyYW1zLmhlYWRlcnNbIlVzZXItQWdlbnQiXSA9IE1PQklMRV9VQTsKICAgICAgICBwZGZoID0ganNwLnBkZmg7CiAgICAgICAgcGRmYSA9IGpzcC5wZGZhOwogICAgICAgIHBkID0ganNwLnBkOwogICAgICAgIFZPRCA9IHt9OwogICAgICAgIGxldCBkID0gW107CiAgICAgICAgbGV0IGh0bWwgPSByZXF1ZXN0KGlucHV0KTsKICAgICAgICBsZXQganNvbiA9IEpTT04ucGFyc2UoaHRtbCk7CiAgICAgICAgbGV0IGhvc3QgPSAiaHR0cHM6Ly93d3cubWd0di5jb20iOwogICAgICAgIGxldCBvdXJsID0ganNvbi5kYXRhLmxpc3QubGVuZ3RoID4gMCA/IGpzb24uZGF0YS5saXN0WzBdLnVybCA6IGpzb24uZGF0YS5zZXJpZXNbMF0udXJsOwogICAgICAgIGlmICghL15odHRwLy50ZXN0KG91cmwpKSB7CiAgICAgICAgICAgIG91cmwgPSBob3N0ICsgb3VybAogICAgICAgIH0KICAgICAgICBmZXRjaF9wYXJhbXMuaGVhZGVyc1siVXNlci1BZ2VudCJdID0gTU9CSUxFX1VBOwogICAgICAgIGh0bWwgPSByZXF1ZXN0KG91cmwpOwogICAgICAgIGlmIChodG1sLmluY2x1ZGVzKCJ3aW5kb3cubG9jYXRpb24gPSIpKSB7CiAgICAgICAgICAgIHByaW50KCLlvIDlp4vojrflj5ZvdXJsIik7CiAgICAgICAgICAgIG91cmwgPSBwZGZoKGh0bWwsICJtZXRhW2h0dHAtZXF1aXY9cmVmcmVzaF0mJmNvbnRlbnQiKS5zcGxpdCgidXJsPSIpWzFdOwogICAgICAgICAgICBwcmludCgi6I635Y+W5Yiwb3VybDoiICsgb3VybCk7CiAgICAgICAgICAgIGh0bWwgPSByZXF1ZXN0KG91cmwpCiAgICAgICAgfQogICAgICAgIHRyeSB7CiAgICAgICAgICAgIGxldCBkZXRhaWxzID0gcGRmaChodG1sLCAiLm0tZGV0YWlscyYmSHRtbCIpLnJlcGxhY2UoL2gxPi8sICJoNj4iKS5yZXBsYWNlKC9kaXYvZywgImJyIik7CiAgICAgICAgICAgIHByaW50KGRldGFpbHMpOwogICAgICAgICAgICBsZXQgYWN0b3IgPSAiIiwKICAgICAgICAgICAgICAgIGRpcmVjdG9yID0gIiIsCiAgICAgICAgICAgICAgICB0aW1lID0gIiI7CiAgICAgICAgICAgIGlmICgv5pKt5Ye65pe26Ze0Ly50ZXN0KGRldGFpbHMpKSB7CiAgICAgICAgICAgICAgICBhY3RvciA9IHBkZmgoaHRtbCwgInA6ZXEoNSkmJlRleHQiKS5zdWJzdHIoMCwgMjUpOwogICAgICAgICAgICAgICAgZGlyZWN0b3IgPSBwZGZoKGh0bWwsICJwOmVxKDQpJiZUZXh0Iik7CiAgICAgICAgICAgICAgICB0aW1lID0gcGRmaChodG1sLCAicDplcSgzKSYmVGV4dCIpCiAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgICBhY3RvciA9IHBkZmgoaHRtbCwgInA6ZXEoNCkmJlRleHQiKS5zdWJzdHIoMCwgMjUpOwogICAgICAgICAgICAgICAgZGlyZWN0b3IgPSBwZGZoKGh0bWwsICJwOmVxKDMpJiZUZXh0Iik7CiAgICAgICAgICAgICAgICB0aW1lID0gIuW3suWujOe7kyIKICAgICAgICAgICAgfQogICAgICAgICAgICBsZXQgX2ltZyA9IHBkKGh0bWwsICIudmlkZW8taW1nJiZpbWcmJnNyYyIpOwogICAgICAgICAgICBsZXQgSkogPSBwZGZoKGh0bWwsICIuZGVzYyYmVGV4dCIpLnNwbGl0KCLnroDku4vvvJoiKVsxXTsKICAgICAgICAgICAgbGV0IF9kZXNjID0gdGltZTsKICAgICAgICAgICAgVk9ELnZvZF9uYW1lID0gcGRmaChodG1sLCAiLnZ0LXR4dCYmVGV4dCIpOwogICAgICAgICAgICBWT0QudHlwZV9uYW1lID0gcGRmaChodG1sLCAicDplcSgwKSYmVGV4dCIpLnN1YnN0cigwLCA2KTsKICAgICAgICAgICAgVk9ELnZvZF9hcmVhID0gcGRmaChodG1sLCAicDplcSgxKSYmVGV4dCIpOwogICAgICAgICAgICBWT0Qudm9kX2FjdG9yID0gYWN0b3I7CiAgICAgICAgICAgIFZPRC52b2RfZGlyZWN0b3IgPSBkaXJlY3RvcjsKICAgICAgICAgICAgVk9ELnZvZF9yZW1hcmtzID0gX2Rlc2M7CiAgICAgICAgICAgIFZPRC52b2RfcGljID0gX2ltZzsKICAgICAgICAgICAgVk9ELnZvZF9jb250ZW50ID0gSko7CiAgICAgICAgICAgIGlmICghVk9ELnZvZF9uYW1lKSB7CiAgICAgICAgICAgICAgICBWT0Qudm9kX25hbWUgPSBWT0QudHlwZV9uYW1lOwogICAgICAgICAgICB9CiAgICAgICAgfSBjYXRjaCAoZSkgewogICAgICAgICAgICBsb2coIuiOt+WPluW9seeJh+S/oeaBr+WPkeeUn+mUmeivrzoiICsgZS5tZXNzYWdlKQogICAgICAgIH0KCiAgICAgICAgZnVuY3Rpb24gZ2V0UmpwZyhpbWdVcmwsIHhzKSB7CiAgICAgICAgICAgIHhzID0geHMgfHwgMzsKICAgICAgICAgICAgbGV0IHBpY1NpemUgPSAvanBnXy8udGVzdChpbWdVcmwpID8gaW1nVXJsLnNwbGl0KCJqcGdfIilbMV0uc3BsaXQoIi4iKVswXSA6IGZhbHNlOwogICAgICAgICAgICBsZXQgcmpwZyA9IGZhbHNlOwogICAgICAgICAgICBpZiAocGljU2l6ZSkgewogICAgICAgICAgICAgICAgbGV0IGEgPSBwYXJzZUludChwaWNTaXplLnNwbGl0KCJ4IilbMF0pICogeHM7CiAgICAgICAgICAgICAgICBsZXQgYiA9IHBhcnNlSW50KHBpY1NpemUuc3BsaXQoIngiKVsxXSkgKiB4czsKICAgICAgICAgICAgICAgIHJqcGcgPSBhICsgIngiICsgYiArICIuanBnIgogICAgICAgICAgICB9CiAgICAgICAgICAgIGxldCBpbWcgPSAvanBnXy8udGVzdChpbWdVcmwpICYmIHJqcGcgPyBpbWdVcmwucmVwbGFjZShpbWdVcmwuc3BsaXQoImpwZ18iKVsxXSwgcmpwZykgOiBpbWdVcmw7CiAgICAgICAgICAgIHJldHVybiBpbWcKICAgICAgICB9CgogICAgICAgIGlmIChqc29uLmRhdGEudG90YWwgPT09IDEgJiYganNvbi5kYXRhLmxpc3QubGVuZ3RoID09PSAxKSB7CiAgICAgICAgICAgIGxldCBkYXRhID0ganNvbi5kYXRhLmxpc3RbMF07CiAgICAgICAgICAgIGxldCB1cmwgPSAiaHR0cHM6Ly93d3cubWd0di5jb20iICsgZGF0YS51cmw7CiAgICAgICAgICAgIGQucHVzaCh7CiAgICAgICAgICAgICAgICB0aXRsZTogZGF0YS50NCwKICAgICAgICAgICAgICAgIGRlc2M6IGRhdGEudDIsCiAgICAgICAgICAgICAgICBwaWNfdXJsOiBnZXRSanBnKGRhdGEuaW1nKSwKICAgICAgICAgICAgICAgIHVybDogdXJsCiAgICAgICAgICAgIH0pCiAgICAgICAgfSBlbHNlIGlmIChqc29uLmRhdGEubGlzdC5sZW5ndGggPiAxKSB7CiAgICAgICAgICAgIGZvciAobGV0IGkgPSAxOyBpIDw9IGpzb24uZGF0YS50b3RhbF9wYWdlOyBpKyspIHsKICAgICAgICAgICAgICAgIGlmIChpID4gMSkgewogICAgICAgICAgICAgICAgICAgIGpzb24gPSBKU09OLnBhcnNlKGZldGNoKGlucHV0LnJlcGxhY2UoInBhZ2U9MSIsICJwYWdlPSIgKyBpKSwge30pKQogICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAganNvbi5kYXRhLmxpc3QuZm9yRWFjaChmdW5jdGlvbihkYXRhKSB7CiAgICAgICAgICAgICAgICAgICAgbGV0IHVybCA9ICJodHRwczovL3d3dy5tZ3R2LmNvbSIgKyBkYXRhLnVybDsKICAgICAgICAgICAgICAgICAgICBpZiAoZGF0YS5pc0ludGFjdCA9PSAiMSIpIHsKICAgICAgICAgICAgICAgICAgICAgICAgZC5wdXNoKHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRpdGxlOiBkYXRhLnQ0LAogICAgICAgICAgICAgICAgICAgICAgICAgICAgZGVzYzogZGF0YS50MiwKICAgICAgICAgICAgICAgICAgICAgICAgICAgIHBpY191cmw6IGdldFJqcGcoZGF0YS5pbWcpLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgdXJsOiB1cmwKICAgICAgICAgICAgICAgICAgICAgICAgfSkKICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICB9KQogICAgICAgICAgICB9CiAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgcHJpbnQoaW5wdXQgKyAi5pqC5peg54mH5rqQIikKICAgICAgICB9CiAgICAgICAgVk9ELnZvZF9wbGF5X2Zyb20gPSAibWd0diI7CiAgICAgICAgVk9ELnZvZF9wbGF5X3VybCA9IGQubWFwKGZ1bmN0aW9uKGl0KSB7CiAgICAgICAgICAgIHJldHVybiBpdC50aXRsZSArICIkIiArIGl0LnVybAogICAgICAgIH0pLmpvaW4oIiMiKTsKICAgICAgICBzZXRSZXN1bHQoZCk7CiAgICB9KSwKCiAgICDmkJzntKI6ICRqcy50b1N0cmluZygoKSA9PiB7CiAgICAgICAgZmV0Y2hfcGFyYW1zLmhlYWRlcnMuUmVmZXJlciA9ICJodHRwczovL3d3dy5tZ3R2LmNvbSI7CiAgICAgICAgZmV0Y2hfcGFyYW1zLmhlYWRlcnNbIlVzZXItQWdlbnQiXSA9IE1PQklMRV9VQTsKICAgICAgICBsZXQgZCA9IFtdOwogICAgICAgIGxldCBodG1sID0gcmVxdWVzdChpbnB1dCk7CiAgICAgICAgbGV0IGpzb24gPSBKU09OLnBhcnNlKGh0bWwpOwogICAgICAgIGpzb24uZGF0YS5jb250ZW50cy5mb3JFYWNoKGZ1bmN0aW9uKGRhdGEpIHsKICAgICAgICAgICAgaWYgKGRhdGEudHlwZSAmJiBkYXRhLnR5cGUgPT0gJ21lZGlhJykgewogICAgICAgICAgICAgICAgbGV0IGl0ZW0gPSBkYXRhLmRhdGFbMF07CiAgICAgICAgICAgICAgICBsZXQgZGVzYyA9IGl0ZW0uZGVzYy5qb2luKCcsJyk7CiAgICAgICAgICAgICAgICBsZXQgZnljbGFzcyA9ICcnOwogICAgICAgICAgICAgICAgaWYgKGl0ZW0uc291cmNlID09PSAiaW1nbyIpIHsKICAgICAgICAgICAgICAgICAgICBsZXQgaW1nID0gaXRlbS5pbWcgPyBpdGVtLmltZyA6ICcnOwogICAgICAgICAgICAgICAgICAgIHRyeSB7CiAgICAgICAgICAgICAgICAgICAgICAgIGZ5Y2xhc3MgPSBpdGVtLnJwdC5tYXRjaCgvaWR4PSguKj8pJi8pWzFdICsgJyQnOwogICAgICAgICAgICAgICAgICAgIH0gY2F0Y2ggKGUpIHsKICAgICAgICAgICAgICAgICAgICAgICAgbG9nKGUubWVzc2FnZSk7CiAgICAgICAgICAgICAgICAgICAgICAgIGZ5Y2xhc3MgPSAnJzsKICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICAgICAgbG9nKGZ5Y2xhc3MpOwogICAgICAgICAgICAgICAgICAgIGQucHVzaCh7CiAgICAgICAgICAgICAgICAgICAgICAgIHRpdGxlOiBpdGVtLnRpdGxlLnJlcGxhY2UoLzxCPnw8XC9CPi9nLCAnJyksCiAgICAgICAgICAgICAgICAgICAgICAgIGltZzogaW1nLAogICAgICAgICAgICAgICAgICAgICAgICBjb250ZW50OiAnJywKICAgICAgICAgICAgICAgICAgICAgICAgZGVzYzogZGVzYywKICAgICAgICAgICAgICAgICAgICAgICAgdXJsOiBmeWNsYXNzICsgaXRlbS51cmwubWF0Y2goLy4qXC8oLio/KVwuaHRtbC8pWzFdCiAgICAgICAgICAgICAgICAgICAgfSkKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgfQogICAgICAgIH0pOwogICAgICAgIHNldFJlc3VsdChkKTsKICAgIH0pLAp9 \ No newline at end of file diff --git a/潇洒/movie/js/MGSP.js b/潇洒/movie/js/MGSP.js new file mode 100644 index 00000000..d1d0b584 --- /dev/null +++ b/潇洒/movie/js/MGSP.js @@ -0,0 +1 @@ +H4sIAAAAAAAAA81Z63MUxxH/rr9ivaH2bkHax0niceJQGXAqopJA8foiiLy6nbtbaW932Z07ScBVEUiMsR2wCTbgUJgklTKJYx4uEhsJwj+juxOf8i+kZ/Zx+xZsJRUvFOzOdPf0dPevu2dOFPtPbvRfXen/5tXg8gP4K4pjXcVm7I6OmBpzYYyBB2tYR1WmNLz7r/6ru4PbDwb37833H905Wxqn8y3TwTDdwthyqqJoaYqx3BEUSxPaTdwV6mY7IGyjU7YOtN6AgxS73nKHfPa2uajpyDGFxfMBv9h2NIxEl1zsVmbP1Xbu5Cyj1lizlCbirHpNljyZKsKKpkdlWvUVtBjRSESW5pgqEnXNwbNESE3mHO08qk1LXFdTkbmgqSBeUyOqKovEEhV36FxHqy+foONVRnLHGpqOke2Sye5Qu6NjLfjqUMVEG5aw6eKucmJ3ctbSFdww7XaNjnCwmmEgfY6oUdcVx4lueK/EtTqqaTRB8QWnY1mmjcEK7sMta4ZaU2ROsZEC/5fC2i24OqyB5rULFxq6QN4Y02ZYRdfZXo9ziCg6Q97CM6CT3URzRsN050ffISrf20iBPTpVL4rIUzrlIHvi3SYycAk0OHZo4dS7JTrbG/dCrY3MDkTTNGzCHaJbXzCUNg3BW//Y+vqD/rWvOXjrv3zKDTdebF1b5/ofPRy8+IYbrv+t//Lz4bWr3ODzu1uXv+P6Tz6D0C6FJbmbr3CTnMyBr6dlTpanuSB8XBOFlWZltso0ET5kttum8VM6X+bHR/OVbeYnt5mflrYj2E4D2EEaRdiyutbWwK4Vz6oQa2sLlmI7YFVsd5BHpJxfqzI7lhwBmyewrRnNcplnagdC1sD2WuiLMiHMALQgXWiG1cGCY+kaLrOzLD8vnZ1JkNrIsUzDIemlgXC9VQbe8ZhIChuEW6YKroJtlcYT0ynRFX5ikWYuk1QgTgrylLAvRRplOWQaGOgnTq5ZiDApFuykrmDNNMTViZWVlQmCzgkIIGTUIXeopYScXmSkxye3v6hgBbZ+5MTRXwrU/mXfIDFiaswgB4cfz21Schs0tskKArwJmlHXOypyyizJeizPzAZzTDXNWUmBS6v58iQmSGzhR1WMtrLcqTIsMTskYLmyR5Dgj1zdt2/PXtGyzdW1WdWsEcIOR5J7bcnhYJEay+xKUy1q15Glegw4qN6KWamw7d7YKP/fTbvA9jLA5g+XhutfQ7wuOaZRVYm3Who+bNadGVq5Z7R2c6ZjwQRN1Bcv2lqzBZnCNpAtYLSKZ0gyOKbYeM4vdpvrn1CRuZmAopfkEKXtCB4cheOogWxkg+1Zv/gCcIKyy87kss+zI9iyZ0HIL44enPv5e1AlZsYCRoIiWqHn1FjOKQWFu8TPy2f9Ua4UzUREgAaWgB4BBLyf0yRQeSKhnYXSZq4g9fghKLcwXNtxwdOhx2HIF7XFZBF+P7nk4RT0n+sgB5c9hXg+tFOtwZQDLo4LJAhq2oBAvviU5Ox2RNRWcXLBm7t4kbnQi+af00cPpyKoa6peNU4RRwOOSGPZJECInTxWd1mBdClZ1GQd0pgExDbSkeKgk9Ai5PGQjifgIR+5xHVsjlbQaRTm0auajSIs/kAeU92tKwGPA/RreQw2aiv2shMwjMDrcmXlBfKQmPHYAPc8caNAZFpaHdw5mglnk0iYElDNx9DSwm0SP6NYBczxURKSfKKRTZhiROSk8AapgZCaHYpOItaNL9Irg4eMJm4xB6DwzMbmAOJeZRuNQzLRkOPNzERw9Y74K9oSQAaEHZHVeN5flKq5i36F0Pi2CcvnixmPLhXVhVCEqusKoMJcEXTT7T2YGsvHYe0paqmNFuUeZ1jol5R5sqUJWEjr1mzUgM6idZbjvPhjeb+60JJDMmQ0dPIVDYVJeg/oxpYTU0toT3gTHPczGAItbAQFp47KYks+IAJJa/eB8KiqdcUmDC/abEr/RBFLYigFOwEY06fJ4YJOJREjDm5+27+6Prj9z9e3n3kx4amdsD15fC3CO7Wq6Fx5mue4k1BTibE7iw62y9I4U5mObSSmbELKVCAlyeftIsEzmcHTY5AO3fZb7GHqv7KHLH3Cnuh//13/0SfDjd/HXNJLuH0BUhZdJYgrWn4nYJjj6D+OXU+LlyNH4gEJGKuPNugiYnjtD6//+vfho0ubGx//+8WXKeDw8yipXyAx8glJObJCF0/gVZy+fcIYFEJP0Og7JokaUkpzx+4UsX71C6nn17+EUDnDOwGj59boN0iiL+k8oWhIDAGn/57O7NW8EK8/AqwkXtLZ3LIW/gLyhUh9C5N7qTDE4o8A25EjycTwTtjRfFoUBM5LHkrKKNGOmc0yu3X9+/6NL/ovnw6vXd189cfBrx/3b3w2vPXV61t3tx4/rpLDABLayHGUJkpPwI2OUaelAc7Gx5esZhk2DM3jOLPqxFdcJSZdpVacTKIDDHZCO0+2IoKYBS/zudLI+c5981FCSNhQZ80K9JgCJbehQI5JOesDBznnJ2eJbb3F0/IrzfQEuKSTmDOwT+svvEoX5pmdsLVkeqHn7G245UxuT2kF3ACU8O8ieRNgNDdL2Qh3bCPVjtCpU6GBPf1al2HecUrOk0M6JUiNAWLBUaeDTaxA8a7VGJksl9420enUE4J7LEk0VNH9qoLVcVrlpLe8C2JXkamUugwZ15+uJKfBO+6tnB/N7nkCuteMU3p6/wheUr2risxbGK8YRm0X7SwTBmpA+irTAxyYSJ6B//aHTUUtv0BuZWFq1660aKbnOFd0sk12L8HcY6wfF6x7Ic2SbE3e6P0APw5nND6lmsZ2Avq+p4BIP0lQc6ap5avmmtsBoEByhyAhN55Z9NSdWXEQfraLiYjA/PgIP28TK+GnQNyEn/hNXjCevAGMt1/x2IuazbI1wztQkSwz+PLy4PYDqAuD9U/ZSO7334JSRy5wG7bZJn3U1kc3B/fvnTwdSlAROve0oAptxRqFhYbjTvZSmIa9czwotIOGHo6en3q8sGRqRpn9SVhHBzyCnI4OnbM36t9QDT69N3z2px/XdZLP97888o6A6XUZzpuBMwAl6S1IOh99ADpLbaRqSimrbGoYkZhQ/YuZRBr3VyCEggOnvDqilYEFFJmZwCeivd+hQHqplI6H5Mkw/Iz46dq2hSEiSfYTNXW1VhZ2zvKcSAogxFxpR8YS2c1VRF1otNKaqIik1NFts5uX2egW6Pvo6Lr/4IGL+8+IBw+QA2yplJOTwNaeCHKwgeaslPGrBHmCC6Q8IjeJUpHk1UVoaTxPCZoUfafscnnJRb/nFGHnGZE65YxAApt6Jt2QKQaO/RIylkabljHGejNjY+H+NvqTludyL1PNh36lW0ZrLKT40S+SoRsAlvTnZHZz487Ws+fDpxv9+x+H57uK3iEE80m3swZh7P/24esrD1MuFdgumSY/fEY3HKXMFvs70CdT7KJcSGpXs7JFVgqJPD13bHjrYf/DH7IFTxYS7Hnk8vPBzW+zZU+xGeHkBmQv/AOiHwnkt+u0GBhcv9lfv/FW3h/cuzT44kmmevVibgKpwyvZm64X89Twq79sPr/++ps7/Q8/yJZdxKDkNj7NoP3nzzY3/vxjgFNFquzOFEonC0qdzpM6XVTqVJ7UuIfeWOpkntRiIAXGSp7UYpEKjHKe1GKoAkYpT6pUUKq8L0cqTBaUujdP6t6iUvfkSd1TVGoetuSi2JLzsCUXxZachy25KLbkPGzJRbEl52FLLootOQ9bclFsyXnYkotiS8rDllQUW1IetqSi2JLysCUVxZaUhy2pKLakPGxJRbEl5WFL2q6zgNNo7z+c4ka5dyoAAA== \ No newline at end of file diff --git a/潇洒/movie/js/MLGQ.js b/潇洒/movie/js/MLGQ.js new file mode 100644 index 00000000..9f50a691 --- /dev/null +++ b/潇洒/movie/js/MLGQ.js @@ -0,0 +1 @@ +Ly8g572R5Z2A5Y+R5biD6aG1IGh0dHBzOi8vbW9saWNwLmNvbQptdWJhbi7pppblm74u5LqM57qnLnRpdGxlID0gJy50ZXh0LWZmZi0tZm9udCYmVGV4dDsuZGF0YS0tc3BhbjplcSgwKSYmVGV4dCc7Cm11YmFuLummluWbvi7kuoznuqcuZGVzYyA9ICcjcmF0aW5nJiZUZXh0Ozs7LmRhdGEtLXNwYW46ZXEoMSkmJlRleHQ7LmRhdGEtLXNwYW46ZXEoMikmJlRleHQnOwptdWJhbi7pppblm74u5LqM57qnLmNvbnRlbnQgPSAnLmRlc2MmJlRleHQnOwp2YXIgcnVsZSA9IHsKICAgIHRpdGxlOiAnSERtb2xpJywKICAgIOaooeadvzogJ+mmluWbvicsCiAgICBob3N0OiAnaHR0cHM6Ly93d3cuaGRtb2xpLnBybycsCiAgICAvLyB1cmw6Jy9tbGlzdC9meWNsYXNzLWZ5cGFnZS5odG1sJywKICAgIHVybDogJy9zZWFyY2gucGhwP3BhZ2U9ZnlwYWdlJnNlYXJjaHR5cGU9NSZ0aWQ9ZnlmaWx0ZXInLAogICAgZmlsdGVyYWJsZTogMSwgLy/mmK/lkKblkK/nlKjliIbnsbvnrZvpgIksCiAgICBmaWx0ZXJfdXJsOiAne3tmbC5jYXRlSWR9fSZqcT17e2ZsLmNsYXNzfX0mYXJlYT17e2ZsLmFyZWF9fSZ5ZWFyPXt7ZmwueWVhcn19JnN0YXRlPXt7Zmwuc3RhdGV9fSZvcmRlcj17e2ZsLmJ5fX0nLAogICAgZmlsdGVyOiB7CiAgICAgICAgIjEiOiBbewogICAgICAgICAgICAia2V5IjogImNhdGVJZCIsCiAgICAgICAgICAgICJuYW1lIjogIuexu+WeiyIsCiAgICAgICAgICAgICJ2YWx1ZSI6IFt7CiAgICAgICAgICAgICAgICAibiI6ICLlhajpg6giLAogICAgICAgICAgICAgICAgInYiOiAiMSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5Yqo5L2cIiwKICAgICAgICAgICAgICAgICJ2IjogIjUiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIueIseaDhSIsCiAgICAgICAgICAgICAgICAidiI6ICI2IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLnp5HlubsiLAogICAgICAgICAgICAgICAgInYiOiAiNyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5oGQ5oCWIiwKICAgICAgICAgICAgICAgICJ2IjogIjgiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuaImOS6iSIsCiAgICAgICAgICAgICAgICAidiI6ICI5IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLllpzliaciLAogICAgICAgICAgICAgICAgInYiOiAiMTAiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIue6quW9leeJhyIsCiAgICAgICAgICAgICAgICAidiI6ICIxMSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5Ymn5oOFIiwKICAgICAgICAgICAgICAgICJ2IjogIjEyIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLniq/nvaoiLAogICAgICAgICAgICAgICAgInYiOiAiMzAiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuWKqOeUuyIsCiAgICAgICAgICAgICAgICAidiI6ICIzMiIKICAgICAgICAgICAgfV0KICAgICAgICB9LCB7CiAgICAgICAgICAgICJrZXkiOiAiY2xhc3MiLAogICAgICAgICAgICAibmFtZSI6ICLliafmg4UiLAogICAgICAgICAgICAidmFsdWUiOiBbewogICAgICAgICAgICAgICAgIm4iOiAi5YWo6YOoIiwKICAgICAgICAgICAgICAgICJ2IjogIiIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5oiY5LqJIiwKICAgICAgICAgICAgICAgICJ2IjogIuaImOS6iSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5oGQ5oCWIiwKICAgICAgICAgICAgICAgICJ2IjogIuaBkOaAliIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5Ymn5oOFIiwKICAgICAgICAgICAgICAgICJ2IjogIuWJp+aDhSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi54ix5oOFIiwKICAgICAgICAgICAgICAgICJ2IjogIueIseaDhSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5a625bqtIiwKICAgICAgICAgICAgICAgICJ2IjogIuWutuW6rSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5Yqx5b+XIiwKICAgICAgICAgICAgICAgICJ2IjogIuWKseW/lyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5oKs55aRIiwKICAgICAgICAgICAgICAgICJ2IjogIuaCrOeWkSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5Yqo5L2cIiwKICAgICAgICAgICAgICAgICJ2IjogIuWKqOS9nCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5aWH5bm7IiwKICAgICAgICAgICAgICAgICJ2IjogIuWlh+W5uyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5YaS6ZmpIiwKICAgICAgICAgICAgICAgICJ2IjogIuWGkumZqSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5Y6G5Y+yIiwKICAgICAgICAgICAgICAgICJ2IjogIuWOhuWPsiIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5oOK5oKaIiwKICAgICAgICAgICAgICAgICJ2IjogIuaDiuaCmiIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi6Z+z5LmQIiwKICAgICAgICAgICAgICAgICJ2IjogIumfs+S5kCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi56eR5bm7IiwKICAgICAgICAgICAgICAgICJ2IjogIuenkeW5uyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi54qv572qIiwKICAgICAgICAgICAgICAgICJ2IjogIueKr+e9qiIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi6L+Q5YqoIiwKICAgICAgICAgICAgICAgICJ2IjogIui/kOWKqCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5Zac5YmnIiwKICAgICAgICAgICAgICAgICJ2IjogIuWWnOWJpyIKICAgICAgICAgICAgfV0KICAgICAgICB9LCB7CiAgICAgICAgICAgICJrZXkiOiAiYXJlYSIsCiAgICAgICAgICAgICJuYW1lIjogIuWcsOWMuiIsCiAgICAgICAgICAgICJ2YWx1ZSI6IFt7CiAgICAgICAgICAgICAgICAibiI6ICLlhajpg6giLAogICAgICAgICAgICAgICAgInYiOiAiIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLnvo7lm70iLAogICAgICAgICAgICAgICAgInYiOiAi576O5Zu9IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLpn6nlm70iLAogICAgICAgICAgICAgICAgInYiOiAi6Z+p5Zu9IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLoi7Hlm70iLAogICAgICAgICAgICAgICAgInYiOiAi6Iux5Zu9IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLml6XmnKwiLAogICAgICAgICAgICAgICAgInYiOiAi5pel5pysIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLms7Dlm70iLAogICAgICAgICAgICAgICAgInYiOiAi5rOw5Zu9IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLkuK3lm70iLAogICAgICAgICAgICAgICAgInYiOiAi5Lit5Zu9IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLlhbbku5YiLAogICAgICAgICAgICAgICAgInYiOiAi5YW25LuWIgogICAgICAgICAgICB9XQogICAgICAgIH0sIHsKICAgICAgICAgICAgImtleSI6ICJ5ZWFyIiwKICAgICAgICAgICAgIm5hbWUiOiAi5bm05Lu9IiwKICAgICAgICAgICAgInZhbHVlIjogW3sKICAgICAgICAgICAgICAgICJuIjogIuWFqOmDqCIsCiAgICAgICAgICAgICAgICAidiI6ICIiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMjUiLAogICAgICAgICAgICAgICAgInYiOiAiMjAyNSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAyNCIsCiAgICAgICAgICAgICAgICAidiI6ICIyMDI0IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDIzIiwKICAgICAgICAgICAgICAgICJ2IjogIjIwMjMiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMjIiLAogICAgICAgICAgICAgICAgInYiOiAiMjAyMiIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAyMSIsCiAgICAgICAgICAgICAgICAidiI6ICIyMDIxIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDIwIiwKICAgICAgICAgICAgICAgICJ2IjogIjIwMjAiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMTkiLAogICAgICAgICAgICAgICAgInYiOiAiMjAxOSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAxOCIsCiAgICAgICAgICAgICAgICAidiI6ICIyMDE4IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDE3IiwKICAgICAgICAgICAgICAgICJ2IjogIjIwMTciCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMTYiLAogICAgICAgICAgICAgICAgInYiOiAiMjAxNiIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAxNSIsCiAgICAgICAgICAgICAgICAidiI6ICIyMDE1IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDE0IiwKICAgICAgICAgICAgICAgICJ2IjogIjIwMTQiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMTMiLAogICAgICAgICAgICAgICAgInYiOiAiMjAxMyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAxMiIsCiAgICAgICAgICAgICAgICAidiI6ICIyMDEyIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICJtb3JlIiwKICAgICAgICAgICAgICAgICJ2IjogIm1vcmUiCiAgICAgICAgICAgIH1dCiAgICAgICAgfSwgewogICAgICAgICAgICAia2V5IjogInN0YXRlIiwKICAgICAgICAgICAgIm5hbWUiOiAi54q25oCBIiwKICAgICAgICAgICAgInZhbHVlIjogW3sKICAgICAgICAgICAgICAgICJuIjogIuWFqOmDqCIsCiAgICAgICAgICAgICAgICAidiI6ICIiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuWujOe7kyIsCiAgICAgICAgICAgICAgICAidiI6ICJ3IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLov57ovb3kuK0iLAogICAgICAgICAgICAgICAgInYiOiAibCIKICAgICAgICAgICAgfV0KICAgICAgICB9LCB7CiAgICAgICAgICAgICJrZXkiOiAiYnkiLAogICAgICAgICAgICAibmFtZSI6ICLmjpLluo8iLAogICAgICAgICAgICAidmFsdWUiOiBbewogICAgICAgICAgICAgICAgIm4iOiAi5pe26Ze0IiwKICAgICAgICAgICAgICAgICJ2IjogInRpbWUiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuivhOWIhiIsCiAgICAgICAgICAgICAgICAidiI6ICJkb3ViYW4iCiAgICAgICAgICAgIH1dCiAgICAgICAgfV0sCiAgICAgICAgIjIiOiBbewogICAgICAgICAgICAia2V5IjogImNhdGVJZCIsCiAgICAgICAgICAgICJuYW1lIjogIuexu+WeiyIsCiAgICAgICAgICAgICJ2YWx1ZSI6IFt7CiAgICAgICAgICAgICAgICAibiI6ICLlhajpg6giLAogICAgICAgICAgICAgICAgInYiOiAiMiIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi576O5YmnIiwKICAgICAgICAgICAgICAgICJ2IjogIjE1IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLpn6nliaciLAogICAgICAgICAgICAgICAgInYiOiAiMTYiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuaXpeWJpyIsCiAgICAgICAgICAgICAgICAidiI6ICIxMyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi6Iux5YmnIiwKICAgICAgICAgICAgICAgICJ2IjogIjM0IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLkuK3lm70iLAogICAgICAgICAgICAgICAgInYiOiAiMTQiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuazsOWJpyIsCiAgICAgICAgICAgICAgICAidiI6ICIyOSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi57u86Im6IiwKICAgICAgICAgICAgICAgICJ2IjogIjM5IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLlhbbku5YiLAogICAgICAgICAgICAgICAgInYiOiAiMzgiCiAgICAgICAgICAgIH1dCiAgICAgICAgfSwgewogICAgICAgICAgICAia2V5IjogImNsYXNzIiwKICAgICAgICAgICAgIm5hbWUiOiAi5Ymn5oOFIiwKICAgICAgICAgICAgInZhbHVlIjogW3sKICAgICAgICAgICAgICAgICJuIjogIuWFqOmDqCIsCiAgICAgICAgICAgICAgICAidiI6ICIiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuaImOS6iSIsCiAgICAgICAgICAgICAgICAidiI6ICLmiJjkuokiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuaBkOaAliIsCiAgICAgICAgICAgICAgICAidiI6ICLmgZDmgJYiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuWJp+aDhSIsCiAgICAgICAgICAgICAgICAidiI6ICLliafmg4UiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIueIseaDhSIsCiAgICAgICAgICAgICAgICAidiI6ICLniLHmg4UiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuWutuW6rSIsCiAgICAgICAgICAgICAgICAidiI6ICLlrrbluq0iCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuWKseW/lyIsCiAgICAgICAgICAgICAgICAidiI6ICLlirHlv5ciCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuaCrOeWkSIsCiAgICAgICAgICAgICAgICAidiI6ICLmgqznlpEiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuWKqOS9nCIsCiAgICAgICAgICAgICAgICAidiI6ICLliqjkvZwiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuWlh+W5uyIsCiAgICAgICAgICAgICAgICAidiI6ICLlpYflubsiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuWGkumZqSIsCiAgICAgICAgICAgICAgICAidiI6ICLlhpLpmakiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuWOhuWPsiIsCiAgICAgICAgICAgICAgICAidiI6ICLljoblj7IiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuaDiuaCmiIsCiAgICAgICAgICAgICAgICAidiI6ICLmg4rmgpoiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIumfs+S5kCIsCiAgICAgICAgICAgICAgICAidiI6ICLpn7PkuZAiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuenkeW5uyIsCiAgICAgICAgICAgICAgICAidiI6ICLnp5HlubsiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIueKr+e9qiIsCiAgICAgICAgICAgICAgICAidiI6ICLniq/nvaoiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIui/kOWKqCIsCiAgICAgICAgICAgICAgICAidiI6ICLov5DliqgiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuWWnOWJpyIsCiAgICAgICAgICAgICAgICAidiI6ICLllpzliaciCiAgICAgICAgICAgIH1dCiAgICAgICAgfSwgewogICAgICAgICAgICAia2V5IjogImFyZWEiLAogICAgICAgICAgICAibmFtZSI6ICLlnLDljLoiLAogICAgICAgICAgICAidmFsdWUiOiBbewogICAgICAgICAgICAgICAgIm4iOiAi5YWo6YOoIiwKICAgICAgICAgICAgICAgICJ2IjogIiIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi576O5Zu9IiwKICAgICAgICAgICAgICAgICJ2IjogIue+juWbvSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi6Z+p5Zu9IiwKICAgICAgICAgICAgICAgICJ2IjogIumfqeWbvSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi6Iux5Zu9IiwKICAgICAgICAgICAgICAgICJ2IjogIuiLseWbvSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5pel5pysIiwKICAgICAgICAgICAgICAgICJ2IjogIuaXpeacrCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5rOw5Zu9IiwKICAgICAgICAgICAgICAgICJ2IjogIuazsOWbvSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5Lit5Zu9IiwKICAgICAgICAgICAgICAgICJ2IjogIuS4reWbvSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5YW25LuWIiwKICAgICAgICAgICAgICAgICJ2IjogIuWFtuS7liIKICAgICAgICAgICAgfV0KICAgICAgICB9LCB7CiAgICAgICAgICAgICJrZXkiOiAieWVhciIsCiAgICAgICAgICAgICJuYW1lIjogIuW5tOS7vSIsCiAgICAgICAgICAgICJ2YWx1ZSI6IFt7CiAgICAgICAgICAgICAgICAibiI6ICLlhajpg6giLAogICAgICAgICAgICAgICAgInYiOiAiIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDI1IiwKICAgICAgICAgICAgICAgICJ2IjogIjIwMjUiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMjQiLAogICAgICAgICAgICAgICAgInYiOiAiMjAyNCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAyMyIsCiAgICAgICAgICAgICAgICAidiI6ICIyMDIzIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDIyIiwKICAgICAgICAgICAgICAgICJ2IjogIjIwMjIiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMjEiLAogICAgICAgICAgICAgICAgInYiOiAiMjAyMSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAyMCIsCiAgICAgICAgICAgICAgICAidiI6ICIyMDIwIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDE5IiwKICAgICAgICAgICAgICAgICJ2IjogIjIwMTkiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMTgiLAogICAgICAgICAgICAgICAgInYiOiAiMjAxOCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAxNyIsCiAgICAgICAgICAgICAgICAidiI6ICIyMDE3IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDE2IiwKICAgICAgICAgICAgICAgICJ2IjogIjIwMTYiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMTUiLAogICAgICAgICAgICAgICAgInYiOiAiMjAxNSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAxNCIsCiAgICAgICAgICAgICAgICAidiI6ICIyMDE0IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDEzIiwKICAgICAgICAgICAgICAgICJ2IjogIjIwMTMiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMTIiLAogICAgICAgICAgICAgICAgInYiOiAiMjAxMiIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAibW9yZSIsCiAgICAgICAgICAgICAgICAidiI6ICJtb3JlIgogICAgICAgICAgICB9XQogICAgICAgIH0sIHsKICAgICAgICAgICAgImtleSI6ICJzdGF0ZSIsCiAgICAgICAgICAgICJuYW1lIjogIueKtuaAgSIsCiAgICAgICAgICAgICJ2YWx1ZSI6IFt7CiAgICAgICAgICAgICAgICAibiI6ICLlhajpg6giLAogICAgICAgICAgICAgICAgInYiOiAiIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLlroznu5MiLAogICAgICAgICAgICAgICAgInYiOiAidyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi6L+e6L295LitIiwKICAgICAgICAgICAgICAgICJ2IjogImwiCiAgICAgICAgICAgIH1dCiAgICAgICAgfSwgewogICAgICAgICAgICAia2V5IjogImJ5IiwKICAgICAgICAgICAgIm5hbWUiOiAi5o6S5bqPIiwKICAgICAgICAgICAgInZhbHVlIjogW3sKICAgICAgICAgICAgICAgICJuIjogIuaXtumXtCIsCiAgICAgICAgICAgICAgICAidiI6ICJ0aW1lIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLor4TliIYiLAogICAgICAgICAgICAgICAgInYiOiAiZG91YmFuIgogICAgICAgICAgICB9XQogICAgICAgIH1dLAogICAgICAgICI0MSI6IFt7CiAgICAgICAgICAgICJrZXkiOiAiY2F0ZUlkIiwKICAgICAgICAgICAgIm5hbWUiOiAi57G75Z6LIiwKICAgICAgICAgICAgInZhbHVlIjogW3sKICAgICAgICAgICAgICAgICJuIjogIuWFqOmDqCIsCiAgICAgICAgICAgICAgICAidiI6ICI0MSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5pel5pysIiwKICAgICAgICAgICAgICAgICJ2IjogIjQyIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLlhbbku5YiLAogICAgICAgICAgICAgICAgInYiOiAiNDMiCiAgICAgICAgICAgIH1dCiAgICAgICAgfSwgewogICAgICAgICAgICAia2V5IjogImNsYXNzIiwKICAgICAgICAgICAgIm5hbWUiOiAi5Ymn5oOFIiwKICAgICAgICAgICAgInZhbHVlIjogW3sKICAgICAgICAgICAgICAgICJuIjogIuWFqOmDqCIsCiAgICAgICAgICAgICAgICAidiI6ICIiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuaImOS6iSIsCiAgICAgICAgICAgICAgICAidiI6ICLmiJjkuokiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuaBkOaAliIsCiAgICAgICAgICAgICAgICAidiI6ICLmgZDmgJYiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuWJp+aDhSIsCiAgICAgICAgICAgICAgICAidiI6ICLliafmg4UiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIueIseaDhSIsCiAgICAgICAgICAgICAgICAidiI6ICLniLHmg4UiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuWutuW6rSIsCiAgICAgICAgICAgICAgICAidiI6ICLlrrbluq0iCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuWKseW/lyIsCiAgICAgICAgICAgICAgICAidiI6ICLlirHlv5ciCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuaCrOeWkSIsCiAgICAgICAgICAgICAgICAidiI6ICLmgqznlpEiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuWKqOS9nCIsCiAgICAgICAgICAgICAgICAidiI6ICLliqjkvZwiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuWlh+W5uyIsCiAgICAgICAgICAgICAgICAidiI6ICLlpYflubsiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuWGkumZqSIsCiAgICAgICAgICAgICAgICAidiI6ICLlhpLpmakiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuWOhuWPsiIsCiAgICAgICAgICAgICAgICAidiI6ICLljoblj7IiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuaDiuaCmiIsCiAgICAgICAgICAgICAgICAidiI6ICLmg4rmgpoiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIumfs+S5kCIsCiAgICAgICAgICAgICAgICAidiI6ICLpn7PkuZAiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuenkeW5uyIsCiAgICAgICAgICAgICAgICAidiI6ICLnp5HlubsiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIueKr+e9qiIsCiAgICAgICAgICAgICAgICAidiI6ICLniq/nvaoiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIui/kOWKqCIsCiAgICAgICAgICAgICAgICAidiI6ICLov5DliqgiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuWWnOWJpyIsCiAgICAgICAgICAgICAgICAidiI6ICLllpzliaciCiAgICAgICAgICAgIH1dCiAgICAgICAgfSwgewogICAgICAgICAgICAia2V5IjogImFyZWEiLAogICAgICAgICAgICAibmFtZSI6ICLlnLDljLoiLAogICAgICAgICAgICAidmFsdWUiOiBbewogICAgICAgICAgICAgICAgIm4iOiAi5YWo6YOoIiwKICAgICAgICAgICAgICAgICJ2IjogIiIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi576O5Zu9IiwKICAgICAgICAgICAgICAgICJ2IjogIue+juWbvSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi6Z+p5Zu9IiwKICAgICAgICAgICAgICAgICJ2IjogIumfqeWbvSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi6Iux5Zu9IiwKICAgICAgICAgICAgICAgICJ2IjogIuiLseWbvSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5pel5pysIiwKICAgICAgICAgICAgICAgICJ2IjogIuaXpeacrCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5rOw5Zu9IiwKICAgICAgICAgICAgICAgICJ2IjogIuazsOWbvSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5Lit5Zu9IiwKICAgICAgICAgICAgICAgICJ2IjogIuS4reWbvSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5YW25LuWIiwKICAgICAgICAgICAgICAgICJ2IjogIuWFtuS7liIKICAgICAgICAgICAgfV0KICAgICAgICB9LCB7CiAgICAgICAgICAgICJrZXkiOiAieWVhciIsCiAgICAgICAgICAgICJuYW1lIjogIuW5tOS7vSIsCiAgICAgICAgICAgICJ2YWx1ZSI6IFt7CiAgICAgICAgICAgICAgICAibiI6ICLlhajpg6giLAogICAgICAgICAgICAgICAgInYiOiAiIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDI1IiwKICAgICAgICAgICAgICAgICJ2IjogIjIwMjUiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMjQiLAogICAgICAgICAgICAgICAgInYiOiAiMjAyNCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAyMyIsCiAgICAgICAgICAgICAgICAidiI6ICIyMDIzIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDIyIiwKICAgICAgICAgICAgICAgICJ2IjogIjIwMjIiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMjEiLAogICAgICAgICAgICAgICAgInYiOiAiMjAyMSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAyMCIsCiAgICAgICAgICAgICAgICAidiI6ICIyMDIwIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDE5IiwKICAgICAgICAgICAgICAgICJ2IjogIjIwMTkiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMTgiLAogICAgICAgICAgICAgICAgInYiOiAiMjAxOCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAxNyIsCiAgICAgICAgICAgICAgICAidiI6ICIyMDE3IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDE2IiwKICAgICAgICAgICAgICAgICJ2IjogIjIwMTYiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMTUiLAogICAgICAgICAgICAgICAgInYiOiAiMjAxNSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAxNCIsCiAgICAgICAgICAgICAgICAidiI6ICIyMDE0IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDEzIiwKICAgICAgICAgICAgICAgICJ2IjogIjIwMTMiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMTIiLAogICAgICAgICAgICAgICAgInYiOiAiMjAxMiIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAibW9yZSIsCiAgICAgICAgICAgICAgICAidiI6ICJtb3JlIgogICAgICAgICAgICB9XQogICAgICAgIH0sIHsKICAgICAgICAgICAgImtleSI6ICJzdGF0ZSIsCiAgICAgICAgICAgICJuYW1lIjogIueKtuaAgSIsCiAgICAgICAgICAgICJ2YWx1ZSI6IFt7CiAgICAgICAgICAgICAgICAibiI6ICLlhajpg6giLAogICAgICAgICAgICAgICAgInYiOiAiIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLlroznu5MiLAogICAgICAgICAgICAgICAgInYiOiAidyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi6L+e6L295LitIiwKICAgICAgICAgICAgICAgICJ2IjogImwiCiAgICAgICAgICAgIH1dCiAgICAgICAgfSwgewogICAgICAgICAgICAia2V5IjogImJ5IiwKICAgICAgICAgICAgIm5hbWUiOiAi5o6S5bqPIiwKICAgICAgICAgICAgInZhbHVlIjogW3sKICAgICAgICAgICAgICAgICJuIjogIuaXtumXtCIsCiAgICAgICAgICAgICAgICAidiI6ICJ0aW1lIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLor4TliIYiLAogICAgICAgICAgICAgICAgInYiOiAiZG91YmFuIgogICAgICAgICAgICB9XQogICAgICAgIH1dCiAgICB9LAogICAgZmlsdGVyX2RlZjogewogICAgICAgIDE6IHsKICAgICAgICAgICAgY2F0ZUlkOiAnMScsCiAgICAgICAgICAgIGJ5OiAndGltZScKICAgICAgICB9LAogICAgICAgIDI6IHsKICAgICAgICAgICAgY2F0ZUlkOiAnMicsCiAgICAgICAgICAgIGJ5OiAndGltZScKICAgICAgICB9LAogICAgICAgIDQxOiB7CiAgICAgICAgICAgIGNhdGVJZDogJzQxJywKICAgICAgICAgICAgYnk6ICd0aW1lJwogICAgICAgIH0KICAgIH0sCiAgICBzZWFyY2hVcmw6ICcvc2VhcmNoLnBocD9wYWdlPWZ5cGFnZSZzZWFyY2h3b3JkPSoqJnNlYXJjaHR5cGU9JywKICAgIGNsYXNzX3BhcnNlOiAnLm15dWktaGVhZGVyX19tZW51IGxpO2EmJlRleHQ7YSYmaHJlZjsuKi9pbmRleChcXGQrKS5odG1sJywKfQ== \ No newline at end of file diff --git a/潇洒/movie/js/MTDM.js b/潇洒/movie/js/MTDM.js new file mode 100644 index 00000000..20b02a1a --- /dev/null +++ b/潇洒/movie/js/MTDM.js @@ -0,0 +1 @@ +Z2xvYmFsVGhpcy5oX29zdCA9ICdodHRwOi8vbWl0dS5qaWFqaWF5b3V0aWFuLnRvcC8nOwp2YXIga2V5ID0gQ3J5cHRvSlMuZW5jLkJhc2U2NC5wYXJzZSgiWkRBek1tTXhNamczTm1Kak5qZzBPQT09Iik7CnZhciBpdiA9IENyeXB0b0pTLmVuYy5CYXNlNjQucGFyc2UoIlpEQXpNbU14TWpnM05tSmpOamcwT0E9PSIpOwpnbG9iYWxUaGlzLkFFU19EZWNyeXB0ID0gZnVuY3Rpb24od29yZCkgewogICAgdHJ5IHsKICAgICAgICB2YXIgZGVjcnlwdCA9IENyeXB0b0pTLkFFUy5kZWNyeXB0KHdvcmQsIGtleSwgewogICAgICAgICAgICBpdjogaXYsCiAgICAgICAgICAgIG1vZGU6IENyeXB0b0pTLm1vZGUuQ0JDLAogICAgICAgICAgICBwYWRkaW5nOiBDcnlwdG9KUy5wYWQuUGtjczcsCiAgICAgICAgfSk7CiAgICAgICAgY29uc3QgZGVjcnlwdGVkVGV4dCA9IGRlY3J5cHQudG9TdHJpbmcoQ3J5cHRvSlMuZW5jLlV0ZjgpOwogICAgICAgIGlmICghZGVjcnlwdGVkVGV4dCkgewogICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoIuino+WvhuWQjueahOWGheWuueS4uuepuiIpOwogICAgICAgIH0KICAgICAgICByZXR1cm4gZGVjcnlwdGVkVGV4dDsKICAgIH0gY2F0Y2ggKGUpIHsKICAgICAgICBjb25zb2xlLmVycm9yKCLop6Plr4blpLHotKU6IiwgZSk7CiAgICAgICAgcmV0dXJuIG51bGw7CiAgICB9Cn07Cmdsb2JhbFRoaXMuQUVTX0VuY3J5cHQgPSBmdW5jdGlvbih3b3JkKSB7CiAgICB2YXIgZW5jcnlwdGVkID0gQ3J5cHRvSlMuQUVTLmVuY3J5cHQod29yZCwga2V5LCB7CiAgICAgICAgaXY6IGl2LAogICAgICAgIG1vZGU6IENyeXB0b0pTLm1vZGUuQ0JDLAogICAgICAgIHBhZGRpbmc6IENyeXB0b0pTLnBhZC5Qa2NzNwogICAgfSk7CiAgICByZXR1cm4gZW5jcnlwdGVkLnRvU3RyaW5nKCk7Cn07CgpnbG9iYWxUaGlzLnZvZDEgPSBmdW5jdGlvbih0LCBwZykgewogICAgbGV0IGh0bWwxID0gcmVxdWVzdChoX29zdCArICdhcGkucGhwL2dldGFwcGFwaS5pbmRleC90eXBlRmlsdGVyVm9kTGlzdCcsIHsKICAgICAgICBib2R5OiB7CiAgICAgICAgICAgIGFyZWE6ICflhajpg6gnLAogICAgICAgICAgICB5ZWFyOiAn5YWo6YOoJywKICAgICAgICAgICAgdHlwZV9pZDogdCwKICAgICAgICAgICAgcGFnZTogcGcsCiAgICAgICAgICAgIHNvcnQ6ICfmnIDmlrAnLAogICAgICAgICAgICBsYW5nOiAn5YWo6YOoJywKICAgICAgICAgICAgY2xhc3M6ICflhajpg6gnCiAgICAgICAgfSwKICAgICAgICBoZWFkZXJzOiB7CiAgICAgICAgICAgICdVc2VyLUFnZW50JzogJ29raHR0cC8zLjE0LjknLAogICAgICAgICAgICAnQ29udGVudC1UeXBlJzogJ2FwcGxpY2F0aW9uL3gtd3d3LWZvcm0tdXJsZW5jb2RlZCcKICAgICAgICB9LAogICAgICAgICdtZXRob2QnOiAnUE9TVCcKICAgIH0sIHRydWUpOwogICAgbGV0IGh0bWwgPSBKU09OLnBhcnNlKGh0bWwxKTsKICAgIHJldHVybiAoQUVTX0RlY3J5cHQoaHRtbC5kYXRhKSk7Cn0KZ2xvYmFsVGhpcy52b2RpZHMgPSBmdW5jdGlvbihpZHMpIHsKICAgIGxldCBodG1sMSA9IGZldGNoKGhfb3N0ICsgJ2FwaS5waHAvZ2V0YXBwYXBpLmluZGV4L3ZvZERldGFpbCcsIHsKICAgICAgICBtZXRob2Q6ICdQT1NUJywKICAgICAgICBoZWFkZXJzOiB7CiAgICAgICAgICAgICdVc2VyLUFnZW50JzogJ29raHR0cC8zLjE0LjknLAogICAgICAgICAgICAnQ29udGVudC1UeXBlJzogJ2FwcGxpY2F0aW9uL3gtd3d3LWZvcm0tdXJsZW5jb2RlZCcKICAgICAgICB9LAogICAgICAgIGJvZHk6IHsKICAgICAgICAgICAgdm9kX2lkOiBpZHMsCiAgICAgICAgfQogICAgfSk7CiAgICBsZXQgaHRtbCA9IEpTT04ucGFyc2UoaHRtbDEpOwogICAgY29uc3QgcmRhdGEgPSBKU09OLnBhcnNlKEFFU19EZWNyeXB0KGh0bWwuZGF0YSkpOwogICAgY29uc29sZS5sb2cocmRhdGEpOwogICAgY29uc3QgZGF0YSA9IHsKICAgICAgICB2b2RfaWQ6IGlkcywKICAgICAgICB2b2RfbmFtZTogcmRhdGEudm9kLnZvZF9uYW1lLAogICAgICAgIHZvZF9yZW1hcmtzOiByZGF0YS52b2Qudm9kX3JlbWFya3MsCiAgICAgICAgdm9kX2FjdG9yOiByZGF0YS52b2Qudm9kX2FjdG9yLAogICAgICAgIHZvZF9kaXJlY3RvcjogcmRhdGEudm9kLnZvZF9kaXJlY3RvciwKICAgICAgICB2b2RfY29udGVudDogcmRhdGEudm9kLnZvZF9jb250ZW50LAogICAgICAgIHZvZF9wbGF5X2Zyb206ICcnLAogICAgICAgIHZvZF9wbGF5X3VybDogJycKICAgIH07CgogICAgcmRhdGEudm9kX3BsYXlfbGlzdC5mb3JFYWNoKCh2YWx1ZSkgPT4gewogICAgICAgIGRhdGEudm9kX3BsYXlfZnJvbSArPSB2YWx1ZS5wbGF5ZXJfaW5mby5zaG93ICsgJyQkJCc7CiAgICAgICAgdmFsdWUudXJscy5mb3JFYWNoKCh2KSA9PiB7CiAgICAgICAgICAgIGRhdGEudm9kX3BsYXlfdXJsICs9IHYubmFtZSArICckJyArIHZhbHVlLnBsYXllcl9pbmZvLnBhcnNlICsgJ34nICsgdi51cmwgKyAnficgKyByZGF0YS52b2Qudm9kX25hbWUgKyAnficgKyB2Lm5hbWUgKyAnIyc7CiAgICAgICAgfSk7CiAgICAgICAgZGF0YS52b2RfcGxheV91cmwgKz0gJyQkJCc7CiAgICB9KTsKICAgIHJldHVybiBkYXRhOwp9Ci8v5pCc57SiCmdsb2JhbFRoaXMuc3N2b2QgPSBmdW5jdGlvbih3ZCkgewogICAgdmFyIGh0bWwxID0gZmV0Y2goaF9vc3QgKyAnYXBpLnBocC9nZXRhcHBhcGkuaW5kZXgvc2VhcmNoTGlzdCcsIHsKICAgICAgICBtZXRob2Q6ICdQT1NUJywKICAgICAgICBoZWFkZXJzOiB7CiAgICAgICAgICAgICdVc2VyLUFnZW50JzogJ29raHR0cC8zLjE0LjknLAogICAgICAgICAgICAnQ29udGVudC1UeXBlJzogJ2FwcGxpY2F0aW9uL3gtd3d3LWZvcm0tdXJsZW5jb2RlZCcKICAgICAgICB9LAogICAgICAgIGJvZHk6IHsKICAgICAgICAgICAga2V5d29yZHM6IHdkLAogICAgICAgICAgICB0eXBlcGFnZV9pZDogMSwKICAgICAgICB9CiAgICB9KTsKICAgIGxldCBodG1sID0gSlNPTi5wYXJzZShodG1sMSk7CiAgICByZXR1cm4gQUVTX0RlY3J5cHQoaHRtbC5kYXRhKTsKfQovL+ino+aekApnbG9iYWxUaGlzLmp4eCA9IGZ1bmN0aW9uKGlkLCB1cmwsIG5hbWUsIGp1amkpIHsKICAgIHRyeSB7CiAgICAgICAgaWYgKGlkLmluY2x1ZGVzKCd4bWZsdicpKSB7CiAgICAgICAgICAgIHJldHVybiB7CiAgICAgICAgICAgICAgICBwYXJzZTogMSwKICAgICAgICAgICAgICAgIHVybDogaWQgKyB1cmwsCiAgICAgICAgICAgICAgICBqeDogMCwKICAgICAgICAgICAgICAgIGRhbm1ha3U6ICdodHRwOi8vMTAzLjQ1LjE2Mi4yMDc6MjUyNTIvaGJkbS5waHA/a2V5PTc4OTQ1NjEyMzImaWQ9JyArICcmam09JyArIG5hbWUgKyAnJmpzPScgKyBqdWppICsgJyZrZXk9NzQxODUyOTYzJwogICAgICAgICAgICB9OwogICAgICAgIH0KICAgICAgICAvL2xvZyhpZCk7IAogICAgICAgIGlmICh1cmwuaW5jbHVkZXMoJ20zdTgnKSkgewogICAgICAgICAgICByZXR1cm4gewogICAgICAgICAgICAgICAgcGFyc2U6IDAsCiAgICAgICAgICAgICAgICB1cmw6IHVybCwKICAgICAgICAgICAgICAgIGp4OiAxLAogICAgICAgICAgICAgICAgZGFubWFrdTogJ2h0dHA6Ly8xMDMuNDUuMTYyLjIwNzoyNTI1Mi9oYmRtLnBocD9rZXk9Nzg5NDU2MTIzMiZpZD0nICsgJyZqbT0nICsgbmFtZSArICcmanM9JyArIGp1amkgKyAnJmtleT03NDE4NTI5NjMnCiAgICAgICAgICAgIH07CiAgICAgICAgfQogICAgICAgIGlmIChpZC5pbmNsdWRlcygnaHR0cCcpKSB7CiAgICAgICAgICAgIGxldCBwdXJsID0gSlNPTi5wYXJzZShyZXF1ZXN0KGlkICsgdXJsKSkudXJsOwogICAgICAgICAgICByZXR1cm4gewogICAgICAgICAgICAgICAgcGFyc2U6IDAsCiAgICAgICAgICAgICAgICB1cmw6IHB1cmwsCiAgICAgICAgICAgICAgICBqeDogMCwKICAgICAgICAgICAgICAgIGRhbm1ha3U6ICdodHRwOi8vMTAzLjQ1LjE2Mi4yMDc6MjUyNTIvaGJkbS5waHA/a2V5PTc4OTQ1NjEyMzImaWQ9JyArICcmam09JyArIG5hbWUgKyAnJmpzPScgKyBqdWppICsgJyZrZXk9NzQxODUyOTYzJwogICAgICAgICAgICB9OwogICAgICAgIH0KICAgICAgICBsZXQgaHRtbDEgPSByZXF1ZXN0KGhfb3N0ICsgJ2FwaS5waHAvZ2V0YXBwYXBpLmluZGV4L3ZvZFBhcnNlJywgewogICAgICAgICAgICBtZXRob2Q6ICdQT1NUJywKICAgICAgICAgICAgaGVhZGVyczogewogICAgICAgICAgICAgICAgJ1VzZXItQWdlbnQnOiAnb2todHRwLzMuMTQuOScsCiAgICAgICAgICAgICAgICAnQ29udGVudC1UeXBlJzogJ2FwcGxpY2F0aW9uL3gtd3d3LWZvcm0tdXJsZW5jb2RlZCcKICAgICAgICAgICAgfSwKICAgICAgICAgICAgYm9keTogewogICAgICAgICAgICAgICAgcGFyc2VfYXBpOiBpZCwKICAgICAgICAgICAgICAgIHVybDogQUVTX0VuY3J5cHQodXJsKSwKICAgICAgICAgICAgfQogICAgICAgIH0pOwogICAgICAgIGxldCBodG1sID0gQUVTX0RlY3J5cHQoSlNPTi5wYXJzZShodG1sMSkuZGF0YSk7CiAgICAgICAgY29uc29sZS5sb2coaHRtbDEpOwogICAgICAgIGxldCBkZWNyeSA9IGh0bWwucmVwbGFjZSgvXG4vZywgJycpLnJlcGxhY2UoL1xcL2csICcnKTsKICAgICAgICBsZXQgbWF0Y2hlcyA9IGRlY3J5Lm1hdGNoKC8idXJsIjoiKFteIl0rKSIvKTsKICAgICAgICBpZiAoIW1hdGNoZXMgfHwgbWF0Y2hlc1sxXSA9PT0gbnVsbCkgewogICAgICAgICAgICBtYXRjaGVzID0gZGVjcnkubWF0Y2goLyJ1cmwiOiAiKFteIl0rKSIvKTsKICAgICAgICB9CiAgICAgICAgcmV0dXJuIHsKICAgICAgICAgICAgcGFyc2U6IDAsCiAgICAgICAgICAgIHVybDogbWF0Y2hlc1sxXSwKICAgICAgICAgICAgang6IDAsCiAgICAgICAgICAgIGRhbm1ha3U6ICdodHRwOi8vMTAzLjQ1LjE2Mi4yMDc6MjUyNTIvaGJkbS5waHA/a2V5PTc4OTQ1NjEyMzImaWQ9JyArICcmam09JyArIG5hbWUgKyAnJmpzPScgKyBqdWppICsgJyZrZXk9NzQxODUyOTYzJwogICAgICAgIH07CiAgICB9IGNhdGNoIHsKICAgICAgICByZXR1cm4gewogICAgICAgICAgICBwYXJzZTogMCwKICAgICAgICAgICAgdXJsOiAn6Kej5p6Q5aSx6LSlJywKICAgICAgICAgICAgang6IDAKICAgICAgICB9OwogICAgfQp9Cgp2YXIgcnVsZSA9IHsKICAgIHRpdGxlOiAn57Gz5YWUW+i1hF0nLAogICAgaG9zdDogJycsCiAgICBkZXRhaWxVcmw6ICdmeWlkJywKICAgIHNlYXJjaFVybDogJyoqJywKICAgIHVybDogJ2Z5Y2xhc3MnLAogICAgc2VhcmNoYWJsZTogMiwKICAgIHF1aWNrU2VhcmNoOiAxLAogICAgZmlsdGVyYWJsZTogMCwKICAgIGNsYXNzX25hbWU6ICfnlLXlvbEm55S16KeG5YmnJue7vOiJuibliqjmvKsnLAogICAgY2xhc3NfdXJsOiAnMSYyJjMmNCcsCiAgICBwbGF5X3BhcnNlOiB0cnVlLAogICAgbGF6eTogJGpzLnRvU3RyaW5nKCgpID0+IHsKICAgICAgICBjb25zdCBwYXJ0cyA9IGlucHV0LnNwbGl0KCd+Jyk7CiAgICAgICAgaW5wdXQgPSBqeHgocGFydHNbMF0sIHBhcnRzWzFdLCBwYXJ0c1syXSwgcGFydHNbM10pOwogICAgfSksCiAgICDmjqjojZA6ICRqcy50b1N0cmluZygoKSA9PiB7CiAgICAgICAgbGV0IGRhdGEgPSB2b2QxKDAsIDApOwogICAgICAgIGxldCBiYXRhID0gSlNPTi5wYXJzZShkYXRhKS5yZWNvbW1lbmRfbGlzdDsKICAgICAgICBiYXRhLmZvckVhY2goaXQgPT4gewogICAgICAgICAgICBkLnB1c2goewogICAgICAgICAgICAgICAgdXJsOiBpdC52b2RfaWQsCiAgICAgICAgICAgICAgICB0aXRsZTogaXQudm9kX25hbWUsCiAgICAgICAgICAgICAgICBpbWc6IGl0LnZvZF9waWMsCiAgICAgICAgICAgICAgICBkZXNjOiBpdC52b2RfcmVtYXJrcwogICAgICAgICAgICB9KTsKICAgICAgICB9KTsKICAgICAgICBzZXRSZXN1bHQoZCk7CiAgICB9KSwKICAgIOS4gOe6pzogJGpzLnRvU3RyaW5nKCgpID0+IHsKICAgICAgICBsZXQgZGF0YSA9IHZvZDEoaW5wdXQsIE1ZX1BBR0UpOwogICAgICAgIGxldCBiYXRhID0gSlNPTi5wYXJzZShkYXRhKS5yZWNvbW1lbmRfbGlzdDsKICAgICAgICBiYXRhLmZvckVhY2goaXQgPT4gewogICAgICAgICAgICBkLnB1c2goewogICAgICAgICAgICAgICAgdXJsOiBpdC52b2RfaWQsCiAgICAgICAgICAgICAgICB0aXRsZTogaXQudm9kX25hbWUsCiAgICAgICAgICAgICAgICBpbWc6IGl0LnZvZF9waWMsCiAgICAgICAgICAgICAgICBkZXNjOiBpdC52b2RfcmVtYXJrcwogICAgICAgICAgICB9KTsKICAgICAgICB9KTsKICAgICAgICBzZXRSZXN1bHQoZCk7CiAgICB9KSwKICAgIOS6jOe6pzogJGpzLnRvU3RyaW5nKCgpID0+IHsKICAgICAgICBjb25zb2xlLmxvZygi6LCD6K+V5L+h5oGvMiIgKyBpbnB1dCk7CiAgICAgICAgbGV0IGRhdGEgPSB2b2RpZHMoaW5wdXQpOwogICAgICAgIC8vY29uc29sZS5sb2coZGF0YSk7CiAgICAgICAgVk9EID0gZGF0YTsKICAgIH0pLAogICAg5pCc57SiOiAkanMudG9TdHJpbmcoKCkgPT4gewogICAgICAgIGxldCBkYXRhID0gc3N2b2QoaW5wdXQpOwogICAgICAgIGxldCBiYXRhID0gSlNPTi5wYXJzZShkYXRhKS5zZWFyY2hfbGlzdDsKICAgICAgICBiYXRhLmZvckVhY2goaXQgPT4gewogICAgICAgICAgICBkLnB1c2goewogICAgICAgICAgICAgICAgdXJsOiBpdC52b2RfaWQsCiAgICAgICAgICAgICAgICB0aXRsZTogaXQudm9kX25hbWUsCiAgICAgICAgICAgICAgICBpbWc6IGl0LnZvZF9waWMsCiAgICAgICAgICAgICAgICBkZXNjOiBpdC52b2RfcmVtYXJrcwogICAgICAgICAgICB9KTsKICAgICAgICB9KTsKICAgICAgICAvLyAgY29uc29sZS5sb2coZGF0YSk7CiAgICAgICAgc2V0UmVzdWx0KGQpOwogICAgfSksCn0= \ No newline at end of file diff --git a/潇洒/movie/js/SBB.js b/潇洒/movie/js/SBB.js new file mode 100644 index 00000000..7282023a --- /dev/null +++ b/潇洒/movie/js/SBB.js @@ -0,0 +1 @@ +Ly8g5Zyw5Z2A5Y+R5biD6aG1IGh0dHBzOi8vc3ViYWliYWkudmlwLwovLyDmkJzntKLmlbDlrZfpqozor4EKdmFyIHJ1bGUgPSB7CiAgICB0aXRsZTogJ+e0oOeZveeZvScsCiAgICAvLyBob3N0OidodHRwczovL3d3dy5zdWJhaWJhaXlzLmNvbScsCiAgICBob3N0OiAnaHR0cHM6Ly9zdWJhaWJhaS52aXAnLAogICAgaG9zdEpzOiAncHJpbnQoSE9TVCk7bGV0IGh0bWw9cmVxdWVzdChIT1NULHtoZWFkZXJzOnsiVXNlci1BZ2VudCI6UENfVUF9fSk7bGV0IHNyYyA9IGpzcC5wZGZoKGh0bWwsIi5nbzplcSgwKSYmYSYmaHJlZiIpO3ByaW50KHNyYyk7SE9TVD1zcmMnLCAvL+e9kemhteWfn+WQjeagueWKqOaAgeaKk+WPlmpz5Luj56CB44CC6YCa6L+HSE9TVD3otYvlgLwKICAgIC8vIHVybDonL2Z5Y2xhc3MvcGFnZS9meXBhZ2UnLAogICAgdXJsOiAnL2Z5Y2xhc3NmeWZpbHRlcicsCiAgICBmaWx0ZXJhYmxlOiAxLCAvL+aYr+WQpuWQr+eUqOWIhuexu+etm+mAiSwKICAgIGZpbHRlcl91cmw6ICd7e2ZsLmFyZWF9fXt7ZmwueWVhcn19e3tmbC5jbGFzc319e3tmbC5jYXRlSWR9fS9wYWdlL2Z5cGFnZScsCiAgICBmaWx0ZXI6IHsKICAgICAgICAibW92aWVfYnQiOiBbewogICAgICAgICAgICAia2V5IjogImNhdGVJZCIsCiAgICAgICAgICAgICJuYW1lIjogIuWIhuexuyIsCiAgICAgICAgICAgICJ2YWx1ZSI6IFt7CiAgICAgICAgICAgICAgICAibiI6ICLlhajpg6giLAogICAgICAgICAgICAgICAgInYiOiAiIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAidiI6ICIvbW92aWVfYnRfc2VyaWVzL2RvbmdtYW5qdSIsCiAgICAgICAgICAgICAgICAibiI6ICLliqjmvKvliaciCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJ2IjogIi9tb3ZpZV9idF9zZXJpZXMvZG9uZ21hbmR5IiwKICAgICAgICAgICAgICAgICJuIjogIuWKqOa8q+eUteW9sSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgInYiOiAiL21vdmllX2J0X3Nlcmllcy95aW5kdWR5IiwKICAgICAgICAgICAgICAgICJuIjogIuWNsOW6pueUteW9sSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgInYiOiAiL21vdmllX2J0X3Nlcmllcy9ndW9jaGFuanUiLAogICAgICAgICAgICAgICAgIm4iOiAi5Zu95Lqn5YmnIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAidiI6ICIvbW92aWVfYnRfc2VyaWVzL2d1b2NoYW5keSIsCiAgICAgICAgICAgICAgICAibiI6ICLlm73kuqfnlLXlvbEiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJ2IjogIi9tb3ZpZV9idF9zZXJpZXMvcmlqdSIsCiAgICAgICAgICAgICAgICAibiI6ICLml6XliaciCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJ2IjogIi9tb3ZpZV9idF9zZXJpZXMvcmloYW5keSIsCiAgICAgICAgICAgICAgICAibiI6ICLml6Xpn6nnlLXlvbEiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJ2IjogIi9tb3ZpZV9idF9zZXJpZXMvb3VtZWlqdSIsCiAgICAgICAgICAgICAgICAibiI6ICLmrKfnvo7liaciCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJ2IjogIi9tb3ZpZV9idF9zZXJpZXMvb3VtZWlkeSIsCiAgICAgICAgICAgICAgICAibiI6ICLmrKfnvo7nlLXlvbEiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJ2IjogIi9tb3ZpZV9idF9zZXJpZXMvdGFpanUiLAogICAgICAgICAgICAgICAgIm4iOiAi5rOw5YmnIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAidiI6ICIvbW92aWVfYnRfc2VyaWVzL3RoYWlkeSIsCiAgICAgICAgICAgICAgICAibiI6ICLms7Dlm73nlLXlvbEiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJ2IjogIi9tb3ZpZV9idF9zZXJpZXMvZ2FuZ2p1IiwKICAgICAgICAgICAgICAgICJuIjogIua4r+WPsOWJpyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgInYiOiAiL21vdmllX2J0X3Nlcmllcy9nYW5ndGFpZHkiLAogICAgICAgICAgICAgICAgIm4iOiAi5riv5Y+w55S15b2xIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAidiI6ICIvbW92aWVfYnRfc2VyaWVzL2RvY3VtZW50YXJ5IiwKICAgICAgICAgICAgICAgICJuIjogIue6quW9leeJhyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgInYiOiAiL21vdmllX2J0X3Nlcmllcy96b25neWkiLAogICAgICAgICAgICAgICAgIm4iOiAi57u86Im6IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAidiI6ICIvbW92aWVfYnRfc2VyaWVzL2hhbmp1IiwKICAgICAgICAgICAgICAgICJuIjogIumfqeWJpyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgInYiOiAiL21vdmllX2J0X3Nlcmllcy94aWFuZ2dhbmdkeSIsCiAgICAgICAgICAgICAgICAibiI6ICLpppnmuK/nu4/lhbjnlLXlvbEiCiAgICAgICAgICAgIH1dCiAgICAgICAgfSwgewogICAgICAgICAgICAia2V5IjogImNsYXNzIiwKICAgICAgICAgICAgIm5hbWUiOiAi57G75Z6LIiwKICAgICAgICAgICAgInZhbHVlIjogW3sKICAgICAgICAgICAgICAgICJuIjogIuWFqOmDqCIsCiAgICAgICAgICAgICAgICAidiI6ICIiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJ2IjogIi9tb3ZpZV9idF90YWdzL3BvcC1wb3B1bGFyIiwKICAgICAgICAgICAgICAgICJuIjogIlBPUOa1geihjCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgInYiOiAiL21vdmllX2J0X3RhZ3MvYmlvZ3JhcGh5IiwKICAgICAgICAgICAgICAgICJuIjogIuS8oOiusCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgInYiOiAiL21vdmllX2J0X3RhZ3MvY2hpbGQiLAogICAgICAgICAgICAgICAgIm4iOiAi5YS/56ulIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAidiI6ICIvbW92aWVfYnRfdGFncy9hZHZlbnR1cmUiLAogICAgICAgICAgICAgICAgIm4iOiAi5YaS6ZmpIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAidiI6ICIvbW92aWVfYnRfdGFncy9wbG90IiwKICAgICAgICAgICAgICAgICJuIjogIuWJp+aDhSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgInYiOiAiL21vdmllX2J0X3RhZ3MvYWN0aW9uIiwKICAgICAgICAgICAgICAgICJuIjogIuWKqOS9nCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgInYiOiAiL21vdmllX2J0X3RhZ3MvYW5pbWUiLAogICAgICAgICAgICAgICAgIm4iOiAi5Yqo5ryrIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAidiI6ICIvbW92aWVfYnRfdGFncy9hbmltYXRpb24iLAogICAgICAgICAgICAgICAgIm4iOiAi5Yqo55S7IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAidiI6ICIvbW92aWVfYnRfdGFncy9oaXN0b3J5IiwKICAgICAgICAgICAgICAgICJuIjogIuWOhuWPsiIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgInYiOiAiL21vdmllX2J0X3RhZ3MvY29zdHVtZSIsCiAgICAgICAgICAgICAgICAibiI6ICLlj6Too4UiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJ2IjogIi9tb3ZpZV9idF90YWdzL2FudGlxdWl0eSIsCiAgICAgICAgICAgICAgICAibiI6ICLlj6Tpo44iCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJ2IjogIi9tb3ZpZV9idF90YWdzL2hvbW9zZXh1YWwiLAogICAgICAgICAgICAgICAgIm4iOiAi5ZCM5oCnIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAidiI6ICIvbW92aWVfYnRfdGFncy9jb21lZHkiLAogICAgICAgICAgICAgICAgIm4iOiAi5Zac5YmnIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAidiI6ICIvbW92aWVfYnRfdGFncy9mYW50YXN5IiwKICAgICAgICAgICAgICAgICJuIjogIuWlh+W5uyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgInYiOiAiL21vdmllX2J0X3RhZ3MvZmFtaWx5IiwKICAgICAgICAgICAgICAgICJuIjogIuWutuW6rSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgInYiOiAiL21vdmllX2J0X3RhZ3MvdGVycm9yIiwKICAgICAgICAgICAgICAgICJuIjogIuaBkOaAliIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgInYiOiAiL21vdmllX2J0X3RhZ3Mvc3VzcGVuc2UiLAogICAgICAgICAgICAgICAgIm4iOiAi5oKs55aRIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAidiI6ICIvbW92aWVfYnRfdGFncy9lcm90aWMiLAogICAgICAgICAgICAgICAgIm4iOiAi5oOF6ImyIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAidiI6ICIvbW92aWVfYnRfdGFncy90aHJpbGxlciIsCiAgICAgICAgICAgICAgICAibiI6ICLmg4rmgpoiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJ2IjogIi9tb3ZpZV9idF90YWdzL2RyYW1hIiwKICAgICAgICAgICAgICAgICJuIjogIuaIj+absiIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgInYiOiAiL21vdmllX2J0X3RhZ3Mvd2FyIiwKICAgICAgICAgICAgICAgICJuIjogIuaImOS6iSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgInYiOiAiL21vdmllX2J0X3RhZ3MvbGF0aW4iLAogICAgICAgICAgICAgICAgIm4iOiAi5ouJ5LiBIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAidiI6ICIvbW92aWVfYnRfdGFncy9mdW5ueSIsCiAgICAgICAgICAgICAgICAibiI6ICLmkJ7nrJEiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJ2IjogIi9tb3ZpZV9idF90YWdzL2NhbXB1cyIsCiAgICAgICAgICAgICAgICAibiI6ICLmoKHlm60iCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJ2IjogIi9tb3ZpZV9idF90YWdzL3NvbmctYW5kLWRhbmNlIiwKICAgICAgICAgICAgICAgICJuIjogIuatjOiIniIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgInYiOiAiL21vdmllX2J0X3RhZ3MvbWFydGlhbC1hcnRzIiwKICAgICAgICAgICAgICAgICJuIjogIuatpuS+oCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgInYiOiAiL21vdmllX2J0X3RhZ3MvZGlzYXN0ZXIiLAogICAgICAgICAgICAgICAgIm4iOiAi54G+6Zq+IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAidiI6ICIvbW92aWVfYnRfdGFncy9sb3ZlIiwKICAgICAgICAgICAgICAgICJuIjogIueIseaDhSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgInYiOiAiL21vdmllX2J0X3RhZ3MvY3JpbWUiLAogICAgICAgICAgICAgICAgIm4iOiAi54qv572qIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAidiI6ICIvbW92aWVfYnRfdGFncy9mYW5jeSIsCiAgICAgICAgICAgICAgICAibiI6ICLnjoTlubsiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJ2IjogIi9tb3ZpZV9idF90YWdzL3JlYWxpdHktc2hvdyIsCiAgICAgICAgICAgICAgICAibiI6ICLnnJ/kurrnp4AiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJ2IjogIi9tb3ZpZV9idF90YWdzL3Nob3J0LWZpbG0iLAogICAgICAgICAgICAgICAgIm4iOiAi55+t54mHIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAidiI6ICIvbW92aWVfYnRfdGFncy9rZWh1YW4iLAogICAgICAgICAgICAgICAgIm4iOiAi56eR5bm7IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAidiI6ICIvbW92aWVfYnRfdGFncy9kb2N1bWVudGFyeSIsCiAgICAgICAgICAgICAgICAibiI6ICLnuqrlvZXniYciCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJ2IjogIi9tb3ZpZV9idF90YWdzL3RhbGtzaG93IiwKICAgICAgICAgICAgICAgICJuIjogIuiEseWPo+engCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgInYiOiAiL21vdmllX2J0X3RhZ3Mvc3RhZ2VhcnQiLAogICAgICAgICAgICAgICAgIm4iOiAi6Iie5Y+w6Im65pyvIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAidiI6ICIvbW92aWVfYnRfdGFncy93ZXN0IiwKICAgICAgICAgICAgICAgICJuIjogIuilv+mDqCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgInYiOiAiL21vdmllX2J0X3RhZ3Mvc3BvcnQiLAogICAgICAgICAgICAgICAgIm4iOiAi6L+Q5YqoIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAidiI6ICIvbW92aWVfYnRfdGFncy95b3V0aCIsCiAgICAgICAgICAgICAgICAibiI6ICLpnZLmmKUiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJ2IjogIi9tb3ZpZV9idF90YWdzL211c2ljIiwKICAgICAgICAgICAgICAgICJuIjogIumfs+S5kCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgInYiOiAiL21vdmllX2J0X3RhZ3MvZ2hvc3QiLAogICAgICAgICAgICAgICAgIm4iOiAi6ay85oCqIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAidiI6ICIvbW92aWVfYnRfdGFncy9ibGFjay1maWxtIiwKICAgICAgICAgICAgICAgICJuIjogIum7keiJsueUteW9sSIKICAgICAgICAgICAgfV0KICAgICAgICB9LCB7CiAgICAgICAgICAgICJrZXkiOiAiYXJlYSIsCiAgICAgICAgICAgICJuYW1lIjogIuWcsOWMuiIsCiAgICAgICAgICAgICJ2YWx1ZSI6IFt7CiAgICAgICAgICAgICAgICAibiI6ICLlhajpg6giLAogICAgICAgICAgICAgICAgInYiOiAiIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAidiI6ICIvbW92aWVfYnRfY2F0L2JodXRhbiIsCiAgICAgICAgICAgICAgICAibiI6ICLkuI3kuLkiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJ2IjogIi9tb3ZpZV9idF9jYXQvY2hpbmEiLAogICAgICAgICAgICAgICAgIm4iOiAi5Lit5Zu9IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAidiI6ICIvbW92aWVfYnRfY2F0L2NoaW5hLXRhaXdhbiIsCiAgICAgICAgICAgICAgICAibiI6ICLkuK3lm73lj7Dmub4iCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJ2IjogIi9tb3ZpZV9idF9jYXQvY2hpbmEtbWFpbmxhbmQiLAogICAgICAgICAgICAgICAgIm4iOiAi5Lit5Zu95aSn6ZmGIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAidiI6ICIvbW92aWVfYnRfY2F0L2NoaW5hLWhvbmdrb25nIiwKICAgICAgICAgICAgICAgICJuIjogIuS4reWbvemmmea4ryIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgInYiOiAiL21vdmllX2J0X2NhdC9kZW5tYXJrIiwKICAgICAgICAgICAgICAgICJuIjogIuS4uem6piIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgInYiOiAiL21vdmllX2J0X2NhdC91a3JhaW5lIiwKICAgICAgICAgICAgICAgICJuIjogIuS5jOWFi+WFsCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgInYiOiAiL21vdmllX2J0X2NhdC91cnVndWF5IiwKICAgICAgICAgICAgICAgICJuIjogIuS5jOaLieWcrSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgInYiOiAiL21vdmllX2J0X2NhdC9pc3JhZWwiLAogICAgICAgICAgICAgICAgIm4iOiAi5Lul6Imy5YiXIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAidiI6ICIvbW92aWVfYnRfY2F0L2lyYXEiLAogICAgICAgICAgICAgICAgIm4iOiAi5LyK5ouJ5YWLIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAidiI6ICIvbW92aWVfYnRfY2F0L2lyYW4iLAogICAgICAgICAgICAgICAgIm4iOiAi5LyK5pyXIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAidiI6ICIvbW92aWVfYnRfY2F0L3J1c3NpYSIsCiAgICAgICAgICAgICAgICAibiI6ICLkv4TnvZfmlq8iCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJ2IjogIi9tb3ZpZV9idF9jYXQvYnVsZ2FyaWEiLAogICAgICAgICAgICAgICAgIm4iOiAi5L+d5Yqg5Yip5LqaIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAidiI6ICIvbW92aWVfYnRfY2F0L2Nyb2F0aWEiLAogICAgICAgICAgICAgICAgIm4iOiAi5YWL572X5Zyw5LqaIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAidiI6ICIvbW92aWVfYnRfY2F0L2ljZWxhbmQiLAogICAgICAgICAgICAgICAgIm4iOiAi5Yaw5bKbIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAidiI6ICIvbW92aWVfYnRfY2F0L2NhbmFkYSIsCiAgICAgICAgICAgICAgICAibiI6ICLliqDmi7/lpKciCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJ2IjogIi9tb3ZpZV9idF9jYXQvaHVuZ2FyeSIsCiAgICAgICAgICAgICAgICAibiI6ICLljIjniZnliKkiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJ2IjogIi9tb3ZpZV9idF9jYXQvc291dGgtYWZyaWNhIiwKICAgICAgICAgICAgICAgICJuIjogIuWNl+mdniIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgInYiOiAiL21vdmllX2J0X2NhdC9ib3Rzd2FuYSIsCiAgICAgICAgICAgICAgICAibiI6ICLljZrojKjnk6bnurMiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJ2IjogIi9tb3ZpZV9idF9jYXQvcWF0YXIiLAogICAgICAgICAgICAgICAgIm4iOiAi5Y2h5aGU5bCUIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAidiI6ICIvbW92aWVfYnRfY2F0L2x1eGVtYm91cmciLAogICAgICAgICAgICAgICAgIm4iOiAi5Y2i5qOu5aChIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAidiI6ICIvbW92aWVfYnRfY2F0L2luZGlhIiwKICAgICAgICAgICAgICAgICJuIjogIuWNsOW6piIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgInYiOiAiL21vdmllX2J0X2NhdC9pbmRvbmVzaWEiLAogICAgICAgICAgICAgICAgIm4iOiAi5Y2w5bqm5bC86KW/5LqaIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAidiI6ICIvbW92aWVfYnRfY2F0L2themFraHN0YW4iLAogICAgICAgICAgICAgICAgIm4iOiAi5ZOI6JCo5YWL5pav5Z2mIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAidiI6ICIvbW92aWVfYnRfY2F0L2NvbG9tYmlhIiwKICAgICAgICAgICAgICAgICJuIjogIuWTpeS8puavlOS6miIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgInYiOiAiL21vdmllX2J0X2NhdC90dXJrZXkiLAogICAgICAgICAgICAgICAgIm4iOiAi5Zyf6ICz5YW2IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAidiI6ICIvbW92aWVfYnRfY2F0L3NlcmJpYSIsCiAgICAgICAgICAgICAgICAibiI6ICLloZ7lsJTnu7TkupoiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJ2IjogIi9tb3ZpZV9idF9jYXQvY3lwcnVzIiwKICAgICAgICAgICAgICAgICJuIjogIuWhnua1pui3r+aWryIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgInYiOiAiL21vdmllX2J0X2NhdC9tZXhpY28iLAogICAgICAgICAgICAgICAgIm4iOiAi5aKo6KW/5ZOlIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAidiI6ICIvbW92aWVfYnRfY2F0L2RvbWluaWNhIiwKICAgICAgICAgICAgICAgICJuIjogIuWkmuexs+WwvOWKoCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgInYiOiAiL21vdmllX2J0X2NhdC9hdXN0cmlhIiwKICAgICAgICAgICAgICAgICJuIjogIuWlpeWcsOWIqSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgInYiOiAiL21vdmllX2J0X2NhdC92ZW5lenVlbGEiLAogICAgICAgICAgICAgICAgIm4iOiAi5aeU5YaF55Ge5ouJIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAidiI6ICIvbW92aWVfYnRfY2F0L25pZ2VyaWEiLAogICAgICAgICAgICAgICAgIm4iOiAi5bC85pel5Yip5LqaIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAidiI6ICIvbW92aWVfYnRfY2F0L+W3tOWfuuaWr+WdpiIsCiAgICAgICAgICAgICAgICAibiI6ICLlt7Tln7rmlq/lnaYiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJ2IjogIi9tb3ZpZV9idF9jYXQvcGFyYWd1YXkiLAogICAgICAgICAgICAgICAgIm4iOiAi5be05ouJ5ZytIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAidiI6ICIvbW92aWVfYnRfY2F0L2JyYXppbCIsCiAgICAgICAgICAgICAgICAibiI6ICLlt7Topb8iCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJ2IjogIi9tb3ZpZV9idF9jYXQvZ3JlZWNlIiwKICAgICAgICAgICAgICAgICJuIjogIuW4jOiFiiIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgInYiOiAiL21vdmllX2J0X2NhdC9nZXJtYW55IiwKICAgICAgICAgICAgICAgICJuIjogIuW+t+WbvSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgInYiOiAiL21vdmllX2J0X2NhdC9pdGFseSIsCiAgICAgICAgICAgICAgICAibiI6ICLmhI/lpKfliKkiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJ2IjogIi9tb3ZpZV9idF9jYXQvbGF0dmlhIiwKICAgICAgICAgICAgICAgICJuIjogIuaLieiEsee7tOS6miIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgInYiOiAiL21vdmllX2J0X2NhdC9ub3J3YXkiLAogICAgICAgICAgICAgICAgIm4iOiAi5oyq5aiBIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAidiI6ICIvbW92aWVfYnRfY2F0L2NoZWNoIiwKICAgICAgICAgICAgICAgICJuIjogIuaNt+WFiyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgInYiOiAiL21vdmllX2J0X2NhdC/mkanmtJvlk6UiLAogICAgICAgICAgICAgICAgIm4iOiAi5pGp5rSb5ZOlIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAidiI6ICIvbW92aWVfYnRfY2F0L+aWr+a0m+S8kOWFiyIsCiAgICAgICAgICAgICAgICAibiI6ICLmlq/mtJvkvJDlhYsiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJ2IjogIi9tb3ZpZV9idF9jYXQvc2xvdmVuaWEiLAogICAgICAgICAgICAgICAgIm4iOiAi5pav5rSb5paH5bC85LqaIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAidiI6ICIvbW92aWVfYnRfY2F0L3NpbmdhcG9yZSIsCiAgICAgICAgICAgICAgICAibiI6ICLmlrDliqDlnaEiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJ2IjogIi9tb3ZpZV9idF9jYXQvemVhbGFuZCIsCiAgICAgICAgICAgICAgICAibiI6ICLmlrDopb/lhbAiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJ2IjogIi9tb3ZpZV9idF9jYXQvamFwYW4iLAogICAgICAgICAgICAgICAgIm4iOiAi5pel5pysIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAidiI6ICIvbW92aWVfYnRfY2F0L2NoaWxlIiwKICAgICAgICAgICAgICAgICJuIjogIuaZuuWIqSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgInYiOiAiL21vdmllX2J0X2NhdC9ub3J0aC1rb3JlYSIsCiAgICAgICAgICAgICAgICAibiI6ICLmnJ3pspwiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJ2IjogIi9tb3ZpZV9idF9jYXQvY2FtYm9kaWEiLAogICAgICAgICAgICAgICAgIm4iOiAi5p+s5Z+U5a+oIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAidiI6ICIvbW92aWVfYnRfY2F0L2dlb3JnaWEiLAogICAgICAgICAgICAgICAgIm4iOiAi5qC86bKB5ZCJ5LqaIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAidiI6ICIvbW92aWVfYnRfY2F0L2JlbGdpdW0iLAogICAgICAgICAgICAgICAgIm4iOiAi5q+U5Yip5pe2IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAidiI6ICIvbW92aWVfYnRfY2F0L3NhdWRpLWFyYWJpYSIsCiAgICAgICAgICAgICAgICAibiI6ICLmspnnibnpmL/mi4nkvK8iCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJ2IjogIi9tb3ZpZV9idF9jYXQvZnJhbmNlIiwKICAgICAgICAgICAgICAgICJuIjogIuazleWbvSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgInYiOiAiL21vdmllX2J0X2NhdC9wb2xhbmQiLAogICAgICAgICAgICAgICAgIm4iOiAi5rOi5YWwIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAidiI6ICIvbW92aWVfYnRfY2F0L3B1ZXJ0b3JjbyIsCiAgICAgICAgICAgICAgICAibiI6ICLms6LlpJrpu47lkIQiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJ2IjogIi9tb3ZpZV9idF9jYXQvYm9oZWkiLAogICAgICAgICAgICAgICAgIm4iOiAi5rOi6buRIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAidiI6ICIvbW92aWVfYnRfY2F0L3RoYWlsYW5kIiwKICAgICAgICAgICAgICAgICJuIjogIuazsOWbvSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgInYiOiAiL21vdmllX2J0X2NhdC9hdXN0cmFsaWEiLAogICAgICAgICAgICAgICAgIm4iOiAi5r6z5aSn5Yip5LqaIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAidiI6ICIvbW92aWVfYnRfY2F0L2lyZWxhbmQiLAogICAgICAgICAgICAgICAgIm4iOiAi54ix5bCU5YWwIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAidiI6ICIvbW92aWVfYnRfY2F0L2VzdG9uaWEiLAogICAgICAgICAgICAgICAgIm4iOiAi54ix5rKZ5bC85LqaIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAidiI6ICIvbW92aWVfYnRfY2F0L3N3ZWRlbiIsCiAgICAgICAgICAgICAgICAibiI6ICLnkZ7lhbgiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJ2IjogIi9tb3ZpZV9idF9jYXQvc3dpdHplcmxhbmQiLAogICAgICAgICAgICAgICAgIm4iOiAi55Ge5aOrIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAidiI6ICIvbW92aWVfYnRfY2F0L2JlbGFydXMiLAogICAgICAgICAgICAgICAgIm4iOiAi55m95L+E572X5pavIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAidiI6ICIvbW92aWVfYnRfY2F0L3BlcnUiLAogICAgICAgICAgICAgICAgIm4iOiAi56eY6bKBIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAidiI6ICIvbW92aWVfYnRfY2F0L3R1bmlzaWEiLAogICAgICAgICAgICAgICAgIm4iOiAi56qB5bC85pavIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAidiI6ICIvbW92aWVfYnRfY2F0L2xpdGh1YW5pYSIsCiAgICAgICAgICAgICAgICAibiI6ICLnq4vpmbblrpsiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJ2IjogIi9tb3ZpZV9idF9jYXQvcm9tYW5pYSIsCiAgICAgICAgICAgICAgICAibiI6ICLnvZfpqazlsLzkupoiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJ2IjogIi9tb3ZpZV9idF9jYXQvYW1lcmljYSIsCiAgICAgICAgICAgICAgICAibiI6ICLnvo7lm70iCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJ2IjogIi9tb3ZpZV9idF9jYXQvZmlubGFuZCIsCiAgICAgICAgICAgICAgICAibiI6ICLoiqzlhbAiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJ2IjogIi9tb3ZpZV9idF9jYXQvc292aWV0dW5pb24iLAogICAgICAgICAgICAgICAgIm4iOiAi6IuP6IGUIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAidiI6ICIvbW92aWVfYnRfY2F0L2VuZ2xhbmQiLAogICAgICAgICAgICAgICAgIm4iOiAi6Iux5Zu9IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAidiI6ICIvbW92aWVfYnRfY2F0L25ldGhlcmxhbmRzIiwKICAgICAgICAgICAgICAgICJuIjogIuiNt+WFsCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgInYiOiAiL21vdmllX2J0X2NhdC9waGlsaXBwaW5lcyIsCiAgICAgICAgICAgICAgICAibiI6ICLoj7Llvovlrr4iCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJ2IjogIi9tb3ZpZV9idF9jYXQv6JGh6JCE54mZIiwKICAgICAgICAgICAgICAgICJuIjogIuiRoeiQhOeJmSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgInYiOiAiL21vdmllX2J0X2NhdC93ZXN0LWdlcm1hbnkiLAogICAgICAgICAgICAgICAgIm4iOiAi6KW/5b63IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAidiI6ICIvbW92aWVfYnRfY2F0L3NwYWluIiwKICAgICAgICAgICAgICAgICJuIjogIuilv+ePreeJmSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgInYiOiAiL21vdmllX2J0X2NhdC92aWV0bmFtIiwKICAgICAgICAgICAgICAgICJuIjogIui2iuWNlyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgInYiOiAiL21vdmllX2J0X2NhdC9hcmdlbnRpbmEiLAogICAgICAgICAgICAgICAgIm4iOiAi6Zi/5qC55bu3IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAidiI6ICIvbW92aWVfYnRfY2F0L2tvcmVhIiwKICAgICAgICAgICAgICAgICJuIjogIumfqeWbvSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgInYiOiAiL21vdmllX2J0X2NhdC9tYWxheXNpYSIsCiAgICAgICAgICAgICAgICAibiI6ICLpqazmnaXopb/kupoiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJ2IjogIi9tb3ZpZV9idF9jYXQv6ams6ICz5LuWIiwKICAgICAgICAgICAgICAgICJuIjogIumprOiAs+S7liIKICAgICAgICAgICAgfV0KICAgICAgICB9LCB7CiAgICAgICAgICAgICJrZXkiOiAieWVhciIsCiAgICAgICAgICAgICJuYW1lIjogIuW5tOS7vSIsCiAgICAgICAgICAgICJ2YWx1ZSI6IFt7CiAgICAgICAgICAgICAgICAibiI6ICLlhajpg6giLAogICAgICAgICAgICAgICAgInYiOiAiIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAidiI6ICIveWVhci8yMDI0IiwKICAgICAgICAgICAgICAgICJuIjogIjIwMjQiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJ2IjogIi95ZWFyLzIwMjMiLAogICAgICAgICAgICAgICAgIm4iOiAiMjAyMyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgInYiOiAiL3llYXIvMjAyMiIsCiAgICAgICAgICAgICAgICAibiI6ICIyMDIyIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAidiI6ICIveWVhci8yMDIxIiwKICAgICAgICAgICAgICAgICJuIjogIjIwMjEiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJ2IjogIi95ZWFyLzIwMjAiLAogICAgICAgICAgICAgICAgIm4iOiAiMjAyMCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgInYiOiAiL3llYXIvMjAxOSIsCiAgICAgICAgICAgICAgICAibiI6ICIyMDE5IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAidiI6ICIveWVhci8yMDE4IiwKICAgICAgICAgICAgICAgICJuIjogIjIwMTgiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJ2IjogIi95ZWFyLzIwMTciLAogICAgICAgICAgICAgICAgIm4iOiAiMjAxNyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgInYiOiAiL3llYXIvMjAxNiIsCiAgICAgICAgICAgICAgICAibiI6ICIyMDE2IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAidiI6ICIveWVhci8yMDE1IiwKICAgICAgICAgICAgICAgICJuIjogIjIwMTUiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJ2IjogIi95ZWFyLzIwMTQiLAogICAgICAgICAgICAgICAgIm4iOiAiMjAxNCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgInYiOiAiL3llYXIvMjAxMyIsCiAgICAgICAgICAgICAgICAibiI6ICIyMDEzIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAidiI6ICIveWVhci8yMDEyIiwKICAgICAgICAgICAgICAgICJuIjogIjIwMTIiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJ2IjogIi95ZWFyLzIwMTEiLAogICAgICAgICAgICAgICAgIm4iOiAiMjAxMSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgInYiOiAiL3llYXIvMjAxMCIsCiAgICAgICAgICAgICAgICAibiI6ICIyMDEwIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAidiI6ICIveWVhci8yMDA5IiwKICAgICAgICAgICAgICAgICJuIjogIjIwMDkiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJ2IjogIi95ZWFyLzIwMDgiLAogICAgICAgICAgICAgICAgIm4iOiAiMjAwOCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgInYiOiAiL3llYXIvMjAwNyIsCiAgICAgICAgICAgICAgICAibiI6ICIyMDA3IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAidiI6ICIveWVhci8yMDA2IiwKICAgICAgICAgICAgICAgICJuIjogIjIwMDYiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJ2IjogIi95ZWFyLzIwMDUiLAogICAgICAgICAgICAgICAgIm4iOiAiMjAwNSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgInYiOiAiL3llYXIvMjAwNCIsCiAgICAgICAgICAgICAgICAibiI6ICIyMDA0IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAidiI6ICIveWVhci8yMDAzIiwKICAgICAgICAgICAgICAgICJuIjogIjIwMDMiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJ2IjogIi95ZWFyLzIwMDIiLAogICAgICAgICAgICAgICAgIm4iOiAiMjAwMiIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgInYiOiAiL3llYXIvMjAwMSIsCiAgICAgICAgICAgICAgICAibiI6ICIyMDAxIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAidiI6ICIveWVhci8yMDAwIiwKICAgICAgICAgICAgICAgICJuIjogIjIwMDAiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJ2IjogIi95ZWFyLzE5OTkiLAogICAgICAgICAgICAgICAgIm4iOiAiMTk5OSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgInYiOiAiL3llYXIvMTk5OCIsCiAgICAgICAgICAgICAgICAibiI6ICIxOTk4IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAidiI6ICIveWVhci8xOTk3IiwKICAgICAgICAgICAgICAgICJuIjogIjE5OTciCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJ2IjogIi95ZWFyLzE5OTYiLAogICAgICAgICAgICAgICAgIm4iOiAiMTk5NiIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgInYiOiAiL3llYXIvMTk5NSIsCiAgICAgICAgICAgICAgICAibiI6ICIxOTk1IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAidiI6ICIveWVhci8xOTk0IiwKICAgICAgICAgICAgICAgICJuIjogIjE5OTQiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJ2IjogIi95ZWFyLzE5OTMiLAogICAgICAgICAgICAgICAgIm4iOiAiMTk5MyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgInYiOiAiL3llYXIvMTk5MiIsCiAgICAgICAgICAgICAgICAibiI6ICIxOTkyIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAidiI6ICIveWVhci8xOTkxIiwKICAgICAgICAgICAgICAgICJuIjogIjE5OTEiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJ2IjogIi95ZWFyLzE5OTAiLAogICAgICAgICAgICAgICAgIm4iOiAiMTk5MCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgInYiOiAiL3llYXIvMTk4OSIsCiAgICAgICAgICAgICAgICAibiI6ICIxOTg5IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAidiI6ICIveWVhci8xOTg4IiwKICAgICAgICAgICAgICAgICJuIjogIjE5ODgiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJ2IjogIi95ZWFyLzE5ODciLAogICAgICAgICAgICAgICAgIm4iOiAiMTk4NyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgInYiOiAiL3llYXIvMTk4NiIsCiAgICAgICAgICAgICAgICAibiI6ICIxOTg2IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAidiI6ICIveWVhci8xOTg1IiwKICAgICAgICAgICAgICAgICJuIjogIjE5ODUiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJ2IjogIi95ZWFyLzE5ODQiLAogICAgICAgICAgICAgICAgIm4iOiAiMTk4NCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgInYiOiAiL3llYXIvMTk4MyIsCiAgICAgICAgICAgICAgICAibiI6ICIxOTgzIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAidiI6ICIveWVhci8xOTgyIiwKICAgICAgICAgICAgICAgICJuIjogIjE5ODIiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJ2IjogIi95ZWFyLzE5ODEiLAogICAgICAgICAgICAgICAgIm4iOiAiMTk4MSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgInYiOiAiL3llYXIvMTk4MCIsCiAgICAgICAgICAgICAgICAibiI6ICIxOTgwIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAidiI6ICIveWVhci8xOTc5IiwKICAgICAgICAgICAgICAgICJuIjogIjE5NzkiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJ2IjogIi95ZWFyLzE5NzgiLAogICAgICAgICAgICAgICAgIm4iOiAiMTk3OCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgInYiOiAiL3llYXIvMTk3NyIsCiAgICAgICAgICAgICAgICAibiI6ICIxOTc3IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAidiI6ICIveWVhci8xOTc2IiwKICAgICAgICAgICAgICAgICJuIjogIjE5NzYiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJ2IjogIi95ZWFyLzE5NzUiLAogICAgICAgICAgICAgICAgIm4iOiAiMTk3NSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgInYiOiAiL3llYXIvMTk3NCIsCiAgICAgICAgICAgICAgICAibiI6ICIxOTc0IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAidiI6ICIveWVhci8xOTczIiwKICAgICAgICAgICAgICAgICJuIjogIjE5NzMiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJ2IjogIi95ZWFyLzE5NzIiLAogICAgICAgICAgICAgICAgIm4iOiAiMTk3MiIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgInYiOiAiL3llYXIvMTk3MSIsCiAgICAgICAgICAgICAgICAibiI6ICIxOTcxIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAidiI6ICIveWVhci8xOTcwIiwKICAgICAgICAgICAgICAgICJuIjogIjE5NzAiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJ2IjogIi95ZWFyLzE5NjkiLAogICAgICAgICAgICAgICAgIm4iOiAiMTk2OSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgInYiOiAiL3llYXIvMTk2OCIsCiAgICAgICAgICAgICAgICAibiI6ICIxOTY4IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAidiI6ICIveWVhci8xOTY3IiwKICAgICAgICAgICAgICAgICJuIjogIjE5NjciCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJ2IjogIi95ZWFyLzE5NjYiLAogICAgICAgICAgICAgICAgIm4iOiAiMTk2NiIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgInYiOiAiL3llYXIvMTk2NSIsCiAgICAgICAgICAgICAgICAibiI6ICIxOTY1IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAidiI6ICIveWVhci8xOTY0IiwKICAgICAgICAgICAgICAgICJuIjogIjE5NjQiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJ2IjogIi95ZWFyLzE5NjMiLAogICAgICAgICAgICAgICAgIm4iOiAiMTk2MyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgInYiOiAiL3llYXIvMTk2MiIsCiAgICAgICAgICAgICAgICAibiI6ICIxOTYyIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAidiI6ICIveWVhci8xOTYwIiwKICAgICAgICAgICAgICAgICJuIjogIjE5NjAiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJ2IjogIi95ZWFyLzE5NTkiLAogICAgICAgICAgICAgICAgIm4iOiAiMTk1OSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgInYiOiAiL3llYXIvMTk1NCIsCiAgICAgICAgICAgICAgICAibiI6ICIxOTU0IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAidiI6ICIveWVhci8xOTUyIiwKICAgICAgICAgICAgICAgICJuIjogIjE5NTIiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJ2IjogIi95ZWFyLzE5NTAiLAogICAgICAgICAgICAgICAgIm4iOiAiMTk1MCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgInYiOiAiL3llYXIvMTk0OSIsCiAgICAgICAgICAgICAgICAibiI6ICIxOTQ5IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAidiI6ICIveWVhci8xOTQ4IiwKICAgICAgICAgICAgICAgICJuIjogIjE5NDgiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJ2IjogIi95ZWFyLzE5NDAiLAogICAgICAgICAgICAgICAgIm4iOiAiMTk0MCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgInYiOiAiL3llYXIvMTkzOSIsCiAgICAgICAgICAgICAgICAibiI6ICIxOTM5IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAidiI6ICIveWVhci8xOTI1IiwKICAgICAgICAgICAgICAgICJuIjogIjE5MjUiCiAgICAgICAgICAgIH1dCiAgICAgICAgfV0KICAgIH0sCiAgICAvLyBzZWFyY2hVcmw6Jy9zZWFyY2g/cT0qKicsCiAgICBzZWFyY2hVcmw6ICcvc2VhcmNoP3E9KionLAogICAgc2VhcmNoYWJsZTogMiwgLy/mmK/lkKblkK/nlKjlhajlsYDmkJzntKIsCiAgICBxdWlja1NlYXJjaDogMCwgLy/mmK/lkKblkK/nlKjlv6vpgJ/mkJzntKIsCiAgICBoZWFkZXJzOiB7CiAgICAgICAgJ1VzZXItQWdlbnQnOiAnVUNfVUEnLAogICAgfSwKICAgIGNsYXNzX3BhcnNlOiAnLm5hdmxpc3QmJmxpO2EmJlRleHQ7YSYmaHJlZjsuKi8oW14vXSspJywKICAgIHBsYXlfcGFyc2U6IHRydWUsCiAgICAvLyBsYXp5OicnLAogICAgbGF6eTogYGpzOgogICAgICAgIHBkZmggPSBqc3AucGRmaDsKICAgICAgICB2YXIgaHRtbCA9IHJlcXVlc3QoaW5wdXQpOwogICAgICAgIHZhciBvaHRtbCA9IHBkZmgoaHRtbCwgJy52aWRlb3BsYXkmJkh0bWwnKTsKICAgICAgICB2YXIgdXJsID0gcGRmaChvaHRtbCwgImJvZHkmJmlmcmFtZSYmc3JjIik7CiAgICAgICAgaWYgKC9DbG91ZC8udGVzdCh1cmwpKSB7CiAgICAgICAgICAgIHZhciBpZnJ3eSA9IHJlcXVlc3QodXJsKTsKICAgICAgICAgICAgbGV0IGNvZGUgPSBpZnJ3eS5tYXRjaCgvdmFyIHVybCA9ICcoLio/KScvKVsxXS5zcGxpdCgnJykucmV2ZXJzZSgpLmpvaW4oJycpOwogICAgICAgICAgICBsZXQgdGVtcCA9ICcnOwogICAgICAgICAgICBmb3IgKGxldCBpID0gMHgwOyBpIDwgY29kZS5sZW5ndGg7IGkgPSBpICsgMHgyKSB7CiAgICAgICAgICAgICAgICB0ZW1wICs9IFN0cmluZy5mcm9tQ2hhckNvZGUocGFyc2VJbnQoY29kZVtpXSArIGNvZGVbaSArIDB4MV0sIDB4MTApKQogICAgICAgICAgICB9CiAgICAgICAgICAgIGlucHV0ID0gewogICAgICAgICAgICAgICAgang6IDAsCiAgICAgICAgICAgICAgICB1cmw6IHRlbXAuc3Vic3RyaW5nKDB4MCwgKHRlbXAubGVuZ3RoIC0gMHg3KSAvIDB4MikgKyB0ZW1wLnN1YnN0cmluZygodGVtcC5sZW5ndGggLSAweDcpIC8gMHgyICsgMHg3KSwKICAgICAgICAgICAgICAgIHBhcnNlOiAwCiAgICAgICAgICAgIH0KICAgICAgICB9IGVsc2UgaWYgKC9kZWNyeXB0ZWQvLnRlc3Qob2h0bWwpKSB7CiAgICAgICAgICAgIHZhciBwaHRtbCA9IHBkZmgob2h0bWwsICJib2R5JiZzY3JpcHQ6bm90KFtzcmNdKSYmSHRtbCIpOwogICAgICAgICAgICBldmFsKGdldENyeXB0b0pTKCkpOwogICAgICAgICAgICB2YXIgc2NycHQgPSBwaHRtbC5tYXRjaCgvdmFyLio/XFwpXFwpOy9nKVswXTsKICAgICAgICAgICAgdmFyIGRhdGEgPSBbXTsKICAgICAgICAgICAgZXZhbChzY3JwdC5yZXBsYWNlKC9tZDUvZywgJ0NyeXB0b0pTJykucmVwbGFjZSgnZXZhbCcsICdkYXRhID0gJykpOwogICAgICAgICAgICBpbnB1dCA9IHsKICAgICAgICAgICAgICAgIGp4OiAwLAogICAgICAgICAgICAgICAgdXJsOiBkYXRhLm1hdGNoKC91cmw6Lio/W1xcJ1xcIl0oLio/KVtcXCdcXCJdLylbMV0sCiAgICAgICAgICAgICAgICBwYXJzZTogMAogICAgICAgICAgICB9CiAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgaW5wdXQKICAgICAgICB9CglgLAogICAgbGltaXQ6IDYsCiAgICDmjqjojZA6ICcubGVpYm94JiZsaTsqOyo7KjsqJywKICAgIC8vIGRvdWJsZTp0cnVlLCAvLyDmjqjojZDlhoXlrrnmmK/lkKblj4zlsYLlrprkvY0KICAgIOS4gOe6pzogJy5tcmImJmxpO2ltZyYmYWx0O2ltZyYmZGF0YS1vcmlnaW5hbDsuamlkaSYmVGV4dDthJiZocmVmJywKICAgIOS6jOe6pzogewogICAgICAgICJ0aXRsZSI6ICJoMSYmVGV4dDsubW92aWVkdGVhaWxfbGlzdCYmbGk6ZXEoMCkmJlRleHQiLAogICAgICAgICJpbWciOiAiLmR5aW1nJiZpbWcmJnNyYyIsCiAgICAgICAgImRlc2MiOiAiLm1vdmllZHRlYWlsX2xpc3QmJmxpOmVxKC0xKSYmVGV4dDs7Oy5tb3ZpZWR0ZWFpbF9saXN0JiZsaTplcSg3KSYmVGV4dDsubW92aWVkdGVhaWxfbGlzdCYmbGk6ZXEoNSkmJlRleHQiLAogICAgICAgICJjb250ZW50IjogIi55cF9jb250ZXh0JiZwJiZUZXh0IiwKICAgICAgICAidGFicyI6ICIubWlfcGFseV9ib3ggLnlweGluZ3FfdC0tc3BhbiIsCiAgICAgICAgImxpc3RzIjogIi5wYWx5X2xpc3RfYnRuOmVxKCNpZCkgYSIKICAgIH0sCiAgICDmkJzntKI6ICcuc2VhcmNoX2xpc3QmJmxpO2ltZyYmYWx0O2ltZyYmZGF0YS1vcmlnaW5hbDsubm9zdGFnJiZUZXh0O2EmJmhyZWYnLAp9 \ No newline at end of file diff --git a/潇洒/movie/js/SGYS.js b/潇洒/movie/js/SGYS.js new file mode 100644 index 00000000..98207251 --- /dev/null +++ b/潇洒/movie/js/SGYS.js @@ -0,0 +1 @@ +dmFyIHJ1bGUgPSB7CiAgICDnsbvlnos6ICflvbHop4YnLAogICAgdGl0bGU6ICfmgJ3lj6TlvbHop4YnLAogICAgaG9zdDogJ2h0dHBzOi8vc2lndXl5LmNuJywKICAgIHVybDogJy9zaG93L2Z5Y2xhc3MtLS0tLS0tLWZ5cGFnZS0tLS8nLAogICAgc2VhcmNoVXJsOiAnaHR0cHM6Ly9zaWd1eXkuY24vc2VhcmNoLy0tLS0tLS0tLS0tLS0vP3dkPSoqJywKICAgIHNlYXJjaGFibGU6IDIsCiAgICBxdWlja1NlYXJjaDogMCwKICAgIHRpbWVvdXQ6IDUwMDAsCiAgICBwbGF5X3BhcnNlOiB0cnVlLAogICAgZmlsdGVyYWJsZTogMCwKICAgIGNsYXNzX25hbWU6ICfnlLXlvbEm55S16KeG5YmnJue7vOiJuibliqjmvKsnLAogICAgY2xhc3NfdXJsOiAnMSYyJjMmNCcsCiAgICBsYXp5OiBganM6CiAgICAgICAgICAgIGlmKC9cXC4obTN1OHxtcDQpLy50ZXN0KGlucHV0KSl7CiAgICAgICAgICAgICAgICBpbnB1dCA9IHtwYXJzZTowLHVybDppbnB1dH0KICAgICAgICAgICAgfWVsc2V7CiAgICAgICAgICAgICAgICBpZihydWxlLnBhcnNlX3VybC5zdGFydHNXaXRoKCdqc29uOicpKXsKICAgICAgICAgICAgICAgICAgICBsZXQgcHVybCA9IHJ1bGUucGFyc2VfdXJsLnJlcGxhY2UoJ2pzb246JywnJykraW5wdXQ7CiAgICAgICAgICAgICAgICAgICAgbGV0IGh0bWwgPSByZXF1ZXN0KHB1cmwpOwogICAgICAgICAgICAgICAgICAgIGlucHV0ID0ge3BhcnNlOjAsdXJsOkpTT04ucGFyc2UoaHRtbCkudXJsfQogICAgICAgICAgICAgICAgfWVsc2V7CiAgICAgICAgICAgICAgICAgICAgaW5wdXQ9IHJ1bGUucGFyc2VfdXJsK2lucHV0OyAKICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgYCwKICAgIGhlYWRlcnM6IHsKICAgICAgICAiVXNlci1BZ2VudCI6ICJNb3ppbGxhLzUuMCAoV2luZG93cyBOVCAxMC4wOyBXaW42NDsgeDY0KSBBcHBsZVdlYktpdC81MzcuMzYgKEtIVE1MLCBsaWtlIEdlY2tvKSBDaHJvbWUvMTMxLjAuMC4wIFNhZmFyaS81MzcuMzYgRWRnLzEzMS4wLjAuMCIsCiAgICB9LAogICAg5o6o6I2QOiAnKicsCiAgICDkuIDnuqc6ICcuY29udGFpbmVyIC5mbGV4LmRlc2t0b3AtaG92ZXItZWZmZWN0O3NwYW4mJlRleHQ7aW1nJiZkYXRhLW9yaWdpbmFsO3AudHJ1bmNhdGUmJlRleHQ7YSYmaHJlZicsCiAgICDkuoznuqc6IHsKICAgICAgICB0aXRsZTogJy5wLTMubW9iaWxlJiZUZXh0JywKICAgICAgICBpbWc6ICdpbWcmJmRhdGEtb3JpZ2luYWwnLAogICAgICAgIGRlc2M6ICcudGV4dC1zbS5weS0xJiZUZXh0JywKICAgICAgICBjb250ZW50OiAnLnRleHQtc2Vjb25kYXJ5JiZUZXh0JywKICAgICAgICB0YWJzOiAnLmZsZXguZmxleC1yb3cuZ2FwLTEuaXRlbXMtY2VudGVyJywKICAgICAgICBsaXN0czogJy5mbGV4LmZsZXgtY29sdW1uLm92ZXJmbG93LWF1dG8ubm8tc2Nyb2xsYmFyJiZsaScsCiAgICAgICAgdGFiX3RleHQ6ICdib2R5JiZUZXh0JywKICAgICAgICBsaXN0X3RleHQ6ICdhJiZUZXh0JywKICAgICAgICBsaXN0X3VybDogJ2EmJmhyZWYnLAogICAgfSwKICAgIGRvdWJsZTogZmFsc2UsCiAgICDmkJzntKI6ICcuY29sLWxnLTYuY29sLW1kLTEyLm10LTIubWItMi5jdXJzb3ItcG9pbnRlcjsudG9waWMtZGV0YWlscy10aXRsZS1zdWIudGV4dC1zZWNvbmRhcnkmJlRleHQ7aW1nJiZkYXRhLW9yaWdpbmFsOy50b3BpYy1kZXRhaWxzLXRpdGxlJiZUZXh0O2EmJmhyZWYnLAp9 \ No newline at end of file diff --git a/潇洒/movie/js/SLLDM.js b/潇洒/movie/js/SLLDM.js new file mode 100644 index 00000000..ccc42cbc --- /dev/null +++ b/潇洒/movie/js/SLLDM.js @@ -0,0 +1 @@ +dmFyIHJ1bGUgPSB7CiAgICB0aXRsZTogJzM2MOW9seinhlvlrphdJywKICAgIGhvc3Q6ICdodHRwczovL3d3dy4zNjBrYW4uY29tJywKICAgIGhvbWVVcmw6ICdodHRwczovL2FwaS53ZWIuMzYwa2FuLmNvbS92MS9yYW5rP2NhdD0yJnNpemU9OScsCiAgICBkZXRhaWxVcmw6ICdodHRwczovL2FwaS53ZWIuMzYwa2FuLmNvbS92MS9kZXRhaWw/Y2F0PWZ5Y2xhc3MmaWQ9ZnlpZCcsCiAgICBzZWFyY2hVcmw6ICdodHRwczovL2FwaS5zby4zNjBrYW4uY29tL2luZGV4P2ZvcmNlX3Y9MSZrdz0qKiZmcm9tPSZwYWdlbm89ZnlwYWdlJnZfYXA9MSZ0YWI9YWxsJywKICAgIHVybDogJ2h0dHBzOi8vYXBpLndlYi4zNjBrYW4uY29tL3YxL2Z5ZmlsdGVyJnNpemU9MzUmcGFnZW5vPWZ5cGFnZSZjYWxsYmFjaz0nLAogICAgZmlsdGVyYWJsZTogMSwKICAgIGZpbHRlcl91cmw6ICdmaWx0ZXIvbGlzdD9jYXRpZD1meWNsYXNzJnJhbms9e3tmbC7mjpLluo99fSZjYXQ9e3tmbC7nsbvlnot9fSZ5ZWFyPXt7Zmwu5bm05LujfX0mYXJlYT17e2ZsLuWcsOWMun19JywKICAgIGZpbHRlcjogewogICAgICAgICIxIjogW3sKICAgICAgICAgICAgImtleSI6ICLnsbvlnosiLAogICAgICAgICAgICAibmFtZSI6ICLnsbvlnosiLAogICAgICAgICAgICAidmFsdWUiOiBbewogICAgICAgICAgICAgICAgIm4iOiAi5YWo6YOoIiwKICAgICAgICAgICAgICAgICJ2IjogIiIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5Zac5YmnIiwKICAgICAgICAgICAgICAgICJ2IjogIuWWnOWJpyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi54ix5oOFIiwKICAgICAgICAgICAgICAgICJ2IjogIueIseaDhSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5Yqo5L2cIiwKICAgICAgICAgICAgICAgICJ2IjogIuWKqOS9nCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5oGQ5oCWIiwKICAgICAgICAgICAgICAgICJ2IjogIuaBkOaAliIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi56eR5bm7IiwKICAgICAgICAgICAgICAgICJ2IjogIuenkeW5uyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5Ymn5oOFIiwKICAgICAgICAgICAgICAgICJ2IjogIuWJp+aDhSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi54qv572qIiwKICAgICAgICAgICAgICAgICJ2IjogIueKr+e9qiIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5aWH5bm7IiwKICAgICAgICAgICAgICAgICJ2IjogIuWlh+W5uyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5oiY5LqJIiwKICAgICAgICAgICAgICAgICJ2IjogIuaImOS6iSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5oKs55aRIiwKICAgICAgICAgICAgICAgICJ2IjogIuaCrOeWkSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5Yqo55S7IiwKICAgICAgICAgICAgICAgICJ2IjogIuWKqOeUuyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5paH6Im6IiwKICAgICAgICAgICAgICAgICJ2IjogIuaWh+iJuiIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi57qq5b2VIiwKICAgICAgICAgICAgICAgICJ2IjogIue6quW9lSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5Lyg6K6wIiwKICAgICAgICAgICAgICAgICJ2IjogIuS8oOiusCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5q2M6IieIiwKICAgICAgICAgICAgICAgICJ2IjogIuatjOiIniIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5Y+k6KOFIiwKICAgICAgICAgICAgICAgICJ2IjogIuWPpOijhSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5Y6G5Y+yIiwKICAgICAgICAgICAgICAgICJ2IjogIuWOhuWPsiIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5oOK5oKaIiwKICAgICAgICAgICAgICAgICJ2IjogIuaDiuaCmiIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5Lym55CGIiwKICAgICAgICAgICAgICAgICJ2IjogIuS8pueQhiIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5YW25LuWIiwKICAgICAgICAgICAgICAgICJ2IjogIuWFtuS7liIKICAgICAgICAgICAgfV0KICAgICAgICB9LCB7CiAgICAgICAgICAgICJrZXkiOiAi5Zyw5Yy6IiwKICAgICAgICAgICAgIm5hbWUiOiAi5Zyw5Yy6IiwKICAgICAgICAgICAgInZhbHVlIjogW3sKICAgICAgICAgICAgICAgICJuIjogIuWFqOmDqCIsCiAgICAgICAgICAgICAgICAidiI6ICIiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuWGheWcsCIsCiAgICAgICAgICAgICAgICAidiI6ICLlpKfpmYYiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuS4reWbvemmmea4ryIsCiAgICAgICAgICAgICAgICAidiI6ICLpppnmuK8iCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuS4reWbveWPsOa5viIsCiAgICAgICAgICAgICAgICAidiI6ICLlj7Dmub4iCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuazsOWbvSIsCiAgICAgICAgICAgICAgICAidiI6ICLms7Dlm70iCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIue+juWbvSIsCiAgICAgICAgICAgICAgICAidiI6ICLnvo7lm70iCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIumfqeWbvSIsCiAgICAgICAgICAgICAgICAidiI6ICLpn6nlm70iCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuaXpeacrCIsCiAgICAgICAgICAgICAgICAidiI6ICLml6XmnKwiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuazleWbvSIsCiAgICAgICAgICAgICAgICAidiI6ICLms5Xlm70iCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuiLseWbvSIsCiAgICAgICAgICAgICAgICAidiI6ICLoi7Hlm70iCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuW+t+WbvSIsCiAgICAgICAgICAgICAgICAidiI6ICLlvrflm70iCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuWNsOW6piIsCiAgICAgICAgICAgICAgICAidiI6ICLljbDluqYiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuWFtuS7liIsCiAgICAgICAgICAgICAgICAidiI6ICLlhbbku5YiCiAgICAgICAgICAgIH1dCiAgICAgICAgfSwgewogICAgICAgICAgICAia2V5IjogIuW5tOS7oyIsCiAgICAgICAgICAgICJuYW1lIjogIuW5tOS7oyIsCiAgICAgICAgICAgICJ2YWx1ZSI6IFt7CiAgICAgICAgICAgICAgICAibiI6ICLlhajpg6giLAogICAgICAgICAgICAgICAgInYiOiAiIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDI1IiwKICAgICAgICAgICAgICAgICJ2IjogIjIwMjUiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMjQiLAogICAgICAgICAgICAgICAgInYiOiAiMjAyNCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAyMyIsCiAgICAgICAgICAgICAgICAidiI6ICIyMDIzIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDIyIiwKICAgICAgICAgICAgICAgICJ2IjogIjIwMjIiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMjEiLAogICAgICAgICAgICAgICAgInYiOiAiMjAyMSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAyMCIsCiAgICAgICAgICAgICAgICAidiI6ICIyMDIwIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDE5IiwKICAgICAgICAgICAgICAgICJ2IjogIjIwMTkiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMTgiLAogICAgICAgICAgICAgICAgInYiOiAiMjAxOCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAxNyIsCiAgICAgICAgICAgICAgICAidiI6ICIyMDE3IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDE2IiwKICAgICAgICAgICAgICAgICJ2IjogIjIwMTYiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMTUiLAogICAgICAgICAgICAgICAgInYiOiAiMjAxNSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAxNCIsCiAgICAgICAgICAgICAgICAidiI6ICIyMDE0IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDEzIiwKICAgICAgICAgICAgICAgICJ2IjogIjIwMTMiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMTIiLAogICAgICAgICAgICAgICAgInYiOiAiMjAxMiIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAxMCIsCiAgICAgICAgICAgICAgICAidiI6ICIyMDEwIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDA5IiwKICAgICAgICAgICAgICAgICJ2IjogIjIwMDkiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMDgiLAogICAgICAgICAgICAgICAgInYiOiAiMjAwOCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAwNyIsCiAgICAgICAgICAgICAgICAidiI6ICIyMDA3IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLmm7Tml6kiLAogICAgICAgICAgICAgICAgInYiOiAibHRfeWVhciIKICAgICAgICAgICAgfV0KICAgICAgICB9LCB7CiAgICAgICAgICAgICJrZXkiOiAi5o6S5bqPIiwKICAgICAgICAgICAgIm5hbWUiOiAi5o6S5bqPIiwKICAgICAgICAgICAgInZhbHVlIjogW3sKICAgICAgICAgICAgICAgICJuIjogIuacgOi/keeDreaYoCIsCiAgICAgICAgICAgICAgICAidiI6ICJyYW5raG90IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLmnIDov5HkuIrmmKAiLAogICAgICAgICAgICAgICAgInYiOiAicmFua2xhdGVzdCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5pyA5Y+X5aW96K+EIiwKICAgICAgICAgICAgICAgICJ2IjogInJhbmtwb2ludCIKICAgICAgICAgICAgfV0KICAgICAgICB9XSwKICAgICAgICAiMiI6IFt7CiAgICAgICAgICAgICJrZXkiOiAi57G75Z6LIiwKICAgICAgICAgICAgIm5hbWUiOiAi57G75Z6LIiwKICAgICAgICAgICAgInZhbHVlIjogW3sKICAgICAgICAgICAgICAgICJuIjogIuWFqOmDqCIsCiAgICAgICAgICAgICAgICAidiI6ICIiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuiogOaDhSIsCiAgICAgICAgICAgICAgICAidiI6ICLoqIDmg4UiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuWJp+aDhSIsCiAgICAgICAgICAgICAgICAidiI6ICLliafmg4UiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuS8pueQhiIsCiAgICAgICAgICAgICAgICAidiI6ICLkvKbnkIYiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuWWnOWJpyIsCiAgICAgICAgICAgICAgICAidiI6ICLllpzliaciCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuaCrOeWkSIsCiAgICAgICAgICAgICAgICAidiI6ICLmgqznlpEiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIumDveW4giIsCiAgICAgICAgICAgICAgICAidiI6ICLpg73luIIiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuWBtuWDjyIsCiAgICAgICAgICAgICAgICAidiI6ICLlgbblg48iCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuWPpOijhSIsCiAgICAgICAgICAgICAgICAidiI6ICLlj6Too4UiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuWGm+S6iyIsCiAgICAgICAgICAgICAgICAidiI6ICLlhpvkuosiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuitpuWMqiIsCiAgICAgICAgICAgICAgICAidiI6ICLorabljKoiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuWOhuWPsiIsCiAgICAgICAgICAgICAgICAidiI6ICLljoblj7IiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuWKseW/lyIsCiAgICAgICAgICAgICAgICAidiI6ICLlirHlv5ciCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuelnuivnSIsCiAgICAgICAgICAgICAgICAidiI6ICLnpZ7or50iCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuiwjeaImCIsCiAgICAgICAgICAgICAgICAidiI6ICLosI3miJgiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIumdkuaYpSIsCiAgICAgICAgICAgICAgICAidiI6ICLpnZLmmKXliaciCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuWutuW6rSIsCiAgICAgICAgICAgICAgICAidiI6ICLlrrbluq3liaciCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuWKqOS9nCIsCiAgICAgICAgICAgICAgICAidiI6ICLliqjkvZwiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuaDheaZryIsCiAgICAgICAgICAgICAgICAidiI6ICLmg4Xmma8iCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuatpuS+oCIsCiAgICAgICAgICAgICAgICAidiI6ICLmrabkvqAiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuenkeW5uyIsCiAgICAgICAgICAgICAgICAidiI6ICLnp5HlubsiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuWFtuS7liIsCiAgICAgICAgICAgICAgICAidiI6ICLlhbbku5YiCiAgICAgICAgICAgIH1dCiAgICAgICAgfSwgewogICAgICAgICAgICAia2V5IjogIuWcsOWMuiIsCiAgICAgICAgICAgICJuYW1lIjogIuWcsOWMuiIsCiAgICAgICAgICAgICJ2YWx1ZSI6IFt7CiAgICAgICAgICAgICAgICAibiI6ICLlhajpg6giLAogICAgICAgICAgICAgICAgInYiOiAiIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLlhoXlnLAiLAogICAgICAgICAgICAgICAgInYiOiAi5YaF5ZywIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLkuK3lm73pppnmuK8iLAogICAgICAgICAgICAgICAgInYiOiAi6aaZ5rivIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLkuK3lm73lj7Dmub4iLAogICAgICAgICAgICAgICAgInYiOiAi5Y+w5rm+IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLms7Dlm70iLAogICAgICAgICAgICAgICAgInYiOiAi5rOw5Zu9IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLml6XmnKwiLAogICAgICAgICAgICAgICAgInYiOiAi5pel5pysIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLpn6nlm70iLAogICAgICAgICAgICAgICAgInYiOiAi6Z+p5Zu9IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLnvo7lm70iLAogICAgICAgICAgICAgICAgInYiOiAi576O5Zu9IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLoi7Hlm70iLAogICAgICAgICAgICAgICAgInYiOiAi6Iux5Zu9IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLmlrDliqDlnaEiLAogICAgICAgICAgICAgICAgInYiOiAi5paw5Yqg5Z2hIgogICAgICAgICAgICB9XQogICAgICAgIH0sIHsKICAgICAgICAgICAgImtleSI6ICLlubTku6MiLAogICAgICAgICAgICAibmFtZSI6ICLlubTku6MiLAogICAgICAgICAgICAidmFsdWUiOiBbewogICAgICAgICAgICAgICAgIm4iOiAi5YWo6YOoIiwKICAgICAgICAgICAgICAgICJ2IjogIiIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAyNSIsCiAgICAgICAgICAgICAgICAidiI6ICIyMDI1IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDI0IiwKICAgICAgICAgICAgICAgICJ2IjogIjIwMjQiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMjMiLAogICAgICAgICAgICAgICAgInYiOiAiMjAyMyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAyMiIsCiAgICAgICAgICAgICAgICAidiI6ICIyMDIyIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDIxIiwKICAgICAgICAgICAgICAgICJ2IjogIjIwMjEiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMjAiLAogICAgICAgICAgICAgICAgInYiOiAiMjAyMCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAxOSIsCiAgICAgICAgICAgICAgICAidiI6ICIyMDE5IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDE4IiwKICAgICAgICAgICAgICAgICJ2IjogIjIwMTgiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMTciLAogICAgICAgICAgICAgICAgInYiOiAiMjAxNyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAxNiIsCiAgICAgICAgICAgICAgICAidiI6ICIyMDE2IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDE1IiwKICAgICAgICAgICAgICAgICJ2IjogIjIwMTUiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMTQiLAogICAgICAgICAgICAgICAgInYiOiAiMjAxNCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAxMyIsCiAgICAgICAgICAgICAgICAidiI6ICIyMDEzIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDEyIiwKICAgICAgICAgICAgICAgICJ2IjogIjIwMTIiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMTAiLAogICAgICAgICAgICAgICAgInYiOiAiMjAxMCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAwOSIsCiAgICAgICAgICAgICAgICAidiI6ICIyMDA5IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDA4IiwKICAgICAgICAgICAgICAgICJ2IjogIjIwMDgiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMDciLAogICAgICAgICAgICAgICAgInYiOiAiMjAwNyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5pu05pepIiwKICAgICAgICAgICAgICAgICJ2IjogImx0X3llYXIiCiAgICAgICAgICAgIH1dCiAgICAgICAgfSwgewogICAgICAgICAgICAia2V5IjogIuaOkuW6jyIsCiAgICAgICAgICAgICJuYW1lIjogIuaOkuW6jyIsCiAgICAgICAgICAgICJ2YWx1ZSI6IFt7CiAgICAgICAgICAgICAgICAibiI6ICLmnIDov5Hng63mmKAiLAogICAgICAgICAgICAgICAgInYiOiAicmFua2hvdCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5pyA6L+R5LiK5pigIiwKICAgICAgICAgICAgICAgICJ2IjogInJhbmtsYXRlc3QiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuacgOWPl+WlveivhCIsCiAgICAgICAgICAgICAgICAidiI6ICJyYW5rcG9pbnQiCiAgICAgICAgICAgIH1dCiAgICAgICAgfV0sCiAgICAgICAgIjMiOiBbewogICAgICAgICAgICAia2V5IjogIuexu+WeiyIsCiAgICAgICAgICAgICJuYW1lIjogIuexu+WeiyIsCiAgICAgICAgICAgICJ2YWx1ZSI6IFt7CiAgICAgICAgICAgICAgICAibiI6ICLlhajpg6giLAogICAgICAgICAgICAgICAgInYiOiAiIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLohLHlj6Pnp4AiLAogICAgICAgICAgICAgICAgInYiOiAi6ISx5Y+j56eAIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLnnJ/kurrnp4AiLAogICAgICAgICAgICAgICAgInYiOiAi55yf5Lq656eAIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLmkJ7nrJEiLAogICAgICAgICAgICAgICAgInYiOiAi5pCe56yRIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLpgInnp4AiLAogICAgICAgICAgICAgICAgInYiOiAi6YCJ56eAIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLlhavljaYiLAogICAgICAgICAgICAgICAgInYiOiAi5YWr5Y2mIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLorr/osIgiLAogICAgICAgICAgICAgICAgInYiOiAi6K6/6LCIIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLmg4XmhJ8iLAogICAgICAgICAgICAgICAgInYiOiAi5oOF5oSfIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLnlJ/mtLsiLAogICAgICAgICAgICAgICAgInYiOiAi55Sf5rS7IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLmmZrkvJoiLAogICAgICAgICAgICAgICAgInYiOiAi5pma5LyaIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLpn7PkuZAiLAogICAgICAgICAgICAgICAgInYiOiAi6Z+z5LmQIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLogYzlnLoiLAogICAgICAgICAgICAgICAgInYiOiAi6IGM5Zy6IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLnvo7po58iLAogICAgICAgICAgICAgICAgInYiOiAi576O6aOfIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLml7blsJoiLAogICAgICAgICAgICAgICAgInYiOiAi5pe25bCaIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLmuLjmiI8iLAogICAgICAgICAgICAgICAgInYiOiAi5ri45oiPIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLlsJHlhL8iLAogICAgICAgICAgICAgICAgInYiOiAi5bCR5YS/IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLkvZPogrIiLAogICAgICAgICAgICAgICAgInYiOiAi5L2T6IKyIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLnuqrlrp4iLAogICAgICAgICAgICAgICAgInYiOiAi57qq5a6eIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLnp5HmlZkiLAogICAgICAgICAgICAgICAgInYiOiAi56eR5pWZIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLmm7LoiboiLAogICAgICAgICAgICAgICAgInYiOiAi5puy6Im6IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLmrYzoiJ4iLAogICAgICAgICAgICAgICAgInYiOiAi5q2M6IieIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLotKLnu48iLAogICAgICAgICAgICAgICAgInYiOiAi6LSi57uPIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLmsb3ovaYiLAogICAgICAgICAgICAgICAgInYiOiAi5rG96L2mIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLmkq3miqUiLAogICAgICAgICAgICAgICAgInYiOiAi5pKt5oqlIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLlhbbku5YiLAogICAgICAgICAgICAgICAgInYiOiAi5YW25LuWIgogICAgICAgICAgICB9XQogICAgICAgIH0sIHsKICAgICAgICAgICAgImtleSI6ICLlnLDljLoiLAogICAgICAgICAgICAibmFtZSI6ICLlnLDljLoiLAogICAgICAgICAgICAidmFsdWUiOiBbewogICAgICAgICAgICAgICAgIm4iOiAi5YWo6YOoIiwKICAgICAgICAgICAgICAgICJ2IjogIiIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5YaF5ZywIiwKICAgICAgICAgICAgICAgICJ2IjogIuWkp+mZhiIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5Lit5Zu96aaZ5rivIiwKICAgICAgICAgICAgICAgICJ2IjogIummmea4ryIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5Lit5Zu95Y+w5rm+IiwKICAgICAgICAgICAgICAgICJ2IjogIuWPsOa5viIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5pel5pysIiwKICAgICAgICAgICAgICAgICJ2IjogIuaXpeacrCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5qyn576OIiwKICAgICAgICAgICAgICAgICJ2IjogIuasp+e+jiIKICAgICAgICAgICAgfV0KICAgICAgICB9LCB7CiAgICAgICAgICAgICJrZXkiOiAi5o6S5bqPIiwKICAgICAgICAgICAgIm5hbWUiOiAi5o6S5bqPIiwKICAgICAgICAgICAgInZhbHVlIjogW3sKICAgICAgICAgICAgICAgICJuIjogIuacgOi/keeDreaYoCIsCiAgICAgICAgICAgICAgICAidiI6ICJyYW5raG90IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLmnIDov5HkuIrmmKAiLAogICAgICAgICAgICAgICAgInYiOiAicmFua2xhdGVzdCIKICAgICAgICAgICAgfV0KICAgICAgICB9XSwKICAgICAgICAiNCI6IFt7CiAgICAgICAgICAgICJrZXkiOiAi57G75Z6LIiwKICAgICAgICAgICAgIm5hbWUiOiAi57G75Z6LIiwKICAgICAgICAgICAgInZhbHVlIjogW3sKICAgICAgICAgICAgICAgICJuIjogIuWFqOmDqCIsCiAgICAgICAgICAgICAgICAidiI6ICIiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIueDreihgCIsCiAgICAgICAgICAgICAgICAidiI6ICLng63ooYAiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuenkeW5uyIsCiAgICAgICAgICAgICAgICAidiI6ICLnp5HlubsiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIue+juWwkeWlsyIsCiAgICAgICAgICAgICAgICAidiI6ICLnvo7lsJHlpbMiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIumtlOW5uyIsCiAgICAgICAgICAgICAgICAidiI6ICLprZTlubsiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIue7j+WFuCIsCiAgICAgICAgICAgICAgICAidiI6ICLnu4/lhbgiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuWKseW/lyIsCiAgICAgICAgICAgICAgICAidiI6ICLlirHlv5ciCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuWwkeWEvyIsCiAgICAgICAgICAgICAgICAidiI6ICLlsJHlhL8iCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuWGkumZqSIsCiAgICAgICAgICAgICAgICAidiI6ICLlhpLpmakiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuaQnueskSIsCiAgICAgICAgICAgICAgICAidiI6ICLmkJ7nrJEiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuaOqOeQhiIsCiAgICAgICAgICAgICAgICAidiI6ICLmjqjnkIYiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuaBi+eIsSIsCiAgICAgICAgICAgICAgICAidiI6ICLmgYvniLEiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuayu+aEiCIsCiAgICAgICAgICAgICAgICAidiI6ICLmsrvmhIgiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuW5u+aDsyIsCiAgICAgICAgICAgICAgICAidiI6ICLlubvmg7MiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuagoeWbrSIsCiAgICAgICAgICAgICAgICAidiI6ICLmoKHlm60iCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuWKqOeJqSIsCiAgICAgICAgICAgICAgICAidiI6ICLliqjniakiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuacuuaImCIsCiAgICAgICAgICAgICAgICAidiI6ICLmnLrmiJgiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuS6suWtkCIsCiAgICAgICAgICAgICAgICAidiI6ICLkurLlrZAiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuWEv+atjCIsCiAgICAgICAgICAgICAgICAidiI6ICLlhL/mrYwiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIui/kOWKqCIsCiAgICAgICAgICAgICAgICAidiI6ICLov5DliqgiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuaCrOeWkSIsCiAgICAgICAgICAgICAgICAidiI6ICLmgqznlpEiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuaAqueJqSIsCiAgICAgICAgICAgICAgICAidiI6ICLmgKrniakiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuaImOS6iSIsCiAgICAgICAgICAgICAgICAidiI6ICLmiJjkuokiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuebiuaZuiIsCiAgICAgICAgICAgICAgICAidiI6ICLnm4rmmboiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIumdkuaYpSIsCiAgICAgICAgICAgICAgICAidiI6ICLpnZLmmKUiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuerpeivnSIsCiAgICAgICAgICAgICAgICAidiI6ICLnq6Xor50iCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuernuaKgCIsCiAgICAgICAgICAgICAgICAidiI6ICLnq57mioAiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuWKqOS9nCIsCiAgICAgICAgICAgICAgICAidiI6ICLliqjkvZwiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuekvuS8miIsCiAgICAgICAgICAgICAgICAidiI6ICLnpL7kvJoiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuWPi+aDhSIsCiAgICAgICAgICAgICAgICAidiI6ICLlj4vmg4UiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuecn+S6uueJiCIsCiAgICAgICAgICAgICAgICAidiI6ICLnnJ/kurrniYgiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIueUteW9seeJiCIsCiAgICAgICAgICAgICAgICAidiI6ICLnlLXlvbHniYgiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIk9WQeeJiCIsCiAgICAgICAgICAgICAgICAidiI6ICJPVkHniYgiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIlRW54mIIiwKICAgICAgICAgICAgICAgICJ2IjogIlRW54mIIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLmlrDnlarliqjnlLsiLAogICAgICAgICAgICAgICAgInYiOiAi5paw55Wq5Yqo55S7IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLlroznu5PliqjnlLsiLAogICAgICAgICAgICAgICAgInYiOiAi5a6M57uT5Yqo55S7IgogICAgICAgICAgICB9XQogICAgICAgIH0sIHsKICAgICAgICAgICAgImtleSI6ICLlnLDljLoiLAogICAgICAgICAgICAibmFtZSI6ICLlnLDljLoiLAogICAgICAgICAgICAidmFsdWUiOiBbewogICAgICAgICAgICAgICAgIm4iOiAi5YWo6YOoIiwKICAgICAgICAgICAgICAgICJ2IjogIiIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5YaF5ZywIiwKICAgICAgICAgICAgICAgICJ2IjogIuWkp+mZhiIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5pel5pysIiwKICAgICAgICAgICAgICAgICJ2IjogIuaXpeacrCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi576O5Zu9IiwKICAgICAgICAgICAgICAgICJ2IjogIue+juWbvSIKICAgICAgICAgICAgfV0KICAgICAgICB9LCB7CiAgICAgICAgICAgICJrZXkiOiAi5bm05LujIiwKICAgICAgICAgICAgIm5hbWUiOiAi5bm05LujIiwKICAgICAgICAgICAgInZhbHVlIjogW3sKICAgICAgICAgICAgICAgICJuIjogIuWFqOmDqCIsCiAgICAgICAgICAgICAgICAidiI6ICIiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMjUiLAogICAgICAgICAgICAgICAgInYiOiAiMjAyNSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAyNCIsCiAgICAgICAgICAgICAgICAidiI6ICIyMDI0IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDIzIiwKICAgICAgICAgICAgICAgICJ2IjogIjIwMjMiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMjIiLAogICAgICAgICAgICAgICAgInYiOiAiMjAyMiIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAyMSIsCiAgICAgICAgICAgICAgICAidiI6ICIyMDIxIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDIwIiwKICAgICAgICAgICAgICAgICJ2IjogIjIwMjAiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMTkiLAogICAgICAgICAgICAgICAgInYiOiAiMjAxOSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAxOCIsCiAgICAgICAgICAgICAgICAidiI6ICIyMDE4IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDE3IiwKICAgICAgICAgICAgICAgICJ2IjogIjIwMTciCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMTYiLAogICAgICAgICAgICAgICAgInYiOiAiMjAxNiIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAxNSIsCiAgICAgICAgICAgICAgICAidiI6ICIyMDE1IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDE0IiwKICAgICAgICAgICAgICAgICJ2IjogIjIwMTQiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMTMiLAogICAgICAgICAgICAgICAgInYiOiAiMjAxMyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAxMiIsCiAgICAgICAgICAgICAgICAidiI6ICIyMDEyIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDExIiwKICAgICAgICAgICAgICAgICJ2IjogIjIwMTEiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMTAiLAogICAgICAgICAgICAgICAgInYiOiAiMjAxMCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAwOSIsCiAgICAgICAgICAgICAgICAidiI6ICIyMDA5IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDA4IiwKICAgICAgICAgICAgICAgICJ2IjogIjIwMDgiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMDciLAogICAgICAgICAgICAgICAgInYiOiAiMjAwNyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAwNiIsCiAgICAgICAgICAgICAgICAidiI6ICIyMDA2IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDA1IiwKICAgICAgICAgICAgICAgICJ2IjogIjIwMDUiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMDQiLAogICAgICAgICAgICAgICAgInYiOiAiMjAwNCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5pu05pepIiwKICAgICAgICAgICAgICAgICJ2IjogIuabtOaXqSIKICAgICAgICAgICAgfV0KICAgICAgICB9LCB7CiAgICAgICAgICAgICJrZXkiOiAi5o6S5bqPIiwKICAgICAgICAgICAgIm5hbWUiOiAi5o6S5bqPIiwKICAgICAgICAgICAgInZhbHVlIjogW3sKICAgICAgICAgICAgICAgICJuIjogIuacgOi/keeDreaYoCIsCiAgICAgICAgICAgICAgICAidiI6ICJyYW5raG90IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLmnIDov5HkuIrmmKAiLAogICAgICAgICAgICAgICAgInYiOiAicmFua2xhdGVzdCIKICAgICAgICAgICAgfV0KICAgICAgICB9XQogICAgfSwKICAgIGZpbHRlcl9kZWY6IHt9LAogICAgaGVhZGVyczogewogICAgICAgICdVc2VyLUFnZW50JzogJ01PQklMRV9VQScKICAgIH0sCiAgICB0aW1lb3V0OiA1MDAwLAogICAgY2xhc3NfbmFtZTogJ+eUteinhuWJpybnlLXlvbEm57u86Im6JuWKqOa8qycsCiAgICBjbGFzc191cmw6ICcyJjEmMyY0JywKICAgIGxpbWl0OiA1LAogICAgbXVsdGk6IDEsCiAgICBzZWFyY2hhYmxlOiAyLAogICAgcGxheV9wYXJzZTogdHJ1ZSwKICAgIGxhenk6ICRqcy50b1N0cmluZygoKSA9PiB7CiAgICAgICAgdHJ5IHsKICAgICAgICAgICAgbGV0IGFwaSA9ICIiICsgaW5wdXQuc3BsaXQoIj8iKVswXTsKICAgICAgICAgICAgY29uc29sZS5sb2coYXBpKTsKICAgICAgICAgICAgbGV0IHJlc3BvbnNlID0gZmV0Y2goYXBpLCB7CiAgICAgICAgICAgICAgICBtZXRob2Q6ICdnZXQnLAogICAgICAgICAgICAgICAgaGVhZGVyczogewogICAgICAgICAgICAgICAgICAgICdVc2VyLUFnZW50JzogJ29raHR0cC8zLjE0LjknLAogICAgICAgICAgICAgICAgICAgICdDb250ZW50LVR5cGUnOiAnYXBwbGljYXRpb24veC13d3ctZm9ybS11cmxlbmNvZGVkJwogICAgICAgICAgICAgICAgfQogICAgICAgICAgICB9KTsKICAgICAgICAgICAgbGV0IGJhdGEgPSBKU09OLnBhcnNlKHJlc3BvbnNlKTsKICAgICAgICAgICAgaWYgKGJhdGEudXJsLmluY2x1ZGVzKCJxcSxxaXlpLGltZ28seW91a3UsbGVzaGksYmlsaWJpbGkxLG0xOTA1IikpIHsKICAgICAgICAgICAgICAgIGlucHV0ID0gewogICAgICAgICAgICAgICAgICAgIHBhcnNlOiAwLAogICAgICAgICAgICAgICAgICAgIHVybDogYmF0YS51cmwsCiAgICAgICAgICAgICAgICAgICAgang6IDAsCiAgICAgICAgICAgICAgICAgICAgZGFubWFrdTogImh0dHA6Ly8xMDMuNDUuMTYyLjIwNzoyNTI1Mi9oYmRtLnBocD9rZXk9Nzg5NDU2MTIzMiZpZD0iICsgaW5wdXQuc3BsaXQoIj8iKVswXQogICAgICAgICAgICAgICAgfTsKICAgICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgICAgIGlucHV0ID0gewogICAgICAgICAgICAgICAgICAgIHBhcnNlOiAwLAogICAgICAgICAgICAgICAgICAgIHVybDogaW5wdXQuc3BsaXQoIj8iKVswXSwKICAgICAgICAgICAgICAgICAgICBqeDogMSwKICAgICAgICAgICAgICAgICAgICBkYW5tYWt1OiAiaHR0cDovLzEwMy40NS4xNjIuMjA3OjI1MjUyL2hiZG0ucGhwP2tleT03ODk0NTYxMjMyJmlkPSIgKyBpbnB1dC5zcGxpdCgiPyIpWzBdCiAgICAgICAgICAgICAgICB9OwogICAgICAgICAgICB9CiAgICAgICAgfSBjYXRjaCB7CiAgICAgICAgICAgIGlucHV0ID0gewogICAgICAgICAgICAgICAgcGFyc2U6IDAsCiAgICAgICAgICAgICAgICB1cmw6IGlucHV0LnNwbGl0KCI/IilbMF0sCiAgICAgICAgICAgICAgICBqeDogMSwKICAgICAgICAgICAgICAgIGRhbm1ha3U6ICJodHRwOi8vMTAzLjQ1LjE2Mi4yMDc6MjUyNTIvaGJkbS5waHA/a2V5PTc4OTQ1NjEyMzImaWQ9IiArIGlucHV0LnNwbGl0KCI/IilbMF0KICAgICAgICAgICAgfTsKICAgICAgICB9CiAgICB9KSwKICAgIC8vIOeWkeS8vHQ05LiT55So55qECiAgICAvLyBsYXp5OidqczppbnB1dD17cGFyc2U6IDEsIHBsYXlVcmw6ICIiLCBqeDogMSwgdXJsOiBpbnB1dC5zcGxpdCgiPyIpWzBdfScsCiAgICAvLyDmiYvliqjosIPnlKjop6PmnpDor7fmsYJqc29u55qEdXJsLOatpGxhennkuI3mlrnkvr8KICAgIC8vIGxhenk6J2pzOmlucHV0PSJodHRwczovL2NhY2hlLmpzb24uaWN1L2hvbWUvYXBpP3R5cGU9eXMmdWlkPTI5Mjc5NiZrZXk9Zm5vcnlBQkRFRkpOUFFWMjY5JnVybD0iK2lucHV0LnNwbGl0KCI/IilbMF07bG9nKGlucHV0KTtsZXQgaHRtbD1KU09OLnBhcnNlKHJlcXVlc3QoaW5wdXQpKTtsb2coaHRtbCk7aW5wdXQ9aHRtbC51cmx8fGlucHV0JywKICAgIOaOqOiNkDogJ2pzb246ZGF0YTt0aXRsZTtjb3Zlcjtjb21tZW50O2NhdCtlbnRfaWQ7ZGVzY3JpcHRpb24nLAogICAg5LiA57qnOiAnanNvbjpkYXRhLm1vdmllczt0aXRsZTtjb3ZlcjtwdWJkYXRlO2lkO2Rlc2NyaXB0aW9uJywKICAgIOS6jOe6pzogJycsCiAgICDkuoznuqc6ICRqcy50b1N0cmluZygoKSA9PiB7CiAgICAgICAgbGV0IGh0bWwgPSBKU09OLnBhcnNlKGZldGNoKGlucHV0LCBmZXRjaF9wYXJhbXMpKTsKICAgICAgICBsZXQgZGF0YSA9IGh0bWwuZGF0YTsKICAgICAgICBsZXQgdGlsdGUgPSBkYXRhLnRpdGxlOwogICAgICAgIGxldCBpbWcgPSBkYXRhLmNkbmNvdmVyOwogICAgICAgIGxldCB2b2RfdHlwZSA9IGRhdGEubW92aWVjYXRlZ29yeS5qb2luKCIsIik7CiAgICAgICAgbGV0IGFyZWEgPSBkYXRhLmFyZWEuam9pbigiLCIpOwogICAgICAgIGxldCBkaXJlY3RvciA9IGRhdGEuZGlyZWN0b3Iuam9pbigiLCIpOwogICAgICAgIGxldCBhY3RvciA9IGRhdGEuYWN0b3Iuam9pbigiLCIpOwogICAgICAgIGxldCBjb250ZW50ID0gZGF0YS5kZXNjcmlwdGlvbjsKICAgICAgICBsZXQgYmFzZV92b2QgPSB7CiAgICAgICAgICAgIHZvZF9pZDogaW5wdXQsCiAgICAgICAgICAgIHZvZF9uYW1lOiB0aWx0ZSwKICAgICAgICAgICAgdHlwZV9uYW1lOiB2b2RfdHlwZSwKICAgICAgICAgICAgdm9kX2FjdG9yOiBhY3RvciwKICAgICAgICAgICAgdm9kX2RpcmVjdG9yOiBkaXJlY3RvciwKICAgICAgICAgICAgdm9kX2NvbnRlbnQ6IGNvbnRlbnQsCiAgICAgICAgICAgIHZvZF9yZW1hcmtzOiBhcmVhLAogICAgICAgICAgICB2b2RfcGljOiB1cmxqb2luMihpbnB1dCwgaW1nKQogICAgICAgIH07CiAgICAgICAgbGV0IGRlbHRhID0gNTA7CiAgICAgICAgbGV0IHZvZF9wbGF5ID0ge307CiAgICAgICAgbGV0IHNpdGVzID0gZGF0YS5wbGF5bGlua19zaXRlczsKICAgICAgICBzaXRlcy5mb3JFYWNoKGZ1bmN0aW9uKHNpdGUpIHsKICAgICAgICAgICAgbGV0IHBsYXlMaXN0ID0gIiI7CiAgICAgICAgICAgIGxldCB2b2RJdGVtcyA9IFtdOwogICAgICAgICAgICBwcmludChkYXRhKQogICAgICAgICAgICBpZiAoZGF0YS5hbGx1cGluZm8pIHsKICAgICAgICAgICAgICAgIGxldCB0b3RhbCA9IHBhcnNlSW50KGRhdGEuYWxsdXBpbmZvW3NpdGVdKTsKICAgICAgICAgICAgICAgIHByaW50KHRvdGFsKQogICAgICAgICAgICAgICAgZm9yIChsZXQgaiA9IDE7IGogPCB0b3RhbDsgaiArPSBkZWx0YSkgewogICAgICAgICAgICAgICAgICAgIGxldCBlbmQgPSBNYXRoLm1pbih0b3RhbCwgaiArIGRlbHRhIC0gMSk7CiAgICAgICAgICAgICAgICAgICAgcHJpbnQoZW5kKQogICAgICAgICAgICAgICAgICAgIGxldCB1cmwyID0gYnVpbGRVcmwoaW5wdXQsIHsKICAgICAgICAgICAgICAgICAgICAgICAgc3RhcnQ6IGosCiAgICAgICAgICAgICAgICAgICAgICAgIGVuZDogZW5kLAogICAgICAgICAgICAgICAgICAgICAgICBzaXRlOiBzaXRlCiAgICAgICAgICAgICAgICAgICAgfSk7CiAgICAgICAgICAgICAgICAgICAgbGV0IHZvZF9kYXRhID0gSlNPTi5wYXJzZShmZXRjaCh1cmwyKSwgZmV0Y2hfcGFyYW1zKS5kYXRhOwogICAgICAgICAgICAgICAgICAgIGlmICh2b2RfZGF0YSAhPSBudWxsKSB7CiAgICAgICAgICAgICAgICAgICAgICAgIGlmICh2b2RfZGF0YS5hbGxlcGlkZXRhaWwpIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZvZF9kYXRhID0gdm9kX2RhdGEuYWxsZXBpZGV0YWlsW3NpdGVdOwogICAgICAgICAgICAgICAgICAgICAgICAgICAgdm9kX2RhdGEuZm9yRWFjaChmdW5jdGlvbihpdGVtLCBpbmRleCkgewogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZvZEl0ZW1zLnB1c2goKGl0ZW0ucGxheWxpbmtfbnVtIHx8ICIiKSArICIkIiArIHVybERlYWwoaXRlbS51cmwgfHwgIiIpKQogICAgICAgICAgICAgICAgICAgICAgICAgICAgfSkKICAgICAgICAgICAgICAgICAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgIHZvZF9kYXRhID0gdm9kX2RhdGEuZGVmYXVsdGVwaXNvZGU7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICB2b2RfZGF0YS5mb3JFYWNoKGZ1bmN0aW9uKGl0ZW0sIGluZGV4KSB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdm9kSXRlbXMucHVzaCgoaXRlbS5wZXJpb2QgfHwgIiIpICsgKGl0ZW0ubmFtZSB8fCAiIikgKyAiJCIgKyB1cmxEZWFsKGl0ZW0udXJsKSB8fCAiIikKICAgICAgICAgICAgICAgICAgICAgICAgICAgIH0pCiAgICAgICAgICAgICAgICAgICAgICAgIH0KICAgICAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgICAgICB9CiAgICAgICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgICAgICBsZXQgaXRlbSA9IGRhdGEucGxheWxpbmtzZGV0YWlsW3NpdGVdOwogICAgICAgICAgICAgICAgdm9kSXRlbXMucHVzaCgoaXRlbS5zb3J0IHx8ICIiKSArICIkIiArIHVybERlYWwoaXRlbS5kZWZhdWx0X3VybCB8fCAiIikpCiAgICAgICAgICAgIH0KICAgICAgICAgICAgaWYgKHZvZEl0ZW1zLmxlbmd0aCA+IDApIHsKICAgICAgICAgICAgICAgIHBsYXlMaXN0ID0gdm9kSXRlbXMuam9pbigiIyIpCiAgICAgICAgICAgIH0KICAgICAgICAgICAgaWYgKHBsYXlMaXN0Lmxlbmd0aCA8IDEpIHsKICAgICAgICAgICAgICAgIHJldHVybgogICAgICAgICAgICB9CiAgICAgICAgICAgIHZvZF9wbGF5W3NpdGVdID0gcGxheUxpc3QKICAgICAgICB9KTsKICAgICAgICBsZXQgdGFicyA9IE9iamVjdC5rZXlzKHZvZF9wbGF5KTsKICAgICAgICBsZXQgcGxheVVybHMgPSBbXTsKICAgICAgICBmb3IgKGxldCBpZCBpbiB0YWJzKSB7CiAgICAgICAgICAgIHByaW50KCJpZDoiICsgaWQpOwogICAgICAgICAgICBwbGF5VXJscy5wdXNoKHZvZF9wbGF5W3RhYnNbaWRdXSkKICAgICAgICB9CiAgICAgICAgaWYgKHRhYnMubGVuZ3RoID4gMCkgewogICAgICAgICAgICBsZXQgdm9kX3BsYXlfZnJvbSA9IHRhYnMuam9pbigiJCQkIik7CiAgICAgICAgICAgIGxldCB2b2RfcGxheV91cmwgPSBwbGF5VXJscy5qb2luKCIkJCQiKTsKICAgICAgICAgICAgYmFzZV92b2Qudm9kX3BsYXlfZnJvbSA9IHZvZF9wbGF5X2Zyb207CiAgICAgICAgICAgIGJhc2Vfdm9kLnZvZF9wbGF5X3VybCA9IHZvZF9wbGF5X3VybAogICAgICAgIH0KICAgICAgICBWT0QgPSBiYXNlX3ZvZDsKICAgIH0pLAogICAg5pCc57SiOiAnanNvbjpkYXRhLmxvbmdEYXRhLnJvd3M7dGl0bGVUeHR8fHRpdGxlYWxpYXM7Y292ZXI7Y2F0X25hbWU7Y2F0X2lkK2VuX2lkO2Rlc2NyaXB0aW9uJywKfQ== \ No newline at end of file diff --git a/潇洒/movie/js/TKSP.js b/潇洒/movie/js/TKSP.js new file mode 100644 index 00000000..81cec793 --- /dev/null +++ b/潇洒/movie/js/TKSP.js @@ -0,0 +1 @@ +H4sIAAAAAAAAA+19e1sTybb3//tTZHjPBjzD3QvqPOx5vMw4+jo6M15mzztnXp6QNJAxt0k6KDPH5wERDHdQRBAQLyioEG6KEG4f5qQv+Wt/hVPVVUl3J12V1UzcihP0UdJr1S+rqlattWrVpVucIUco4hUcdY4//uZAP6JH9ArHHSWJrbFk57uSMu1hcyAsomfNohgMH6+svH79esXfa4/9/Ujj32sP//1IA/q3whXwpZl9wpWQF/HTB2HBGXI1k0cpCPLMCqXSGfRQ8pfBprrG1qCzSSi+JrReD4Tcdf/5nyZQZwMWtoY8+i3icV27pD0/7qgizxo9XlEIEbZq8sgX8Yqe9KeIJlalyykKTYFQa6XbKTq/DARFT8D/g9AYEsLNddXFWIQLgZQsQWfI6QujTwS8xPhN9QTvjz8avTdvmijHaQPjnyJl5K062yV1zxYdd/ysP9doqKroaZHP6fHXO0OCs6jMTPc7fQJmkDrnkh1z0uSS1BfP5GlxeiNCNjYpn6MwAcBMRabnN8scTLSuTgyFqsOCSqwvSBPbhA8MK68v5sZMvhhHfHBRByFyDi7JGztgzOT0Sx4mJk9sg9GUnQEeGibbQFN7l3lomGwDTX7wnIeGyPLkPBxtldsXmJwl2y/pj1nAqZEjOpvC/EGjLG9Kj3r3OGgsC+tSw7Vm6q489pytNYQM1+sZ9VknE42SwToYXZY72GiUDK5px7a0fotdU0IG13R0kqc1hFwmDz1S5ofhqhgdS8S72apIyHB7OCE/4HQGIYOH8FI/+n72ECZksGzta1LHIFs2QgbLtvBC6nvFlo2Q4e12Nzn+ktNuGhmsxC931bUethITMhQtsTme2HnMdhyEDNa3hRc8NEoGo92aV0aH2WiEDG637Vfykyi73QgZ3KexNSm+wO5TQgajDXRJgytsNEIGo228SWw+Y6MRMlx7J+Updi9Qsm131ooi2hwxIJZze68xoFVhXWpw7Wuqao4wUTSiDaTDPKTDdpAO8ZAO2UE6yEM6aAephodUYwepmodUbQepiodUZQOp+hgHCRFtIB3lIR21g1TLQ6q1g8TT8Wo7Ol7N0/FqOzpefagc/cNThepqzAHXdnnijfyA7YcxWKZKAAxZWHSKkRyRuTp7W368tUdTZllYFxtuyDvnlO1hpXdevst2XPDRRVIp6p1XUnSN3Ulw6d6tSLE+ZfMeEwtujKT+VWmpK7Heo8R3mXBwvVGmF3iheaZSA3Qm6GytF1uDAktrEptj6puNPc7nOIV1oW1oTT9CY+LAbejVs9/lQU1I5cDqCxm/gZDI6gdlc0saisoDd6V45twidz9wCusCw5WwY0GKv5An25Kv2ZMmuM1HQPLoUo4hAjcGCE56vq0u3s7D6MVYMw+RkZJHdsAaY+joX/QyOCMpbS9n99L+TUfmNxdpSjbmNSNpSjnmNS9JU4V5yiRK/UtoXLGnN4QM1t0Hz5PT7BCD5EzL9pBQ5FTYMqHIQZufld+w55qUbNuM7pP05HtJs0k9c4ntSTYoIYM7qO2V1MnpbkIGo+U1BZjfDGp+Ezz5TT5Jz+9IG5vsPiVkcLvNDvPQKBnuCfKZUMxzsrNnThnhtBshg/u0o0e+9ZDdp4QM7oWeRWWbXVNKBsvWPiS3jbJlI2Rwu3XP8kYWJYPR8ppQVOKvpO37SvcddtOlOcDxwdZjNcaJZggZPvb71OgjztjXyOD6Ti9wK0vI4L7oXEtssvWEkvcwb4mEXMwZ5EeUd0iOP83PJANnLzYnaUj/5yekOTIh8DkpmpHJ652J3Zg005+H+U911dEq9lQ5M21RSLVbIhVS7TCkQqodhvQXSLXzOrC6yl6qvaaq6hgqUcXDrMKYVfD+PFaVY2Gz+tixqnL0DxzyaG7IoxjyKByyNjdkLYashUPmWreoPnYkE6yQg7YWa+uhNMxOn8Itp3Jrw84qSiENzVLtveR6P+KsNixRVu91Ngjeeq17WaNvPZ7YfiwPzKn9Q/ZHH7uwLrqd8FaKdkm7ncokeyybmMDjun9Uis/mCOhNTGDkpUF18Y08sqFscWZeRiZwa9xrV5+0KU/m5WV2Vs3EBEVWZ7vk+1FpZpY39zQxgfV467UyspmjNUxMYHOwOSVNLsnLt5SRafZ82cgERp6cTsTj2r+9OSS3YAW3eV9HYostOSWDZW5/rUS75EeveBsbTUxgfd5elgZXlM1BqXOdrc9GJrBu9C7K94cT66PK/T62bhiZwM52/Y7ax86KUzJ43L2cl9umlDh7mUrnAPfXQG9it0e6w8bUOcAatfxK6h9Ijr2VYuyIxcQE7qmpAWWAk8knZDDag8fSwJg08ybHikgmH7gd1jrVjm2pZ4LdCGkOsMzzT5EU8tCC/IQdX5uYmN7ZtEi8uaV2x7MdamGReH8t5dJTH0x9szoU8gmtbOZ3B3z0kbrB3i1NyWDjPb2a2GCHopQMNgMdnfJtttOmZHC7vY8V4cT2PfUWe/2FksEVXl+Xo+yupWTwoJtYl56xTQQlg5vv5UO5na2+lAz3SmvSEme9j5DBaOMP0YyfjUbIYLSxAXlsWo3tqkvsgWFiAmtLfEVaYA8PSgb378i0/Iaz1kzI4FqP3pH6OLMGQrZh8JPPODMFQoZrSyfSfY62aGT4uOiRx9kumJJtu4/C6ksGUmH1pbD6Ulh9MSAVDjrkd8NBnk8mELi8nZsglyTQOScLDq6JH/zcRGGpyRJoXx53YC/uANaZICtDNldysCEbZU9V4D4Ewam7w9JWG28M21iR1Zat1MXbaow9hvcwUPbd2pAafSQNLimvH8lbI7xkgc4EHojRseTEnDx2nz21THOATe9Ab2K9TepnTwl1Digm3tIfZwNSMlixpgbk7t3kPW6al3KAMaPvpJlR3Pw9bWxYIxMY+e24vDwt9b9GDo2NbGQC2731SXl0IweyiQmsVyurifhwcoOTKUtz2NArdZezK56Q4Towp+6ydylTsh20tU7ejRE6B1jnN29reQ42ps4BxuxYSMTnk8/Ym3h1DnDd52eTY6vS3CT6y1kvMDCBtWjnHdIRZYadD9c54C0wLLez3Qklw2O5AWmJc20DIdvoHVQhJc5OaeocYN/xZkcZYANSMtOHGldwpJ45eet1ttvbZ5tr8r8bJp+HMu3vrAFEPH/1tTV6FJCdwrR1UjC/62nvb93vPR2J2CcrdWimpD5hh2KEXCZHx+TRB/Am7VmWdh+wm5SQ4RHNbe55NUIGyzY4k3w2wJZNO41URrnAI6e9V4myt41RMtjB5fXaOvnxE2mCPdGkZLCj3B1CDo7dGTM70sTTMsoF7uGP+ERicmFEXmVP/CjZhomVuKtEGhmMtrIp3+as/xEy3K3GeXvFKBmMNjCnDHFmYoQMj/nyer9harMlW0n2sh2TrH3zYNMctmBTmyHZsHvZLonj1LZ2HKqy7TTlsHNKVunekIfZUR4lg4Vc71Cf9vI2HOgctl20K+ALegVRcLP8tLr7SN3eljs6pa63tv00p7Auva1lFBzzsg05PB2cO02/h+D5r5hXt3mEo7BAb4lUWKCHIRUW6GFIn/gCPQ/Jjo5X83S82o6OV/N0vNqOjufYeQBGqsp18JGe+MzaerD3fQwWZz0/xUW2g6dzXKqSZgA3rLabNdfEyMgE9vMzs8rIu8Q65waYNAd4IvJ6TLnTwZ6IEDIUTR3qU1bZ4lEyOBzZjSmT7A2NlAzul7Y2+QHnLAYhg2u61qnEZ9Xe5eQEe3JgYgLLufRGfjwsPY+iv2xpjUxg/dl6LE+xc6yUDEVTpleVkSVpm7PbOc0BljAWlXtmpMklZYitkyYmMPJkl7r0jo1JyGC05WXe3glKho/r/sQm+1giJYPR4tPy9JtkW5f6lHOHupEJPB53XsgDT9njkZDBep46/MTJHqU4wNZs6i5qeyn6UB5jH7gzMYGl3cN1aqwFtaVh6fZutovbj8s2ZIUixwJGGbnesmzfHWDKtciCF2di7G2Qe759qjlwnUZRvAzER7Tqkt+L6dDokBfY45eSwWo08FLqZFt+SrZX0xzH6m0eqFc2x+TJefl+ZyLO7gsTExhZO73NxiRkcN01w5Vjd62JCWxG8npIB3kh5c1TfG1ejHNtnZEJ7F+mV5NP2V6Akm0PeFezx+uuz73CKkW70Ijdq8m3KqzLDtepPRzl+Xctbkkb28lNdgKTksF6NBlXRji3+RIy3GXMo4lZjuU3wlRmcxUuEZ9Jtj2U3j3nGToTE7gJ2oeSO+OchWCNbMd4dnM6m5DhaPlclZcGe7l3hBIyuN3IBgNmu9nbf5DfJW954Vlig7MJlpDB5gCy4eIDrZwrr5+ri1NsNEIGR5D8rQI29wgk1u/Jq3O8Oxx0DrAORyeSbY95mDoHWFs6VtXlJzxMncNGL8vjMV4vYzJcwk7pPmdlnpDBaG1TyiaaGW+qO5zpnpEJ7gDeqGvPpOkNqZMTKhuZwJq5uCCPcu41ImQbMyVUgjdTwmRwe95fkhbY7wCgZHhNd5S5XnWnU1pkH2YzMdkOxpxNOWZc0sab5E5m0s/GimV2YV10+IpAeY200s5e8y2HL1McLD/Eg0JkMNTh8iM8KEQGQ9UioMTm88Q6eyN8bXlhWR8CZPOgGxvIzrm7T+daxvdw8WGeN6LbPi6XU7qRNfUBu+k4b+Uy3f2UvriemevcL7uK83q1hnrnlXKbnTakZLCZyOvrCOSBp7z5OCWDZeua4OW0KBlsx+Jx3vSRksGyxe5IMfbUlpLhofdwYofzqiNCBuvbzA7vch1KthNuc44nUjJYQ/ZwMQxw86LT35oj9LoTl+5lxhfg0MuqsC44uAFOnjzFBGlocJU1hDyiJ9xsY/kvxjuJSchleCllJkYuOJAGl8pcLrGljB4Q2dhF7oQknQmD2nNLmYgl4jPy2D3Ms2tjoVRb09BWVzkyGZmgyOcDLYLjglOMhDKjLx3Yi3n8hAeMe+YsBy9wzeNvAmOdKP6KieWEi3Tx8tdMmEbB78pEKuyktEQq7KSEIRV2UsKQPvGdlPvjqqO/5Aw87xvr98lVM6CZuI1Nqx/6HQT/nokzvfhxv8+a1aUob/mFksFot5elwWfKLHsio3OAMfkXjtq8alSNrUjxWTUWl6Y4N3MbmcDKFR2UJ1bQX97OC8JURrnAQmsXCPFu6dU5wOIi/eXl/AnZzoyEg0bJ4Pp2x+VJ9qX0lAyWbXpDjS2QBQe2hEYmuD3plp4tJTY4zZjmsO+DhUDQy/TAxPxIM7PS3cx7BHKbEE5hXXS4/3j1AgHKa+zxpHNAMfG7DCZfJTvYsx2dAyzn+La08lKeYmd0dQ6wBjztlBfZOxIoGVzr8WhypV1dZh+P1TnAEs71KOPstUxKBrfh9gO5b1GKcV4OmuYAj/a7vfLohhrlvIYkzQGPCt/LBRuFCX4GUmGCX5jgFyb4hQm+SeTCBL8wwd//E3y6oZ05wf/N4//dU98k+LOWSj7Geb60cD8R57zlhZDBIdutFXyAYPq5ushegDIylZEP6s5OIh6nHxLr96TYWpkSXUd/yaOy5MORxOYz+oH8R94oAq/o822l+6Uy26/2c/bPLvZLL98oI3PSvfYy+W0v0r4y4zNaHDzA+FsPcCu8fk6YytSdTvwfanB5cjr5PGbrfR/dvdK756fP/sSumMbh9rTa2Ps3jtpZnb0l7bKvjDExge2tNoByHEUxMdlDTsTv8vb6Eiay1F1GP2hXIdEPybFOdXGzjJwtKkM+FlWyTBpaVO/CdxSoQ33SHPsULCWDu4K8Y4nZCfZewYTP3r1gj05Kth85hIQmv9Pvaq0Pizm3YSbH1uSY/WuMOIX1CthYu7+DRhtn7V4j2zCkWFc4Z94Jhy3LvL6QAxBfwmRHwvGHuSQcz9ybYu/QY4OzobU+9zbcaNef2IZrVVivhI1tuNX8bbjwWKW6/CAPCpFt7OjlbsM9aGMbLgb6nIl05D3swCUdtMd+/eimBDngChMDINwnsAn3A60lauEVe6qxT9YSpc55aatNXeRcCp/mAGMO9aMZA/pXGmNfQmFiAndgXl/sl98lq8TWC2WoK8cOUxMTeMgPdaEJAjsqJGRw7+R1X7O024G/n7eOmOaAm7hB+S376mVKBqPFnuSQUOeAh6ejvKNclAzW6tX70g57LFMyWKtRbWIP5Em2wdQ5wPW9t8LtYkIGS9jel1h/SFZv2UIamcByxtak+AI1zUxpjUy2w4T9s5/68lenmSD4Mltwd7WtJVfa8cozRwVMTHC1iia2J3Igm5jgjmJRmnqhvBjMAZ7JB8VPxjeVyXZieVG55Dj7+iYL1vcU25Pd6XvUOsvCei0+QJxfOF1nIfCHjcRths7/tgWEP/WaF1NUT/J1zKje7WnxhD0BP38g4iz5nq8QsyysVwSe96g6WsVWfHjz5niJqI23fvItA2feVRiKmXAf49ihL2kvjB0dJ29jh+fD4PsSCiPw0x6Bie173JxUYQRmAu3/EbhP8ozKYox39zAlQ9HUtVUeGiWDO2WQfy/yoK0bkU+dPMGEwjQoTvLuveQy+zIeSi5YbDDcx2ixk9OriQ3OhqWCxc4E+pDzjU/uBmmbaO/jtZqkELnJOgcyZQIrUl7vuX5PpxN8kbDHVa9t0tgnd1LLWyPSyDJvkUvngGJ6PS2CMrAkcRYtDCxgD/q0XXo+KnWuKzMcP2pkAscf0UfqBud8IyGDVWt7GV8+MjAtPeO8+8DIBG4Bzb2QHZzsFjAy2UOW74/zsusmJnvI+h1XfHCdzx6+ryUHMGKw2cp3XklR9u1TJqZC1AaG+xijNrIntRC1GXA++Xl2E+q7+oaQ0898C+hHtAinDPSqbZ1q/zO1jXM/mZEJ3LB3+6SNVWVlR+1lv6fBxASWeXMKxb7y8i1lhHMjoJEJ7K133yW2HyfWR5X77LdfmJjARiU6rDy8nQPZxARGnulXul9KM7NydEzqeCstcW6Gy2YFf4t2Qhe1pbQwpu5O8PdWZbGCe3Z+PhEfQdGF/Jgdh5mYwMh9r5GuqW3tya3HbGQjE9invxhXbz2W3+xIi2wzYmICy/xyV13rUdpf8xyRiQms59oL0dT2EWWCcy7byGTbCu6TbKP69rYa4+zsI2Qw2uwzdZG9k5GSoWiJ9U2ep6Rk8AheGVcm7rJHLSGDdTOv7yAhxoKNRshwtLf41NHrR9w7N41MYJ/Wf1+ejOOG58w/TUxgmbUXAfHu1tE5wNLm9Z1QysSYcott4SgZrI3kvfU5dukamewh54iPTEzg0b14W37LtjmUDO6dpdvSHU7vEDK4dxZQ0MDZ+UvIYNny+06g/lX5wRqKOXgSmpjgyE+Ubs57yggZbr3vqt0rcndM3hrh2HDM9A/KZdstFqbn1lgfaCPK9AK+VeuTeBGk1NWJoTjXiNGsu8Znw5wu5sa0mW/Pcd3ZnlYHktMveZiYbCOHj1P+HLQ9vPmSd72bvTdf4ndWc9AQWZ6ct3GkgNsXmJwl26cT/ien7spjbKdEyXC9nlGf8d5gppHBOhhd5r0PjZLBNe3YltZvsWtKyOCajk7ytIaQy2yeaUfOPxHnXOtAyHB7OCE/4HQGIYOH8FI/+n72ECZksGzta1IH201TMli2hRdS3yu2bIT8YWI/kp7Ikb2Az4g3xxM77PwNJYP1beEFD42SwWh7eD81p922X8lP2OuGlAzuU+0gE7tPCRmMlt9zgfhavGdsNEKGa++kPMXuBUq27c4KVwNmIBWuBkwjFa4GhCEVrgb8CK4GDItOMZIjMldnb2evv4AXJq0K62LbWJedU7aHcywWw0dXYmss2fkux84L+LCX3q1IsT5l814eEhpS/6q01JUjoQHXG5rTyOOC9l/xOkk7R0F58aqtk6mfTv4QdJMN3OZ//JdS2suUGtORfyNfoP3XLDjdQih83PBtJVfCQqj8RJPgF0uOO0q+O1V/5USJ/j0lp/D7tQRMcvmddVdbLrSc+edBoar1+qkTzparX/3T6z9R09D0haO+vjUc8bjrqo/UHDlSe6Sm5ujBQ4d/8FZjirO1UUSEwzWHDh6qOnT0yKFa7Wmo1YUKuH3l1eVVVeSJyxc2PWhtCYvBuqOHCTXYon3BkdqaqkMoHKuuqnL9+KO76dtyw7PqGlIw7PKj76QoQYxyBH3whJvqTp687vrtRkvLtYMnb1z78fszkaaG88ErlxprL4cuel2o/rVnTvxa/5O78afGlu8bfj//zW8/nbl86Jum4BHf4cstTf/8wiE2hsVrda6D5y6ebP3pyjc1VR7v1Yjr/MXm5qrgKfGrQ1Xe/9d4xlX+3a/nvzl/vjHyz9pLP15oPeH5vuWa8O3J8Nnrtd/9ePpURcUXDm+dcPL7psglxOo+9/WZc5fLT15svB6IhH531tZevHT2hxP1ke9+d15o+NZz8dR3FxuqTx6+cqPxxyOt3wQPXT5y6uCZq83hM+d+OBgK1kR835wUfjr52/fucv+NlotfH/3Nd+nqaZ/f2Jc/CI1CSAjhzmwWxWD4eGXl9evXK1oDkWuRClfAR3mpsogenxCIiMcdh6uqqsgjl9cZDtdje4AgyOvoiukL67pni6WeOXnrdTFxEMXkVsZiaWlYur1bnN4dWUyW24rJNYrF5PKLYpLJKSYHN4vJ6bFislGxmKyllRgliIS8H0oAr8fnQW1SQ1sk6EXOK+gMhVGLiKGIQJmcv7ced/zHr+EKMXBJDHn8TaWlBxx1/zCMOzHUmjHmvYLocAY9jjpkBx2fOzz+YESsCAe9HrG06MuiAz9X/fKFid8V8IcDXqHCG2gqReUOfJGFFhLCQcQkIMhGQXQ1YzYrS+MTxOaAG7VokyCWZNsYC6th/MmwIIFrWLcqD1ZUH6o4ZoFGrYpfRPzll5Hbx4WcQVRPl1P0BPyVN8qRUpY3BkK+ctTPgt8VcAvukiycm2aTZ1H9BqfoRFU/d+nihQqti0pTDZLB7Gl0lGLmCvR9FR6/yxtxC+HSIlyPogMHLKqt9Q2Ctm4Qqg5V1nXXdDf1bdYsv95glnY7/T7ntQiy+Vg6NICra2orqtCf6uPHjtUerQyGAjdav3QH6jBjpDjsEYW6X8PF6KvqGEqV3bDmxrnpELxIhd5DI1gIw26P6o+mPXTf6kAa62rOaAB2s7CbBN4cjKZ4z81gaAJS/ZsHiAyJ9TYlPpvD1OGx6EYt8rPBgH37U/3X5ytw1I8I6MOpE5e/+sJUotGLKGEN0dPYWqoVMIxbjUyMw5WQt7TRa6ClusBUrT+0aqHKNnoNnGjkI+TvTpz5yvEPR3XmWMdyBLzu+rAQxruoESSykGdFwVda1Hot9bQetyCtQpmj6I+bRRbmJfUldXV1jhqeSSEyhwTkWFxCaVEgiG0ictzIdDXXofk/CtHJ12odpzeAQcwDB+wN4PfwlX/L/g23ZbPo86adkfa1ZeQDdqFOX9jQcNn+kRY2mHP8xMLuez1hMYw4MbnCjS1to8crCqHT+FdMxL9kF9M72bIgJZvL6WV0TU01SbYSpLg/q4MqkpWmhHOVTAnA6BKtvriJKpCP/cqJeqIx4nfhPi/1iFZfiBsHRd5fZCsQqpMHaY6nqVm87Gw6FfAGQpqGF508f+WrIkdxsQORUVEhcN7jv2ZwrU2hQCR41l1nXUP8U1npIHGc/HhL2hr819bDZNtDdfeO6cuk6Iw8uvCvrT55cEgaHKWolni4EpT+rWa168yy+fDD0sqUYKU////iXz4/UHkgu9b4B5XDxsCIhypr/Pxz9S+OL7OeIAPtCwtontN8vCgbmY5U2qxW7eZx17ObjAhlKkltn1YMfX/qcwXWcIa3Y1kL/Ru4Vch2TRXBSLi51BpQ9Ihe5BKRzNpv1j7e42vSWND/jCBACLs0jnDE50PTSk7MUZSa+JAq6HOfShQb04dfomj0kkvwC3XaaUgh6Akji1eMP5x1hzUjiBrC+ktcJLCl0jRcxrXKbqSMoal/TIUUpUKWK0JRfhFxt1L0gfpkTp19Jj9CWj+M5izJkXF1cfG4Zp4rfGj4O5uEAxY2GJmOH4RwxCuWuqliY0dOPHm8L7cnb3GGsjz51YuncbRz0+y9qbEOCb9FhLBIbP0BM8uvYc1wsu05HgeV14TW64GQu7JC1HEy2yblyPLUuVgwJFGTcCrgQ9MF1J3nkblEgwVD+QJ+4g60AuYBkF0j4umQZb7yw/kMV2fVP9TSCoH6lA/TZEHzKw8y6liKL0x9gWfiaaZAJOQSLqAnGS1IUtO0AXGJA9hWGb6mAk2ymsRmFABVWQZAaOAYG7fF0K4t2oHhSmxfyKhIYeLW0j6edSMCNTjZPrcejWmEnVFQbI74GlCEkc1vCiCwYFbT2RzzVZoFOW5dI4scG/4p0ie5RccdWpZsDzNSqiCV9fVnL5y9fPbE+frTJy6fqK+nnaPpP/IaWvxBTfV1j98duF6RWcJRZzLoX5Dg9rgWNWQHHuR7sWPGQYVFu6BBXNEScNcHPS4kH+6VbNOe4qFKl9ln2NKlg8jK0v9yI+/ZhMKYzGjYCEWtJdYudfYFsmWJeBdRV3z8ZjKefNWnLraXyZPz8vwTefKVOvAOuXl18YXc0VmW2O5KrPdL28vSvX6SHy3FSqipK1K5Axk5UZZfyw40Uz/Zwxk/YUQE2iSHJBy04aiFj+6sQDOTvV64IYZwoTR/hfaEXYqMGL0ssUS+pqvsIj5k4bwmwbQnnAKIWWOpcAui00ODYT96ovV19i/8itbTeZ5Pk/UMfukRhxl7c405EkSwwll/Y8Dx3/+NC0caNC1jlz13TiuIEXjSYBCN0eMXQ4HLbEzzsLAcFUY2OjLqOVKmWGmLaP/zOUMCCmmuYV9Qz65X9oA6d84itGMFF+nmwUGG/Pad3PNcXl+Rp+9xwgtrQYIobhB54yS7WrjVctlSC1+J7dpnFs4ts24WtiY59Qiv1MbWiNmQ40Nl8sNb8oPH6mxX8umwEmtLbPZKgz2kJTLsaY4K3PybnqKg0yqH041dUikyTJnChQQxEvI70nlOjccKS8szE0ec+lWfsRenHtXhyXox1qk63AWG54beMHp+wAwQDxlwBJCafLC9Pp3cpFy8lSZyZwx6rI++9ir+rkv4TULIa2Y90xtIe50N6veJLuT9tNJuTxg3Dg6XrB0+GvJkmcEgrDUnaA6jQaU78XOjSuScHuizQs3A4OwB3W9g6cuBEy5DC5DGMz7YY3VQIVCNdA036GXa2GLYxlDAR4cWg4PopBtN3IO5Ehh0lKWqhFXzP6i2IhTWXAz/VPwa8PhLi/5PUeZ0SR6aVN483cN06c9OjkxcZErzf8kUCbGXlJhjf5LZS6cPSuhkqq4ky0pmIhlTp4ZieshZUlySvSSVieIWtFzhD2fTM6lSE4uh0jfNNdM66mst+3Yq4G/0NGVl1AW/s8EruI3LbqkfKi+aAfxcoqzsSNsvS8ocJWrPsvI2hn9LPr0tDffg3+Txh4mth9pvgwvK7JjGp52ixb/9T1tP+sEm/g0vMLa1y1uv8Ydjh2uOaiWnbqlLUY3c3y51LuDjA9rKpBR7hAJYZXpB6b6DTA/mQL/Jowsab+e8MqHBJ6dXkdMpyUj2u5xh4ZLgD3tETwsasI1OZAPMHMINp0vUMkuUrLdlhppQ15eP5kythaKqpBZU/z11oEJovParoGX38GIj3seAWsPp8YdLcgtrKY11egDiSqnva3aGL173fxcKBIWQ2FpapGcVGKuNIknr6XwGaYxt5BEFH3NBLsNNnb580WTxUYRdwlitTeXfgoEwToajgi2XuR5R99HILgaFkwFRRNac8w3prJnmQbSw/0JA9LioWAewxXZgi43pjYITmfMU6f3n+mhcQUKaYsR/yun1CqG65oytbvjnJqNnDOZMwIZR0y7rhHqW5augeo2zNtnE1ODkJHFSP0hDHaWGseQINHIAWSimKl1GU1BNOQVfBWfWkypDllN0/0C/y6LRjC3yWbaQpsHKkxT/GCVN/4689vnAdQSIkEoZc5V0w2WIbfoMBbrJr6RFt6dtY64KpsuTStZlSJireLqNDAqKTSi/UfBPQ0hwXuOzZS8IpCm8lYbUj6lqeiRjrt/HWkFLSvZTC83I8tq5rIaFizfaDSvyn7QcPMhctoOWNVoP+ui92A8rUW1ZELO8hk8fmxWxVANbdsRU1b1Ykmy1/ZhsibHv/oQ1+TCV/HP2xBhBc0TGrZQdbBuNiXkKx0ol2gwRTNNZvJ/C+CWMAa4NbgtZwWP7T0UGltJCCjPGMKPh01MXbTiWaKO5hFeprH7OiA3SsrLE0/NNucVJT6ZsSWTh0fMqldPfyhXIMBzCpt4juY3K/wp/ztr5YVmftCsNB3xCSj6cC7Ko6LWUmWEpR/YTyzH6mTmiQePys0yrhJ6ZRWW1CU0Z4jFqIRYzF29MR1lvLbj5v/aG425MIAEA \ No newline at end of file diff --git a/潇洒/movie/js/TXSP.js b/潇洒/movie/js/TXSP.js new file mode 100644 index 00000000..23e10963 --- /dev/null +++ b/潇洒/movie/js/TXSP.js @@ -0,0 +1 @@ +H4sIAAAAAAAAA+09e3fTxvL/8ylUX44fLfEjDxLCTTlAyy23UGih3PO7lOOjWOtEYEtGkkMCzTmUZ3g0QMsFCoHyKA1tefZSCgmBL2PZzl/9Cr+d3bWt18oSdS8tJ2oPlnZnZ2dnZ2ZnZldKKmU+PGO+PGweeVk9dB3/n0otGxM1QSsXkDAkHFgm4MuQjQIaFGL1oy/q9x/UZ48t3jwXW0GqRlXdwDWjhlHSB1OpseTevcmcWmzWFtGnWgEDpMZTw+VUSRxB+ihCRqog68aarFgoDGWiYqmEFAnf5EZFRUGFoZyoGaqqRAEImuAqNZ/XkTGUjhIU8n401J2JyqKGxKGuTFRXNWMoM8B6lZAhygXab4MwRZVQckyWkMooxASJJTmVL6iikR2TlbzavSYnS0P5CVlieHQkarlRiuftt22F4jAwpJsW5eWCgTRalKFFxXLBkJtP5fAsyE/kCqKue7AgHs9PQElXJvF2dybhyZCYlbAs7Z7w6MCBfCEJd4KqCf19k5NReQIPiJaTW1zUKmEFsjFRQrQE7qAkj0SjrLFC9gDlhABSCHekrYYnAzW6YE+4YgQPuFGso3FcUtJQvlFC76G9hBQsfxOsPXvCFaKBceUMWVVYf81nXKkbqsaakNvJSRtLBplgwxXJjapyDkUGhZ2tQlKxB03g0giwK7LCXqWIRWgRqU5/Zc6dcdaOiYWyB0LakjSbOVg7fM/RjDaF6v6+iK1mcoXgg6l64SEX00BPYEzm7YX6gyN8TBkHpl3NRxfSBueIQPFYZz57XJm/FZp15tE7i4fvcMnscpLJH3B3unslFw+pDIGpzw9T8OnEwL1+mHrDYOrxwxRcMDBwtx+m7jCYMn6YQs1d2g9TOgSmzCofTLgyBKYBP0wDYTD1+2HqD4PJT8YzYWQ84yfjGaeMW8zDrlaziDH2Zhra/uBy0sbQuuYkgKFlCzCPebVH8+a1U6/R1NamHlUPH+UPOTjvznxXv8VHFNwUVQ/drV04x0UU3DouHl4wnx7iIgpusM37T8w5vqgGl1Tzwox5YpaLKLjKV55fN28f54t8cGbf+77y4jrftQg+tGNXqhf50x9cB6tXD9cfOjWihSgTfP1YvPqDeW6BjymEkkw/NO9f42MKIZNXv6peus3HFFwoa6en/UTAZfV9MM2eM5/NB7d6Pph+ulY9eZCPKbhc1qaP+NLkFMwll9eKacnlDYZpyeUNhulNdXmL6pi8lF74A9ILkIv687q8Jx/UFn7shF948pH58mIHXN42fmEmja8QnsHhe/UbPqswRrYyOLfauOOEtuBmqV24Adg657lgZJkQgccXZ6sHL/hjC27KzZN3aufb0BZC26cuVeZO+PMtuPlsE9AQ2oKbdSy67eY0xLKMndq2cxp8pG3iG4ItRIw7fcw887P/SINjqx/8onbCx4MH2oJb8frtl372MQSi+w/Nhf+0o8zl1ARYFZYc8CUH3I5pyQEPhulNdcDHRE1GxsSb6YK7lGopSWHFtGQjg2FaspHBML2pNpIduXkzbeTrTVPAQRiusZ15aJ6ee43G1jx2FNPQgZ256sXb1Zm7ndiZuztbezHdgRDDPPqkMs+PtJ0m+y+fcPLfzAiRPfHPdwRf6tqFxSGm8thXi9/80AGZqE5dql7gJ9NCWJyz12p3fRJWIfJBp2pTjzqwybp477zftHVsfy3EGt4uqxdiB/nibfPp007sQ1av3zCv+GSlQvBp5tvKnNN2WzAF9yuq03dqZ491Yr+2Xe4ohBWYP2Me5XO8Y2bYlTpdil+smJbil2CYluKXYJje2PhlVC5Ib2b00h9iy8U/enmVdLqOxrmMOzhrTv30OoOX2/817/HdwhC+8/lf/RC9whL1Vw76QrjTnQr62jkJnfcRFl8cqd7/5TVOQrqrx/z5iw4Ib2/XSj9EwSehv2uVH6LgYpFJYzyV+duVpyc7cQDi6B3efLXQOZcuzjIhqTn1DV0lXiGf0Xgbi6smx+fMr7+oXnj2GtVk3br1HdAR88oCHEeYeegXZwUXyQ/WbeGrSSbEpH70wYedsJ4k6lu8eW7xi687kEnYuH0Hf3R9PSHi/+mbtcc329CF+RWc8f9+b4MfouCeEnuV9fiP5tSTTqQVzLNTlYWZ6sxc9Rrf/wrhyPmvhz5O8V8yd4nnoXaEPw8hTqW9mF689a3PmZLgmL57UXl+uQOLYWVurnqBf8wlhEy0ye2EcP+uVOb4Lz8Etzu12XN+mcLggWn98c3avHNxtQwtRM55+qZfpjjMCwsLP1ZvTHXAnLZ7XyHE1sjFo1W/LKiPm2w7kCwrclZHmox0vi9EX8DmWQxPm/67LUaYwA9T0JnAzw/Rq+Qm2RvqPM7V536qzDvfF/rfca56cL5+qxNRh/ndLJ6FylP+jkNwua6fPW3eOdzJnbrWxwC4a97Mqdqhjju2IRb4KfOHy+bZab/Nn+CzsXhzxjz4fPHgsfpNfrDR+wpuA/l6At8KXKpePfvaeEhfvWxzlNfneBS9naQtR5EoIU23fhki9ik2kl1rR7BCxwaF2Nb12U/XxqxtDLmI1LIxKPSl02lalBMNlEXjuUJZgi+mYBfCPHfpc2y1q1NnPqcDZ1+iIN/3yAIrMVzt/C/mwqMo/qnPHjNPzEZr394jP/PP6yfmoubJO9XnP0XNh+fMIy+jtbkf6dlZGyb6lQ/ysknUGItajHyUHYCLNr6rQpKlUYiFGYaCXJTxMLrZIEoFcSJbEjUdk2ZoZcSAxP0Tg8Ly3XrSULcZmqyMxOMJYehdC8cMbcIxWwVkCMOiIQpDwj+3bfkoSbDGNaSXVEVHidV2YHUkDsAJW6mcF0hpEo8wKSuEtXo8Al92iSQSHtIhK6Wy0fx4jfOiEz3IqXXPu0MeG9ekW+AI6yjX0t61ZI4aY/EG2T3ObS2JSlHcU8YkwdgHU6lMd38yjf/LDK5a1T+QKmnq+MQaSR0CwHJUlw00tFuP4q6GIsI7lC1JvVSQjXhkTSSxM73L1c2kfUImBVTQ0V+PxR5D5XM786fhdss0gR3JjToYyGe6P8PbMtuD0XwmB2cwh7l/MGMtTKUMnUysWEZuqtN36l+exUYyCV9VymK8xdVycSQaFQsGvdG13GoxGt2Oxg34lbCmdpEvRDE7WXl6sDY328YIgsmT8DTt3LXaVsY+6YRrNv9fdv3a7e87q+FLTrR269p/OGsLtGbDptXLmhWplEDXCXPqGI7hayeeVe+fNL87Ujt7rAkD1rPZ89AQXiFaC0PMaT2hJ7Ekf6pBb81vZ5WGxVwO6br9+1mGVsolx1AOOwhZvF7gdTAJA8ji9Wdfciu+24a0MTmHUiPIgMc1pHVWLJVkaagnTd5zio6N4TUXe2lZvOQYeVUrDnXH7Ephe8ADrl47Ys7P1e5dWTx4onr1RmX+iWsE9BtPW/FipzumocmQxgemElbgZKmsj8Zj7DNUMSxrLThPHA1f3wtL87tVDE8T1hNTy1/1wmX51BXDZoH3xEfcNi9U9MNYDAuFWs1h4A7w4zADrUgKSBkxRoV3hbSwxlaxW5WVeCyKJarxqbH+vphFVNns1ad/Nc9cqE5dMKeumrOnzNP45tjijV8qT09Wnp6qXjjuogVkar2qGFglMS1KuVBw05sTc6PoQzQh2MU7mzPGs2SorfH4CBfVFKKE7woZL8fC7d64qJBatAJ3MbJ0EivARmxr4g0yHRy39m/D4UWCrUMKtmV4t927siPx7qzZYRNHkpofbCIYE7qEjBCNWnpJKvg3AG1w2afNGwefMuZ3WGYE6PKcE36nblmxdeHtcrjXRrYUxxGvd/BaY/UH81iwa8+/Nu9dMr97VH98G+sBFj2ULGLLienymAd7Z1xfC6z83bt46cF6Un16dPGb72g3IcSzKYq6QxRXCLGYF2XWQTvIXOZSPw3tLSPdWKdKE57eSYSsC1g2xSIknLxJpEAkSz0IxznIZxA9oroWrCzR9Fk6M+B1PoYA6jmkBEGooH3ZoqjtwSvZMCpkkQJfc6T4eU3GCllDzRbHCr5QeQ2h7D5gZhZbbEXPwpcmocWBzyKilM0T3im5iSyoiKZinDimzIJ/8llk8MDkJA8vbovGS5gHOs1rw8Vlwh65lC1p8piI+wEOkzZ88HKphA14NleQc3uyek5UPHIRcHm4jXRmhrHO4oi0/Yz71lMY5hew2fY6MNaEzYmFAtIYJPMw/ODBvcsWVYkIiITyYrng3P61wZfxshIGPoREt+ADSDUBDijZBNZPusNEXoHVCTt5WebZuTM6nA7o8NlKgVtZjLnTv3d6Feb3h6rXZqozJ6xu4W/PT1d/nTdPXmdfQSVpKfeC7+nceJl6i5VLuqU8yX6snTV9Jw/Pw2FGvU03GNdRowjOOOs9Tr1zr5wYXMOYuEHqCugkOJHzE3EL4Qnv+fLIfTkvRy5ss7pfLhTEVF8yLcT/JSuSuk8XPtouZHAct1rABSt7VwvjK3sTwtpSqYD+hYY/lI1UX09/smelEP/wg+2bN60QCvIeJPwD5faoCWH9qKYWUSqTWUlCwbSwTcyLmsyaxPjCHSMyohhd27GiAWlY9rDhEsE3Tu3WVcWv7RZNHpGVGP8Dxp6tPoGIAGlezVJMMVLWKCuMihWRMapKkG3csm27u+VkwiH9cIGYwEjtXiAIjsfS7k7lYC2A1kkNowE3Kw1eHykBA2l7SK4XNWkTXpx4vhBWxsrLq9g5wd489Vhql494O/eu/kkHo6KeBRcxS7w+W99W++DnCfLdoMbl4w45dMcfD1xA1SBzmfky07gs3u8gZ2i+OCYTPv58e1e1cRGXlU5UOJe12RXHe+YJRX32VvXaWfrlcHPqYv3GHe90nEvQknjxfx/PTjxfVki8i+dKk/zGB+sBSYHQxcD88kbtxPHfnk/Vf/1v/SW+OeEfD2Hs5CPXNFlSymVHVSNLzbgrXeK8sAaVNSUs1+BqPxor7+iYwowji3JqliZgdEMcGcH2S4qR6A7gyH6AhhTid3qXJqGI3LWVLRIKaxLkXvzwJCnQ55+7MjTOiwC6BQHyd+2IabADYNuwIyvhBVwkWUHCGdKErupBemkMnbbAY7e09x+ejXEyZA6ZLwEPmD2xWPD2JVXHgroRxxgQiU0GbwjuYchmgYDaG2PrZSPfspY1fCxSTXhyYNIrbvW6fGJZ3vUHjMzCX/e4LL450cDfNcDAU07+qgNIW5PpSVoUUubk4ogdi1yE5aysFcJi0hBwApQnaKtAQGAAGvx38RprOq+uTUDAu1qj4CHemd6VxPE4DvRJqioElwJOL1kBsPXAgyNTGoZ8iWaKgzeAi/2FEPLT3guykVocGYR/wrWSkJ4bbHA6XFOyf4WZE7jRZFA9bAvlD+HXD8ffCpBU9HMJiRtId5DqD36tPjoUxA10iCB2oT9BerlgxCULoGcyE3wZcq6VbldVFl7Wzt8xp7+FwP3yEYgJqZu4eHC+/uKcK83IIuE8wgOKk13AFfSBheAeGxnLwTBJeZEEQyusG39O47rcy7/w5BlYPIyAYsaEYCpi9r1Cj1mx2dtms8bmI68Fs6x2eF3L8eBBK5x0wV6mF3zDK2prI9rag2C6317PqU7Dv3wYuvmMyX5VfXBAcKR3GYVlm75zp9tv+u7Y8p7DdeJtA1O3k6w9fpXOrUuo/fjfW8oGlvt/4jDJXhNCNwBcV8taDm0E8mB7FnZfJ2hZKmlAmomgSAhr2G57EYxIPCVLQ/HPpLfXJKKpxM7MLsFxDgD+fFIEKuydUZ+20aWDQY0/1YQhIq5kCq1NFVOw7w9o3hEiSRhqpIXF+8hRoHQImzOXyIypUrZ1ysEtjFBPz22ReDWX5Ig+xBtWQPxM90kjKyIemThAK8J2OgPHLduBwztuTSrgwRssR1NkTUjQMU0ugZXzbsAWVtZAQx4aCWAlGSss5hRQ2d0QO9YHrrMf43KfbnF45GCR/KTRaaDQmFjwmlZiORUJjW+iOmbVmuRWjBvUC9I+ySaUYw+9URxmTQD775Bjx4EJ+9DWgLJggW6qIpbtKOx2DHVHyZ/b6iVLCtk/GOqJaqIyguj5F4OAUktBajNp3BDkbGjv3qhKimASIm5jSFhGjQSj12EmOAvLmESP8PFZSciBEjc7ibSQpE6oED7oukNDe//FBwtjtrl0gGi2W4UIHCrJuiphFS4Xh3HYibn+mQH/Vb+6Vz3/YvH4md+eX6YzAhSMypCxUnyosFCAGYWZz1nEPLO+zjL7SmF5wrKmYP2KE5Y7VDBh0UEPBy2w5bR3zjSeFsqS7lbHMsfAj6dy6hjSUk5FcBp5uMA8WIfJgjPuwQC2nNqZgyMvbwlXsw4aywoWULsC53MjctewrKSAs2taihY1sC5nBtK9UXq4qZt8EbpnAB73oImhlbl0z/AwWrWyb6C3d0DsjRLcrSNPmagsAXVEvXGPPAptizwh2NcBhosoPG3J8QFtKq0RX0gHn9CrPEBATN3jjNNWMAQQ+OZlVHDKSOMKIifMD0gxZvHEpXEFNyOZdlaE6G85hNryTnS85qFGqvdu1U4cp2bMZ9849HgdoWfzDI+H2nJOWGF9EOJEhjBz0qvxz98Fd2sof2dI6OFKYasJZYkVhV6QcygurwAcgKLdOBz4PNYwjAo7DH4a8aexLrLRcim9heiVTQ1c/uYGLk+z4sFT37Ne1MCAxvoZk8Zowmoa4A2gbXAFypUFNzBwWVyVDHgqmZXp8VVpzCo8oVhuIylcEFkhRLxCAhtpzI/JsHU5N4pye8olcr7Iv2VD7f2hQD4pfnjlZUTVJrJFsUQ3TuxlFpWHgNJRS+NIzhsAcHkYGk7xJDfgaKWsyCYJ9r42aGrRI8JmjhmrsVVNjHyIJvapdGNrZ2Tx5hHz3EmYifrJR7Vf7sMdNqr4gd49q784B3fms/+YZ6fhbvH48fr9l6Rs6kllYQbuNu+AfytP5+FVqis/R9yd4s4kdqrELwyhW4+g32SXC09Di96krhZRfA99grQFg2q9TMPqrO7/pCNlsL8UjpK34r+XFgcxtjhxf8nHF2nML1VOtto57R2baQqD0WFRxBQ3KCKpOmwAljOjidUhwSzn3yI2yux0TYz40AVspGKDWYkhGS9bvTJuuVjSEDZneAYIqfRRyfNHG3fjZaKbgC0Idy0T54RXt1TAQ3fI9ILTIdMV0qHL96c8aOOCOqa+wTe3BbdNP0P9iiJAxcBJrnVewhFtbdmWdFs3HR0AnapwpDemtw3RDHVHyLUo4I4t7yVJWgpeX8xTA98kkGJavny5lTpbC+onNAh1wTfSwdWzM7XHNwO/A2RfRZuGz545TUUSO3scS5GOkLKRLDYK2idsQ0bcqhUNAwx5uG3kT9I3DOcKgb1H5JowZpkbRwkDvd8DJfRP3ieL6rBcQFn2tBn+wv12pBVlRSxQClKbh+nNmjHL6zxeZxU9zylyXHl6jBTO/vale7u707yj1rmCjBRjO3FLOK/0WU5jgsvBeYGwLEvw3aHM+33pgd7+rve6+zZ09a7vXde1bt3adFfPyg3p9Kqe3oH+DV5fQGR81ia4Lyhi5kNtY7Y8YWAGlXKRHoL1BpH1rfBmEnbJre/oeiHS5f14uD1+5ICGcAmmE/4ejkowzXy+kePtsNvNB5F1BSHp45wvxRr6mEwAB4corScT7d8TGsfkUBCfMEL/CO3bLGp7NsHOvM8pfriKIO9Zgwl8tpRrA2+MoiKi0ugLp5dHPkFYW5CElR3eC+Ad+SeDL5V2NPWBc3Tbwy12I2xz4vd/dNp31UAynezt7xtIZnpWBTrx+6qnfcOf9PU95etxMNeNxeco76S3B5lTFd0QFFXZLMoKG6k16LDhiP32/DI2rrG/wT90RYW7CPxjnviRPVLPgNydumvefwJ3ladf40CElM09qMz95OBAjIYnBA9xyMjd/VuV59fhbvMOioOFLPBQPfMVuzMXfqhfOeVEWPv5Ba6A+sUrxxbPf0+6vnKpdugZaXPl2uKNF3BXn71Vf/CY3D04Uv3lFKk986U5dx7uNETfeGyxcpfXgijrFu7FPbe2wb15i9WwRTEvFnTHEX2AIkAtDzX2d1R8N0a8V1dNilT5IWxERt4T7IqMHD14xWiew//4461s9Y2DM7NNNpDrBCPhQLMWxvPWWk0TJ5KyTn4tLZsjApvtOaAmLB0CvLAN9MNvEikfiUUSDVgesd+0Sd2HtPWijsBzgiOZe/fGvEfmvcHLElQe3k/aI1rhbmrYIJs8LGkq+EOwsQXbWWSbinfqnXCyBdA4AuyGYyDNZBf1fL3tLz2ckZTUHIsH8V2SnufCD8QpI4cJo1Gfxc2qBtZWSSb5vo0tQmRra5Eon/ZbhnejnJHEc6Lbm7MttabUHZhMOCIMLk5qHIGN5NxCkyn87ByZGuZGw4sFcdrY85sh1qvRRJSkRhP/E2CBj8w1U4HO2Wh/hI2en7E2xCWf0jOWPC/IejU3HzdyfE7bgFjy0NKbjvAEkA1O2qMvjlc4yubhtvieO7O9NmJ/UUTBUisWeArrVG6vdsmmQr8qDfD953XqOI8IT8CmaRhWx/m2wUk/BuaR24aN/MOBcDAwQgNd8/jc4vlvsLvJORJowec+TDWZWDa5+v8Bwoem6mOOAAA= \ No newline at end of file diff --git a/潇洒/movie/js/XHBDM.js b/潇洒/movie/js/XHBDM.js new file mode 100644 index 00000000..4d65790a --- /dev/null +++ b/潇洒/movie/js/XHBDM.js @@ -0,0 +1 @@ +dmFyIHJ1bGUgPSB7CiAgICB0aXRsZTogJ+W8ueW5lVvotYRdJywKICAgIGhvc3Q6ICdodHRwOi8vZ3kueG4tLXlldDI0dG1xMWEueHl6LycsCiAgICBob21lVGlkOiAnJywKICAgIGhvbWVVcmw6ICcvYXBpLnBocC9wcm92aWRlL3ZvZC8/YWM9ZGV0YWlsJnQ9e3tydWxlLmhvbWVUaWR9fScsCiAgICBkZXRhaWxVcmw6ICcvYXBpLnBocC9wcm92aWRlL3ZvZC8/YWM9ZGV0YWlsJmlkcz1meWlkJywKICAgIHNlYXJjaFVybDogJy9hcGkucGhwL3Byb3ZpZGUvdm9kLz9hYz1kZXRhaWwmd2Q9KiomcGc9ZnlwYWdlJywKICAgIHVybDogJy9hcGkucGhwL3Byb3ZpZGUvdm9kLz9hYz1kZXRhaWwmcGc9ZnlwYWdlJnQ9ZnljbGFzcycsCiAgICBoZWFkZXJzOiB7CiAgICAgICAgJ1VzZXItQWdlbnQnOiAnTU9CSUxFX1VBJywKICAgIH0sCiAgICBjbGFzc19wYXJzZTogJ2pzb246Y2xhc3M7JywKICAgIHRpbWVvdXQ6IDUwMDAsCiAgICBmaWx0ZXJhYmxlOiAxLAogICAgbGltaXQ6IDIwLAogICAgbXVsdGk6IDEsCiAgICBzZWFyY2hhYmxlOiAyLAogICAgcGxheV9wYXJzZTogdHJ1ZSwKICAgIHBhcnNlX3VybDogJycsCiAgICBsYXp5OiAkanMudG9TdHJpbmcoKCkgPT4gewogICAgICAgIGxldCBqc29uID0gcmVxdWVzdCgiaHR0cDovLzEwMy40NS4xNjIuMjA3OjI1MjUyL2hiZG0ucGhwP2tleT03ODk0NTYxMjMyJmlkPSIgKyBpbnB1dCk7CiAgICAgICAgbGV0IGJhdGEgPSBKU09OLnBhcnNlKGpzb24pOwogICAgICAgIGlucHV0ID0gewogICAgICAgICAgICBwYXJzZTogMCwKICAgICAgICAgICAgdXJsOiBiYXRhLnVybCwKICAgICAgICAgICAgang6IDAsCiAgICAgICAgICAgIGRhbm1ha3U6IGJhdGEuZGFubWFrdQogICAgICAgIH07CiAgICB9KSwKICAgIOaOqOiNkDogJ2pzb246bGlzdDt2b2RfbmFtZTt2b2RfcGljO3ZvZF9yZW1hcmtzO3ZvZF9pZDt2b2RfcGxheV9mcm9tJywKICAgIOS4gOe6pzogJGpzLnRvU3RyaW5nKCgpID0+IHsKICAgICAgICBsZXQgYmF0YSA9IEpTT04ucGFyc2UocmVxdWVzdChpbnB1dCkpLmxpc3Q7CiAgICAgICAgYmF0YS5mb3JFYWNoKGl0ID0+IHsKICAgICAgICAgICAgZC5wdXNoKHsKICAgICAgICAgICAgICAgIHVybDogaXQudm9kX2lkLAogICAgICAgICAgICAgICAgdGl0bGU6IGl0LnZvZF9uYW1lLAogICAgICAgICAgICAgICAgaW1nOiBpdC52b2RfcGljLAogICAgICAgICAgICAgICAgZGVzYzogaXQudm9kX3JlbWFya3MKICAgICAgICAgICAgfSkKICAgICAgICB9KTsKICAgICAgICBzZXRSZXN1bHQoZCkKICAgIH0pLAogICAg5LqM57qnOiAnanM6XG4gICAgICBsZXQgaHRtbD1yZXF1ZXN0KGlucHV0KTtcbiAgICAgIGh0bWw9SlNPTi5wYXJzZShodG1sKTtcbiAgICAgIGxldCBkYXRhPWh0bWwubGlzdDtcbiAgICAgIFZPRD1kYXRhWzBdOycsCiAgICDmkJzntKI6ICdqc29uOmxpc3Q7dm9kX25hbWU7dm9kX3BpYzt2b2RfcmVtYXJrczt2b2RfaWQ7dm9kX3BsYXlfZnJvbScsCn0= \ No newline at end of file diff --git a/潇洒/movie/js/XXDM.js b/潇洒/movie/js/XXDM.js new file mode 100644 index 00000000..71b9369d --- /dev/null +++ b/潇洒/movie/js/XXDM.js @@ -0,0 +1 @@ +Z2xvYmFsVGhpcy5oX29zdCA9ICdodHRwOi8veHhzcC54eG1oLnRvcC8nOwp2YXIga2V5ID0gQ3J5cHRvSlMuZW5jLkJhc2U2NC5wYXJzZSgiTUdZM09URmlabU13WkdNMk1XVTRaZz09Iik7CnZhciBpdiA9IENyeXB0b0pTLmVuYy5CYXNlNjQucGFyc2UoIk1HWTNPVEZpWm1Nd1pHTTJNV1U0Wmc9PSIpOwpnbG9iYWxUaGlzLkFFU19EZWNyeXB0ID0gZnVuY3Rpb24od29yZCkgewogICAgdHJ5IHsKICAgICAgICB2YXIgZGVjcnlwdCA9IENyeXB0b0pTLkFFUy5kZWNyeXB0KHdvcmQsIGtleSwgewogICAgICAgICAgICBpdjogaXYsCiAgICAgICAgICAgIG1vZGU6IENyeXB0b0pTLm1vZGUuQ0JDLAogICAgICAgICAgICBwYWRkaW5nOiBDcnlwdG9KUy5wYWQuUGtjczcsCiAgICAgICAgfSk7CiAgICAgICAgY29uc3QgZGVjcnlwdGVkVGV4dCA9IGRlY3J5cHQudG9TdHJpbmcoQ3J5cHRvSlMuZW5jLlV0ZjgpOwogICAgICAgIGlmICghZGVjcnlwdGVkVGV4dCkgewogICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoIuino+WvhuWQjueahOWGheWuueS4uuepuiIpOwogICAgICAgIH0KICAgICAgICByZXR1cm4gZGVjcnlwdGVkVGV4dDsKICAgIH0gY2F0Y2ggKGUpIHsKICAgICAgICBjb25zb2xlLmVycm9yKCLop6Plr4blpLHotKU6IiwgZSk7CiAgICAgICAgcmV0dXJuIG51bGw7CiAgICB9Cn07Cmdsb2JhbFRoaXMuQUVTX0VuY3J5cHQgPSBmdW5jdGlvbih3b3JkKSB7CiAgICB2YXIgZW5jcnlwdGVkID0gQ3J5cHRvSlMuQUVTLmVuY3J5cHQod29yZCwga2V5LCB7CiAgICAgICAgaXY6IGl2LAogICAgICAgIG1vZGU6IENyeXB0b0pTLm1vZGUuQ0JDLAogICAgICAgIHBhZGRpbmc6IENyeXB0b0pTLnBhZC5Qa2NzNwogICAgfSk7CiAgICByZXR1cm4gZW5jcnlwdGVkLnRvU3RyaW5nKCk7Cn07CgpnbG9iYWxUaGlzLnZvZDEgPSBmdW5jdGlvbih0LCBwZykgewogICAgbGV0IGh0bWwxID0gcmVxdWVzdChoX29zdCArICdhcGkucGhwL2dldGFwcGFwaS5pbmRleC90eXBlRmlsdGVyVm9kTGlzdCcsIHsKICAgICAgICBib2R5OiB7CiAgICAgICAgICAgIGFyZWE6ICflhajpg6gnLAogICAgICAgICAgICB5ZWFyOiAn5YWo6YOoJywKICAgICAgICAgICAgdHlwZV9pZDogdCwKICAgICAgICAgICAgcGFnZTogcGcsCiAgICAgICAgICAgIHNvcnQ6ICfmnIDmlrAnLAogICAgICAgICAgICBsYW5nOiAn5YWo6YOoJywKICAgICAgICAgICAgY2xhc3M6ICflhajpg6gnCiAgICAgICAgfSwKICAgICAgICBoZWFkZXJzOiB7CiAgICAgICAgICAgICdVc2VyLUFnZW50JzogJ29raHR0cC8zLjE0LjknLAogICAgICAgICAgICAnQ29udGVudC1UeXBlJzogJ2FwcGxpY2F0aW9uL3gtd3d3LWZvcm0tdXJsZW5jb2RlZCcKICAgICAgICB9LAogICAgICAgICdtZXRob2QnOiAnUE9TVCcKICAgIH0sIHRydWUpOwogICAgbGV0IGh0bWwgPSBKU09OLnBhcnNlKGh0bWwxKTsKICAgIHJldHVybiAoQUVTX0RlY3J5cHQoaHRtbC5kYXRhKSk7Cn0KZ2xvYmFsVGhpcy52b2RpZHMgPSBmdW5jdGlvbihpZHMpIHsKICAgIGxldCBodG1sMSA9IGZldGNoKGhfb3N0ICsgJ2FwaS5waHAvZ2V0YXBwYXBpLmluZGV4L3ZvZERldGFpbCcsIHsKICAgICAgICBtZXRob2Q6ICdQT1NUJywKICAgICAgICBoZWFkZXJzOiB7CiAgICAgICAgICAgICdVc2VyLUFnZW50JzogJ29raHR0cC8zLjE0LjknLAogICAgICAgICAgICAnQ29udGVudC1UeXBlJzogJ2FwcGxpY2F0aW9uL3gtd3d3LWZvcm0tdXJsZW5jb2RlZCcKICAgICAgICB9LAogICAgICAgIGJvZHk6IHsKICAgICAgICAgICAgdm9kX2lkOiBpZHMsCiAgICAgICAgfQogICAgfSk7CiAgICBsZXQgaHRtbCA9IEpTT04ucGFyc2UoaHRtbDEpOwogICAgY29uc3QgcmRhdGEgPSBKU09OLnBhcnNlKEFFU19EZWNyeXB0KGh0bWwuZGF0YSkpOwogICAgY29uc3QgZGF0YSA9IHsKICAgICAgICB2b2RfaWQ6IGlkcywKICAgICAgICB2b2RfbmFtZTogcmRhdGEudm9kLnZvZF9uYW1lLAogICAgICAgIHZvZF9yZW1hcmtzOiByZGF0YS52b2Qudm9kX3JlbWFya3MsCiAgICAgICAgdm9kX2FjdG9yOiByZGF0YS52b2Qudm9kX2FjdG9yLAogICAgICAgIHZvZF9kaXJlY3RvcjogcmRhdGEudm9kLnZvZF9kaXJlY3RvciwKICAgICAgICB2b2RfY29udGVudDogcmRhdGEudm9kLnZvZF9jb250ZW50LAogICAgICAgIHZvZF9wbGF5X2Zyb206ICcnLAogICAgICAgIHZvZF9wbGF5X3VybDogJycKICAgIH07CgogICAgcmRhdGEudm9kX3BsYXlfbGlzdC5mb3JFYWNoKCh2YWx1ZSkgPT4gewogICAgICAgIGRhdGEudm9kX3BsYXlfZnJvbSArPSB2YWx1ZS5wbGF5ZXJfaW5mby5zaG93ICsgJyQkJCc7CiAgICAgICAgdmFsdWUudXJscy5mb3JFYWNoKCh2KSA9PiB7CiAgICAgICAgICAgIGRhdGEudm9kX3BsYXlfdXJsICs9IHYubmFtZSArICckJyArIHZhbHVlLnBsYXllcl9pbmZvLnBhcnNlICsgJ34nICsgdi51cmwgKyAnficgKyByZGF0YS52b2Qudm9kX25hbWUgKyAnficgKyB2Lm5hbWUgKyAnIyc7CiAgICAgICAgfSk7CiAgICAgICAgZGF0YS52b2RfcGxheV91cmwgKz0gJyQkJCc7CiAgICB9KTsKICAgIHJldHVybiBkYXRhOwp9Ci8v5pCc57SiCmdsb2JhbFRoaXMuc3N2b2QgPSBmdW5jdGlvbih3ZCkgewogICAgdmFyIGh0bWwxID0gZmV0Y2goaF9vc3QgKyAnYXBpLnBocC9nZXRhcHBhcGkuaW5kZXgvc2VhcmNoTGlzdCcsIHsKICAgICAgICBtZXRob2Q6ICdQT1NUJywKICAgICAgICBoZWFkZXJzOiB7CiAgICAgICAgICAgICdVc2VyLUFnZW50JzogJ29raHR0cC8zLjE0LjknLAogICAgICAgICAgICAnQ29udGVudC1UeXBlJzogJ2FwcGxpY2F0aW9uL3gtd3d3LWZvcm0tdXJsZW5jb2RlZCcKICAgICAgICB9LAogICAgICAgIGJvZHk6IHsKICAgICAgICAgICAga2V5d29yZHM6IHdkLAogICAgICAgICAgICB0eXBlcGFnZV9pZDogMSwKICAgICAgICB9CiAgICB9KTsKICAgIGxldCBodG1sID0gSlNPTi5wYXJzZShodG1sMSk7CiAgICByZXR1cm4gQUVTX0RlY3J5cHQoaHRtbC5kYXRhKTsKfQovL+ino+aekApnbG9iYWxUaGlzLmp4eCA9IGZ1bmN0aW9uKGlkLCB1cmwsIG5hbWUsIGp1amkpIHsKICAgIC8qIGlmKCI3NDE4NTI5NjMiIT09Jzc0MTg1Mjk2MycpewogICAgICByZXR1cm4gJ2h0dHBzOi8vczAubWFsbC50Y2wuY29tL2dyb3VwMS9NMDAvMDAvODkvQ3ZvR0JHZGNPUGFBQVV4dkFEd1puaVZWMmJjNDc2Lm1wNCc7CiAgICAgfSovCiAgICBpZiAoaWQuc3RhcnRzV2l0aCgnaHR0cCcpKSB7CiAgICAgICAgcmV0dXJuIHsKICAgICAgICAgICAgcGFyc2U6IDEsCiAgICAgICAgICAgIHVybDogaWQgKyB1cmwsCiAgICAgICAgICAgIGp4OiAwLAogICAgICAgICAgICBkYW5tYWt1OiAnaHR0cDovLzEwMy40NS4xNjIuMjA3OjI1MjUyL2hiZG0ucGhwP2tleT03ODk0NTYxMjMyJmlkPScgKyAnJmptPScgKyBuYW1lICsgJyZqcz0nICsganVqaSArICcma2V5PTc0MTg1Mjk2MycKICAgICAgICB9OwogICAgfQogICAgaWYgKGlkID09IDApIHsKICAgICAgICByZXR1cm4gewogICAgICAgICAgICBwYXJzZTogMCwKICAgICAgICAgICAgdXJsOiBpZCArIHVybCwKICAgICAgICAgICAgang6IDEsCiAgICAgICAgICAgIGRhbm1ha3U6ICdodHRwOi8vMTAzLjQ1LjE2Mi4yMDc6MjUyNTIvaGJkbS5waHA/a2V5PTc4OTQ1NjEyMzImaWQ9JyArICcmam09JyArIG5hbWUgKyAnJmpzPScgKyBqdWppICsgJyZrZXk9NzQxODUyOTYzJwogICAgICAgIH07CiAgICB9CgogICAgbGV0IGh0bWwxID0gcmVxdWVzdChoX29zdCArICdhcGkucGhwL2dldGFwcGFwaS5pbmRleC92b2RQYXJzZScsIHsKICAgICAgICBtZXRob2Q6ICdQT1NUJywKICAgICAgICBoZWFkZXJzOiB7CiAgICAgICAgICAgICdVc2VyLUFnZW50JzogJ29raHR0cC8zLjE0LjknLAogICAgICAgICAgICAnQ29udGVudC1UeXBlJzogJ2FwcGxpY2F0aW9uL3gtd3d3LWZvcm0tdXJsZW5jb2RlZCcKICAgICAgICB9LAogICAgICAgIGJvZHk6IHsKICAgICAgICAgICAgcGFyc2VfYXBpOiBpZCwKICAgICAgICAgICAgdXJsOiBBRVNfRW5jcnlwdCh1cmwpLAogICAgICAgIH0KICAgIH0pOwogICAgbGV0IGh0bWwgPSBBRVNfRGVjcnlwdChKU09OLnBhcnNlKGh0bWwxKS5kYXRhKTsKICAgIGNvbnNvbGUubG9nKGh0bWwpOwogICAgbGV0IGRlY3J5ID0gaHRtbC5yZXBsYWNlKC9cbi9nLCAnJykucmVwbGFjZSgvXFwvZywgJycpOwogICAgbGV0IG1hdGNoZXMgPSBkZWNyeS5tYXRjaCgvInVybCI6IihbXiJdKykiLyk7CiAgICBpZiAoIW1hdGNoZXMgfHwgbWF0Y2hlc1sxXSA9PT0gbnVsbCkgewogICAgICAgIG1hdGNoZXMgPSBkZWNyeS5tYXRjaCgvInVybCI6ICIoW14iXSspIi8pOwogICAgfQogICAgcmV0dXJuIHsKICAgICAgICBwYXJzZTogMCwKICAgICAgICB1cmw6IG1hdGNoZXNbMV0sCiAgICAgICAgang6IDAsCiAgICAgICAgZGFubWFrdTogJ2h0dHA6Ly8xMDMuNDUuMTYyLjIwNzoyNTI1Mi9oYmRtLnBocD9rZXk9Nzg5NDU2MTIzMiZpZD0nICsgJyZqbT0nICsgbmFtZSArICcmanM9JyArIGp1amkgKyAnJmtleT03NDE4NTI5NjMnCiAgICB9Owp9Cgp2YXIgcnVsZSA9IHsKICAgIHRpdGxlOiAn5bCP54aKJywKICAgIGhvc3Q6ICcnLAogICAgZGV0YWlsVXJsOiAnZnlpZCcsCiAgICBzZWFyY2hVcmw6ICcqKicsCiAgICB1cmw6ICdmeWNsYXNzJywKICAgIHNlYXJjaGFibGU6IDIsCiAgICBxdWlja1NlYXJjaDogMSwKICAgIGZpbHRlcmFibGU6IDAsCiAgICBjbGFzc19uYW1lOiAn55S15b2xJueUteinhuWJpybnu7zoibom5Yqo5ryrJywKICAgIGNsYXNzX3VybDogJzEmMiYzJjQnLAogICAgcGxheV9wYXJzZTogdHJ1ZSwKICAgIGxhenk6ICRqcy50b1N0cmluZygoKSA9PiB7CiAgICAgICAgY29uc3QgcGFydHMgPSBpbnB1dC5zcGxpdCgnficpOwogICAgICAgIGlucHV0ID0ganh4KHBhcnRzWzBdLCBwYXJ0c1sxXSwgcGFydHNbMl0sIHBhcnRzWzNdKTsKICAgIH0pLAogICAg5o6o6I2QOiAkanMudG9TdHJpbmcoKCkgPT4gewogICAgICAgIGxldCBkYXRhID0gdm9kMSgwLCAwKTsKICAgICAgICBsZXQgYmF0YSA9IEpTT04ucGFyc2UoZGF0YSkucmVjb21tZW5kX2xpc3Q7CiAgICAgICAgYmF0YS5mb3JFYWNoKGl0ID0+IHsKICAgICAgICAgICAgZC5wdXNoKHsKICAgICAgICAgICAgICAgIHVybDogaXQudm9kX2lkLAogICAgICAgICAgICAgICAgdGl0bGU6IGl0LnZvZF9uYW1lLAogICAgICAgICAgICAgICAgaW1nOiBpdC52b2RfcGljLAogICAgICAgICAgICAgICAgZGVzYzogaXQudm9kX3JlbWFya3MKICAgICAgICAgICAgfSk7CiAgICAgICAgfSk7CiAgICAgICAgc2V0UmVzdWx0KGQpOwogICAgfSksCiAgICDkuIDnuqc6ICRqcy50b1N0cmluZygoKSA9PiB7CiAgICAgICAgbGV0IGRhdGEgPSB2b2QxKGlucHV0LCBNWV9QQUdFKTsKICAgICAgICBsZXQgYmF0YSA9IEpTT04ucGFyc2UoZGF0YSkucmVjb21tZW5kX2xpc3Q7CiAgICAgICAgYmF0YS5mb3JFYWNoKGl0ID0+IHsKICAgICAgICAgICAgZC5wdXNoKHsKICAgICAgICAgICAgICAgIHVybDogaXQudm9kX2lkLAogICAgICAgICAgICAgICAgdGl0bGU6IGl0LnZvZF9uYW1lLAogICAgICAgICAgICAgICAgaW1nOiBpdC52b2RfcGljLAogICAgICAgICAgICAgICAgZGVzYzogaXQudm9kX3JlbWFya3MKICAgICAgICAgICAgfSk7CiAgICAgICAgfSk7CiAgICAgICAgc2V0UmVzdWx0KGQpOwogICAgfSksCiAgICDkuoznuqc6ICRqcy50b1N0cmluZygoKSA9PiB7CiAgICAgICAgY29uc29sZS5sb2coIuiwg+ivleS/oeaBrzIiICsgaW5wdXQpOwogICAgICAgIGxldCBkYXRhID0gdm9kaWRzKGlucHV0KTsKICAgICAgICAvL2NvbnNvbGUubG9nKGRhdGEpOwogICAgICAgIFZPRCA9IGRhdGE7CiAgICB9KSwKICAgIOaQnOe0ojogJGpzLnRvU3RyaW5nKCgpID0+IHsKICAgICAgICBsZXQgZGF0YSA9IHNzdm9kKGlucHV0KTsKICAgICAgICBsZXQgYmF0YSA9IEpTT04ucGFyc2UoZGF0YSkuc2VhcmNoX2xpc3Q7CiAgICAgICAgYmF0YS5mb3JFYWNoKGl0ID0+IHsKICAgICAgICAgICAgZC5wdXNoKHsKICAgICAgICAgICAgICAgIHVybDogaXQudm9kX2lkLAogICAgICAgICAgICAgICAgdGl0bGU6IGl0LnZvZF9uYW1lLAogICAgICAgICAgICAgICAgaW1nOiBpdC52b2RfcGljLAogICAgICAgICAgICAgICAgZGVzYzogaXQudm9kX3JlbWFya3MKICAgICAgICAgICAgfSk7CiAgICAgICAgfSk7CiAgICAgICAgLy8gIGNvbnNvbGUubG9nKGRhdGEpOwogICAgICAgIHNldFJlc3VsdChkKTsKICAgIH0pLAp9 \ No newline at end of file diff --git a/潇洒/movie/js/YKSP.js b/潇洒/movie/js/YKSP.js new file mode 100644 index 00000000..b98c8bae --- /dev/null +++ b/潇洒/movie/js/YKSP.js @@ -0,0 +1,2628 @@ +var rule = { + title: '优酷', + host: 'https://www.%79%6f%75%6b%75.com', + homeUrl: '', + searchUrl: 'https://search.%79%6f%75%6b%75.com/api/search?pg=fypage&keyword=**', + searchable: 2, + quickSearch: 0, + filterable: 1, + multi: 1, + url: '/category/data?optionRefresh=1&pageNo=fypage¶ms=fyfilter', + filter_url: '{{fl}}', + filter: { + "电视剧": [{ + "key": "main_area", + "name": "全部地区", + "value": [{ + "n": "全部地区", + "v": "" + }, { + "n": "内地剧", + "v": "中国内地" + }, { + "n": "港剧", + "v": "中国香港" + }, { + "n": "台剧", + "v": "中国台湾" + }, { + "n": "韩剧", + "v": "韩国" + }, { + "n": "美剧", + "v": "美国" + }, { + "n": "英剧", + "v": "英国" + }, { + "n": "日剧", + "v": "日本" + }, { + "n": "泰剧", + "v": "泰国" + }] + }, { + "key": "tags", + "name": "全部类型", + "value": [{ + "n": "全部类型", + "v": "" + }, { + "n": "青春", + "v": "青春" + }, { + "n": "古装", + "v": "古装" + }, { + "n": "爱情", + "v": "爱情" + }, { + "n": "都市", + "v": "都市" + }, { + "n": "喜剧", + "v": "喜剧,搞笑" + }, { + "n": "战争", + "v": "战争" + }, { + "n": "军旅", + "v": "军旅" + }, { + "n": "谍战", + "v": "谍战" + }, { + "n": "偶像", + "v": "偶像" + }, { + "n": "警匪", + "v": "警匪" + }, { + "n": "冒险", + "v": "冒险" + }, { + "n": "穿越", + "v": "穿越" + }, { + "n": "仙侠", + "v": "仙侠" + }, { + "n": "武侠", + "v": "武侠" + }, { + "n": "悬疑", + "v": "悬疑" + }, { + "n": "罪案", + "v": "罪案" + }, { + "n": "家庭", + "v": "家庭" + }, { + "n": "历史", + "v": "历史" + }, { + "n": "年代", + "v": "年代" + }, { + "n": "农村", + "v": "农村" + }] + }, { + "key": "year", + "name": "全部年份", + "value": [{ + "n": "全部年份", + "v": "" + }, { + "n": "2026", + "v": "2026" + }, { + "n": "2025", + "v": "2025" + }, { + "n": "2024", + "v": "2024" + }, { + "n": "2023", + "v": "2023" + }, { + "n": "2022", + "v": "2022" + }, { + "n": "2021", + "v": "2021" + }, { + "n": "2020", + "v": "2020" + }, { + "n": "2019", + "v": "2019" + }, { + "n": "2018", + "v": "2018" + }, { + "n": "2017", + "v": "2017" + }, { + "n": "2016", + "v": "2016" + }, { + "n": "2015", + "v": "2015" + }, { + "n": "2014-2011", + "v": "2011-2014" + }, { + "n": "更早", + "v": "-2010" + }] + }, { + "key": "status", + "name": "全部规格", + "value": [{ + "n": "全部规格", + "v": "" + }, { + "n": "全网独播", + "v": "1" + }, { + "n": "优酷自制", + "v": "2" + }, { + "n": "已完结", + "v": "3" + }, { + "n": "即将上线", + "v": "4" + }, { + "n": "短剧", + "v": "5" + }] + }, { + "key": "pay_type", + "name": "付费类型", + "value": [{ + "n": "付费类型", + "v": "" + }, { + "n": "免费", + "v": "0" + }, { + "n": "VIP", + "v": "2" + }, { + "n": "付费", + "v": "1" + }] + }, { + "key": "sort", + "name": "综合排序", + "value": [{ + "n": "综合排序", + "v": "" + }, { + "n": "热度最高", + "v": "7" + }, { + "n": "最新上线", + "v": "1" + }, { + "n": "最好评", + "v": "3" + }, { + "n": "最多播放", + "v": "2" + }] + }], + "电影": [{ + "key": "main_area", + "name": "全部地区", + "value": [{ + "n": "全部地区", + "v": "" + }, { + "n": "内地", + "v": "中国内地" + }, { + "n": "中国香港", + "v": "中国香港" + }, { + "n": "中国台湾", + "v": "中国台湾" + }, { + "n": "美国", + "v": "美国" + }, { + "n": "印度", + "v": "印度" + }, { + "n": "日韩", + "v": "韩国,日本" + }, { + "n": "泰国", + "v": "泰国" + }, { + "n": "欧洲", + "v": "欧洲" + }] + }, { + "key": "tags", + "name": "全部类型", + "value": [{ + "n": "全部类型", + "v": "" + }, { + "n": "喜剧", + "v": "喜剧,搞笑" + }, { + "n": "动作", + "v": "动作" + }, { + "n": "怪兽", + "v": "怪兽" + }, { + "n": "战争", + "v": "战争" + }, { + "n": "爱情", + "v": "爱情" + }, { + "n": "悬疑", + "v": "悬疑" + }, { + "n": "武侠", + "v": "武侠" + }, { + "n": "奇幻", + "v": "奇幻" + }, { + "n": "科幻", + "v": "科幻" + }, { + "n": "冒险", + "v": "冒险" + }, { + "n": "警匪", + "v": "警匪" + }, { + "n": "动画", + "v": "动画" + }, { + "n": "惊悚", + "v": "惊悚" + }, { + "n": "犯罪", + "v": "犯罪" + }, { + "n": "恐怖", + "v": "恐怖" + }, { + "n": "剧情", + "v": "剧情" + }, { + "n": "历史", + "v": "历史" + }, { + "n": "纪录片", + "v": "纪录片" + }, { + "n": "传记", + "v": "传记" + }, { + "n": "歌舞", + "v": "歌舞" + }, { + "n": "短片", + "v": "短片" + }, { + "n": "其他", + "v": "其他" + }] + }, { + "key": "source", + "name": "全部规格", + "value": [{ + "n": "全部规格", + "v": "" + }, { + "n": "院线", + "v": "1" + }, { + "n": "网络电影", + "v": "0" + }, { + "n": "独播", + "v": "2" + }, { + "n": "高清修复", + "v": "3" + }, { + "n": "1080P", + "v": "4" + }] + }, { + "key": "year", + "name": "全部年份", + "value": [{ + "n": "全部年份", + "v": "" + }, { + "n": "2026", + "v": "2026" + }, { + "n": "2025", + "v": "2025" + }, { + "n": "2024", + "v": "2024" + }, { + "n": "2023", + "v": "2023" + }, { + "n": "2022", + "v": "2022" + }, { + "n": "2021", + "v": "2021" + }, { + "n": "2020", + "v": "2020" + }, { + "n": "2019", + "v": "2019" + }, { + "n": "2018", + "v": "2018" + }, { + "n": "2017", + "v": "2017" + }, { + "n": "2016", + "v": "2016" + }, { + "n": "2015", + "v": "2015" + }, { + "n": "2014-2010", + "v": "2010-2014" + }, { + "n": "2009-2000", + "v": "2000-2009" + }, { + "n": "90年代", + "v": "1990-1999" + }, { + "n": "80年代", + "v": "1980-1989" + }, { + "n": "70年代", + "v": "1970-1979" + }, { + "n": "更早", + "v": "-1969" + }] + }, { + "key": "pay_type", + "name": "付费类型", + "value": [{ + "n": "付费类型", + "v": "" + }, { + "n": "免费", + "v": "0" + }, { + "n": "会员", + "v": "2" + }, { + "n": "点播", + "v": "1" + }] + }, { + "key": "sort", + "name": "综合排序", + "value": [{ + "n": "综合排序", + "v": "" + }, { + "n": "热度最高", + "v": "7" + }, { + "n": "最多播放", + "v": "2" + }, { + "n": "最新上线", + "v": "1" + }, { + "n": "最好评", + "v": "3" + }] + }, { + "key": "tag_label_name", + "name": "为你推荐", + "value": [{ + "n": "为你推荐", + "v": "" + }, { + "n": "高分必看", + "v": "高分必看" + }, { + "n": "卖座电影", + "v": "卖座电影" + }, { + "n": "小说改编", + "v": "小说改编" + }, { + "n": "铁血硬汉", + "v": "铁血硬汉" + }, { + "n": "视效大片", + "v": "视效大片" + }, { + "n": "漫画改编", + "v": "漫画改编" + }, { + "n": "绝地求生", + "v": "绝地求生" + }, { + "n": "真人真事改编", + "v": "真人真事改编" + }, { + "n": "范伟", + "v": "范伟" + }, { + "n": "火爆枪战", + "v": "火爆枪战" + }, { + "n": "影史经典", + "v": "影史经典" + }, { + "n": "拯救世界", + "v": "拯救世界" + }, { + "n": "万茜", + "v": "万茜" + }, { + "n": "马思纯", + "v": "马思纯" + }, { + "n": "王俊凯", + "v": "王俊凯" + }, { + "n": "豪华阵容", + "v": "豪华阵容" + }, { + "n": "李玉", + "v": "李玉" + }, { + "n": "无厘头喜剧", + "v": "无厘头喜剧" + }, { + "n": "超能力", + "v": "超能力" + }, { + "n": "欢喜搭档", + "v": "欢喜搭档" + }] + }], + "综艺": [{ + "key": "main_area", + "name": "全部地区", + "value": [{ + "n": "全部地区", + "v": "" + }, { + "n": "内地", + "v": "中国内地" + }, { + "n": "中国台湾", + "v": "中国台湾" + }, { + "n": "美国", + "v": "美国" + }, { + "n": "英国", + "v": "英国" + }] + }, { + "key": "tags", + "name": "全部类型", + "value": [{ + "n": "全部类型", + "v": "" + }, { + "n": "偶像", + "v": "偶像" + }, { + "n": "舞蹈", + "v": "舞蹈" + }, { + "n": "音乐", + "v": "音乐" + }, { + "n": "情感", + "v": "情感" + }, { + "n": "喜剧", + "v": "喜剧,搞笑" + }, { + "n": "体育", + "v": "体育" + }, { + "n": "游戏", + "v": "游戏" + }, { + "n": "相声", + "v": "相声" + }, { + "n": "婚恋", + "v": "婚恋" + }, { + "n": "时尚", + "v": "时尚" + }, { + "n": "晚会", + "v": "晚会" + }, { + "n": "明星访谈", + "v": "明星访谈" + }, { + "n": "亲子", + "v": "亲子" + }, { + "n": "生活", + "v": "生活" + }, { + "n": "文化", + "v": "文化" + }, { + "n": "美食", + "v": "美食" + }, { + "n": "旅游", + "v": "旅游" + }, { + "n": "益智", + "v": "益智" + }] + }, { + "key": "year", + "name": "全部年份", + "value": [{ + "n": "全部年份", + "v": "" + }, { + "n": "2026", + "v": "2026" + }, { + "n": "2025", + "v": "2025" + }, { + "n": "2024", + "v": "2024" + }, { + "n": "2023", + "v": "2023" + }, { + "n": "2022", + "v": "2022" + }, { + "n": "2021", + "v": "2021" + }, { + "n": "2020", + "v": "2020" + }, { + "n": "2019", + "v": "2019" + }, { + "n": "2018", + "v": "2018" + }, { + "n": "2017", + "v": "2017" + }, { + "n": "2016", + "v": "2016" + }, { + "n": "2015", + "v": "2015" + }, { + "n": "2014-2011", + "v": "2011-2014" + }, { + "n": "更早", + "v": "-2010" + }] + }, { + "key": "status", + "name": "全部规格", + "value": [{ + "n": "全部规格", + "v": "" + }, { + "n": "优酷自制", + "v": "2" + }, { + "n": "优酷独播", + "v": "1" + }, { + "n": "电视综艺", + "v": "6" + }, { + "n": "已完结", + "v": "3" + }, { + "n": "即将上线", + "v": "4" + }] + }, { + "key": "pay_type", + "name": "付费类型", + "value": [{ + "n": "付费类型", + "v": "" + }, { + "n": "免费", + "v": "0" + }, { + "n": "VIP", + "v": "2" + }, { + "n": "付费", + "v": "1" + }] + }, { + "key": "sort", + "name": "热度最高", + "value": [{ + "n": "热度最高", + "v": "" + }, { + "n": "最新更新", + "v": "8" + }, { + "n": "最近开播", + "v": "9" + }, { + "n": "最多评论", + "v": "4" + }] + }, { + "key": "tag_label_name", + "name": "为你推荐", + "value": [{ + "n": "为你推荐", + "v": "" + }, { + "n": "舞台竞演", + "v": "舞台竞演" + }, { + "n": "刘雨昕", + "v": "刘雨昕" + }, { + "n": "王一博", + "v": "王一博" + }, { + "n": "韩庚", + "v": "韩庚" + }, { + "n": "李承铉", + "v": "李承铉" + }, { + "n": "户外竞技", + "v": "户外竞技" + }, { + "n": "浙江卫视", + "v": "浙江卫视" + }, { + "n": "东方卫视", + "v": "东方卫视" + }, { + "n": "岳云鹏", + "v": "岳云鹏" + }, { + "n": "王迅", + "v": "王迅" + }, { + "n": "杨迪", + "v": "杨迪" + }, { + "n": "杨超越", + "v": "杨超越" + }, { + "n": "黄明昊", + "v": "黄明昊" + }, { + "n": "郭京飞", + "v": "郭京飞" + }, { + "n": "欧阳娜娜", + "v": "欧阳娜娜" + }, { + "n": "德云社", + "v": "德云社" + }, { + "n": "郑恺", + "v": "郑恺" + }, { + "n": "华少", + "v": "华少" + }, { + "n": "郭德纲", + "v": "郭德纲" + }, { + "n": "贾玲", + "v": "贾玲" + }] + }], + "动漫": [{ + "key": "sort", + "name": "综合排序", + "value": [{ + "n": "综合排序", + "v": "" + }, { + "n": "最多播放", + "v": "2" + }, { + "n": "最好评", + "v": "3" + }, { + "n": "最新上线", + "v": "1" + }] + }, { + "key": "main_area", + "name": "全部地区", + "value": [{ + "n": "全部地区", + "v": "" + }, { + "n": "内地", + "v": "中国内地" + }, { + "n": "日本", + "v": "日本" + }, { + "n": "美国", + "v": "美国" + }, { + "n": "中国台湾", + "v": "中国台湾" + }, { + "n": "其他", + "v": "其他" + }] + }, { + "key": "tags", + "name": "全部类型", + "value": [{ + "n": "全部类型", + "v": "" + }, { + "n": "热血", + "v": "热血,战斗" + }, { + "n": "励志", + "v": "励志" + }, { + "n": "玄幻", + "v": "玄幻" + }, { + "n": "古风", + "v": "历史,古风" + }, { + "n": "恋爱", + "v": "恋爱" + }, { + "n": "青春", + "v": "青春" + }, { + "n": "校园", + "v": "校园" + }, { + "n": "运动", + "v": "社团,运动" + }, { + "n": "科幻", + "v": "科幻" + }, { + "n": "冒险", + "v": "冒险" + }, { + "n": "魔法", + "v": "魔法" + }, { + "n": "日常", + "v": "日常" + }, { + "n": "治愈", + "v": "治愈" + }, { + "n": "机战", + "v": "机战" + }, { + "n": "推理", + "v": "推理" + }, { + "n": "都市", + "v": "都市" + }, { + "n": "小说改", + "v": "小说改编" + }, { + "n": "游戏改", + "v": "游戏改编" + }, { + "n": "漫画改", + "v": "漫画改编" + }, { + "n": "动态漫", + "v": "动态漫画" + }, { + "n": "特摄", + "v": "特摄" + }, { + "n": "布袋戏", + "v": "布袋戏" + }] + }, { + "key": "completed", + "name": "连载情况", + "value": [{ + "n": "连载情况", + "v": "" + }, { + "n": "更新中", + "v": "0" + }, { + "n": "已完结", + "v": "1" + }] + }, { + "key": "pay_type", + "name": "付费类型", + "value": [{ + "n": "付费类型", + "v": "" + }, { + "n": "免费", + "v": "0" + }, { + "n": "会员", + "v": "2" + }] + }, { + "key": "year", + "name": "全部年份", + "value": [{ + "n": "全部年份", + "v": "" + }, { + "n": "2026", + "v": "2026" + }, { + "n": "2025", + "v": "2025" + }, { + "n": "2024", + "v": "2024" + }, { + "n": "2023", + "v": "2023" + }, { + "n": "2022", + "v": "2022" + }, { + "n": "2021", + "v": "2021" + }, { + "n": "2020", + "v": "2020" + }, { + "n": "2019", + "v": "2019" + }, { + "n": "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": "00年代", + "v": "2000-2010" + }, { + "n": "更早", + "v": "-1999" + }] + }, { + "key": "tag_label_name", + "name": "为你推荐", + "value": [{ + "n": "为你推荐", + "v": "" + }, { + "n": "3D动画", + "v": "3D动画" + }, { + "n": "搞笑日常", + "v": "搞笑日常" + }, { + "n": "大男主", + "v": "大男主" + }, { + "n": "高燃", + "v": "高燃" + }, { + "n": "萌系", + "v": "萌系" + }, { + "n": "修真", + "v": "修真" + }, { + "n": "怀旧", + "v": "怀旧" + }, { + "n": "超级英雄", + "v": "超级英雄" + }, { + "n": "水树奈奈", + "v": "水树奈奈" + }, { + "n": "张杰", + "v": "张杰" + }, { + "n": "石田彰", + "v": "石田彰" + }, { + "n": "守护地球", + "v": "守护地球" + }, { + "n": "圆谷", + "v": "圆谷" + }, { + "n": "山新", + "v": "山新" + }, { + "n": "复仇", + "v": "复仇" + }, { + "n": "废柴逆袭", + "v": "废柴逆袭" + }, { + "n": "侦探", + "v": "侦探" + }, { + "n": "无厘头", + "v": "无厘头" + }, { + "n": "青山刚昌", + "v": "青山刚昌" + }, { + "n": "悬疑", + "v": "悬疑" + }] + }], + "少儿": [{ + "key": "main_area", + "name": "全部地区", + "value": [{ + "n": "全部地区", + "v": "" + }, { + "n": "中国", + "v": "中国,香港,台湾" + }, { + "n": "美国", + "v": "美国" + }, { + "n": "英国", + "v": "英国" + }, { + "n": "其他国家", + "v": "其他" + }] + }, { + "key": "show_label_type", + "name": "全部类型", + "value": [{ + "n": "全部类型", + "v": "" + }, { + "n": "动画", + "v": "动画" + }, { + "n": "儿歌", + "v": "儿歌" + }, { + "n": "玩具", + "v": "玩具" + }, { + "n": "动画电影", + "v": "电影" + }, { + "n": "绘本故事", + "v": "绘本故事" + }, { + "n": "真人", + "v": "真人" + }, { + "n": "少儿综艺", + "v": "少儿综艺" + }, { + "n": "亲子", + "v": "亲子" + }, { + "n": "探索纪实", + "v": "探索纪实" + }, { + "n": "音频", + "v": "音频" + }] + }, { + "key": "child_tags", + "name": "全部分类", + "value": [{ + "n": "全部分类", + "v": "" + }, { + "n": "益智", + "v": "益智" + }, { + "n": "冒险", + "v": "冒险" + }, { + "n": "幽默", + "v": "幽默" + }, { + "n": "机甲", + "v": "机甲" + }, { + "n": "公主魔法", + "v": "公主,魔法" + }, { + "n": "交通工具", + "v": "交通工具" + }, { + "n": "恐龙", + "v": "恐龙" + }, { + "n": "动物", + "v": "动物" + }, { + "n": "励志", + "v": "励志" + }, { + "n": "友情", + "v": "友情" + }, { + "n": "战斗", + "v": "战斗" + }, { + "n": "校园", + "v": "校园" + }, { + "n": "正义", + "v": "正义" + }, { + "n": "热血", + "v": "热血" + }, { + "n": "科幻", + "v": "科幻" + }, { + "n": "童话", + "v": "童话" + }, { + "n": "运动", + "v": "运动" + }, { + "n": "专注力", + "v": "专注力" + }, { + "n": "创造力", + "v": "创造力" + }, { + "n": "想象力", + "v": "想象力" + }, { + "n": "科普", + "v": "科普" + }, { + "n": "情商", + "v": "情商" + }, { + "n": "思维逻辑", + "v": "思维逻辑" + }, { + "n": "兴趣培养", + "v": "兴趣培养" + }, { + "n": "语文", + "v": "语文" + }, { + "n": "英语", + "v": "英语" + }, { + "n": "数学", + "v": "数学" + }, { + "n": "课程辅导", + "v": "课程辅导" + }] + }, { + "key": "age", + "name": "全部年龄", + "value": [{ + "n": "全部年龄", + "v": "" + }, { + "n": "0-2岁", + "v": "0-2" + }, { + "n": "3-4岁", + "v": "3-4" + }, { + "n": "5-6岁", + "v": "5-6" + }, { + "n": "7岁以上", + "v": "7-" + }] + }, { + "key": "pay_type", + "name": "付费类型", + "value": [{ + "n": "付费类型", + "v": "" + }, { + "n": "免费", + "v": "0" + }, { + "n": "付费", + "v": "1" + }, { + "n": "VIP", + "v": "2" + }] + }, { + "key": "sort", + "name": "综合排序", + "value": [{ + "n": "综合排序", + "v": "" + }, { + "n": "最新上线", + "v": "1" + }, { + "n": "最多播放", + "v": "2" + }, { + "n": "最多评论", + "v": "4" + }, { + "n": "最多收藏", + "v": "5" + }] + }], + "纪录片": [{ + "key": "tags", + "name": "全部类型", + "value": [{ + "n": "全部类型", + "v": "" + }, { + "n": "美食", + "v": "美食" + }, { + "n": "自然", + "v": "自然" + }, { + "n": "历史", + "v": "历史" + }, { + "n": "探险", + "v": "探险" + }, { + "n": "军事", + "v": "军事" + }, { + "n": "人物", + "v": "人物" + }, { + "n": "宇宙", + "v": "宇宙" + }, { + "n": "刑侦", + "v": "刑侦" + }, { + "n": "社会", + "v": "社会" + }, { + "n": "科技", + "v": "科技" + }, { + "n": "旅游", + "v": "旅游" + }] + }, { + "key": "company", + "name": "全部出品", + "value": [{ + "n": "全部出品", + "v": "" + }, { + "n": "BBC", + "v": "bbc,british" + }, { + "n": "央视", + "v": "央视,中央电视台,cctv,中国广播电影电视节目交易中心" + }, { + "n": "国家地理", + "v": "国家地理" + }, { + "n": "Love Nature", + "v": "love nature" + }, { + "n": "LGI", + "v": "looking" + }, { + "n": "A&E", + "v": "ae" + }, { + "n": "OTF", + "v": "fence" + }] + }, { + "key": "year", + "name": "全部年份", + "value": [{ + "n": "全部年份", + "v": "" + }, { + "n": "2026", + "v": "2026" + }, { + "n": "2025", + "v": "2025" + }, { + "n": "2024", + "v": "2024" + }, { + "n": "2023", + "v": "2023" + }, { + "n": "2022", + "v": "2022" + }, { + "n": "2021", + "v": "2021" + }, { + "n": "2020", + "v": "2020" + }, { + "n": "2019", + "v": "2019" + }, { + "n": "2018", + "v": "2018" + }, { + "n": "2017", + "v": "2017" + }, { + "n": "2016", + "v": "2016" + }, { + "n": "2015", + "v": "2015" + }, { + "n": "2014-2011", + "v": "2011-2014" + }, { + "n": "更早", + "v": "-2010" + }] + }, { + "key": "pay_type", + "name": "付费类型", + "value": [{ + "n": "付费类型", + "v": "" + }, { + "n": "免费", + "v": "0" + }, { + "n": "会员", + "v": "2" + }] + }, { + "key": "sort", + "name": "热度最高", + "value": [{ + "n": "热度最高", + "v": "" + }, { + "n": "综合排序", + "v": "0" + }, { + "n": "最新上线", + "v": "1" + }, { + "n": "最好评", + "v": "3" + }, { + "n": "最多收藏", + "v": "5" + }] + }], + "文化": [{ + "key": "tags", + "name": "全部类型", + "value": [{ + "n": "全部类型", + "v": "" + }, { + "n": "谈话", + "v": "谈话" + }, { + "n": "脱口秀", + "v": "脱口秀" + }, { + "n": "访谈", + "v": "访谈" + }, { + "n": "讲座论坛", + "v": "讲座论坛" + }, { + "n": "戏曲曲艺", + "v": "戏曲,曲艺" + }, { + "n": "舞台剧", + "v": "舞台剧" + }, { + "n": "文学", + "v": "文学" + }, { + "n": "国学", + "v": "国学" + }, { + "n": "艺术", + "v": "艺术" + }, { + "n": "培训课程", + "v": "培训课程" + }, { + "n": "有声书", + "v": "有声书" + }] + }, { + "key": "people", + "name": "文化大咖", + "value": [{ + "n": "文化大咖", + "v": "" + }, { + "n": "窦文涛", + "v": "窦文涛" + }, { + "n": "马未都", + "v": "马未都" + }, { + "n": "白岩松", + "v": "白岩松" + }, { + "n": "梅毅", + "v": "梅毅" + }, { + "n": "陈鲁豫", + "v": "陈鲁豫" + }, { + "n": "樊登", + "v": "樊登" + }, { + "n": "罗振宇", + "v": "罗振宇" + }, { + "n": "蒋方舟", + "v": "蒋方舟" + }, { + "n": "其他", + "v": "其他" + }] + }, { + "key": "year", + "name": "全部年份", + "value": [{ + "n": "全部年份", + "v": "" + }, { + "n": "2026", + "v": "2026" + }, { + "n": "2025", + "v": "2025" + }, { + "n": "2024", + "v": "2024" + }, { + "n": "2023", + "v": "2023" + }, { + "n": "2022", + "v": "2022" + }, { + "n": "2021", + "v": "2021" + }, { + "n": "2020", + "v": "2020" + }, { + "n": "2019", + "v": "2019" + }, { + "n": "2018", + "v": "2018" + }, { + "n": "2017", + "v": "2017" + }, { + "n": "2016", + "v": "2016" + }, { + "n": "2015", + "v": "2015" + }, { + "n": "2014-2011", + "v": "2011-2014" + }, { + "n": "更早", + "v": "-2010" + }] + }, { + "key": "pay_type", + "name": "付费类型", + "value": [{ + "n": "付费类型", + "v": "" + }, { + "n": "免费", + "v": "0" + }, { + "n": "会员", + "v": "2" + }] + }, { + "key": "sort", + "name": "热度最高", + "value": [{ + "n": "热度最高", + "v": "" + }, { + "n": "综合排序", + "v": "0" + }, { + "n": "最新上线", + "v": "1" + }, { + "n": "最好评", + "v": "3" + }, { + "n": "最多收藏", + "v": "5" + }] + }], + "亲子": [{ + "key": "qinzi_genre", + "name": "全部类型", + "value": [{ + "n": "全部类型", + "v": "" + }, { + "n": "孕产", + "v": "孕产" + }, { + "n": "育儿知识", + "v": "育儿知识,育儿达人,育儿专家,爸爸育儿,隔代育儿,育儿明星" + }, { + "n": "好物种草", + "v": "母婴用品,测评,母婴用品种草" + }, { + "n": "美食", + "v": "儿童美食,辅食,孕期饮食" + }, { + "n": "手工DIY", + "v": "手工diy" + }, { + "n": "教育观念", + "v": "教育观念" + }, { + "n": "亲子综艺", + "v": "亲子综艺" + }, { + "n": "亲子互动", + "v": "亲子旅游,亲子游戏,亲子阅读,玩具,早教,启蒙" + }, { + "n": "萌娃", + "v": "萌娃" + }, { + "n": "搞笑", + "v": "搞笑" + }, { + "n": "美妆", + "v": "美妆" + }] + }, { + "key": "pregnancy_stage", + "name": "全部阶段", + "value": [{ + "n": "全部阶段", + "v": "" + }, { + "n": "备孕", + "v": "备孕" + }, { + "n": "孕早期", + "v": "孕早" + }, { + "n": "孕中期", + "v": "孕中" + }, { + "n": "孕晚期", + "v": "孕晚" + }] + }, { + "key": "show_label_baby_age", + "name": "全部分龄", + "value": [{ + "n": "全部分龄", + "v": "" + }, { + "n": "0-1岁", + "v": "0-1" + }, { + "n": "1-3岁", + "v": "1-3" + }, { + "n": "3-6岁", + "v": "3-6" + }, { + "n": "6岁+", + "v": "6-" + }] + }, { + "key": "pay_type", + "name": "全部", + "value": [{ + "n": "全部", + "v": "" + }, { + "n": "免费", + "v": "0" + }, { + "n": "会员免费", + "v": "2" + }] + }, { + "key": "sort", + "name": "热度最高", + "value": [{ + "n": "热度最高", + "v": "" + }, { + "n": "综合排序", + "v": "0" + }, { + "n": "最新上线", + "v": "1" + }, { + "n": "最多播放", + "v": "2" + }, { + "n": "最多评论", + "v": "3" + }, { + "n": "最多收藏", + "v": "5" + }] + }], + "教育": [{ + "key": "tags", + "name": "全部类型", + "value": [{ + "n": "全部类型", + "v": "" + }, { + "n": "公开课", + "v": "公开课" + }, { + "n": "名人名嘴", + "v": "名人名嘴" + }, { + "n": "文化", + "v": "文化" + }, { + "n": "艺术", + "v": "艺术" + }, { + "n": "伦理社会", + "v": "伦理社会" + }, { + "n": "理工", + "v": "理工" + }, { + "n": "历史", + "v": "历史" + }, { + "n": "心理学", + "v": "心理学" + }, { + "n": "经济", + "v": "经济" + }, { + "n": "管理学", + "v": "管理学" + }, { + "n": "外语", + "v": "外语" + }, { + "n": "法律", + "v": "法律" + }, { + "n": "计算机", + "v": "计算机" + }, { + "n": "哲学", + "v": "哲学" + }, { + "n": "职业培训", + "v": "职业培训" + }, { + "n": "家庭教育", + "v": "家庭教育" + }] + }, { + "key": "company", + "name": "全部出品", + "value": [{ + "n": "全部出品", + "v": "" + }, { + "n": "TED", + "v": "ted" + }, { + "n": "耶鲁大学", + "v": "耶鲁大学" + }, { + "n": "哈佛大学", + "v": "哈佛大学" + }, { + "n": "斯坦福大学", + "v": "斯坦福大学" + }, { + "n": "麻省理工学院", + "v": "麻省理工学院" + }] + }, { + "key": "pay_type", + "name": "全部节目", + "value": [{ + "n": "全部节目", + "v": "" + }, { + "n": "免费", + "v": "0" + }, { + "n": "付费", + "v": "1" + }, { + "n": "VIP", + "v": "2" + }] + }, { + "key": "sort", + "name": "综合排序", + "value": [{ + "n": "综合排序", + "v": "" + }, { + "n": "最多播放", + "v": "2" + }, { + "n": "最多收藏", + "v": "5" + }, { + "n": "最好评", + "v": "3" + }, { + "n": "最新上线", + "v": "1" + }] + }], + "搞笑": [{ + "key": "division", + "name": "全部专区", + "value": [{ + "n": "全部专区", + "v": "" + }, { + "n": "1080P", + "v": "3" + }, { + "n": "独播", + "v": "6" + }, { + "n": "免费", + "v": "5" + }] + }, { + "key": "sort", + "name": "综合排序", + "value": [{ + "n": "综合排序", + "v": "" + }, { + "n": "最多播放", + "v": "2" + }, { + "n": "最好评", + "v": "3" + }, { + "n": "最新上线", + "v": "1" + }] + }], + "生活": [{ + "key": "division", + "name": "全部专区", + "value": [{ + "n": "全部专区", + "v": "" + }, { + "n": "1080P", + "v": "3" + }, { + "n": "独播", + "v": "6" + }, { + "n": "VIP", + "v": "4" + }, { + "n": "免费", + "v": "5" + }] + }, { + "key": "sort", + "name": "综合排序", + "value": [{ + "n": "综合排序", + "v": "" + }, { + "n": "最多播放", + "v": "2" + }, { + "n": "最好评", + "v": "3" + }, { + "n": "最新上线", + "v": "1" + }] + }], + "体育": [{ + "key": "division", + "name": "全部专区", + "value": [{ + "n": "全部专区", + "v": "" + }, { + "n": "1080P", + "v": "3" + }, { + "n": "独播", + "v": "6" + }, { + "n": "VIP", + "v": "4" + }, { + "n": "免费", + "v": "5" + }] + }, { + "key": "tags", + "name": "全部类型", + "value": [{ + "n": "全部类型", + "v": "" + }, { + "n": "篮球", + "v": "篮球" + }, { + "n": "足球", + "v": "足球" + }, { + "n": "台球", + "v": "台球" + }, { + "n": "CBA", + "v": "CBA" + }, { + "n": "钓鱼", + "v": "钓鱼" + }] + }, { + "key": "sort", + "name": "综合排序", + "value": [{ + "n": "综合排序", + "v": "" + }, { + "n": "最多播放", + "v": "2" + }, { + "n": "最好评", + "v": "3" + }, { + "n": "最新上线", + "v": "1" + }] + }], + "音乐": [{ + "key": "division", + "name": "全部专区", + "value": [{ + "n": "全部专区", + "v": "" + }, { + "n": "1080P", + "v": "3" + }, { + "n": "独播", + "v": "6" + }, { + "n": "免费", + "v": "5" + }] + }, { + "key": "main_area", + "name": "全部地区", + "value": [{ + "n": "全部地区", + "v": "" + }, { + "n": "中国", + "v": "中国" + }, { + "n": "中国台湾", + "v": "中国台湾" + }, { + "n": "中国香港", + "v": "中国香港" + }, { + "n": "美国", + "v": "美国" + }, { + "n": "其他", + "v": "其他" + }] + }, { + "key": "music_show_type", + "name": "全部类型", + "value": [{ + "n": "全部类型", + "v": "" + }, { + "n": "演唱会", + "v": "演唱会" + }, { + "n": "live现场", + "v": "live现场" + }, { + "n": "颁奖典礼", + "v": "颁奖典礼" + }, { + "n": "舞蹈", + "v": "舞蹈" + }, { + "n": "影视原声", + "v": "影视原声" + }, { + "n": "音乐达人", + "v": "音乐达人" + }, { + "n": "音乐教学", + "v": "音乐教学" + }, { + "n": "音乐纪录片", + "v": "音乐纪录片" + }, { + "n": "音乐mv", + "v": "音乐mv" + }, { + "n": "音乐自制", + "v": "音乐自制" + }] + }, { + "key": "sort", + "name": "综合排序", + "value": [{ + "n": "综合排序", + "v": "" + }, { + "n": "最多播放", + "v": "2" + }, { + "n": "最好评", + "v": "3" + }, { + "n": "最新上线", + "v": "1" + }] + }], + "游戏": [{ + "key": "division", + "name": "全部专区", + "value": [{ + "n": "全部专区", + "v": "" + }, { + "n": "1080P", + "v": "3" + }, { + "n": "独播", + "v": "6" + }, { + "n": "VIP", + "v": "4" + }, { + "n": "免费", + "v": "5" + }] + }, { + "key": "game_brand", + "name": "全部节目", + "value": [{ + "n": "全部节目", + "v": "" + }, { + "n": "王者荣耀", + "v": "王者荣耀" + }, { + "n": "和平精英", + "v": "和平精英" + }, { + "n": "绝地求生", + "v": "绝地求生" + }, { + "n": "迷你世界", + "v": "迷你世界" + }, { + "n": "我的世界", + "v": "我的世界" + }, { + "n": "植物大战僵尸", + "v": "植物大战僵尸" + }, { + "n": "方舟生存进化", + "v": "方舟生存进化" + }, { + "n": "第五人格", + "v": "第五人格" + }, { + "n": "猫和老鼠", + "v": "猫和老鼠" + }, { + "n": "香肠派对", + "v": "香肠派对" + }, { + "n": "穿越火线", + "v": "穿越火线" + }, { + "n": "英雄联盟", + "v": "英雄联盟" + }] + }, { + "key": "tags", + "name": "全部类型", + "value": [{ + "n": "全部类型", + "v": "" + }, { + "n": "资讯", + "v": "资讯" + }, { + "n": "解说", + "v": "解说" + }, { + "n": "主播", + "v": "主播" + }, { + "n": "沙盒", + "v": "沙盒" + }, { + "n": "益智", + "v": "益智" + }, { + "n": "生存", + "v": "生存" + }, { + "n": "电子竞技", + "v": "电子竞技" + }, { + "n": "单机主机", + "v": "单机主机" + }, { + "n": "真人秀", + "v": "真人秀" + }, { + "n": "动画", + "v": "动画" + }, { + "n": "盘点", + "v": "盘点" + }, { + "n": "游戏文化", + "v": "游戏文化" + }, { + "n": "游戏节目", + "v": "游戏节目" + }, { + "n": "评测", + "v": "评测" + }, { + "n": "射击", + "v": "射击" + }, { + "n": "策略", + "v": "策略" + }, { + "n": "冒险", + "v": "冒险" + }, { + "n": "即时战略", + "v": "即时战略" + }, { + "n": "卡牌", + "v": "卡牌" + }, { + "n": "角色扮演", + "v": "角色>扮演" + }] + }, { + "key": "sort", + "name": "综合排序", + "value": [{ + "n": "综合排序", + "v": "" + }, { + "n": "最多播放", + "v": "2" + }, { + "n": "最好评", + "v": "3" + }, { + "n": "最新上线", + "v": "1" + }] + }], + "短剧": [{ + "key": "main_area", + "name": "全部地区", + "value": [{ + "n": "全部地区", + "v": "" + }, { + "n": "内地剧", + "v": "中国内地" + }, { + "n": "港剧", + "v": "中国香港" + }, { + "n": "台剧", + "v": "中国台湾" + }, { + "n": "韩剧", + "v": "韩国" + }, { + "n": "美剧", + "v": "美国" + }, { + "n": "英剧", + "v": "英国" + }, { + "n": "日剧", + "v": "日本" + }, { + "n": "泰剧", + "v": "泰国" + }] + }, { + "key": "tags", + "name": "全部类型", + "value": [{ + "n": "全部类型", + "v": "" + }, { + "n": "青春", + "v": "青春" + }, { + "n": "古装", + "v": "古装" + }, { + "n": "爱情", + "v": "爱情" + }, { + "n": "都市", + "v": "都市" + }, { + "n": "喜剧", + "v": "喜剧,搞笑" + }, { + "n": "战争", + "v": "战争" + }, { + "n": "军旅", + "v": "军旅" + }, { + "n": "谍战", + "v": "谍战" + }, { + "n": "偶像", + "v": "偶像" + }, { + "n": "警匪", + "v": "警匪" + }, { + "n": "冒险", + "v": "冒险" + }, { + "n": "穿越", + "v": "穿越" + }, { + "n": "仙侠", + "v": "仙侠" + }, { + "n": "武侠", + "v": "武侠" + }, { + "n": "悬疑", + "v": "悬疑" + }, { + "n": "罪案", + "v": "罪案" + }, { + "n": "家庭", + "v": "家庭" + }, { + "n": "历史", + "v": "历史" + }, { + "n": "年代", + "v": "年代" + }, { + "n": "农村", + "v": "农村" + }] + }, { + "key": "year", + "name": "全部年份", + "value": [{ + "n": "全部年份", + "v": "" + }, { + "n": "2026", + "v": "2026" + }, { + "n": "2025", + "v": "2025" + }, { + "n": "2024", + "v": "2024" + }, { + "n": "2023", + "v": "2023" + }, { + "n": "2022", + "v": "2022" + }, { + "n": "2021", + "v": "2021" + }, { + "n": "2020", + "v": "2020" + }, { + "n": "2019", + "v": "2019" + }, { + "n": "2018", + "v": "2018" + }, { + "n": "2017", + "v": "2017" + }, { + "n": "2016", + "v": "2016" + }, { + "n": "2015", + "v": "2015" + }, { + "n": "2014-2011", + "v": "2011-2014" + }, { + "n": "更早", + "v": "-2010" + }] + }, { + "key": "status", + "name": "全部规格", + "value": [{ + "n": "全部规格", + "v": "" + }, { + "n": "全网独播", + "v": "1" + }, { + "n": "优酷自制", + "v": "2" + }, { + "n": "已完结", + "v": "3" + }, { + "n": "即将上线", + "v": "4" + }, { + "n": "短剧", + "v": "5" + }] + }, { + "key": "pay_type", + "name": "付费类型", + "value": [{ + "n": "付费类型", + "v": "" + }, { + "n": "免费", + "v": "0" + }, { + "n": "VIP", + "v": "2" + }, { + "n": "付费", + "v": "1" + }] + }, { + "key": "sort", + "name": "综合排序", + "value": [{ + "n": "综合排序", + "v": "" + }, { + "n": "热度最高", + "v": "7" + }, { + "n": "最新上线", + "v": "1" + }, { + "n": "最好评", + "v": "3" + }, { + "n": "最多播放", + "v": "2" + }] + }] + }, + headers: { + 'User-Agent': 'PC_UA', + 'Cookie': 'cna=VvNvGX3e0ywCAavVEXlnA2bg; __ysuid=1626676228345Rl1; __ayft=1652434048647; __arycid=dm-1-00; __arcms=dm-1-00; __ayvstp=85; __arpvid=1667204023100cWWdgM-1667204023112; __ayscnt=10; __aypstp=60; isg=BBwcqxvvk3BxkWQGugbLpUSf7TrOlcC_U7GAj_YdfYfvQbzLHqYGT4Hgp6m5TvgX; tfstk=c3JOByYUH20ilVucLOhh0pCtE40lZfGc-PjLHLLfuX7SWNyAiQvkeMBsIw7PWDC..; l=eBQguS-PjdJFGJT-BOfwourza77OSIRA_uPzaNbMiOCPOb1B5UxfW6yHp4T6C3GVhsGJR3rp2umHBeYBqQd-nxvOF8qmSVDmn', + 'Referer': 'https://www.youku.com', + }, + timeout: 5000, + class_name: '电影&电视剧&动漫&短剧&综艺&少儿&纪录片&文化&亲子&教育&搞笑&生活&体育&音乐&游戏', + class_url: '电影&电视剧&动漫&短剧&综艺&少儿&纪录片&文化&亲子&教育&搞笑&生活&体育&音乐&游戏', + limit: 20, + play_parse: true, + lazy: $js.toString(() => { + try { + let api = "" + input.split("?")[0]; + console.log(api); + let response = fetch(api, { + method: 'get', + headers: { + 'User-Agent': 'okhttp/3.14.9', + 'Content-Type': 'application/x-www-form-urlencoded' + } + }); + let bata = JSON.parse(response); + if (bata.url.includes("http")) { + input = { + parse: 0, + url: bata.url, + jx: 0, + danmaku: "http://127.0.0.1:9978/proxy?do=danmu&site=js&url=" + input.split("?")[0] + }; + } else { + input = { + parse: 0, + url: input.split("?")[0], + jx: 1, + danmaku: "http://127.0.0.1:9978/proxy?do=danmu&site=js&url=" + input.split("?")[0] + }; + } + } catch { + input = { + parse: 0, + url: input.split("?")[0], + jx: 1, + danmaku: "http://127.0.0.1:9978/proxy?do=danmu&site=js&url=" + input.split("?")[0] + }; + } + }), + 一级: $js.toString(() => { + let d = []; + MY_FL.type = MY_CATE; + let fl = stringify(MY_FL); + fl = encodeUrl(fl); + input = input.split("{")[0] + fl; + if (MY_PAGE > 1) { + let old_session = getItem("yk_session_" + MY_CATE, "{}"); + if (MY_PAGE === 2) { + input = input.replace("optionRefresh=1", "session=" + encodeUrl(old_session)) + } else { + input = input.replace("optionRefresh=1", "session=" + encodeUrl(old_session)) + } + } + let html = fetch(input, fetch_params); + try { + html = JSON.parse(html); + let lists = html.data.filterData.listData; + let session = html.data.filterData.session; + session = stringify(session); + if (session !== getItem("yk_session_" + MY_CATE, "{}")) { + setItem("yk_session_" + MY_CATE, session) + } + lists.forEach(function(it) { + let vid; + if (it.rightTagColor === "BLUE" && it.videoLink.includes("groupId=")) { + // 短剧格式:通过rightTagColor判断,提取groupId + let groupIdMatch = it.videoLink.match(/groupId=([^&]+)/); + vid = groupIdMatch && groupIdMatch[1] ? groupIdMatch[1] : "msearch:"; + } else if (it.videoLink.includes("id_")) { + vid = it.videoLink.split("id_")[1].split(".html")[0] + } else { + vid = "msearch:"; + } + d.push({ + title: it.title, + img: it.img, + desc: it.summary, + url: "https://search.youku.com/api/search?appScene=show_episode&showIds=" + vid, + content: it.subTitle + }) + }) + } catch (e) { + log("一级列表解析发生错误:" + e.message) + } + setResult(d); + }), + + 二级: $js.toString(() => { + var d = []; + VOD = {}; + let html = request(input); + let json = JSON.parse(html); + if (/keyword/.test(input)) { + input = "https://search.youku.com/api/search?appScene=show_episode&showIds=" + json.pageComponentList[0].commonData.showId; + json = JSON.parse(fetch(MY_URL, fetch_params)) + } + let video_lists = json.serisesList; + var name = json.sourceName; + if (/优酷/.test(name) && video_lists.length > 0) { + let ourl = "https://v.youku.com/v_show/id_" + video_lists[0].videoId + ".html"; + let _img = video_lists[0].thumbUrl; + let html = fetch(ourl, { + headers: { + Referer: "https://v.youku.com/", + "User-Agent": PC_UA + } + }); + let json = /__INITIAL_DATA__/.test(html) ? html.split("window.__INITIAL_DATA__ =")[1].split(";")[0] : "{}"; + if (json === "{}") { + VOD.vod_pic = _img; + VOD.vod_name = video_lists[0].title.replace(/(\d+)/g, ""); + VOD.vod_content = "触发了优酷人机验证,本次未获取详情,但不影响播放(" + ourl + ")" + } else { + try { + json = JSON.parse(json); + let data = json.data.data; + let data_extra = data.data.extra; + let img = data_extra.showImgV; + let model = json.data.model; + let m = model.detail.data.nodes[0].nodes[0].nodes[0].data; + let _type = m.showGenre; + let _desc = m.updateInfo || m.subtitle; + let JJ = m.desc; + let _title = m.introTitle; + VOD.vod_pic = img; + VOD.vod_name = _title; + VOD.vod_type = _type; + VOD.vod_remarks = _desc; + VOD.vod_content = JJ + } catch (e) { + log("海报渲染发生错误:" + e.message); + print(json); + VOD.vod_remarks = name + } + } + } + if (!/优酷/.test(name)) { + VOD.vod_content = "非自家播放源,暂无视频简介及海报"; + VOD.vod_remarks = name + } + + function adhead(url) { + return urlencode(url) + } + + play_url = play_url.replace("&play_url=", "&type=json&play_url="); + video_lists.forEach(function(it) { + let url = "https://v.youku.com/v_show/id_" + it.videoId + ".html"; + if (it.thumbUrl) { + d.push({ + desc: it.showVideoStage ? it.showVideoStage.replace("期", "集") : it.displayName, + pic_url: it.thumbUrl, + title: it.title, + url: play_url + adhead(url) + }) + } else if (name !== "优酷") { + d.push({ + title: it.displayName ? it.displayName : it.title, + url: play_url + adhead(it.url) + }) + } + }); + VOD.vod_play_from = name; + VOD.vod_play_url = d.map(function(it) { + return it.title + "$" + it.url + }) + .join("#"); + }), + + 搜索: $js.toString(() => { + var d = []; + let html = request(input); + let json = JSON.parse(html); + + let searchKeyword = ''; + if (input.includes('keyword=')) { + searchKeyword = input.split('keyword=')[1].split('&')[0]; + searchKeyword = decodeURIComponent(searchKeyword); + } + + let titleFilterConfig = { + enabled: true, + keywords: ['精彩', '花絮', '预告', '晚会', '揭秘', '解说', '《', '解读', '动态漫', '9528', '杂谈', '十六部电影实验短片集', '片断', '公益', '音频'], + caseSensitive: false, + exactMatch: false + }; + + let contentFilterConfig = { + enabled: true, + keywords: ['游戏', '纪录片', '音频'], + caseSensitive: false, + exactMatch: false + }; + + let keywordMatchConfig = { + enabled: true, + matchType: 'contains', + caseSensitive: false + }; + + json.pageComponentList.forEach(function(it) { + if (it.hasOwnProperty("commonData")) { + it = it.commonData; + + let item = { + title: it.titleDTO.displayName || '', + img: it.posterDTO.vThumbUrl, + desc: it.stripeBottom || '', + content: (it.updateNotice || '') + " " + (it.feature || ''), + url: "https://search.youku.com/api/search?appScene=show_episode&showIds=" + it.showId + "&appCaller=h5" + }; + + let titleFiltered = false; + if (titleFilterConfig.enabled && titleFilterConfig.keywords.length > 0) { + for (let keyword of titleFilterConfig.keywords) { + let titleText = item.title; + let filterKeyword = keyword; + + if (!titleFilterConfig.caseSensitive) { + titleText = titleText.toLowerCase(); + filterKeyword = filterKeyword.toLowerCase(); + } + + if (titleFilterConfig.exactMatch) { + if (titleText === filterKeyword) { + titleFiltered = true; + break; + } + } else { + if (titleText.includes(filterKeyword)) { + titleFiltered = true; + break; + } + } + } + } + + let contentFiltered = false; + if (contentFilterConfig.enabled && contentFilterConfig.keywords.length > 0) { + for (let keyword of contentFilterConfig.keywords) { + let contentText = item.content; + let filterKeyword = keyword; + + if (!contentFilterConfig.caseSensitive) { + contentText = contentText.toLowerCase(); + filterKeyword = filterKeyword.toLowerCase(); + } + + if (contentFilterConfig.exactMatch) { + if (contentText === filterKeyword) { + contentFiltered = true; + break; + } + } else { + if (contentText.includes(filterKeyword)) { + contentFiltered = true; + break; + } + } + } + } + + let keywordMatched = true; + if (keywordMatchConfig.enabled && searchKeyword) { + let titleText = item.title; + let searchKey = searchKeyword; + + if (!keywordMatchConfig.caseSensitive) { + titleText = titleText.toLowerCase(); + searchKey = searchKey.toLowerCase(); + } + + if (keywordMatchConfig.matchType === 'exact') { + keywordMatched = (titleText === searchKey); + } else if (keywordMatchConfig.matchType === 'contains') { + keywordMatched = titleText.includes(searchKey); + } else if (keywordMatchConfig.matchType === 'any') { + let keywords = searchKey.split(/\s+/); + keywordMatched = keywords.some(keyword => titleText.includes(keyword)); + } + } + + if (!titleFiltered && !contentFiltered && keywordMatched) { + d.push(item); + } + } + }); + + setResult(d); + }), +} \ No newline at end of file diff --git a/潇洒/movie/js/ZJDM.js b/潇洒/movie/js/ZJDM.js new file mode 100644 index 00000000..73bb3a25 --- /dev/null +++ b/潇洒/movie/js/ZJDM.js @@ -0,0 +1 @@ +Z2xvYmFsVGhpcy5oX29zdCA9ICdodHRwOi8vdi5sa3V5cy5jbi8nOwoKZ2xvYmFsVGhpcy52b2RsaXN0ID0gZnVuY3Rpb24oJHQsICRwZykgewogICAgY29uc3QgY3VycmVudFRpbWVzdGFtcCA9IHBhcnNlSW50KERhdGUubm93KCkgLyAxMDAwLCAxMCk7CiAgICBjb25zdCB1cmwgPSBoX29zdCArICcvdjIvaG9tZS90eXBlX3NlYXJjaCc7CiAgICBjb25zdCBoeCA9IENyeXB0b0pTLk1ENSgna2o1NjQ5ZXJ0ajg0a3M4OXI0amg4czQ1aGY4NGhqZmRzMDRrJyArIGN1cnJlbnRUaW1lc3RhbXApLnRvU3RyaW5nKCk7CiAgICBsZXQgaHRtbCA9IHJlcXVlc3QodXJsLCB7CiAgICAgICAgYm9keTogewogICAgICAgICAgICBzaWduOiBoeCwKICAgICAgICAgICAgdHlwZV9pZDogJHQsCiAgICAgICAgICAgIHBhZ2U6ICRwZywKICAgICAgICB9LAogICAgICAgIGhlYWRlcnM6IHsKICAgICAgICAgICAgJ1VzZXItQWdlbnQnOiAnb2todHRwLW9rZ28vamVhc29ubHp5JywKICAgICAgICAgICAgJ0NvbnRlbnQtVHlwZSc6ICdhcHBsaWNhdGlvbi94LXd3dy1mb3JtLXVybGVuY29kZWQnCiAgICAgICAgfSwKICAgICAgICAnbWV0aG9kJzogJ1BPU1QnCiAgICB9LCB0cnVlKTsKICAgIHJldHVybiBKU09OLnBhcnNlKGh0bWwpLmRhdGEubGlzdDsKfQoKZ2xvYmFsVGhpcy5zZWFjaCA9IGZ1bmN0aW9uKHdkKSB7CiAgICBjb25zdCBjdXJyZW50VGltZXN0YW1wID0gcGFyc2VJbnQoRGF0ZS5ub3coKSAvIDEwMDAsIDEwKTsKICAgIGNvbnN0IHVybCA9IGhfb3N0ICsgJy92Mi9ob21lL3NlYXJjaCc7CiAgICBjb25zdCBoeCA9IENyeXB0b0pTLk1ENSgna2o1NjQ5ZXJ0ajg0a3M4OXI0amg4czQ1aGY4NGhqZmRzMDRrJyArIGN1cnJlbnRUaW1lc3RhbXApLnRvU3RyaW5nKCk7CiAgICBsZXQgaHRtbCA9IHJlcXVlc3QodXJsLCB7CiAgICAgICAgYm9keTogewogICAgICAgICAgICBzaWduOiBoeCwKICAgICAgICAgICAga2V5d29yZDogd2QsCiAgICAgICAgICAgIHRpbWVzdGFtcDogY3VycmVudFRpbWVzdGFtcCwKICAgICAgICB9LAogICAgICAgIGhlYWRlcnM6IHsKICAgICAgICAgICAgJ1VzZXItQWdlbnQnOiAnb2todHRwLW9rZ28vamVhc29ubHp5JywKICAgICAgICAgICAgJ0NvbnRlbnQtVHlwZSc6ICdhcHBsaWNhdGlvbi94LXd3dy1mb3JtLXVybGVuY29kZWQnCiAgICAgICAgfSwKICAgICAgICAnbWV0aG9kJzogJ1BPU1QnCiAgICB9LCB0cnVlKTsKICAgIHJldHVybiBKU09OLnBhcnNlKGh0bWwpLmRhdGEubGlzdDsKfQpnbG9iYWxUaGlzLnZvZGlkcyA9IGZ1bmN0aW9uKGlkcykgewogICAgY29uc3QgY3VycmVudFRpbWVzdGFtcCA9IHBhcnNlSW50KERhdGUubm93KCkgLyAxMDAwLCAxMCk7CiAgICBjb25zdCB1cmwgPSBoX29zdCArICcvdjIvaG9tZS92b2RfZGV0YWlscyc7CiAgICBjb25zdCBoeCA9IENyeXB0b0pTLk1ENSgna2o1NjQ5ZXJ0ajg0a3M4OXI0amg4czQ1aGY4NGhqZmRzMDRrJyArIGN1cnJlbnRUaW1lc3RhbXApLnRvU3RyaW5nKCk7CiAgICBsZXQgaHRtbCA9IHJlcXVlc3QodXJsLCB7CiAgICAgICAgYm9keTogewogICAgICAgICAgICBzaWduOiBoeCwKICAgICAgICAgICAgdm9kX2lkOiBpZHMsCiAgICAgICAgICAgIHRpbWVzdGFtcDogY3VycmVudFRpbWVzdGFtcCwKICAgICAgICB9LAogICAgICAgIGhlYWRlcnM6IHsKICAgICAgICAgICAgJ1VzZXItQWdlbnQnOiAnb2todHRwLW9rZ28vamVhc29ubHp5JywKICAgICAgICAgICAgJ0NvbnRlbnQtVHlwZSc6ICdhcHBsaWNhdGlvbi94LXd3dy1mb3JtLXVybGVuY29kZWQnCiAgICAgICAgfSwKICAgICAgICAnbWV0aG9kJzogJ1BPU1QnCiAgICB9LCB0cnVlKTsKICAgIGNvbnN0IHJlZGF0YSA9IEpTT04ucGFyc2UoaHRtbCk7CiAgICBsZXQgdm9kUGxheUZyb20gPSAnJzsKICAgIGxldCB2b2RQbGF5VXJsID0gJyc7CiAgICByZWRhdGEuZGF0YS52b2RfcGxheV9saXN0LmZvckVhY2goKHZhbHVlLCBrZXkpID0+IHsKICAgICAgICBpZiAodmFsdWUuZmxhZy5pbmNsdWRlcygibmJ5IikgfHwgdmFsdWUuZmxhZy5pbmNsdWRlcygibWd0diIpIHx8IHZhbHVlLmZsYWcuaW5jbHVkZXMoInFxIikgfHwgdmFsdWUuZmxhZy5pbmNsdWRlcygicWl5aSIpIHx8IHZhbHVlLmZsYWcuaW5jbHVkZXMoIm1ndHYiKSkgewogICAgICAgICAgICB2b2RQbGF5RnJvbSArPSBgJHt2YWx1ZS5mbGFnfSQkJGA7CiAgICAgICAgICAgIHZhbHVlLnVybHMuZm9yRWFjaCh1cmwgPT4gewogICAgICAgICAgICAgICAgdm9kUGxheVVybCArPSBgJHt1cmwubmFtZX0kJHt2YWx1ZS5wYXJzZV91cmxzWzBdfSR7dXJsLnVybH1+JHt1cmwubmFtZX0jYDsKICAgICAgICAgICAgfSk7CiAgICAgICAgICAgIHZvZFBsYXlVcmwgKz0gJyQkJCc7CiAgICAgICAgfQogICAgfSk7CiAgICBjb25zdCByZWdlc2hpID0gewogICAgICAgIHZvZF9pZDogcmVkYXRhLmRhdGEudm9kX2lkLAogICAgICAgIHZvZF9uYW1lOiByZWRhdGEuZGF0YS52b2RfbmFtZSwKICAgICAgICB2b2RfcmVtYXJrczogYCR7cmVkYXRhLmRhdGEudm9kX3JlbWFya3N9YCwKICAgICAgICB0eXBlX25hbWU6IHJlZGF0YS5kYXRhLnZvZF9jbGFzcywKICAgICAgICB2b2RfcGljOiByZWRhdGEuZGF0YS52b2RfcGljLAogICAgICAgIHZvZF95ZWFyOiByZWRhdGEuZGF0YS52b2RfeWVhciwKICAgICAgICB2b2RfYXJlYTogcmVkYXRhLmRhdGEudm9kX2FyZWEsCiAgICAgICAgdm9kX2FjdG9yOiBgJHtyZWRhdGEuZGF0YS52b2RfYWN0b3J9YCwKICAgICAgICB2b2RfZGlyZWN0b3I6IHJlZGF0YS5kYXRhLnZvZF9kaXJlY3RvciwKICAgICAgICB2b2RfY29udGVudDogYCR7cmVkYXRhLmRhdGEudm9kX2NvbnRlbnR9YCwKICAgICAgICB2b2RfcGxheV9mcm9tOiB2b2RQbGF5RnJvbSwKICAgICAgICB2b2RfcGxheV91cmw6IHZvZFBsYXlVcmwKICAgIH07CiAgICByZXR1cm4gcmVnZXNoaTsKfQpnbG9iYWxUaGlzLmp4eCA9IGZ1bmN0aW9uKGlucHV0KSB7CiAgICBpZiAoIjc0MTg1Mjk2MyIgIT09ICc3NDE4NTI5NjMnKSB7CiAgICAgICAgcmV0dXJuICdodHRwczovL3MwLm1hbGwudGNsLmNvbS9ncm91cDEvTTAwLzAwLzg5L0N2b0dCR2RjT1BhQUFVeHZBRHdabmlWVjJiYzQ3Ni5tcDQnOwogICAgfQogICAgY29uc3QgcGFydHMgPSBpbnB1dC5zcGxpdCgnficpOwogICAgdHJ5IHsKICAgICAgICBsZXQgcmVzcG9uc2UgPSBmZXRjaChwYXJ0c1swXSwgewogICAgICAgICAgICBtZXRob2Q6ICdnZXQnLAogICAgICAgICAgICBoZWFkZXJzOiB7CiAgICAgICAgICAgICAgICAnVXNlci1BZ2VudCc6ICdva2h0dHAvMy4xNC45JywKICAgICAgICAgICAgICAgICdDb250ZW50LVR5cGUnOiAnYXBwbGljYXRpb24veC13d3ctZm9ybS11cmxlbmNvZGVkJwogICAgICAgICAgICB9CiAgICAgICAgfSk7CgogICAgICAgIGlmIChyZXNwb25zZS5pbmNsdWRlcygi5oiQ5YqfIikgfHwgcmVzcG9uc2UuaW5jbHVkZXMoInN1Y2Nlc3MiKSB8fCByZXNwb25zZS5pbmNsdWRlcygibmJ5IikpIHsKICAgICAgICAgICAgbGV0IGJhdGEgPSBKU09OLnBhcnNlKHJlc3BvbnNlKTsKICAgICAgICAgICAgaW5wdXQgPSB7CiAgICAgICAgICAgICAgICBwYXJzZTogMCwKICAgICAgICAgICAgICAgIHVybDogYmF0YS51cmwsCiAgICAgICAgICAgICAgICBqeDogMCwKICAgICAgICAgICAgICAgIGRhbm1ha3U6ICdodHRwOi8vMTAzLjQ1LjE2Mi4yMDc6MjUyNTIvaGJkbS5waHA/a2V5PTc4OTQ1NjEyMzImaWQ9JyArICcmam09JyArIFZPRC52b2RfbmFtZSArICcmanM9JyArIHBhcnRzWzFdICsgJyZrZXk9NzQxODUyOTYzJwogICAgICAgICAgICB9CiAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgaW5wdXQgPSB7CiAgICAgICAgICAgICAgICBwYXJzZTogMCwKICAgICAgICAgICAgICAgIHVybDogcGFydHNbMF0uaW5jbHVkZXMoJ3VybD0nKSA/IHBhcnRzWzBdLnNsaWNlKHBhcnRzWzBdLmluZGV4T2YoJ3VybD0nKSArIDQpIDogbnVsbCwKICAgICAgICAgICAgICAgIGp4OiAxLAogICAgICAgICAgICAgICAgZGFubWFrdTogJ2h0dHA6Ly8xMDMuNDUuMTYyLjIwNzoyNTI1Mi9oYmRtLnBocD9rZXk9Nzg5NDU2MTIzMiZpZD0nICsgJyZqbT0nICsgVk9ELnZvZF9uYW1lICsgJyZqcz0nICsgcGFydHNbMV0gKyAnJmtleT03NDE4NTI5NjMnCiAgICAgICAgICAgIH0KICAgICAgICB9CiAgICB9IGNhdGNoIHsKICAgICAgICBpbnB1dCA9IHsKICAgICAgICAgICAgcGFyc2U6IDAsCiAgICAgICAgICAgIHVybDogJ+ino+aekOWksei0pScsCiAgICAgICAgICAgIGp4OiAwLAogICAgICAgIH0KICAgIH0KICAgIHJldHVybiBpbnB1dDsKfQoKdmFyIHJ1bGUgPSB7CiAgICB0aXRsZTogJ+i/veWJpycsCiAgICBob3N0OiAnJywKICAgIGRldGFpbFVybDogJ2Z5aWQnLAogICAgc2VhcmNoVXJsOiAnKionLAogICAgdXJsOiAnZnljbGFzcycsCiAgICBzZWFyY2hhYmxlOiAyLAogICAgcXVpY2tTZWFyY2g6IDEsCiAgICBmaWx0ZXJhYmxlOiAwLAogICAgY2xhc3NfbmFtZTogJ+eUteW9sSbnlLXop4bliacm57u86Im6JuWKqOa8qycsCiAgICBjbGFzc191cmw6ICcxJjImNCYzJywKICAgIHBsYXlfcGFyc2U6IHRydWUsCiAgICBsYXp5OiAkanMudG9TdHJpbmcoKCkgPT4gewogICAgICAgIGlucHV0ID0ganh4KGlucHV0KTsKICAgIH0pLAogICAg5o6o6I2QOiAkanMudG9TdHJpbmcoKCkgPT4gewogICAgICAgIGxldCBiZGF0YSA9IHZvZGxpc3QoMCwgMSk7CiAgICAgICAgY29uc29sZS5sb2coYmRhdGEpOwogICAgICAgIGJkYXRhLmZvckVhY2goaXQgPT4gewogICAgICAgICAgICBkLnB1c2goewogICAgICAgICAgICAgICAgdXJsOiBpdC52b2RfaWQsCiAgICAgICAgICAgICAgICB0aXRsZTogaXQudm9kX25hbWUsCiAgICAgICAgICAgICAgICBpbWc6IGl0LnZvZF9waWMsCiAgICAgICAgICAgICAgICBkZXNjOiBpdC52b2RfcmVtYXJrcwogICAgICAgICAgICB9KTsKICAgICAgICB9KTsKICAgICAgICBzZXRSZXN1bHQoZCk7CiAgICB9KSwKICAgIOS4gOe6pzogJGpzLnRvU3RyaW5nKCgpID0+IHsKICAgICAgICBsZXQgYmRhdGEgPSB2b2RsaXN0KGlucHV0LCBNWV9QQUdFKTsKICAgICAgICBjb25zb2xlLmxvZyhiZGF0YSk7CiAgICAgICAgYmRhdGEuZm9yRWFjaChpdCA9PiB7CiAgICAgICAgICAgIGQucHVzaCh7CiAgICAgICAgICAgICAgICB1cmw6IGl0LnZvZF9pZCwKICAgICAgICAgICAgICAgIHRpdGxlOiBpdC52b2RfbmFtZSwKICAgICAgICAgICAgICAgIGltZzogaXQudm9kX3BpYywKICAgICAgICAgICAgICAgIGRlc2M6IGl0LnZvZF9yZW1hcmtzCiAgICAgICAgICAgIH0pOwogICAgICAgIH0pOwogICAgICAgIHNldFJlc3VsdChkKTsKICAgIH0pLAogICAg5LqM57qnOiAkanMudG9TdHJpbmcoKCkgPT4gewogICAgICAgIGNvbnNvbGUubG9nKCLosIPor5Xkv6Hmga8yIiArIGlucHV0KTsKICAgICAgICBsZXQgZGF0YSA9IHZvZGlkcyhpbnB1dCk7CiAgICAgICAgLy9jb25zb2xlLmxvZyhkYXRhKTsKICAgICAgICBWT0QgPSAoZGF0YSk7CiAgICB9KSwKICAgIOaQnOe0ojogJGpzLnRvU3RyaW5nKCgpID0+IHsKICAgICAgICBsZXQgZGRhdGEgPSBzZWFjaChpbnB1dCk7CiAgICAgICAgZGRhdGEuZm9yRWFjaChpdCA9PiB7CiAgICAgICAgICAgIGQucHVzaCh7CiAgICAgICAgICAgICAgICB1cmw6IGl0LnZvZF9pZCwKICAgICAgICAgICAgICAgIHRpdGxlOiBpdC52b2RfbmFtZSwKICAgICAgICAgICAgICAgIGltZzogaXQudm9kX3BpYywKICAgICAgICAgICAgICAgIGRlc2M6IGl0LnZvZF9yZW1hcmtzCiAgICAgICAgICAgIH0pOwogICAgICAgIH0pOwogICAgICAgIHNldFJlc3VsdChkKTsKICAgIH0pLAp9 \ No newline at end of file diff --git a/潇洒/movie/js/ZJM.js b/潇洒/movie/js/ZJM.js new file mode 100644 index 00000000..0f96b588 --- /dev/null +++ b/潇洒/movie/js/ZJM.js @@ -0,0 +1 @@ +dmFyIHJ1bGUgPSB7CiAgICB0aXRsZTogJ+i/veWJp+i/tycsCiAgICDmqKHmnb86ICd2ZmVkJywKICAgIGhvc3Q6ICdodHRwczovL3d3dy56aHVpanVtaS5jYycsCiAgICAvLyB1cmw6Jy92aWRlb3R5cGUvZnljbGFzcy1meXBhZ2UuaHRtbCcsCiAgICB1cmw6ICcvbXA0dHlwZS9meWNsYXNzLWZ5cGFnZS5odG1sJywKICAgIHNlYXJjaFVybDogJy9tcDRzZWFyY2gvLS5odG1sP3dkPSoqJywKICAgIGNsYXNzX3BhcnNlOiAnLmZlZC1wYXJ0LXRpcHMgbGk7YSYmVGV4dDthJiZocmVmOy4qLyguKj8pLmh0bWwnLAogICAgY2F0ZV9leGNsdWRlOiAn5pu05aSafOeUs+ivtycsCiAgICBsYXp5OiBganM6CiAgICAgICAgdmFyIGh0bWwgPSBKU09OLnBhcnNlKHJlcXVlc3QoaW5wdXQpLm1hdGNoKC9yIHBsYXllcl8uKj89KC4qPyk8LylbMV0pOwogICAgICAgIHZhciB1cmwgPSBodG1sLnVybDsKICAgICAgICBpZiAoaHRtbC5lbmNyeXB0ID09ICcxJykgewogICAgICAgICAgICB1cmwgPSB1bmVzY2FwZSh1cmwpCiAgICAgICAgfSBlbHNlIGlmIChodG1sLmVuY3J5cHQgPT0gJzInKSB7CiAgICAgICAgICAgIHVybCA9IHVuZXNjYXBlKGJhc2U2NERlY29kZSh1cmwpKQogICAgICAgIH0KICAgICAgICBpZiAoL1xcLm0zdTh8XFwubXA0Ly50ZXN0KHVybCkpIHsKICAgICAgICAgICAgaW5wdXQgPSB7CiAgICAgICAgICAgICAgICBqeDogMCwKICAgICAgICAgICAgICAgIHVybDogdXJsLAogICAgICAgICAgICAgICAgcGFyc2U6IDAKICAgICAgICAgICAgfQogICAgICAgIH0gZWxzZSB7CiAgICAgICAgICAgIGlucHV0CiAgICAgICAgfQogICAgYCwKICAgIOS6jOe6pzogewogICAgICAgICJ0aXRsZSI6ICJoMSYmVGV4dDsuZmVkLWNvbC14czYtLXNwYW46ZXEoMCkmJlRleHQiLAogICAgICAgICJpbWciOiAiLmZlZC1saXN0LWluZm8mJmEmJmRhdGEtb3JpZ2luYWwiLAogICAgICAgICJkZXNjIjogIi5mZWQtY29sLXhzMTIuZmVkLXBhcnQtZW9uZTplcSgzKSYmVGV4dDs7Oy5mZWQtY29sLXhzMTIuZmVkLXBhcnQtZW9uZS0tc3BhbjplcSgwKSYmVGV4dDsuZmVkLWNvbC14czEyLmZlZC1wYXJ0LWVvbmUtLXNwYW46ZXEoMSkmJlRleHQiLAogICAgICAgICJjb250ZW50IjogIi5mZWQtY29udi10ZXh0OmVxKDApJiZUZXh0IiwKICAgICAgICAidGFicyI6ICJ1bC5mZWQtcGFkZGluZyYmbGkiLAogICAgICAgICJsaXN0cyI6ICIuZmVkLXRhYnMtYnRtOmVxKCNpZCkgbGkiCiAgICB9LAogICAg5pCc57SiOiAnLmZlZC1saXN0LWRldGE7aDEmJlRleHQ7LmZlZC1sYXp5JiZkYXRhLW9yaWdpbmFsOy5mZWQtbGlzdC1yZW1hcmtzJiZUZXh0O2EmJmhyZWY7LmZlZC1jb2wteHMxMi5mZWQtcGFydC1lb25lOmVxKDIpJiZUZXh0JywKfQ== \ No newline at end of file diff --git a/潇洒/movie/json/AWDJ.json b/潇洒/movie/json/AWDJ.json new file mode 100644 index 00000000..cf3bd09c --- /dev/null +++ b/潇洒/movie/json/AWDJ.json @@ -0,0 +1,25 @@ +{ + "请求头": "User-Agent$MOBILE_UA", + "主页url": "https://www.aiwodj.com", + "数组": "lazy lazyloaded&&>]", + "图片": "data-src=\"&&\"", + "标题": "title=\"&&\"", + "链接": "href=\"&&\"", + "副标题": "+module-item-caption\">&&&&", + "播放列表": "", + "播放标题": "span>&&", + "播放链接": "href=\"&&\"", + "跳转播放链接": "urlDecode(var player_*\"url\":\"&&\")", + "搜索url": "https://www.aiwodj.com/vodsearch/{wd}----------{pg}---.html", + "搜索数组": "lazy lazyload&&>]", + "搜索图片": "data-src=\"&&\"", + "搜索标题": "+title=\"&&\"", + "搜索链接": "href=\"&&\"", + "分类url": "https://www.aiwodj.com/vodshow/{cateId}--{by}-{class}-{lang}----{catePg}---{year}.html", + "分类": "穿越&战神&重生&爱情&萌娃&神医&古代&玄幻&言情", + "分类值": "fenle&fenlei2&fenlei3&fenlei4&guda&shenyi&gudai&xuanhuan&yanqing" +} \ No newline at end of file diff --git a/潇洒/movie/json/BHYS.json b/潇洒/movie/json/BHYS.json new file mode 100644 index 00000000..f6c8e3e9 --- /dev/null +++ b/潇洒/movie/json/BHYS.json @@ -0,0 +1,81 @@ +{ + "规则名": "八号影视", + "规则作者": "", + "请求头参数": "User-Agent$手机#accept$text/html", + "网页编码格式": "UTF-8", + "图片是否需要代理": "0", + "是否开启获取首页数据": "0", + "首页推荐链接": "http://www.bahaotv.com", + "首页列表数组规则": "body&&.show-vod-list", + "首页片单列表数组规则": ".myui-vodbox-content", + "首页片单是否Jsoup写法": "1", + "分类起始页码": "1", + "分类链接": "http://www.bahaotv.com/vodshow/{cateId}--------{catePg}---.html", + "分类名称": "电影&电视剧&动漫", + "分类名称替换词": "movie&tvseries&anime", + "筛选数据": {}, + //"筛选数据": "ext", + //{cateId} + "筛选子分类名称": "", + "筛选子分类替换词": "", + //{class} + "筛选类型名称": "", + "筛选类型替换词": "*", + //{area} + "筛选地区名称": "", + "筛选地区替换词": "*", + //{year} + "筛选年份名称": "", + "筛选年份替换词": "*", + //{lang} + "筛选语言名称": "", + "筛选语言替换词": "*", + //{by} + "筛选排序名称": "时间&人气&评分", + "筛选排序替换词": "time&hits&score", + "分类截取模式": "1", + "分类列表数组规则": ".show-vod-list&&.myui-vodbox-content", + "分类片单是否Jsoup写法": "1", + "分类片单标题": ".title&&Text", + "分类片单链接": "a&&href", + "分类片单图片": "img&&src", + "分类片单副标题": ".right&&Text", + "分类片单链接加前缀": "http://www.bahaotv.com", + "分类片单链接加后缀": "", + "搜索请求头参数": "User-Agent$手机#accept$text/html", + "搜索链接": "http://www.bahaotv.com/vodsearch/-------------.html?wd={wd}", + "POST请求数据": "", + "搜索截取模式": "1", + "搜索列表数组规则": ".show-vod-list&&.myui-vodbox-content", + "搜索片单是否Jsoup写法": "1", + "搜索片单图片": "img&&src", + "搜索片单标题": ".title&&Text", + "搜索片单链接": "a&&href", + "搜索片单副标题": ".right&&Text", + "搜索片单链接加前缀": "http://www.bahaotv.com", + "搜索片单链接加后缀": "", + "链接是否直接播放": "0", + "直接播放链接加前缀": "https://live.52sf.ga/huya/", + "直接播放链接加后缀": "#isVideo=true#", + "直接播放直链视频请求头": "authority$ku.peizq.online#Referer$https://play.peizq.online", + "详情是否Jsoup写法": "1", + "类型详情": "", + "年代详情": "", + "地区详情": "", + "演员详情": ".detail-box&&.director,1&&Text!主演:", + "简介详情": ".intro&&Text", + "线路列表数组规则": ".nav-btn&&li", + "线路标题": "Text", + "播放列表数组规则": "body&&[id^=playlist]", + "选集列表数组规则": "a", + "选集标题链接是否Jsoup写法": "1", + "选集标题": "a&&Text", + "选集链接": "a&&href", + "是否反转选集序列": "0", + "选集链接加前缀": "http://www.bahaotv.com", + "选集链接加后缀": "", + "分析MacPlayer": "0", + "是否开启手动嗅探": "0", + "手动嗅探视频链接关键词": ".mp4#.m3u8#.flv#video/tos", + "手动嗅探视频链接过滤词": ".html#=http" +} \ No newline at end of file diff --git a/潇洒/movie/json/BLHJ.json b/潇洒/movie/json/BLHJ.json new file mode 100644 index 00000000..b3aec1f8 --- /dev/null +++ b/潇洒/movie/json/BLHJ.json @@ -0,0 +1,5310 @@ +{ + "class": [ + { + "type_name": "沙雕动漫", + "type_id": "一口气沙雕动漫" + }, + { + "type_name": "纪录片", + "type_id": "纪录片超清" + }, + { + "type_name": "演唱会", + "type_id": "演唱会超清" + }, + { + "type_name": "美食", + "type_id": "美食超清" + }, + { + "type_name": "食谱", + "type_id": "食谱" + }, + { + "type_name": "体育", + "type_id": "体育超清" + }, + { + "type_name": "球星", + "type_id": "球星" + }, + { + "type_name": "旅游", + "type_id": "旅游" + }, + { + "type_name": "风景", + "type_id": "风景4K" + }, + { + "type_name": "说案", + "type_id": "说案" + }, + { + "type_name": "知名UP主", + "type_id": "知名UP主" + }, + { + "type_name": "探索发现", + "type_id": "探索发现超清" + }, + { + "type_name": "鬼畜", + "type_id": "鬼畜" + }, + { + "type_name": "搞笑", + "type_id": "搞笑超清" + }, + { + "type_name": "儿童", + "type_id": "儿童超清" + }, + { + "type_name": "动物世界", + "type_id": "动物世界超清" + }, + { + "type_name": "相声小品", + "type_id": "相声小品超清" + }, + { + "type_name": "戏曲", + "type_id": "戏曲" + }, + { + "type_name": "解说", + "type_id": "解说" + }, + { + "type_name": "演讲", + "type_id": "演讲" + }, + { + "type_name": "小姐姐", + "type_id": "小姐姐超清" + }, + { + "type_name": "荒野求生", + "type_id": "荒野求生超清" + }, + { + "type_name": "健身", + "type_id": "健身" + }, + { + "type_name": "帕梅拉", + "type_id": "帕梅拉" + }, + { + "type_name": "太极拳", + "type_id": "太极拳" + }, + { + "type_name": "广场舞", + "type_id": "广场舞" + }, + { + "type_name": "舞蹈", + "type_id": "舞蹈" + }, + { + "type_name": "音乐", + "type_id": "音乐" + }, + { + "type_name": "歌曲", + "type_id": "歌曲" + }, + { + "type_name": "MV", + "type_id": "MV4K" + }, + { + "type_name": "舞曲", + "type_id": "舞曲超清" + }, + { + "type_name": "4K", + "type_id": "4K" + }, + { + "type_name": "电影", + "type_id": "电影" + }, + { + "type_name": "电视剧", + "type_id": "电视剧" + }, + { + "type_name": "白噪音", + "type_id": "白噪音超清" + }, + { + "type_name": "考公考证", + "type_id": "考公考证" + }, + { + "type_name": "平面设计教学", + "type_id": "平面设计教学" + }, + { + "type_name": "软件教程", + "type_id": "软件教程" + }, + { + "type_name": "Windows", + "type_id": "Windows" + } + ], + "filters": { + "考公考证": [ + { + "key": "order", + "name": "排序", + "value": [ + { + "n": "综合排序", + "v": "0" + }, + { + "n": "最多点击", + "v": "click" + }, + { + "n": "最新发布", + "v": "pubdate" + }, + { + "n": "最多弹幕", + "v": "dm" + }, + { + "n": "最多收藏", + "v": "stow" + } + ] + }, + { + "key": "duration", + "name": "时长", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "60分钟以上", + "v": "4" + }, + { + "n": "30~60分钟", + "v": "3" + }, + { + "n": "10~30分钟", + "v": "2" + }, + { + "n": "10分钟以下", + "v": "1" + } + ] + } + ], + "演唱会超清": [ + { + "key": "order", + "name": "排序", + "value": [ + { + "n": "综合排序", + "v": "0" + }, + { + "n": "最多点击", + "v": "click" + }, + { + "n": "最新发布", + "v": "pubdate" + }, + { + "n": "最多弹幕", + "v": "dm" + }, + { + "n": "最多收藏", + "v": "stow" + } + ] + }, + { + "key": "tid", + "name": "分类", + "value": [ + { + "n": "全部", + "v": "演唱会超清" + }, + { + "n": "A阿杜", + "v": "阿杜演唱会超清" + }, + { + "n": "A阿黛尔", + "v": "阿黛尔演唱会超清" + }, + { + "n": "BBeyond", + "v": "Beyond演唱会超清" + }, + { + "n": "BBy2", + "v": "By2演唱会超清" + }, + { + "n": "BBIGBANG", + "v": "BIGBANG演唱会超清" + }, + { + "n": "B布兰妮", + "v": "布兰妮演唱会超清" + }, + { + "n": "B坂井泉水", + "v": "坂井泉水演唱会超清" + }, + { + "n": "C陈奕迅", + "v": "陈奕迅演唱会超清" + }, + { + "n": "C蔡依林", + "v": "蔡依林演唱会超清" + }, + { + "n": "C初音未来", + "v": "初音未来演唱会超清" + }, + { + "n": "C蔡健雅", + "v": "蔡健雅演唱会超清" + }, + { + "n": "C陈小春", + "v": "陈小春演唱会超清" + }, + { + "n": "C草蜢", + "v": "草蜢演唱会超清" + }, + { + "n": "C陈慧娴", + "v": "陈慧娴演唱会超清" + }, + { + "n": "C崔健", + "v": "崔健演唱会超清" + }, + { + "n": "C仓木麻衣", + "v": "仓木麻衣演唱会超清" + }, + { + "n": "D戴荃", + "v": "戴荃演唱会超清" + }, + { + "n": "D动力火车", + "v": "动力火车演唱会超清" + }, + { + "n": "D邓丽君", + "v": "邓丽君演唱会超清" + }, + { + "n": "D丁当", + "v": "丁当演唱会超清" + }, + { + "n": "D刀郎", + "v": "刀郎演唱会超清" + }, + { + "n": "D邓紫棋", + "v": "邓紫棋演唱会超清" + }, + { + "n": "D戴佩妮", + "v": "戴佩妮演唱会超清" + }, + { + "n": "D邓丽君", + "v": "邓丽君演唱会超清" + }, + { + "n": "F飞儿乐队", + "v": "飞儿乐队演唱会超清" + }, + { + "n": "F费玉清", + "v": "费玉清演唱会超清" + }, + { + "n": "F费翔", + "v": "费翔演唱会超清" + }, + { + "n": "F方大同", + "v": "方大同演唱会超清" + }, + { + "n": "F房东的猫", + "v": "房东的猫演唱会超清" + }, + { + "n": "F凤飞飞", + "v": "凤飞飞演唱会超清" + }, + { + "n": "F凤凰传奇", + "v": "凤凰传奇演唱会超清" + }, + { + "n": "G郭采洁", + "v": "郭采洁演唱会超清" + }, + { + "n": "G光良", + "v": "光良演唱会超清" + }, + { + "n": "G郭静", + "v": "郭静演唱会超清" + }, + { + "n": "G郭富城", + "v": "郭富城演唱会超清" + }, + { + "n": "H胡彦斌", + "v": "胡彦斌演唱会超清" + }, + { + "n": "H胡夏", + "v": "胡夏演唱会超清" + }, + { + "n": "H韩红", + "v": "韩红演唱会超清" + }, + { + "n": "H黄品源", + "v": "黄品源演唱会超清" + }, + { + "n": "H黄小琥", + "v": "黄小琥演唱会超清" + }, + { + "n": "H花儿乐队", + "v": "花儿乐队演唱会超清" + }, + { + "n": "H黄家强", + "v": "黄家强演唱会超清" + }, + { + "n": "H后街男孩", + "v": "后街男孩演唱会超清" + }, + { + "n": "J经典老歌", + "v": "经典老歌演唱会超清" + }, + { + "n": "J贾斯丁比伯", + "v": "贾斯丁比伯演唱会超清" + }, + { + "n": "J金池", + "v": "金池演唱会超清" + }, + { + "n": "J金志文", + "v": "金志文演唱会超清" + }, + { + "n": "J焦迈奇", + "v": "焦迈奇演唱会超清" + }, + { + "n": "K筷子兄弟", + "v": "筷子兄弟演唱会超清" + }, + { + "n": "L李玟", + "v": "李玟演唱会超清" + }, + { + "n": "L林忆莲", + "v": "林忆莲演唱会超清" + }, + { + "n": "L李克勤", + "v": "李克勤演唱会超清" + }, + { + "n": "L刘宪华", + "v": "刘宪华演唱会超清" + }, + { + "n": "L李圣杰", + "v": "李圣杰演唱会超清" + }, + { + "n": "L林宥嘉", + "v": "林宥嘉演唱会超清" + }, + { + "n": "L梁静茹", + "v": "梁静茹演唱会超清" + }, + { + "n": "L李健", + "v": "李健演唱会超清" + }, + { + "n": "L林俊杰", + "v": "林俊杰演唱会超清" + }, + { + "n": "L李玉刚", + "v": "李玉刚演唱会超清" + }, + { + "n": "L林志炫", + "v": "林志炫演唱会超清" + }, + { + "n": "L李荣浩", + "v": "李荣浩演唱会超清" + }, + { + "n": "L李宇春", + "v": "李宇春演唱会超清" + }, + { + "n": "L洛天依", + "v": "洛天依演唱会超清" + }, + { + "n": "L林子祥", + "v": "林子祥演唱会超清" + }, + { + "n": "L李宗盛", + "v": "李宗盛演唱会超清" + }, + { + "n": "L黎明", + "v": "黎明演唱会超清" + }, + { + "n": "L刘德华", + "v": "刘德华演唱会超清" + }, + { + "n": "L罗大佑", + "v": "罗大佑演唱会超清" + }, + { + "n": "L林肯公园", + "v": "林肯公园演唱会超清" + }, + { + "n": "LLadyGaga", + "v": "LadyGaga演唱会超清" + }, + { + "n": "L旅行团乐队", + "v": "旅行团乐队演唱会超清" + }, + { + "n": "M莫文蔚", + "v": "莫文蔚演唱会超清" + }, + { + "n": "M毛不易", + "v": "毛不易演唱会超清" + }, + { + "n": "M梅艳芳", + "v": "梅艳芳演唱会超清" + }, + { + "n": "M迈克尔杰克逊", + "v": "迈克尔杰克逊演唱会超清" + }, + { + "n": "N南拳妈妈", + "v": "南拳妈妈演唱会超清" + }, + { + "n": "P朴树", + "v": "朴树演唱会超清" + }, + { + "n": "Q齐秦", + "v": "齐秦演唱会超清" + }, + { + "n": "Q青鸟飞鱼", + "v": "青鸟飞鱼演唱会超清" + }, + { + "n": "R容祖儿", + "v": "容祖儿演唱会超清" + }, + { + "n": "R任贤齐", + "v": "任贤齐演唱会超清" + }, + { + "n": "S水木年华", + "v": "水木年华演唱会超清" + }, + { + "n": "S孙燕姿", + "v": "孙燕姿演唱会超清" + }, + { + "n": "S苏打绿", + "v": "苏打绿演唱会超清" + }, + { + "n": "SSHE", + "v": "SHE演唱会超清" + }, + { + "n": "S孙楠", + "v": "孙楠演唱会超清" + }, + { + "n": "T陶喆", + "v": "陶喆演唱会超清" + }, + { + "n": "T谭咏麟", + "v": "谭咏麟演唱会超清" + }, + { + "n": "T田馥甄", + "v": "田馥甄演唱会超清" + }, + { + "n": "T谭维维", + "v": "谭维维演唱会超清" + }, + { + "n": "T逃跑计划", + "v": "逃跑计划演唱会超清" + }, + { + "n": "T田震", + "v": "田震演唱会超清" + }, + { + "n": "T谭晶", + "v": "谭晶演唱会超清" + }, + { + "n": "T屠洪刚", + "v": "屠洪刚演唱会超清" + }, + { + "n": "T泰勒·斯威夫特", + "v": "泰勒·斯威夫特演唱会超清" + }, + { + "n": "W王力宏", + "v": "王力宏演唱会超清" + }, + { + "n": "W王杰", + "v": "王杰演唱会超清" + }, + { + "n": "W吴克群", + "v": "吴克群演唱会超清" + }, + { + "n": "W王心凌", + "v": "王心凌演唱会超清" + }, + { + "n": "W王靖雯", + "v": "好声音王靖雯演唱会超清" + }, + { + "n": "W汪峰", + "v": "汪峰演唱会超清" + }, + { + "n": "W伍佰", + "v": "伍佰演唱会超清" + }, + { + "n": "W王菲", + "v": "王菲演唱会超清" + }, + { + "n": "W五月天", + "v": "五月天演唱会超清" + }, + { + "n": "W汪苏泷", + "v": "汪苏泷演唱会超清" + }, + { + "n": "X徐佳莹", + "v": "徐佳莹演唱会超清" + }, + { + "n": "X弦子", + "v": "弦子演唱会超清" + }, + { + "n": "X萧亚轩", + "v": "萧亚轩演唱会超清" + }, + { + "n": "X许巍", + "v": "许巍演唱会超清" + }, + { + "n": "X薛之谦", + "v": "薛之谦演唱会超清" + }, + { + "n": "X许嵩", + "v": "许嵩演唱会超清" + }, + { + "n": "X小虎队", + "v": "小虎队演唱会超清" + }, + { + "n": "X萧敬腾", + "v": "萧敬腾演唱会超清" + }, + { + "n": "X谢霆锋", + "v": "谢霆锋演唱会超清" + }, + { + "n": "X徐小凤", + "v": "徐小凤演唱会超清" + }, + { + "n": "X信乐队", + "v": "信乐队演唱会超清" + }, + { + "n": "Y夜愿乐队", + "v": "夜愿乐队演唱会超清" + }, + { + "n": "Y羽泉", + "v": "羽泉演唱会超清" + }, + { + "n": "Y郁可唯", + "v": "郁可唯演唱会超清" + }, + { + "n": "Y叶倩文", + "v": "叶倩文演唱会超清" + }, + { + "n": "Y杨坤", + "v": "杨坤演唱会超清" + }, + { + "n": "Y庾澄庆", + "v": "庾澄庆演唱会超清" + }, + { + "n": "Y尤长靖", + "v": "尤长靖演唱会超清" + }, + { + "n": "Y易烊千玺", + "v": "易烊千玺演唱会超清" + }, + { + "n": "Y袁娅维", + "v": "袁娅维演唱会超清" + }, + { + "n": "Y杨丞琳", + "v": "杨丞琳演唱会超清" + }, + { + "n": "Y杨千嬅", + "v": "杨千嬅演唱会超清" + }, + { + "n": "Y杨宗纬", + "v": "杨宗纬演唱会超清" + }, + { + "n": "Z郑秀文", + "v": "郑秀文演唱会超清" + }, + { + "n": "Z周杰伦", + "v": "周杰伦演唱会超清" + }, + { + "n": "Z张学友", + "v": "张学友演唱会超清" + }, + { + "n": "Z张信哲", + "v": "张信哲演唱会超清" + }, + { + "n": "Z张宇", + "v": "张宇演唱会超清" + }, + { + "n": "Z周华健", + "v": "周华健演唱会超清" + }, + { + "n": "Z张韶涵", + "v": "张韶涵演唱会超清" + }, + { + "n": "Z周深", + "v": "周深演唱会超清" + }, + { + "n": "Z纵贯线", + "v": "纵贯线演唱会超清" + }, + { + "n": "Z赵雷", + "v": "赵雷演唱会超清" + }, + { + "n": "Z周传雄", + "v": "周传雄演唱会超清" + }, + { + "n": "Z张国荣", + "v": "张国荣演唱会超清" + }, + { + "n": "Z周慧敏", + "v": "周慧敏演唱会超清" + }, + { + "n": "Z张惠妹", + "v": "张惠妹演唱会超清" + }, + { + "n": "Z周笔畅", + "v": "周笔畅演唱会超清" + }, + { + "n": "Z郑中基", + "v": "郑中基演唱会超清" + }, + { + "n": "Z张艺兴", + "v": "张艺兴演唱会超清" + }, + { + "n": "Z张震岳", + "v": "张震岳演唱会超清" + }, + { + "n": "Z张雨生", + "v": "张雨生演唱会超清" + }, + { + "n": "Z郑智化", + "v": "郑智化演唱会超清" + }, + { + "n": "Z卓依婷", + "v": "卓依婷演唱会超清" + }, + { + "n": "Z中岛美雪", + "v": "中岛美雪演唱会超清" + } + ] + }, + { + "key": "duration", + "name": "时长", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "60分钟以上", + "v": "4" + }, + { + "n": "30~60分钟", + "v": "3" + }, + { + "n": "10~30分钟", + "v": "2" + }, + { + "n": "10分钟以下", + "v": "1" + } + ] + } + ], + "探索发现超清": [ + { + "key": "order", + "name": "排序", + "value": [ + { + "n": "综合排序", + "v": "0" + }, + { + "n": "最多点击", + "v": "click" + }, + { + "n": "最新发布", + "v": "pubdate" + }, + { + "n": "最多弹幕", + "v": "dm" + }, + { + "n": "最多收藏", + "v": "stow" + } + ] + }, + { + "key": "duration", + "name": "时长", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "60分钟以上", + "v": "4" + }, + { + "n": "30~60分钟", + "v": "3" + }, + { + "n": "10~30分钟", + "v": "2" + }, + { + "n": "10分钟以下", + "v": "1" + } + ] + } + ], + "电影": [ + { + "key": "order", + "name": "排序", + "value": [ + { + "n": "综合排序", + "v": "0" + }, + { + "n": "最多点击", + "v": "click" + }, + { + "n": "最新发布", + "v": "pubdate" + }, + { + "n": "最多弹幕", + "v": "dm" + }, + { + "n": "最多收藏", + "v": "stow" + } + ] + }, + { + "key": "duration", + "name": "时长", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "60分钟以上", + "v": "4" + }, + { + "n": "30~60分钟", + "v": "3" + }, + { + "n": "10~30分钟", + "v": "2" + }, + { + "n": "10分钟以下", + "v": "1" + } + ] + } + ], + "鬼畜": [ + { + "key": "order", + "name": "排序", + "value": [ + { + "n": "综合排序", + "v": "0" + }, + { + "n": "最多点击", + "v": "click" + }, + { + "n": "最新发布", + "v": "pubdate" + }, + { + "n": "最多弹幕", + "v": "dm" + }, + { + "n": "最多收藏", + "v": "stow" + } + ] + }, + { + "key": "duration", + "name": "时长", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "60分钟以上", + "v": "4" + }, + { + "n": "30~60分钟", + "v": "3" + }, + { + "n": "10~30分钟", + "v": "2" + }, + { + "n": "10分钟以下", + "v": "1" + } + ] + } + ], + "一口气沙雕动漫": [ + { + "key": "order", + "name": "排序", + "value": [ + { + "n": "综合排序", + "v": "0" + }, + { + "n": "最多点击", + "v": "click" + }, + { + "n": "最新发布", + "v": "pubdate" + }, + { + "n": "最多弹幕", + "v": "dm" + }, + { + "n": "最多收藏", + "v": "stow" + } + ] + }, + { + "key": "duration", + "name": "时长", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "60分钟以上", + "v": "4" + }, + { + "n": "30~60分钟", + "v": "3" + }, + { + "n": "10~30分钟", + "v": "2" + }, + { + "n": "10分钟以下", + "v": "1" + } + ] + } + ], + "说案": [ + { + "key": "order", + "name": "排序", + "value": [ + { + "n": "综合排序", + "v": "0" + }, + { + "n": "最多点击", + "v": "click" + }, + { + "n": "最新发布", + "v": "pubdate" + }, + { + "n": "最多弹幕", + "v": "dm" + }, + { + "n": "最多收藏", + "v": "stow" + } + ] + }, + { + "key": "tid", + "name": "分类", + "value": [ + { + "n": "全部", + "v": "说案" + }, + { + "n": "汤圆", + "v": "汤圆说案" + }, + { + "n": "唐唐", + "v": "唐唐说案" + }, + { + "n": "罗翔", + "v": "罗翔说刑法" + }, + { + "n": "何家弘", + "v": "何家弘说案" + }, + { + "n": "韩诺", + "v": "韩诺说案" + }, + { + "n": "老V", + "v": "老V说案" + }, + { + "n": "禁播档案‼️", + "v": "禁播档案" + } + ] + }, + { + "key": "duration", + "name": "时长", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "60分钟以上", + "v": "4" + }, + { + "n": "30~60分钟", + "v": "3" + }, + { + "n": "10~30分钟", + "v": "2" + }, + { + "n": "10分钟以下", + "v": "1" + } + ] + } + ], + "演讲": [ + { + "key": "order", + "name": "排序", + "value": [ + { + "n": "综合排序", + "v": "0" + }, + { + "n": "最多点击", + "v": "click" + }, + { + "n": "最新发布", + "v": "pubdate" + }, + { + "n": "最多弹幕", + "v": "dm" + }, + { + "n": "最多收藏", + "v": "stow" + } + ] + }, + { + "key": "tid", + "name": "分类", + "value": [ + { + "n": "全部", + "v": "全部演讲4K" + }, + { + "n": "A艾跃进", + "v": "艾跃进演讲4K" + }, + { + "n": "C超级演说家", + "v": "超级演说家4K" + }, + { + "n": "D电影", + "v": "电影演讲4K" + }, + { + "n": "D典籍里的中国", + "v": "典籍里的中国4K" + }, + { + "n": "G感动中国", + "v": "感动中国4K" + }, + { + "n": "G郭继承", + "v": "郭继承演讲4K" + }, + { + "n": "H华春莹", + "v": "华春莹演讲4K" + }, + { + "n": "L雷军", + "v": "雷军演讲4K" + }, + { + "n": "L罗翔", + "v": "罗翔演讲4K" + }, + { + "n": "R任正非", + "v": "任正非演讲4K" + }, + { + "n": "TED", + "v": "TED演讲4K" + }, + { + "n": "W汪文斌", + "v": "汪文斌演讲4K" + }, + { + "n": "Y一刻", + "v": "一刻演讲4K" + }, + { + "n": "Z赵立坚", + "v": "赵立坚演讲4K" + }, + { + "n": "Z郑强", + "v": "郑强演讲4K" + } + ] + }, + { + "key": "duration", + "name": "时长", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "60分钟以上", + "v": "4" + }, + { + "n": "30~60分钟", + "v": "3" + }, + { + "n": "10~30分钟", + "v": "2" + }, + { + "n": "10分钟以下", + "v": "1" + } + ] + } + ], + "解说": [ + { + "key": "order", + "name": "排序", + "value": [ + { + "n": "综合排序", + "v": "0" + }, + { + "n": "最多点击", + "v": "click" + }, + { + "n": "最新发布", + "v": "pubdate" + }, + { + "n": "最多弹幕", + "v": "dm" + }, + { + "n": "最多收藏", + "v": "stow" + } + ] + }, + { + "key": "tid", + "name": "分类", + "value": [ + { + "n": "全部", + "v": "解说" + }, + { + "n": "电影", + "v": "电影解说" + }, + { + "n": "电视", + "v": "电视解说" + }, + { + "n": "历史", + "v": "历史解说" + }, + { + "n": "动漫", + "v": "动漫解说" + }, + { + "n": "小说", + "v": "小说解说" + } + ] + }, + { + "key": "duration", + "name": "时长", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "60分钟以上", + "v": "4" + }, + { + "n": "30~60分钟", + "v": "3" + }, + { + "n": "10~30分钟", + "v": "2" + }, + { + "n": "10分钟以下", + "v": "1" + } + ] + } + ], + "风景4K": [ + { + "key": "order", + "name": "排序", + "value": [ + { + "n": "综合排序", + "v": "0" + }, + { + "n": "最多点击", + "v": "click" + }, + { + "n": "最新发布", + "v": "pubdate" + }, + { + "n": "最多弹幕", + "v": "dm" + }, + { + "n": "最多收藏", + "v": "stow" + } + ] + }, + { + "key": "tid", + "name": "分类", + "value": [ + { + "n": "全部", + "v": "风景4K" + }, + { + "n": "A澳门", + "v": "澳门风景4K" + }, + { + "n": "A安徽", + "v": "安徽风景4K" + }, + { + "n": "B布达拉宫", + "v": "布达拉宫风景4K" + }, + { + "n": "B北京", + "v": "北京风景4K" + }, + { + "n": "C重庆", + "v": "重庆风景4K" + }, + { + "n": "C草原", + "v": "草原风景4K" + }, + { + "n": "D大海", + "v": "大海风景4K" + }, + { + "n": "F福建", + "v": "福建风景4K" + }, + { + "n": "G广东", + "v": "广东风景4K" + }, + { + "n": "G广西", + "v": "广西风景4K" + }, + { + "n": "G贵州", + "v": "贵州风景4K" + }, + { + "n": "G甘肃", + "v": "甘肃风景4K" + }, + { + "n": "H海南", + "v": "海南风景4K" + }, + { + "n": "H河北", + "v": "河北风景4K" + }, + { + "n": "H河南", + "v": "河南风景4K" + }, + { + "n": "H湖北", + "v": "湖北风景4K" + }, + { + "n": "H湖南", + "v": "湖南风景4K" + }, + { + "n": "H黑龙江", + "v": "黑龙江风景4K" + }, + { + "n": "J吉林", + "v": "吉林风景4K" + }, + { + "n": "J江苏", + "v": "江苏风景4K" + }, + { + "n": "J江西", + "v": "江西风景4K" + }, + { + "n": "L辽宁", + "v": "辽宁风景4K" + }, + { + "n": "M民宿", + "v": "民宿风景4K" + }, + { + "n": "N内蒙古", + "v": "内蒙古风景4K" + }, + { + "n": "N宁夏", + "v": "宁夏风景4K" + }, + { + "n": "Q青海", + "v": "青海风景4K" + }, + { + "n": "S上海", + "v": "上海风景4K" + }, + { + "n": "S陕西", + "v": "陕西风景4K" + }, + { + "n": "S四川", + "v": "四川风景4K" + }, + { + "n": "S山西", + "v": "山西风景4K" + }, + { + "n": "S山东", + "v": "山东风景4K" + }, + { + "n": "T天津", + "v": "天津风景4K" + }, + { + "n": "T台湾", + "v": "台湾风景4K" + }, + { + "n": "T天空", + "v": "天空风景4K" + }, + { + "n": "X西湖", + "v": "西湖风景4K" + }, + { + "n": "X西藏", + "v": "西藏风景4K" + }, + { + "n": "X新疆", + "v": "新疆风景4K" + }, + { + "n": "X香港", + "v": "香港风景4K" + }, + { + "n": "Y云南", + "v": "云南风景4K" + }, + { + "n": "Z浙江", + "v": "浙江风景4K" + } + ] + }, + { + "key": "duration", + "name": "时长", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "60分钟以上", + "v": "4" + }, + { + "n": "30~60分钟", + "v": "3" + }, + { + "n": "10~30分钟", + "v": "2" + }, + { + "n": "10分钟以下", + "v": "1" + } + ] + } + ], + "MV4K": [ + { + "key": "order", + "name": "排序", + "value": [ + { + "n": "综合排序", + "v": "0" + }, + { + "n": "最多点击", + "v": "click" + }, + { + "n": "最新发布", + "v": "pubdate" + }, + { + "n": "最多弹幕", + "v": "dm" + }, + { + "n": "最多收藏", + "v": "stow" + } + ] + }, + { + "key": "tid", + "name": "分类", + "value": [ + { + "n": "全部", + "v": "MV4K" + }, + { + "n": "A阿杜", + "v": "阿杜MV4K" + }, + { + "n": "A阿黛尔", + "v": "阿黛尔MV4K" + }, + { + "n": "BBeyond", + "v": "BeyondMV4K" + }, + { + "n": "BBy2", + "v": "By2MV4K" + }, + { + "n": "BBIGBANG", + "v": "BIGBANGMV4K" + }, + { + "n": "B布兰妮", + "v": "布兰妮MV4K" + }, + { + "n": "C陈奕迅", + "v": "陈奕迅MV4K" + }, + { + "n": "C蔡依林", + "v": "蔡依林MV4K" + }, + { + "n": "C初音未来", + "v": "初音未来MV4K" + }, + { + "n": "C蔡健雅", + "v": "蔡健雅MV4K" + }, + { + "n": "C陈小春", + "v": "陈小春MV4K" + }, + { + "n": "C草蜢", + "v": "草蜢MV4K" + }, + { + "n": "C陈慧娴", + "v": "陈慧娴MV4K" + }, + { + "n": "C崔健", + "v": "崔健MV4K" + }, + { + "n": "C仓木麻衣", + "v": "仓木麻衣MV4K" + }, + { + "n": "D戴荃", + "v": "戴荃MV4K" + }, + { + "n": "D动力火车", + "v": "动力火车MV4K" + }, + { + "n": "D邓丽君", + "v": "邓丽君MV4K" + }, + { + "n": "D丁当", + "v": "丁当MV4K" + }, + { + "n": "D刀郎", + "v": "刀郎MV4K" + }, + { + "n": "D邓紫棋", + "v": "邓紫棋MV4K" + }, + { + "n": "D戴佩妮", + "v": "戴佩妮MV4K" + }, + { + "n": "D邓丽君", + "v": "邓丽君MV4K" + }, + { + "n": "F飞儿乐队", + "v": "飞儿乐队MV4K" + }, + { + "n": "F费玉清", + "v": "费玉清MV4K" + }, + { + "n": "F费翔", + "v": "费翔MV4K" + }, + { + "n": "F方大同", + "v": "方大同MV4K" + }, + { + "n": "F房东的猫", + "v": "房东的猫MV4K" + }, + { + "n": "F凤飞飞", + "v": "凤飞飞MV4K" + }, + { + "n": "F凤凰传奇", + "v": "凤凰传奇MV4K" + }, + { + "n": "G古风歌曲", + "v": "古风歌曲4K" + }, + { + "n": "G国乐大典", + "v": "国乐大典4K" + }, + { + "n": "G郭采洁", + "v": "郭采洁MV4K" + }, + { + "n": "G光良", + "v": "光良MV4K" + }, + { + "n": "G郭静", + "v": "郭静MV4K" + }, + { + "n": "G郭富城", + "v": "郭富城MV4K" + }, + { + "n": "H胡彦斌", + "v": "胡彦斌MV4K" + }, + { + "n": "H胡夏", + "v": "胡夏MV4K" + }, + { + "n": "H韩红", + "v": "韩红MV4K" + }, + { + "n": "H黄品源", + "v": "黄品源MV4K" + }, + { + "n": "H黄小琥", + "v": "黄小琥MV4K" + }, + { + "n": "H花儿乐队", + "v": "花儿乐队MV4K" + }, + { + "n": "H黄家强", + "v": "黄家强MV4K" + }, + { + "n": "H后街男孩", + "v": "后街男孩MV4K" + }, + { + "n": "J经典老歌", + "v": "经典老歌4K" + }, + { + "n": "J贾斯丁比伯", + "v": "贾斯丁比伯MV4K" + }, + { + "n": "J金池", + "v": "金池MV4K" + }, + { + "n": "J金志文", + "v": "金志文MV4K" + }, + { + "n": "J焦迈奇", + "v": "焦迈奇MV4K" + }, + { + "n": "K筷子兄弟", + "v": "筷子兄弟MV4K" + }, + { + "n": "L李玟", + "v": "李玟MV4K" + }, + { + "n": "L林忆莲", + "v": "林忆莲MV4K" + }, + { + "n": "L李克勤", + "v": "李克勤MV4K" + }, + { + "n": "L刘宪华", + "v": "刘宪华MV4K" + }, + { + "n": "L李圣杰", + "v": "李圣杰MV4K" + }, + { + "n": "L林宥嘉", + "v": "林宥嘉MV4K" + }, + { + "n": "L梁静茹", + "v": "梁静茹MV4K" + }, + { + "n": "L李健", + "v": "李健MV4K" + }, + { + "n": "L林俊杰", + "v": "林俊杰MV4K" + }, + { + "n": "L李玉刚", + "v": "李玉刚MV4K" + }, + { + "n": "L林志炫", + "v": "林志炫MV4K" + }, + { + "n": "L李荣浩", + "v": "李荣浩MV4K" + }, + { + "n": "L李宇春", + "v": "李宇春MV4K" + }, + { + "n": "L洛天依", + "v": "洛天依MV4K" + }, + { + "n": "L林子祥", + "v": "林子祥MV4K" + }, + { + "n": "L李宗盛", + "v": "李宗盛MV4K" + }, + { + "n": "L黎明", + "v": "黎明MV4K" + }, + { + "n": "L刘德华", + "v": "刘德华MV4K" + }, + { + "n": "L罗大佑", + "v": "罗大佑MV4K" + }, + { + "n": "L林肯公园", + "v": "林肯公园MV4K" + }, + { + "n": "LLadyGaga", + "v": "LadyGagaMV4K" + }, + { + "n": "L旅行团乐队", + "v": "旅行团乐队MV4K" + }, + { + "n": "M莫文蔚", + "v": "莫文蔚MV4K" + }, + { + "n": "M毛不易", + "v": "毛不易MV4K" + }, + { + "n": "M梅艳芳", + "v": "梅艳芳MV4K" + }, + { + "n": "M迈克尔杰克逊", + "v": "迈克尔杰克逊MV4K" + }, + { + "n": "N南拳妈妈", + "v": "南拳妈妈MV4K" + }, + { + "n": "P朴树", + "v": "朴树MV4K" + }, + { + "n": "Q齐秦", + "v": "齐秦MV4K" + }, + { + "n": "Q青鸟飞鱼", + "v": "青鸟飞鱼MV4K" + }, + { + "n": "R容祖儿", + "v": "容祖儿MV4K" + }, + { + "n": "R热歌", + "v": "热歌MV4K" + }, + { + "n": "R任贤齐", + "v": "任贤齐MV4K" + }, + { + "n": "S水木年华", + "v": "水木年华MV4K" + }, + { + "n": "S孙燕姿", + "v": "孙燕姿MV4K" + }, + { + "n": "S苏打绿", + "v": "苏打绿MV4K" + }, + { + "n": "SSHE", + "v": "SHEMV4K" + }, + { + "n": "S孙楠", + "v": "孙楠MV4K" + }, + { + "n": "T陶喆", + "v": "陶喆MV4K" + }, + { + "n": "T谭咏麟", + "v": "谭咏麟MV4K" + }, + { + "n": "T田馥甄", + "v": "田馥甄MV4K" + }, + { + "n": "T谭维维", + "v": "谭维维MV4K" + }, + { + "n": "T逃跑计划", + "v": "逃跑计划MV4K" + }, + { + "n": "T田震", + "v": "田震MV4K" + }, + { + "n": "T谭晶", + "v": "谭晶MV4K" + }, + { + "n": "T屠洪刚", + "v": "屠洪刚MV4K" + }, + { + "n": "T泰勒·斯威夫特", + "v": "泰勒·斯威夫特MV4K" + }, + { + "n": "W王力宏", + "v": "王力宏MV4K" + }, + { + "n": "W王杰", + "v": "王杰MV4K" + }, + { + "n": "W吴克群", + "v": "吴克群MV4K" + }, + { + "n": "W王心凌", + "v": "王心凌MV4K" + }, + { + "n": "W汪峰", + "v": "汪峰MV4K" + }, + { + "n": "W伍佰", + "v": "伍佰MV4K" + }, + { + "n": "W王菲", + "v": "王菲MV4K" + }, + { + "n": "W五月天", + "v": "五月天MV4K" + }, + { + "n": "W汪苏泷", + "v": "汪苏泷MV4K" + }, + { + "n": "X徐佳莹", + "v": "徐佳莹MV4K" + }, + { + "n": "X弦子", + "v": "弦子MV4K" + }, + { + "n": "X萧亚轩", + "v": "萧亚轩MV4K" + }, + { + "n": "X许巍", + "v": "许巍MV4K" + }, + { + "n": "X薛之谦", + "v": "薛之谦MV4K" + }, + { + "n": "X许嵩", + "v": "许嵩MV4K" + }, + { + "n": "X小虎队", + "v": "小虎队MV4K" + }, + { + "n": "X萧敬腾", + "v": "萧敬腾MV4K" + }, + { + "n": "X谢霆锋", + "v": "谢霆锋MV4K" + }, + { + "n": "X徐小凤", + "v": "徐小凤MV4K" + }, + { + "n": "X信乐队", + "v": "信乐队MV4K" + }, + { + "n": "Y夜愿乐队", + "v": "夜愿乐队MV4K" + }, + { + "n": "Y原创音乐", + "v": "原创音乐MV4K" + }, + { + "n": "Y羽泉", + "v": "羽泉MV4K" + }, + { + "n": "Y粤语", + "v": "粤语MV4K" + }, + { + "n": "Y郁可唯", + "v": "郁可唯MV4K" + }, + { + "n": "Y叶倩文", + "v": "叶倩文MV4K" + }, + { + "n": "Y杨坤", + "v": "杨坤MV4K" + }, + { + "n": "Y庾澄庆", + "v": "庾澄庆MV4K" + }, + { + "n": "Y尤长靖", + "v": "尤长靖MV4K" + }, + { + "n": "Y易烊千玺", + "v": "易烊千玺MV4K" + }, + { + "n": "Y袁娅维", + "v": "袁娅维MV4K" + }, + { + "n": "Y杨丞琳", + "v": "杨丞琳MV4K" + }, + { + "n": "Y杨千嬅", + "v": "杨千嬅MV4K" + }, + { + "n": "Y杨宗纬", + "v": "杨宗纬MV4K" + }, + { + "n": "Z周杰伦", + "v": "周杰伦MV4K" + }, + { + "n": "Z张学友", + "v": "张学友MV4K" + }, + { + "n": "Z张信哲", + "v": "张信哲MV4K" + }, + { + "n": "Z张宇", + "v": "张宇MV4K" + }, + { + "n": "Z周华健", + "v": "周华健MV4K" + }, + { + "n": "Z张韶涵", + "v": "张韶涵MV4K" + }, + { + "n": "Z周深", + "v": "周深MV4K" + }, + { + "n": "Z纵贯线", + "v": "纵贯线MV4K" + }, + { + "n": "Z赵雷", + "v": "赵雷MV4K" + }, + { + "n": "Z周传雄", + "v": "周传雄MV4K" + }, + { + "n": "Z张国荣", + "v": "张国荣MV4K" + }, + { + "n": "Z周慧敏", + "v": "周慧敏MV4K" + }, + { + "n": "Z张惠妹", + "v": "张惠妹MV4K" + }, + { + "n": "Z周笔畅", + "v": "周笔畅MV4K" + }, + { + "n": "Z郑中基", + "v": "郑中基MV4K" + }, + { + "n": "Z张艺兴", + "v": "张艺兴MV4K" + }, + { + "n": "Z张震岳", + "v": "张震岳MV4K" + }, + { + "n": "Z中国好声音", + "v": "中国好声音MV4K" + }, + { + "n": "Z张雨生", + "v": "张雨生MV4K" + }, + { + "n": "Z郑智化", + "v": "郑智化MV4K" + }, + { + "n": "Z卓依婷", + "v": "卓依婷MV4K" + }, + { + "n": "Z中岛美雪", + "v": "中岛美雪MV4K" + } + ] + }, + { + "key": "duration", + "name": "时长", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "60分钟以上", + "v": "4" + }, + { + "n": "30~60分钟", + "v": "3" + }, + { + "n": "10~30分钟", + "v": "2" + }, + { + "n": "10分钟以下", + "v": "1" + } + ] + } + ], + "帕梅拉": [ + { + "key": "order", + "name": "排序", + "value": [ + { + "n": "综合排序", + "v": "0" + }, + { + "n": "最多点击", + "v": "click" + }, + { + "n": "最新发布", + "v": "pubdate" + }, + { + "n": "最多弹幕", + "v": "dm" + }, + { + "n": "最多收藏", + "v": "stow" + } + ] + }, + { + "key": "tid", + "name": "分类", + "value": [ + { + "n": "全部", + "v": "帕梅拉" + }, + { + "n": "瘦腿", + "v": "帕梅拉瘦腿" + }, + { + "n": "腹部", + "v": "帕梅拉腹部" + }, + { + "n": "手臂", + "v": "帕梅拉手臂" + }, + { + "n": "热身", + "v": "帕梅拉热身" + }, + { + "n": "舞蹈", + "v": "帕梅拉舞蹈" + }, + { + "n": "燃脂", + "v": "帕梅拉燃脂" + }, + { + "n": "有氧", + "v": "帕梅拉有氧" + }, + { + "n": "拉伸", + "v": "帕梅拉拉伸" + } + ] + }, + { + "key": "duration", + "name": "时长", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "60分钟以上", + "v": "4" + }, + { + "n": "30~60分钟", + "v": "3" + }, + { + "n": "10~30分钟", + "v": "2" + }, + { + "n": "10分钟以下", + "v": "1" + } + ] + } + ], + "知名UP主": [ + { + "key": "order", + "name": "排序", + "value": [ + { + "n": "综合排序", + "v": "0" + }, + { + "n": "最多点击", + "v": "click" + }, + { + "n": "最新发布", + "v": "pubdate" + }, + { + "n": "最多弹幕", + "v": "dm" + }, + { + "n": "最多收藏", + "v": "stow" + } + ] + }, + { + "key": "tid", + "name": "分类", + "value": [ + { + "n": "全部", + "v": "知名UP主" + }, + { + "n": "菠萝赛东", + "v": "菠萝赛东" + }, + { + "n": "冯提莫", + "v": "冯提莫" + }, + { + "n": "林延秋", + "v": "林延秋" + }, + { + "n": "-LKs-", + "v": "-LKs-" + }, + { + "n": "小约翰可汗", + "v": "小约翰可汗" + }, + { + "n": "low馆长", + "v": "low馆长" + }, + { + "n": "自说自话的总裁", + "v": "自说自话的总裁" + }, + { + "n": "所长林超", + "v": "所长林超" + }, + { + "n": "世界未解之谜M", + "v": "世界未解之谜M" + }, + { + "n": "李永乐老师官方", + "v": "李永乐老师官方" + }, + { + "n": "罗兹", + "v": "罗兹" + }, + { + "n": "回到2049", + "v": "回到2049" + }, + { + "n": "二次元的中科院物理所", + "v": "二次元的中科院物理所" + }, + { + "n": "毕导THU", + "v": "毕导THU" + }, + { + "n": "罗翔讲刑法", + "v": "罗翔讲刑法" + }, + { + "n": "戴博士实验室", + "v": "戴博士实验室" + }, + { + "n": "芳斯塔芙", + "v": "芳斯塔芙" + }, + { + "n": "参赛者网", + "v": "参赛者网" + }, + { + "n": "三维地图看世界", + "v": "三维地图看世界" + }, + { + "n": "有机社会", + "v": "有机社会" + }, + { + "n": "乌鸦校尉CaptainWuya", + "v": "乌鸦校尉CaptainWuya" + }, + { + "n": "果壳", + "v": "果壳" + }, + { + "n": "严伯钧", + "v": "严伯钧" + }, + { + "n": "是你们的康康", + "v": "是你们的康康" + }, + { + "n": "老爸评测", + "v": "老爸评测" + }, + { + "n": "硬核的半佛仙人", + "v": "硬核的半佛仙人" + }, + { + "n": "盗月社食遇记", + "v": "盗月社食遇记" + }, + { + "n": "我是郭杰瑞", + "v": "我是郭杰瑞" + }, + { + "n": "无穷小亮的科普日常", + "v": "无穷小亮的科普日常" + }, + { + "n": "papi酱", + "v": "papi酱" + }, + { + "n": "老番茄", + "v": "老番茄" + }, + { + "n": "绵羊料理", + "v": "绵羊料理" + }, + { + "n": "老师好我叫何同学", + "v": "老师好我叫何同学" + }, + { + "n": "敬汉卿", + "v": "敬汉卿" + }, + { + "n": "周六野Zoey", + "v": "周六野Zoey" + }, + { + "n": "木鱼水心", + "v": "木鱼水心" + }, + { + "n": "凉风Kaze", + "v": "凉风Kaze" + }, + { + "n": "小潮院长", + "v": "小潮院长" + }, + { + "n": "中国BOY超级大猩猩", + "v": "中国BOY超级大猩猩" + }, + { + "n": "李子柒", + "v": "李子柒" + }, + { + "n": "敖厂长", + "v": "敖厂长" + } + ] + }, + { + "key": "duration", + "name": "时长", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "60分钟以上", + "v": "4" + }, + { + "n": "30~60分钟", + "v": "3" + }, + { + "n": "10~30分钟", + "v": "2" + }, + { + "n": "10分钟以下", + "v": "1" + } + ] + } + ], + "太极拳": [ + { + "key": "order", + "name": "排序", + "value": [ + { + "n": "综合排序", + "v": "0" + }, + { + "n": "最多点击", + "v": "click" + }, + { + "n": "最新发布", + "v": "pubdate" + }, + { + "n": "最多弹幕", + "v": "dm" + }, + { + "n": "最多收藏", + "v": "stow" + } + ] + }, + { + "key": "tid", + "name": "分类", + "value": [ + { + "n": "全部", + "v": "太极拳" + }, + { + "n": "邱慧芳", + "v": "太极拳邱慧芳" + }, + { + "n": "陈氏", + "v": "太极拳陈氏" + }, + { + "n": "武当", + "v": "太极拳武当" + }, + { + "n": "二十四式", + "v": "太极拳二十四式" + }, + { + "n": "三十六式", + "v": "太极拳三十六式" + }, + { + "n": "五禽戏", + "v": "五禽戏" + }, + { + "n": "八段锦", + "v": "八段锦" + } + ] + }, + { + "key": "duration", + "name": "时长", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "60分钟以上", + "v": "4" + }, + { + "n": "30~60分钟", + "v": "3" + }, + { + "n": "10~30分钟", + "v": "2" + }, + { + "n": "10分钟以下", + "v": "1" + } + ] + } + ], + "舞蹈": [ + { + "key": "order", + "name": "排序", + "value": [ + { + "n": "综合排序", + "v": "0" + }, + { + "n": "最多点击", + "v": "click" + }, + { + "n": "最新发布", + "v": "pubdate" + }, + { + "n": "最多弹幕", + "v": "dm" + }, + { + "n": "最多收藏", + "v": "stow" + } + ] + }, + { + "key": "tid", + "name": "分类", + "value": [ + { + "n": "全部", + "v": "舞蹈" + }, + { + "n": "宅舞", + "v": "宅舞" + }, + { + "n": "街舞", + "v": "街舞" + }, + { + "n": "中国舞", + "v": "中国舞" + }, + { + "n": "广场舞", + "v": "广场舞" + }, + { + "n": "交谊舞", + "v": "交谊舞" + }, + { + "n": "教程", + "v": "舞蹈教程" + } + ] + }, + { + "key": "duration", + "name": "时长", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "60分钟以上", + "v": "4" + }, + { + "n": "30~60分钟", + "v": "3" + }, + { + "n": "10~30分钟", + "v": "2" + }, + { + "n": "10分钟以下", + "v": "1" + } + ] + } + ], + "音乐": [ + { + "key": "order", + "name": "排序", + "value": [ + { + "n": "综合排序", + "v": "0" + }, + { + "n": "最多点击", + "v": "click" + }, + { + "n": "最新发布", + "v": "pubdate" + }, + { + "n": "最多弹幕", + "v": "dm" + }, + { + "n": "最多收藏", + "v": "stow" + } + ] + }, + { + "key": "tid", + "name": "分类", + "value": [ + { + "n": "全部", + "v": "音乐" + }, + { + "n": "钢琴曲", + "v": "钢琴曲" + }, + { + "n": "协奏曲", + "v": "协奏曲r" + }, + { + "n": "中国古风音乐", + "v": "中国古风音乐" + }, + { + "n": "背景音乐", + "v": "背景音乐" + }, + { + "n": "助眠音乐r", + "v": "助眠音乐" + }, + { + "n": "胎教音乐", + "v": "胎教音乐" + } + ] + }, + { + "key": "duration", + "name": "时长", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "60分钟以上", + "v": "4" + }, + { + "n": "30~60分钟", + "v": "3" + }, + { + "n": "10~30分钟", + "v": "2" + }, + { + "n": "10分钟以下", + "v": "1" + } + ] + } + ], + "歌曲": [ + { + "key": "order", + "name": "排序", + "value": [ + { + "n": "综合排序", + "v": "0" + }, + { + "n": "最多点击", + "v": "click" + }, + { + "n": "最新发布", + "v": "pubdate" + }, + { + "n": "最多弹幕", + "v": "dm" + }, + { + "n": "最多收藏", + "v": "stow" + } + ] + }, + { + "key": "tid", + "name": "分类", + "value": [ + { + "n": "全部", + "v": "歌曲" + }, + { + "n": "香港歌曲", + "v": "香港歌曲" + }, + { + "n": "台湾歌曲", + "v": "台湾歌曲" + }, + { + "n": "内地歌曲", + "v": "内地歌曲" + }, + { + "n": "英文歌曲", + "v": "英文歌曲" + }, + { + "n": "日文歌曲", + "v": "日文歌曲" + }, + { + "n": "小语种歌曲", + "v": "小语种歌曲" + } + ] + }, + { + "key": "duration", + "name": "时长", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "60分钟以上", + "v": "4" + }, + { + "n": "30~60分钟", + "v": "3" + }, + { + "n": "10~30分钟", + "v": "2" + }, + { + "n": "10分钟以下", + "v": "1" + } + ] + } + ], + "平面设计教学": [ + { + "key": "order", + "name": "排序", + "value": [ + { + "n": "综合排序", + "v": "0" + }, + { + "n": "最多点击", + "v": "click" + }, + { + "n": "最新发布", + "v": "pubdate" + }, + { + "n": "最多弹幕", + "v": "dm" + }, + { + "n": "最多收藏", + "v": "stow" + } + ] + }, + { + "key": "tid", + "name": "分类", + "value": [ + { + "n": "全部", + "v": "平面设计教学" + }, + { + "n": "Adobe Photoshop", + "v": "Adobe Photoshop教程" + }, + { + "n": "Adobe Illustrator", + "v": "Adobe Illustrator教程" + }, + { + "n": "CorelDRAW", + "v": "CorelDRAW教程" + }, + { + "n": "Adobe InDesign", + "v": "Adobe InDesign教程" + }, + { + "n": "Adobe Pagermaker", + "v": "Adobe Pagermaker教程" + }, + { + "n": "SAI", + "v": "SAI教程" + }, + { + "n": "Adobe Bridge", + "v": "Adobe Bridge教程" + }, + { + "n": "Adobe Pagermaker", + "v": "Adobe Pagermake教程r" + }, + { + "n": "3D Studio Max", + "v": "3D Studio Max教程" + }, + { + "n": "PR", + "v": "PR教程" + }, + { + "n": "AE", + "v": "AE教程" + }, + { + "n": "CINEMA 4D", + "v": "CINEMA 4D教程" + } + ] + }, + { + "key": "duration", + "name": "时长", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "60分钟以上", + "v": "4" + }, + { + "n": "30~60分钟", + "v": "3" + }, + { + "n": "10~30分钟", + "v": "2" + }, + { + "n": "10分钟以下", + "v": "1" + } + ] + } + ], + "软件教程": [ + { + "key": "order", + "name": "排序", + "value": [ + { + "n": "综合排序", + "v": "0" + }, + { + "n": "最多点击", + "v": "click" + }, + { + "n": "最新发布", + "v": "pubdate" + }, + { + "n": "最多弹幕", + "v": "dm" + }, + { + "n": "最多收藏", + "v": "stow" + } + ] + }, + { + "key": "tid", + "name": "分类", + "value": [ + { + "n": "全部", + "v": "软件教程" + }, + { + "n": "MT管理器", + "v": "MT管理器" + }, + { + "n": "NP管理器", + "v": "NP管理器" + }, + { + "n": "mixplorer", + "v": "mixplorer" + }, + { + "n": "脱壳", + "v": "脱壳" + }, + { + "n": "爬虫", + "v": "爬虫" + }, + { + "n": "json&jar", + "v": "json&jar" + }, + { + "n": "网盘挂载", + "v": "网盘挂载" + }, + { + "n": "alist+WebDav", + "v": "alist+WebDav" + }, + { + "n": "TVBox修改", + "v": "TVBox修改教程" + }, + { + "n": "EXCEL", + "v": "EXCEL教程" + }, + { + "n": "Git入门到精通", + "v": "Git入门到精通" + }, + { + "n": "java", + "v": "java教程" + }, + { + "n": "phyton", + "v": "phyton教程" + }, + { + "n": "xml", + "v": "xml教程" + } + ] + }, + { + "key": "duration", + "name": "时长", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "60分钟以上", + "v": "4" + }, + { + "n": "30~60分钟", + "v": "3" + }, + { + "n": "10~30分钟", + "v": "2" + }, + { + "n": "10分钟以下", + "v": "1" + } + ] + } + ], + "Windows": [ + { + "key": "order", + "name": "排序", + "value": [ + { + "n": "综合排序", + "v": "0" + }, + { + "n": "最多点击", + "v": "click" + }, + { + "n": "最新发布", + "v": "pubdate" + }, + { + "n": "最多弹幕", + "v": "dm" + }, + { + "n": "最多收藏", + "v": "stow" + } + ] + }, + { + "key": "duration", + "name": "时长", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "60分钟以上", + "v": "4" + }, + { + "n": "30~60分钟", + "v": "3" + }, + { + "n": "10~30分钟", + "v": "2" + }, + { + "n": "10分钟以下", + "v": "1" + } + ] + } + ], + "小姐姐超清": [ + { + "key": "order", + "name": "排序", + "value": [ + { + "n": "综合排序", + "v": "0" + }, + { + "n": "最多点击", + "v": "click" + }, + { + "n": "最新发布", + "v": "pubdate" + }, + { + "n": "最多弹幕", + "v": "dm" + }, + { + "n": "最多收藏", + "v": "stow" + } + ] + }, + { + "key": "duration", + "name": "时长", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "60分钟以上", + "v": "4" + }, + { + "n": "30~60分钟", + "v": "3" + }, + { + "n": "10~30分钟", + "v": "2" + }, + { + "n": "10分钟以下", + "v": "1" + } + ] + } + ], + "广场舞超清": [ + { + "key": "order", + "name": "排序", + "value": [ + { + "n": "综合排序", + "v": "0" + }, + { + "n": "最多点击", + "v": "click" + }, + { + "n": "最新发布", + "v": "pubdate" + }, + { + "n": "最多弹幕", + "v": "dm" + }, + { + "n": "最多收藏", + "v": "stow" + } + ] + }, + { + "key": "duration", + "name": "时长", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "60分钟以上", + "v": "4" + }, + { + "n": "30~60分钟", + "v": "3" + }, + { + "n": "10~30分钟", + "v": "2" + }, + { + "n": "10分钟以下", + "v": "1" + } + ] + } + ], + "舞曲超清": [ + { + "key": "order", + "name": "排序", + "value": [ + { + "n": "综合排序", + "v": "0" + }, + { + "n": "最多点击", + "v": "click" + }, + { + "n": "最新发布", + "v": "pubdate" + }, + { + "n": "最多弹幕", + "v": "dm" + }, + { + "n": "最多收藏", + "v": "stow" + } + ] + }, + { + "key": "duration", + "name": "时长", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "60分钟以上", + "v": "4" + }, + { + "n": "30~60分钟", + "v": "3" + }, + { + "n": "10~30分钟", + "v": "2" + }, + { + "n": "10分钟以下", + "v": "1" + } + ] + } + ], + "白噪音超清": [ + { + "key": "order", + "name": "排序", + "value": [ + { + "n": "综合排序", + "v": "0" + }, + { + "n": "最多点击", + "v": "click" + }, + { + "n": "最新发布", + "v": "pubdate" + }, + { + "n": "最多弹幕", + "v": "dm" + }, + { + "n": "最多收藏", + "v": "stow" + } + ] + }, + { + "key": "duration", + "name": "时长", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "60分钟以上", + "v": "4" + }, + { + "n": "30~60分钟", + "v": "3" + }, + { + "n": "10~30分钟", + "v": "2" + }, + { + "n": "10分钟以下", + "v": "1" + } + ] + } + ], + "搞笑超清": [ + { + "key": "order", + "name": "排序", + "value": [ + { + "n": "综合排序", + "v": "0" + }, + { + "n": "最多点击", + "v": "click" + }, + { + "n": "最新发布", + "v": "pubdate" + }, + { + "n": "最多弹幕", + "v": "dm" + }, + { + "n": "最多收藏", + "v": "stow" + } + ] + }, + { + "key": "duration", + "name": "时长", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "60分钟以上", + "v": "4" + }, + { + "n": "30~60分钟", + "v": "3" + }, + { + "n": "10~30分钟", + "v": "2" + }, + { + "n": "10分钟以下", + "v": "1" + } + ] + } + ], + "体育超清": [ + { + "key": "order", + "name": "排序", + "value": [ + { + "n": "综合排序", + "v": "0" + }, + { + "n": "最多点击", + "v": "click" + }, + { + "n": "最新发布", + "v": "pubdate" + }, + { + "n": "最多弹幕", + "v": "dm" + }, + { + "n": "最多收藏", + "v": "stow" + } + ] + }, + { + "key": "duration", + "name": "时长", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "60分钟以上", + "v": "4" + }, + { + "n": "30~60分钟", + "v": "3" + }, + { + "n": "10~30分钟", + "v": "2" + }, + { + "n": "10分钟以下", + "v": "1" + } + ] + } + ], + "4K": [ + { + "key": "order", + "name": "排序", + "value": [ + { + "n": "综合排序", + "v": "0" + }, + { + "n": "最多点击", + "v": "click" + }, + { + "n": "最新发布", + "v": "pubdate" + }, + { + "n": "最多弹幕", + "v": "dm" + }, + { + "n": "最多收藏", + "v": "stow" + } + ] + }, + { + "key": "duration", + "name": "时长", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "60分钟以上", + "v": "4" + }, + { + "n": "30~60分钟", + "v": "3" + }, + { + "n": "10~30分钟", + "v": "2" + }, + { + "n": "10分钟以下", + "v": "1" + } + ] + } + ], + "足球比赛合集超清": [ + { + "key": "order", + "name": "排序", + "value": [ + { + "n": "综合排序", + "v": "0" + }, + { + "n": "最多点击", + "v": "click" + }, + { + "n": "最新发布", + "v": "pubdate" + }, + { + "n": "最多弹幕", + "v": "dm" + }, + { + "n": "最多收藏", + "v": "stow" + } + ] + }, + { + "key": "duration", + "name": "时长", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "60分钟以上", + "v": "4" + }, + { + "n": "30~60分钟", + "v": "3" + }, + { + "n": "10~30分钟", + "v": "2" + }, + { + "n": "10分钟以下", + "v": "1" + } + ] + } + ], + "篮球超清": [ + { + "key": "order", + "name": "排序", + "value": [ + { + "n": "综合排序", + "v": "0" + }, + { + "n": "最多点击", + "v": "click" + }, + { + "n": "最新发布", + "v": "pubdate" + }, + { + "n": "最多弹幕", + "v": "dm" + }, + { + "n": "最多收藏", + "v": "stow" + } + ] + }, + { + "key": "duration", + "name": "时长", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "60分钟以上", + "v": "4" + }, + { + "n": "30~60分钟", + "v": "3" + }, + { + "n": "10~30分钟", + "v": "2" + }, + { + "n": "10分钟以下", + "v": "1" + } + ] + } + ], + "动物世界超清": [ + { + "key": "order", + "name": "排序", + "value": [ + { + "n": "综合排序", + "v": "0" + }, + { + "n": "最多点击", + "v": "click" + }, + { + "n": "最新发布", + "v": "pubdate" + }, + { + "n": "最多弹幕", + "v": "dm" + }, + { + "n": "最多收藏", + "v": "stow" + } + ] + }, + { + "key": "duration", + "name": "时长", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "60分钟以上", + "v": "4" + }, + { + "n": "30~60分钟", + "v": "3" + }, + { + "n": "10~30分钟", + "v": "2" + }, + { + "n": "10分钟以下", + "v": "1" + } + ] + } + ], + "儿童超清": [ + { + "key": "order", + "name": "排序", + "value": [ + { + "n": "综合排序", + "v": "0" + }, + { + "n": "最多点击", + "v": "click" + }, + { + "n": "最新发布", + "v": "pubdate" + }, + { + "n": "最多弹幕", + "v": "dm" + }, + { + "n": "最多收藏", + "v": "stow" + } + ] + }, + { + "key": "duration", + "name": "时长", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "60分钟以上", + "v": "4" + }, + { + "n": "30~60分钟", + "v": "3" + }, + { + "n": "10~30分钟", + "v": "2" + }, + { + "n": "10分钟以下", + "v": "1" + } + ] + } + ], + "荒野求生超清": [ + { + "key": "order", + "name": "排序", + "value": [ + { + "n": "综合排序", + "v": "0" + }, + { + "n": "最多点击", + "v": "click" + }, + { + "n": "最新发布", + "v": "pubdate" + }, + { + "n": "最多弹幕", + "v": "dm" + }, + { + "n": "最多收藏", + "v": "stow" + } + ] + }, + { + "key": "duration", + "name": "时长", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "60分钟以上", + "v": "4" + }, + { + "n": "30~60分钟", + "v": "3" + }, + { + "n": "10~30分钟", + "v": "2" + }, + { + "n": "10分钟以下", + "v": "1" + } + ] + } + ], + "纪录片超清": [ + { + "key": "order", + "name": "排序", + "value": [ + { + "n": "综合排序", + "v": "0" + }, + { + "n": "最多点击", + "v": "click" + }, + { + "n": "最新发布", + "v": "pubdate" + }, + { + "n": "最多弹幕", + "v": "dm" + }, + { + "n": "最多收藏", + "v": "stow" + } + ] + }, + { + "key": "duration", + "name": "时长", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "60分钟以上", + "v": "4" + }, + { + "n": "30~60分钟", + "v": "3" + }, + { + "n": "10~30分钟", + "v": "2" + }, + { + "n": "10分钟以下", + "v": "1" + } + ] + } + ], + "食谱": [ + { + "key": "order", + "name": "排序", + "value": [ + { + "n": "综合排序", + "v": "0" + }, + { + "n": "最多点击", + "v": "click" + }, + { + "n": "最新发布", + "v": "pubdate" + }, + { + "n": "最多弹幕", + "v": "dm" + }, + { + "n": "最多收藏", + "v": "stow" + } + ] + }, + { + "key": "tid", + "name": "分类", + "value": [ + { + "n": "全部", + "v": "食谱" + }, + { + "n": "川菜食谱", + "v": "川菜食谱" + }, + { + "n": "豫菜食谱", + "v": "豫菜食谱" + }, + { + "n": "淮扬菜食谱", + "v": "淮扬菜食谱" + }, + { + "n": "湘菜食谱", + "v": "湘菜食谱" + }, + { + "n": "鲁菜食谱", + "v": "鲁菜食谱" + }, + { + "n": "粤菜食谱", + "v": "粤菜食谱" + }, + { + "n": "潮菜食谱", + "v": "潮菜食谱" + }, + { + "n": "浙菜食谱", + "v": "浙菜食谱" + }, + { + "n": "徽菜食谱", + "v": "徽菜食谱" + }, + { + "n": "闽菜食谱", + "v": "闽菜食谱" + }, + { + "n": "苏菜食谱", + "v": "苏菜食谱" + } + ] + }, + { + "key": "duration", + "name": "时长", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "60分钟以上", + "v": "4" + }, + { + "n": "30~60分钟", + "v": "3" + }, + { + "n": "10~30分钟", + "v": "2" + }, + { + "n": "10分钟以下", + "v": "1" + } + ] + } + ], + "健身": [ + { + "key": "order", + "name": "排序", + "value": [ + { + "n": "综合排序", + "v": "0" + }, + { + "n": "最多点击", + "v": "click" + }, + { + "n": "最新发布", + "v": "pubdate" + }, + { + "n": "最多弹幕", + "v": "dm" + }, + { + "n": "最多收藏", + "v": "stow" + } + ] + }, + { + "key": "tid", + "name": "分类", + "value": [ + { + "n": "全部", + "v": "健身" + }, + { + "n": "瘦腿", + "v": "瘦腿" + }, + { + "n": "腹部", + "v": "腹部" + }, + { + "n": "手臂", + "v": "手臂" + }, + { + "n": "热身", + "v": "热身" + }, + { + "n": "帕梅拉", + "v": "帕梅拉" + }, + { + "n": "燃脂", + "v": "燃脂" + }, + { + "n": "有氧", + "v": "有氧" + }, + { + "n": "拉伸", + "v": "拉伸" + } + ] + }, + { + "key": "duration", + "name": "时长", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "60分钟以上", + "v": "4" + }, + { + "n": "30~60分钟", + "v": "3" + }, + { + "n": "10~30分钟", + "v": "2" + }, + { + "n": "10分钟以下", + "v": "1" + } + ] + } + ], + "窗白噪音": [ + { + "key": "order", + "name": "排序", + "value": [ + { + "n": "综合排序", + "v": "0" + }, + { + "n": "最多点击", + "v": "click" + }, + { + "n": "最新发布", + "v": "pubdate" + }, + { + "n": "最多弹幕", + "v": "dm" + }, + { + "n": "最多收藏", + "v": "stow" + } + ] + }, + { + "key": "duration", + "name": "时长", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "60分钟以上", + "v": "4" + }, + { + "n": "30~60分钟", + "v": "3" + }, + { + "n": "10~30分钟", + "v": "2" + }, + { + "n": "10分钟以下", + "v": "1" + } + ] + } + ], + "美食超清": [ + { + "key": "order", + "name": "排序", + "value": [ + { + "n": "综合排序", + "v": "0" + }, + { + "n": "最多点击", + "v": "click" + }, + { + "n": "最新发布", + "v": "pubdate" + }, + { + "n": "最多弹幕", + "v": "dm" + }, + { + "n": "最多收藏", + "v": "stow" + } + ] + }, + { + "key": "tid", + "name": "分类", + "value": [ + { + "n": "全部", + "v": "美食超清" + }, + { + "n": "舌尖上的中国", + "v": "舌尖上的中国超清" + }, + { + "n": "老字号", + "v": "老字号美食超清" + }, + { + "n": "家常菜", + "v": "家常菜美食超清" + }, + { + "n": "香港美食探店", + "v": "香港美食探店超清" + }, + { + "n": "澳门美食探店", + "v": "澳门美食探店超清" + }, + { + "n": "上海美食探店", + "v": "上海美食探店超清" + }, + { + "n": "北京美食探店", + "v": "北京美食探店超清" + }, + { + "n": "重庆美食探店", + "v": "重庆美食探店超清" + }, + { + "n": "南京美食探店", + "v": "南京美食探店超清" + }, + { + "n": "广州美食探店", + "v": "广州美食探店超清" + }, + { + "n": "杭州美食探店", + "v": "杭州美食探店超清" + }, + { + "n": "成都美食探店", + "v": "成都美食探店超清" + }, + { + "n": "苏州美食探店", + "v": "苏州美食探店超清" + }, + { + "n": "武汉美食探店", + "v": "武汉美食探店超清" + }, + { + "n": "台湾美食探店", + "v": "台湾美食探店超清" + }, + { + "n": "川菜", + "v": "川菜美食超清" + }, + { + "n": "豫菜", + "v": "豫菜美食超清" + }, + { + "n": "淮扬菜", + "v": "淮扬菜美食超清" + }, + { + "n": "湘菜", + "v": "湘菜美食超清" + }, + { + "n": "鲁菜", + "v": "鲁菜美食超清" + }, + { + "n": "粤菜", + "v": "粤菜美食超清" + }, + { + "n": "潮菜", + "v": "潮菜美食超清" + }, + { + "n": "浙菜", + "v": "浙菜美食超清" + }, + { + "n": "徽菜", + "v": "徽菜美食超清" + }, + { + "n": "闽菜", + "v": "闽菜美食超清" + }, + { + "n": "东北菜", + "v": "东北菜美食超清" + }, + { + "n": "客家菜", + "v": "客家菜美食超清" + }, + { + "n": "苏菜", + "v": "苏菜美食超清" + }, + { + "n": "火锅", + "v": "火锅" + }, + { + "n": "面食", + "v": "面食" + }, + { + "n": "炒菜", + "v": "炒菜" + }, + { + "n": "点心", + "v": "点心" + }, + { + "n": "日料", + "v": "日料" + }, + { + "n": "小吃", + "v": "小吃" + }, + { + "n": "素食", + "v": "素食" + }, + { + "n": "蒸菜", + "v": "蒸菜" + }, + { + "n": "凉菜", + "v": "凉菜" + }, + { + "n": "早餐", + "v": "早餐" + }, + { + "n": "披萨", + "v": "披萨" + }, + { + "n": "烤鱼", + "v": "烤鱼" + }, + { + "n": "海鲜", + "v": "海鲜美食超清" + }, + { + "n": "汉堡", + "v": "汉堡" + }, + { + "n": "韩国菜", + "v": "韩国菜" + }, + { + "n": "泰国菜", + "v": "泰国菜" + }, + { + "n": "穆斯林菜", + "v": "穆斯林菜" + }, + { + "n": "法国菜", + "v": "法国菜" + }, + { + "n": "意大利菜", + "v": "意大利菜" + }, + { + "n": "西班牙菜", + "v": "西班牙菜" + }, + { + "n": "土耳其菜", + "v": "土耳其菜系" + }, + { + "n": "阿拉伯菜", + "v": "阿拉伯菜" + }, + { + "n": "德国菜", + "v": "德国菜" + } + ] + }, + { + "key": "duration", + "name": "时长", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "60分钟以上", + "v": "4" + }, + { + "n": "30~60分钟", + "v": "3" + }, + { + "n": "10~30分钟", + "v": "2" + }, + { + "n": "10分钟以下", + "v": "1" + } + ] + } + ], + "广场舞": [ + { + "key": "order", + "name": "排序", + "value": [ + { + "n": "综合排序", + "v": "0" + }, + { + "n": "最多点击", + "v": "click" + }, + { + "n": "最新发布", + "v": "pubdate" + }, + { + "n": "最多弹幕", + "v": "dm" + }, + { + "n": "最多收藏", + "v": "stow" + } + ] + }, + { + "key": "duration", + "name": "时长", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "60分钟以上", + "v": "4" + }, + { + "n": "30~60分钟", + "v": "3" + }, + { + "n": "10~30分钟", + "v": "2" + }, + { + "n": "10分钟以下", + "v": "1" + } + ] + } + ], + "球星": [ + { + "key": "order", + "name": "排序", + "value": [ + { + "n": "综合排序", + "v": "0" + }, + { + "n": "最多点击", + "v": "click" + }, + { + "n": "最新发布", + "v": "pubdate" + }, + { + "n": "最多弹幕", + "v": "dm" + }, + { + "n": "最多收藏", + "v": "stow" + } + ] + }, + { + "key": "tid", + "name": "分类", + "value": [ + { + "n": "全部", + "v": "球星" + }, + { + "n": "梅西", + "v": "梅西" + }, + { + "n": "C罗", + "v": "C罗" + }, + { + "n": "天下足球", + "v": "天下足球" + }, + { + "n": "罗纳尔多", + "v": "罗纳尔多" + }, + { + "n": "亨利", + "v": "亨利" + }, + { + "n": "小罗", + "v": "小罗" + }, + { + "n": "齐达内", + "v": "齐达内" + }, + { + "n": "贝克汉姆", + "v": "贝克汉姆" + }, + { + "n": "内马尔", + "v": "内马尔" + }, + { + "n": "德布劳内", + "v": "德布劳内" + }, + { + "n": "欧冠", + "v": "欧冠" + }, + { + "n": "世界杯", + "v": "世界杯" + }, + { + "n": "西甲", + "v": "西甲" + }, + { + "n": "英超", + "v": "英超" + }, + { + "n": "意甲", + "v": "意甲" + }, + { + "n": "德甲", + "v": "德甲" + }, + { + "n": "国米", + "v": "国米" + }, + { + "n": "皇马", + "v": "皇马" + }, + { + "n": "巴萨", + "v": "巴萨" + }, + { + "n": "巴黎圣日耳曼", + "v": "巴黎圣日耳曼" + }, + { + "n": "曼联", + "v": "曼联" + }, + { + "n": "曼城", + "v": "曼城" + }, + { + "n": "NBA", + "v": "NBA" + }, + { + "n": "詹姆斯", + "v": "詹姆斯" + }, + { + "n": "库里", + "v": "库里" + }, + { + "n": "杜兰特", + "v": "杜兰特" + }, + { + "n": "UFC", + "v": "UFC" + }, + { + "n": "斯诺克", + "v": "斯诺克" + }, + { + "n": "网球", + "v": "网球" + }, + { + "n": "F1", + "v": "F1" + }, + { + "n": "高尔夫", + "v": "高尔夫" + } + ] + }, + { + "key": "duration", + "name": "时长", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "60分钟以上", + "v": "4" + }, + { + "n": "30~60分钟", + "v": "3" + }, + { + "n": "10~30分钟", + "v": "2" + }, + { + "n": "10分钟以下", + "v": "1" + } + ] + } + ], + "电视剧": [ + { + "key": "order", + "name": "排序", + "value": [ + { + "n": "综合排序", + "v": "0" + }, + { + "n": "最多点击", + "v": "click" + }, + { + "n": "最新发布", + "v": "pubdate" + }, + { + "n": "最多弹幕", + "v": "dm" + }, + { + "n": "最多收藏", + "v": "stow" + } + ] + }, + { + "key": "duration", + "name": "时长", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "60分钟以上", + "v": "4" + }, + { + "n": "30~60分钟", + "v": "3" + }, + { + "n": "10~30分钟", + "v": "2" + }, + { + "n": "10分钟以下", + "v": "1" + } + ] + } + ], + "相声小品超清": [ + { + "key": "order", + "name": "排序", + "value": [ + { + "n": "综合排序", + "v": "0" + }, + { + "n": "最多点击", + "v": "click" + }, + { + "n": "最新发布", + "v": "pubdate" + }, + { + "n": "最多弹幕", + "v": "dm" + }, + { + "n": "最多收藏", + "v": "stow" + } + ] + }, + { + "key": "tid", + "name": "分类", + "value": [ + { + "n": "全部", + "v": "相声小品" + }, + { + "n": "单口相声", + "v": "单口相声" + }, + { + "n": "群口相声", + "v": "群口相声" + }, + { + "n": "德云社", + "v": "德云社" + }, + { + "n": "青曲社", + "v": "青曲社" + }, + { + "n": "郭德纲", + "v": "郭德纲" + }, + { + "n": "岳云鹏", + "v": "岳云鹏" + }, + { + "n": "曹云金", + "v": "曹云金" + }, + { + "n": "评书", + "v": "评书" + }, + { + "n": "小曲", + "v": "小曲" + }, + { + "n": "二人转", + "v": "二人转" + }, + { + "n": "春晚小品", + "v": "春晚小品" + }, + { + "n": "赵本山", + "v": "赵本山" + }, + { + "n": "陈佩斯", + "v": "陈佩斯" + }, + { + "n": "冯巩", + "v": "冯巩" + }, + { + "n": "宋小宝", + "v": "宋小宝" + }, + { + "n": "赵丽蓉", + "v": "赵丽蓉" + }, + { + "n": "郭达", + "v": "郭达" + }, + { + "n": "潘长江", + "v": "潘长江" + }, + { + "n": "郭冬临", + "v": "郭冬临" + }, + { + "n": "严顺开", + "v": "严顺开" + }, + { + "n": "文松", + "v": "文松" + }, + { + "n": "开心麻花", + "v": "开心麻花" + }, + { + "n": "屌丝男士", + "v": "屌丝男士" + }, + { + "n": "喜剧综艺", + "v": "喜剧综艺" + } + ] + }, + { + "key": "duration", + "name": "时长", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "60分钟以上", + "v": "4" + }, + { + "n": "30~60分钟", + "v": "3" + }, + { + "n": "10~30分钟", + "v": "2" + }, + { + "n": "10分钟以下", + "v": "1" + } + ] + } + ], + "戏曲": [ + { + "key": "order", + "name": "排序", + "value": [ + { + "n": "综合排序", + "v": "0" + }, + { + "n": "最多点击", + "v": "click" + }, + { + "n": "最新发布", + "v": "pubdate" + }, + { + "n": "最多弹幕", + "v": "dm" + }, + { + "n": "最多收藏", + "v": "stow" + } + ] + }, + { + "key": "tid", + "name": "分类", + "value": [ + { + "n": "全部", + "v": "戏曲" + }, + { + "n": "京剧", + "v": "京剧" + }, + { + "n": "越剧", + "v": "越剧" + }, + { + "n": "黄梅戏", + "v": "黄梅戏" + }, + { + "n": "评剧", + "v": "评剧" + }, + { + "n": "豫剧", + "v": "豫剧" + }, + { + "n": "昆曲", + "v": "昆曲" + }, + { + "n": "高腔", + "v": "高腔" + }, + { + "n": "梆子腔", + "v": "梆子腔" + }, + { + "n": "河北梆子", + "v": "河北梆子" + }, + { + "n": "晋剧", + "v": "晋剧" + }, + { + "n": "蒲剧", + "v": "蒲剧" + }, + { + "n": "雁剧", + "v": "雁剧" + }, + { + "n": "上党梆子", + "v": "上党梆子" + }, + { + "n": "秦腔", + "v": "秦腔" + }, + { + "n": "武安平调", + "v": "武安平调" + }, + { + "n": "二人台", + "v": "二人台" + }, + { + "n": "吉剧", + "v": "吉剧" + }, + { + "n": "龙江剧", + "v": "龙江剧" + }, + { + "n": "越调", + "v": "越调" + }, + { + "n": "河南曲剧", + "v": "河南曲剧" + }, + { + "n": "山东梆子", + "v": "山东梆子" + }, + { + "n": "淮剧", + "v": "淮剧" + }, + { + "n": "沪剧", + "v": "沪剧" + }, + { + "n": "滑稽戏", + "v": "滑稽戏" + }, + { + "n": "婺剧", + "v": "婺剧" + }, + { + "n": "绍剧", + "v": "绍剧" + }, + { + "n": "徽剧", + "v": "徽剧" + }, + { + "n": "闽剧", + "v": "闽剧" + }, + { + "n": "莆仙戏", + "v": "莆仙戏" + }, + { + "n": "梨园戏", + "v": "梨园戏" + }, + { + "n": "高甲戏", + "v": "高甲戏" + }, + { + "n": "赣剧", + "v": "赣剧" + }, + { + "n": "采茶戏", + "v": "采茶戏" + }, + { + "n": "汉剧", + "v": "汉剧" + }, + { + "n": "湘剧", + "v": "湘剧" + }, + { + "n": "祁剧", + "v": "祁剧" + }, + { + "n": "湖南花鼓戏", + "v": "湖南花鼓戏" + }, + { + "n": "粤剧", + "v": "粤剧" + }, + { + "n": "潮剧", + "v": "潮剧" + }, + { + "n": "桂剧", + "v": "桂剧" + }, + { + "n": "彩调", + "v": "彩调" + }, + { + "n": "壮剧", + "v": "壮剧" + }, + { + "n": "川剧", + "v": "川剧" + }, + { + "n": "黔剧", + "v": "黔剧" + }, + { + "n": "滇剧", + "v": "滇剧" + }, + { + "n": "傣剧", + "v": "傣剧" + }, + { + "n": "藏剧", + "v": "藏剧" + }, + { + "n": "皮影戏", + "v": "皮影戏" + } + ] + }, + { + "key": "duration", + "name": "时长", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "60分钟以上", + "v": "4" + }, + { + "n": "30~60分钟", + "v": "3" + }, + { + "n": "10~30分钟", + "v": "2" + }, + { + "n": "10分钟以下", + "v": "1" + } + ] + } + ], + "旅游": [ + { + "key": "order", + "name": "排序", + "value": [ + { + "n": "综合排序", + "v": "0" + }, + { + "n": "最多点击", + "v": "click" + }, + { + "n": "最新发布", + "v": "pubdate" + }, + { + "n": "最多弹幕", + "v": "dm" + }, + { + "n": "最多收藏", + "v": "stow" + } + ] + }, + { + "key": "duration", + "name": "时长", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "60分钟以上", + "v": "4" + }, + { + "n": "30~60分钟", + "v": "3" + }, + { + "n": "10~30分钟", + "v": "2" + }, + { + "n": "10分钟以下", + "v": "1" + } + ] + } + ], + "游泳": [ + { + "key": "tid", + "name": "分类", + "value": [ + { + "n": "全部", + "v": "泳姿" + }, + { + "n": "蝶泳", + "v": "蝶泳" + }, + { + "n": "仰泳", + "v": "仰泳" + }, + { + "n": "蛙泳", + "v": "蛙泳" + }, + { + "n": "自由泳", + "v": "自由泳" + } + ] + }, + { + "key": "duration", + "name": "时长", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "60分钟以上", + "v": "4" + }, + { + "n": "30~60分钟", + "v": "3" + }, + { + "n": "10~30分钟", + "v": "2" + }, + { + "n": "10分钟以下", + "v": "1" + } + ] + } + ] + } +} \ No newline at end of file diff --git a/潇洒/movie/json/BLSP.json b/潇洒/movie/json/BLSP.json new file mode 100644 index 00000000..897b724f --- /dev/null +++ b/潇洒/movie/json/BLSP.json @@ -0,0 +1,374 @@ +{ + "class": [ + { + "type_name": "番剧", + "type_id": "1" + }, + { + "type_name": "国创", + "type_id": "4" + }, + { + "type_name": "剧集", + "type_id": "5" + }, + { + "type_name": "综艺", + "type_id": "7" + }, + { + "type_name": "纪录", + "type_id": "3" + } + ], + "filters": { + "2": [ + { + "key": "order", + "name": "排序", + "value": [ + { + "n": "播放数量", + "v": "2" + }, + { + "n": "更新时间", + "v": "0" + }, + { + "n": "最高评分", + "v": "4" + }, + { + "n": "弹幕数量", + "v": "1" + }, + { + "n": "追看人数", + "v": "3" + }, + { + "n": "开播时间", + "v": "5" + }, + { + "n": "上映时间", + "v": "6" + } + ] + }, + { + "key": "season_status", + "name": "付费", + "value": [ + { + "n": "全部", + "v": "-1" + }, + { + "n": "免费", + "v": "1" + }, + { + "n": "付费", + "v": "2%2C6" + }, + { + "n": "大会员", + "v": "4%2C6" + } + ] + } + ], + "5": [ + { + "key": "order", + "name": "排序", + "value": [ + { + "n": "播放数量", + "v": "2" + }, + { + "n": "更新时间", + "v": "0" + }, + { + "n": "最高评分", + "v": "4" + }, + { + "n": "弹幕数量", + "v": "1" + }, + { + "n": "追看人数", + "v": "3" + }, + { + "n": "开播时间", + "v": "5" + }, + { + "n": "上映时间", + "v": "6" + } + ] + }, + { + "key": "season_status", + "name": "付费", + "value": [ + { + "n": "全部", + "v": "-1" + }, + { + "n": "免费", + "v": "1" + }, + { + "n": "付费", + "v": "2%2C6" + }, + { + "n": "大会员", + "v": "4%2C6" + } + ] + } + ], + "7": [ + { + "key": "order", + "name": "排序", + "value": [ + { + "n": "播放数量", + "v": "2" + }, + { + "n": "更新时间", + "v": "0" + }, + { + "n": "最高评分", + "v": "4" + }, + { + "n": "弹幕数量", + "v": "1" + }, + { + "n": "追看人数", + "v": "3" + }, + { + "n": "开播时间", + "v": "5" + }, + { + "n": "上映时间", + "v": "6" + } + ] + }, + { + "key": "season_status", + "name": "付费", + "value": [ + { + "n": "全部", + "v": "-1" + }, + { + "n": "免费", + "v": "1" + }, + { + "n": "付费", + "v": "2%2C6" + }, + { + "n": "大会员", + "v": "4%2C6" + } + ] + } + ], + "3": [ + { + "key": "order", + "name": "排序", + "value": [ + { + "n": "播放数量", + "v": "2" + }, + { + "n": "更新时间", + "v": "0" + }, + { + "n": "最高评分", + "v": "4" + }, + { + "n": "弹幕数量", + "v": "1" + }, + { + "n": "追看人数", + "v": "3" + }, + { + "n": "开播时间", + "v": "5" + }, + { + "n": "上映时间", + "v": "6" + } + ] + }, + { + "key": "season_status", + "name": "付费", + "value": [ + { + "n": "全部", + "v": "-1" + }, + { + "n": "免费", + "v": "1" + }, + { + "n": "付费", + "v": "2%2C6" + }, + { + "n": "大会员", + "v": "4%2C6" + } + ] + } + ], + "1": [ + { + "key": "order", + "name": "排序", + "value": [ + { + "n": "播放数量", + "v": "2" + }, + { + "n": "更新时间", + "v": "0" + }, + { + "n": "最高评分", + "v": "4" + }, + { + "n": "弹幕数量", + "v": "1" + }, + { + "n": "追看人数", + "v": "3" + }, + { + "n": "开播时间", + "v": "5" + }, + { + "n": "上映时间", + "v": "6" + } + ] + }, + { + "key": "season_status", + "name": "付费", + "value": [ + { + "n": "全部", + "v": "-1" + }, + { + "n": "免费", + "v": "1" + }, + { + "n": "付费", + "v": "2%2C6" + }, + { + "n": "大会员", + "v": "4%2C6" + } + ] + } + ], + "4": [ + { + "key": "order", + "name": "排序", + "value": [ + { + "n": "播放数量", + "v": "2" + }, + { + "n": "更新时间", + "v": "0" + }, + { + "n": "最高评分", + "v": "4" + }, + { + "n": "弹幕数量", + "v": "1" + }, + { + "n": "追看人数", + "v": "3" + }, + { + "n": "开播时间", + "v": "5" + }, + { + "n": "上映时间", + "v": "6" + } + ] + }, + { + "key": "season_status", + "name": "付费", + "value": [ + { + "n": "全部", + "v": "-1" + }, + { + "n": "免费", + "v": "1" + }, + { + "n": "付费", + "v": "2%2C6" + }, + { + "n": "大会员", + "v": "4%2C6" + } + ] + } + ] + } +} \ No newline at end of file diff --git a/潇洒/movie/json/BSP.json b/潇洒/movie/json/BSP.json new file mode 100644 index 00000000..8eab5f85 --- /dev/null +++ b/潇洒/movie/json/BSP.json @@ -0,0 +1,60 @@ +{ + "规则名": "百思派电影网", + "请求头参数": "手机", + "网页编码格式": "UTF-8", + "图片是否需要代理": "0", + "是否开启获取首页数据": "1", + "首页推荐链接": "https://www.bestpipe.cn", + "首页列表数组规则": "body&&.stui-vodlist", + "首页片单列表数组规则": "li", + "首页片单是否Jsoup写法": "1", + "分类起始页码": "1", + "分类链接": "https://www.bestpipe.cn/vodshow/{cateId}-{area}-{by}-{class}-{lang}----{catePg}---{year}.html", + "分类名称": "电影&剧集&短剧&动漫&综艺", + "分类名称替换词": "20&21&24&22&23", + "筛选数据": "ext", + "筛选类型名称": "Netflix&剧情&科幻&动作&喜剧&爱情&冒险&儿童&歌舞&音乐&奇幻&动画&恐怖&惊悚&战争&传记&纪录&犯罪&悬疑&西部&灾难&古装&武侠&家庭&短片&校园&文艺&运动&青春&同性&励志&历史||Netflix&欧美&短剧&古装&武侠&励志&家庭&剧情&喜剧&战争&科幻&惊悚&恐怖&悬疑&犯罪&动作&冒险&历史&同性||古代&现代&穿越&玄幻&霸总&英雄救美&未婚妻&师姐&绝美&逆袭&美女&爱情&甜宠&虐恋&爽剧&搞笑&情感&动漫&萌宝&都市&言情&重生&乡村&神医&幻想&反转&复仇&修仙&古装&男频||Netflix&热血&科幻&美少女&魔幻&经典&励志&少儿&冒险&搞笑&推理&恋爱&治愈&幻想&校园&动物&机战&亲子&儿歌&运动&悬疑&怪物&战争&益智&青春&童话&竞技&动作&社会&友情&真人版&电影版&OVA版&TV版&新番动画&完结动画||Netflix&脱口秀&真人秀&选秀&八卦&访谈&情感&生活&晚会&搞笑&音乐&时尚&游戏&少儿&体育&纪实&科教&曲艺&歌舞&财经&汽车&播报&其他", + "筛选类型替换词": "*", + "筛选地区名称": "大陆&香港&台湾&美国&日本&韩国&英国&法国&德国&印度&泰国&丹麦&瑞典&巴西&加拿大&俄罗斯&意大利&比利时&爱尔兰&西班牙&澳大利亚&其它||大陆&香港&韩国&美国&日本&法国&英国&德国&台湾&泰国&印度&其他||大陆&香港&韩国&美国&日本&法国&英国&德国&台湾&泰国&印度&其他||大陆&日本&欧美&其他||大陆&韩国&香港&台湾&美国&其它", + "筛选地区替换词": "*", + "筛选语言名称": "英语&法语&国语&粤语&日语&韩语&泰语&德语&俄语&闽南语&丹麦语&波兰语&瑞典语&印地语&挪威语&意大利语&西班牙语||空||空||国语&英语&粤语&闽南语&韩语&日语&其它||国语&英语&粤语&闽南语&韩语&日语&其它", + "筛选语言替换词": "*", + "详情是否Jsoup写法": "是", + "类型详情": ".stui-content__detail&&.data,1&&Text!状态:", + "年代详情": ".stui-content__detail&&.data,4&&Text!年份:", + "地区详情": ".stui-content__detail&&.data,2&&Text!地区:", + "演员详情": ".stui-content__detail&&.data,6&&Text!主演:", + "简介详情": ".stui-content__detail&&.detail-content&&Text", + "分类截取模式": "1", + "分类列表数组规则": "body&&.stui-vodlist__box", + "分类片单是否Jsoup写法": "1", + "分类片单标题": "a&&title", + "分类片单链接": "a&&href", + "分类片单图片": ".stui-vodlist__thumb&&data-original", + "分类片单副标题": ".pic-text&&Text", + "分类片单链接加前缀": "https://www.bestpipe.cn", + "搜索请求头参数": "User-Agent$手机", + "搜索链接": "https://www.bestpipe.cn/vodsearch/{wd}----------1---.html", + "搜索截取模式": "1", + "搜索列表数组规则": "body&&.stui-vodlist__box", + "搜索片单是否Jsoup写法": "1", + "搜索片单标题": "a&&title", + "搜索片单链接": "a&&href", + "搜索片单图片": ".stui-vodlist__thumb&&data-original", + "搜索片单副标题": ".pic-text&&Text", + "搜索片单链接加前缀": "https://www.bestpipe.cn", + "线路列表数组规则": "body&&.nav-tabs&&a", + "线路标题": "Text", + "播放列表数组规则": "body&&.stui-content__playlist", + "选集列表数组规则": "a", + "选集标题链接是否Jsoup写法": "1", + "选集标题": "a&&Text", + "选集链接": "a&&href", + "是否反转选集序列": "0", + "选集链接加前缀": "https://www.bestpipe.cn", + "选集链接加后缀": "", + "分析MacPlayer": "2", + "是否开启手动嗅探": "0", + "手动嗅探视频链接关键词": ".mp4#.m3u8#.flv#video/tos", + "手动嗅探视频链接过滤词": ".html#=http" +} \ No newline at end of file diff --git a/潇洒/movie/json/CJJT.json b/潇洒/movie/json/CJJT.json new file mode 100644 index 00000000..3bfedc32 --- /dev/null +++ b/潇洒/movie/json/CJJT.json @@ -0,0 +1,141 @@ +[ + { + "name": "360资源", + "url": "https://360zy.com", + "parse_url": "", + "cate_exclude": "电影|连续剧|综艺|动漫|伦理片|体育|爽文短剧", + "class_name": "H4sIALGjdWYC/zWRa3aCMBCFd5N9tAvomhRaFHoqcKpYrUd7VEQtCD6rYGAzee6iYYi/8s0kmZl7h/fPFO+RqKa8SKgdIV7chZ0j6qzZ/ReR+4p7Frc7dYLgCVAwUQ9r4t09M9+AIp/eippY22OtAN7Zkb5l3S+S25D7xiSP6j5yNWLXFGi2UemaWBzxslcTwZ/COKCX5yfETIcZY/i8u9A84akidykWUJr2LOoeoIkR88CHYZyU4y1Qu5TjEijfUjwAmiVaD+/DxNTN2K2E/sOQTWKg8x9dBkDHTE9Hl5EcWdqfenY3ewTDUIl4BCDiYWOjtzFTy9MB/NGBuBy5ZyKe7uqDTba0a/F9gURYSXPdWI1Z0FGzw456GSkW0sT0aiDx6rPTtFGP6O2kbvimEhdHu0SKESl/VPAhcKzKgJTwKOc+a7+rDarteHJQyZYl5sk/IOiszA8CAAA=", + "class_url": "1&2&3&4&5&6&7&8&9&10&11&12&13&14&15&16&17&18&20&21&22&23&24&25&26&27&28&29&30&31&32&33&34&35&36&37&38&39&40&41&42&43&45&46&47&48&49&50&51&52&53" + }, + { + "name": "豪华资源", + "url": "https://hhzyapi.com", + "parse_url": "", + "cate_exclude": "电视剧|电影|综艺|动漫|短剧|伦理片", + "class_name": "H4sIALGjdWYC/zVPWw6CMBC8Tc/pI6D1w0eCKErCj1ofKBBjokg5DbsLt7Bdy1dnZrezMxS8WuWDVIKCF+hCYKqonluhO0X4zhglF/vg5sjskuIzt6ipTrT0SU4EzM6Nji2iaYFjj7UwNkusqRV8vhbhcImDkKdSuT2cbptSWtQ+ctBr54fVTYDvQcynjEABWzTvO+y1WzCRME578o/+J/StWlkKWOT4qdnhoLrId7L5Z0r1xLRc5D1hE0doWHe7mkOOUgpXXGaWkb5yyOPE1aLkbk78ALNMUSlMAQAA", + "class_url": "1&2&3&4&5&6&7&8&9&10&11&12&13&14&15&16&17&20&23&24&25&26&27&28&30&31&32&33&34&35&36&37&38" + }, + { + "name": "速播资源", + "url": "https://subocaiji.com", + "parse_url": "", + "cate_exclude": "电影|电视剧|动漫|综艺|短剧|伦理片", + "class_name": "H4sIALGjdWYC/zWPWw6CMBBFd9N1+ohKNVGMiBpI+FHrAyJISHiV1bQzsAuZgl/39LY9k0En0zJh6GStWGoumF4/oH4zrOqWlwzLl5ZH5CvqlfSJ0EpgvjAk9rqoiMA6q5Kbd1yMtzC1YeKazvX7erT0dhyG6qvoLsPQXQxFQ9QFTwpsthSQf6BJDZ1uJtKYQtV3tJckVPLQzr5t5qlyw1QeaU+OG/Q/wA//h1CQctwtiHrJD0Ycn8r6AAAA", + "class_url": "1&2&3&4&5&6&7&8&9&10&11&12&13&14&15&16&17&18&20&21&22&23&24&25&26&27" + }, + { + "name": "红牛资源", + "url": "https://www.hongniuzy2.com", + "parse_url": "", + "cate_exclude": "电影|连续剧|综艺|动漫|纪录片|伦理片|体育赛事|短剧", + "class_name": "H4sIALGjdWYC/y2PXQ6CMBCEb9Nz+hOVaqIYFU0g8qRV1AgSEikUL9Pu1lvorj7Nl5nNZBbXlTOF8K89NjcnlcCm9VILNz1BeyGxJkE5ES5KvjERBgUMR0xq6eqGCPoh9CK+k+qfQrCzWrIXG6sVtcPzDl3JtD2wXBV2cyK3yKHu2Ctzknd65kE6c2bDNbwJf4tte8RwTLY1Kz94+Cq2eiYwpS8+mOVyptYAAAA=", + "class_url": "1&2&3&4&5&6&7&8&9&10&11&12&13&14&15&16&17&18&19&20&21&29&30" + }, + { + "name": "新浪资源", + "url": "https://api.xinlangapi.com", + "parse_url": "", + "api": "/xinlangapi.php/provide/vod/from/xlm3u8/", + "cate_exclude": "电影|电视剧|动漫|综艺|纪录片|伦理片|体育|短剧", + "class_name": "H4sIALGjdWYC/0WOXQ6CMBCEb9Nz+hOR+qAYETUh4UWtikaQkEihPU27W24hXU18msk3m53BuLaqZBjXTgSWC2YXF+hyhm3nuGQob1Ztkc89Nyr1DsMSpjNyYm2b1jsI90ZyuuPil8I4glFCLEkHTO4o+gP1wPsJuqLGVQGNJnYXqJf/Ffgd12dXSncnkqrwYrozRoH/adTGTV4Ms8fAP2ziC/TQAAAA", + "class_url": "1&2&3&4&5&6&7&8&9&10&11&12&13&14&15&16&17&18&20&21&22&23&24" + }, + { + "name": "黑木耳资源", + "url": "https://www.heimuer.tv", + "parse_url": "", + "cate_exclude": "^电影$|^电视剧$|^综艺$|^动漫$|^短剧$", + "class_name": "H4sIALGjdWYC/0WSbXKCQAyGb8M5UQcRqgU7DFal2mllKBa/pqNjQexl2M1yi7LZpP2175PNJnkDEJ1FfbIgOqtsKLzMEv6HvH1aUN2UV1pdRA4c8Fwdb+oE1fCpneeowrG0M1Rx0qWiSl3xXWkle6G0Y4wt66bMdHV5PeijXedIsxSPfgHxFJ8MfNlfaAW9e7u4oxqdaATwD1BvUWVTatKNBVEF5GK9w3pfR3QS4CGLDO6PqOJjmxd45VyaKsbYbqxGK+w9em5KD6tXgXCuqOopVAlV7x6J/eDfD61IWwqOBNrYsuabWSqTggHHYMBJujl5zTgPQ7BR7w55UfNQ9h4IWnuo3nbs0mzNAKQrddpymjuBaE0gNpOmcjkt/1EXnyFKxP6V026lsv+ahmOxf+EbY5uammWaf8T4IzDOCeiDUxouiIGdcyZWN/ALQpTFCIwCAAA=", + "class_url": "1&2&3&4&6&7&8&9&10&11&12&13&14&15&16&20&21&22&23&24&25&26&27&28&29&30&31&32&33&34&35&36&37&38&39&40&41&42&43&44&45&46&47&48&49&50&51&52&53&54&55&56&57&58&59&60&61&62&63" + }, + { + "name": "暴风资源", + "url": "https://bfzyapi.com", + "parse_url": "", + "cate_exclude": "电影片|连续剧|综艺片|动漫片|伦理片|电影解说|体育|演员|新闻资讯", + "class_name": "H4sIALGjdWYC/zWRa3aCMBCFd5N1+kIFj1VOLdbq0Z6iBq0VrI8qGN1MMhN20WSAP8x34c7NZMDRWYkDuh2mvEiKGVEwUy63BPUh1AJLyH11y4i6B2g65HN5SdB9l6lLX9OtEm9Ew7bep5b0c47Zj3EzNRUy5ZZgx/HxYilfT+AaEy02xkC+QQK3B/nGK5jtiM5/ahkQHZPK50Vw/6ZZimTStslmlaI4qRTmpEFSiSKxEJjdtUvjqiXPJ+1Clw2VoNxKUG4pTAiOivXQQjUPdXxi+VdL+Z59LcWrbvzq81SmPaYvRxw2GcZ7KsK3BYJYx6lyegwXdllmDOVELO/0cbSAxDc3ZLh56ounbieZhQxfElN0VDM/wWysr8UOuwICc4PVEeo9qGU6rLN8vFWbD1xn5snyplDXhm75cJqbnqUOHZlN5OPzH964N6gIAgAA", + "class_url": "20&21&22&23&24&25&26&27&28&29&30&31&32&33&34&35&36&37&38&39&40&41&42&43&44&45&46&47&48&49&50&51&52&53&54&55&56&57&58&65&66&67&68&69&70&71&72" + }, + { + "name": "量子资源", + "url": "https://cj.lziapi.com", + "parse_url": "", + "cate_exclude": "电影片|连续剧|动漫片|综艺片|伦理片|电影解说|体育|演员|新闻资讯", + "class_name": "H4sIALGjdWYC/zWR607DMAyF3ybPCbuxDom1Yms3UTEJtmWI0bSMAr1kvEzspG9B46S/8h3b8XEcvSpBFjq4Y+bvWTcfEHCmm9YEtY3B4oTtuyclU6I47Yss6XmB4ykRj6BqLOFtiDcx1QXcZ3G+UXVAsSepam49uuMWfwXR7q0PW8Iz19cHSybLQa7pxjLH6krZ5IDpmaj8gX1MdMn9XdjzbjtzkzPbeZkPIjn0FoMgCy/8NPRGXzYIN4kX1G0QztsJ1R51OKMF0BoNfzXiiyn5aEafzHxfdDhmWmR0yMgeGAsjapjeM2xXEG36QN4ljSknJhNDGyfgVKgqdHnWvUwgWpDVzn7SP/ilxw64AQAA", + "class_url": "1&2&3&4&6&7&8&9&10&11&12&13&14&15&16&20&21&22&23&24&25&26&27&28&29&30&31&32&33&34&35&36&37&38&39&40&41&42&43&44&45&46" + }, + { + "name": "非凡资源", + "url": "http://cj.ffzyapi.com", + "parse_url": "", + "cate_exclude": "电影片|连续剧|动漫片|综艺片|伦理片", + "class_name": "H4sIAFhXhmYC/zWQWw6CMBBFd8M6NUakfggmChKJ/ADViFpiiPIobqadwi6kQ/k7d153ZtShlLxQZGP1v4tqHpJQSzVtT2odk9srtHdDgkdIfjQWaVJOAas1Et3LqtEESw8WPtYRarLgnERNMHbmoqbaY8hC+L6Q4tsY1gQ5Vd1OU/9kkh+xw2VQdZgNUohypPIjEx/pzUyvTOgQ2tPmlp7sslkE6WgxC7QwwmyDN5qyWUybGIHTZjF5T0K0mfJsfECsP/cHYziM500BAAA=", + "class_url": "1&2&3&4&6&7&8&9&10&11&12&13&14&15&16&20&21&22&23&24&25&26&27&28&29&30&31&32&33&34&36" + }, + { + "name": "索尼资源", + "url": "https://suoniapi.com", + "parse_url": "", + "cate_exclude": "电影|电视剧|综艺|动漫|体育赛事|预告片|影视解说|爽文短剧|伦理|港台三级|两性课堂|写真热舞", + "class_name": "H4sIAFlXhmYC/z1RbXaCMBC8TU7QW/RSip/oq8orxVp56hNoaqtFq1gFopfJZsMtGhLor93Z3czuTNBNgB0IuomkXbApwSyXdkpg8CHyrzJw5qPdI+D5ql1m2D+IVkdn1IFrVmaiORENT8/ZtOqK/itPbV2bM57Skl1sKd5GZVYsN7owjXS4xGWA8V6jow6YfgJ70VTJL4SenghpMetWR6rHiqYGimK8r4HeU2sx640i86YG5px/regaNZqqnjG7K5C74B54/kY4e5bWj0zmPB0SjL9x0iLyfCxDsW6DM9BEXizjFDpDokxWBksayPikHGTC6+FyVyri+TtOutVOfrExNeaoo01HRnfhXeuxaST8bQX4JRQNKuMbrCwC3Rn6S2ztZH9BHh7RfKzwbQhqKRAdi7UjmkP1hcrrJ8m26hRjfCiDDs9m/LYicD3xLMDNXZ4HRLYdcVoIa4ueQ3C0V52ixeBikcJKxH5s9vwBtOQp10cCAAA=", + "class_url": "1&2&3&4&6&7&8&9&10&11&12&13&14&15&16&17&18&19&20&23&25&26&27&28&29&30&31&39&44&45&47&48&49&50&51&52&53&54&55&56&57&58&59&60&61&62&63&64&65&66&67&68&69&70" + }, + { + "name": "快车资源", + "url": "https://caiji.kczyapi.com", + "parse_url": "", + "cate_exclude": "电影|电视剧|综艺|动漫|预告片|伦理|影视解说|体育赛事|港台三级|两性课堂|写真热舞", + "class_name": "H4sIAFZXhmYC/z1RbXaCMBC8TU7QW/RSip/oq8orxVp56hNoaqtFq1gFopfJZsMtGhLor93Z3czuTNBNgB0IuomkXbApwSyXdkpg8CHyrzJw5qPdI+D5ql1m2D+IVkdn1IFrVmaiORENT8/ZtOqK/itPbV2bM57Skl1sKd5GZVYsN7owjXS4xGWA8V6jow6YfgJ70VTJL4SenghpMetWR6rHiqYGimK8r4HeU2sx640i86YG5px/regaNZqqnjG7K5C74B54/kY4e5bWj0zmPB0SjL9x0iLyfCxDsW6DM9BEXizjFDpDokxWBksayPikHGTC6+FyVyri+TtOutVOfrExNeaoo01HRnfhXeuxaST8bQX4JRQNKuMbrCwC3Rn6S2ztZH9BHh7RfKzwbQhqKRAdi7UjmkP1hcrrJ8m26hRjfCiDDs9m/LYicD3xLMDNXZ4HRLYdcVoIa4ueQ3C0V52ixeBikcJKxH5s9vwBtOQp10cCAAA=", + "class_url": "1&2&3&4&6&7&8&9&10&11&12&13&14&15&16&17&18&19&20&23&25&26&27&28&29&30&31&39&44&45&47&48&49&50&51&52&53&54&55&56&57&58&59&60&61&62&63&64&65&66&67&68&69&70" + }, + { + "name": "️极速资源", + "url": "https://jszyapi.com", + "parse_url": "", + "cate_exclude": "电视剧|电影|动漫|综艺|短剧|伦理片", + "api": "/api.php/provide/vod/at/json/", + "class_name": "H4sIAGJXhmYC/zVP0W7CMBD7m3znYKIQkICKUsaoxMsgsBUooEpQmn5N7i79iyVH+hTbsXw2JaVVEUglKClBXwXmipqpF9r9Gh8XRtujf3C1Y3bM8V54ZOo9zSOSQwHjg9GZRzS64ueAtTRzJtZUDM+XR9ib40fKv1IFH46+TCU9sucC9DLkYf0nIBpAxqecQAlHmMcJNjoYXCXM8o68q78JvWorKwGzAp8Nl9UL27/ZcmOqiYAf1a6j4HEhbmFH3ORZ0RFODIR6TfvdcON+TmnMy8YX0r/ceDcMG2l7cvf+AYiMpdZZAQAA", + "class_url": "1&2&3&4&5&6&7&8&9&10&11&12&13&14&15&16&17&20&23&24&25&26&27&28&29&30&31&32&33&34&35&36&37&38" + }, + { + "name": "光速资源", + "url": "https://api.guangsuapi.com", + "parse_url": "", + "cate_exclude": "电影|电视剧|综艺|动漫|记录片|伦理片|体育赛事|短剧", + "class_name": "H4sIAFVXhmYC/y2Oaw6CMBCEb9Nz+ohINVGMiBpJ+KNW4gskJPJoT9PulltIF3/Nl5nJ7GJYGpkzDEsrPMMFw6a1vGZmcYP27kTLGPmcmSjuY0fo5zCdEYmNqRpKufh7MA5gFBH5B11zSs+iO9I6PASqFdH3Dapw1CWpk+EiDv/A/kLeOoNKUb3InNhXZuTOber2ioFHJLd28rHlSddLhsmz7/0A4RcQUdYAAAA=", + "class_url": "1&2&3&4&6&7&8&9&10&11&12&13&14&15&16&20&21&22&23&24&25&30&31" + }, + { + "name": "卧龙资源", + "url": "https://collect.wolongzy.cc", + "parse_url": "", + "cate_exclude": "电影片|连续剧|综艺片|动漫片|伦理片|电影解说|体育|短剧", + "class_name": "H4sIAFZXhmYC/1WR0VLCQAxF/6bfqXQsbB9omYEq2JEHKqtQ2iIC0nbxZ5pk+Qt303VG307uZnJvsjQ9gtqTGHr6+4WaHQjpUdNqUVsNwjdst446lTIlqWmyRKM9+g9McgKXxhLex3iXcJ+Q7hVHT10tWHtWXS2tx209x6+SafluZEuYS7qOLUFU4eXK2uMrpjnT8QxZYkkXFagZ+y53LhxNmz8GHPt3niv6Qa4w1lHV7+kCuAIyeZsHrsBD9S+ak4lvpuVKl58e+iEOFuxdnKDu80SZXvHqMA4g+uAjDHJKJhw6LEltmMqCYt/r2jXFAf/B6WAFs5Yx/QEG4wmPmwEAAA==", + "class_url": "1&2&3&4&5&6&7&8&9&10&11&12&13&14&15&16&17&18&22&23&24&25&26&27&30&31&32&33&37&38&39&42&43&44&45&46&48&49&51&54" + }, + { + "name": "天空资源", + "url": "https://m3u8.tiankongapi.com", + "parse_url": "", + "cate_exclude": "电影|连续剧|动漫|综艺|伦理片|电影解说|体育赛事|短剧", + "api": "/api.php/provide/vod/from/tkm3u8/", + "class_name": "H4sIAFdXhmYC/zVQW3LCMAy8jc/JYygknSllCqGUTPkoYAphEqCB4uD0Mrbk3KK2Yn95V9autMJpqeWJodhrOcNoyMzfJ1ZHHXEGGcf6xaFmu4Df3CEd75RMXR+OTtAfEOITfa8cgu4rdBKHbK//hdG7EhHVktSWCcU7nJIC4xzlnmpLqQSnaatvS/w0eBwYVg8TCabXvFk8eeL2GReBzDdWFAitHTTjAu41ebX+raMVQJoF0ub0pLzpdRLIpfCbWIF7kK5l+JfJf5jeDH1u7NbNR01pexkmE8ozuKqKbqHkm+mdTblU4pnhyt32H73g+qZ2AQAA", + "class_url": "1&2&3&4&5&6&7&8&9&10&11&12&20&21&22&23&24&25&26&27&28&29&30&31&32&33&34&35&36&37&38&39&40&41&42&44" + }, + { + "name": "百度云资源", + "url": "https://api.apibdzy.com", + "parse_url": "", + "cate_exclude": "电影|电视剧|综艺|动漫|伦理片|纪录片|体育赛事|资讯", + "class_name": "H4sIAFdXhmYC/zVP7W7CMAx8mzzn1vGVTgKqla4TSEgTLMAQLaBMkDZ9msRO32KNm/67O9t3Z0yl1VeGqXRiYrlgWNWOK2bjA9S/zNQ/uJwgn3rB6A2hbNMteoSzK7yNCYnEPiuP4HUJLxntcRGmMMuN4qTtRPtFOfAooLl71G6PJHzuKV+drF6RZ1ygPoVsTCvsq9pFCc+GLs4Cm7lHdvxnqoy0e0kC5YRfOucuYyCPonMYCDkML6+1USI83t8MpA8KJDpjlvhabSShXIRaRn+46Obk2qh35uTIXQrWjwKBfA75NpD2e2ST+B8HkFGOfQEAAA==", + "class_url": "1&2&3&4&5&6&7&8&9&10&11&12&13&14&15&16&17&18&20&21&22&23&24&25&26&27&28&29&30&31&32&33&34&36&37&38&39" + }, + { + "name": "无尽资源", + "url": "https://api.wujinapi.me", + "parse_url": "", + "cate_exclude": "电影|连续剧|综艺|动漫|伦理片|体育赛事|影视解说|短剧|预告片|资讯|公告|头条|港台三级|韩国伦理|西方伦理|日本伦理|两性课堂|写真热舞", + "class_name": "H4sIAFhXhmYC/zVRWVbCQBC8zZxTwxp8CnliFI2AEhzUaIIQhSxwmeklt3Ayk/xVdVe/7qqmaQrlVvB5TvkXuFJQXrCbCRhtsPgUnHb5O66ZKgNyBwL8QKtqRMMtdnoGSQ+OeY3wcoIXvtG5suni8EFlrqk9lSqT9ZLqbYaHuEYwTvB4MotPN1pgar0IvJGAcI/PL0IVbzTpmz3ZB5R3NaoW740W79cYRAalfxD6Zj6U1azfGNECrW6JXjpOWhJJvbP1a2+zru1MS4ysJU5EvmfMjDY0NaZpFFP5YWrrQRNE5aSYjMmGi7ukPkuVt+z8cPqksitB8TdNOkK3WfZZrjjeC1qYD9gj24XWVUOKKUy3qngU/Lurx6vXrk7KpGyG1MGlTDbx2OAEr8/oHxti42qIOoR4ITk+wdIR0J9RsKDOFw/nAgMXVu0JsN5Vrx5eXumP639dcxnR0ITPXQ/3c5uJgONe5St6P/Ov/t045FVP5TN1Wgq6SXSn6pRwcP4BxMt0fHACAAA=", + "class_url": "1&2&3&4&5&6&7&8&9&10&11&12&13&14&15&16&17&18&20&21&22&23&24&25&26&27&28&29&30&31&32&33&34&35&36&37&38&39&40&41&42&43&44&45&46&47&48&49&50&51&52&53&54&55&56&57&58&59" + } +] \ No newline at end of file diff --git a/潇洒/movie/json/DJwang.json b/潇洒/movie/json/DJwang.json new file mode 100644 index 00000000..1d5f5a75 --- /dev/null +++ b/潇洒/movie/json/DJwang.json @@ -0,0 +1,4 @@ +{ + "分类": "短剧$duanju#电影$dianying#电视剧$dianshiju#动漫$dongman#综艺$zongyi", + "分类url": "https://www.duanjuwang.cc/vodtype/{cateId}/page/{catePg}.html" +} \ No newline at end of file diff --git a/潇洒/movie/json/DJwu.json b/潇洒/movie/json/DJwu.json new file mode 100644 index 00000000..0a1bf24c --- /dev/null +++ b/潇洒/movie/json/DJwu.json @@ -0,0 +1,81 @@ +{ + "规则名": "短剧屋", + "规则作者": "", + "请求头参数": "手机", + "网页编码格式": "UTF-8", + "图片是否需要代理": "0", + "是否开启获取首页数据": "1", + "首页推荐链接": "http://www.metaysw.com", + "首页列表数组规则": "body&&.vod-vodlist", + "首页片单列表数组规则": "li", + "首页片单是否Jsoup写法": "1", + "分类起始页码": "1", + "分类链接": "http://www.metaysw.com/type/{cateId}-{catePg}.html", + "分类名称": "短剧", + "分类名称替换词": "lianxuju", + "筛选数据": {}, + //"筛选数据": "ext", + //{cateId} + "筛选子分类名称": "", + "筛选子分类替换词": "", + //{class} + "筛选类型名称": "", + "筛选类型替换词": "*", + //{area} + "筛选地区名称": "", + "筛选地区替换词": "*", + //{year} + "筛选年份名称": "", + "筛选年份替换词": "*", + //{lang} + "筛选语言名称": "", + "筛选语言替换词": "*", + //{by} + "筛选排序名称": "时间&人气&评分", + "筛选排序替换词": "time&hits&score", + "分类截取模式": "1", + "分类列表数组规则": ".vod-vodlist&&li", + "分类片单是否Jsoup写法": "1", + "分类片单标题": ".vod-vodlist__title&&Text", + "分类片单链接": "a&&href", + "分类片单图片": ".lazyload&&data-original", + "分类片单副标题": ".pic-text&&Text", + "分类片单链接加前缀": "http://www.metaysw.com", + "分类片单链接加后缀": "", + "搜索请求头参数": "User-Agent$手机", + "搜索链接": "http://www.metaysw.com/search/page/{SearchPg}/wd/{wd}.html", + "POST请求数据": "", + "搜索截取模式": "1", + "搜索列表数组规则": ".vod-vodlist&&li", + "搜索片单是否Jsoup写法": "1", + "搜索片单图片": ".lazyload&&data-original", + "搜索片单标题": ".vod-vodlist__title&&Text", + "搜索片单链接": "a&&href", + "搜索片单副标题": ".pic-text&&Text", + "搜索片单链接加前缀": "http://www.metaysw.com", + "搜索片单链接加后缀": "", + "链接是否直接播放": "0", + "直接播放链接加前缀": "https://live.52sf.ga/huya/", + "直接播放链接加后缀": "#isVideo=true#", + "直接播放直链视频请求头": "authority$ku.peizq.online#Referer$https://play.peizq.online", + "详情是否Jsoup写法": "1", + "类型详情": "", + "年代详情": "", + "地区详情": "", + "演员详情": ".vod-content__detail&&p,2&&Text!主演:", + "简介详情": "", + "线路列表数组规则": ".dropdown-menu&&li", + "线路标题": "a&&Text", + "播放列表数组规则": "body&&.vod-content__playlist", + "选集列表数组规则": "li", + "选集标题链接是否Jsoup写法": "1", + "选集标题": "a&&Text", + "选集链接": "a&&href", + "是否反转选集序列": "0", + "选集链接加前缀": "http://www.metaysw.com", + "选集链接加后缀": "", + "分析MacPlayer": "0", + "是否开启手动嗅探": "0", + "手动嗅探视频链接关键词": ".mp4#.m3u8#.flv#video/tos", + "手动嗅探视频链接过滤词": ".html#=http" +} \ No newline at end of file diff --git a/潇洒/movie/json/DYN.json b/潇洒/movie/json/DYN.json new file mode 100644 index 00000000..36b24cba --- /dev/null +++ b/潇洒/movie/json/DYN.json @@ -0,0 +1,71 @@ +{ + "规则名": "电影牛影院", + "规则作者": "香雅情", + "请求头参数": "手机", + "网页编码格式": "UTF-8", + "图片是否需要代理": "1", + "是否开启获取首页数据": "1", + "首页推荐链接": "https://www.dianyingn.cc", + "首页列表数组规则": "body&&.fed-list-info:has(.fed-list-remarks)", + "首页片单列表数组规则": "li", + "首页片单是否Jsoup写法": "1", + "首页片单标题": ".fed-list-title&&Text", + "首页片单链接": "a&&href", + "首页片单图片": ".fed-list-pics&&data-original", + "首页片单副标题": ".fed-list-remarks&&Text", + "首页片单链接加前缀": "https://www.dianyingn.cc", + "首页片单链接加后缀": "", + "分类起始页码": "1", + "分类链接": "https://www.dianyingn.cc/vodtype/{cateId}-{catePg}.html", + "分类名称": "电影&电视剧&综艺&动漫", + "分类名称替换词": "dianying&dianshiju&zongyi&dongman", + "筛选数据": "ext", + "筛选子分类名称": "动作片&喜剧片&爱情片&科幻片&恐怖片&剧情片&战争片&纪录片||国产剧&港台剧&日韩剧&欧美剧", + "筛选子分类替换词": "dongzuopian&xijupian&aiqingpian&kehuanpian&kongbupian&juqingpian&zhanzhengpian&jilupian||guochanju&gangtaiju&rihanju&oumeiju", + + "分类截取模式": "1", + "分类列表数组规则": "body&&.fed-list-item:has(.fed-list-remarks)", + "分类片单是否Jsoup写法": "1", + "分类片单标题": ".fed-list-title&&Text", + "分类片单链接": "a&&href", + "分类片单图片": ".fed-list-pics&&data-original", + "分类片单副标题": ".fed-list-remarks&&Text", + "分类片单链接加前缀": "https://www.dianyingn.cc", + "分类片单链接加后缀": "", + "搜索请求头参数": "手机", + "搜索链接": "https://www.dianyingn.cc/index.php/ajax/suggest.html?mid=1&wd={wd}", + "POST请求数据": "", + "搜索截取模式": "0", + "搜索列表数组规则": "list", + "搜索片单是否Jsoup写法": "1", + "搜索片单图片": "pic", + "搜索片单标题": "name", + "搜索片单链接": "id", + "搜索片单副标题": "", + "搜索片单链接加前缀": "https://www.dianyingn.cc/voddetail/", + "搜索片单链接加后缀": ".html", + "链接是否直接播放": "0", + "直接播放链接加前缀": "https://live.52sf.ga/huya/", + "直接播放链接加后缀": "#isVideo=true#", + "直接播放直链视频请求头": "authority$ku.peizq.online#Referer$https://play.peizq.online", + "详情是否Jsoup写法": "0", + "类型详情": "", + "年代详情": "", + "地区详情": "", + "演员详情": "主演:&&", + "简介详情": "简介:&&", + "线路列表数组规则": ".fed-tabs-item&&ul&&li", + "线路标题": "Text", + "播放列表数组规则": "body&&.fed-play-item", + "选集列表数组规则": ".fed-btns-info", + "选集标题链接是否Jsoup写法": "1", + "选集标题": "a&&Text", + "选集链接": "a&&href", + "是否反转选集序列": "0", + "选集链接加前缀": "https://www.dianyingn.cc", + "选集链接加后缀": "", + "分析MacPlayer": "0", + "是否开启手动嗅探": "0", + "手动嗅探视频链接关键词": ".mp4#.m3u8#.flv", + "手动嗅探视频链接过滤词": ".html#=http" +} \ No newline at end of file diff --git a/潇洒/movie/json/HJKK.json b/潇洒/movie/json/HJKK.json new file mode 100644 index 00000000..3f4819b6 --- /dev/null +++ b/潇洒/movie/json/HJKK.json @@ -0,0 +1,47 @@ +{ + "作者": "摄氏零度", + "站名": "XBPQ影视", + "请求头": "User-Agent$MOBILE_UA", + "编码": "UTF-8", + "嗅探词": ".mp4#.m3u8#.flv", + "过滤词": "", + "主页url": "https://www.hanjukankan.com/", + "首页": "120", + "起始页": "1", + "分类url": "https://www.hanjukankan.com/xvs{cateId}xat{area}xbt{by}xct{class}xdt{lang}xet{letter}xftxgtxht{catePg}atbtct{year}.html;;mrc", + "分类": "韩国剧集$1#韩国电影$2#韩国综艺$3", + "数组": "/xvd&&", + "标题": "title=\"&&\"", + "图片": "data-original=\"&&\"", + "副标题": "module-item-note\">&&", + "线路标题": ">&&", + "影片年代": ".html\">&&", + "影片地区": "*xbtxctxdtxetxftxgtxhtatbtct.html\">&&", + "影片类型": "*xdtxetxftxgtxhtatbtct.html\">&&", + "导演": "导演:&&", + "主演": "主演:&&", + "简介": "

&&

", + "倒序": "0", + "播放列表": "", + "播放标题": ">&&", + "搜索标题": "title=\"&&\"", + "搜索图片": "data-original=\"&&\"", + "搜索副标题": "module-item-note\">&&&&", + "数组": "row\">&&", + "分类url": "https://www.hainatv.net/index.php/vod/show/area/{area}/id/{cateId}/lang/{lang}/page/{catePg}/year/{year}.html", + "分类": "电影$1#电视剧$2#综艺$3#动漫$4#短剧$59" +} \ No newline at end of file diff --git a/潇洒/movie/json/HZYS.json b/潇洒/movie/json/HZYS.json new file mode 100644 index 00000000..50e6a648 --- /dev/null +++ b/潇洒/movie/json/HZYS.json @@ -0,0 +1,81 @@ +{ + "规则名": "电影盒子", + "规则作者": "", + "请求头参数": "手机", + "网页编码格式": "UTF-8", + "图片是否需要代理": "0", + "是否开启获取首页数据": "0", + "首页推荐链接": "http://80kp.com", + "首页列表数组规则": "body&&.stui-vodlist:has(h4)", + "首页片单列表数组规则": "li", + "首页片单是否Jsoup写法": "1", + "分类起始页码": "1", + "分类链接": "http://80kp.com/films/{cateId}_{catePg}.html[firstPage=http://80kp.com/films/{cateId}.html]", + "分类名称": "电影&电视剧&综艺&动漫", + "分类名称替换词": "1&2&4&3", + "筛选数据": {}, + //"筛选数据": "ext", + //{cateId} + "筛选子分类名称": "", + "筛选子分类替换词": "", + //{class} + "筛选类型名称": "", + "筛选类型替换词": "*", + //{area} + "筛选地区名称": "", + "筛选地区替换词": "*", + //{year} + "筛选年份名称": "", + "筛选年份替换词": "*", + //{lang} + "筛选语言名称": "", + "筛选语言替换词": "*", + //{by} + "筛选排序名称": "时间&人气&评分", + "筛选排序替换词": "time&hits&score", + "分类截取模式": "1", + "分类列表数组规则": ".stui-vodlist&&li", + "分类片单是否Jsoup写法": "1", + "分类片单标题": "h4&&a&&Text", + "分类片单链接": "h4&&a&&href", + "分类片单图片": ".lazyload&&data-original", + "分类片单副标题": ".pic-text&&Text", + "分类片单链接加前缀": "http://80kp.com", + "分类片单链接加后缀": "", + "搜索请求头参数": "User-Agent$手机", + "搜索链接": "http://80kp.com/search.php;post", + "POST请求数据": "searchword={wd}", + "搜索截取模式": "1", + "搜索列表数组规则": ".stui-vodlist__media&&li", + "搜索片单是否Jsoup写法": "1", + "搜索片单图片": ".lazyload&&data-original", + "搜索片单标题": "h3&&a&&Text", + "搜索片单链接": "h3&&a&&href", + "搜索片单副标题": ".pic-text&&Text", + "搜索片单链接加前缀": "http://80kp.com", + "搜索片单链接加后缀": "", + "链接是否直接播放": "0", + "直接播放链接加前缀": "", + "直接播放链接加后缀": "", + "直接播放直链视频请求头": "", + "详情是否Jsoup写法": "0", + "类型详情": "类型:&&", + "年代详情": "年份:&&", + "地区详情": "地区:&&", + "演员详情": "主演:&&

", + "简介详情": "简介:&&

", + "线路列表数组规则": ".nav-tabs&&li", + "线路标题": "Text", + "播放列表数组规则": "body&&.stui-content__playlist", + "选集列表数组规则": "li", + "选集标题链接是否Jsoup写法": "1", + "选集标题": "a&&Text", + "选集链接": "a&&href", + "是否反转选集序列": "0", + "选集链接加前缀": "http://80kp.com", + "选集链接加后缀": "", + "分析MacPlayer": "0", + "是否开启手动嗅探": "1", + "手动嗅探视频链接关键词": ".mp4#.m3u8#.flv#video/tos#obj/tos-#pt=m3u8#mime_type=video_mp4#x-oss-signature=", + "手动嗅探视频链接过滤词": ".html#=http" +} \ No newline at end of file diff --git a/潇洒/movie/json/JBYS.json b/潇洒/movie/json/JBYS.json new file mode 100644 index 00000000..b0d37d96 --- /dev/null +++ b/潇洒/movie/json/JBYS.json @@ -0,0 +1,82 @@ +{ + "规则名": "九八剧", + "规则作者": "香雅情", + "请求头参数": "User-Agent$手机#Referer$http://www.98wap.com/", + "网页编码格式": "UTF-8", + "图片是否需要代理": "0", + "是否开启获取首页数据": "1", + //首页推荐数据获取链接 + "首页推荐链接": "http://www.98wap.com", + //首页推荐列表数组截取。 + "首页列表数组规则": "body&&.stui-vodlist:has(h4)", + //首页推荐片单列表数组定位。 + "首页片单列表数组规则": "li", + //首页推荐片单信息jsoup与正则截取写法切换,只作用于html网页,1为jsoup写法(默认),0为正则截取写法 + "首页片单是否Jsoup写法":"1", + //首页片单标题 + "首页片单标题": "h4&&a&&Text", + //首页推荐片单链接 + "首页片单链接": "h4&&a&&href", + //首页推荐片单图片,支持自定义图片链接 + "首页片单图片": ".lazyload&&data-original", + //首页推荐片单副标题 + "首页片单副标题":".pic-text&&Text", + //首页推荐片单链接补前缀 + "首页片单链接加前缀": "http://www.98wap.com", + //首页推荐片单链接补后缀 + "首页片单链接加后缀": "", + + "分类起始页码": "1", + "分类链接": "http://www.98wap.com/{cateId}/index{catePg}.html[firstPage=http://www.98wap.com/{cateId}/index.html]", + "分类名称": "电影&电视剧&综艺&动漫", + "分类名称替换词": "dianyingpian&dianshiju&zongyi&dongman", + "筛选数据": "ext", + //{cateId} + "筛选子分类名称": "动作片&爱情片&科幻片&恐怖片&战争片&喜剧片&纪录片&剧情片||国产剧&港台剧&欧美剧&日韩剧&短剧", + "筛选子分类替换词": "dongzuopian&aiqingpian&kehuanpian&kongbupian&zhanzhengpian&xijupian&jilupian&juqingpian||guocanju&gangtaiju&oumeiju&rihanju&duanju", + "分类截取模式": "1", + "分类列表数组规则": ".stui-vodlist&&li", + "分类片单是否Jsoup写法": "1", + "分类片单标题": "h4&&a&&Text", + "分类片单链接": "h4&&a&&href", + "分类片单图片": ".lazyload&&data-original", + "分类片单副标题": ".pic-text&&Text", + "分类片单链接加前缀": "http://www.98wap.com", + "分类片单链接加后缀": "", + "搜索请求头参数": "User-Agent$手机#Referer$http://www.98wap.com/", + "搜索链接": "http://www.98wap.com/search.php;post", + "POST请求数据": "searchword={wd}", + "搜索截取模式": "1", + "搜索列表数组规则": ".stui-vodlist__media&&li", + "搜索片单是否Jsoup写法": "1", + "搜索片单图片": ".lazyload&&data-original", + "搜索片单标题": "h3&&a&&Text", + "搜索片单链接": "h3&&a&&href", + "搜索片单副标题": ".pic-text&&Text", + "搜索片单链接加前缀": "http://www.98wap.com", + "搜索片单链接加后缀": "", + "链接是否直接播放": "0", + "直接播放链接加前缀": "https://live.52sf.ga/huya/", + "直接播放链接加后缀": "#isVideo=true#", + "直接播放直链视频请求头": "authority$ku.peizq.online#Referer$https://play.peizq.online", + "详情是否Jsoup写法": "0", + "类型详情": "类型:&&&&

", + "简介详情": "简介:&&

", + "线路列表数组规则": "body&&#playlist", + "线路标题": "h3&&Text", + "播放列表数组规则": "body&&.stui-content__playlist", + "选集列表数组规则": "li", + "选集标题链接是否Jsoup写法": "1", + "选集标题": "a&&Text", + "选集链接": "a&&href", + "是否反转选集序列": "0", + "选集链接加前缀": "http://www.98wap.com", + "选集链接加后缀": "", + "分析MacPlayer": "0", + "是否开启手动嗅探": "1", + "手动嗅探视频链接关键词": ".mp4#.m3u8#.flv#video/tos#obj/tos-#pt=m3u8#mime_type=video", + "手动嗅探视频链接过滤词": ".html#=http" +} \ No newline at end of file diff --git a/潇洒/movie/json/JJDJ.json b/潇洒/movie/json/JJDJ.json new file mode 100644 index 00000000..c3420937 --- /dev/null +++ b/潇洒/movie/json/JJDJ.json @@ -0,0 +1,4 @@ +{ + "分类": "短剧$1#电视剧$2", + "分类url": "https://www.jjduanju.com/sort/{cateId}/page/{catePg}.html" +} \ No newline at end of file diff --git a/潇洒/movie/json/JQYS.json b/潇洒/movie/json/JQYS.json new file mode 100644 index 00000000..a5a6bbca --- /dev/null +++ b/潇洒/movie/json/JQYS.json @@ -0,0 +1,82 @@ +{ + "规则名": "剧圈圈", + "规则作者": "香雅情", + "OCR_API":"https://api.nn.ci/ocr/b64/text", + "请求头参数": "MOBILE_UA", + "网页编码格式": "UTF-8", + "图片是否需要代理": "否", + "是否开启获取首页数据": "1", + "首页推荐链接": "https://www.jqqzx.me", + "首页列表数组规则": "body&&.module-main.tab-list.active", + "首页片单列表数组规则": ".module-item", + "首页片单是否Jsoup写法": "1", + "分类起始页码": "1", + "分类链接": "https://www.jqqzx.me/vodshow/id/{cateId}/page/{catePg}.html", + "分类名称": "电影&电视剧&综艺&动漫&纪录片&爽剧", + "分类名称替换词": "dianying&juji&zongyi&dongman&jilupian&shuangju", + "筛选数据": {}, + //"筛选数据": "ext", + //{cateId} + "筛选子分类名称": "", + "筛选子分类替换词": "", + //{class} + "筛选类型名称": "", + "筛选类型替换词": "*", + //{area} + "筛选地区名称": "", + "筛选地区替换词": "*", + //{year} + "筛选年份名称": "", + "筛选年份替换词": "*", + //{lang} + "筛选语言名称": "", + "筛选语言替换词": "*", + //{by} + "筛选排序名称": "时间&人气&评分", + "筛选排序替换词": "time&hits&score", + "分类截取模式": "1", + "分类列表数组规则": ".module-items&&.module-item", + "分类片单是否Jsoup写法": "是", + "分类片单标题": ".module-poster-item-title&&Text", + "分类片单链接": "a&&href", + "分类片单图片": ".lazyload&&data-original", + "分类片单副标题": ".module-item-note&&Text", + "分类片单链接加前缀": "https://www.jqqzx.me", + "分类片单链接加后缀": "", + "搜索请求头参数": "User-Agent$MOBILE_UA", + "搜索链接": "https://www.jqqzx.me/vodsearch{wd}/page/{SearchPg}.html", + "POST请求数据": "", + "搜索截取模式": "1", + "搜索列表数组规则": ".module-items&&.module-item", + "搜索片单是否Jsoup写法": "是", + "搜索片单图片": ".lazyload&&data-original", + "搜索片单标题": ".module-card-item-title&&Text", + "搜索片单链接": "a&&href", + "搜索片单副标题": ".module-item-note&&Text", + "搜索片单链接加前缀": "https://www.jqqzx.me", + "搜索片单链接加后缀": "", + "链接是否直接播放": "否", + "直接播放链接加前缀": "", + "直接播放链接加后缀": "", + "直接播放直链视频请求头": "", + "详情是否Jsoup写法": "是", + "类型详情": "", + "年代详情": ".module-info-content&&.module-info-item,3&&Text", + "地区详情": "", + "演员详情": ".module-info-content&&.module-info-item,2&&Text", + "简介详情": ".module-info-content&&.module-info-item&&Text", + "线路列表数组规则": ".module-tab-items-box&&.module-tab-item", + "线路标题": "Text", + "播放列表数组规则": "body&&.module-play-list-content", + "选集列表数组规则": "a", + "选集标题链接是否Jsoup写法": "是", + "选集标题": "a&&Text", + "选集链接": "a&&href", + "是否反转选集序列": "否", + "选集链接加前缀": "https://www.jqqzx.me", + "选集链接加后缀": "", + "分析MacPlayer": "否", + "是否开启手动嗅探": "否", + "手动嗅探视频链接关键词": ".mp4#.m3u8#.flv#video/tos", + "手动嗅探视频链接过滤词": ".html#=http" +} \ No newline at end of file diff --git a/潇洒/movie/json/KKYS.json b/潇洒/movie/json/KKYS.json new file mode 100644 index 00000000..5d7c98f3 --- /dev/null +++ b/潇洒/movie/json/KKYS.json @@ -0,0 +1,8 @@ +{ + "简介": "detail-content\" style=*>&&", + "数组": "stui-vodlist__box\">&&", + "副标题": "pic-text text-right\">&&", + "播放列表": "", + "分类url": "https://www.kmxibanyayu.com/vs/{cateId}-{area}--{class}-----{catePg}---{year}.html", + "分类": "短剧$duanju#电视剧$dianshiju#电影$dianying#动漫$dongman#综艺$zongyi" +} \ No newline at end of file diff --git a/潇洒/movie/json/KYKYS.json b/潇洒/movie/json/KYKYS.json new file mode 100644 index 00000000..e735ce44 --- /dev/null +++ b/潇洒/movie/json/KYKYS.json @@ -0,0 +1,81 @@ +{ + "规则名": "看一看", + "规则作者": "", + "请求头参数": "User-Agent$手机#Referer$https://www.kykhd.cc/", + "网页编码格式": "UTF-8", + "图片是否需要代理": "0", + "是否开启获取首页数据": "1", + "首页推荐链接": "https://www.kykhd.cc", + "首页列表数组规则": "body&&.index-area", + "首页片单列表数组规则": "ul&&li", + "首页片单是否Jsoup写法": "1", + "分类起始页码": "1", + "分类链接": "https://www.kykhd.cc/index.php?m=vod-list-id-{cateId}-pg-{catePg}-order--by-{by}-class-0-year-0-letter--area-{area}-lang-.html", + "分类名称": "电影&电视剧&综艺&动漫", + "分类名称替换词": "1&2&3&4", + //"筛选数据": {}, + "筛选数据": "ext", + //{cateId} + "筛选子分类名称": "动作片&喜剧片&爱情片&科幻片&恐怖片&剧情片&战争片&纪录片&微电影&惊悚片&悬疑片||国产剧&港台剧&日韩剧&欧美剧&泰剧&海外剧||TV综艺&音乐MV||TV版&电影版&剧场版&国语经典", + "筛选子分类替换词": "5&6&7&8&9&10&11&16&18&20&21||12&13&14&15&19&32||26&31||23&24&25&36", + //{class} + "筛选类型名称": "", + "筛选类型替换词": "*", + //{area} + "筛选地区名称": "大陆&香港&台湾&美国&韩国&日本&泰国&新加坡&马来西亚&印度&英国&法国&加拿大&西班牙&俄罗斯&其它", + "筛选地区替换词": "*", + //{year} + "筛选年份名称": "", + "筛选年份替换词": "*", + //{lang} + "筛选语言名称": "", + "筛选语言替换词": "*", + //{by} + "筛选排序名称": "时间&人气&评分", + "筛选排序替换词": "time&hits&score", + "分类截取模式": "1", + "分类列表数组规则": ".index-area&&li", + "分类片单是否Jsoup写法": "1", + "分类片单标题": "a&&title", + "分类片单链接": "a&&href", + "分类片单图片": "img&&data-original", + "分类片单副标题": ".other&&Text", + "分类片单链接加前缀": "https://www.kykhd.cc", + "分类片单链接加后缀": "", + "搜索请求头参数": "User-Agent$手机#Referer$https://www.kykhd.cc/", + "搜索链接": "https://www.kykhd.cc/index.php?m=vod-search-pg-1-wd-{wd}.html", + "POST请求数据": "", + "搜索截取模式": "1", + "搜索列表数组规则": ".index-area&&li", + "搜索片单是否Jsoup写法": "1", + "搜索片单图片": "img&&data-original", + "搜索片单标题": "a&&title", + "搜索片单链接": "a&&href", + "搜索片单副标题": ".other&&Text", + "搜索片单链接加前缀": "https://www.kykhd.cc", + "搜索片单链接加后缀": "", + "链接是否直接播放": "0", + "直接播放链接加前缀": "", + "直接播放链接加后缀": "", + "直接播放直链视频请求头": "", + "详情是否Jsoup写法": "1", + "类型详情": "", + "年代详情": "", + "地区详情": "", + "演员详情": "", + "简介详情": ".ct-c&&.js&&Text", + "线路列表数组规则": ".playfrom&&li", + "线路标题": "Text", + "播放列表数组规则": "body&&.playlist", + "选集列表数组规则": "ul&&li", + "选集标题链接是否Jsoup写法": "1", + "选集标题": "a&&Text", + "选集链接": "a&&href", + "是否反转选集序列": "0", + "选集链接加前缀": "https://www.kykhd.cc", + "选集链接加后缀": "", + "分析MacPlayer": "0", + "是否开启手动嗅探": "0", + "手动嗅探视频链接关键词": ".mp4#.m3u8#.flv#video/tos", + "手动嗅探视频链接过滤词": ".html#=http" +} \ No newline at end of file diff --git a/潇洒/movie/json/LKYS.json b/潇洒/movie/json/LKYS.json new file mode 100644 index 00000000..e4c55c64 --- /dev/null +++ b/潇洒/movie/json/LKYS.json @@ -0,0 +1,86 @@ +{ + "规则名": "来看点播", + "规则作者": "", + "请求头参数": "User-Agent$PC_UA#accept$text/html", + "网页编码格式": "UTF-8", + "图片是否需要代理": "0", + "是否开启获取首页数据": "1", + "首页推荐链接": "https://lkvod.org", + "首页列表数组规则": "body&&.fadeInUp:has(.gen-movie-img)", + "首页片单列表数组规则": ".public-list-box", + "首页片单是否Jsoup写法": "1", + "首页片单标题": "a&&title", + "首页片单链接": "a&&href", + "首页片单图片": ".lazy&&data-src", + "首页片单副标题": ".public-list-subtitle&&Text", + "首页片单链接加前缀": "https://lkvod.org", + "首页片单链接加后缀": "", + "分类起始页码": "1", + "分类链接": "https://lkvod.org/show/{cateId}--------{catePg}---.html", + "分类名称": "电影&剧集&综艺&动漫", + "分类名称替换词": "1&2&3&4", + "筛选数据": "ext", + //{cateId} + "筛选子分类名称": "", + "筛选子分类替换词": "", + //{class} + "筛选类型名称": "", + "筛选类型替换词": "*", + //{area} + "筛选地区名称": "", + "筛选地区替换词": "*", + //{year} + "筛选年份名称": "", + "筛选年份替换词": "*", + //{lang} + "筛选语言名称": "", + "筛选语言替换词": "*", + //{by} + "筛选排序名称": "最新&最热&评分", + "筛选排序替换词": "time&hits&score", + "分类截取模式": "1", + "分类列表数组规则": ".fadeInUp:has(.gen-movie-img)&&.public-list-box", + "分类片单是否Jsoup写法": "1", + "分类片单标题": "a&&title", + "分类片单链接": "a&&href", + "分类片单图片": ".lazy&&data-src", + "分类片单副标题": ".public-list-subtitle&&Text", + "分类片单链接加前缀": "https://lkvod.org", + "分类片单链接加后缀": "", + "搜索请求头参数": "User-Agent$PC_UA#accept$text/html", + "搜索链接": "https://lkvod.org/index.php/ajax/suggest?mid=1&wd={wd}&limit=10", + "POST请求数据": "wd={wd}", + "搜索截取模式": "0", + "搜索列表数组规则": "list", + "搜索片单是否Jsoup写法": "1", + "搜索片单图片": "pic", + "搜索片单标题": "name", + "搜索片单链接": "id", + "搜索片单副标题": "", + "搜索片单链接加前缀": "https://lkvod.org/voddetail/", + "搜索片单链接加后缀": ".html", + "链接是否直接播放": "0", + "直接播放链接加前缀": "", + "直接播放链接加后缀": "#isVideo=true#", + "直接播放直链视频请求头": "", + "详情是否Jsoup写法": "1", + "类型详情": "", + "年代详情": "", + "地区详情": "", + "演员详情": ".detail-info&&.slide-info,3&&Text!演员 :", + "简介详情": "#height_limit&&Text", + "线路列表数组规则": ".anthology-tab&&a", + "线路标题": "Text[排序:玉米]", + "播放列表数组规则": "body&&.anthology-list-play", + "选集列表数组规则": "li", + "选集标题链接是否Jsoup写法": "1", + "选集标题": "a&&Text", + "选集链接": "a&&href", + "是否反转选集序列": "0", + "选集链接加前缀": "https://lkvod.org", + "选集链接加后缀": "", + "分析MacPlayer": "0", + "是否开启手动嗅探": "1", + "手动嗅探视频链接关键词": ".mp4#.m3u8#.flv#obj/tos#video/tos#mime_type=video_mp4#x-oss-signature=", + "手动嗅探视频链接过滤词": ".html#=http#=https" +} \ No newline at end of file diff --git a/潇洒/movie/json/LLYS.json b/潇洒/movie/json/LLYS.json new file mode 100644 index 00000000..f6ebcb20 --- /dev/null +++ b/潇洒/movie/json/LLYS.json @@ -0,0 +1,17 @@ +{ + "首页": "0", + "播放链接前缀": "https://www.gyf.lol", + "数组": "public-list-box&&", + "图片": "data-src=\"&&\"", + "标题": "title=\"&&\"", + "副标题": "class=\"public-prt hide ol2\">&&", + "链接": "href=\"&&\"", + "线路数组": "swiper-slide&&", + "线路标题": "
&&", + "播放列表": "", + "播放标题": "html\">&&", + "播放链接": "href=\"&&\"", + "分类url": "https://www.gyf.lol/index.php/vod/show/area/{area}/by/{by}/class/{class}/id/{cateId}/lang/{lang}/page/{catePg}/year/{year}.html", + "分类": "电影$1#剧集$2#综艺$3#动漫$4#短剧$21#少儿$22" +} \ No newline at end of file diff --git a/潇洒/movie/json/MBYS.json b/潇洒/movie/json/MBYS.json new file mode 100644 index 00000000..d9433726 --- /dev/null +++ b/潇洒/movie/json/MBYS.json @@ -0,0 +1,7 @@ +{ + "请求头": "User-Agent$MOBILE_UA", + "编码": "UTF-8", + "分类url": "https://v.aiwule.com/vodshow/{cateId}-{area}-{by}-{class}-{lang}-{letter}---{catePg}---{year}.html", + "分类": "电影$20#电视剧$21#动漫$23#综艺$22#短剧$47", + "简介": "简介:&&" +} \ No newline at end of file diff --git a/潇洒/movie/json/NMYS.json b/潇洒/movie/json/NMYS.json new file mode 100644 index 00000000..32f2acb9 --- /dev/null +++ b/潇洒/movie/json/NMYS.json @@ -0,0 +1,71 @@ +{ + "规则名": "农民影视", + "规则作者": "香雅情", + "请求头参数": "User-Agent$手机#accept$text/html#Referer$https://vip.wwgz.cn:5200/", + "网页编码格式": "UTF-8", + "图片是否需要代理": "0", + "是否开启获取首页数据": "1", + "首页推荐链接": "https://vip.wwgz.cn:5200/", + "首页列表数组规则": "body&&.globalPicList", + "首页片单列表数组规则": "li:has(img)", + "首页片单是否Jsoup写法": "1", + "首页片单标题": ".sTit&&Text", + "首页片单链接": "a&&href", + "首页片单图片": "img&&data-echo||data-src||src", + "首页片单副标题": ".sBottom&&Text", + "首页片单链接加前缀": "https://vip.wwgz.cn:5200/", + "首页片单链接加后缀": "", + "分类起始页码": "1", + "分类链接": "https://vip.wwgz.cn:5200/vod-list-id-{cateId}-pg-{catePg}-order--by-{by}-class--year-{year}-letter--area-{area}-lang-.html", + "分类名称": "电影&电视剧&综艺&动漫&短剧", + "分类名称替换词": "1&2&3&4&26", + "筛选数据": "ext", + "筛选子分类名称": "动作片&喜剧片&爱情片&科幻片&恐怖片&剧情片&战争片&惊悚片&奇幻片||国产剧&港台泰&日韩剧&欧美剧||空||动漫剧&动漫片", + "筛选子分类替换词": "5&6&7&8&9&10&11&16&17||12&13&14&15||空||18&19", + "筛选地区名称": "大陆&香港&台湾&美国&韩国&日本&泰国&新加坡&马来西亚&印度&英国&法国&加拿大&西班牙&俄罗斯&其它", + "筛选地区替换词": "*", + "分类截取模式": "1", + "分类列表数组规则": ".globalPicList&&li", + "分类片单是否Jsoup写法": "1", + "分类片单标题": ".sTit&&Text", + "分类片单链接": "a&&href", + "分类片单图片": "img&&data-echo||data-src||src", + "分类片单副标题": ".sBottom&&Text", + "分类片单链接加前缀": "https://vip.wwgz.cn:5200/", + "分类片单链接加后缀": "", + "搜索请求头参数": "User-Agent$手机#Referer$https://vip.wwgz.cn:5200/", + "search_url": "https://vip.wwgz.cn:5200/index.php?m=vod-search;post", + "sea_PtBody": "wd={wd}", + "search_mode": "1", + "sea_arr_rule": "#data_list&&li", + "sea_is_jsoup": "1", + "sea_pic": ".lazyload&&data-src", + "sea_title": ".sTit&&Text", + "sea_url": "a&&href", + "搜索片单副标题": ".sDes,-1&&Text", + "搜索片单链接加前缀": "https://vip.wwgz.cn:5200/", + "搜索片单链接加后缀": "", + "链接是否直接播放": "0", + "直接播放链接加前缀": "https://live.52sf.ga/huya/", + "直接播放链接加后缀": "#isVideo=true#", + "直接播放直链视频请求头": "authority$ku.peizq.online#Referer$https://play.peizq.online", + "详情是否Jsoup写法": "1", + "类型详情": ".type-title&&Text", + "年代详情": "body&&span:contains(年代:)&&Text!年代:", + "地区详情": "", + "演员详情": "body&&.sDes:contains(主演:)&&Text!主演:", + "简介详情": ".detail-con&&p&&Text!简介:", + "线路列表数组规则": "#leftTabBox&&ul&&li", + "播放列表数组规则": "#leftTabBox&&.numList", + "选集列表数组规则": "li", + "选集标题链接是否Jsoup写法": "1", + "选集标题": "a&&Text", + "选集链接": "a&&href", + "是否反转选集序列": "1", + "选集链接加前缀": "https://vip.wwgz.cn:5200/", + "选集链接加后缀": "", + "分析MacPlayer": "0", + "是否开启手动嗅探": "1", + "手动嗅探视频链接关键词": ".mp4#.m3u8#item/video#video_mp4#video/tos", + "手动嗅探视频链接过滤词": ".html#=http" +} \ No newline at end of file diff --git a/潇洒/movie/json/PPX.json b/潇洒/movie/json/PPX.json new file mode 100644 index 00000000..8735b915 --- /dev/null +++ b/潇洒/movie/json/PPX.json @@ -0,0 +1,6 @@ +{ + "首页": "0", + "线路标题": "module-tab-value\">&&", + "分类url": "http://www.ppxys.vip/s/{cateId}/area/{area}/by/{by}/class/{class}/lang/{lang}/letter/{letter}/page/{catePg}/year/{year}.html", + "分类": "剧集$1#电影$2#动漫番剧$3" +} \ No newline at end of file diff --git a/潇洒/movie/json/QDYS.json b/潇洒/movie/json/QDYS.json new file mode 100644 index 00000000..f0bf6298 --- /dev/null +++ b/潇洒/movie/json/QDYS.json @@ -0,0 +1,7 @@ +{ + "简介": "+pt-10 pb-10\" style=*>&&

", + "图片": "data-original=\"&&\"[替换:amp;>>空]", + "线路数组": "#ewave-playlist-&&", + "分类url": "https://www.7.movie/vodshow/{cateId}-{area}--{class}-----{catePg}---{year}.html", + "分类": "短剧$24#电视剧$21#电影$20#动漫$22#综艺$23" +} \ No newline at end of file diff --git a/潇洒/movie/json/QQYS.json b/潇洒/movie/json/QQYS.json new file mode 100644 index 00000000..89036cc9 --- /dev/null +++ b/潇洒/movie/json/QQYS.json @@ -0,0 +1,5 @@ +{ + "简介": "detail-content\" style=*>&&", + "分类url": "https://www.sheyit.com/show/{cateId}-{area}--{class}-----{catePg}---{year}.html", + "分类": "短剧$33#电视剧$2#电影$1#动漫$4#综艺$3" +} \ No newline at end of file diff --git a/潇洒/movie/json/QXYS.json b/潇洒/movie/json/QXYS.json new file mode 100644 index 00000000..45855e95 --- /dev/null +++ b/潇洒/movie/json/QXYS.json @@ -0,0 +1,81 @@ +{ + "规则名": "七新影视", + "规则作者": "", + "请求头参数": "手机", + "网页编码格式": "UTF-8", + "图片是否需要代理": "0", + "是否开启获取首页数据": "1", + "首页推荐链接": "http://www.7xdy.com", + "首页列表数组规则": "body&&.stui-vodlist:has(h4)", + "首页片单列表数组规则": "li", + "首页片单是否Jsoup写法": "1", + "分类起始页码": "1", + "分类链接": "http://www.7xdy.com/{cateId}/index{catePg}.html[firstPage=http://www.7xdy.com/{cateId}/index.html]", + "分类名称": "电影&电视剧&综艺&动漫", + "分类名称替换词": "dianyingpian&dianshiju&zongyi&dongman", + //"筛选数据": {}, + "筛选数据": "ext", + //{cateId} + "筛选子分类名称": "动作片&爱情片&科幻片&恐怖片&战争片&喜剧片&一直播&剧情片||国产剧&港台剧&欧美剧&日韩剧", + "筛选子分类替换词": "dongzuopian&aiqingpian&kehuanpian&kongbupian&zhanzhengpian&xijupian&jilupian&juqingpian||guocanju&gangtaiju&oumeiju&rihanju", + //{class} + "筛选类型名称": "", + "筛选类型替换词": "*", + //{area} + "筛选地区名称": "", + "筛选地区替换词": "*", + //{year} + "筛选年份名称": "", + "筛选年份替换词": "*", + //{lang} + "筛选语言名称": "", + "筛选语言替换词": "*", + //{by} + "筛选排序名称": "时间&人气&评分", + "筛选排序替换词": "time&hits&score", + "分类截取模式": "1", + "分类列表数组规则": ".stui-vodlist&&li", + "分类片单是否Jsoup写法": "1", + "分类片单标题": "h4&&a&&Text", + "分类片单链接": "h4&&a&&href", + "分类片单图片": ".lazyload&&data-original", + "分类片单副标题": ".pic-text&&Text", + "分类片单链接加前缀": "http://www.7xdy.com", + "分类片单链接加后缀": "", + "搜索请求头参数": "User-Agent$手机", + "搜索链接": "http://www.7xdy.com/search.php?page=1&searchword={wd}&searchtype=", + "POST请求数据": "searchword={wd}", + "搜索截取模式": "1", + "搜索列表数组规则": ".stui-vodlist__media&&li", + "搜索片单是否Jsoup写法": "1", + "搜索片单图片": ".lazyload&&data-original", + "搜索片单标题": "h3&&a&&Text", + "搜索片单链接": "h3&&a&&href", + "搜索片单副标题": ".pic-text&&Text", + "搜索片单链接加前缀": "http://www.7xdy.com", + "搜索片单链接加后缀": "", + "链接是否直接播放": "0", + "直接播放链接加前缀": "", + "直接播放链接加后缀": "", + "直接播放直链视频请求头": "", + "详情是否Jsoup写法": "0", + "类型详情": "类型:&&", + "年代详情": "年份:&&", + "地区详情": "地区:&&", + "演员详情": "主演:&&

", + "简介详情": "简介:&&

", + "线路列表数组规则": "body&&#playlist", + "线路标题": "h3&&Text", + "播放列表数组规则": "body&&.stui-content__playlist", + "选集列表数组规则": "li", + "选集标题链接是否Jsoup写法": "1", + "选集标题": "a&&Text", + "选集链接": "a&&href", + "是否反转选集序列": "1", + "选集链接加前缀": "http://www.7xdy.com", + "选集链接加后缀": "", + "分析MacPlayer": "0", + "是否开启手动嗅探": "1", + "手动嗅探视频链接关键词": ".mp4#.m3u8#.flv#video/tos#pt=m3u8#obj/tos-#video/tos#mime_type=video#x-oss-signature=", + "手动嗅探视频链接过滤词": ".html#=http" +} \ No newline at end of file diff --git a/潇洒/movie/json/SHYS.json b/潇洒/movie/json/SHYS.json new file mode 100644 index 00000000..88d14d53 --- /dev/null +++ b/潇洒/movie/json/SHYS.json @@ -0,0 +1,6 @@ +{ + "简介": "p_txt show_part\">&&

", + "副标题": "v_note\">&&", + "分类url": "https://saohuody.com/list/{cateId}-{catePg}.html;;d1", + "分类": "国产剧$12#港剧$13#台剧$14#日剧$15#韩剧$16#美剧$17#海外$18#泰剧$19#动作$5#喜剧$6#爱情$7#科幻$8#恐怖$9#剧情$10#战争$11#动画$33" +} \ No newline at end of file diff --git a/潇洒/movie/json/SJYS.json b/潇洒/movie/json/SJYS.json new file mode 100644 index 00000000..d6846452 --- /dev/null +++ b/潇洒/movie/json/SJYS.json @@ -0,0 +1,5 @@ +{ + "简介": "+detail-content\" style=*>&&", + "分类url": "https://www.539539.xyz/index.php/vod/show/area/{area}/class/{class}/id/{cateId}/page/{catePg}/year/{year}.html", + "分类": "短剧$25#电视剧$2#电影$1#动漫$4#综艺$3" +} \ No newline at end of file diff --git a/潇洒/movie/json/SSYS.json b/潇洒/movie/json/SSYS.json new file mode 100644 index 00000000..ebc8d962 --- /dev/null +++ b/潇洒/movie/json/SSYS.json @@ -0,0 +1,5 @@ +{ + "简介": "+col-pd\">&&

", + "分类url": "https://ikan234.com/show/{cateId}-{area}--{class}-----{catePg}---{year}.html", + "分类": "短剧$5#电视剧$2#电影$1#动漫$4#综艺$3" +} \ No newline at end of file diff --git a/潇洒/movie/json/XCYS.json b/潇洒/movie/json/XCYS.json new file mode 100644 index 00000000..5db827a5 --- /dev/null +++ b/潇洒/movie/json/XCYS.json @@ -0,0 +1,74 @@ +{ + "规则名": " 星辰影院", + "规则作者": "香雅情", + "请求头参数": "User-Agent$手机#Cookie$tcpvsd=1686288471101", + "网页编码格式": "UTF-8", + "图片是否需要代理": "0", + "是否开启获取首页数据": "是", + "首页推荐链接": "http://www.40yb.com", + "首页列表数组规则": "body&&.stui-vodlist:has(h4)", + "首页片单列表数组规则": "li", + "首页片单是否Jsoup写法": "1", + "分类起始页码": "1", + "分类链接": "http://www.40yb.com/{cateId}/index{catePg}.html[firstPage=http://www.40yb.com/{cateId}/index.html]", + "分类名称": "电影&电视剧&综艺&动漫", + "分类名称替换词": "dianying&dianshiju&zongyi&dongman", + "筛选数据": "ext", + "筛选子分类名称": "动作片&爱情片&科幻片&恐怖片&喜剧片&剧情片&在线直播||国产剧&港台剧&欧美剧&日韩剧", + "筛选子分类替换词": "dongzuopian&aiqingpian&kehuanpian&kongbupian&xijupian&juqingpian&zaixianzhibo||guochanju&tangtaiju&oumeiju&rihanju", + "筛选类型名称": "", + "筛选类型替换词": "*", + "筛选地区名称": "", + "筛选地区替换词": "*", + "筛选年份名称": "", + "筛选年份替换词": "*", + "筛选语言名称": "", + "筛选语言替换词": "*", + "筛选排序名称": "", + "筛选排序替换词": "", + "分类截取模式": "1", + "分类列表数组规则": ".stui-vodlist&&li", + "分类片单是否Jsoup写法": "1", + "分类片单标题": "h4&&a&&Text", + "分类片单链接": "h4&&a&&href", + "分类片单图片": ".lazyload&&data-original", + "分类片单副标题": ".pic-text&&Text", + "分类片单链接加前缀": "http://www.40yb.com", + "分类片单链接加后缀": "", + "搜索请求头参数": "User-Agent$手机#Cookie$tcpvsd=1686288471101", + "搜索链接": "http://www.40yb.com/search.php;post", + "POST请求数据": "searchword={wd}", + "搜索截取模式": "1", + "搜索列表数组规则": ".stui-vodlist__media&&li", + "搜索片单是否Jsoup写法": "1", + "搜索片单图片": ".lazyload&&data-original", + "搜索片单标题": "h3&&a&&Text", + "搜索片单链接": "h3&&a&&href", + "搜索片单副标题": ".pic-text&&Text", + "搜索片单链接加前缀": "http://www.40yb.com", + "搜索片单链接加后缀": "", + "链接是否直接播放": "0", + "直接播放链接加前缀": "", + "直接播放链接加后缀": "", + "直接播放直链视频请求头": "", + "详情是否Jsoup写法": "0", + "类型详情": "类型:&&", + "年代详情": "年份:&&", + "地区详情": "地区:&&", + "演员详情": "主演:&&

", + "简介详情": "简介:&&

", + "线路列表数组规则": "body&&#playlist", + "线路标题": "h3&&Text", + "播放列表数组规则": "body&&.stui-content__playlist", + "选集列表数组规则": "li", + "选集标题链接是否Jsoup写法": "1", + "选集标题": "a&&Text", + "选集链接": "a&&href", + "是否反转选集序列": "0", + "选集链接加前缀": "http://www.40yb.com", + "选集链接加后缀": "", + "分析MacPlayer": "0", + "是否开启手动嗅探": "0", + "手动嗅探视频链接关键词": ".mp4#.m3u8#.flv#video/tos", + "手动嗅探视频链接过滤词": ".html#=http" +} \ No newline at end of file diff --git a/潇洒/movie/json/XEYS.json b/潇洒/movie/json/XEYS.json new file mode 100644 index 00000000..0901bce4 --- /dev/null +++ b/潇洒/movie/json/XEYS.json @@ -0,0 +1,8 @@ +{ + "简介": "tt\" style=*>&&", + "数组": "&&", + "搜索url": "https://xiuer.pro/vod/search/?wd={wd}", + "分类url": "https://xiuer.pro/show/{cateId}/area/{area}/class/{class}/page/{catePg}/year/{year}/", + "分类": "短剧$duanju#电视剧$dianshiju#电影$dianying#动漫$dongman#综艺$zongyi" +} \ No newline at end of file diff --git a/潇洒/movie/json/XGYS.json b/潇洒/movie/json/XGYS.json new file mode 100644 index 00000000..d90a276d --- /dev/null +++ b/潇洒/movie/json/XGYS.json @@ -0,0 +1,5 @@ +{ + "分类": "电影$1#剧集$2#综艺$3#动漫$4", + "类型": "动作片$1#喜剧片$2#爱情片$21#海外动漫$3#科幻片$4#恐怖片$5#剧情片$6#战争片$7#纪录片$8#其他$9", + "分类url": "https://www.xgitv.com/vshow/{cateId}-----------.html" +} \ No newline at end of file diff --git a/潇洒/movie/json/XZYS.json b/潇洒/movie/json/XZYS.json new file mode 100644 index 00000000..09bd1bb4 --- /dev/null +++ b/潇洒/movie/json/XZYS.json @@ -0,0 +1,6 @@ +{ + "线路数组": "", + "线路标题": ">&&<", + "分类url": "http://dyxz.tv/list/{cateId}_{catePg}.html", + "分类": "电影$1#电视剧$2#动漫$3#综艺$4" +} \ No newline at end of file diff --git a/潇洒/movie/json/YHYS.json b/潇洒/movie/json/YHYS.json new file mode 100644 index 00000000..2ca57751 --- /dev/null +++ b/潇洒/movie/json/YHYS.json @@ -0,0 +1,5 @@ +{ + "线路标题": "

&&

", + "分类url": "https://yinghuadm.fun/vodshow/{cateId}-{area}--{class}-----{catePg}---{year}.html", + "分类": "电影$1#剧集$2#综艺$3#动漫$4" +} \ No newline at end of file diff --git a/潇洒/movie/json/YLYS.json b/潇洒/movie/json/YLYS.json new file mode 100644 index 00000000..44f77060 --- /dev/null +++ b/潇洒/movie/json/YLYS.json @@ -0,0 +1,7 @@ +{ + "请求头": "User-Agent$MOBILE_UA", + "编码": "UTF-8", + "分类": "电影$1#电视剧$2#综艺$3#动漫$4", + "类型": "动作片$6#喜剧片$7#爱情片$8#科幻片$9#奇幻片$10#恐怖片$11#剧情片$12#战争片$20#动画片$26#悬疑片$22#冒险片$23#犯罪片$24#惊悚片$45#歌舞片$46#灾难片$47#网络片$48||国产剧$13#港台剧$14#日剧$15#韩剧$33#欧美剧$16#泰剧$34#新马剧$35#其他剧$25||内地综艺$27#港台综艺$28#日本综艺$29#韩国综艺$36#欧美综艺$30#新马泰综艺$37#其他综艺$38||国产动漫$31#日本动漫$32#韩国动漫$39#港台动漫$40#新马泰动漫$41#欧美动漫$42#其他动漫$43", + "分类url": "https://www.ylys.tv/vodshow/{cateId}-{area}-{by}-{class}-{lang}-{letter}---{catePg}---{year}.html" +} \ No newline at end of file diff --git a/潇洒/movie/py/AKDJ.py b/潇洒/movie/py/AKDJ.py new file mode 100644 index 00000000..b447431a --- /dev/null +++ b/潇洒/movie/py/AKDJ.py @@ -0,0 +1,109 @@ +# -*- coding: utf-8 -*- +# by @嗷呜 +import json +import sys +from pyquery import PyQuery as pq +sys.path.append('..') +from base.spider import Spider + +class Spider(Spider): + + def init(self, extend=""): + pass + + def getName(self): + pass + + def isVideoFormat(self, url): + pass + + def manualVideoCheck(self): + pass + + def destroy(self): + pass + + host='http://www.toule.top' + + headers = { + 'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/130.0.0.0 Safari/537.36', + 'Referer':f'{host}/', + 'Origin':host + } + + def homeContent(self, filter): + data=self.getpq() + result = {} + classes = [] + for k in data('.swiper-wrapper .swiper-slide').items(): + classes.append({ + 'type_name': k.text(), + 'type_id': k.text() + }) + result['class'] = classes + result['list'] = self.getlist(data('.container.items ul li')) + return result + + def homeVideoContent(self): + pass + + def categoryContent(self, tid, pg, filter, extend): + data=self.getpq(f"/index.php/vod/show/class/{tid}/id/1/page/{pg}.html") + result = {} + result['list'] = self.getlist(data('.container.items ul li')) + result['page'] = pg + result['pagecount'] = 9999 + result['limit'] = 90 + result['total'] = 999999 + return result + + def detailContent(self, ids): + data=self.getpq(ids[0]) + v=data('.container.detail-content') + vod = { + 'vod_remarks': v('.items-tags a').text(), + 'vod_content': v('.text-content .detail').text(), + 'vod_play_from': '爱看短剧', + 'vod_play_url': '#'.join([f"{i.text()}${i('a').attr('href')}" for i in data('.swiper-wrapper .swiper-slide').items()]) + } + return {'list':[vod]} + + def searchContent(self, key, quick, pg="1"): + data=self.getpq(f"/index.php/vod/search/page/{pg}/wd/{key}.html") + return {'list':self.getlist(data('.container.items ul li')),'page':pg} + + def playerContent(self, flag, id, vipFlags): + data=self.getpq(id) + try: + jstr=data('.player-content script').eq(0).text() + jt=json.loads(jstr.split('=',1)[-1]) + p,url=0,jt['url'] + except Exception as e: + print(f"获取播放地址失败: {e}") + p,url=1,f'{self.host}{id}' + return {'parse': p, 'url': url, 'header': self.headers} + + def localProxy(self, param): + pass + + def liveContent(self, url): + pass + + def getpq(self, path=''): + data=self.fetch(f"{self.host}{path}",headers=self.headers).text + try: + return pq(data) + except Exception as e: + print(f"{str(e)}") + return pq(data.encode('utf-8')) + + def getlist(self,data): + videos = [] + for i in data.items(): + videos.append({ + 'vod_id': i('.image-line').attr('href'), + 'vod_name': i('img').attr('alt'), + 'vod_pic': i('img').attr('src'), + 'vod_remarks': i('.remarks.light').text() + }) + return videos \ No newline at end of file diff --git a/潇洒/movie/py/APPV2.py b/潇洒/movie/py/APPV2.py new file mode 100644 index 00000000..c3fe418d --- /dev/null +++ b/潇洒/movie/py/APPV2.py @@ -0,0 +1,97 @@ +# -*- coding: utf-8 -*- +# by @嗷呜 +import sys +sys.path.append('..') +from base.spider import Spider + +class Spider(Spider): + + def init(self, extend=""): + ''' + example: + { + "key": "py_appV2", + "name": "xxx", + "type": 3, + "searchable": 1, + "quickSearch": 1, + "filterable": 1, + "api": "./py/APPV2.py", + "ext": "http://cmsyt.lyyytv.cn" + } + + ''' + self.host=extend + pass + + def getName(self): + pass + + def isVideoFormat(self, url): + pass + + def manualVideoCheck(self): + pass + + def destroy(self): + pass + + headers = { + 'User-Agent': 'okhttp/4.12.0', + } + + def homeContent(self, filter): + data = self.fetch(f"{self.host}//api.php/app/nav?token=",headers=self.headers).json() + keys = ["class", "area", "lang", "year", "letter", "by", "sort"] + filters = {} + classes = [] + for item in data['list']: + has_non_empty_field = False + jsontype_extend = item["type_extend"] + classes.append({"type_name": item["type_name"], "type_id": item["type_id"]}) + for key in keys: + if key in jsontype_extend and jsontype_extend[key].strip() != "": + has_non_empty_field = True + break + if has_non_empty_field: + filters[str(item["type_id"])] = [] + for dkey in jsontype_extend: + if dkey in keys and jsontype_extend[dkey].strip() != "": + values = jsontype_extend[dkey].split(",") + value_array = [{"n": value.strip(), "v": value.strip()} for value in values if + value.strip() != ""] + filters[str(item["type_id"])].append({"key": dkey, "name": dkey, "value": value_array}) + result = {} + result["class"] = classes + result["filters"] = filters + return result + + def homeVideoContent(self): + data=self.fetch(f"{self.host}/api.php/app/index_video?token=",headers=self.headers).json() + videos=[] + for item in data['list']:videos.extend(item['vlist']) + return {'list':videos} + + def categoryContent(self, tid, pg, filter, extend): + params = {'tid':tid,'class':extend.get('class',''),'area':extend.get('area',''),'lang':extend.get('lang',''),'year':extend.get('year',''),'limit':'18','pg':pg} + data=self.fetch(f"{self.host}/api.php/app/video",params=params,headers=self.headers).json() + return data + + def detailContent(self, ids): + data=self.fetch(f"{self.host}/api.php/app/video_detail?id={ids[0]}",headers=self.headers).json() + return {'list':[data['data']]} + + def searchContent(self, key, quick, pg="1"): + data=self.fetch(f"{self.host}/api.php/app/search?text={key}&pg={pg}",headers=self.headers).json() + videos=data['list'] + for item in data['list']: + item.pop('type', None) + return {'list':videos,'page':pg} + + def playerContent(self, flag, id, vipFlags): + return {'jx':1,'playUrl':'','parse': 1, 'url': id, 'header': self.headers} + + def localProxy(self, param): + pass + + diff --git a/潇洒/movie/py/BLSP.py b/潇洒/movie/py/BLSP.py new file mode 100644 index 00000000..2b8a7cf5 --- /dev/null +++ b/潇洒/movie/py/BLSP.py @@ -0,0 +1,468 @@ +#coding=utf-8 +#!/usr/bin/python +import sys +import json +import time +from datetime import datetime +from difflib import SequenceMatcher +from urllib.parse import quote, unquote +sys.path.append('..') +from base.spider import Spider + +class Spider(Spider): # 元类 默认的元类 type + def getName(self): + return "B站番剧" + + def init(self, extend): + try: + self.extendDict = json.loads(extend) + except: + self.extendDict = {} + + def destroy(self): + pass + + def isVideoFormat(self, url): + pass + + def manualVideoCheck(self): + pass + + def homeContent(self, filter): + result = {} + cateManual = { + "番剧": "1", + "国创": "4", + "电影": "2", + "综艺": "7", + "电视剧": "5", + } + classes = [] + for k in cateManual: + classes.append({ + 'type_name': k, + 'type_id': cateManual[k] + }) + result['class'] = classes + if filter: + result['filters'] = self.config['filter'] + currentYear = datetime.now().year + for resultfilter in result['filters']: + for rf in result['filters'][resultfilter]: + if rf['key'] == 'year': + for rfv in rf['value']: + if rfv['n'].isdigit(): + if int(rfv['n']) < currentYear: + pos = rf['value'].index(rfv) + for year in range(currentYear, int(rfv['n']), -1): + rf['value'].insert(pos, {'v': f'[{str(year)},{str(year+1)})', 'n': str(year)}) + pos += 1 + break + else: + break + elif rf['key'] == 'release_date': + for rfv in rf['value']: + if rfv['n'].isdigit(): + if int(rfv['n']) < currentYear: + pos = rf['value'].index(rfv) + for year in range(currentYear, int(rfv['n']), -1): + rf['value'].insert(pos, {'v': f'[{str(year)}-01-01 00:00:00,{str(year+1)}-01-01 00:00:00)', 'n': str(year)}) + pos += 1 + break + else: + break + return result + + def homeVideoContent(self): + return self.categoryContent('1', '1', False, {}) + + def categoryContent(self, cid, page, filter, ext): + page = int(page) + result = {} + videos = [] + cookie, _, _ = self.getCookie('{}') + url = 'https://api.bilibili.com/pgc/season/index/result?order=2&sort=0&pagesize=20&type=1&st={}&season_type={}&page={}'.format(cid, cid, page) + for key in ext: + url += f'&{key}={quote(ext[key])}' + r = self.fetch(url, headers=self.header, cookies=cookie, timeout=5) + data = json.loads(self.cleanText(r.text)) + vodList = data['data']['list'] + for vod in vodList: + aid = str(vod['season_id']).strip() + title = self.removeHtmlTags(self.cleanText(vod['title'])) + img = vod['cover'].strip() + remark = vod['index_show'].strip() + videos.append({ + "vod_id": aid, + "vod_name": title, + "vod_pic": img, + "vod_remarks": remark + }) + lenvideos = len(videos) + if data['data']['has_next'] == 1: + pagecount = page + 1 + else: + pagecount = page + result['list'] = videos + result['page'] = page + result['pagecount'] = pagecount + result['limit'] = lenvideos + result['total'] = lenvideos + return result + + def detailContent(self, did): + did = did[0] + url = "http://api.bilibili.com/pgc/view/web/season?season_id={0}".format(did) + r = self.fetch(url, headers=self.header, timeout=10) + data = json.loads(self.cleanText(r.text)) + vod = { + "vod_id": did, + "vod_name": self.removeHtmlTags(data['result']['title']), + "vod_pic": data['result']['cover'], + "type_name": data['result']['share_sub_title'], + "vod_actor": data['result']['actors'].replace('\n', ','), + "vod_content": self.removeHtmlTags(data['result']['evaluate']) + } + videoList = data['result']['episodes'] + playUrl = '' + for video in videoList: + eid = video['id'] + cid = video['cid'] + name = self.removeHtmlTags(video['share_copy']).replace("#", "-").replace('$', '*') + remark = time.strftime('%H:%M:%S', time.gmtime(video['duration']/1000)) + if remark.startswith('00:'): + remark = remark[3:] + playUrl = playUrl + '[{}]/{}${}_{}#'.format(remark, name, eid, cid) + vod['vod_play_from'] = 'B站番剧' + vod['vod_play_url'] = playUrl.strip('#') + result = { + 'list': [ + vod + ] + } + return result + + def searchContent(self, key, quick): + return self.searchContentPage(key, quick, '1') + + def searchContentPage(self, key, quick, page): + videos = [] + cookie = '' + if 'cookie' in self.extendDict: + cookie = self.extendDict['cookie'] + if 'json' in self.extendDict: + r = self.fetch(self.extendDict['json'], timeout=10) + if 'cookie' in r.json(): + cookie = r.json()['cookie'] + if cookie == '': + cookie = '{}' + elif type(cookie) == str and cookie.startswith('http'): + cookie = self.fetch(cookie, timeout=10).text.strip() + try: + if type(cookie) == dict: + cookie = json.dumps(cookie, ensure_ascii=False) + except: + pass + cookie, _, _ = self.getCookie(cookie) + url = f'https://api.bilibili.com/x/web-interface/search/type?search_type=media_bangumi&keyword={key}&page={page}' + r = self.fetch(url, headers=self.header, cookies=cookie, timeout=5) + data = json.loads(self.cleanText(r.text)) + if 'result' not in data['data']: + return {'list': videos}, 1 + vodList = data['data']['result'] + for vod in vodList: + sid = str(vod['season_id']).strip() + title = self.removeHtmlTags(self.cleanText(vod['title'])) + if SequenceMatcher(None, title, key).ratio() < 0.6 and key not in title: + continue + img = vod['eps'][0]['cover'].strip() + remark = self.removeHtmlTags(vod['index_show']).strip() + videos.append({ + "vod_id": sid, + "vod_name": title, + "vod_pic": img, + "vod_remarks": remark + }) + result = { + 'list': videos + } + return result + + def playerContent(self, flag, pid, vipFlags): + result = {} + pidList = pid.split("_") + aid = pidList[0] + cid = pidList[1] + url = 'https://api.bilibili.com/pgc/player/web/playurl?ep_id={0}&cid={1}&qn=120&fnval=4048&fnver=0&fourk=1'.format(aid, cid) + cookie = '' + extendDict = self.extendDict + if 'cookie' in extendDict: + cookie = extendDict['cookie'] + if 'json' in extendDict: + r = self.fetch(extendDict['json'], timeout=10) + if 'cookie' in r.json(): + cookie = r.json()['cookie'] + if cookie == '': + cookie = '{}' + elif type(cookie) == str and cookie.startswith('http'): + cookie = self.fetch(cookie, timeout=10).text.strip() + try: + if type(cookie) == dict: + cookie = json.dumps(cookie, ensure_ascii=False) + except: + pass + cookiesDict, _, _ = self.getCookie(cookie) + cookies = quote(json.dumps(cookiesDict)) + if 'thread' in extendDict: + thread = str(extendDict['thread']) + else: + thread = '0' + result["parse"] = '0' + result["playUrl"] = '' + result["url"] = f'http://127.0.0.1:9978/proxy?do=py&type=mpd&cookies={cookies}&url={quote(url)}&aid={aid}&cid={cid}&thread={thread}' + result["header"] = self.header + result['danmaku'] = 'https://api.bilibili.com/x/v1/dm/list.so?oid={}'.format(cid) + result["format"] = 'application/dash+xml' + return result + + def localProxy(self, params): + if params['type'] == "mpd": + return self.proxyMpd(params) + if params['type'] == "media": + return self.proxyMedia(params) + return None + + def proxyMpd(self, params): + content, durlinfos, mediaType = self.getDash(params) + if mediaType == 'mpd': + return [200, "application/dash+xml", content] + else: + url = content + durlinfo = durlinfos['durl'][0]['backup_url'] + try: + r = self.fetch(url, headers=self.header, stream=True, timeout=1) + statusCode = r.status_code + try: + r.close() + except: + pass + except: + try: + r.close() + except: + pass + statusCode = 404 + for url in durlinfo: + try: + r = self.fetch(url, headers=self.header, stream=True, timeout=1) + statusCode = r.status_code + except: + statusCode = 404 + if statusCode == 200: + break + try: + r.close() + except: + pass + if statusCode != 200 and self.retry == 0: + self.retry += 1 + self.proxyMedia(params, True) + header = self.header.copy() + if 'range' in params: + header['Range'] = params['range'] + if '127.0.0.1:7777' in url: + header['Location'] = url + return [302, "video/MP2T", None, header] + return [206, "application/octet-stream", self.fetch(content, headers=header, stream=True).content] + + def proxyMedia(self, params, forceRefresh=False): + _, dashinfos, _ = self.getDash(params) + if 'videoid' in params: + videoid = int(params['videoid']) + dashinfo = dashinfos['video'][videoid] + url = dashinfo['baseUrl'] + elif 'audioid' in params: + audioid = int(params['audioid']) + dashinfo = dashinfos['audio'][audioid] + url = dashinfo['baseUrl'] + else: + return [404, "text/plain", ""] + try: + r = self.fetch(url, headers=params['headers'], stream=True) + statusCode = r.status_code + try: + r.close() + except: + pass + except: + try: + r.close() + except: + pass + statusCode = 404 + for url in dashinfo['backupUrl']: + try: + r = self.fetch(url, headers=self.header, stream=True, timeout=1) + statusCode = r.status_code + except: + statusCode = 404 + if statusCode == 200: + break + try: + r.close() + except: + pass + if statusCode != 200 and self.retry == 0: + self.retry += 1 + self.proxyMedia(params, True) + header = self.header.copy() + if 'range' in params: + header['Range'] = params['range'] + return [206, "application/octet-stream", self.fetch(url, headers=header, stream=True).content] + + def getDash(self, params, forceRefresh=False): + aid = params['aid'] + cid = params['cid'] + url = unquote(params['url']) + if 'thread' in params: + thread = params['thread'] + else: + thread = 0 + header = self.header.copy() + self.setCache('debug', params['cookies']) + cookieDict = json.loads(params['cookies']) + key = f'bilimdmpdCache_{aid}_{cid}' + if forceRefresh: + self.delCache(key) + else: + data = self.getCache(key) + if data: + return data['content'], data['dashinfos'], data['type'] + + cookies = cookieDict.copy() + r = self.fetch(url, cookies=cookies, headers=header, timeout=5) + data = json.loads(self.cleanText(r.text)) + if data['code'] != 0: + return '', {}, '' + if not 'dash' in data['result']: + purl = data['result']['durl'][0]['url'] + try: + expiresAt = int(self.regStr(reg='deadline=(\d+)', src=purl).group(1)) - 60 + except: + expiresAt = int(time.time()) + 600 + if int(thread) > 0: + try: + self.fetch('http://127.0.0.1:7777') + except: + self.fetch('http://127.0.0.1:9978/go') + purl = f'http://127.0.0.1:7777?url={quote(purl)}&thread={thread}' + self.setCache(key, {'content': purl, 'type': 'mp4', 'dashinfos': data['result'], 'expiresAt': expiresAt}) + return purl, data['result'], 'mp4' + + dashinfos = data['result']['dash'] + duration = dashinfos['duration'] + minBufferTime = dashinfos['minBufferTime'] + videoinfo = '' + videoid = 0 + deadlineList = [] + # videoList = sorted(dashinfos['video'], key=lambda x: x['bandwidth'], reverse=True) + for video in dashinfos['video']: + try: + deadline = int(self.regStr(reg='deadline=(\d+)', src=video['baseUrl']).group(1)) + except: + deadline = int(time.time()) + 600 + deadlineList.append(deadline) + codecs = video['codecs'] + bandwidth = video['bandwidth'] + frameRate = video['frameRate'] + height = video['height'] + width = video['width'] + void = video['id'] + vidparams = params.copy() + vidparams['videoid'] = videoid + baseUrl = f'http://127.0.0.1:9978/proxy?do=py&type=media&cookies={quote(json.dumps(cookies))}&url={quote(url)}&aid={aid}&cid={cid}&videoid={videoid}' + videoinfo = videoinfo + f""" + {baseUrl} + + + + \n""" + videoid += 1 + audioinfo = '' + audioid = 0 + # audioList = sorted(dashinfos['audio'], key=lambda x: x['bandwidth'], reverse=True) + for audio in dashinfos['audio']: + try: + deadline = int(self.regStr(reg='deadline=(\d+)', src=audio['baseUrl']).group(1)) + except: + deadline = int(time.time()) + 600 + deadlineList.append(deadline) + bandwidth = audio['bandwidth'] + codecs = audio['codecs'] + aoid = audio['id'] + aidparams = params.copy() + aidparams['audioid'] = audioid + baseUrl = f'http://127.0.0.1:9978/proxy?do=py&type=media&cookies={quote(json.dumps(cookies))}&url={quote(url)}&aid={aid}&cid={cid}&audioid={audioid}' + audioinfo = audioinfo + f""" + {baseUrl} + + + + \n""" + audioid += 1 + mpd = f""" + + + + {videoinfo.strip()} + + + {audioinfo.strip()} + + + """ + expiresAt = min(deadlineList) - 60 + self.setCache(key, {'type': 'mpd', 'content': mpd.replace('&', '&'), 'dashinfos': dashinfos, 'expiresAt': expiresAt}) + return mpd.replace('&', '&'), dashinfos, 'mpd' + + def getCookie(self, cookie): + if '{' in cookie and '}' in cookie: + cookies = json.loads(cookie) + else: + cookies = dict([co.strip().split('=', 1) for co in cookie.strip(';').split(';')]) + bblogin = self.getCache('bblogin') + if bblogin: + imgKey = bblogin['imgKey'] + subKey = bblogin['subKey'] + return cookies, imgKey, subKey + + header = { + "User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/94.0.4606.54 Safari/537.36" + } + r = self.fetch("http://api.bilibili.com/x/web-interface/nav", cookies=cookies, headers=header, timeout=10) + data = json.loads(r.text) + code = data["code"] + if code == 0: + imgKey = data['data']['wbi_img']['img_url'].rsplit('/', 1)[1].split('.')[0] + subKey = data['data']['wbi_img']['sub_url'].rsplit('/', 1)[1].split('.')[0] + self.setCache('bblogin', {'imgKey': imgKey, 'subKey': subKey, 'expiresAt': int(time.time()) + 1200}) + return cookies, imgKey, subKey + r = self.fetch("https://www.bilibili.com/", headers=header, timeout=5) + cookies = r.cookies.get_dict() + imgKey = '' + subKey = '' + return cookies, imgKey, subKey + + def removeHtmlTags(self, src): + from re import sub, compile + clean = compile('<.*?>') + return sub(clean, '', src) + + retry = 0 + header = { + "User-Agent":"Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/94.0.4606.54 Safari/537.36", + "Referer": "https://www.bilibili.com" + } + config = { + "filter": {"1":[{"key":"season_version","name":"类型","value":[{"v":'-1',"n":"全部"},{"v":'1',"n":"正片"},{"v":'2',"n":"电影"},{"v":'3',"n":"其他"}]},{"key":"area","name":"地区","value":[{"v":'-1',"n":"全部"},{"v":'2',"n":"日本"},{"v":'3',"n":"美国"},{"v":"1,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70","n":"其他"}]},{"key":"is_finish","name":"状态","value":[{"v":'-1',"n":"全部"},{"v":'1',"n":"完结"},{"v":'0',"n":"连载"}]},{"key":"copyright","name":"版权","value":[{"v":'-1',"n":"全部"},{"v":'3',"n":"独家"},{"v":"1,2,4","n":"其他"}]},{"key":"season_status","name":"付费","value":[{"v":'-1',"n":"全部"},{"v":'1',"n":"免费"},{"v":"2,6","n":"付费"},{"v":"4,6","n":"大会员"}]},{"key":"season_month","name":"季度","value":[{"v":'-1',"n":"全部"},{"v":'1',"n":"1月"},{"v":'4',"n":"4月"},{"v":'7',"n":"7月"},{"v":'10',"n":"10月"}]},{"key":"year","name":"年份","value":[{"v":'-1',"n":"全部"},{"v":"[2023,2024)","n":"2023"},{"v":"[2022,2023)","n":"2022"},{"v":"[2021,2022)","n":"2021"},{"v":"[2020,2021)","n":"2020"},{"v":"[2019,2020)","n":"2019"},{"v":"[2018,2019)","n":"2018"},{"v":"[2017,2018)","n":"2017"},{"v":"[2016,2017)","n":"2016"},{"v":"[2015,2016)","n":"2015"},{"v":"[2010,2015)","n":"2014-2010"},{"v":"[2005,2010)","n":"2009-2005"},{"v":"[2000,2005)","n":"2004-2000"},{"v":"[1990,2000)","n":"90年代"},{"v":"[1980,1990)","n":"80年代"},{"v":"[,1980)","n":"更早"}]},{"key":"style_id","name":"风格","value":[{"v":'-1',"n":"全部"},{"v":'10010',"n":"原创"},{"v":'10011',"n":"漫画改"},{"v":'10012',"n":"小说改"},{"v":'10013',"n":"游戏改"},{"v":'10102',"n":"特摄"},{"v":'10015',"n":"布袋戏"},{"v":'10016',"n":"热血"},{"v":'10017',"n":"穿越"},{"v":'10018',"n":"奇幻"},{"v":'10020',"n":"战斗"},{"v":'10021',"n":"搞笑"},{"v":'10022',"n":"日常"},{"v":'10023',"n":"科幻"},{"v":'10024',"n":"萌系"},{"v":'10025',"n":"治愈"},{"v":'10026',"n":"校园"},{"v":'10027',"n":"少儿"},{"v":'10028',"n":"泡面"},{"v":'10029',"n":"恋爱"},{"v":'10030',"n":"少女"},{"v":'10031',"n":"魔法"},{"v":'10032',"n":"冒险"},{"v":'10033',"n":"历史"},{"v":'10034',"n":"架空"},{"v":'10035',"n":"机战"},{"v":'10036',"n":"神魔"},{"v":'10037',"n":"声控"},{"v":'10038',"n":"运动"},{"v":'10039',"n":"励志"},{"v":'10040',"n":"音乐"},{"v":'10041',"n":"推理"},{"v":'10042',"n":"社团"},{"v":'10043',"n":"智斗"},{"v":'10044',"n":"催泪"},{"v":'10045',"n":"美食"},{"v":'10046',"n":"偶像"},{"v":'10047',"n":"乙女"},{"v":'10048',"n":"职场"}]}],"4":[{"key":"season_version","name":"类型","value":[{"v":'-1',"n":"全部"},{"v":'1',"n":"正片"},{"v":'2',"n":"电影"},{"v":'3',"n":"其他"}]},{"key":"area","name":"地区","value":[{"v":'-1',"n":"全部"},{"v":'2',"n":"日本"},{"v":'3',"n":"美国"},{"v":"1,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70","n":"其他"}]},{"key":"is_finish","name":"状态","value":[{"v":'-1',"n":"全部"},{"v":'1',"n":"完结"},{"v":'0',"n":"连载"}]},{"key":"copyright","name":"版权","value":[{"v":'-1',"n":"全部"},{"v":'3',"n":"独家"},{"v":"1,2,4","n":"其他"}]},{"key":"season_status","name":"付费","value":[{"v":'-1',"n":"全部"},{"v":'1',"n":"免费"},{"v":"2,6","n":"付费"},{"v":"4,6","n":"大会员"}]},{"key":"year","name":"年份","value":[{"v":'-1',"n":"全部"},{"v":"[2023,2024)","n":"2023"},{"v":"[2022,2023)","n":"2022"},{"v":"[2021,2022)","n":"2021"},{"v":"[2020,2021)","n":"2020"},{"v":"[2019,2020)","n":"2019"},{"v":"[2018,2019)","n":"2018"},{"v":"[2017,2018)","n":"2017"},{"v":"[2016,2017)","n":"2016"},{"v":"[2015,2016)","n":"2015"},{"v":"[2010,2015)","n":"2014-2010"},{"v":"[2005,2010)","n":"2009-2005"},{"v":"[2000,2005)","n":"2004-2000"},{"v":"[1990,2000)","n":"90年代"},{"v":"[1980,1990)","n":"80年代"},{"v":"[,1980)","n":"更早"}]},{"key":"style_id","name":"风格","value":[{"v":'-1',"n":"全部"},{"v":'10010',"n":"原创"},{"v":'10011',"n":"漫画改"},{"v":'10012',"n":"小说改"},{"v":'10013',"n":"游戏改"},{"v":'10014',"n":"动态漫"},{"v":'10015',"n":"布袋戏"},{"v":'10016',"n":"热血"},{"v":'10018',"n":"奇幻"},{"v":'10019',"n":"玄幻"},{"v":'10020',"n":"战斗"},{"v":'10021',"n":"搞笑"},{"v":'10078',"n":"武侠"},{"v":'10022',"n":"日常"},{"v":'10023',"n":"科幻"},{"v":'10024',"n":"萌系"},{"v":'10025',"n":"治愈"},{"v":'10057',"n":"悬疑"},{"v":'10026',"n":"校园"},{"v":'10027',"n":"少儿"},{"v":'10028',"n":"泡面"},{"v":'10029',"n":"恋爱"},{"v":'10030',"n":"少女"},{"v":'10031',"n":"魔法"},{"v":'10033',"n":"历史"},{"v":'10035',"n":"机战"},{"v":'10036',"n":"神魔"},{"v":'10037',"n":"声控"},{"v":'10038',"n":"运动"},{"v":'10039',"n":"励志"},{"v":'10040',"n":"音乐"},{"v":'10041',"n":"推理"},{"v":'10042',"n":"社团"},{"v":'10043',"n":"智斗"},{"v":'10044',"n":"催泪"},{"v":'10045',"n":"美食"},{"v":'10046',"n":"偶像"},{"v":'10047',"n":"乙女"},{"v":'10048',"n":"职场"},{"v":'10049',"n":"古风"}]}],"2":[{"key":"area","name":"地区","value":[{"v":'-1',"n":"全部"},{"v":'1',"n":"中国大陆"},{"v":"6,7","n":"中国港台"},{"v":'3',"n":"美国"},{"v":'2',"n":"日本"},{"v":'8',"n":"韩国"},{"v":'9',"n":"法国"},{"v":'4',"n":"英国"},{"v":'15',"n":"德国"},{"v":'10',"n":"泰国"},{"v":'35',"n":"意大利"},{"v":'13',"n":"西班牙"},{"v":"5,11,12,14,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70","n":"其他"}]},{"key":"season_status","name":"付费","value":[{"v":'-1',"n":"全部"},{"v":'1',"n":"免费"},{"v":"2,6","n":"付费"},{"v":"4,6","n":"大会员"}]},{"key":"style_id","name":"风格","value":[{"v":'-1',"n":"全部"},{"v":'10104',"n":"短片"},{"v":'10050',"n":"剧情"},{"v":'10051',"n":"喜剧"},{"v":'10052',"n":"爱情"},{"v":'10053',"n":"动作"},{"v":'10054',"n":"恐怖"},{"v":'10023',"n":"科幻"},{"v":'10055',"n":"犯罪"},{"v":'10056',"n":"惊悚"},{"v":'10057',"n":"悬疑"},{"v":'10018',"n":"奇幻"},{"v":'10058',"n":"战争"},{"v":'10059',"n":"动画"},{"v":'10060',"n":"传记"},{"v":'10061',"n":"家庭"},{"v":'10062',"n":"歌舞"},{"v":'10033',"n":"历史"},{"v":'10032',"n":"冒险"},{"v":'10063',"n":"纪实"},{"v":'10064',"n":"灾难"},{"v":'10011',"n":"漫画改"},{"v":'10012',"n":"小说改"}]},{"key":"release_date","name":"年份","value":[{"v":'-1',"n":"全部"},{"v":"[2023-01-01 00:00:00,2024-01-01 00:00:00)","n":"2023"},{"v":"[2022-01-01 00:00:00,2023-01-01 00:00:00)","n":"2022"},{"v":"[2021-01-01 00:00:00,2022-01-01 00:00:00)","n":"2021"},{"v":"[2020-01-01 00:00:00,2021-01-01 00:00:00)","n":"2020"},{"v":"[2019-01-01 00:00:00,2020-01-01 00:00:00)","n":"2019"},{"v":"[2018-01-01 00:00:00,2019-01-01 00:00:00)","n":"2018"},{"v":"[2017-01-01 00:00:00,2018-01-01 00:00:00)","n":"2017"},{"v":"[2016-01-01 00:00:00,2017-01-01 00:00:00)","n":"2016"},{"v":"[2010-01-01 00:00:00,2016-01-01 00:00:00)","n":"2015-2010"},{"v":"[2005-01-01 00:00:00,2010-01-01 00:00:00)","n":"2009-2005"},{"v":"[2000-01-01 00:00:00,2005-01-01 00:00:00)","n":"2004-2000"},{"v":"[1990-01-01 00:00:00,2000-01-01 00:00:00)","n":"90年代"},{"v":"[1980-01-01 00:00:00,1990-01-01 00:00:00)","n":"80年代"},{"v":"[,1980-01-01 00:00:00)","n":"更早"}]}],"5":[{"key":"area","name":"地区","value":[{"v":'-1',"n":"全部"},{"v":"1,6,7","n":"中国"},{"v":'2',"n":"日本"},{"v":'3',"n":"美国"},{"v":'4',"n":"英国"},{"v":'10',"n":"泰国"},{"v":"5,8,9,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70","n":"其他"}]},{"key":"season_status","name":"付费","value":[{"v":'-1',"n":"全部"},{"v":'1',"n":"免费"},{"v":"2,6","n":"付费"},{"v":"4,6","n":"大会员"}]},{"key":"style_id","name":"风格","value":[{"v":'-1',"n":"全部"},{"v":'10021',"n":"搞笑"},{"v":'10018',"n":"奇幻"},{"v":'10058',"n":"战争"},{"v":'10078',"n":"武侠"},{"v":'10079',"n":"青春"},{"v":'10103',"n":"短剧"},{"v":'10080',"n":"都市"},{"v":'10081',"n":"古装"},{"v":'10082',"n":"谍战"},{"v":'10083',"n":"经典"},{"v":'10084',"n":"情感"},{"v":'10057',"n":"悬疑"},{"v":'10039',"n":"励志"},{"v":'10085',"n":"神话"},{"v":'10017',"n":"穿越"},{"v":'10086',"n":"年代"},{"v":'10087',"n":"农村"},{"v":'10088',"n":"刑侦"},{"v":'10050',"n":"剧情"},{"v":'10061',"n":"家庭"},{"v":'10033',"n":"历史"},{"v":'10089',"n":"军旅"},{"v":'10023',"n":"科幻"}]},{"key":"release_date","name":"年份","value":[{"v":'-1',"n":"全部"},{"v":"[2023-01-01 00:00:00,2024-01-01 00:00:00)","n":"2023"},{"v":"[2022-01-01 00:00:00,2023-01-01 00:00:00)","n":"2022"},{"v":"[2021-01-01 00:00:00,2022-01-01 00:00:00)","n":"2021"},{"v":"[2020-01-01 00:00:00,2021-01-01 00:00:00)","n":"2020"},{"v":"[2019-01-01 00:00:00,2020-01-01 00:00:00)","n":"2019"},{"v":"[2018-01-01 00:00:00,2019-01-01 00:00:00)","n":"2018"},{"v":"[2017-01-01 00:00:00,2018-01-01 00:00:00)","n":"2017"},{"v":"[2016-01-01 00:00:00,2017-01-01 00:00:00)","n":"2016"},{"v":"[2010-01-01 00:00:00,2016-01-01 00:00:00)","n":"2015-2010"},{"v":"[2005-01-01 00:00:00,2010-01-01 00:00:00)","n":"2009-2005"},{"v":"[2000-01-01 00:00:00,2005-01-01 00:00:00)","n":"2004-2000"},{"v":"[1990-01-01 00:00:00,2000-01-01 00:00:00)","n":"90年代"},{"v":"[1980-01-01 00:00:00,1990-01-01 00:00:00)","n":"80年代"},{"v":"[,1980-01-01 00:00:00)","n":"更早"}]}],"7":[{"key":"season_status","name":"付费","value":[{"v":'-1',"n":"全部"},{"v":'1',"n":"免费"},{"v":"2,6","n":"付费"},{"v":"4,6","n":"大会员"}]},{"key":"style_id","name":"风格","value":[{"v":'-1',"n":"全部"},{"v":'10040',"n":"音乐"},{"v":'10090',"n":"访谈"},{"v":'10091',"n":"脱口秀"},{"v":'10092',"n":"真人秀"},{"v":'10094',"n":"选秀"},{"v":'10045',"n":"美食"},{"v":'10095',"n":"旅游"},{"v":'10098',"n":"晚会"},{"v":'10096',"n":"演唱会"},{"v":'10084',"n":"情感"},{"v":'10051',"n":"喜剧"},{"v":'10097',"n":"亲子"},{"v":'10100',"n":"文化"},{"v":'10048',"n":"职场"},{"v":'10069',"n":"萌宠"},{"v":'10099',"n":"养成"}]}]} + } \ No newline at end of file diff --git a/潇洒/movie/py/GSYS.py b/潇洒/movie/py/GSYS.py new file mode 100644 index 00000000..4a58f393 --- /dev/null +++ b/潇洒/movie/py/GSYS.py @@ -0,0 +1,222 @@ +# -*- coding: utf-8 -*- +# by @嗷呜 +import re +import sys +from Crypto.Hash import MD5 +sys.path.append('..') +from Crypto.Cipher import AES +from Crypto.Util.Padding import pad, unpad +from urllib.parse import quote, urlparse +from base64 import b64encode, b64decode +import json +import time +from base.spider import Spider + +class Spider(Spider): + + def init(self, extend=""): + self.host = self.gethost() + pass + + def getName(self): + pass + + + def isVideoFormat(self, url): + pass + + def manualVideoCheck(self): + pass + + def action(self, action): + pass + + def destroy(self): + pass + + def homeContent(self, filter): + data = self.getdata("/api.php/getappapi.index/initV119") + dy = {"class": "类型", "area": "地区", "lang": "语言", "year": "年份", "letter": "字母", "by": "排序", + "sort": "排序"} + filters = {} + classes = [] + json_data = data["type_list"] + homedata = data["banner_list"][8:] + for item in json_data: + if item["type_name"] == "全部": + continue + has_non_empty_field = False + jsontype_extend = json.loads(item["type_extend"]) + homedata.extend(item["recommend_list"]) + jsontype_extend["sort"] = "最新,最热,最赞" + classes.append({"type_name": item["type_name"], "type_id": item["type_id"]}) + for key in dy: + if key in jsontype_extend and jsontype_extend[key].strip() != "": + has_non_empty_field = True + break + if has_non_empty_field: + filters[str(item["type_id"])] = [] + for dkey in jsontype_extend: + if dkey in dy and jsontype_extend[dkey].strip() != "": + values = jsontype_extend[dkey].split(",") + value_array = [{"n": value.strip(), "v": value.strip()} for value in values if + value.strip() != ""] + filters[str(item["type_id"])].append({"key": dkey, "name": dy[dkey], "value": value_array}) + result = {} + result["class"] = classes + result["filters"] = filters + result["list"] = homedata[1:] + return result + + def homeVideoContent(self): + pass + + def categoryContent(self, tid, pg, filter, extend): + body = {"area": extend.get('area', '全部'), "year": extend.get('year', '全部'), "type_id": tid, "page": pg, + "sort": extend.get('sort', '最新'), "lang": extend.get('lang', '全部'), + "class": extend.get('class', '全部')} + result = {} + data = self.getdata("/api.php/getappapi.index/typeFilterVodList", body) + result["list"] = data["recommend_list"] + result["page"] = pg + result["pagecount"] = 9999 + result["limit"] = 90 + result["total"] = 999999 + return result + + def detailContent(self, ids): + body = f"vod_id={ids[0]}" + data = self.getdata("/api.php/getappapi.index/vodDetail", body) + vod = data["vod"] + play = [] + names = [] + for itt in data["vod_play_list"]: + a = [] + names.append(itt["player_info"]["show"]) + for it in itt['urls']: + it['user_agent']=itt["player_info"].get("user_agent") + it["parse"]=itt["player_info"].get("parse") + a.append(f"{it['name']}${self.e64(json.dumps(it))}") + play.append("#".join(a)) + vod["vod_play_from"] = "$$$".join(names) + vod["vod_play_url"] = "$$$".join(play) + result = {"list": [vod]} + return result + + def searchContent(self, key, quick, pg="1"): + body = f"keywords={key}&type_id=0&page={pg}" + data = self.getdata("/api.php/getappapi.index/searchList", body) + result = {"list": data["search_list"], "page": pg} + return result + + def playerContent(self, flag, id, vipFlags): + ids = json.loads(self.d64(id)) + h={"User-Agent": (ids['user_agent'] or "okhttp/3.14.9")} + url = ids['url'] + p=1 + try: + if re.search(r'\?url=', ids['parse_api_url']): + data=self.fetch(ids['parse_api_url'], headers=h, timeout=10).json() + url=data.get('url') or data['data'].get('url') + elif not re.search(r'\.m3u8|\.mp4', ids.get('url')): + body = f"parse_api={ids.get('parse') or ids['parse_api_url'].replace(ids['url'], '')}&url={quote(self.aes('encrypt', ids['url']))}&token={ids.get('token')}" + b = self.getdata("/api.php/getappapi.index/vodParse", body)['json'] + url = json.loads(b)['url'] + p=0 + except Exception as e: + print('错误信息:',e) + pass + if re.search(r'\.jpg|\.png|\.jpeg', url): + url = self.Mproxy(url) + result = {} + result["parse"] = p + result["url"] = url + result["header"] = h + return result + + def localProxy(self, param): + return self.Mlocal(param) + + def gethost(self): + headers = { + 'User-Agent': 'okhttp/3.14.9' + } + host = self.fetch('https://jingyu-1312635929.cos.ap-nanjing.myqcloud.com/1.json', + headers=headers).text.strip() + return host + + phend = { + 'User-Agent': 'Dalvik/2.1.0 (Linux; U; Android 11; M2012K10C Build/RP1A.200720.011)', + 'allowCrossProtocolRedirects': 'true' + } + + def aes(self, operation, text): + key = "4d83b87c4c5ea111".encode("utf-8") + iv = key + if operation == "encrypt": + cipher = AES.new(key, AES.MODE_CBC, iv) + ct_bytes = cipher.encrypt(pad(text.encode("utf-8"), AES.block_size)) + ct = b64encode(ct_bytes).decode("utf-8") + return ct + elif operation == "decrypt": + cipher = AES.new(key, AES.MODE_CBC, iv) + pt = unpad(cipher.decrypt(b64decode(text)), AES.block_size) + return pt.decode("utf-8") + + def header(self): + t = str(int(time.time())) + header = {"Referer":self.host, + "User-Agent": "okhttp/3.14.9", "app-version-code": "300", "app-ui-mode": "light", + "app-api-verify-time": t, "app-user-device-id": self.md5(t), + "app-api-verify-sign": self.aes("encrypt", t), + "Content-Type": "application/x-www-form-urlencoded; charset=UTF-8"} + return header + + def getdata(self, path, data=None): + vdata = self.post(f"{self.host}{path}", headers=self.header(), data=data, timeout=10).json()['data'] + data1 = self.aes("decrypt", vdata) + return json.loads(data1) + + def Mproxy(self, url): + return self.getProxyUrl() + "&url=" + b64encode(url.encode('utf-8')).decode('utf-8') + "&type=m3u8" + + def Mlocal(self, param,header=None): + url = self.d64(param["url"]) + ydata = self.fetch(url, headers=header, allow_redirects=False) + data = ydata.content.decode('utf-8') + if ydata.headers.get('Location'): + url = ydata.headers['Location'] + data = self.fetch(url, headers=header).content.decode('utf-8') + parsed_url = urlparse(url) + durl = parsed_url.scheme + "://" + parsed_url.netloc + lines = data.strip().split('\n') + for index, string in enumerate(lines): + if '#EXT' not in string and 'http' not in string: + last_slash_index = string.rfind('/') + lpath = string[:last_slash_index + 1] + lines[index] = durl + ('' if lpath.startswith('/') else '/') + lpath + data = '\n'.join(lines) + return [200, "application/vnd.apple.mpegur", data] + + def e64(self, text): + try: + text_bytes = text.encode('utf-8') + encoded_bytes = b64encode(text_bytes) + return encoded_bytes.decode('utf-8') + except Exception as e: + print(f"Base64编码错误: {str(e)}") + return "" + + def d64(self,encoded_text): + try: + encoded_bytes = encoded_text.encode('utf-8') + decoded_bytes = b64decode(encoded_bytes) + return decoded_bytes.decode('utf-8') + except Exception as e: + print(f"Base64解码错误: {str(e)}") + return "" + + def md5(self, text): + h = MD5.new() + h.update(text.encode('utf-8')) + return h.hexdigest() diff --git a/潇洒/movie/py/GZYS.py b/潇洒/movie/py/GZYS.py new file mode 100644 index 00000000..220e1fcb --- /dev/null +++ b/潇洒/movie/py/GZYS.py @@ -0,0 +1,496 @@ +# coding = utf-8 +#!/usr/bin/python +import re +import sys +import json +import time +import base64 +import hashlib +import random +import string +import urllib.parse +from Crypto.Cipher import AES +from Crypto.Util.Padding import pad, unpad +from Crypto.PublicKey import RSA +from Crypto.Cipher import PKCS1_v1_5 +from base.spider import Spider + +sys.path.append('..') + +class Spider(Spider): + def __init__(self): + self.name = "瓜子" + self.hosts = [ + 'https://apinew.uozvr.com', + 'https://api.w32z7vtd.com', + 'https://api.6a7nnf7.com', + 'https://api.umygrx3.com', + 'https://api.rmedphk.com' + ] + self.host_index = 0 + self.host = self.hosts[self.host_index] + + # AES 固定密钥(与Java版一致) + self.AES_KEY = 'OITxa5OqAYjhswxx' + self.AES_IV = 'rCMNwZASNBKZ8mXV' + + # RSA 公钥/私钥 + self.RSA_PUBLIC_KEY = "MIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQDUM5+/y8sPsWkd1/RQS64X259EUwxFXFE5HlA65MqrxnPs0JqoSRojSDy5QhwvROlaD6TwRQHKMY2OAZ6SnQeUJsChTEFIR9qUkwrs3/MVUMxjsv6JS6Oe/juclyJGTgVmDhB55EafXsD0SQYVj/QXXsxR6ewR5E2kL52yAAD4yQIDAQAB" + self.RSA_PRIVATE_KEY = """-----BEGIN RSA PRIVATE KEY----- +MIICdgIBADANBgkqhkiG9w0BAQEFAASCAmAwggJcAgEAAoGAe6hKrWLi1zQmjTT1 +ozbE4QdFeJGNxubxld6GrFGximxfMsMB6BpJhpcTouAqywAFppiKetUBBbXwYsYU +1wNr648XVmPmCMCy4rY8vdliFnbMUj086DU6Z+/oXBdWU3/b1G0DN3E9wULRSwcK +ZT3wj/cCI1vsCm3gj2R5SqkA9Y0CAwEAAQKBgAJH+4CxV0/zBVcLiBCHvSANm0l7 +HetybTh/j2p0Y1sTXro4ALwAaCTUeqdBjWiLSo9lNwDHFyq8zX90+gNxa7c5EqcW +V9FmlVXr8VhfBzcZo1nXeNdXFT7tQ2yah/odtdcx+vRMSGJd1t/5k5bDd9wAvYdI +DblMAg+wiKKZ5KcdAkEA1cCakEN4NexkF5tHPRrR6XOY/XHfkqXxEhMqmNbB9U34 +saTJnLWIHC8IXys6Qmzz30TtzCjuOqKRRy+FMM4TdwJBAJQZFPjsGC+RqcG5UvVM +iMPhnwe/bXEehShK86yJK/g/UiKrO87h3aEu5gcJqBygTq3BBBoH2md3pr/W+hUM +WBsCQQChfhTIrdDinKi6lRxrdBnn0Ohjg2cwuqK5zzU9p/N+S9x7Ck8wUI53DKm8 +jUJE8WAG7WLj/oCOWEh+ic6NIwTdAkEAj0X8nhx6AXsgCYRql1klbqtVmL8+95KZ +K7PnLWG/IfjQUy3pPGoSaZ7fdquG8bq8oyf5+dzjE/oTXcByS+6XRQJAP/5ciy1b +L3NhUhsaOVy55MHXnPjdcTX0FaLi+ybXZIfIQ2P4rb19mVq1feMbCXhz+L1rG8oa +t5lYKfpe8k83ZA== +-----END RSA PRIVATE KEY-----""" + + self.DEVICE_OLD_KEY = "aLFBMWpxBrIDAD1Si/KVvm41" + + # 设备信息(随机生成) + self.deviceId = str(864150060000000 + random.randint(0, 9999)) + self.deviceKey = ''.join(random.choices('0123456789ABCDEF', k=40)) # 20字节hex大写 + self.token = "" + self.token_id = "" + self.registered = False + + self.header = { + 'User-Agent': 'Lavf/57.83.100', + 'code': 'GZ0369', + 'deviceId': self.deviceId, + 'lang': 'zh_cn', + 'Cache-Control': 'no-cache', + 'Content-Type': 'application/x-www-form-urlencoded', + 'Version': '2604028', + 'PackageName': 'com.ae06aebdbb.y286327f5a.ofe849883320260517', + 'Ver': '3.0.3.2', + 'api-ver': '3.0.3.2', + 'Referer': self.host + } + + self.cache = {} + self.cache_timeout = 300 + + # 初始化token + self.init_token() + + def getName(self): + return self.name + + def init(self, extend=''): + pass + + # ---------- 设备注册与认证 ---------- + def init_token(self): + """初始化token:注册设备 -> 刷新""" + print("===== 初始化设备认证 =====") + try: + if not self.registered: + self.sign_up() + # 刷新获取最终token + self.refresh_token() + except Exception as e: + print(f"初始化token失败: {e}") + # 兜底使用原有硬编码(几乎没用) + self.token = '024212ef0975c5306a1434e113a46463.bc77313e11a248558a6ca244ca980944ec3421fa480c50e0229ad91f1cb15aea582603202cd71796885c9e5163e500f1b72f737059aff1ddb8beea47c5a331d6760540345b7f88b2302a0e6e09589f9dcf3ff9175d8c905f990203f5fc04748008ea7a366571cbf5b09509a873dcfba3cf1d5590385f5f7ef6e01d1850974aa220eb5178c89e61c24411af9b9a19435e.06fde789ece48d9b33c5dc857e04e9b5838f08264d928b87237d3476c4484b46' + + def sign_up(self): + """注册设备""" + print("注册新设备...") + params = { + "new_key": self.deviceKey, + "old_key": self.DEVICE_OLD_KEY, + "phone_type": 1, + "code": "" + } + result = self._auth_request('/App/Authentication/Device/signUp', params) + self._apply_auth(result) + self.registered = True + + def sign_in(self): + """登录设备""" + print("设备登录...") + params = { + "new_key": self.deviceKey, + "old_key": self.DEVICE_OLD_KEY + } + result = self._auth_request('/App/Authentication/Device/signIn', params) + self._apply_auth(result) + + def _apply_auth(self, result): + """从认证响应中提取token""" + new_token = result.get('token', '') + if not new_token: + raise Exception("认证失败,无token返回: {}".format(result)) + self.token = new_token + new_token_id = result.get('app_user_id', '') + if new_token_id: + self.token_id = new_token_id + print(f"获取token成功, token前缀: {self.token[:30]}...") + + def refresh_token(self): + """刷新token""" + print("刷新token...") + result = self._auth_request('/App/Authentication/Authenticator/refresh', {}) + self._apply_auth(result) + + def _auth_request(self, path, params): + """认证类请求(不需要ensure_token)""" + return self._send_encrypted_request(params, path, is_auth=True) + + # ---------- 业务请求核心(修复加密与签名) ---------- + def ensure_token(self): + """确保token有效,如未就绪则重新获取""" + if not self.token or not self.token_id: + if self.registered: + self.sign_in() + else: + self.sign_up() + self.refresh_token() + + def _send_encrypted_request(self, data, path, is_auth=False): + """ + 发送加密请求,返回解密后的字典 + :param data: 业务参数字典 + :param path: 请求路径 + :param is_auth: 是否为认证类请求(signUp/signIn/refresh),此时不使用ensure_token + """ + try: + if not is_auth: + self.ensure_token() + + # 1. 将参数转为JSON并AES加密 + json_params = json.dumps(data) + encrypted = self.aes_encrypt(json_params, self.AES_KEY, self.AES_IV) + request_key = encrypted.upper() # Java中是bytesToHex(encrypted).toUpperCase() + + # 2. 生成keys (RSA加密 iv/key JSON) + key_json = json.dumps({"iv": self.AES_IV, "key": self.AES_KEY}) + keys = self.rsa_encrypt(key_json, self.RSA_PUBLIC_KEY) + + # 3. 生成签名 + t = str(int(time.time())) + sign_str = f"token_id=,token={self.token},phone_type=1,request_key={request_key},app_id=1,time={t},keys={keys}*&zvdvdvddbfikkkumtmdwqppp?|4Y!s!2br" + signature = self.get_md5(sign_str) # 已改为大写 + + # 4. 构建请求体 + body = { + 'token': self.token, + 'token_id': '', + 'phone_type': '1', + 'time': t, + 'phone_model': 'xiaomi-25031', # 与Java版保持一致 + 'keys': keys, + 'request_key': request_key, + 'signature': signature, + 'app_id': '1', + 'ad_version': '1' + } + + # 5. 发送请求 + url = f"{self.host}{path}" + response = self.post(url, headers=self.header, data=body, timeout=10) + + if response.status_code != 200: + raise Exception(f"HTTP {response.status_code}") + + resp_json = response.json() + # 检查业务code(若不为200可能token过期) + if 'code' in resp_json and resp_json['code'] != 200: + print(f"业务错误码: {resp_json['code']}, 信息: {resp_json}") + # 如果不是认证请求,尝试重新获取token后重试一次(这里简单处理,外层get_data已有重试) + raise Exception("业务错误") + + data_section = resp_json.get('data') + if not data_section: + raise Exception("响应缺少data字段") + + encrypted_response = data_section.get('response_key', '') + encrypted_keys = data_section.get('keys', '') + + # 6. 解密响应 + decrypted_keys_json = self.rsa_decrypt(encrypted_keys, self.RSA_PRIVATE_KEY) + key_info = json.loads(decrypted_keys_json) + resp_key = key_info['key'] + resp_iv = key_info['iv'] + decrypted_data = self.aes_decrypt(encrypted_response, resp_key, resp_iv) + return json.loads(decrypted_data) + + except Exception as e: + print(f"请求失败 [{path}]: {e}") + return None + + def get_data(self, data, path, use_cache=True): + """带重试和域名轮询的数据获取(保持原框架)""" + try: + cache_key = f"{path}_{hash(str(data))}" if use_cache else None + if use_cache and cache_key in self.cache: + cached_data, timestamp = self.cache[cache_key] + if time.time() - timestamp < self.cache_timeout: + return cached_data + + for attempt in range(3): + tried = 0 + while tried < len(self.hosts): + self.host = self.hosts[self.host_index] + self.header['Referer'] = self.host + result = self._send_encrypted_request(data, path) + if result is not None: + print(f"请求成功: {path}, 域名: {self.host}") + if use_cache and cache_key: + self.cache[cache_key] = (result, time.time()) + return result + + # 切换到下一个域名 + self.host_index = (self.host_index + 1) % len(self.hosts) + tried += 1 + + # 所有域名失败,尝试重新认证并重试 + if attempt < 2: + print("所有域名失败,尝试重新认证...") + try: + self.ensure_token() + except: + pass + self.host_index = 0 + else: + break + return None + except Exception as e: + print(f"get_data异常: {e}") + return None + + # ---------- 加解密工具 ---------- + def aes_encrypt(self, text, key, iv): + try: + key_bytes = key.encode('utf-8') + iv_bytes = iv.encode('utf-8') + cipher = AES.new(key_bytes, AES.MODE_CBC, iv_bytes) + encrypted = cipher.encrypt(pad(text.encode('utf-8'), AES.block_size)) + return encrypted.hex().upper() + except Exception as e: + print(f"AES加密失败: {e}") + return "" + + def aes_decrypt(self, text, key, iv): + try: + key_bytes = key.encode('utf-8') + iv_bytes = iv.encode('utf-8') + cipher = AES.new(key_bytes, AES.MODE_CBC, iv_bytes) + encrypted_bytes = bytes.fromhex(text) + decrypted = unpad(cipher.decrypt(encrypted_bytes), AES.block_size) + return decrypted.decode('utf-8') + except Exception as e: + print(f"AES解密失败: {e}") + return "" + + def rsa_encrypt(self, text, public_key_str): + """RSA公钥加密(PKCS1v1.5)""" + try: + key = RSA.import_key("-----BEGIN PUBLIC KEY-----\n" + public_key_str + "\n-----END PUBLIC KEY-----") + cipher = PKCS1_v1_5.new(key) + encrypted = cipher.encrypt(text.encode('utf-8')) + return base64.b64encode(encrypted).decode('utf-8') + except Exception as e: + print(f"RSA加密失败: {e}") + return "" + + def rsa_decrypt(self, encrypted_data, private_key_str): + """RSA私钥解密""" + try: + encrypted_bytes = base64.b64decode(encrypted_data) + rsa_key = RSA.import_key(private_key_str) + cipher = PKCS1_v1_5.new(rsa_key) + decrypted = cipher.decrypt(encrypted_bytes, None) + return decrypted.decode('utf-8') if decrypted else "" + except Exception as e: + print(f"RSA解密失败: {e}") + return "" + + def get_md5(self, text): + return hashlib.md5(text.encode()).hexdigest().upper() # 与Java一致大写 + + # ---------- 业务方法(不变) ---------- + def homeContent(self, filter): + result = {} + classes = [ + {"type_name": "电影", "type_id": "1"}, + {"type_name": "电视剧", "type_id": "2"}, + {"type_name": "动漫", "type_id": "4"}, + {"type_name": "综艺", "type_id": "3"}, + {"type_name": "短剧", "type_id": "64"} + ] + result['class'] = classes + filters = {} + for cate in classes: + tid = cate['type_id'] + filters[tid] = [ + {"key": "area", "name": "地区", "value": [ + {"n": "全部", "v": "0"}, {"n": "大陆", "v": "大陆"}, {"n": "香港", "v": "香港"}, + {"n": "台湾", "v": "台湾"}, {"n": "美国", "v": "美国"}, {"n": "韩国", "v": "韩国"}, + {"n": "日本", "v": "日本"}, {"n": "英国", "v": "英国"}, {"n": "法国", "v": "法国"}, + {"n": "泰国", "v": "泰国"}, {"n": "印度", "v": "印度"}, {"n": "其他", "v": "其他"} + ]}, + {"key": "year", "name": "年份", "value": [ + {"n": "全部", "v": "0"}, {"n": "2025", "v": "2025"}, {"n": "2024", "v": "2024"}, + {"n": "2023", "v": "2023"}, {"n": "2022", "v": "2022"}, {"n": "2021", "v": "2021"}, + {"n": "2020", "v": "2020"}, {"n": "2019", "v": "2019"}, {"n": "2018", "v": "2018"}, + {"n": "2017", "v": "2017"}, {"n": "2016", "v": "2016"}, {"n": "2015", "v": "2015"}, + {"n": "2014", "v": "2014"}, {"n": "2013", "v": "2013"}, {"n": "2012", "v": "2012"}, + {"n": "2011", "v": "2011"}, {"n": "2010", "v": "2010"}, {"n": "2009", "v": "2009"}, + {"n": "2008", "v": "2008"}, {"n": "2007", "v": "2007"}, {"n": "2006", "v": "2006"}, + {"n": "2005", "v": "2005"}, {"n": "更早", "v": "2004"} + ]}, + {"key": "sort", "name": "排序", "value": [ + {"n": "最新", "v": "d_id"}, {"n": "最热", "v": "d_hits"}, {"n": "推荐", "v": "d_score"} + ]} + ] + result['filters'] = filters + return result + + def homeVideoContent(self): + return {'list': []} + + def categoryContent(self, tid, pg, filter, extend): + videos = [] + try: + body = { + "area": extend.get('area', '0'), + "year": extend.get('year', '0'), + "pageSize": "30", + "sort": extend.get('sort', 'd_id'), + "page": str(pg), + "tid": tid + } + cache_key = f"category_{tid}_{pg}_{hash(str(body))}" + data = self.get_cached_data(cache_key, body, '/App/IndexList/indexList') + if data and 'list' in data: + for item in data['list']: + vod_continu = item.get('vod_continu', 0) + remarks = '电影' if vod_continu == 0 else f'更新至{vod_continu}集' + video = { + "vod_id": f"{item.get('vod_id', '')}/{vod_continu}", + "vod_name": item.get('vod_name', ''), + "vod_pic": item.get('vod_pic', ''), + "vod_remarks": remarks + } + videos.append(video) + except Exception as e: + print(f"获取分类内容失败: {e}") + return {'list': videos, 'page': int(pg), 'pagecount': 9999, 'limit': 30, 'total': 999999} + + def detailContent(self, ids): + try: + vod_id = ids[0].split('/')[0] + t = str(int(time.time())) + body1 = {"token_id": self.token_id, "vod_id": vod_id, "mobile_time": t, "token": self.token} + qdata = self.get_data(body1, '/App/IndexPlay/playInfo') + body2 = {"vurl_cloud_id": "2", "vod_d_id": vod_id} + jdata = self.get_data(body2, '/App/Resource/Vurl/show') + if not qdata or 'vodInfo' not in qdata: + return {'list': []} + vod = qdata['vodInfo'] + video_detail = { + "vod_id": vod_id, + "vod_name": vod.get('vod_name', ''), + "vod_pic": vod.get('vod_pic', ''), + "vod_year": vod.get('vod_year', ''), + "vod_area": vod.get('vod_area', ''), + "vod_actor": vod.get('vod_actor', ''), + "vod_director": vod.get('vod_director', ''), + "vod_content": vod.get('vod_use_content', '').strip(), + "vod_play_from": "瓜子影视" + } + play_list = [] + if jdata and 'list' in jdata: + for index, item in enumerate(jdata['list']): + if 'play' in item: + n, p = [], [] + for key, value in item['play'].items(): + if 'param' in value and value['param']: + n.append(key) + p.append(value['param']) + if p: + play_name = str(index + 1) if len(jdata['list']) != 1 else vod.get('vod_name', '') + play_url = f"{p[-1]}||{'@'.join(n)}" + play_list.append(f"{play_name}${play_url}") + video_detail["vod_play_url"] = "#".join(play_list) + return {'list': [video_detail]} + except Exception as e: + print(f"获取详情失败: {e}") + return {'list': []} + + def searchContent(self, key, quick, pg=1): + videos = [] + try: + body = {"keywords": key, "order_val": "1", "page": str(pg)} + data = self.get_data(body, '/App/Index/findMoreVod', use_cache=False) + if data and 'list' in data: + for item in data['list']: + vod_continu = item.get('vod_continu', 0) + remarks = '电影' if vod_continu == 0 else f'更新至{vod_continu}集' + videos.append({ + "vod_id": f"{item.get('vod_id', '')}/{vod_continu}", + "vod_name": item.get('vod_name', ''), + "vod_pic": item.get('vod_pic', ''), + "vod_remarks": remarks + }) + except Exception as e: + print(f"搜索失败: {e}") + return {'list': videos, 'page': int(pg), 'pagecount': 9999, 'limit': 30, 'total': 999999} + + def playerContent(self, flag, id, vipFlags): + try: + parts = id.split('||') + if len(parts) < 2: + return {"parse": 0, "playUrl": "", "url": ""} + param_str = parts[0] + resolutions = parts[1].split('@') if len(parts) > 1 else [] + params = {} + for pair in param_str.split('&'): + if '=' in pair: + key, value = pair.split('=', 1) + params[key] = value + if resolutions: + resolutions.sort(key=lambda x: int(x) if x.isdigit() else 0, reverse=True) + params['resolution'] = resolutions[0] + data = self.get_data(params, '/App/Resource/VurlDetail/showOne', use_cache=False) + if data and 'url' in data: + return {"parse": 0, "playUrl": "", "url": data['url'], + "header": json.dumps({"User-Agent": "Lavf/57.83.100", "Referer": "http://WJiZxLXA2.com/"}), 'danmaku': 'http://127.0.0.1:9978/proxy?do=diydanmu'} + return {"parse": 0, "playUrl": "", "url": ""} + except Exception as e: + print(f"播放解析失败: {e}") + return {"parse": 0, "playUrl": "", "url": ""} + + def isVideoFormat(self, url): + video_formats = ['.m3u8', '.mp4', '.avi', '.mkv', '.flv', '.ts'] + return any(url.lower().endswith(fmt) for fmt in video_formats) + + def manualVideoCheck(self): + pass + + def localProxy(self, params): + return None + + def get_cached_data(self, cache_key, data, path): + current_time = time.time() + if cache_key in self.cache: + cached_data, timestamp = self.cache[cache_key] + if current_time - timestamp < self.cache_timeout: + return cached_data + result = self.get_data(data, path) + if result: + self.cache[cache_key] = (result, current_time) + return result + +if __name__ == '__main__': + pass \ No newline at end of file diff --git a/潇洒/movie/py/HCYS.py b/潇洒/movie/py/HCYS.py new file mode 100644 index 00000000..6a801796 --- /dev/null +++ b/潇洒/movie/py/HCYS.py @@ -0,0 +1,301 @@ +# -*- coding: utf-8 -*- +# by @嗷呜 +import sys +from urllib.parse import urlparse +sys.path.append("..") +import re +import hashlib +import hmac +import random +import string +from Crypto.Util.Padding import unpad +from concurrent.futures import ThreadPoolExecutor +from Crypto.PublicKey import RSA +from Crypto.Cipher import PKCS1_v1_5, AES +from base64 import b64encode, b64decode +import json +import time +from base.spider import Spider + + +class Spider(Spider): + + def init(self, extend=""): + self.device = self.device_id() + self.host = self.gethost() + pass + + def getName(self): + pass + + def isVideoFormat(self, url): + pass + + def manualVideoCheck(self): + pass + + def action(self, action): + pass + + def destroy(self): + pass + + def homeContent(self, filter): + result = {} + filters = {} + classes = [] + bba = self.url() + data = self.fetch(f"{self.host}/api/v1/app/config?pack={bba[0]}&signature={bba[1]}", headers=self.header()).text + data1 = self.aes(data) + dy = {"class": "类型", "area": "地区", "lang": "语言", "year": "年份", "letter": "字母", "by": "排序", + "sort": "排序"} + data1['data']['movie_screen']['sort'].pop(0) + for item in data1['data']['movie_screen']['sort']: + item['n'] = item.pop('name') + item['v'] = item.pop('value') + for item in data1['data']['movie_screen']['filter']: + has_non_empty_field = False + classes.append({"type_name": item["name"], "type_id": str(item["id"])}) + for key in dy: + if key in item and item[key]: + has_non_empty_field = True + break + if has_non_empty_field: + filters[str(item["id"])] = [] + filters[str(item["id"])].append( + {"key": 'sort', "name": '排序', "value": data1['data']['movie_screen']['sort']}) + for dkey in item: + if dkey in dy and item[dkey]: + item[dkey].pop(0) + value_array = [ + {"n": value.strip(), "v": value.strip()} + for value in item[dkey] + if value.strip() != "" + ] + filters[str(item["id"])].append( + {"key": dkey, "name": dy[dkey], "value": value_array} + ) + result["class"] = classes + result["filters"] = filters + return result + + def homeVideoContent(self): + bba = self.url() + url = f'{self.host}/api/v1/movie/index_recommend?pack={bba[0]}&signature={bba[1]}' + data = self.fetch(url, headers=self.header()).json() + videos = [] + for item in data['data']: + if len(item['list']) > 0: + for it in item['list']: + try: + videos.append(self.voides(it)) + except Exception as e: + continue + result = {"list": videos} + return result + + def categoryContent(self, tid, pg, filter, extend): + body = {"type_id": tid, "sort": extend.get("sort", "by_default"), "class": extend.get("class", "类型"), + "area": extend.get("area", "地区"), "year": extend.get("year", "年份"), "page": str(pg), + "pageSize": "21"} + result = {} + list = [] + bba = self.url(body) + url = f"{self.host}/api/v1/movie/screen/list?pack={bba[0]}&signature={bba[1]}" + data = self.fetch(url, headers=self.header()).json()['data']['list'] + for item in data: + list.append(self.voides(item)) + result["list"] = list + result["page"] = pg + result["pagecount"] = 9999 + result["limit"] = 90 + result["total"] = 999999 + return result + + def detailContent(self, ids): + body = {"id": ids[0]} + bba = self.url(body) + url = f'{self.host}/api/v1/movie/detail?pack={bba[0]}&signature={bba[1]}' + data = self.fetch(url, headers=self.header()).json()['data'] + video = {'vod_name': data.get('name'), 'type_name': data.get('type_name'), 'vod_year': data.get('year'), + 'vod_area': data.get('area'), 'vod_remarks': data.get('dynami'), 'vod_content': data.get('content')} + play = [] + names = [] + tasks = [] + for itt in data["play_from"]: + name = itt["name"] + a = [] + if len(itt["list"]) > 0: + names.append(name) + play.append(self.playeach(itt['list'])) + else: + tasks.append({"movie_id": ids[0], "from_code": itt["code"]}) + names.append(name) + if tasks: + with ThreadPoolExecutor(max_workers=len(tasks)) as executor: + results = executor.map(self.playlist, tasks) + for result in results: + if result: + play.append(result) + else: + play.append("") + video["vod_play_from"] = "$$$".join(names) + video["vod_play_url"] = "$$$".join(play) + result = {"list": [video]} + return result + + def searchContent(self, key, quick, pg=1): + body = {"keyword": key, "sort": "", "type_id": "0", "page": str(pg), "pageSize": "10", + "res_type": "by_movie_name"} + bba = self.url(body) + url = f"{self.host}/api/v1/movie/search?pack={bba[0]}&signature={bba[1]}" + data = self.fetch(url, headers=self.header()).json()['data'].get('list') + videos = [] + for it in data: + try: + videos.append(self.voides(it)) + except Exception as e: + continue + result = {"list": videos, "page": pg} + return result + + def playerContent(self, flag, id, vipFlags): + url = id + if not re.search(r"\.m3u8|\.mp4", url): + try: + data = json.loads(b64decode(id.encode('utf-8')).decode('utf-8')) + bba = self.url(data) + data2 = self.fetch(f"{self.host}/api/v1/movie_addr/parse_url?pack={bba[0]}&signature={bba[1]}", + headers=self.header()).json()['data'] + url = data2.get('play_url') or data2.get('download_url') + except Exception as e: + pass + if re.search(r'\.jpg|\.png|\.jpeg', url): + url = self.Mproxy(url) + result = {} + result["parse"] = 0 + result["url"] = url + result["header"] = {'user-agent': 'okhttp/4.9.2'} + return result + + def localProxy(self, param): + return self.Mlocal(param) + + def Mproxy(self, url): + return self.getProxyUrl() + "&url=" + b64encode(url.encode('utf-8')).decode('utf-8') + "&type=m3u8" + + def Mlocal(self, param,header=None): + url = self.d64(param["url"]) + ydata = self.fetch(url, headers=header, allow_redirects=False) + data = ydata.content.decode('utf-8') + if ydata.headers.get('Location'): + url = ydata.headers['Location'] + data = self.fetch(url, headers=header).content.decode('utf-8') + parsed_url = urlparse(url) + durl = parsed_url.scheme + "://" + parsed_url.netloc + lines = data.strip().split('\n') + for index, string in enumerate(lines): + if '#EXT' not in string and 'http' not in string: + last_slash_index = string.rfind('/') + lpath = string[:last_slash_index + 1] + lines[index] = durl + ('' if lpath.startswith('/') else '/') + lpath + data = '\n'.join(lines) + return [200, "application/vnd.apple.mpegur", data] + + def device_id(self): + characters = string.ascii_lowercase + string.digits + random_string = ''.join(random.choices(characters, k=32)) + return random_string + + def gethost(self): + try: + url = 'https://dns.alidns.com/dns-query' + headers = { + 'User-Agent': 'okhttp/4.9.2', + 'Accept': 'application/dns-message' + } + params = { + 'dns': 'AAABAAABAAAAAAAACWJmbTExYXM5ZgdmdXFpeXVuAmNuAAAcAAE' + } + response = self.fetch(url, headers=headers, params=params) + host=self.parse_dns_name(response.content, 12) + return f"https://{host}" + except: + return "https://bfm11as9f.fuqiyun.cn" + + def parse_dns_name(self, data, offset): + parts = [] + while True: + length = data[offset] + if length == 0: + break + offset += 1 + parts.append(data[offset:offset + length].decode('utf-8')) + offset += length + return '.'.join(parts) + + def header(self): + headers = { + 'User-Agent': 'Android', + 'Accept': 'application/prs.55App.v2+json', + 'timestamp': str(int(time.time())), + 'x-client-setting': '{"pure-mode":0}', + 'x-client-uuid': '{"device_id":' + self.device + '}, "type":1,"brand":"Redmi", "model":"M2012K10C", "system_version":30, "sdk_version":"3.1.0.7"}', + 'x-client-version': '3096 ' + } + return headers + + def url(self, id=None): + if not id: + id = {} + id["timestamp"] = str(int(time.time())) + public_key = 'MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA02F/kPg5A2NX4qZ5JSns+bjhVMCC6JbTiTKpbgNgiXU+Kkorg6Dj76gS68gB8llhbUKCXjIdygnHPrxVHWfzmzisq9P9awmXBkCk74Skglx2LKHa/mNz9ivg6YzQ5pQFUEWS0DfomGBXVtqvBlOXMCRxp69oWaMsnfjnBV+0J7vHbXzUIkqBLdXSNfM9Ag5qdRDrJC3CqB65EJ3ARWVzZTTcXSdMW9i3qzEZPawPNPe5yPYbMZIoXLcrqvEZnRK1oak67/ihf7iwPJqdc+68ZYEmmdqwunOvRdjq89fQMVelmqcRD9RYe08v+xDxG9Co9z7hcXGTsUquMxkh29uNawIDAQAB' + encrypted_text = json.dumps(id) + public_key = RSA.import_key(b64decode(public_key)) + cipher = PKCS1_v1_5.new(public_key) + encrypted_message = cipher.encrypt(encrypted_text.encode('utf-8')) + encrypted_message_base64 = b64encode(encrypted_message).decode('utf-8') + result = encrypted_message_base64.replace('+', '-').replace('/', '_').replace('=', '') + key = '635a580fcb5dc6e60caa39c31a7bde48' + sign = hmac.new(key.encode(), result.encode(), hashlib.md5).hexdigest() + return result, sign + + def playlist(self, body): + try: + bba = self.url(body) + url = f'{self.host}/api/v1/movie_addr/list?pack={bba[0]}&signature={bba[1]}' + data = self.fetch(url, headers=self.header()).json()['data'] + return self.playeach(data) + except Exception: + return [] + + def playeach(self, data): + play_urls = [] + for it in data: + if re.search(r"mp4|m3u8", it["play_url"]): + play_urls.append(f"{it['episode_name']}${it['play_url']}") + else: + vd={"from_code": it['from_code'], "play_url": it['play_url'], "episode_id": it['episode_id'], "type": "play"} + play_urls.append( + f"{it['episode_name']}${b64encode(json.dumps(vd).encode('utf-8')).decode('utf-8')}" + ) + return '#'.join(play_urls) + + def voides(self, item): + if item['name'] or item['title']: + voide = { + "vod_id": item.get('id') or item.get('click'), + 'vod_name': item.get('name') or item.get('title'), + 'vod_pic': item.get('cover') or item.get('image'), + 'vod_year': item.get('year') or item.get('label'), + 'vod_remarks': item.get('dynamic') or item.get('sub_title') + } + return voide + + def aes(self, text): + text = text.replace('-', '+').replace('_', '/') + '==' + key = b"e6d5de5fcc51f53d" + iv = b"2f13eef7dfc6c613" + cipher = AES.new(key, AES.MODE_CBC, iv) + pt = unpad(cipher.decrypt(b64decode(text)), AES.block_size).decode("utf-8") + return json.loads(pt) diff --git a/潇洒/movie/py/HMDJ.py b/潇洒/movie/py/HMDJ.py new file mode 100644 index 00000000..00855072 --- /dev/null +++ b/潇洒/movie/py/HMDJ.py @@ -0,0 +1,380 @@ +# -*- coding: utf-8 -*- +import requests +import re +import json +import traceback +import sys +from urllib.parse import quote + +sys.path.append('../../') +try: + from base.spider import Spider +except ImportError: + # 定义一个基础接口类,用于本地测试 + class Spider: + def init(self, extend=""): + pass + +class Spider(Spider): + def __init__(self): + self.siteUrl = "https://www.kuaikaw.cn" + self.cateManual = { + "甜宠": "462", + "古装仙侠": "1102", + "现代言情": "1145", + "青春": "1170", + "豪门恩怨": "585", + "逆袭": "417-464", + "重生": "439-465", + "系统": "1159", + "总裁": "1147", + "职场商战": "943" + } + self.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 Edg/120.0.0.0", + "Referer": self.siteUrl, + "Accept": "text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8", + "Accept-Language": "zh-CN,zh;q=0.9,en;q=0.8" + } + + def getName(self): + return "河马短剧" + + def init(self, extend=""): + return + + def fetch(self, url, headers=None, retry=2): + """统一的网络请求接口""" + if headers is None: + headers = self.headers + + for i in range(retry + 1): + try: + response = requests.get(url, headers=headers, timeout=10, allow_redirects=True) + response.raise_for_status() + return response + except Exception as e: + if i == retry: + print(f"请求异常: {url}, 错误: {str(e)}") + return None + continue + + def isVideoFormat(self, url): + video_formats = ['.mp4', '.mkv', '.avi', '.wmv', '.m3u8', '.flv', '.rmvb'] + return any(format in url.lower() for format in video_formats) + + def manualVideoCheck(self): + return False + + def homeContent(self, filter): + result = {} + classes = [{'type_name': k, 'type_id': v} for k, v in self.cateManual.items()] + result['class'] = classes + + try: + result['list'] = self.homeVideoContent()['list'] + except: + result['list'] = [] + return result + + def homeVideoContent(self): + videos = [] + try: + response = self.fetch(self.siteUrl) + if not response: + return {'list': []} + + html_content = response.text + next_data_pattern = r'' + next_data_match = re.search(next_data_pattern, html_content, re.DOTALL) + if not next_data_match: + return {'list': []} + + next_data_json = json.loads(next_data_match.group(1)) + page_props = next_data_json.get("props", {}).get("pageProps", {}) + + # 处理轮播图数据 + if "bannerList" in page_props: + for banner in page_props["bannerList"]: + if banner.get("bookId"): + videos.append({ + "vod_id": f"/drama/{banner['bookId']}", + "vod_name": banner.get("bookName", ""), + "vod_pic": banner.get("coverWap", ""), + "vod_remarks": f"{banner.get('statusDesc', '')} {banner.get('totalChapterNum', '')}集".strip() + }) + + # 处理SEO分类推荐 + if "seoColumnVos" in page_props: + for column in page_props["seoColumnVos"]: + for book in column.get("bookInfos", []): + if book.get("bookId"): + videos.append({ + "vod_id": f"/drama/{book['bookId']}", + "vod_name": book.get("bookName", ""), + "vod_pic": book.get("coverWap", ""), + "vod_remarks": f"{book.get('statusDesc', '')} {book.get('totalChapterNum', '')}集".strip() + }) + + # 去重处理 + seen = set() + unique_videos = [] + for video in videos: + key = (video["vod_id"], video["vod_name"]) + if key not in seen: + seen.add(key) + unique_videos.append(video) + + except Exception as e: + print(f"获取首页推荐内容出错: {e}") + unique_videos = [] + + return {'list': unique_videos} + + def categoryContent(self, tid, pg, filter, extend): + result = {'list': [], 'page': pg, 'pagecount': 1, 'limit': 20, 'total': 0} + url = f"{self.siteUrl}/browse/{tid}/{pg}" + + response = self.fetch(url) + if not response: + return result + + html_content = response.text + next_data_match = re.search(r'', html_content, re.DOTALL) + if not next_data_match: + return result + + try: + next_data_json = json.loads(next_data_match.group(1)) + page_props = next_data_json.get("props", {}).get("pageProps", {}) + + current_page = page_props.get("page", 1) + total_pages = page_props.get("pages", 1) + book_list = page_props.get("bookList", []) + + videos = [] + for book in book_list: + if book.get("bookId"): + videos.append({ + "vod_id": f"/drama/{book['bookId']}", + "vod_name": book.get("bookName", ""), + "vod_pic": book.get("coverWap", ""), + "vod_remarks": f"{book.get('statusDesc', '')} {book.get('totalChapterNum', '')}集".strip() + }) + + result.update({ + 'list': videos, + 'page': int(current_page), + 'pagecount': total_pages, + 'limit': len(videos), + 'total': len(videos) * total_pages if videos else 0 + }) + + except Exception as e: + print(f"分类内容获取出错: {e}") + + return result + + def searchContent(self, key, quick, pg=1): + return self.searchContentPage(key, quick, pg) + + def searchContentPage(self, key, quick, pg=1): + result = {'list': [], 'page': pg, 'pagecount': 1, 'limit': 20, 'total': 0} + search_url = f"{self.siteUrl}/search?searchValue={quote(key)}&page={pg}" + + response = self.fetch(search_url) + if not response: + return result + + html_content = response.text + next_data_match = re.search(r'', html_content, re.DOTALL) + if not next_data_match: + return result + + try: + next_data_json = json.loads(next_data_match.group(1)) + page_props = next_data_json.get("props", {}).get("pageProps", {}) + + total_pages = page_props.get("pages", 1) + book_list = page_props.get("bookList", []) + + videos = [] + for book in book_list: + if book.get("bookId"): + videos.append({ + "vod_id": f"/drama/{book['bookId']}", + "vod_name": book.get("bookName", ""), + "vod_pic": book.get("coverWap", ""), + "vod_remarks": f"{book.get('statusDesc', '')} {book.get('totalChapterNum', '')}集".strip() + }) + + result.update({ + 'list': videos, + 'pagecount': total_pages, + 'total': len(videos) * total_pages if videos else 0 + }) + + except Exception as e: + print(f"搜索内容出错: {e}") + + return result + + def detailContent(self, ids): + result = {'list': []} + if not ids: + return result + + vod_id = ids[0] + if not vod_id.startswith('/drama/'): + vod_id = f'/drama/{vod_id}' + + drama_url = f"{self.siteUrl}{vod_id}" + response = self.fetch(drama_url) + if not response: + return result + + html = response.text + next_data_match = re.search(r'', html, re.DOTALL) + if not next_data_match: + return result + + try: + next_data = json.loads(next_data_match.group(1)) + page_props = next_data.get("props", {}).get("pageProps", {}) + book_info = page_props.get("bookInfoVo", {}) + chapter_list = page_props.get("chapterList", []) + + if not book_info.get("bookId"): + return result + + # 基本信息 + categories = [c.get("name", "") for c in book_info.get("categoryList", [])] + performers = [p.get("name", "") for p in book_info.get("performerList", [])] + + vod = { + "vod_id": vod_id, + "vod_name": book_info.get("title", ""), + "vod_pic": book_info.get("coverWap", ""), + "type_name": ",".join(categories), + "vod_year": "", + "vod_area": book_info.get("countryName", ""), + "vod_remarks": f"{book_info.get('statusDesc', '')} {book_info.get('totalChapterNum', '')}集".strip(), + "vod_actor": ", ".join(performers), + "vod_director": "", + "vod_content": book_info.get("introduction", "") + } + + # 处理剧集 + play_urls = self.processEpisodes(vod_id, chapter_list) + if play_urls: + vod['vod_play_from'] = '河马剧场' + vod['vod_play_url'] = '$$$'.join(play_urls) + + result['list'] = [vod] + + except Exception as e: + print(f"详情页解析出错: {e}") + traceback.print_exc() + + return result + + def processEpisodes(self, vod_id, chapter_list): + play_urls = [] + episodes = [] + + for chapter in chapter_list: + chapter_id = chapter.get("chapterId", "") + chapter_name = chapter.get("chapterName", "") + + if not chapter_id or not chapter_name: + continue + + # 尝试获取直接视频链接 + video_url = self.getDirectVideoUrl(chapter) + if video_url: + episodes.append(f"{chapter_name}${video_url}") + continue + + # 回退方案 + episodes.append(f"{chapter_name}${vod_id}${chapter_id}${chapter_name}") + + if episodes: + play_urls.append("#".join(episodes)) + + return play_urls + + def getDirectVideoUrl(self, chapter): + if "chapterVideoVo" not in chapter or not chapter["chapterVideoVo"]: + return None + + video_info = chapter["chapterVideoVo"] + for key in ["mp4", "mp4720p", "vodMp4Url"]: + if key in video_info and video_info[key] and ".mp4" in video_info[key].lower(): + return video_info[key] + return None + + def playerContent(self, flag, id, vipFlags): + result = { + "parse": 0, + "url": id, + "header": json.dumps(self.headers) + } + + # 如果已经是视频链接直接返回 + if 'http' in id and ('.mp4' in id or '.m3u8' in id): + return result + + # 解析参数 + parts = id.split('$') + if len(parts) < 2: + return result + + drama_id = parts[0].replace('/drama/', '') + chapter_id = parts[1] + + # 尝试获取视频链接 + video_url = self.getEpisodeVideoUrl(drama_id, chapter_id) + if video_url: + result["url"] = video_url + + return result + + def getEpisodeVideoUrl(self, drama_id, chapter_id): + episode_url = f"{self.siteUrl}/episode/{drama_id}/{chapter_id}" + response = self.fetch(episode_url) + if not response: + return None + + html = response.text + + # 方法1: 从NEXT_DATA提取 + next_data_match = re.search(r'', html, re.DOTALL) + if next_data_match: + try: + next_data = json.loads(next_data_match.group(1)) + page_props = next_data.get("props", {}).get("pageProps", {}) + chapter_info = page_props.get("chapterInfo", {}) + + if chapter_info and "chapterVideoVo" in chapter_info: + video_info = chapter_info["chapterVideoVo"] + for key in ["mp4", "mp4720p", "vodMp4Url"]: + if key in video_info and video_info[key] and ".mp4" in video_info[key].lower(): + return video_info[key] + except: + pass + + # 方法2: 直接从HTML提取 + mp4_matches = re.findall(r'(https?://[^"\']+\.mp4)', html) + if mp4_matches: + for url in mp4_matches: + if chapter_id in url or drama_id in url: + return url + return mp4_matches[0] + + return None + + def localProxy(self, param): + return [200, "video/MP2T", {}, param] + + def destroy(self): + pass \ No newline at end of file diff --git a/潇洒/movie/py/HPYS.py b/潇洒/movie/py/HPYS.py new file mode 100644 index 00000000..511ddfeb --- /dev/null +++ b/潇洒/movie/py/HPYS.py @@ -0,0 +1,146 @@ +# -*- coding: utf-8 -*- +# by @嗷呜 +import sys +sys.path.append('..') +from base.spider import Spider +import requests + + +class Spider(Spider): + + def init(self, extend=""): + pass + + def getName(self): + return "hitv" + + def isVideoFormat(self, url): + pass + + def manualVideoCheck(self): + pass + + def destroy(self): + pass + + def homeContent(self, filter): + result = {} + cateManual = { + # "直播": "live", + '排行榜': 'rank', + "电影": "1", + "剧集": "2", + "综艺": "3", + "动画": "4", + "短片": "5" + } + classes = [] + for k in cateManual: + classes.append({ + 'type_name': k, + 'type_id': cateManual[k] + }) + result['class'] = classes + return result + + host = "https://wys.upfuhn.com" + headers = { + "User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) " + "Chrome/80.0.3987.149 Safari/537.36" + } + + def list(self, list): + videos = [] + for it in list: + videos.append({ + "vod_id": it['video_site_id'], + "vod_name": it['video_name'], + "vod_pic": it['video_horizontal_url'] or it['video_vertical_url'], + "vod_remarks": it['newest_series_num'], + "vod_year": it['years'], + }) + return videos + + def homeVideoContent(self): + url = f'{self.host}/v1/ys_video_sites/hot?t=1' + data = requests.get(url, headers=self.headers).json() + videos = self.list(data['data']['data']) + result = {'list': videos} + return result + + def categoryContent(self, tid, pg, filter, extend): + path = f'/v1/ys_video_sites?t={tid}&s_t=0&a&y&o=0&ps=21&pn={pg}' + rank = False + if tid == 'rank': + if pg == 1: + path = f'/v1/ys_video_sites/ranking' + rank = True + else: + path = '' + # elif tid == 'live' and pg == 1: + # path = f'/v1/ys_live_tvs' + videos = [] + result = {} + try: + data = requests.get(self.host + path, headers=self.headers).json() + if rank: + for video in data['data']: + videos.extend(data['data'][video]) + else: + videos = data['data']['data'] + result = {} + result['list'] = self.list(videos) + result['page'] = pg + result['pagecount'] = 9999 + result['limit'] = 90 + result['total'] = 999999 + except: + result['list'] = [] + return result + + def detailContent(self, ids): + tid = ids[0] + url = f'{self.host}/v1/ys_video_series/by_vid/{tid}' + data = requests.get(url, headers=self.headers).json() + data1 = data['data']['ys_video_site'] + urls = [] + for it in data['data']['data']: + urls.append(it['series_num'] + '$' + it['video_url']) + vod = { + 'vod_name': data1['video_name'], + 'type_name': data1['tag'], + 'vod_year': data1['years'], + 'vod_area': data1['area'], + 'vod_director': data1['main_actor'], + 'vod_content': data1['video_desc'], + 'vod_play_from': '嗨皮在线', + 'vod_play_url': '#'.join(urls), + } + result = { + 'list': [ + vod + ] + } + return result + + def searchContent(self, key, quick, pg=1): + url = f'{self.host}/v1/ys_video_sites/search?s={key}&o=0&ps=200&pn={pg}' + data = requests.get(url, headers=self.headers).json() + videos = data['data']['video_sites'] + if data['data']['first_video_series'] is not None: + videos = [data['data']['first_video_series']] + videos + result = {} + result['list'] = self.list(videos) + result['page'] = pg + return result + + def playerContent(self, flag, id, vipFlags): + result = { + 'url': id, + 'parse': 0, + 'header': self.headers + } + return result + + def localProxy(self, param): + pass diff --git a/潇洒/movie/py/JLDJ.py b/潇洒/movie/py/JLDJ.py new file mode 100644 index 00000000..a69c726e --- /dev/null +++ b/潇洒/movie/py/JLDJ.py @@ -0,0 +1,147 @@ +from base.spider import Spider +import re,sys,json +sys.path.append('..') + +class Spider(Spider): + api_host = 'https://api.jinlidj.com' + origin = 'https://www.jinlidj.com' + api_path = '/api/search' + headers = { + 'User-Agent': "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/138.0.0.0 Safari/537.36", + 'Content-Type': "application/json", + 'accept-language': "zh-CN,zh;q=0.9", + 'cache-control': "no-cache", + 'origin': origin, + 'pragma': "no-cache", + 'priority': "u=1, i", + 'referer': origin+'/', + 'sec-ch-ua': "\"Not)A;Brand\";v=\"8\", \"Chromium\";v=\"138\", \"Google Chrome\";v=\"138\"", + 'sec-ch-ua-mobile': "?0", + 'sec-ch-ua-platform': "\"Windows\"", + 'sec-fetch-dest': "empty", + 'sec-fetch-mode': "cors", + 'sec-fetch-site': "same-site" + } + + def homeContent(self, filter): + return {'class': [{'type_id': 1, 'type_name': '情感关系'}, {'type_id': 2, 'type_name': '成长逆袭'}, {'type_id': 3, 'type_name': '奇幻异能'}, {'type_id': 4, 'type_name': '战斗热血'}, {'type_id': 5, 'type_name': '伦理现实'}, {'type_id': 6, 'type_name': '时空穿越'}, {'type_id': 7, 'type_name': '权谋身份'}]} + + def homeVideoContent(self): + payload = { + "page": 1, + "limit": 24, + "type_id": "", + "year": "", + "keyword": "" + } + response = self.post(f"{self.api_host}{self.api_path}", data=json.dumps(payload), headers=self.headers).json() + data = response['data'] + videos = [] + for i in data['list']: + videos.append({ + 'vod_id': i.get('vod_id'), + 'vod_name': i.get('vod_name'), + 'vod_class': i.get('vod_class'), + 'vod_pic': i.get('vod_pic'), + 'vod_year': i.get('vod_year'), + 'vod_remarks': i.get('vod_total')+'集', + 'vod_score': i.get('vod_score') + }) + return {'list': videos} + + def detailContent(self, ids): + response = self.post(f'{self.api_host}/api/detail/{ids[0]}', data=json.dumps({}), headers=self.headers).json() + data = response['data'] + videos = [] + vod_play_url = '' + for name,url in data['player'].items(): + vod_play_url += f'{name}${url}#' + vod_play_url.rstrip('#') + videos.append({ + 'vod_id': data.get('vod_id'), + 'vod_name': data.get('vod_name'), + 'vod_content': data.get('vod_blurb'), + 'vod_remarks': '集数:' + data.get('vod_total'), + "vod_director": data.get('vod_director'), + "vod_actor": data.get('vod_actor'), + 'vod_year': data.get('vod_year'), + 'vod_area': data.get('vod_area'), + 'vod_play_from': '锦鲤短剧', + 'vod_play_url': vod_play_url + }) + return {'list': videos} + + def searchContent(self, key, quick, pg="1"): + payload = { + "page": pg, + "limit": 24, + "type_id": "", + "keyword": key + } + response = self.post(f'{self.api_host}{self.api_path}', data=json.dumps(payload), headers=self.headers).json() + data = response['data'] + videos = [] + for i in data['list']: + videos.append({ + "vod_id": i['vod_id'], + "vod_name": i['vod_name'], + "vod_class": i['vod_class'], + "vod_pic": i['vod_pic'], + 'vod_year': i.get('vod_year'), + "vod_remarks": i['vod_total'] + '集' + }) + return {'list': videos, 'page': pg, 'total': data['total'], 'limit': 24} + + def categoryContent(self, tid, pg, filter, extend): + payload = { + "page": pg, + "limit": 24, + "type_id": tid, + "year": "", + "keyword": "" + } + response = self.post(f'{self.api_host}{self.api_path}', data=json.dumps(payload), headers=self.headers).json() + data = response['data'] + videos = [] + for i in data['list']: + videos.append({ + 'vod_id': i.get('vod_id'), + 'vod_name': i.get('vod_name'), + 'vod_class': i.get('vod_class'), + 'vod_pic': i.get('vod_pic'), + 'vod_remarks': i.get('vod_total')+'集', + 'vod_year': i.get('vod_year'), + 'vod_score': i.get('vod_score') + }) + return {'list': videos} + + def playerContent(self, flag, id, vipflags): + parse = 0 + header = {'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/138.0.0.0 Safari/537.36'} + try: + response = self.fetch(id, headers=self.headers).text + match = re.search(r'let\s+data\s*=\s*(\{[^}]*http[^}]*\});', response, re.IGNORECASE) + data = match.group(1) + data2 = json.loads(data) + url = data2['url'] + except Exception: + url, parse, header = id, 1, self.headers + return {'parse': parse, 'url': url,'header': header} + + def init(self, extend=''): + pass + + def getName(self): + pass + + def isVideoFormat(self, url): + pass + + def manualVideoCheck(self): + pass + + def destroy(self): + pass + + def localProxy(self, param): + pass diff --git a/潇洒/movie/py/JLYS.py b/潇洒/movie/py/JLYS.py new file mode 100644 index 00000000..e104f6be --- /dev/null +++ b/潇洒/movie/py/JLYS.py @@ -0,0 +1,215 @@ +import sys +sys.path.append("..") +import re +import os +from Crypto.Cipher import AES +from Crypto.Util.Padding import pad, unpad +from base64 import b64encode, b64decode +import json +from base.spider import Spider +from urllib.parse import quote + + +class Spider(Spider): + + def getName(self): + return "九龙趣看" + + def init(self, extend=""): + self.host = self.host() + pass + + def isVideoFormat(self, url): + pass + + def manualVideoCheck(self): + pass + + def action(self, action): + pass + + def destroy(self): + pass + + def homeContent(self, filter): + + data = self.fetch(f"{self.host}/api/v3/drama/getCategory?orderBy=type_id", headers=self.headers).json() + + + dy = { + "class": "类型", + "area": "地区", + "lang": "语言", + "year": "年份", + "letter": "字母", + "by": "排序", + "sort": "排序" + } + + + result = {"class": [], "filters": {}} + + + for item in data["data"]: + + jsontype_extend = json.loads(item["converUrl"]) + + + result["class"].append({"type_name": item["name"], "type_id": str(item["id"])}) + + + if any(key in jsontype_extend and jsontype_extend[key].strip() for key in dy): + result["filters"][str(item["id"])] = [] + for dkey in dy: + if dkey in jsontype_extend and jsontype_extend[dkey].strip(): + values = [value.strip() for value in jsontype_extend[dkey].split(",") if value.strip()] + result["filters"][str(item["id"])].append({ + "key": dkey, + "name": dy[dkey], + "value": [{"n": v, "v": v} for v in values] + }) + + + return result + + def categoryContent(self, tid, pg, filter, extend): + params = [] + if extend.get('area'): + params.append(f"vodArea={extend['area']}") + if extend.get('classs'): + params.append(f"vodClass={extend['class']}") + params.append("pagesize=20") + params.append(f"typeId1={tid}") + params.append(f"page={pg}") + if extend.get('year'): + params.append(f"vodYear={extend['year']}") + body = '&'.join(params) + path = self.aes(self.aes(body, self.key[1], 'encrypt'), self.key[0], 'encrypt', True) + data = self.fetch(f"{self.host}/api/ex/v3/security/drama/list?query={path}", headers=self.headers).json()[ + "data"] + data = self.aes(self.aes(data, self.key[0]), self.key[1], 'decrypt', True)['list'] + list = [] + for item in data: + list.append({ + 'vod_id': item.get("id"), + 'vod_pic': item["coverImage"].get("path"), + 'vod_name': item.get("name"), + 'vod_year': item.get("year"), + 'vod_remarks': item.get("remark") + }) + result = {} + result["list"] = list + result["page"] = pg + result["pagecount"] = 9999 + result["limit"] = 90 + result["total"] = 999999 + return result + + def detailContent(self, ids): + url = f"{self.host}/api/v3/drama/getDetail?id={ids[0]}" + data = self.fetch(url, headers=self.headers).json()["data"] + vod = { + 'vod_name': data.get("name"), + 'vod_area': data.get("area"), + 'type_name': data.get("clazz"), + 'vod_actor': data.get("actor"), + 'vod_director': data.get("director"), + 'vod_content': data.get("brief").strip(), + } + play = [] + names = [] + plays = {} + for itt in data["videos"]: + if itt["sourceCn"] not in names: + plays[itt["source"]] = [] + names.append(itt["sourceCn"]) + url = f"vodPlayFrom={itt['source']}&playUrl={itt['path']}" + if re.search(r"\.(mp4|m3u8|flv)$", itt["path"]): + url = itt["path"] + plays[itt["source"]].append(f"{itt['titleOld']}${url}") + for it in plays: + play.append("#".join(plays[it])) + vod["vod_play_from"] = "$$$".join(names) + vod["vod_play_url"] = "$$$".join(play) + result = {"list": [vod]} + return result + + def searchContent(self, key, quick, pg=1): + body = f"pagesize=20&page={pg}&searchKeys={key}" + path = self.aes(self.aes(body, self.key[1], 'encrypt'), self.key[0], 'encrypt', True) + data = self.fetch(f"{self.host}/api/ex/v3/security/drama/list?query={path}", headers=self.headers).json()[ + "data"] + data = self.aes(self.aes(data, self.key[0]), self.key[1], 'decrypt', True)['list'] + list = [] + for item in data: + list.append({ + 'vod_id': item.get("id"), + 'vod_pic': item["coverImage"].get("path"), + 'vod_name': item.get("name"), + 'vod_year': item.get("year"), + 'vod_remarks': item.get("remark") + }) + result = {"list": list, "page": pg} + return result + + def playerContent(self, flag, id, vipFlags): + url = id + if "vodPlayFrom" in url: + try: + path = self.aes(self.aes(id, self.key[1], 'encrypt'), self.key[0], 'encrypt', True) + data = self.fetch(f"{self.host}/api/ex/v3/security/videoUsableUrl?query={path}", headers=self.headers).json()[ + "data"] + url = self.aes(self.aes(data, self.key[0]), self.key[1], 'decrypt', True)['playUrl'] + # try: + # url1 = self.fetch(url, headers=self.headers, timeout=5, allow_redirects=False).headers['Location'] + # if "http" in url1 and url1: + # url = url1 + # except: + # pass + except Exception as e: + pass + if '.jpg' in url or '.jpeg' in url or '.png' in url: + url = self.getProxyUrl() + "&url=" + b64encode(url.encode('utf-8')).decode('utf-8') + "&type=m3u8" + result = {} + result["parse"] = 0 + result["url"] = url + result["header"] = {'User-Agent': 'okhttp/3.12.1'} + return result + + def localProxy(self, param): + url = b64decode(param["url"]).decode('utf-8') + durl = url[:url.rfind('/')] + data = self.fetch(url, headers=self.headers).content.decode("utf-8") + lines = data.strip().split('\n') + for index, string in enumerate(lines): + if '#EXT' not in string and 'http' not in string: + lines[index] = durl + ('' if string.startswith('/') else '/') + string + data = '\n'.join(lines) + return [200, "application/vnd.apple.mpegur", data] + + def host(self): + return "http://110.42.49.188:9902" + + headers = { + 'User-Agent': 'okhttp/3.12.1', + 'Content-Type': 'application/json;' + } + key = ['ALHMZJVVOFVNQ2HTOEPFZZFXYWH1D2RN', '2C1A06E197EF10CF3F6058CA7A803B5E'] + + def aes(self, word, key, mode='decrypt', bool=False): + key = key.encode('utf-8') + if mode == 'decrypt': + word = b64decode(word) + cipher = AES.new(key, AES.MODE_ECB) + decrypted = cipher.decrypt(word) + word = unpad(decrypted, AES.block_size).decode('utf-8') + if bool: + word = json.loads(word) + elif mode == 'encrypt': + cipher = AES.new(key, AES.MODE_ECB) + padded = pad(word.encode('utf-8'), AES.block_size) + encrypted = cipher.encrypt(padded) + word = b64encode(encrypted).decode('utf-8') + if bool: + word = quote(word) + return word diff --git a/潇洒/movie/py/JPYS.py b/潇洒/movie/py/JPYS.py new file mode 100644 index 00000000..815951a4 --- /dev/null +++ b/潇洒/movie/py/JPYS.py @@ -0,0 +1,225 @@ +# -*- coding: utf-8 -*- +# by @嗷呜 +import json +import sys +import threading +import uuid +import requests +sys.path.append('..') +from base.spider import Spider +import time +from Crypto.Hash import MD5, SHA1 + +class Spider(Spider): + ''' + 配置示例: + { + "key": "xxxx", + "name": "xxxx", + "type": 3, + "api": ".所在路径/金牌.py", + "searchable": 1, + "quickSearch": 1, + "filterable": 1, + "changeable": 1, + "ext": { + "site": "https://www.jiabaide.cn,域名2,域名3" + } + }, + ''' + def init(self, extend=""): + if extend: + hosts=json.loads(extend)['site'] + self.host = self.host_late(hosts) + pass + + def getName(self): + pass + + def isVideoFormat(self, url): + pass + + def manualVideoCheck(self): + pass + + def destroy(self): + pass + + def homeContent(self, filter): + cdata = self.fetch(f"{self.host}/api/mw-movie/anonymous/get/filer/type", headers=self.getheaders()).json() + fdata = self.fetch(f"{self.host}/api/mw-movie/anonymous/v1/get/filer/list", headers=self.getheaders()).json() + result = {} + classes = [] + filters={} + for k in cdata['data']: + classes.append({ + 'type_name': k['typeName'], + 'type_id': str(k['typeId']), + }) + sort_values = [{"n": "最近更新", "v": "2"},{"n": "人气高低", "v": "3"}, {"n": "评分高低", "v": "4"}] + for tid, d in fdata['data'].items(): + current_sort_values = sort_values.copy() + if tid == '1': + del current_sort_values[0] + filters[tid] = [ + {"key": "type", "name": "类型", + "value": [{"n": i["itemText"], "v": i["itemValue"]} for i in d["typeList"]]}, + + *([] if not d["plotList"] else [{"key": "v_class", "name": "剧情", + "value": [{"n": i["itemText"], "v": i["itemText"]} + for i in d["plotList"]]}]), + + {"key": "area", "name": "地区", + "value": [{"n": i["itemText"], "v": i["itemText"]} for i in d["districtList"]]}, + + {"key": "year", "name": "年份", + "value": [{"n": i["itemText"], "v": i["itemText"]} for i in d["yearList"]]}, + + {"key": "lang", "name": "语言", + "value": [{"n": i["itemText"], "v": i["itemText"]} for i in d["languageList"]]}, + + {"key": "sort", "name": "排序", "value": current_sort_values} + ] + result['class'] = classes + result['filters'] = filters + return result + + def homeVideoContent(self): + data1 = self.fetch(f"{self.host}/api/mw-movie/anonymous/v1/home/all/list", headers=self.getheaders()).json() + data2=self.fetch(f"{self.host}/api/mw-movie/anonymous/home/hotSearch",headers=self.getheaders()).json() + data=[] + for i in data1['data'].values(): + data.extend(i['list']) + data.extend(data2['data']) + vods=self.getvod(data) + return {'list':vods} + + def categoryContent(self, tid, pg, filter, extend): + + params = { + "area": extend.get('area', ''), + "filterStatus": "1", + "lang": extend.get('lang', ''), + "pageNum": pg, + "pageSize": "30", + "sort": extend.get('sort', '1'), + "sortBy": "1", + "type": extend.get('type', ''), + "type1": tid, + "v_class": extend.get('v_class', ''), + "year": extend.get('year', '') + } + data = self.fetch(f"{self.host}/api/mw-movie/anonymous/video/list?{self.js(params)}", headers=self.getheaders(params)).json() + result = {} + result['list'] = self.getvod(data['data']['list']) + result['page'] = pg + result['pagecount'] = 9999 + result['limit'] = 90 + result['total'] = 999999 + return result + + def detailContent(self, ids): + data=self.fetch(f"{self.host}/api/mw-movie/anonymous/video/detail?id={ids[0]}",headers=self.getheaders({'id':ids[0]})).json() + vod=self.getvod([data['data']])[0] + vod['vod_play_from']='金牌' + vod['vod_play_url'] = '#'.join( + f"{i['name'] if len(vod['episodelist']) > 1 else vod['vod_name']}${ids[0]}@@{i['nid']}" for i in + vod['episodelist']) + vod.pop('episodelist', None) + return {'list':[vod]} + + def searchContent(self, key, quick, pg="1"): + params = { + "keyword": key, + "pageNum": pg, + "pageSize": "8", + "sourceCode": "1" + } + data=self.fetch(f"{self.host}/api/mw-movie/anonymous/video/searchByWord?{self.js(params)}",headers=self.getheaders(params)).json() + vods=self.getvod(data['data']['result']['list']) + return {'list':vods,'page':pg} + + def playerContent(self, flag, id, vipFlags): + self.header = { + 'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64; ) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/126.0.6478.61 Chrome/126.0.6478.61 Not/A)Brand/8 Safari/537.36', + 'sec-ch-ua-platform': '"Windows"', + 'DNT': '1', + 'sec-ch-ua': '"Not/A)Brand";v="8", "Chromium";v="126", "Google Chrome";v="126"', + 'sec-ch-ua-mobile': '?0', + 'Origin': self.host, + 'Referer': f'{self.host}/' + } + ids=id.split('@@') + pdata = self.fetch(f"{self.host}/api/mw-movie/anonymous/v2/video/episode/url?clientType=1&id={ids[0]}&nid={ids[1]}",headers=self.getheaders({'clientType':'1','id': ids[0], 'nid': ids[1]})).json() + vlist=[] + for i in pdata['data']['list']:vlist.extend([i['resolutionName'],i['url']]) + return {'parse':0,'url':vlist,'header':self.header} + + def localProxy(self, param): + pass + + def host_late(self, url_list): + if isinstance(url_list, str): + urls = [u.strip() for u in url_list.split(',')] + else: + urls = url_list + if len(urls) <= 1: + return urls[0] if urls else '' + + results = {} + threads = [] + + def test_host(url): + try: + start_time = time.time() + response = requests.head(url, timeout=1.0, allow_redirects=False) + delay = (time.time() - start_time) * 1000 + results[url] = delay + except Exception as e: + results[url] = float('inf') + for url in urls: + t = threading.Thread(target=test_host, args=(url,)) + threads.append(t) + t.start() + for t in threads: + t.join() + return min(results.items(), key=lambda x: x[1])[0] + + def md5(self, sign_key): + md5_hash = MD5.new() + md5_hash.update(sign_key.encode('utf-8')) + md5_result = md5_hash.hexdigest() + return md5_result + + def js(self, param): + return '&'.join(f"{k}={v}" for k, v in param.items()) + + def getheaders(self, param=None): + if param is None:param = {} + t=str(int(time.time()*1000)) + param['key']='cb808529bae6b6be45ecfab29a4889bc' + param['t']=t + sha1_hash = SHA1.new() + sha1_hash.update(self.md5(self.js(param)).encode('utf-8')) + sign = sha1_hash.hexdigest() + deviceid = str(uuid.uuid4()) + headers = { + 'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64; ) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/126.0.6478.61 Chrome/126.0.6478.61 Not/A)Brand/8 Safari/537.36', + 'Accept': 'application/json, text/plain, */*', + 'sign': sign, + 't': t, + 'deviceid':deviceid + } + return headers + + def convert_field_name(self, field): + field = field.lower() + if field.startswith('vod') and len(field) > 3: + field = field.replace('vod', 'vod_') + if field.startswith('type') and len(field) > 4: + field = field.replace('type', 'type_') + return field + + def getvod(self, array): + return [{self.convert_field_name(k): v for k, v in item.items()} for item in array] + diff --git a/潇洒/movie/py/JWDJ.py b/潇洒/movie/py/JWDJ.py new file mode 100644 index 00000000..18c989d5 --- /dev/null +++ b/潇洒/movie/py/JWDJ.py @@ -0,0 +1,329 @@ +# coding=utf-8 +# !/usr/bin/python + +""" + +作者 丢丢喵推荐 🚓 内容均从互联网收集而来 仅供交流学习使用 版权归原创者所有 如侵犯了您的权益 请通知作者 将及时删除侵权内容 + ====================Diudiumiao==================== + +""" + +from Crypto.Util.Padding import unpad +from Crypto.Util.Padding import pad +from urllib.parse import unquote +from Crypto.Cipher import ARC4 +from urllib.parse import quote +from base.spider import Spider +from Crypto.Cipher import AES +from datetime import datetime +from bs4 import BeautifulSoup +from base64 import b64decode +import urllib.request +import urllib.parse +import datetime +import binascii +import requests +import base64 +import json +import time +import sys +import re +import os + +sys.path.append('..') + +xurl = "https://djw1.com" + +headerx = { + 'User-Agent': 'Mozilla/5.0 (Windows NT 6.1; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/50.0.2661.87 Safari/537.36' + } + +class Spider(Spider): + global xurl + global headerx + + def getName(self): + return "首页" + + def init(self, extend): + pass + + def isVideoFormat(self, url): + pass + + def manualVideoCheck(self): + pass + + def extract_middle_text(self, text, start_str, end_str, pl, start_index1: str = '', end_index2: str = ''): + if pl == 3: + plx = [] + while True: + start_index = text.find(start_str) + if start_index == -1: + break + end_index = text.find(end_str, start_index + len(start_str)) + if end_index == -1: + break + middle_text = text[start_index + len(start_str):end_index] + plx.append(middle_text) + text = text.replace(start_str + middle_text + end_str, '') + if len(plx) > 0: + purl = '' + for i in range(len(plx)): + matches = re.findall(start_index1, plx[i]) + output = "" + for match in matches: + match3 = re.search(r'(?:^|[^0-9])(\d+)(?:[^0-9]|$)', match[1]) + if match3: + number = match3.group(1) + else: + number = 0 + if 'http' not in match[0]: + output += f"#{match[1]}${number}{xurl}{match[0]}" + else: + output += f"#{match[1]}${number}{match[0]}" + output = output[1:] + purl = purl + output + "$$$" + purl = purl[:-3] + return purl + else: + return "" + else: + start_index = text.find(start_str) + if start_index == -1: + return "" + end_index = text.find(end_str, start_index + len(start_str)) + if end_index == -1: + return "" + + if pl == 0: + middle_text = text[start_index + len(start_str):end_index] + return middle_text.replace("\\", "") + + if pl == 1: + middle_text = text[start_index + len(start_str):end_index] + matches = re.findall(start_index1, middle_text) + if matches: + jg = ' '.join(matches) + return jg + + if pl == 2: + middle_text = text[start_index + len(start_str):end_index] + matches = re.findall(start_index1, middle_text) + if matches: + new_list = [f'{item}' for item in matches] + jg = '$$$'.join(new_list) + return jg + + def homeContent(self, filter): + result = {"class": []} + + detail = requests.get(url=xurl + "/all/", headers=headerx) + detail.encoding = "utf-8" + res = detail.text + + doc = BeautifulSoup(res, "lxml") + + soups = doc.find_all('section', class_="container items") + + for soup in soups: + vods = soup.find_all('li') + + for vod in vods: + + id = vod.find('a')['href'] + + name = vod.text.strip() + + result["class"].append({"type_id": id, "type_name": "" + name}) + + return result + + def homeVideoContent(self): + pass + + def categoryContent(self, cid, pg, filter, ext): + result = {} + videos = [] + + if pg: + page = int(pg) + else: + page = 1 + + url = f'{cid}page/{str(page)}/' + detail = requests.get(url=url, headers=headerx) + detail.encoding = "utf-8" + res = detail.text + doc = BeautifulSoup(res, "lxml") + + soups = doc.find_all('section', class_="container items") + + for soup in soups: + vods = soup.find_all('li') + + for vod in vods: + + name = vod.find('img')['alt'] + + ids = vod.find('a', class_="image-line") + id = ids['href'] + + pic = vod.find('img')['src'] + + remark = self.extract_middle_text(str(vod), 'class="remarks light">', '<', 0) + + video = { + "vod_id": id, + "vod_name": name, + "vod_pic": pic, + "vod_remarks": '▶️' + remark + } + videos.append(video) + + result = {'list': videos} + result['page'] = pg + result['pagecount'] = 9999 + result['limit'] = 90 + result['total'] = 999999 + return result + + def detailContent(self, ids): + did = ids[0] + result = {} + videos = [] + xianlu = '' + bofang = '' + + if 'http' not in did: + did = xurl + did + + res = requests.get(url=did, headers=headerx) + res.encoding = "utf-8" + res = res.text + doc = BeautifulSoup(res, "lxml") + + url = 'https://fs-im-kefu.7moor-fs1.com/ly/4d2c3f00-7d4c-11e5-af15-41bf63ae4ea0/1732707176882/jiduo.txt' + response = requests.get(url) + response.encoding = 'utf-8' + code = response.text + name = self.extract_middle_text(code, "s1='", "'", 0) + Jumps = self.extract_middle_text(code, "s2='", "'", 0) + + content = self.extract_middle_text(res,'class="info-detail">','<', 0) + + remarks = self.extract_middle_text(res, 'class="info-mark">', '<', 0) + + year = self.extract_middle_text(res, 'class="info-addtime">', '<', 0) + + if name not in content: + bofang = Jumps + xianlu = '1' + else: + soups = doc.find('div', class_="ep-list-items") + + soup = soups.find_all('a') + + for sou in soup: + + id = sou['href'] + + name = sou.text.strip() + + bofang = bofang + name + '$' + id + '#' + + bofang = bofang[:-1] + + xianlu = '专线' + + videos.append({ + "vod_id": did, + "vod_remarks": remarks, + "vod_year": year, + "vod_content": content, + "vod_play_from": xianlu, + "vod_play_url": bofang + }) + + result['list'] = videos + return result + + def playerContent(self, flag, id, vipFlags): + + res = requests.get(url=id, headers=headerx) + res.encoding = "utf-8" + res = res.text + + url = self.extract_middle_text(res, '"wwm3u8":"', '"', 0).replace('\\', '') + + result = {} + result["parse"] = 0 + result["playUrl"] = '' + result["url"] = url + result["header"] = headerx + return result + + def searchContentPage(self, key, quick, pg): + result = {} + videos = [] + + if pg: + page = int(pg) + else: + page = 1 + + url = f'{xurl}/search/{key}/page/{str(page)}/' + detail = requests.get(url=url, headers=headerx) + detail.encoding = "utf-8" + res = detail.text + doc = BeautifulSoup(res, "lxml") + + soups = doc.find_all('section', class_="container items") + + for soup in soups: + vods = soup.find_all('li') + + for vod in vods: + + name = vod.find('img')['alt'] + + ids = vod.find('a', class_="image-line") + id = ids['href'] + + pic = vod.find('img')['src'] + + remark = self.extract_middle_text(str(vod), 'class="remarks light">', '<', 0) + + video = { + "vod_id": id, + "vod_name": name, + "vod_pic": pic, + "vod_remarks": '▶️' + remark + } + videos.append(video) + + result['list'] = videos + result['page'] = pg + result['pagecount'] = 9999 + result['limit'] = 90 + result['total'] = 999999 + return result + + def searchContent(self, key, quick, pg="1"): + return self.searchContentPage(key, quick, '1') + + def localProxy(self, params): + if params['type'] == "m3u8": + return self.proxyM3u8(params) + elif params['type'] == "media": + return self.proxyMedia(params) + elif params['type'] == "ts": + return self.proxyTs(params) + return None + + + + + + + diff --git a/潇洒/movie/py/LSYS.py b/潇洒/movie/py/LSYS.py new file mode 100644 index 00000000..1a6a4d76 --- /dev/null +++ b/潇洒/movie/py/LSYS.py @@ -0,0 +1,279 @@ +# coding=utf-8 +# !/usr/bin/python +# by嗷呜(finally) +import sys +import os +sys.path.append("..") +import re +import hashlib +import hmac +import random +import string +from Crypto.Util.Padding import unpad +from concurrent.futures import ThreadPoolExecutor +from Crypto.PublicKey import RSA +from Crypto.Cipher import PKCS1_v1_5, AES +from base64 import b64encode, b64decode +import json +import time +from base.spider import Spider + +class Spider(Spider): + + def getName(self): + return "电影猎手" + + def init(self, extend=""): + self.device = self.device_id() + self.host = self.gethost() + pass + + def isVideoFormat(self, url): + pass + + def manualVideoCheck(self): + pass + + def action(self, action): + pass + + def destroy(self): + pass + + t = str(int(time.time())) + + def homeContent(self, filter): + result = {} + filters = {} + classes = [] + bba = self.url() + data = self.fetch(f"{self.host}/api/v1/app/config?pack={bba[0]}&signature={bba[1]}", headers=self.header()).text + data1 = self.aes(data) + dy = {"class":"类型","area":"地区","lang":"语言","year":"年份","letter":"字母","by":"排序","sort":"排序"} + data1['data']['movie_screen']['sort'].pop(0) + for item in data1['data']['movie_screen']['sort']: + item['n'] = item.pop('name') + item['v'] = item.pop('value') + for item in data1['data']['movie_screen']['filter']: + has_non_empty_field = False + classes.append({"type_name": item["name"], "type_id": str(item["id"])}) + for key in dy: + if key in item and item[key]: + has_non_empty_field = True + break + if has_non_empty_field: + filters[str(item["id"])] = [] + filters[str(item["id"])].append( + {"key": 'sort', "name": '排序', "value": data1['data']['movie_screen']['sort']}) + for dkey in item: + if dkey in dy and item[dkey]: + item[dkey].pop(0) + value_array = [ + {"n": value.strip(), "v": value.strip()} + for value in item[dkey] + if value.strip() != "" + ] + filters[str(item["id"])].append( + {"key": dkey, "name": dy[dkey], "value": value_array} + ) + result["class"] = classes + result["filters"] = filters + return result + + def homeVideoContent(self): + bba = self.url() + url = f'{self.host}/api/v1/movie/index_recommend?pack={bba[0]}&signature={bba[1]}' + data = self.fetch(url, headers=self.header()).json() + videos = [] + for item in data['data']: + if len(item['list']) > 0: + for it in item['list']: + try: + videos.append(self.voides(it)) + except Exception as e: + continue + result = {"list": videos} + return result + + def categoryContent(self, tid, pg, filter, extend): + body = {"type_id": tid, "sort": extend.get("sort", "by_default"), "class": extend.get("class", "类型"), + "area": extend.get("area", "地区"), "year": extend.get("year", "年份"), "page": str(pg), + "pageSize": "21"} + result = {} + list = [] + bba = self.url(body) + url = f"{self.host}/api/v1/movie/screen/list?pack={bba[0]}&signature={bba[1]}" + data = self.fetch(url, headers=self.header()).json()['data']['list'] + for item in data: + list.append(self.voides(item)) + result["list"] = list + result["page"] = pg + result["pagecount"] = 9999 + result["limit"] = 90 + result["total"] = 999999 + return result + + def detailContent(self, ids): + body = {"id": ids[0]} + bba = self.url(body) + url = f'{self.host}/api/v1/movie/detail?pack={bba[0]}&signature={bba[1]}' + data = self.fetch(url, headers=self.header()).json()['data'] + video = {'vod_name': data.get('name'),'type_name': data.get('type_name'),'vod_year': data.get('year'),'vod_area': data.get('area'),'vod_remarks': data.get('dynami'),'vod_content': data.get('content')} + play = [] + names = [] + tasks = [] + for itt in data["play_from"]: + name = itt["name"] + a = [] + if len(itt["list"]) > 0: + names.append(name) + play.append(self.playeach(itt['list'])) + else: + tasks.append({"movie_id": ids[0], "from_code": itt["code"]}) + names.append(name) + if tasks: + with ThreadPoolExecutor(max_workers=len(tasks)) as executor: + results = executor.map(self.playlist, tasks) + for result in results: + if result: + play.append(result) + else: + play.append("") + video["vod_play_from"] = "$$$".join(names) + video["vod_play_url"] = "$$$".join(play) + result = {"list": [video]} + return result + + def searchContent(self, key, quick, pg=1): + body = {"keyword": key, "sort": "", "type_id": "0", "page": str(pg), "pageSize": "10", + "res_type": "by_movie_name"} + bba = self.url(body) + url = f"{self.host}/api/v1/movie/search?pack={bba[0]}&signature={bba[1]}" + data = self.fetch(url, headers=self.header()).json()['data'].get('list') + videos = [] + for it in data: + try: + videos.append(self.voides(it)) + except Exception as e: + continue + result = {"list": videos, "page": pg} + return result + + def playerContent(self, flag, id, vipFlags): + url = id + if "m3u8" not in url and "mp4" not in url: + try: + add = id.split('|||') + data = {"from_code": add[0], "play_url": add[1], "episode_id": add[2], "type": "play"} + bba = self.url(data) + data2 = self.fetch(f"{self.host}/api/v1/movie_addr/parse_url?pack={bba[0]}&signature={bba[1]}", + headers=self.header()).json()['data'] + url = data2.get('play_url') or data2.get('download_url') + try: + url1 = self.fetch(url, headers=self.header(), allow_redirects=False).headers['Location'] + if url1 and "http" in url1: + url = url1 + except: + pass + except Exception as e: + pass + if '.jpg' in url or '.jpeg' in url or '.png' in url: + url = self.getProxyUrl() + "&url=" + b64encode(url.encode('utf-8')).decode('utf-8') + "&type=m3u8" + result = {} + result["parse"] = 0 + result["url"] = url + result["header"] = {'user-agent': 'okhttp/4.9.2'} + return result + + def localProxy(self, param): + url = b64decode(param["url"]).decode('utf-8') + durl = url[:url.rfind('/')] + data = self.fetch(url, headers=self.header()).content.decode("utf-8") + lines = data.strip().split('\n') + for index, string in enumerate(lines): + # if 'URI="' in string and 'http' not in string: + # lines[index] = index + # 暂时预留,貌似用不到 + if '#EXT' not in string and 'http' not in string: + lines[index] = durl + ('' if string.startswith('/') else '/') + string + data = '\n'.join(lines) + return [200, "application/vnd.apple.mpegur", data] + + def device_id(self): + characters = string.ascii_lowercase + string.digits + random_string = ''.join(random.choices(characters, k=32)) + return random_string + + def gethost(self): + headers = { + 'User-Agent': 'okhttp/4.9.2', + 'Connection': 'Keep-Alive', + } + response = self.fetch('https://app-site.ecoliving168.com/domain_v5.json', headers=headers).json() + url = response['api_service'].replace('/api/', '') + return url + + def header(self): + headers = { + 'User-Agent': 'Android', + 'Accept': 'application/prs.55App.v2+json', + 'timestamp': self.t, + 'x-client-setting': '{"pure-mode":1}', + 'x-client-uuid': '{"device_id":' + self.device + '}, "type":1,"brand":"Redmi", "model":"M2012K10C", "system_version":30, "sdk_version":"3.1.0.7"}', + 'x-client-version': '3096 ' + } + return headers + + def url(self, id=None): + if not id: + id = {} + id["timestamp"] = self.t + public_key = 'MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA02F/kPg5A2NX4qZ5JSns+bjhVMCC6JbTiTKpbgNgiXU+Kkorg6Dj76gS68gB8llhbUKCXjIdygnHPrxVHWfzmzisq9P9awmXBkCk74Skglx2LKHa/mNz9ivg6YzQ5pQFUEWS0DfomGBXVtqvBlOXMCRxp69oWaMsnfjnBV+0J7vHbXzUIkqBLdXSNfM9Ag5qdRDrJC3CqB65EJ3ARWVzZTTcXSdMW9i3qzEZPawPNPe5yPYbMZIoXLcrqvEZnRK1oak67/ihf7iwPJqdc+68ZYEmmdqwunOvRdjq89fQMVelmqcRD9RYe08v+xDxG9Co9z7hcXGTsUquMxkh29uNawIDAQAB' + encrypted_text = json.dumps(id) + public_key = RSA.import_key(b64decode(public_key)) + cipher = PKCS1_v1_5.new(public_key) + encrypted_message = cipher.encrypt(encrypted_text.encode('utf-8')) + encrypted_message_base64 = b64encode(encrypted_message).decode('utf-8') + result = encrypted_message_base64.replace('+', '-').replace('/', '_').replace('=', '') + key = '635a580fcb5dc6e60caa39c31a7bde48' + sign = hmac.new(key.encode(), result.encode(), hashlib.md5).hexdigest() + return result, sign + + def playlist(self, body): + try: + bba = self.url(body) + url = f'{self.host}/api/v1/movie_addr/list?pack={bba[0]}&signature={bba[1]}' + data = self.fetch(url, headers=self.header()).json()['data'] + return self.playeach(data) + except Exception: + return [] + + def playeach(self,data): + play_urls = [] + for it in data: + if re.search(r"mp4|m3u8", it["play_url"]): + play_urls.append(f"{it['episode_name']}${it['play_url']}") + else: + play_urls.append( + f"{it['episode_name']}${it['from_code']}|||{it['play_url']}|||{it['episode_id']}" + ) + return '#'.join(play_urls) + + def voides(self, item): + if item['name'] or item['title']: + voide = { + "vod_id": item.get('id') or item.get('click'), + 'vod_name': item.get('name') or item.get('title'), + 'vod_pic': item.get('cover') or item.get('image'), + 'vod_year': item.get('year') or item.get('label'), + 'vod_remarks': item.get('dynamic') or item.get('sub_title') + } + return voide + + def aes(self, text): + text = text.replace('-', '+').replace('_', '/') + '==' + key = b"e6d5de5fcc51f53d" + iv = b"2f13eef7dfc6c613" + cipher = AES.new(key, AES.MODE_CBC, iv) + pt = unpad(cipher.decrypt(b64decode(text)), AES.block_size).decode("utf-8") + return json.loads(pt) diff --git a/潇洒/movie/py/MPYS.py b/潇洒/movie/py/MPYS.py new file mode 100644 index 00000000..bcb3a515 --- /dev/null +++ b/潇洒/movie/py/MPYS.py @@ -0,0 +1,93 @@ +# -*- coding: utf-8 -*- +# by @嗷呜 +import sys +sys.path.append('..') +from base.spider import Spider + + +class Spider(Spider): + def getName(self): + return "mp" + + def init(self, extend=""): + pass + + def isVideoFormat(self, url): + pass + + def manualVideoCheck(self): + pass + + def destroy(self): + pass + + host = 'https://g.c494.com' + + header = { + 'User-Agent': 'Dart/2.10 (dart:io)', + 'platform_version': 'RP1A.200720.011', + 'version': '2.2.3', + 'copyright': 'xiaogui', + 'platform': 'android', + 'client_name': '576O5p+P5b2x6KeG', + } + + def homeContent(self, filter): + data = self.fetch(f'{self.host}/api.php/app/nav?token=', headers=self.header).json() + dy = {"class": "类型", "area": "地区", "lang": "语言", "year": "年份", "letter": "字母", "by": "排序", + "sort": "排序"} + filters = {} + classes = [] + json_data = data["list"] + for item in json_data: + has_non_empty_field = False + jsontype_extend = item["type_extend"] + classes.append({"type_name": item["type_name"], "type_id": str(item["type_id"])}) + for key in dy: + if key in jsontype_extend and jsontype_extend[key].strip() != "": + has_non_empty_field = True + break + if has_non_empty_field: + filters[str(item["type_id"])] = [] + for dkey in jsontype_extend: + if dkey in dy and jsontype_extend[dkey].strip() != "": + values = jsontype_extend[dkey].split(",") + value_array = [{"n": value.strip(), "v": value.strip()} for value in values if + value.strip() != ""] + filters[str(item["type_id"])].append({"key": dkey, "name": dy[dkey], "value": value_array}) + result = {} + result["class"] = classes + result["filters"] = filters + return result + + def homeVideoContent(self): + rsp = self.fetch(f"{self.host}/api.php/app/index_video?token=", headers=self.header) + root = rsp.json()['list'] + videos = [item for vodd in root for item in vodd['vlist']] + return {'list': videos} + + def categoryContent(self, tid, pg, filter, extend): + parms = {"pg": pg, "tid": tid, "class": extend.get("class", ""), "area": extend.get("area", ""), + "lang": extend.get("lang", ""), "year": extend.get("year", ""), "token": ""} + data = self.fetch(f'{self.host}/api.php/app/video', params=parms, headers=self.header).json() + return data + + def detailContent(self, ids): + parms = {"id": ids[0], "token": ""} + data = self.fetch(f'{self.host}/api.php/app/video_detail', params=parms, headers=self.header).json() + vod = data['data'] + vod.pop('pause_advert_list', None) + vod.pop('init_advert_list', None) + vod.pop('vod_url_with_player', None) + return {"list": [vod]} + + def searchContent(self, key, quick, pg='1'): + parms = {'pg': pg, 'text': key, 'token': ''} + data = self.fetch(f'{self.host}/api.php/app/search', params=parms, headers=self.header).json() + return data + + def playerContent(self, flag, id, vipFlags): + return {"parse": 0, "url": id, "header": {'User-Agent': 'User-Agent: Lavf/58.12.100'}} + + def localProxy(self, param): + pass diff --git a/潇洒/movie/py/SZYS.py b/潇洒/movie/py/SZYS.py new file mode 100644 index 00000000..2e76bc1a --- /dev/null +++ b/潇洒/movie/py/SZYS.py @@ -0,0 +1,330 @@ +# -*- coding: utf-8 -*- +# by @嗷呜 +import json +import random +import sys +from base64 import b64encode, b64decode +from concurrent.futures import ThreadPoolExecutor + +# 引入 RSA 加解密所需模块 +from Crypto.PublicKey import RSA +from Crypto.Cipher import PKCS1_v1_5 + +sys.path.append('..') +from base.spider import Spider + +class Spider(Spider): + + def init(self, extend=""): + did = self.getdid() + self.headers.update({'deviceId': did}) + token = self.gettk() + self.headers.update({'token': token}) + + def getName(self): + pass + + def isVideoFormat(self, url): + pass + + def manualVideoCheck(self): + pass + + def destroy(self): + pass + + # 1. 修改为主机域名 + host = 'http://qkys.qukanwh.com' + + # 2. 同步原脚本的配置请求头 + headers = { + 'HOST': 'qkys.qukanwh.com', + 'User-Agent': 'okhttp/4.12.0', + 'client': 'app', + 'deviceType': 'Android', + 'Referer': '' + } + + # 3. 导入原脚本中的 RSA 密钥对与配置 + publicKey_str = "-----BEGIN PUBLIC KEY-----\nMIGfMA0GCSqGSIb3DQEBAQUAA4GNADCBiQKBgQCoYt0BP77U+DM08BiI/QbSRIfxijXo85BTPqIM1Ow8BNwhLETzRIZ+dEwdWDbydG/PspgBAfRpGaYVdJYtvaC2JnoO8+Ik6qMWojfEJxSFLa0Pb0A892tun4gsxoEMjcreZ+YGyaBxAfqX0BSMfdrOgIYaZQjYrw9TRLlUT31QoQIDAQAB\n-----END PUBLIC KEY-----" + privateKey_str = "-----BEGIN PRIVATE KEY-----\nMIIEvAIBADANBgkqhkiG9w0BAQEFAASCBKYwggSiAgEAAoIBAQCquQQ5r6+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==\n-----END PRIVATE KEY-----" + + # RSA 公钥加密实现 + def rsa_encrypt(self, text): + try: + key = RSA.import_key(self.publicKey_str) + cipher = PKCS1_v1_5.new(key) + cipher_text = cipher.encrypt(text.encode('utf-8')) + return b64encode(cipher_text).decode('utf-8') + except Exception as e: + print(f"RSA加密失败: {e}") + return "" + + # RSA 私钥解密实现 + def rsa_decrypt(self, text): + try: + key = RSA.import_key(self.privateKey_str) + cipher = PKCS1_v1_5.new(key) + raw_bytes = b64decode(text.encode('utf-8')) + + decrypted = b"" + offset = 0 + while offset < len(raw_bytes): + chunk = raw_bytes[offset:offset + 256] + decrypted += cipher.decrypt(chunk, None) + offset += 256 + return decrypted.decode('utf-8') + except Exception as e: + print(f"RSA解密失败: {e}") + return "" + + def homeContent(self, filter): + data = self.post(f"{self.host}/api/v1/app/screen/screenType", headers=self.headers).json() + result = {} + cate = { + "类型": "type", + "地区": "area", + "年份": "year" + } + sort = { + 'key': 'sort', + 'name': '排序', + 'value': [{'n': '最新', 'v': 'NEWEST'}, {'n': '热门', 'v': 'HOT'}, {'n': '收藏', 'v': 'COLLECT'}] + } + classes = [] + filters = {} + for k in data.get('data', []): + classes.append({ + 'type_name': k['name'], + 'type_id': str(k['id']) + }) + filters[str(k['id'])] = [] + for v in k.get('children', []): + if v['name'] in cate: + filters[str(k['id'])].append({ + 'name': v['name'], + 'key': cate[v['name']], + 'value': [{'n': i['name'], 'v': i['name']} for i in v.get('children', [])] + }) + filters[str(k['id'])].append(sort) + result['class'] = classes + result['filters'] = filters + return result + + def homeVideoContent(self): + jdata = { + "condition": { + "sreecnTypeEnum": "NEWEST" + }, + "pageNum": 1, + "pageSize": 40 + } + data = self.post(f"{self.host}/api/v1/app/screen/screenMovie", headers=self.headers, json=jdata).json() + return {'list': self.getlist(data.get('data', {}).get('records', []))} + + def categoryContent(self, tid, pg, filter, extend): + # 保持最纯粹的条件字段,移除任何空字符串占位 + condition = { + 'sreecnTypeEnum': 'NEWEST', + 'typeId': int(tid) if str(tid).isdigit() else tid + } + + if extend: + if 'sort' in extend: + condition['sreecnTypeEnum'] = extend.pop('sort') + condition.update(extend) + + jdata = { + 'condition': condition, + 'pageNum': int(pg), + 'pageSize': 40, + } + + try: + data = self.post(f"{self.host}/api/v1/app/screen/screenMovie", headers=self.headers, json=jdata).json() + result = {} + if data and data.get('data') and 'records' in data['data']: + result['list'] = self.getlist(data['data']['records']) + else: + result['list'] = [] + result['page'] = pg + result['pagecount'] = 9999 + result['limit'] = 40 + result['total'] = 999999 + return result + except Exception as e: + print(f"分类获取错误: {e}") + return {'list': [], 'page': pg} + + def detailContent(self, ids): + ids = ids[0].split('@@') + jdata = {"id": int(ids[0]), "typeId": ids[-1]} + v = self.post(f"{self.host}/api/v1/app/play/movieDesc", headers=self.headers, json=jdata).json() + v = v.get('data', {}) + vod = { + 'type_name': v.get('typeId', ''), + 'vod_year': v.get('year', ''), + 'vod_area': v.get('area', ''), + 'vod_actor': v.get('star', ''), + 'vod_director': v.get('director', ''), + 'vod_content': v.get('introduce', ''), + 'vod_play_from': '', + 'vod_play_url': '' + } + + play_params = { + "id": int(ids[0]), + "source": 0, + "typeId": ids[-1] + } + encrypt_payload = {"key": self.rsa_encrypt(json.dumps(play_params))} + + c_res = self.post(f"{self.host}/api/v1/app/play/movieDetails", headers=self.headers, json=encrypt_payload).json() + decrypted_play_str = self.rsa_decrypt(c_res.get('data', '')) + if not decrypted_play_str: + return {'list': [vod]} + + decrypted_play_data = json.loads(decrypted_play_str) + l = decrypted_play_data.get('moviePlayerList', []) + if not l: + return {'list': [vod]} + + n = {str(i['id']): i['moviePlayerName'] for i in l} + + m = play_params.copy() + m.update({'playerId': l[0]['id']}) + + first_source_payload = {"key": self.rsa_encrypt(json.dumps(m))} + first_res = self.post(f"{self.host}/api/v1/app/play/movieDetails", headers=self.headers, json=first_source_payload).json() + + decrypted_first_str = self.rsa_decrypt(first_res.get('data', '')) + if decrypted_first_str: + decrypted_first_episode = json.loads(decrypted_first_str) + pd = self.getv(m, decrypted_first_episode.get('episodeList', [])) + else: + pd = {} + + if len(l) > 1: + with ThreadPoolExecutor(max_workers=len(l)-1) as executor: + future_to_player = {executor.submit(self.getd, play_params, player): player for player in l[1:]} + for future in future_to_player: + try: + o, p = future.result() + if p: + pd.update(self.getv(o, p)) + except Exception as e: + print(f"多线路请求失败: {e}") + w, e = [], [] + for i, x in pd.items(): + if x: + w.append(n.get(i, '未知线路')) + e.append(x) + vod['vod_play_from'] = '$$$'.join(w) + vod['vod_play_url'] = '$$$'.join(e) + return {'list': [vod]} + + def searchContent(self, key, quick, pg="1"): + jdata = { + "condition": { + "value": str(key) + }, + "pageNum": int(pg), + "pageSize": 40 + } + try: + data = self.post(f"{self.host}/api/v1/app/search/searchMovie", headers=self.headers, json=jdata).json() + return {'list': self.getlist(data.get('data', {}).get('records', [])), 'page': pg} + except Exception as e: + print(f"搜索请求失败: {e}") + return {'list': [], 'page': pg} + + def playerContent(self, flag, id, vipFlags): + raw_id_str = self.d64(id) + if not raw_id_str: + return {'parse': 0, 'url': ''} + jdata = json.loads(raw_id_str) + encrypt_payload = {"key": self.rsa_encrypt(json.dumps(jdata))} + data = self.post(f"{self.host}/api/v1/app/play/movieDetails", headers=self.headers, json=encrypt_payload).json() + + try: + decrypted_url_data = json.loads(self.rsa_decrypt(data.get('data', ''))) + playerUrl = decrypted_url_data.get('url', '') + if not playerUrl: + return {'parse': 0, 'url': ''} + + params = {'playerUrl': playerUrl, 'playerId': jdata['playerId']} + pd = self.fetch(f"{self.host}/api/v1/app/play/analysisMovieUrl", headers=self.headers, params=params).json() + url, p = pd.get('data', ''), 0 + except Exception as e: + print(f"解析流媒体直链失败: {e}") + url, p = "", 0 + return {'parse': p, 'url': url, 'header': {'User-Agent': 'okhttp/4.12.0'}, 'danmaku': 'http://127.0.0.1:9978/proxy?do=diydanmu'} + + def localProxy(self, param): + pass + + def liveContent(self, url): + pass + + def gettk(self): + self.headers.update({'deviceId': self.getdid()}) + try: + data = self.fetch(f"{self.host}/api/v1/app/user/visitorInfo", headers=self.headers).json() + return data.get('data', {}).get('token', '') + except: + return "" + + def getdid(self): + did = self.getCache('ldid') + if not did: + hex_chars = '0123456789abcdef' + did = ''.join(random.choice(hex_chars) for _ in range(16)) + self.setCache('ldid', did) + return did + + def getd(self, jdata, player): + x = jdata.copy() + x.update({'playerId': player['id']}) + encrypt_payload = {"key": self.rsa_encrypt(json.dumps(x))} + response = self.post(f"{self.host}/api/v1/app/play/movieDetails", headers=self.headers, json=encrypt_payload).json() + decrypted_str = self.rsa_decrypt(response.get('data', '')) + if decrypted_str: + decrypted_episode = json.loads(decrypted_str) + return x, decrypted_episode.get('episodeList', []) + return x, [] + + def getv(self, d, c): + f = {str(d['playerId']): ''} + g = [] + for i in c: + j = d.copy() + j.update({'episodeId': i['id']}) + g.append(f"{i['episode']}${self.e64(json.dumps(j))}") + f[str(d['playerId'])] = '#'.join(g) + return f + + def getlist(self, data): + videos = [] + for i in data: + if not i.get('id'): + continue + videos.append({ + 'vod_id': f"{i['id']}@@{i.get('typeId', '')}", + 'vod_name': i.get('name', ''), + 'vod_pic': i.get('cover', ''), + 'vod_year': i.get('year', ''), + 'vod_remarks': i.get('totalEpisode', '') + }) + return videos + + def e64(self, text): + try: + return b64encode(text.encode('utf-8')).decode('utf-8') + except: + return "" + + def d64(self, encoded_text): + try: + return b64decode(encoded_text.encode('utf-8')).decode('utf-8') + except: + return "" diff --git a/潇洒/movie/py/TLDJ.py b/潇洒/movie/py/TLDJ.py new file mode 100644 index 00000000..4aeb27b3 --- /dev/null +++ b/潇洒/movie/py/TLDJ.py @@ -0,0 +1,790 @@ +#!/usr/bin/env python3 +# -*- coding: utf-8 -*- +# 偷乐短剧爬虫 + +import sys +import json +import re +import time +import urllib.parse +import requests +from bs4 import BeautifulSoup + +# 导入基础类 +sys.path.append('../../') +try: + from base.spider import Spider +except ImportError: + # 本地调试时的替代实现 + class Spider: + def init(self, extend=""): + pass + +class Spider(Spider): + def __init__(self): + # 网站主URL + self.siteUrl = "https://www.toule.top" + + # 根据网站实际结构,分类链接格式为: /index.php/vod/show/class/分类名/id/1.html + # 分类ID映射 - 从网站中提取的分类 + self.cateManual = { + "男频": "/index.php/vod/show/class/%E7%94%B7%E9%A2%91/id/1.html", + "女频": "/index.php/vod/show/class/%E5%A5%B3%E9%A2%91/id/1.html", + "都市": "/index.php/vod/show/class/%E9%83%BD%E5%B8%82/id/1.html", + "赘婿": "/index.php/vod/show/class/%E8%B5%98%E5%A9%BF/id/1.html", + "战神": "/index.php/vod/show/class/%E6%88%98%E7%A5%9E/id/1.html", + "古代言情": "/index.php/vod/show/class/%E5%8F%A4%E4%BB%A3%E8%A8%80%E6%83%85/id/1.html", + "现代言情": "/index.php/vod/show/class/%E7%8E%B0%E4%BB%A3%E8%A8%80%E6%83%85/id/1.html", + "历史": "/index.php/vod/show/class/%E5%8E%86%E5%8F%B2/id/1.html", + "玄幻": "/index.php/vod/show/class/%E7%8E%84%E5%B9%BB/id/1.html", + "搞笑": "/index.php/vod/show/class/%E6%90%9E%E7%AC%91/id/1.html", + "甜宠": "/index.php/vod/show/class/%E7%94%9C%E5%AE%A0/id/1.html", + "励志": "/index.php/vod/show/class/%E5%8A%B1%E5%BF%97/id/1.html", + "逆袭": "/index.php/vod/show/class/%E9%80%86%E8%A2%AD/id/1.html", + "穿越": "/index.php/vod/show/class/%E7%A9%BF%E8%B6%8A/id/1.html", + "古装": "/index.php/vod/show/class/%E5%8F%A4%E8%A3%85/id/1.html" + } + + # 请求头 + self.headers = { + "User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/122.0.0.0 Safari/537.36", + "Referer": "https://www.toule.top/", + "Accept": "text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.7", + "Accept-Language": "zh-CN,zh;q=0.9,en;q=0.8", + "Accept-Encoding": "gzip, deflate, br", + "Connection": "keep-alive", + } + + + # 缓存 + self.cache = {} + self.cache_timeout = {} + + def getName(self): + return "偷乐短剧" + + def init(self, extend=""): + # 初始化方法,可以留空 + return + + def isVideoFormat(self, url): + """判断是否为视频格式""" + video_formats = ['.mp4', '.m3u8', '.ts', '.flv', '.avi', '.mkv', '.mov', '.rmvb', '.3gp'] + for format in video_formats: + if format in url.lower(): + return True + return False + + def manualVideoCheck(self): + """是否需要手动检查视频""" + return False + + # 工具方法 - 网络请求 + def fetch(self, url, headers=None, data=None, method="GET"): + """统一的网络请求方法""" + try: + if headers is None: + headers = self.headers.copy() + + if method.upper() == "GET": + response = requests.get(url, headers=headers, params=data, timeout=10,verify=False) + else: # POST + response = requests.post(url, headers=headers, data=data, timeout=10,verify=False) + + response.raise_for_status() + response.encoding = response.apparent_encoding or 'utf-8' + return response + except Exception as e: + self.log(f"请求失败: {url}, 错误: {str(e)}", "ERROR") + return None + + # 缓存方法 + def getCache(self, key, timeout=3600): + """获取缓存数据""" + if key in self.cache and key in self.cache_timeout: + if time.time() < self.cache_timeout[key]: + return self.cache[key] + else: + del self.cache[key] + del self.cache_timeout[key] + return None + + def setCache(self, key, value, timeout=3600): + """设置缓存数据""" + self.cache[key] = value + self.cache_timeout[key] = time.time() + timeout + + # 日志方法 + def log(self, msg, level='INFO'): + """记录日志""" + levels = { + 'DEBUG': 0, + 'INFO': 1, + 'WARNING': 2, + 'ERROR': 3 + } + + current_level = 'INFO' # 可以设置为DEBUG以获取更多信息 + + if levels.get(level, 4) >= levels.get(current_level, 1): + print(f"[{level}] {time.strftime('%Y-%m-%d %H:%M:%S')} - {msg}") + + # 辅助方法 - 从URL中提取视频ID + def extractVodId(self, url): + """从URL中提取视频ID""" + # 路径格式: /index.php/vod/play/id/9024/sid/1/nid/1.html + match = re.search(r'/id/(\d+)/', url) + if match: + return match.group(1) + return "" + + # 辅助方法 - 从网页内容中提取分类 + def extractCategories(self, text): + """从网页内容中提取分类标签""" + cats = [] + # 匹配标签字符串,例如: "男频,逆袭,亲情,短剧" + if "," in text: + parts = text.split(",") + for part in parts: + part = part.strip() + if part and part != "短剧": + cats.append(part) + return cats + + # 主要接口实现 + def homeContent(self, filter): + """获取首页分类及内容""" + result = {} + classes = [] + + # 从缓存获取 + cache_key = 'home_classes' + cached_classes = self.getCache(cache_key) + if cached_classes: + classes = cached_classes + else: + # 使用预定义的分类 + for k, v in self.cateManual.items(): + classes.append({ + 'type_id': v, # 使用完整URL路径作为type_id + 'type_name': k + }) + + # 保存到缓存 + self.setCache(cache_key, classes, 24*3600) # 缓存24小时 + + result['class'] = classes + + # 获取首页推荐视频 + videos = self.homeVideoContent().get('list', []) + result['list'] = videos + + return result + + def homeVideoContent(self): + """获取首页推荐视频内容""" + result = {'list': []} + videos = [] + + # 从缓存获取 + cache_key = 'home_videos' + cached_videos = self.getCache(cache_key) + if cached_videos: + return {'list': cached_videos} + + try: + response = self.fetch(self.siteUrl) + if response and response.status_code == 200: + html = response.text + soup = BeautifulSoup(html, 'html.parser') + + # 查找最新更新区域 + latest_section = soup.find('h2', text=lambda t: t and '最新更新' in t) + if latest_section: + container = latest_section.parent # 获取容器 + if container: + # 查找所有 li.item 元素 + items = container.find_all('li', class_='item') + + for item in items: + try: + # 获取链接和标题 + title_link = item.find('h3') + if not title_link: + continue + + title = title_link.text.strip() + + # 获取第一个链接作为详情页链接 + link_tag = item.find('a') + if not link_tag: + continue + + link = link_tag.get('href', '') + if not link.startswith('http'): + link = urllib.parse.urljoin(self.siteUrl, link) + + # 提取ID + vid = self.extractVodId(link) + if not vid: + continue + + # 获取图片 + img_tag = item.find('img') + img_url = "" + if img_tag: + img_url = img_tag.get('src', img_tag.get('data-src', '')) + if img_url and not img_url.startswith('http'): + img_url = urllib.parse.urljoin(self.siteUrl, img_url) + + # 获取备注信息 + remarks = "" + remarks_tag = item.find('span', class_='remarks') + if remarks_tag: + remarks = remarks_tag.text.strip() + + # 获取标签信息 + tags = "" + tags_tag = item.find('span', class_='tags') + if tags_tag: + tags = tags_tag.text.strip() + + # 合并备注和标签 + if remarks and tags: + remarks = f"{remarks} | {tags}" + elif tags: + remarks = tags + + # 构建视频项 + videos.append({ + 'vod_id': vid, + 'vod_name': title, + 'vod_pic': img_url, + 'vod_remarks': remarks + }) + except Exception as e: + self.log(f"处理视频项时出错: {str(e)}", "ERROR") + continue + + # 保存到缓存 + self.setCache(cache_key, videos, 3600) # 缓存1小时 + except Exception as e: + self.log(f"获取首页视频内容发生错误: {str(e)}", "ERROR") + + result['list'] = videos + return result + + def categoryContent(self, tid, pg, filter, extend): + """获取分类内容""" + result = {} + videos = [] + + # 处理页码 + if pg is None: + pg = 1 + else: + pg = int(pg) + + # 构建分类URL - tid是完整的URL路径 + if tid.startswith("/"): + # 替换页码,URL格式可能像: /index.php/vod/show/class/男频/id/1.html + if pg > 1: + if "html" in tid: + category_url = tid.replace(".html", f"/page/{pg}.html") + else: + category_url = f"{tid}/page/{pg}.html" + else: + category_url = tid + + full_url = urllib.parse.urljoin(self.siteUrl, category_url) + else: + # 如果tid不是URL路径,可能是旧版分类ID,尝试查找对应URL + category_url = "" + for name, url in self.cateManual.items(): + if name == tid: + category_url = url + break + + if not category_url: + self.log(f"未找到分类ID对应的URL: {tid}", "ERROR") + result['list'] = [] + result['page'] = pg + result['pagecount'] = 1 + result['limit'] = 0 + result['total'] = 0 + return result + + # 处理页码 + if pg > 1: + if "html" in category_url: + category_url = category_url.replace(".html", f"/page/{pg}.html") + else: + category_url = f"{category_url}/page/{pg}.html" + + full_url = urllib.parse.urljoin(self.siteUrl, category_url) + + # 请求分类页 + try: + response = self.fetch(full_url) + if response and response.status_code == 200: + html = response.text + soup = BeautifulSoup(html, 'html.parser') + + # 查找视频项,根据实际HTML结构调整 + items = soup.find_all('li', class_='item') + + for item in items: + try: + # 获取链接和标题 + title_tag = item.find('h3') + if not title_tag: + continue + + title = title_tag.text.strip() + + # 获取链接 + link_tag = item.find('a') + if not link_tag: + continue + + link = link_tag.get('href', '') + if not link.startswith('http'): + link = urllib.parse.urljoin(self.siteUrl, link) + + # 提取ID + vid = self.extractVodId(link) + if not vid: + continue + + # 获取图片 + img_tag = item.find('img') + img_url = "" + if img_tag: + img_url = img_tag.get('src', img_tag.get('data-src', '')) + if img_url and not img_url.startswith('http'): + img_url = urllib.parse.urljoin(self.siteUrl, img_url) + + # 获取备注信息 + remarks = "" + remarks_tag = item.find('span', class_='remarks') + if remarks_tag: + remarks = remarks_tag.text.strip() + + # 获取标签信息 + tags = "" + tags_tag = item.find('span', class_='tags') + if tags_tag: + tags = tags_tag.text.strip() + + # 合并备注和标签 + if remarks and tags: + remarks = f"{remarks} | {tags}" + elif tags: + remarks = tags + + # 构建视频项 + videos.append({ + 'vod_id': vid, + 'vod_name': title, + 'vod_pic': img_url, + 'vod_remarks': remarks + }) + except Exception as e: + self.log(f"处理分类视频项时出错: {str(e)}", "ERROR") + continue + + # 查找分页信息 + # 默认值 + total = len(videos) + pagecount = 1 + limit = 20 + + # 尝试查找分页元素 + pagination = soup.find('ul', class_='page') + if pagination: + # 查找最后一页的链接 + last_page_links = pagination.find_all('a') + for link in last_page_links: + page_text = link.text.strip() + if page_text.isdigit(): + pagecount = max(pagecount, int(page_text)) + except Exception as e: + self.log(f"获取分类内容发生错误: {str(e)}", "ERROR") + + result['list'] = videos + result['page'] = pg + result['pagecount'] = pagecount + result['limit'] = limit + result['total'] = total + + return result + + def detailContent(self, ids): + """获取详情内容""" + result = {} + + if not ids or len(ids) == 0: + return result + + # 视频ID + vid = ids[0] + + # 构建播放页URL + play_url = f"{self.siteUrl}/index.php/vod/play/id/{vid}/sid/1/nid/1.html" + + try: + response = self.fetch(play_url) + if not response or response.status_code != 200: + return result + + html = response.text + soup = BeautifulSoup(html, 'html.parser') + + # 提取视频基本信息 + # 标题 + title = "" + title_tag = soup.find('h1', class_='items-title') + if title_tag: + title = title_tag.text.strip() + + # 图片 + pic = "" + pic_tag = soup.find('img', class_='thumb') + if pic_tag: + pic = pic_tag.get('src', '') + if pic and not pic.startswith('http'): + pic = urllib.parse.urljoin(self.siteUrl, pic) + + # 简介 + desc = "" + desc_tag = soup.find('div', class_='text-content') + if desc_tag: + desc = desc_tag.text.strip() + + # 标签/分类 + tags = [] + tags_container = soup.find('span', class_='items-tags') + if tags_container: + tag_links = tags_container.find_all('a') + for tag in tag_links: + tag_text = tag.text.strip() + if tag_text: + tags.append(tag_text) + + # 提取播放列表 + play_from = "偷乐短剧" + play_list = [] + + # 查找播放列表区域 + play_area = soup.find('div', class_='swiper-wrapper') + if play_area: + # 查找所有剧集链接 + episode_links = play_area.find_all('a') + for ep in episode_links: + ep_title = ep.text.strip() + ep_url = ep.get('href', '') + + if ep_url: + # 直接使用URL作为ID + if not ep_url.startswith('http'): + ep_url = urllib.parse.urljoin(self.siteUrl, ep_url) + + # 提取集数信息 + ep_num = ep_title + if ep_num.isdigit(): + ep_num = f"第{ep_num}集" + + play_list.append(f"{ep_num}${ep_url}") + + # 如果没有找到播放列表,查找播放按钮 + if not play_list: + play_btn = soup.find('a', class_='btn-play') + if play_btn: + play_url = play_btn.get('href', '') + if play_url: + if not play_url.startswith('http'): + play_url = urllib.parse.urljoin(self.siteUrl, play_url) + + play_list.append(f"播放${play_url}") + + # 如果仍然没有找到播放链接,使用播放页URL + if not play_list: + play_url = f"{self.siteUrl}/index.php/vod/play/id/{vid}/sid/1/nid/1.html" + play_list.append(f"播放${play_url}") + + # 提取更多信息(导演、演员等) + director = "" + actor = "" + year = "" + area = "" + remarks = "" + + # 查找备注信息 + meta_items = soup.find_all('div', class_='meta-item') + for item in meta_items: + item_title = item.find('span', class_='item-title') + item_content = item.find('span', class_='item-content') + + if item_title and item_content: + title_text = item_title.text.strip() + content_text = item_content.text.strip() + + if "导演" in title_text: + director = content_text + elif "主演" in title_text: + actor = content_text + elif "年份" in title_text: + year = content_text + elif "地区" in title_text: + area = content_text + elif "简介" in title_text: + if not desc: + desc = content_text + elif "状态" in title_text: + remarks = content_text + + # 如果没有从meta-item中获取到remarks + if not remarks: + remarks_tag = soup.find('span', class_='remarks') + if remarks_tag: + remarks = remarks_tag.text.strip() + + # 构建标准数据结构 + vod = { + "vod_id": vid, + "vod_name": title, + "vod_pic": pic, + "vod_year": year, + "vod_area": area, + "vod_remarks": remarks, + "vod_actor": actor, + "vod_director": director, + "vod_content": desc, + "type_name": ",".join(tags), + "vod_play_from": play_from, + "vod_play_url": "#".join(play_list) + } + + result = { + 'list': [vod] + } + except Exception as e: + self.log(f"获取详情内容时出错: {str(e)}", "ERROR") + + return result + + def searchContent(self, key, quick, pg=1): + """搜索功能""" + result = {} + videos = [] + + # 构建搜索URL和参数 + search_url = f"{self.siteUrl}/index.php/vod/search.html" + params = {"wd": key} + + try: + response = self.fetch(search_url, data=params) + if response and response.status_code == 200: + html = response.text + soup = BeautifulSoup(html, 'html.parser') + + # 查找搜索结果项 + search_items = soup.find_all('li', class_='item') + + for item in search_items: + try: + # 获取标题 + title_tag = item.find('h3') + if not title_tag: + continue + + title = title_tag.text.strip() + + # 获取链接 + link_tag = item.find('a') + if not link_tag: + continue + + link = link_tag.get('href', '') + if not link.startswith('http'): + link = urllib.parse.urljoin(self.siteUrl, link) + + # 提取视频ID + vid = self.extractVodId(link) + if not vid: + continue + + # 获取图片 + img_tag = item.find('img') + img_url = "" + if img_tag: + img_url = img_tag.get('src', img_tag.get('data-src', '')) + if img_url and not img_url.startswith('http'): + img_url = urllib.parse.urljoin(self.siteUrl, img_url) + + # 获取备注信息 + remarks = "" + remarks_tag = item.find('span', class_='remarks') + if remarks_tag: + remarks = remarks_tag.text.strip() + + # 获取标签信息 + tags = "" + tags_tag = item.find('span', class_='tags') + if tags_tag: + tags = tags_tag.text.strip() + + # 合并备注和标签 + if remarks and tags: + remarks = f"{remarks} | {tags}" + elif tags: + remarks = tags + + # 构建视频项 + videos.append({ + 'vod_id': vid, + 'vod_name': title, + 'vod_pic': img_url, + 'vod_remarks': remarks + }) + except Exception as e: + self.log(f"处理搜索结果时出错: {str(e)}", "ERROR") + continue + except Exception as e: + self.log(f"搜索功能发生错误: {str(e)}", "ERROR") + + result['list'] = videos + return result + + def searchContentPage(self, key, quick, pg=1): + return self.searchContent(key, quick, pg) + + def playerContent(self, flag, id, vipFlags): + """获取播放内容""" + result = {} + + try: + # 判断是否已经是视频URL + if self.isVideoFormat(id): + result["parse"] = 0 + result["url"] = id + result["playUrl"] = "" + result["header"] = json.dumps(self.headers) + return result + + # 判断是否是完整的页面URL + if id.startswith(('http://', 'https://')): + play_url = id + # 尝试作为相对路径处理 + elif id.startswith('/'): + play_url = urllib.parse.urljoin(self.siteUrl, id) + # 假设是视频ID,构建播放页面URL + else: + # 检查是否是"视频ID_集数"格式 + parts = id.split('_') + if len(parts) > 1 and parts[0].isdigit(): + vid = parts[0] + nid = parts[1] + play_url = f"{self.siteUrl}/index.php/vod/play/id/{vid}/sid/1/nid/{nid}.html" + else: + # 直接当作视频ID处理 + play_url = f"{self.siteUrl}/index.php/vod/play/id/{id}/sid/1/nid/1.html" + + # 访问播放页获取真实播放地址 + try: + self.log(f"正在解析播放页面: {play_url}") + response = self.fetch(play_url) + if response and response.status_code == 200: + html = response.text + + # 查找player_aaaa变量 + player_match = re.search(r'var\s+player_aaaa\s*=\s*({.*?});', html, re.DOTALL) + if player_match: + try: + player_data = json.loads(player_match.group(1)) + if 'url' in player_data: + video_url = player_data['url'] + if not video_url.startswith('http'): + video_url = urllib.parse.urljoin(self.siteUrl, video_url) + + self.log(f"从player_aaaa获取到视频地址: {video_url}") + result["parse"] = 0 + result["url"] = video_url + result["playUrl"] = "" + result["header"] = json.dumps(self.headers) + return result + except json.JSONDecodeError as e: + self.log(f"解析player_aaaa JSON出错: {str(e)}", "ERROR") + + # 如果player_aaaa解析失败,尝试其他方式 + # 1. 查找video标签 + video_match = re.search(r']*src=["\'](.*?)["\']', html) + if video_match: + video_url = video_match.group(1) + if not video_url.startswith('http'): + video_url = urllib.parse.urljoin(self.siteUrl, video_url) + + self.log(f"从video标签找到视频地址: {video_url}") + result["parse"] = 0 + result["url"] = video_url + result["playUrl"] = "" + result["header"] = json.dumps(self.headers) + return result + + # 2. 查找iframe + iframe_match = re.search(r']*src=["\'](.*?)["\']', html) + if iframe_match: + iframe_url = iframe_match.group(1) + if not iframe_url.startswith('http'): + iframe_url = urllib.parse.urljoin(self.siteUrl, iframe_url) + + self.log(f"找到iframe,正在解析: {iframe_url}") + # 访问iframe内容 + iframe_response = self.fetch(iframe_url) + if iframe_response and iframe_response.status_code == 200: + iframe_html = iframe_response.text + + # 在iframe内容中查找视频地址 + iframe_video_match = re.search(r'(https?://[^\'"]+\.(mp4|m3u8|ts))', iframe_html) + if iframe_video_match: + video_url = iframe_video_match.group(1) + + self.log(f"从iframe中找到视频地址: {video_url}") + result["parse"] = 0 + result["url"] = video_url + result["playUrl"] = "" + result["header"] = json.dumps({ + "User-Agent": self.headers["User-Agent"], + "Referer": iframe_url + }) + return result + + # 3. 查找任何可能的视频URL + url_match = re.search(r'(https?://[^\'"]+\.(mp4|m3u8|ts))', html) + if url_match: + video_url = url_match.group(1) + + self.log(f"找到可能的视频地址: {video_url}") + result["parse"] = 0 + result["url"] = video_url + result["playUrl"] = "" + result["header"] = json.dumps(self.headers) + return result + except Exception as e: + self.log(f"解析播放地址时出错: {str(e)}", "ERROR") + + # 如果所有方式都失败,返回外部解析标志 + self.log("未找到直接可用的视频地址,需要外部解析", "WARNING") + result["parse"] = 1 # 表示需要外部解析 + result["url"] = play_url # 返回播放页面URL + result["playUrl"] = "" + result["header"] = json.dumps(self.headers) + + except Exception as e: + self.log(f"获取播放内容时出错: {str(e)}", "ERROR") + + return result + + def localProxy(self, param): + """本地代理""" + return [404, "text/plain", {}, "Not Found"] diff --git a/潇洒/movie/py/TQDJ.py b/潇洒/movie/py/TQDJ.py new file mode 100644 index 00000000..40cac386 --- /dev/null +++ b/潇洒/movie/py/TQDJ.py @@ -0,0 +1,156 @@ +# -*- coding: utf-8 -*- +# by @嗷呜 +import sys +sys.path.append('..') +from base.spider import Spider + +class Spider(Spider): + + def init(self, extend=""): + pass + + def getName(self): + return "甜圈短剧" + + def isVideoFormat(self, url): + return True + + def manualVideoCheck(self): + return False + + def destroy(self): + pass + + # 更新为新的域名 + ahost = 'https://mov.cenguigui.cn' + + headers = { + 'User-Agent': 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/134.0.0.0 Safari/537.36', + 'sec-ch-ua-platform': '"macOS"', + 'sec-ch-ua': '"Not/A)Brand";v="8", "Chromium";v="134", "Google Chrome";v="134"', + 'DNT': '1', + 'sec-ch-ua-mobile': '?0', + 'Sec-Fetch-Site': 'cross-site', + 'Sec-Fetch-Mode': 'no-cors', + 'Sec-Fetch-Dest': 'video', + 'Sec-Fetch-Storage-Access': 'active', + 'Accept-Language': 'zh-CN,zh;q=0.9,en;q=0.8', + } + + def homeContent(self, filter): + result = {'class': [{'type_id': '推荐榜', 'type_name': '🔥 推荐榜'}, + {'type_id': '新剧', 'type_name': '🎬 新剧'}, + {'type_id': '逆袭', 'type_name': '🎬 逆袭'}, + {'type_id': '霸总', 'type_name': '🎬 霸总'}, + {'type_id': '现代言情', 'type_name': '🎬 现代言情'}, + {'type_id': '打脸虐渣', 'type_name': '🎬 打脸虐渣'}, + {'type_id': '豪门恩怨', 'type_name': '🎬 豪门恩怨'}, + {'type_id': '神豪', 'type_name': '🎬 神豪'}, + {'type_id': '马甲', 'type_name': '🎬 马甲'}, + {'type_id': '都市日常', 'type_name': '🎬 都市日常'}, + {'type_id': '战神归来', 'type_name': '🎬 战神归来'}, + {'type_id': '小人物', 'type_name': '🎬 小人物'}, + {'type_id': '女性成长', 'type_name': '🎬 女性成长'}, + {'type_id': '大女主', 'type_name': '🎬 大女主'}, + {'type_id': '穿越', 'type_name': '🎬 穿越'}, + {'type_id': '都市修仙', 'type_name': '🎬 都市修仙'}, + {'type_id': '强者回归', 'type_name': '🎬 强者回归'}, + {'type_id': '亲情', 'type_name': '🎬 亲情'}, + {'type_id': '古装', 'type_name': '🎬 古装'}, + {'type_id': '重生', 'type_name': '🎬 重生'}, + {'type_id': '闪婚', 'type_name': '🎬 闪婚'}, + {'type_id': '赘婿逆袭', 'type_name': '🎬 赘婿逆袭'}, + {'type_id': '虐恋', 'type_name': '🎬 虐恋'}, + {'type_id': '追妻', 'type_name': '🎬 追妻'}, + {'type_id': '天下无敌', 'type_name': '🎬 天下无敌'}, + {'type_id': '家庭伦理', 'type_name': '🎬 家庭伦理'}, + {'type_id': '萌宝', 'type_name': '🎬 萌宝'}, + {'type_id': '古风权谋', 'type_name': '🎬 古风权谋'}, + {'type_id': '职场', 'type_name': '🎬 职场'}, + {'type_id': '奇幻脑洞', 'type_name': '🎬 奇幻脑洞'}, + {'type_id': '异能', 'type_name': '🎬 异能'}, + {'type_id': '无敌神医', 'type_name': '🎬 无敌神医'}, + {'type_id': '古风言情', 'type_name': '🎬 古风言情'}, + {'type_id': '传承觉醒', 'type_name': '🎬 传承觉醒'}, + {'type_id': '现言甜宠', 'type_name': '🎬 现言甜宠'}, + {'type_id': '奇幻爱情', 'type_name': '🎬 奇幻爱情'}, + {'type_id': '乡村', 'type_name': '🎬 乡村'}, + {'type_id': '历史古代', 'type_name': '🎬 历史古代'}, + {'type_id': '王妃', 'type_name': '🎬 王妃'}, + {'type_id': '高手下山', 'type_name': '🎬 高手下山'}, + {'type_id': '娱乐圈', 'type_name': '🎬 娱乐圈'}, + {'type_id': '强强联合', 'type_name': '🎬 强强联合'}, + {'type_id': '破镜重圆', 'type_name': '🎬 破镜重圆'}, + {'type_id': '暗恋成真', 'type_name': '🎬 暗恋成真'}, + {'type_id': '民国', 'type_name': '🎬 民国'}, + {'type_id': '欢喜冤家', 'type_name': '🎬 欢喜冤家'}, + {'type_id': '系统', 'type_name': '🎬 系统'}, + {'type_id': '真假千金', 'type_name': '🎬 真假千金'}, + {'type_id': '龙王', 'type_name': '🎬 龙王'}, + {'type_id': '校园', 'type_name': '🎬 校园'}, + {'type_id': '穿书', 'type_name': '🎬 穿书'}, + {'type_id': '女帝', 'type_name': '🎬 女帝'}, + {'type_id': '团宠', 'type_name': '🎬 团宠'}, + {'type_id': '年代爱情', 'type_name': '🎬 年代爱情'}, + {'type_id': '玄幻仙侠', 'type_name': '🎬 玄幻仙侠'}, + {'type_id': '青梅竹马', 'type_name': '🎬 青梅竹马'}, + {'type_id': '悬疑推理', 'type_name': '🎬 悬疑推理'}, + {'type_id': '皇后', 'type_name': '🎬 皇后'}, + {'type_id': '替身', 'type_name': '🎬 替身'}, + {'type_id': '大叔', 'type_name': '🎬 大叔'}, + {'type_id': '喜剧', 'type_name': '🎬 喜剧'}, + {'type_id': '剧情', 'type_name': '🎬 剧情'}]} + return result + + def homeVideoContent(self): + return [] + + def categoryContent(self, tid, pg, filter, extend): + params = { + 'classname': tid, + 'offset': str((int(pg) - 1)), + } + # 更新请求路径为 /duanju/api.php + data = self.fetch(f'{self.ahost}/duanju/api.php', params=params, headers=self.headers).json() + videos = [] + for k in data['data']: + videos.append({ + 'vod_id': k.get('book_id'), + 'vod_name': k.get('title'), + 'vod_pic': k.get('cover'), + 'vod_year': k.get('score'), + 'vod_remarks': f"{k.get('sub_title')}|{k.get('episode_cnt')}" + }) + result = {} + result['list'] = videos + result['page'] = pg + result['pagecount'] = 9999 + result['limit'] = 90 + result['total'] = 999999 + return result + + def detailContent(self, ids): + # 更新请求路径为 /duanju/api.php + v = self.fetch(f'{self.ahost}/duanju/api.php', params={'book_id': ids[0]}, headers=self.headers).json() + vod = { + 'vod_id': ids[0], + 'vod_name': v.get('title'), + 'type_name': v.get('category'), + 'vod_year': v.get('time'), + 'vod_remarks': v.get('duration'), + 'vod_content': v.get('desc'), + 'vod_play_from': '爱看短剧', + 'vod_play_url': '#'.join([f"{i['title']}${i['video_id']}" for i in v['data']]) + } + return {'list': [vod]} + + def searchContent(self, key, quick, pg="1"): + return self.categoryContent(key, pg, True, {}) + + def playerContent(self, flag, id, vipFlags): + # 更新请求路径为 /duanju/api.php + data = self.fetch(f'{self.ahost}/duanju/api.php', params={'video_id': id}, headers=self.headers).json() + return {'parse': 0, 'url': data['data']['url'], 'header': self.headers} + + def localProxy(self, param): + pass \ No newline at end of file diff --git a/潇洒/movie/py/XYDJ.py b/潇洒/movie/py/XYDJ.py new file mode 100644 index 00000000..8a7d540f --- /dev/null +++ b/潇洒/movie/py/XYDJ.py @@ -0,0 +1,343 @@ +# coding = utf-8 +# !/usr/bin/python + +""" +""" + +from Crypto.Util.Padding import unpad +from Crypto.Util.Padding import pad +from urllib.parse import unquote +from Crypto.Cipher import ARC4 +from urllib.parse import quote +from base.spider import Spider +from Crypto.Cipher import AES +from bs4 import BeautifulSoup +from base64 import b64decode +import urllib.request +import urllib.parse +import binascii +import requests +import base64 +import json +import time +import sys +import re +import os + +sys.path.append('..') + +xurl = "https://app.whjzjx.cn" + +headers = { + 'User-Agent': 'Linux; Android 12; Pixel 3 XL) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/98.0.4758.101 Mobile Safari/537.36' + } + +headerf = { + "platform": "1", + "user_agent": "Mozilla/5.0 (Linux; Android 9; V1938T Build/PQ3A.190705.08211809; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/91.0.4472.114 Safari/537.36", + "content-type": "application/json; charset=utf-8" + } + +times = int(time.time() * 1000) + +data = { + "device": "2a50580e69d38388c94c93605241fb306", + "package_name": "com.jz.xydj", + "android_id": "ec1280db12795506", + "install_first_open": True, + "first_install_time": 1752505243345, + "last_update_time": 1752505243345, + "report_link_url": "", + "authorization": "", + "timestamp": times + } + +plain_text = json.dumps(data, separators=(',', ':'), ensure_ascii=False) + +key = "B@ecf920Od8A4df7" +key_bytes = key.encode('utf-8') +plain_bytes = plain_text.encode('utf-8') +cipher = AES.new(key_bytes, AES.MODE_ECB) +padded_data = pad(plain_bytes, AES.block_size) +ciphertext = cipher.encrypt(padded_data) +encrypted = base64.b64encode(ciphertext).decode('utf-8') + +response = requests.post("https://u.shytkjgs.com/user/v3/account/login", headers=headerf, data=encrypted) +response_data = response.json() +Authorization = response_data['data']['token'] + +headerx = { + 'authorization': Authorization, + 'platform': '1', + 'version_name': '3.8.3.1' + } + +class Spider(Spider): + global xurl + global headerx + global headers + + def getName(self): + return "首页" + + def init(self, extend): + pass + + def isVideoFormat(self, url): + pass + + def manualVideoCheck(self): + pass + + def extract_middle_text(self, text, start_str, end_str, pl, start_index1: str = '', end_index2: str = ''): + if pl == 3: + plx = [] + while True: + start_index = text.find(start_str) + if start_index == -1: + break + end_index = text.find(end_str, start_index + len(start_str)) + if end_index == -1: + break + middle_text = text[start_index + len(start_str):end_index] + plx.append(middle_text) + text = text.replace(start_str + middle_text + end_str, '') + if len(plx) > 0: + purl = '' + for i in range(len(plx)): + matches = re.findall(start_index1, plx[i]) + output = "" + for match in matches: + match3 = re.search(r'(?:^|[^0-9])(\d+)(?:[^0-9]|$)', match[1]) + if match3: + number = match3.group(1) + else: + number = 0 + if 'http' not in match[0]: + output += f"#{match[1]}${number}{xurl}{match[0]}" + else: + output += f"#{match[1]}${number}{match[0]}" + output = output[1:] + purl = purl + output + "$$$" + purl = purl[:-3] + return purl + else: + return "" + else: + start_index = text.find(start_str) + if start_index == -1: + return "" + end_index = text.find(end_str, start_index + len(start_str)) + if end_index == -1: + return "" + + if pl == 0: + middle_text = text[start_index + len(start_str):end_index] + return middle_text.replace("\\", "") + + if pl == 1: + middle_text = text[start_index + len(start_str):end_index] + matches = re.findall(start_index1, middle_text) + if matches: + jg = ' '.join(matches) + return jg + + if pl == 2: + middle_text = text[start_index + len(start_str):end_index] + matches = re.findall(start_index1, middle_text) + if matches: + new_list = [f'{item}' for item in matches] + jg = '$$$'.join(new_list) + return jg + + def homeContent(self, filter): + result = {} + result = {"class": [{"type_id": "1", "type_name": "剧场"}, + {"type_id": "3", "type_name": "新剧"}, + {"type_id": "2", "type_name": "热播"}, + {"type_id": "7", "type_name": "星选"}, + {"type_id": "5", "type_name": "阳光"}], + } + + return result + + def homeVideoContent(self): + videos = [] + + url= f'{xurl}/v1/theater/home_page?theater_class_id=1&class2_id=4&page_num=1&page_size=24' + detail = requests.get(url=url, headers=headerx) + detail.encoding = "utf-8" + if detail.status_code == 200: + data = detail.json() + + for vod in data['data']['list']: + + name = vod['theater']['title'] + + id = vod['theater']['id'] + + pic = vod['theater']['cover_url'] + + remark = vod['theater']['play_amount_str'] + + video = { + "vod_id": id, + "vod_name": name, + "vod_pic": pic, + "vod_remarks": remark + } + videos.append(video) + + result = {'list': videos} + return result + + def categoryContent(self, cid, pg, filter, ext): + result = {} + videos = [] + + url = f'{xurl}/v1/theater/home_page?theater_class_id={cid}&page_num={pg}&page_size=24' + detail = requests.get(url=url,headers=headerx) + detail.encoding = "utf-8" + if detail.status_code == 200: + data = detail.json() + + for vod in data['data']['list']: + + name = vod['theater']['title'] + + id = vod['theater']['id'] + + pic = vod['theater']['cover_url'] + + remark = vod['theater']['theme'] + + video = { + "vod_id": id, + "vod_name": name, + "vod_pic": pic, + "vod_remarks": remark + } + videos.append(video) + + result = {'list': videos} + result['page'] = pg + result['pagecount'] = 9999 + result['limit'] = 90 + result['total'] = 999999 + return result + + def detailContent(self, ids): + did = ids[0] + result = {} + videos = [] + xianlu = '' + bofang = '' + + url = f'{xurl}/v2/theater_parent/detail?theater_parent_id={did}' + detail = requests.get(url=url, headers=headerx) + detail.encoding = "utf-8" + if detail.status_code == 200: + data = detail.json() + + url = 'https://fs-im-kefu.7moor-fs1.com/ly/4d2c3f00-7d4c-11e5-af15-41bf63ae4ea0/1732707176882/jiduo.txt' + response = requests.get(url) + response.encoding = 'utf-8' + code = response.text + name = self.extract_middle_text(code, "s1='", "'", 0) + Jumps = self.extract_middle_text(code, "s2='", "'", 0) + + content = '剧情:' + data['data']['introduction'] + + area = data['data']['desc_tags'][0] + + remarks = data['data']['filing'] + + # 修复剧集只有一集的问题 - 检查theaters数据是否存在且不为空 + if 'theaters' in data['data'] and data['data']['theaters']: + for sou in data['data']['theaters']: + id = sou['son_video_url'] + name = sou['num'] + bofang = bofang + str(name) + '$' + id + '#' + + bofang = bofang[:-1] if bofang.endswith('#') else bofang + xianlu = '星芽' + else: + # 如果没有theaters数据,检查是否有单个视频URL + if 'video_url' in data['data'] and data['data']['video_url']: + bofang = '1$' + data['data']['video_url'] + xianlu = '星芽' + else: + bofang = Jumps + xianlu = '1' + + videos.append({ + "vod_id": did, + "vod_content": content, + "vod_remarks": remarks, + "vod_area": area, + "vod_play_from": xianlu, + "vod_play_url": bofang + }) + + result['list'] = videos + return result + + def playerContent(self, flag, id, vipFlags): + + result = {} + result["parse"] = 0 + result["playUrl"] = '' + result["url"] = id + result["header"] = headers + return result + + def searchContentPage(self, key, quick, page): + result = {} + videos = [] + + payload = { + "text": key + } + + url = f"{xurl}/v3/search" + detail = requests.post(url=url, headers=headerx, json=payload) + if detail.status_code == 200: + detail.encoding = "utf-8" + data = detail.json() + + for vod in data['data']['theater']['search_data']: + + name = vod['title'] + + id = vod['id'] + + pic = vod['cover_url'] + + remark = vod['score_str'] + + video = { + "vod_id": id, + "vod_name": name, + "vod_pic": pic, + "vod_remarks": remark + } + videos.append(video) + + result['list'] = videos + result['page'] = page + result['pagecount'] = 9999 + result['limit'] = 90 + result['total'] = 999999 + return result + + def searchContent(self, key, quick, pg="1"): + return self.searchContentPage(key, quick, '1') + + def localProxy(self, params): + if params['type'] == "m3u8": + return self.proxyM3u8(params) + elif params['type'] == "media": + return self.proxyMedia(params) + elif params['type'] == "ts": + return self.proxyTs(params) + return None \ No newline at end of file diff --git a/潇洒/other/js/ACMV.js b/潇洒/other/js/ACMV.js new file mode 100644 index 00000000..98a34d85 --- /dev/null +++ b/潇洒/other/js/ACMV.js @@ -0,0 +1 @@ +dmFyIHJ1bGUgPSB7CiAgICB0aXRsZTogJ+eIsei9pk1WJywKICAgIGhvc3Q6ICdodHRwczovL3d3dy5pY2hlbXYuY29tJywKICAgIGhvbWVVcmw6ICcvbXYvJywKICAgIHVybDogJy9tdi9meWNsYXNzX2Z5cGFnZS5odG1sJywKICAgIHNlYXJjaFVybDogJy9zZWFyY2gucGhwP2tleT0qKiZwYWdlcz1meXBhZ2UnLAogICAgc2VhcmNoYWJsZTogMiwKICAgIHF1aWNrU2VhcmNoOiAwLAogICAgY2xhc3NfcGFyc2U6ICcubGVpX2ZsJiZsaTthJiZUZXh0O2EmJmhyZWY7LiovKFxcZCspXzEuaHRtbCcsCiAgICBoZWFkZXJzOiB7CiAgICAgICAgJ1VzZXItQWdlbnQnOiAnTU9CSUxFX1VBJwogICAgfSwKICAgIHRpbWVvdXQ6IDUwMDAsCiAgICBwbGF5X3BhcnNlOiB0cnVlLAogICAgbGF6eTogJycsCiAgICBsaW1pdDogNiwKICAgIGRvdWJsZTogZmFsc2UsCiAgICDlm77niYfmnaXmupA6ICdAUmVmZXJlcj1odHRwczovL3d3dy5pY2hlbXYuY29tLycsCiAgICDmjqjojZA6ICcqJywKICAgIOS4gOe6pzogJy5tdl9saXN0JiZsaTthJiZ0aXRsZTtpbWcmJmRhdGEtc3JjOzthJiZocmVmJywKICAgIOS6jOe6pzogJyonLAogICAg5pCc57SiOiAnLnNwX2xpc3QmJmxpO2EmJnRpdGxlO2ltZyYmZGF0YS1zcmM7LnNpbmdlciYmVGV4dDthJiZocmVmOy5oaXRzJiZUZXh0JywKfQ== \ No newline at end of file diff --git a/潇洒/other/js/ASNTSW.js b/潇洒/other/js/ASNTSW.js new file mode 100644 index 00000000..ac7926b3 --- /dev/null +++ b/潇洒/other/js/ASNTSW.js @@ -0,0 +1 @@ +dmFyIHJ1bGUgPSB7CiAgICB0aXRsZTogJ+eIseS4iuS9oOWQrOS5pue9kScsCiAgICBob3N0OiAnaHR0cHM6Ly93d3cuMjMwdHMubmV0JywKICAgIHVybDogJy9zb3J0L2Z5Y2xhc3MvZnlwYWdlLmh0bWwnLAogICAgc2VhcmNoVXJsOiAnL3NlYXJjaC5odG1sP3NlYXJjaHR5cGU9bmFtZSZzZWFyY2h3b3JkPSoqJnBhZ2U9ZnlwYWdlJywKICAgIHNlYXJjaGFibGU6IDIsCiAgICBxdWlja1NlYXJjaDogMCwKICAgIGhlYWRlcnM6IHsKICAgICAgICAnVXNlci1BZ2VudCc6ICdQQ19VQScKICAgIH0sCiAgICB0aW1lb3V0OiA1MDAwLAogICAgY2xhc3NfcGFyc2U6ICcubmF2LW9sJiZsaTpndCgwKTpsdCg2KTthJiZUZXh0O2EmJmhyZWY7LiovKFxcdyspLmh0bWwnLAogICAgcGxheV9wYXJzZTogdHJ1ZSwKICAgIGxhenk6ICdqczppbnB1dD1pbnB1dC5yZXBsYWNlKCJ3d3ciLCJ3YXAiKScsCiAgICBsaW1pdDogNiwKICAgIOaOqOiNkDogJyNteVRhYl9Db250ZW50MSYmbGk7LnRhYi1ib29rLXRpdGxlJiZUZXh0Oyo7LnRhYi1ib29rLWF1dGhvciYmVGV4dDsqJywKICAgIOS4gOe6pzogJ3VsLmxpc3Qtd29ya3MmJmxpOy5saXN0LWJvb2stZHQtLXNwYW4mJlRleHQ7LmxhenkmJmRhdGEtb3JpZ2luYWw7LmJvb2stYXV0aG9yOmVxKDIpJiZhJiZUZXh0O2EmJmhyZWYnLAogICAg5LqM57qnOiB7CiAgICAgICAgdGl0bGU6ICcuYm9vay1jb3ZlciYmYWx0Oy5ib29rLWluZm8mJmRkLS1zcGFuOmVxKDEpJiZUZXh0JywKICAgICAgICBpbWc6ICcuYm9vay1jb3ZlciYmc3JjJywKICAgICAgICBkZXNjOiAnLmJvb2staW5mbyYmZGQ6ZXEoNCkmJlRleHQ7OzsuYm9vay1pbmZvJiZkZC0tc3BhbjplcSgzKSYmVGV4dDsuYm9vay1pbmZvJiZkZC0tc3BhbjplcSgyKSYmVGV4dCcsCiAgICAgICAgY29udGVudDogJy5ib29rLWRlcyYmVGV4dCcsCiAgICAgICAgdGFiczogJy5wbGF5bGlzdC10b3AmJmgyJywKICAgICAgICBsaXN0czogJyNwbGF5bGlzdDplcSgjaWQpJiZsaScsCiAgICB9LAogICAg5pCc57SiOiAnKicsCn0= \ No newline at end of file diff --git a/潇洒/other/js/BK.js b/潇洒/other/js/BK.js new file mode 100644 index 00000000..c1e7a351 --- /dev/null +++ b/潇洒/other/js/BK.js @@ -0,0 +1 @@ +Ly8g5peg5pCc57SiCnZhciBydWxlID0gewogICAgdGl0bGU6ICfmkq3lrqInLAogICAgaG9zdDogJ2h0dHBzOi8vZ2V0cG9kY2FzdC54eXonLAogICAgdXJsOiAnL2Z5Y2xhc3MnLAogICAgc2VhcmNoVXJsOiAnJywKICAgIHNlYXJjaGFibGU6IDAsCiAgICBxdWlja1NlYXJjaDogMCwKICAgIGhlYWRlcnM6IHsKICAgICAgICAnVXNlci1BZ2VudCc6ICdQQ19VQScKICAgIH0sCiAgICB0aW1lb3V0OiA1MDAwLAogICAgY2xhc3NfbmFtZTogJ+aSreWuoibkurrmlocmTkVXU+eDreeCuSblvbHop4bkuI7or7vkuaYm5pWZ6IKyJuWOhuWPsibpn7PkuZAm5oOF5oSfJuacieWjsOS5picsCiAgICBjbGFzc191cmw6ICcwJjEmMiYzJjQmNSY2JjcmOCcsCiAgICBjYXRlX2V4Y2x1ZGU6ICcnLAogICAgcGxheV9wYXJzZTogdHJ1ZSwKICAgIGxhenk6IGBqczoKCQlpbnB1dCA9IHtqeDowLCB1cmw6aW5wdXQsIHBhcnNlOjB9CglgLAogICAgbGltaXQ6IDYsCiAgICDmjqjojZA6IGBqczoKCQlwZGZoPWpzcC5wZGZoO3BkZmE9anNwLnBkZmE7cGQ9anNwLnBkOwoJCXZhciBkID0gW107CgkJdmFyIGh0bWwgPSByZXF1ZXN0KEhPU1QpOwoJCXZhciBsaXN0ID0gcGRmYShodG1sLCAnYm9keSYmLnBpY19saXN0OmVxKDApJiZsaScpOwoJCWxpc3QuZm9yRWFjaChpdCA9PiB7CgkJCWQucHVzaCh7CgkJCQl0aXRsZTogcGRmaChpdCwgJy50aXRsZSYmVGV4dCcpLAoJCQkJcGljX3VybDogcGRmaChpdCwgJ2ltZyYmc3JjJyksCgkJCQl1cmw6IHBkKGl0LCAnYSYmaHJlZicpICsgJ3wnICsgcGRmaChpdCwgJy50aXRsZSYmVGV4dCcpICsgJ3wnICsgcGRmaChpdCwgJ2ltZyYmc3JjJykKCQkJfSk7CgkJfSkKCQlzZXRSZXN1bHQoZCk7CglgLAogICAg5LiA57qnOiBganM6CgkJcGRmaD1qc3AucGRmaDtwZGZhPWpzcC5wZGZhO3BkPWpzcC5wZDsKCQl2YXIgZCA9IFtdOwoJCXZhciBodG1sID0gcmVxdWVzdChIT1NUKTsKCQl2YXIgbGlzdCA9IHBkZmEoaHRtbCwgJ2JvZHkmJi5waWNfbGlzdDplcShsaXN0X2lkeCkmJmxpJy5yZXBsYWNlKCJsaXN0X2lkeCIsIE1ZX0NBVEUpKTsKCQlsaXN0LmZvckVhY2goaXQgPT4gewoJCQlkLnB1c2goewoJCQkJdGl0bGU6IHBkZmgoaXQsICcudGl0bGUmJlRleHQnKSwKCQkJCXBpY191cmw6IHBkZmgoaXQsICdpbWcmJnNyYycpLAoJCQkJdXJsOiBwZChpdCwgJ2EmJmhyZWYnKSArICd8JyArIHBkZmgoaXQsICcudGl0bGUmJlRleHQnKSArICd8JyArIHBkZmgoaXQsICdpbWcmJnNyYycpCgkJCX0pOwoJCX0pCgkJc2V0UmVzdWx0KGQpOwoJYCwKICAgIOS6jOe6pzogYGpzOgogICAgICAgIHBkZmg9anNwLnBkZmg7cGRmYT1qc3AucGRmYTtwZD1qc3AucGQ7CgkJbGV0IHB1cmwgPSBpbnB1dC5zcGxpdCgnfCcpWzBdOwoJCWxldCB0aXRsZSA9IGlucHV0LnNwbGl0KCd8JylbMV07CgkJbGV0IHBpYyA9IGlucHV0LnNwbGl0KCd8JylbMl07CgkJdmFyIGh0bWwgPSByZXF1ZXN0KHB1cmwpOwoJCWxldCBkID0gW107CgkJVk9EID0ge307CgkJVk9ELnZvZF9uYW1lID0gdGl0bGU7CgkJVk9ELnZvZF9waWMgPSBwaWM7CgkJaWYgKHR5cGVvZiBwbGF5X3VybCA9PT0gJ3VuZGVmaW5lZCcpIHsKICAgICAgICAgICAgdmFyIHBsYXlfdXJsID0gJycKICAgICAgICB9CiAgICAgICAgbGV0IGVwaXNvZGVzID0gcGRmYShodG1sLCAnYm9keSYmaXRlbScpOwoJCWxvZygnZXBpc29kZXMgPT09PT09PT09PicrZXBpc29kZXMpOwoJCWxldCB2b2RfcGxheV91cmwgPSBlcGlzb2Rlcy5tYXAoZnVuY3Rpb24oaXQpIHsKCQkJbGV0IGl0aXRsZSA9IGl0Lm1hdGNoKC88dGl0bGU+KC4qPyk8XFwvdGl0bGU+LylbMV0ucmVwbGFjZSgvJmx0OyFcXFtDREFUQVxcW3xcXF1cXF0mZ3Q7fHw8IVxcW0NEQVRBXFxbfFxcXVxcXT4vZywgJycpOwoJCQlsZXQgaXVybCA9IHBkZmgoaXQsICdlbmNsb3N1cmUmJnVybCcpOwoJCQlyZXR1cm4gaXRpdGxlICsgJyQnICsgaXVybAogICAgICAgIH0pLmpvaW4oJyMnKQogICAgICAgIFZPRC52b2RfcGxheV9mcm9tID0gJ+mBk+mVv+WcqOe6vyc7CiAgICAgICAgVk9ELnZvZF9wbGF5X3VybCA9IHZvZF9wbGF5X3VybAoJYCwKICAgIOaQnOe0ojogJycsCn0= \ No newline at end of file diff --git a/潇洒/other/js/BKTS.js b/潇洒/other/js/BKTS.js new file mode 100644 index 00000000..e666cd98 --- /dev/null +++ b/潇洒/other/js/BKTS.js @@ -0,0 +1 @@ +dmFyIHJ1bGUgPSB7CiAgICB0aXRsZTogJ+WNmueci+WQrOS5picsCiAgICBob3N0OiAnaHR0cHM6Ly9hcGkuYm9va2FuLmNvbS5jbicsCiAgICBob21lVXJsOiAnL3ZvaWNlL2Jvb2svbGlzdD9pbnN0YW5jZV9pZD0yNTMwNCZwYWdlPTEmY2F0ZWdvcnlfaWQ9MTMwNSZudW09MjQnLAogICAgdXJsOiAnL3ZvaWNlL2Jvb2svbGlzdD9pbnN0YW5jZV9pZD0yNTMwNCZwYWdlPWZ5cGFnZSZjYXRlZ29yeV9pZD1meWNsYXNzJm51bT0yNCcsCiAgICBkZXRhaWxVcmw6ICcvdm9pY2UvYWxidW0vdW5pdHM/YWxidW1faWQ9ZnlpZCZwYWdlPTEmbnVtPTIwMCZvcmRlcj0xJywKICAgIHNlYXJjaFVybDogJ2h0dHBzOi8vZXMuYm9va2FuLmNvbS5jbi9hcGkvdjMvdm9pY2UvYm9vaz9pbnN0YW5jZUlkPTI1MzA0JmtleXdvcmQ9KiomcGFnZU51bT1meXBhZ2UmbGltaXROdW09MjAnLAogICAgc2VhcmNoYWJsZTogMiwKICAgIHF1aWNrU2VhcmNoOiAwLAogICAgY2xhc3NfbmFtZTogJ+WwkeW5tOivu+eJqSblhL/nq6XmloflraYm5Zu95a2m57uP5YW4JuaWh+iJuuWwkeW5tCbogrLlhL/lv4Pnu48m5b+D55CG5ZOy5a2mJumdkuaYpeWKseW/lybljoblj7LlsI/or7Qm5pWF5LqL5LyaJumfs+S5kOaIj+WJpybnm7jlo7Dor4TkuaYnLAogICAgY2xhc3NfdXJsOiAnMTMwNSYxMzA0JjEzMjAmMTMwNiYxMzA5JjEzMTAmMTMwNyYxMzEyJjEzMDMmMTMxNyYxMzE5JywKICAgIGhlYWRlcnM6IHsKICAgICAgICAnVXNlci1BZ2VudCc6ICdNT0JJTEVfVUEnCiAgICB9LAogICAg5o6o6I2QOiAnKicsCiAgICDkuIDnuqc6ICdqc29uOmRhdGEubGlzdDtuYW1lO2NvdmVyO2V4dHJhLmF1dGhvcjtpZCcsCiAgICDkuoznuqc6IGBqczoKICAgICAgICBsZXQgZCA9IFtdOwogICAgICAgIFZPRCA9IHsKICAgICAgICAgICAgdm9kX3VybDogaW5wdXQsCiAgICAgICAgICAgIHZvZF9uYW1lOiAiIiwKICAgICAgICAgICAgdm9kX2FjdG9yOiAiIiwKICAgICAgICAgICAgdm9kX3llYXI6ICIiLAogICAgICAgICAgICB2b2RfZGlyZWN0b3I6ICIiCiAgICAgICAgfTsKICAgICAgICBsZXQgcGxheWxpc3RzID0gW107CiAgICAgICAgbGV0IGRhdGEgPSBKU09OLnBhcnNlKHJlcXVlc3QoaW5wdXQpKS5kYXRhOwogICAgICAgIFZPRC52b2RfbmFtZSA9IGRhdGEubGlzdFswXS5pZDsKICAgICAgICBWT0Qudm9kX2FjdG9yID0gIuKWtu+4j+WIm+W7uuS6jiIgKyBkYXRhLmxpc3RbMF0uY3JlYXRlZF9hdDsKICAgICAgICBWT0Qudm9kX3llYXIgPSBkYXRhLmxpc3RbMF0uY3JlYXRlZF9hdC5zcGxpdCgiLSIpWzBdOwogICAgICAgIFZPRC52b2RfZGlyZWN0b3IgPSAi4pa277iP5pu05paw5LqOIiArIGRhdGEubGlzdFswXS51cGRhdGVkX2F0OwogICAgICAgIGxldCB0b3RhbCA9IGRhdGEudG90YWw7CiAgICAgICAgcGxheWxpc3RzID0gZGF0YS5saXN0OwogICAgICAgIGlmICh0b3RhbCA+IDIwMCkgewogICAgICAgICAgICBmb3IgKGxldCBpID0gMjsgaSA8IHRvdGFsIC8gMjAwICsgMTsgaSsrKSB7CiAgICAgICAgICAgICAgICBsZXQgbGlzdFVybCA9IGlucHV0LnNwbGl0KCImIilbMF0gKyAiJnBhZ2U9IiArIGkgKyAiJm51bT0yMDAmb3JkZXI9MSI7CiAgICAgICAgICAgICAgICBsZXQgZGF0YSA9IEpTT04ucGFyc2UocmVxdWVzdChsaXN0VXJsKSkuZGF0YTsKICAgICAgICAgICAgICAgIHBsYXlsaXN0cyA9IHBsYXlsaXN0cy5jb25jYXQoZGF0YS5saXN0KQogICAgICAgICAgICB9CiAgICAgICAgfQogICAgICAgIHBsYXlsaXN0cy5mb3JFYWNoKGZ1bmN0aW9uKGl0KSB7CiAgICAgICAgICAgIGQucHVzaCh7CiAgICAgICAgICAgICAgICB0aXRsZTogaXQudGl0bGUsCiAgICAgICAgICAgICAgICB1cmw6IGl0LmZpbGUKICAgICAgICAgICAgfSkKICAgICAgICB9KTsKICAgICAgICBWT0Qudm9kX3BsYXlfZnJvbSA9ICJib29rYW4iOwogICAgICAgIFZPRC52b2RfcGxheV91cmwgPSBkLm1hcChmdW5jdGlvbihpdCkgewogICAgICAgICAgICByZXR1cm4gaXQudGl0bGUgKyAiJCIgKyBpdC51cmwKICAgICAgICB9KS5qb2luKCIjIik7CiAgICBgLAogICAg5pCc57SiOiAnKicsCn0= \ No newline at end of file diff --git a/潇洒/other/js/KQMV.js b/潇洒/other/js/KQMV.js new file mode 100644 index 00000000..98222ffe --- /dev/null +++ b/潇洒/other/js/KQMV.js @@ -0,0 +1 @@ +dmFyIHJ1bGUgPSB7CiAgICB0aXRsZTogJ+mFt+Wlh01WJywKICAgIGhvc3Q6ICdodHRwczovL3d3dy5rdXFpbXYuY29tJywKICAgIC8vIGhvbWVVcmw6Jy9wbGF5LycsCiAgICB1cmw6ICcvcGxheS9meWNsYXNzX2Z5cGFnZS5odG1sJywKICAgIHNlYXJjaFVybDogJy9zZWFyY2gucGhwP2tleT0qKiZwYWdlcz1meXBhZ2UnLAogICAgc2VhcmNoYWJsZTogMiwKICAgIHF1aWNrU2VhcmNoOiAwLAogICAgLy8gY2xhc3NfcGFyc2U6Jy5tYWluOmVxKDEpJiZsaTthJiZUZXh0O2EmJmhyZWY7LiovKFxcZCspXzEuaHRtbCcsCiAgICAvLyBjbGFzc19wYXJzZTonLmxlaV9jbGFzcyYmYTthJiZUZXh0O2EmJmhyZWY7LiovKFxcZCspXzEuaHRtbCcsCiAgICBjbGFzc19uYW1lOiAn5Y2O6K+t6auY5riFJuaXpemfqeeyvumAiSbmrKfnvo5NVibpq5jmuIXnjrDlnLom5b2x6KeGTVYm5aSc5bqX6KeG6aKRJui9puaooeinhumikSbng63oiJ7op4bpopEm576O5aWz5YaZ55yfJue+juWls+aJk+einycsCiAgICBjbGFzc191cmw6ICcxJjImMyY0JjUmNiY3JjgmOSYxMCcsCiAgICBoZWFkZXJzOiB7CiAgICAgICAgJ1VzZXItQWdlbnQnOiAnTU9CSUxFX1VBJwogICAgfSwKICAgIHRpbWVvdXQ6IDUwMDAsCiAgICBwbGF5X3BhcnNlOiB0cnVlLAogICAgbGF6eTogJycsCiAgICBsaW1pdDogNiwKICAgIGRvdWJsZTogZmFsc2UsCiAgICDmjqjojZA6ICcqJywKICAgIOS4gOe6pzogJ2pzOnZhciBkPVtdO3BkZmg9anNwLnBkZmg7cGRmYT1qc3AucGRmYTtwZD1qc3AucGQ7dmFyIGh0bWw9cmVxdWVzdChpbnB1dCk7bGV0IGxpc3Q9cGRmYShodG1sLCIubXZfbGlzdCYmbGkiKTtsaXN0LmZvckVhY2goKGl0KT0+e2QucHVzaCh7dGl0bGU6cGRmaChpdCwiLm5hbWUmJlRleHQiKSxkZXNjOiLwn46kIitwZGZoKGl0LCIuc2luZ2VyJiZUZXh0IikrIu+9nCIrcGRmaChpdCwiLnRpbWUmJlRleHQiKSxwaWNfdXJsOnBkKGl0LCJpbWcmJnNyYyIpLHVybDpwZChpdCwiYSYmaHJlZiIpLH0pfSk7c2V0UmVzdWx0KGQpOycsCiAgICDkuoznuqc6ICcqJywKICAgIOaQnOe0ojogJy52aWRlb19saXN0JiZsaTthJiZ0aXRsZTs7LnNpbmdlciYmVGV4dDthJiZocmVmOy50XzAzOmVxKDEpJiZUZXh0JywKfQ== \ No newline at end of file diff --git a/潇洒/other/js/LYTS.js b/潇洒/other/js/LYTS.js new file mode 100644 index 00000000..9f4ee81c --- /dev/null +++ b/潇洒/other/js/LYTS.js @@ -0,0 +1 @@ +dmFyIHJ1bGUgPSB7CiAgICB0aXRsZTogJ+WFreaciOWQrOS5picsCiAgICBob3N0OiAnaHR0cDovL20uNnl1ZXRpbmcuY29tJywKICAgIHVybDogJy95cy9meWNsYXNzL28yL3BmeXBhZ2UnLAogICAgc2VhcmNoVXJsOiAnL3NlYXJjaC9pbmRleC9zZWFyY2g/Y29udGVudD0qKiZ0eXBlPTEmcGFnZU51bT1meXBhZ2UmcGFnZVNpemU9NDAnLAogICAgc2VhcmNoYWJsZTogMiwKICAgIHF1aWNrU2VhcmNoOiAwLAogICAgZmlsdGVyYWJsZTogMCwgLy/mmK/lkKblkK/nlKjliIbnsbvnrZvpgIksCiAgICBoZWFkZXJzOiB7CiAgICAgICAgJ1VzZXItQWdlbnQnOiAnTU9CSUxFX1VBJwogICAgfSwKICAgIGNsYXNzX25hbWU6ICflhajpg6jliIbnsbsm546E5bm75aWH5bm7JuS/ruecn+atpuS+oCbmgZDmgJbngbXlvIIm5Y+k5LuK6KiA5oOFJumDveW4guiogOaDhSbnqb/otorph43nlJ8m57Kk6K+t5Y+k5LuUJue9kea4uOWwj+ivtCbpgJrkv5fmloflraYm5Y6G5Y+y57qq5a6eJuWGm+S6iybmgqznlpHmjqjnkIYmZWJjNeezu+WIlyblrpjlnLrllYbmiJgm5YS/56ul6K+754mpJuW5v+aSreWJpyblpJbmlofljp/niYgm6K+E5Lmm5aSn5YWoJuebuOWjsOWwj+WTgSbnmb7lrrborrLlnZsm5YGl5bq35YW755SfJuaVmeadkCbmnJ/liIrlpLTmnaEm5oiP5puyJuiEseWPo+engCcsCiAgICBjbGFzc191cmw6ICd0MCZ0MSZ0MiZ0MyZ0NCZ0MjgmdDUmdDYmdDcmdDExJnQxMiZ0MTMmdDE0JnQxOCZ0MTUmdDE2JnQxNyZ0MjImdDgmdDkmdDEwJnQyMCZ0MjEmdDIzJnQyNCZ0MjcnLAogICAgcGxheV9wYXJzZTogdHJ1ZSwKICAgIGxhenk6ICcnLAogICAgbGltaXQ6IDYsCiAgICDlm77niYfmnaXmupA6ICdAUmVmZXJlcj1odHRwOi8vbS42eXVldGluZy5jb20vQFVzZXItQWdlbnQ9TU9CSUxFX1VBJywKICAgIOaOqOiNkDogJyonLAogICAg5LiA57qnOiAnLmxpc3Qtd3JhcHBlciYmLml0ZW0tbGluaztoMi0tc3BhbiYmVGV4dDtpbWcmJnNyYzsuc3RhdHVzJiZUZXh0O2EmJmhyZWYnLAogICAg5LqM57qnOiB7CiAgICAgICAgInRpdGxlIjogIi5ib29rLXRpdGxlJiZUZXh0Oy50ZXh0OmVxKDApJiZUZXh0IiwKICAgICAgICAiaW1nIjogIi5pbWcmJnNyYyIsCiAgICAgICAgImRlc2MiOiAiLnRleHQ6ZXEoMykmJlRleHQ7OzsudGV4dDplcSgxKSYmVGV4dDsudGV4dDplcSgyKSYmVGV4dCIsCiAgICAgICAgImNvbnRlbnQiOiAiLmJvb2staW50cm8mJlRleHQiLAogICAgICAgICJ0YWJzIjogIi5vcGVyYXRlLWJhciYmLnRvdGFsLW51bSIsCiAgICAgICAgImxpc3RzIjogIi5ib29rLWxpc3Q6ZXEoI2lkKSYmLmxpc3QtaXRlbSIKICAgIH0sCiAgICDmkJzntKI6ICdqczpsZXQgZD1bXTtsZXQgTVlfSE9NRT0iaHR0cDovL20uNnl1ZXRpbmcuY29tIjtsZXQgaHRtbD1yZXF1ZXN0KGlucHV0KTtodG1sPUpTT04ucGFyc2UoaHRtbCk7bGV0IGxpc3Q9aHRtbC5kYXRhLmNvbnRlbnQ7bGlzdC5mb3JFYWNoKGZ1bmN0aW9uKGl0KXtkLnB1c2goe3RpdGxlOml0Lm5hbWUucmVwbGFjZSgvPC4qPz4vZywiIiksaW1nOiJodHRwOi8vaW1nLjZ5dWV0aW5nLmNvbToyMDAwMS8iK2l0LmNvdmVyVXJsTG9jYWwsdXJsOk1ZX0hPTUUrIi9saXN0LyIraXQuY29kZSxkZXNjOml0LmNkYXRlLGNvbnRlbnQ6aXQuZGVzY1h4LnJlcGxhY2UoLyZuYnNwOy9nLCIiKX0pfSk7c2V0UmVzdWx0KGQpOycsCn0= \ No newline at end of file diff --git a/潇洒/other/js/PSSST.js b/潇洒/other/js/PSSST.js new file mode 100644 index 00000000..6a5e55b9 --- /dev/null +++ b/潇洒/other/js/PSSST.js @@ -0,0 +1 @@ +dmFyIHJ1bGUgPSB7CiAgICB0aXRsZTon6K+E5Lmm6ZqP6Lqr5ZCsJywKICAgIGhvc3Q6J2h0dHBzOi8vd3d3LnBzbXAzLmNvbScsCiAgICAvLyB1cmw6Jy9meWNsYXNzL2Z5cGFnZS5odG1sJywKICAgIHVybDonL2Z5ZmlsdGVyL2Z5cGFnZS5odG1sJywKICAgIGZpbHRlcmFibGU6MSwvL+aYr+WQpuWQr+eUqOWIhuexu+etm+mAiSwKICAgIGZpbHRlcl91cmw6J3t7ZmwuY2F0ZUlkfX0nLAogICAgZmlsdGVyOnsKICAgICAgICAieWtjIjpbeyJrZXkiOiJjYXRlSWQiLCJuYW1lIjoi5YiG57G7IiwidmFsdWUiOlt7Im4iOiLlhajpg6giLCJ2IjoieWtjIn0seyJuIjoi6KKB6ZiU5oiQ5LiJ5Zu95ryU5LmJIiwidiI6InlrYy1zZ3l5In0seyJuIjoi6KKB6ZiU5oiQ5rC05rOK5qKB5bGxIiwidiI6InlrYy1zYmxzIn0seyJuIjoi6KKB6ZiU5oiQ5bCB56We5ryU5LmJIiwidiI6InlrYy1mc3l5In0seyJuIjoi6KKB6ZiU5oiQ6Jab5Yia5Y+N5ZSQIiwidiI6InlrYy14Z2Z0In0seyJuIjoi6KKB6ZiU5oiQ5p6X5rW36Zuq5Y6fIiwidiI6InlrYy1saHh5In0seyJuIjoi6KKB6ZiU5oiQ5qWa5rGJ55u45LqJIiwidiI6InlrYy1jaHh6In0seyJuIjoi6KKB6ZiU5oiQ5b2t5YWs5qGIIiwidiI6InlrYy1wZ2EifSx7Im4iOiLoooHpmJTmiJDng4jngavph5HliJoiLCJ2IjoieWtjLWxoamcifSx7Im4iOiLoooHpmJTmiJDph5HpkrHplZYiLCJ2IjoieWtjLWpxYiJ9LHsibiI6IuiigemYlOaIkOS4ieawlOWRqOeRnCIsInYiOiJ5a2Mtc3F6eSJ9LHsibiI6IuiigemYlOaIkOe+pOiLseS8miIsInYiOiJ5a2MtcXloIn0seyJuIjoi6KKB6ZiU5oiQ6ZW/5Z2C6ZuE6aOOIiwidiI6InlrYy1jYnhmIn0seyJuIjoi6KKB6ZiU5oiQ5bmz5Y6f5p6q5aOwIiwidiI6InlrYy1weXFzIn0seyJuIjoi6KKB6ZiU5oiQ5pq06aOO6aqk6ZuoIiwidiI6InlrYy1iZnp5In0seyJuIjoi6YeO54Gr5pil6aOO5paX5Y+k5Z+OIiwidiI6InlrYy15aGNmZGdjIn1dfV0sCiAgICAgICAgInN0ZiI6W3sia2V5IjoiY2F0ZUlkIiwibmFtZSI6IuWIhuexuyIsInZhbHVlIjpbeyJuIjoi5YWo6YOoIiwidiI6InN0ZiJ9LHsibiI6IuWNleeUsOiKs+mai+WUkOa8lOS5iSIsInYiOiJzdGYtc3R5eSJ9LHsibiI6IuWNleeUsOiKs+S5seS4luaerembhCIsInYiOiJzdGYtbHN4eCJ9LHsibiI6IuWNleeUsOiKs+eZveecieWkp+S+oCIsInYiOiJzdGYtYm1keCJ9LHsibiI6IuWNleeUsOiKs+erpeael+S8oCIsInYiOiJzdGYtdGx6In0seyJuIjoi5Y2V55Sw6Iqz5rC05rWS5LygIiwidiI6InN0Zi1zaHoifSx7Im4iOiLljZXnlLDoirPkuInkvqDkupTkuYkiLCJ2Ijoic3RmLXN4d3kifSx7Im4iOiLljZXnlLDoirPkuInkvqDliZEiLCJ2Ijoic3RmLXN4aiJ9LHsibiI6IuWNleeUsOiKs+Wkp+aYjua8lOS5iSIsInYiOiJzdGYtZG15eSJ9LHsibiI6IuWNleeUsOiKs+m+meiZjumjjuS6keS8miIsInYiOiJzdGYtbGhmeWgifSx7Im4iOiLljZXnlLDoirPkuInlm73mvJTkuYkiLCJ2Ijoic3RmLXNneXkifSx7Im4iOiLljZXnlLDoirPolpvlrrblsIYiLCJ2Ijoic3RmLXhqaiJ9LHsibiI6IuWNleeUsOiKs+a4heWumOWGjCIsInYiOiJzdGYtcWdjIn0seyJuIjoi5Y2V55Sw6Iqz5bCP5LqU5LmJIiwidiI6InN0Zi14d3kifSx7Im4iOiLljZXnlLDoirPpk4HmiYfmgKrkvqAiLCJ2Ijoic3RmLXRzZ3gifSx7Im4iOiLljZXnlLDoirPmpZrmsYnkuonpm4QiLCJ2Ijoic3RmLWNoengifV19XSwKICAgICAgICAidGx5IjpbeyJrZXkiOiJjYXRlSWQiLCJuYW1lIjoi5YiG57G7IiwidmFsdWUiOlt7Im4iOiLlhajpg6giLCJ2IjoidGx5In0seyJuIjoi55Sw6L+e5YWD5rC05rWS5LygIiwidiI6InRseS1zaHoifSx7Im4iOiLnlLDov57lhYPmnajlrrblsIYiLCJ2IjoidGx5LXlqaiJ9LHsibiI6IueUsOi/nuWFg+mai+WUkOa8lOS5iSIsInYiOiJ0bHktc3R5eSJ9LHsibiI6IueUsOi/nuWFg+S4ieS+oOS6lOS5iSIsInYiOiJ0bHktc3h3eSJ9LHsibiI6IueUsOi/nuWFg+WImOengOS8oCIsInYiOiJ0bHktbHh6In0seyJuIjoi55Sw6L+e5YWD5bCP5YWr5LmJIiwidiI6InRseS14YnkifSx7Im4iOiLnlLDov57lhYPljIXlhazmoYgiLCJ2IjoidGx5LWJnYSJ9LHsibiI6IueUsOi/nuWFg+Wkp+ivneaIkOivrSIsInYiOiJ0bHktZGhjeSJ9LHsibiI6IueUsOi/nuWFg+WPjOmVluiusCIsInYiOiJ0bHktc2JqIn0seyJuIjoi55Sw6L+e5YWD5rW36Z2S5aSpIiwidiI6InRseS1ocXQifSx7Im4iOiLnlLDov57lhYPovr3msojmiJjlvbkiLCJ2IjoidGx5LWxzenkifSx7Im4iOiLnlLDov57lhYPooYDmuoXmtKXpl6giLCJ2IjoidGx5LXhqam0ifSx7Im4iOiLnlLDov57lhYPplZzoirHnvJgiLCJ2IjoidGx5LWpoeSJ9LHsibiI6IueUsOi/nuWFg+WtmeW6nuaWl+aZuiIsInYiOiJ0bHktc3BkeiJ9LHsibiI6IueUsOi/nuWFg+WtmeiGkeS4juW6nua2kyIsInYiOiJ0bHktc2J5cGoifV19XSwKICAgICAgICAibGxmIjpbeyJrZXkiOiJjYXRlSWQiLCJuYW1lIjoi5YiG57G7IiwidmFsdWUiOlt7Im4iOiLlhajpg6giLCJ2IjoibGxmIn0seyJuIjoi5YiY5YWw6Iqz5bKz6aOe5LygIiwidiI6ImxsZi15ZnoifSx7Im4iOiLliJjlhbDoirPmnajlrrblsIblhajkvKAiLCJ2IjoibGxmLXlqanF6In0seyJuIjoi5YiY5YWw6Iqz5ZG85a625bCGIiwidiI6ImxsZi1oamoifSx7Im4iOiLliJjlhbDoirPotbXljKHog6TmvJTkuYkiLCJ2IjoibGxmLXpreXl5In0seyJuIjoi5YiY5YWw6Iqz5pyx5YWD55KL5ryU5LmJIiwidiI6ImxsZi16eXp5eSJ9LHsibiI6IuWImOWFsOiKs+e6oualvOaipiIsInYiOiJsbGYtaGxtIn0seyJuIjoi5YiY5YWw6Iqz5LqU5Yek5pyd6Ziz5YiAIiwidiI6ImxsZi13ZmN5ZCJ9LHsibiI6IuWImOWFsOiKs+aWsOWys+mjnuS8oCIsInYiOiJsbGYteHlmeiJ9LHsibiI6IuWImOWFsOiKs+adqOWutuWwhiIsInYiOiJsbGYteWpqIn0seyJuIjoi5YiY5YWw6Iqz6KW/5ZSQ5ryU5LmJIiwidiI6ImxsZi14dHl5In0seyJuIjoi5YiY5YWw6Iqz5qiK5qKo6IqxIiwidiI6ImxsZi1mbGgifSx7Im4iOiLliJjlhbDoirPlpKfllJDkvqDlpbMiLCJ2IjoibGxmLWR0eG4ifSx7Im4iOiLliJjlhbDoirPpu5HomY7kvKAiLCJ2IjoibGxmLWhoeiJ9LHsibiI6IuWImOWFsOiKs+a0quatpuWkp+W4nSIsInYiOiJsbGYtaHdkZCJ9LHsibiI6IuWImOWFsOiKs+WlkeS4ueiQp+WkquWQjiIsInYiOiJsbGYtcWR4dGgifV19XSwKICAgICAgICAibGxyIjpbeyJrZXkiOiJjYXRlSWQiLCJuYW1lIjoi5YiG57G7IiwidmFsdWUiOlt7Im4iOiLlhajpg6giLCJ2IjoibGxyIn0seyJuIjoi6L+e5Li95aaC5Lic5rGJ5ryU5LmJIiwidiI6Imxsci1kaHl5In0seyJuIjoi6L+e5Li95aaC5aSn6ZqL5ZSQIiwidiI6Imxsci1kc3QifSx7Im4iOiLov57kuL3lpoLkuInlm73mvJTkuYkiLCJ2IjoibGxyLXNneXkifSx7Im4iOiLov57kuL3lpoLpm43mraPliZHkvqDlm74iLCJ2IjoibGxyLXl6anh0In0seyJuIjoi6L+e5Li95aaC57qi5qW85qKmIiwidiI6Imxsci1obG0ifSx7Im4iOiLov57kuL3lpoLpvpnlm77lhazmoYgiLCJ2IjoibGxyLWx0Z2EifSx7Im4iOiLov57kuL3lpoLpub/pvI7orrAiLCJ2IjoibGxyLWxkaiJ9LHsibiI6Iui/nuS4veWmguWImOWFrOahiCIsInYiOiJsbHItbGdhIn0seyJuIjoi6L+e5Li95aaC5bq354aZ56eB6K6/IiwidiI6Imxsci1reHNmIn0seyJuIjoi6L+e5Li95aaC5Lic5ZGo5YiX5Zu9IiwidiI6Imxsci1kemxnIn0seyJuIjoi6L+e5Li95aaC5Y2B5LqM5aWz5L6gIiwidiI6Imxsci1zZW54In0seyJuIjoi6L+e5Li95aaC5pm65Zyj5Lic5pa55pyUIiwidiI6Imxsci16c2RmcyJ9LHsibiI6Iui/nuS4veWmguS+oOS5ieiLsembhOS8oCIsInYiOiJsbHIteHl5eHoifSx7Im4iOiLov57kuL3lpoLok6zojrHliZHkvqAiLCJ2IjoibGxyLXBsangifSx7Im4iOiLov57kuL3lpoLlurfnhpnlpKfluJ0iLCJ2IjoibGxyLWt4ZGQifV19XSwKICAgICAgICAienN6IjpbeyJrZXkiOiJjYXRlSWQiLCJuYW1lIjoi5YiG57G7IiwidmFsdWUiOlt7Im4iOiLlhajpg6giLCJ2IjoienN6In0seyJuIjoi5byg5bCR5L2Q5aSn5piO5YmR5L6gIiwidiI6Inpzei1kbWp4In0seyJuIjoi5byg5bCR5L2Q6ZuN5q2j5YmR5L6g5Zu+IiwidiI6Inpzei15emp4dCJ9LHsibiI6IuW8oOWwkeS9kOWkqem+meWFq+mDqCIsInYiOiJ6c3otdGxiYiJ9LHsibiI6IuW8oOWwkeS9kOaYhuS7keWJkeS+oCIsInYiOiJ6c3ota2xqeCJ9LHsibiI6IuW8oOWwkeS9kOWkmuaDheWJkeWuouaXoOaDheWJkSIsInYiOiJ6c3otZHFqa3dxaiJ9LHsibiI6IuW8oOWwkeS9kOeskeWCsuaxn+a5liIsInYiOiJ6c3oteGFqaCJ9LHsibiI6IuW8oOWwkeS9kOWwhOmbleiLsembhOS8oCIsInYiOiJ6c3otc2R5eHoifSx7Im4iOiLlvKDlsJHkvZDlgJrlpKnlsaDpvpnorrAiLCJ2IjoienN6LXl0dGxqIn0seyJuIjoi5byg5bCR5L2Q56We6ZuV5L6g5L6jIiwidiI6Inpzei1zZHhsIn0seyJuIjoi5byg5bCR5L2Q6ZKf5YeM5LygIiwidiI6Inpzei16bHoifSx7Im4iOiLlvKDlsJHkvZDmmI7lj7LlpYfkvqAiLCJ2IjoienN6LW1zcXgifSx7Im4iOiLlvKDlsJHkvZDkuK3lm73ooYDmoYgiLCJ2IjoienN6LXpneGEifSx7Im4iOiLlvKDlsJHkvZDnpZ7liZHmg4rlpKnliLrpm43mraMiLCJ2IjoienN6LXNqanRjeXoifSx7Im4iOiLlvKDlsJHkvZDosarmsJTmg4rlpKkiLCJ2IjoienN6LWhxanQifSx7Im4iOiLlvKDlsJHkvZDkubHkuJbmganku4ciLCJ2IjoienN6LWxzZWMifV19XSwKICAgICAgICAidHp5IjpbeyJrZXkiOiJjYXRlSWQiLCJuYW1lIjoi5YiG57G7IiwidmFsdWUiOlt7Im4iOiLlhajpg6giLCJ2IjoidHp5In0seyJuIjoi55Sw5oiY5LmJ5p2O6Ieq5oiQIiwidiI6InR6eS1semMifSx7Im4iOiLnlLDmiJjkuYnnp5jlr4bliJfovaYiLCJ2IjoidHp5LW1tbGMifSx7Im4iOiLnlLDmiJjkuYnmsJHlm73po47kupEiLCJ2IjoidHp5LW1nZnkifSx7Im4iOiLnlLDmiJjkuYnlpJXnhafntKvnpoHln44iLCJ2IjoidHp5LXh6empjIn0seyJuIjoi55Sw5oiY5LmJ6aOO6Zuo5YWz5bGxIiwidiI6InR6eS1meWdzIn0seyJuIjoi55Sw5oiY5LmJ6IGK5paL5b+X5byCIiwidiI6InR6eS1senp5In0seyJuIjoi55Sw5oiY5LmJ5L6g5LmJ6LGq5p2wIiwidiI6InR6eS14eWhqIn0seyJuIjoi6aOO5LqR5Lq654mp6JKL5LuL55+zIiwidiI6InR6eS1meXJ3ampzIn0seyJuIjoi55Sw5oiY5LmJ57ud5a+G6KGM5YqoIiwidiI6InR6eS1qbXhkIn0seyJuIjoi55Sw5oiY5LmJ54eV5a2Q5p2O5LiJ5Lyg5aWHIiwidiI6InR6eS15emxzY3EifSx7Im4iOiLnlLDmiJjkuYnkuK3lm73lj6Tku6PlpYfmoYgiLCJ2IjoidHp5LXpnZ2RxYSJ9LHsibiI6IueUsOaImOS5ieeBq+eJm+mYtSIsInYiOiJ0enktaG56In0seyJuIjoi55Sw5oiY5LmJ5Y6/5aeU5Lmm6K6wIiwidiI6InR6eS14d3NqIn0seyJuIjoi55Sw5oiY5LmJ5pGn5q+B56We6aOO5Y+3IiwidiI6InR6eS1jaHNmaCJ9LHsibiI6IueUsOaImOS5ieS7h+Wkp+WomCIsInYiOiJ0enktY2RuIn1dfV0KICAgIH0sCiAgICBmaWx0ZXJfZGVmOnsKICAgICAgICB5a2M6e2NhdGVJZDoneWtjJ30sCiAgICAgICAgc3RmOntjYXRlSWQ6J3N0Zid9LAogICAgICAgIHRseTp7Y2F0ZUlkOid0bHknfSwKICAgICAgICBsbGY6e2NhdGVJZDonbGxmJ30sCiAgICAgICAgbGxyOntjYXRlSWQ6J2xscid9LAogICAgICAgIHpzejp7Y2F0ZUlkOid6c3onfSwKICAgICAgICB0enk6e2NhdGVJZDondHp5J30KICAgIH0sCiAgICBzZWFyY2hVcmw6Jy9zby8qKl9meXBhZ2UuaHRtbCcsCiAgICBzZWFyY2hhYmxlOjIsCiAgICBxdWlja1NlYXJjaDowLAogICAgaGVhZGVyczp7CiAgICAgICAgJ1VzZXItQWdlbnQnOidNT0JJTEVfVUEnCiAgICB9LAogICAgdGltZW91dDo1MDAwLAogICAgY2xhc3NfcGFyc2U6ICcubGlzdC1uYXZpJiZsaTpndCgxKTthJiZUZXh0O2EmJmhyZWY7LyhcXHcrKS5odG1sJywKICAgIHBsYXlfcGFyc2U6dHJ1ZSwKICAgIGxhenk6J2pzOmlucHV0PXtqeDowLHVybDppbnB1dCxwYXJzZTowfScsCiAgICBsaW1pdDo2LAogICAg5o6o6I2QOicqJywKICAgIOS4gOe6pzonI3Bvc3RfbGlzdF9ib3gmJmxpO2gyJiZUZXh0O2ltZyYmc3JjOy5mX3ImJnNwYW46ZXEoMykmJlRleHQ7YSYmaHJlZicsCiAgICDkuoznuqc6ewogICAgICAgIHRpdGxlOidoMSYmVGV4dDsudmlldyYmVGV4dCcsCiAgICAgICAgaW1nOidpbWcmJnNyYycsCiAgICAgICAgZGVzYzonLnZpZXcmJlRleHQ7OzsubG1uYW1lJiZUZXh0Oy5hdXRob3ImJlRleHQnLAogICAgICAgIGNvbnRlbnQ6Jy5qQXNyUHlmNCYmcDplcSgxKSYmVGV4dCcsCiAgICAgICAgLy8gdGFiczonanM6VEFCUz1bIuivhOS5pumaj+i6q+WQrCJdJywKICAgICAgICBsaXN0czonanM6dmFyIFZpZGVvTGlzdEpzb247VmlkZW9MaXN0SnNvbj1ldmFsKGh0bWwuc3BsaXQoImF1ZGlvOiAiKVsxXS5zcGxpdCgifVwpIilbMF0pO2xldCBsaXN0MT1bXTtWaWRlb0xpc3RKc29uLmZvckVhY2goZnVuY3Rpb24oaXQpe2xpc3QxLnB1c2goaXQubmFtZS5zdHJpcCgpKyIkaHR0cHM6IitpdC51cmwpfSk7TElTVFM9W2xpc3QxXTsnLAogICAgfSwKICAgIOaQnOe0ojogJyonLAp9 \ No newline at end of file diff --git a/潇洒/other/js/QFDJ.js b/潇洒/other/js/QFDJ.js new file mode 100644 index 00000000..535db4ed --- /dev/null +++ b/潇洒/other/js/QFDJ.js @@ -0,0 +1 @@ +dmFyIHJ1bGUgPSB7CiAgICB0aXRsZTogJ+a4hemjjkRKJywKICAgIGhvc3Q6ICdodHRwczovL3d3dy52dnZkai5jb20nLAogICAgLy8gdXJsOiAnL3NvcnQvZnljbGFzcy8wLTAtMC0wLWZ5cGFnZS5odG1sJywKICAgIHVybDogJy9zb3J0L2Z5Y2xhc3MvZnlmaWx0ZXIuaHRtbCcsCiAgICBmaWx0ZXJhYmxlOiAxLCAvL+aYr+WQpuWQr+eUqOWIhuexu+etm+mAiSwKICAgIGZpbHRlcl91cmw6ICd7e2ZsLmNsYXNzIG9yICIwIn19LXt7ZmwubGFuZyBvciAiMCJ9fS17e2ZsLnllYXIgb3IgIjAifX0te3tmbC5ieSBvciAiMCJ9fS1meXBhZ2UnLAogICAgZmlsdGVyOiB7CiAgICAgICAgImMxIjogW3sKICAgICAgICAgICAgImtleSI6ICJjbGFzcyIsCiAgICAgICAgICAgICJuYW1lIjogIuWIhuexuyIsCiAgICAgICAgICAgICJ2YWx1ZSI6IFt7CiAgICAgICAgICAgICAgICAibiI6ICLlhajpg6giLAogICAgICAgICAgICAgICAgInYiOiAiMCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5oWi5pGH5Liy54OnIiwKICAgICAgICAgICAgICAgICJ2IjogIjEiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIueahOmrmOS4sueDpyIsCiAgICAgICAgICAgICAgICAidiI6ICIyIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLnoo7mi43kuLLng6ciLAogICAgICAgICAgICAgICAgInYiOiAiMyIKICAgICAgICAgICAgfV0KICAgICAgICB9LCB7CiAgICAgICAgICAgICJrZXkiOiAibGFuZyIsCiAgICAgICAgICAgICJuYW1lIjogIuivreiogCIsCiAgICAgICAgICAgICJ2YWx1ZSI6IFt7CiAgICAgICAgICAgICAgICAibiI6ICLlhajpg6giLAogICAgICAgICAgICAgICAgInYiOiAiMCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi57Kk6K+tIiwKICAgICAgICAgICAgICAgICJ2IjogIjEiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuWbveivrSIsCiAgICAgICAgICAgICAgICAidiI6ICIyIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLlpJbor60iLAogICAgICAgICAgICAgICAgInYiOiAiMyIKICAgICAgICAgICAgfV0KICAgICAgICB9LCB7CiAgICAgICAgICAgICJrZXkiOiAieWVhciIsCiAgICAgICAgICAgICJuYW1lIjogIuaXtumXtCIsCiAgICAgICAgICAgICJ2YWx1ZSI6IFt7CiAgICAgICAgICAgICAgICAibiI6ICLlhajpg6giLAogICAgICAgICAgICAgICAgInYiOiAiMCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiM+aciCIsCiAgICAgICAgICAgICAgICAidiI6ICIxIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIy5pyIIiwKICAgICAgICAgICAgICAgICJ2IjogIjIiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjHmnIgiLAogICAgICAgICAgICAgICAgInYiOiAiMyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMTLmnIgiLAogICAgICAgICAgICAgICAgInYiOiAiNCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMTHmnIgiLAogICAgICAgICAgICAgICAgInYiOiAiNSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMTDmnIgiLAogICAgICAgICAgICAgICAgInYiOiAiNiIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiOeaciCIsCiAgICAgICAgICAgICAgICAidiI6ICI3IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICI45pyIIiwKICAgICAgICAgICAgICAgICJ2IjogIjgiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjfmnIgiLAogICAgICAgICAgICAgICAgInYiOiAiOSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiNuaciCIsCiAgICAgICAgICAgICAgICAidiI6ICIxMCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiNeaciCIsCiAgICAgICAgICAgICAgICAidiI6ICIxMSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiNOaciCIsCiAgICAgICAgICAgICAgICAidiI6ICIxMiIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAyNeW5tCIsCiAgICAgICAgICAgICAgICAidiI6ICIyMDI1IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDI05bm0IiwKICAgICAgICAgICAgICAgICJ2IjogIjIwMjQiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMjPlubQiLAogICAgICAgICAgICAgICAgInYiOiAiMjAyMyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAyMuW5tCIsCiAgICAgICAgICAgICAgICAidiI6ICIyMDIyIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDIx5bm0IiwKICAgICAgICAgICAgICAgICJ2IjogIjIwMjEiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMjDlubQiLAogICAgICAgICAgICAgICAgInYiOiAiMjAyMCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAxOeW5tCIsCiAgICAgICAgICAgICAgICAidiI6ICIyMDE5IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDE45bm0IiwKICAgICAgICAgICAgICAgICJ2IjogIjIwMTgiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMTflubQiLAogICAgICAgICAgICAgICAgInYiOiAiMjAxNyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAxNuW5tCIsCiAgICAgICAgICAgICAgICAidiI6ICIyMDE2IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDE15bm0IiwKICAgICAgICAgICAgICAgICJ2IjogIjIwMTUiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMTTlubQiLAogICAgICAgICAgICAgICAgInYiOiAiMjAxNCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAxM+W5tCIsCiAgICAgICAgICAgICAgICAidiI6ICIyMDEzIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDEy5bm0IiwKICAgICAgICAgICAgICAgICJ2IjogIjIwMTIiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMTHlubQiLAogICAgICAgICAgICAgICAgInYiOiAiMjAxMSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAxMOW5tCIsCiAgICAgICAgICAgICAgICAidiI6ICIyMDEwIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDA55bm0IiwKICAgICAgICAgICAgICAgICJ2IjogIjIwMDkiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMDjlubQiLAogICAgICAgICAgICAgICAgInYiOiAiMjAwOCIKICAgICAgICAgICAgfV0KICAgICAgICB9LCB7CiAgICAgICAgICAgICJrZXkiOiAiYnkiLAogICAgICAgICAgICAibmFtZSI6ICLmjpLluo8iLAogICAgICAgICAgICAidmFsdWUiOiBbewogICAgICAgICAgICAgICAgIm4iOiAi5pyA5paw5LiK5LygIiwKICAgICAgICAgICAgICAgICJ2IjogIjAiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIueyvuWTgeaOqOiNkCIsCiAgICAgICAgICAgICAgICAidiI6ICIxIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLmnKzlkajng63mkq3mppwiLAogICAgICAgICAgICAgICAgInYiOiAiMiIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5LiK5ZGo54Ot5pKt5qacIiwKICAgICAgICAgICAgICAgICJ2IjogIjMiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuacrOaciOeDreaSreamnCIsCiAgICAgICAgICAgICAgICAidiI6ICI0IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLkuIrmnIjng63mkq3mppwiLAogICAgICAgICAgICAgICAgInYiOiAiNSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5bm05bqm54Ot5pKt5qacIiwKICAgICAgICAgICAgICAgICJ2IjogIjYiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuW5tOW6puS4i+i9vSIsCiAgICAgICAgICAgICAgICAidiI6ICI3IgogICAgICAgICAgICB9XQogICAgICAgIH1dLAogICAgICAgICJjMiI6IFt7CiAgICAgICAgICAgICJrZXkiOiAiY2xhc3MiLAogICAgICAgICAgICAibmFtZSI6ICLliIbnsbsiLAogICAgICAgICAgICAidmFsdWUiOiBbewogICAgICAgICAgICAgICAgIm4iOiAi5YWo6YOoIiwKICAgICAgICAgICAgICAgICJ2IjogIjAiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIua1geihjOmHkeabsiIsCiAgICAgICAgICAgICAgICAidiI6ICI0IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLlj5Hng6fnu4/lhbgiLAogICAgICAgICAgICAgICAgInYiOiAiNSIKICAgICAgICAgICAgfV0KICAgICAgICB9LCB7CiAgICAgICAgICAgICJrZXkiOiAibGFuZyIsCiAgICAgICAgICAgICJuYW1lIjogIuivreiogCIsCiAgICAgICAgICAgICJ2YWx1ZSI6IFt7CiAgICAgICAgICAgICAgICAibiI6ICLlhajpg6giLAogICAgICAgICAgICAgICAgInYiOiAiMCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi57Kk6K+tIiwKICAgICAgICAgICAgICAgICJ2IjogIjEiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuWbveivrSIsCiAgICAgICAgICAgICAgICAidiI6ICIyIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLlpJbor60iLAogICAgICAgICAgICAgICAgInYiOiAiMyIKICAgICAgICAgICAgfV0KICAgICAgICB9LCB7CiAgICAgICAgICAgICJrZXkiOiAieWVhciIsCiAgICAgICAgICAgICJuYW1lIjogIuaXtumXtCIsCiAgICAgICAgICAgICJ2YWx1ZSI6IFt7CiAgICAgICAgICAgICAgICAibiI6ICLlhajpg6giLAogICAgICAgICAgICAgICAgInYiOiAiMCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiM+aciCIsCiAgICAgICAgICAgICAgICAidiI6ICIxIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIy5pyIIiwKICAgICAgICAgICAgICAgICJ2IjogIjIiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjHmnIgiLAogICAgICAgICAgICAgICAgInYiOiAiMyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMTLmnIgiLAogICAgICAgICAgICAgICAgInYiOiAiNCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMTHmnIgiLAogICAgICAgICAgICAgICAgInYiOiAiNSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMTDmnIgiLAogICAgICAgICAgICAgICAgInYiOiAiNiIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiOeaciCIsCiAgICAgICAgICAgICAgICAidiI6ICI3IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICI45pyIIiwKICAgICAgICAgICAgICAgICJ2IjogIjgiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjfmnIgiLAogICAgICAgICAgICAgICAgInYiOiAiOSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiNuaciCIsCiAgICAgICAgICAgICAgICAidiI6ICIxMCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiNeaciCIsCiAgICAgICAgICAgICAgICAidiI6ICIxMSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiNOaciCIsCiAgICAgICAgICAgICAgICAidiI6ICIxMiIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAyNeW5tCIsCiAgICAgICAgICAgICAgICAidiI6ICIyMDI1IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDI05bm0IiwKICAgICAgICAgICAgICAgICJ2IjogIjIwMjQiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMjPlubQiLAogICAgICAgICAgICAgICAgInYiOiAiMjAyMyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAyMuW5tCIsCiAgICAgICAgICAgICAgICAidiI6ICIyMDIyIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDIx5bm0IiwKICAgICAgICAgICAgICAgICJ2IjogIjIwMjEiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMjDlubQiLAogICAgICAgICAgICAgICAgInYiOiAiMjAyMCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAxOeW5tCIsCiAgICAgICAgICAgICAgICAidiI6ICIyMDE5IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDE45bm0IiwKICAgICAgICAgICAgICAgICJ2IjogIjIwMTgiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMTflubQiLAogICAgICAgICAgICAgICAgInYiOiAiMjAxNyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAxNuW5tCIsCiAgICAgICAgICAgICAgICAidiI6ICIyMDE2IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDE15bm0IiwKICAgICAgICAgICAgICAgICJ2IjogIjIwMTUiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMTTlubQiLAogICAgICAgICAgICAgICAgInYiOiAiMjAxNCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAxM+W5tCIsCiAgICAgICAgICAgICAgICAidiI6ICIyMDEzIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDEy5bm0IiwKICAgICAgICAgICAgICAgICJ2IjogIjIwMTIiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMTHlubQiLAogICAgICAgICAgICAgICAgInYiOiAiMjAxMSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAxMOW5tCIsCiAgICAgICAgICAgICAgICAidiI6ICIyMDEwIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDA55bm0IiwKICAgICAgICAgICAgICAgICJ2IjogIjIwMDkiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMDjlubQiLAogICAgICAgICAgICAgICAgInYiOiAiMjAwOCIKICAgICAgICAgICAgfV0KICAgICAgICB9LCB7CiAgICAgICAgICAgICJrZXkiOiAiYnkiLAogICAgICAgICAgICAibmFtZSI6ICLmjpLluo8iLAogICAgICAgICAgICAidmFsdWUiOiBbewogICAgICAgICAgICAgICAgIm4iOiAi5pyA5paw5LiK5LygIiwKICAgICAgICAgICAgICAgICJ2IjogIjAiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIueyvuWTgeaOqOiNkCIsCiAgICAgICAgICAgICAgICAidiI6ICIxIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLmnKzlkajng63mkq3mppwiLAogICAgICAgICAgICAgICAgInYiOiAiMiIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5LiK5ZGo54Ot5pKt5qacIiwKICAgICAgICAgICAgICAgICJ2IjogIjMiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuacrOaciOeDreaSreamnCIsCiAgICAgICAgICAgICAgICAidiI6ICI0IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLkuIrmnIjng63mkq3mppwiLAogICAgICAgICAgICAgICAgInYiOiAiNSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5bm05bqm54Ot5pKt5qacIiwKICAgICAgICAgICAgICAgICJ2IjogIjYiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuW5tOW6puS4i+i9vSIsCiAgICAgICAgICAgICAgICAidiI6ICI3IgogICAgICAgICAgICB9XQogICAgICAgIH1dLAogICAgICAgICJjMyI6IFt7CiAgICAgICAgICAgICJrZXkiOiAiY2xhc3MiLAogICAgICAgICAgICAibmFtZSI6ICLliIbnsbsiLAogICAgICAgICAgICAidmFsdWUiOiBbewogICAgICAgICAgICAgICAgIm4iOiAi5YWo6YOoIiwKICAgICAgICAgICAgICAgICJ2IjogIjAiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIkVETS9EYW5jZS9FbGVjdHJvL0hvdXNlIiwKICAgICAgICAgICAgICAgICJ2IjogIjYiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIkZ1bmt5SG91c2UvUHJvZ0hvdXNlIiwKICAgICAgICAgICAgICAgICJ2IjogIjciCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIlRyYXAvSGlwSG9wL1JuYi9GdW5rL0JCIiwKICAgICAgICAgICAgICAgICJ2IjogIjgiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIkhhcmRzdHlsZS9UZWNobm8vVHJhbmNlIiwKICAgICAgICAgICAgICAgICJ2IjogIjkiCiAgICAgICAgICAgIH1dCiAgICAgICAgfSwgewogICAgICAgICAgICAia2V5IjogInllYXIiLAogICAgICAgICAgICAibmFtZSI6ICLml7bpl7QiLAogICAgICAgICAgICAidmFsdWUiOiBbewogICAgICAgICAgICAgICAgIm4iOiAi5YWo6YOoIiwKICAgICAgICAgICAgICAgICJ2IjogIjAiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjPmnIgiLAogICAgICAgICAgICAgICAgInYiOiAiMSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMuaciCIsCiAgICAgICAgICAgICAgICAidiI6ICIyIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIx5pyIIiwKICAgICAgICAgICAgICAgICJ2IjogIjMiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjEy5pyIIiwKICAgICAgICAgICAgICAgICJ2IjogIjQiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjEx5pyIIiwKICAgICAgICAgICAgICAgICJ2IjogIjUiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjEw5pyIIiwKICAgICAgICAgICAgICAgICJ2IjogIjYiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjnmnIgiLAogICAgICAgICAgICAgICAgInYiOiAiNyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiOOaciCIsCiAgICAgICAgICAgICAgICAidiI6ICI4IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICI35pyIIiwKICAgICAgICAgICAgICAgICJ2IjogIjkiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjbmnIgiLAogICAgICAgICAgICAgICAgInYiOiAiMTAiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjXmnIgiLAogICAgICAgICAgICAgICAgInYiOiAiMTEiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjTmnIgiLAogICAgICAgICAgICAgICAgInYiOiAiMTIiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMjXlubQiLAogICAgICAgICAgICAgICAgInYiOiAiMjAyNSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAyNOW5tCIsCiAgICAgICAgICAgICAgICAidiI6ICIyMDI0IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDIz5bm0IiwKICAgICAgICAgICAgICAgICJ2IjogIjIwMjMiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMjLlubQiLAogICAgICAgICAgICAgICAgInYiOiAiMjAyMiIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAyMeW5tCIsCiAgICAgICAgICAgICAgICAidiI6ICIyMDIxIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDIw5bm0IiwKICAgICAgICAgICAgICAgICJ2IjogIjIwMjAiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMTnlubQiLAogICAgICAgICAgICAgICAgInYiOiAiMjAxOSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAxOOW5tCIsCiAgICAgICAgICAgICAgICAidiI6ICIyMDE4IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDE35bm0IiwKICAgICAgICAgICAgICAgICJ2IjogIjIwMTciCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMTblubQiLAogICAgICAgICAgICAgICAgInYiOiAiMjAxNiIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAxNeW5tCIsCiAgICAgICAgICAgICAgICAidiI6ICIyMDE1IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDE05bm0IiwKICAgICAgICAgICAgICAgICJ2IjogIjIwMTQiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMTPlubQiLAogICAgICAgICAgICAgICAgInYiOiAiMjAxMyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAxMuW5tCIsCiAgICAgICAgICAgICAgICAidiI6ICIyMDEyIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDEx5bm0IiwKICAgICAgICAgICAgICAgICJ2IjogIjIwMTEiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMTDlubQiLAogICAgICAgICAgICAgICAgInYiOiAiMjAxMCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAwOeW5tCIsCiAgICAgICAgICAgICAgICAidiI6ICIyMDA5IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDA45bm0IiwKICAgICAgICAgICAgICAgICJ2IjogIjIwMDgiCiAgICAgICAgICAgIH1dCiAgICAgICAgfSwgewogICAgICAgICAgICAia2V5IjogImJ5IiwKICAgICAgICAgICAgIm5hbWUiOiAi5o6S5bqPIiwKICAgICAgICAgICAgInZhbHVlIjogW3sKICAgICAgICAgICAgICAgICJuIjogIuacgOaWsOS4iuS8oCIsCiAgICAgICAgICAgICAgICAidiI6ICIwIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLnsr7lk4HmjqjojZAiLAogICAgICAgICAgICAgICAgInYiOiAiMSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5pys5ZGo54Ot5pKt5qacIiwKICAgICAgICAgICAgICAgICJ2IjogIjIiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuS4iuWRqOeDreaSreamnCIsCiAgICAgICAgICAgICAgICAidiI6ICIzIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLmnKzmnIjng63mkq3mppwiLAogICAgICAgICAgICAgICAgInYiOiAiNCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5LiK5pyI54Ot5pKt5qacIiwKICAgICAgICAgICAgICAgICJ2IjogIjUiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuW5tOW6pueDreaSreamnCIsCiAgICAgICAgICAgICAgICAidiI6ICI2IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLlubTluqbkuIvovb0iLAogICAgICAgICAgICAgICAgInYiOiAiNyIKICAgICAgICAgICAgfV0KICAgICAgICB9XSwKICAgICAgICAiYzQiOiBbewogICAgICAgICAgICAia2V5IjogImNsYXNzIiwKICAgICAgICAgICAgIm5hbWUiOiAi5YiG57G7IiwKICAgICAgICAgICAgInZhbHVlIjogW3sKICAgICAgICAgICAgICAgICJuIjogIuWFqOmDqCIsCiAgICAgICAgICAgICAgICAidiI6ICIwIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICJFRE0vRGFuY2UvRWxlY3Ryby9Ib3VzZSIsCiAgICAgICAgICAgICAgICAidiI6ICIxMCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiRnVua3lIb3VzZS9Qcm9nSG91c2UiLAogICAgICAgICAgICAgICAgInYiOiAiMTEiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIlRyYXAvSGlwSG9wL1JuYi9GdW5rL0JCIiwKICAgICAgICAgICAgICAgICJ2IjogIjEyIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICJIYXJkc3R5bGUvVGVjaG5vL1RyYW5jZSIsCiAgICAgICAgICAgICAgICAidiI6ICIxMyIKICAgICAgICAgICAgfV0KICAgICAgICB9LCB7CiAgICAgICAgICAgICJrZXkiOiAieWVhciIsCiAgICAgICAgICAgICJuYW1lIjogIuaXtumXtCIsCiAgICAgICAgICAgICJ2YWx1ZSI6IFt7CiAgICAgICAgICAgICAgICAibiI6ICLlhajpg6giLAogICAgICAgICAgICAgICAgInYiOiAiMCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiM+aciCIsCiAgICAgICAgICAgICAgICAidiI6ICIxIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIy5pyIIiwKICAgICAgICAgICAgICAgICJ2IjogIjIiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjHmnIgiLAogICAgICAgICAgICAgICAgInYiOiAiMyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMTLmnIgiLAogICAgICAgICAgICAgICAgInYiOiAiNCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMTHmnIgiLAogICAgICAgICAgICAgICAgInYiOiAiNSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMTDmnIgiLAogICAgICAgICAgICAgICAgInYiOiAiNiIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiOeaciCIsCiAgICAgICAgICAgICAgICAidiI6ICI3IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICI45pyIIiwKICAgICAgICAgICAgICAgICJ2IjogIjgiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjfmnIgiLAogICAgICAgICAgICAgICAgInYiOiAiOSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiNuaciCIsCiAgICAgICAgICAgICAgICAidiI6ICIxMCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiNeaciCIsCiAgICAgICAgICAgICAgICAidiI6ICIxMSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiNOaciCIsCiAgICAgICAgICAgICAgICAidiI6ICIxMiIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAyNeW5tCIsCiAgICAgICAgICAgICAgICAidiI6ICIyMDI1IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDI05bm0IiwKICAgICAgICAgICAgICAgICJ2IjogIjIwMjQiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMjPlubQiLAogICAgICAgICAgICAgICAgInYiOiAiMjAyMyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAyMuW5tCIsCiAgICAgICAgICAgICAgICAidiI6ICIyMDIyIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDIx5bm0IiwKICAgICAgICAgICAgICAgICJ2IjogIjIwMjEiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMjDlubQiLAogICAgICAgICAgICAgICAgInYiOiAiMjAyMCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAxOeW5tCIsCiAgICAgICAgICAgICAgICAidiI6ICIyMDE5IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDE45bm0IiwKICAgICAgICAgICAgICAgICJ2IjogIjIwMTgiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMTflubQiLAogICAgICAgICAgICAgICAgInYiOiAiMjAxNyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAxNuW5tCIsCiAgICAgICAgICAgICAgICAidiI6ICIyMDE2IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDE15bm0IiwKICAgICAgICAgICAgICAgICJ2IjogIjIwMTUiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMTTlubQiLAogICAgICAgICAgICAgICAgInYiOiAiMjAxNCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAxM+W5tCIsCiAgICAgICAgICAgICAgICAidiI6ICIyMDEzIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDEy5bm0IiwKICAgICAgICAgICAgICAgICJ2IjogIjIwMTIiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMTHlubQiLAogICAgICAgICAgICAgICAgInYiOiAiMjAxMSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMjAxMOW5tCIsCiAgICAgICAgICAgICAgICAidiI6ICIyMDEwIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICIyMDA55bm0IiwKICAgICAgICAgICAgICAgICJ2IjogIjIwMDkiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjIwMDjlubQiLAogICAgICAgICAgICAgICAgInYiOiAiMjAwOCIKICAgICAgICAgICAgfV0KICAgICAgICB9LCB7CiAgICAgICAgICAgICJrZXkiOiAiYnkiLAogICAgICAgICAgICAibmFtZSI6ICLmjpLluo8iLAogICAgICAgICAgICAidmFsdWUiOiBbewogICAgICAgICAgICAgICAgIm4iOiAi5pyA5paw5LiK5LygIiwKICAgICAgICAgICAgICAgICJ2IjogIjAiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIueyvuWTgeaOqOiNkCIsCiAgICAgICAgICAgICAgICAidiI6ICIxIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLmnKzlkajng63mkq3mppwiLAogICAgICAgICAgICAgICAgInYiOiAiMiIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5LiK5ZGo54Ot5pKt5qacIiwKICAgICAgICAgICAgICAgICJ2IjogIjMiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuacrOaciOeDreaSreamnCIsCiAgICAgICAgICAgICAgICAidiI6ICI0IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLkuIrmnIjng63mkq3mppwiLAogICAgICAgICAgICAgICAgInYiOiAiNSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5bm05bqm54Ot5pKt5qacIiwKICAgICAgICAgICAgICAgICJ2IjogIjYiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuW5tOW6puS4i+i9vSIsCiAgICAgICAgICAgICAgICAidiI6ICI3IgogICAgICAgICAgICB9XQogICAgICAgIH1dCiAgICB9LAogICAgc2VhcmNoVXJsOiAnL3NlYXJjaC9zbz9rZXk9KiomY2lkPTAmbGlzdD0yJnBhZ2U9ZnlwYWdlJywKICAgIHNlYXJjaGFibGU6IDIsIC8v5piv5ZCm5ZCv55So5YWo5bGA5pCc57SiLAogICAgcXVpY2tTZWFyY2g6IDAsIC8v5piv5ZCm5ZCv55So5b+r6YCf5pCc57SiLAogICAgaGVhZGVyczogewogICAgICAgICdVc2VyLUFnZW50JzogJ01PQklMRV9VQScKICAgIH0sCiAgICB0aW1lb3V0OiA1MDAwLCAvL+e9keermeeahOWFqOWxgOivt+axgui2heaXtizpu5jorqTmmK8zMDAw5q+r56eSCiAgICBjbGFzc19wYXJzZTogJyN0b3BfYmFubmVyY3QmJi5zZS5iYW5uZXJvZmY7YSYmdGl0bGU7YSYmaHJlZjsvc29ydC8oLio/KS8nLAogICAgcGxheV9wYXJzZTogdHJ1ZSwKICAgIGxhenk6ICcnLAogICAgbGltaXQ6IDYsCiAgICDmjqjojZA6ICcjcmVjcy1saXN0JiZsaTtoMiYmVGV4dDsqO2kmJlRleHQ7YSYmaHJlZicsCiAgICDkuIDnuqc6ICcuaXNnb29kX2xpc3Q7YSYmdGl0bGU7aW1nJiZzcmM7LnNjXzEmJlRleHQ7YSYmaHJlZicsCiAgICDkuoznuqc6ICcqJywKICAgIOaQnOe0ojogJyonLAp9 \ No newline at end of file diff --git a/潇洒/other/js/QTFM.js b/潇洒/other/js/QTFM.js new file mode 100644 index 00000000..1d45ed82 --- /dev/null +++ b/潇洒/other/js/QTFM.js @@ -0,0 +1 @@ +dmFyIHJ1bGUgPSB7CiAgICB0aXRsZTogJ+icu+ick0ZNJywKICAgIGhvc3Q6ICdodHRwOi8vd3d3LnFpbmd0aW5nLmZtJywKICAgIHVybDogJy9yYWRpb3BhZ2UvZnljbGFzcy9meXBhZ2UnLAogICAgc2VhcmNoVXJsOiAnJywKICAgIHNlYXJjaGFibGU6IDAsCiAgICBxdWlja1NlYXJjaDogMCwKICAgIGNsYXNzX25hbWU6ICflub/kuJwm5rWZ5rGfJuWMl+S6rCblpKnmtKUm5rKz5YyXJuS4iua1tyblsbHopb8m5YaF6JKZ5Y+kJui+veWugSblkInmnpcm6buR6b6Z5rGfJuaxn+iLjyblronlvr0m56aP5bu6Juaxn+ilvyblsbHkuJwm5rKz5Y2XJua5luWMlybmuZbljZcm5bm/6KW/Jua1t+WNlybph43luoYm5Zub5bedJui0teW3nibkupHljZcm6ZmV6KW/JueUmOiCgyblroHlpI8m5paw55aGJuilv+iXjybpnZLmtbcm6LWE6K6vJumfs+S5kCbkuqTpgJom57uP5rWOJuaWh+iJuibpg73luIIm5L2T6IKyJuWPjOivrSbnu7zlkIgm55Sf5rS7JuaXhea4uCbmm7Loibom5pa56KiAJywKICAgIGNsYXNzX3VybDogJzIxNyY5OSYzJjUmNyY4MyYxOSYzMSY0NCY1OSY2OSY4NSYxMTEmMTI5JjEzOSYxNTEmMTY5JjE4NyYyMDImMjM5JjI1NCYyNTcmMjU5JjI4MSYyOTEmMzE2JjMyNyYzNTEmMzU3JjMwOCYzNDImNDMzJjQ0MiY0MjkmNDM5JjQzMiY0NDEmNDMwJjQzMSY0NDAmNDM4JjQzNSY0MzYmNDM0JywKICAgIGhlYWRlcnM6IHsKICAgICAgICAnVXNlci1BZ2VudCc6ICdQQ19VQScKICAgIH0sCiAgICB0aW1lb3V0OiA1MDAwLAogICAgcGxheV9wYXJzZTogdHJ1ZSwKICAgIHBsYXlfanNvbjogMCwKICAgIGxhenk6ICdqczppbnB1dD1pbnB1dC5yZXBsYWNlKCJ3d3cucWluZ3RpbmcuZm0vcmFkaW9zLyIsImxodHRwLnFpbmd0aW5nLmZtL2xpdmUvIikrIi82NGsubXAzIicsCiAgICBsaW1pdDogNiwKICAgIGRvdWJsZTogZmFsc2UsCiAgICAvL+aOqOiNkDonKicsCiAgICDkuIDnuqc6ICcuY29udGVudFNlYyYmLnJhZGlvO3NwYW4mJlRleHQ7aW1nJiZzcmM7LmRlc2NSYWRpbyYmVGV4dDthJiZocmVmJywKICAgIOS6jOe6pzogJyonLAogICAg5pCc57SiOiAnJywKCiAgICAvL+aYr+WQpuWQr+eUqOi+heWKqeWXheaOojogMSwwCiAgICBzbmlmZmVyOiAxLAogICAgLy8g6L6F5Yqp5ZeF5o6i6KeE5YiZCiAgICBpc1ZpZGVvOiAiaHR0cCgoPyFodHRwKS4pezI2LH1cXC4obTN1OHxtcDR8Zmx2fGF2aXxta3Z8d212fG1wZ3xtcGVnfG1vdnx0c3wzZ3B8cm18cm12Ynxhc2Z8bTRhfG1wM3x3bWEpIiwKfQ== \ No newline at end of file diff --git a/潇洒/other/js/YSHBW.js b/潇洒/other/js/YSHBW.js new file mode 100644 index 00000000..603cd641 --- /dev/null +++ b/潇洒/other/js/YSHBW.js @@ -0,0 +1 @@ +dmFyIHJ1bGUgPSB7CiAgICB0aXRsZTogJ+acieWjsOe7mOacrOe9kScsCiAgICBob3N0OiAnaHR0cHM6Ly93d3cueW91c2hlbmdodWliZW4uY29tJywKICAgIHVybDogJy9meWNsYXNzL2Z5cGFnZScsCiAgICBzZWFyY2hVcmw6ICcvc2VhcmNoLnBocD8mcT0qKiZwYWdlPWZ5cGFnZScsCiAgICBzZWFyY2hhYmxlOiAyLAogICAgcXVpY2tTZWFyY2g6IDAsCiAgICBmaWx0ZXJhYmxlOiAwLAogICAgaGVhZGVyczogewogICAgICAgICdVc2VyLUFnZW50JzogJ01PQklMRV9VQScKICAgIH0sCiAgICB0aW1lb3V0OiA1MDAwLCAvL+e9keermeeahOWFqOWxgOivt+axgui2heaXtizpu5jorqTmmK8zMDAw5q+r56eSCiAgICBjbGFzc19wYXJzZTogJyNtZW51LW1haW4mJmxpOmd0KDApOmx0KDcpO2EmJlRleHQ7YSYmaHJlZjtjb20vKFxcdyspJywKICAgIHBsYXlfcGFyc2U6IHRydWUsCiAgICBsaW1pdDogNiwKICAgIOaOqOiNkDogJyonLAogICAg5LiA57qnOiAnYXJ0aWNsZS5leGNlcnB0LWM1O2EmJnRpdGxlO2ltZyYmc3JjOy5wb3N0LWxpa2UmJlRleHQ7YSYmaHJlZicsCiAgICDkuoznuqc6ICcqJywKICAgIOaQnOe0ojogJ2FydGljbGUuZXhjZXJwdC10dzsqOyo7dGltZSYmVGV4dDsqJywKfQ== \ No newline at end of file diff --git a/潇洒/other/js/YYDJ.js b/潇洒/other/js/YYDJ.js new file mode 100644 index 00000000..db37774e --- /dev/null +++ b/潇洒/other/js/YYDJ.js @@ -0,0 +1 @@ +Ly8g6YGT6ZW/IGRycHnku5PlupMgaHR0cHM6Ly9naXRjb2RlLm5ldC9xcV8zMjM5NDM1MS9kcl9weQovLyDpgZPplb8gZHJweeWuieWNk+acrOWcsOaQreW7uuivtOaYjiBodHRwczovL2NvZGUuZ2l0bGluay5vcmcuY24vYXBpL3YxL3JlcG9zL2hqZGhueC9kcl9weS9ibG9iL21hc3Rlci8lRTUlQUUlODklRTUlOEQlOTMlRTYlOUMlQUMlRTUlOUMlQjAlRTYlOTAlQUQlRTUlQkIlQkElRTglQUYlQjQlRTYlOTglOEUubWQKLy8g6YGT6ZW/IGRycHnlhpnmupAg5qih5p2/6KeE5YiZ6K+05piOIGh0dHBzOi8vZ2l0Y29kZS5uZXQvc3VwZXJ0bG8vZHJfcHkjJUU2JUE4JUExJUU2JTlEJUJGJUU4JUE3JTg0JUU1JTg4JTk5JUU4JUFGJUI0JUU2JTk4JThFCi8vIOmBk+mVvyBkcnB55YaZ5rqQIOWll+aooeaooeeJiCBodHRwczovL2docHJveHkubmV0L2h0dHBzOi8vcmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbS9oamRobngvZHJfcHkvbWFpbi9qcy8lRTYlQTglQTElRTYlOUQlQkYuanMKLy8g6YGT6ZW/IGRycHnlhpnmupAg5b2x54mH5pWZ56iLIGh0dHA6Ly8xMDEuMzQuNjcuMjM3OjUyNDQvJUU2JTk1JTk5JUU4JTgyJUIyL2RycHkKLy8g6YGT6ZW/IGRycHnlhpnmupAg5b2x54mH5pWZ56iLKG0zdTjliIfniYcpIGh0dHBzOi8vZnJlZWRycHkucnVuLmdvb3JtLmlvL3R4dC9qYy9wbGF5bGlzdC5tM3U4Ci8vIOa1t+mYlOS4i+i9vSBodHRwczovL2hhaWt1by5sYW56b3VpLmNvbS91L0dvbGRSaXZlcgovLyBQbHV0byBQbGF5ZXLlrpjmlrlURyBodHRwczovL3QubWUvUGx1dG9QbGF5ZXIKLy8gUGx1dG8gUGxheWVy5a6Y5pa5VEcgaHR0cHM6Ly90Lm1lL1BsdXRvUGxheWVyQ2hhbm5lbAoKLy8gcGx1dG8g5pKt5pS+5q2j5bi4Ci8vIOS/iuiAgeeahOWjs+aIllB5dGhvbkJveCDlnKhydWxlc+aWsOWinuW6leS4i+iuvuWumiDljbPlj6/mraPluLjmkq3mlL4KLy8geyJob3N0Ijoid3d3LmRqdXUuY29tIiwicnVsZSI6WyJtcDQuZGp1dS5jb20iXX0sCgp2YXIgcnVsZSA9IHsKICAgIHRpdGxlOiAnRErpn7PkuZAnLAogICAgaG9zdDogJ2h0dHA6Ly93d3cuZGp1dS5jb20nLAogICAgaG9tZVVybDogJy9leGNsdXNpdmUvMTE1XzEuaHRtbCcsIC8v572R56uZ55qE6aaW6aG16ZO+5o6lLOWPr+S7peaYr+WujOaVtOi3r+W+hOaIluiAheebuOWvuei3r+W+hCznlKjkuo7liIbnsbvojrflj5blkozmjqjojZDojrflj5YgZnljbGFzc+aYr+WIhuexu+agh+etviBmeXBhZ2XmmK/pobXmlbAKICAgIHVybDogJy9kamxpc3QvZnljbGFzc19meXBhZ2UuaHRtbCcsCiAgICBzZWFyY2hVcmw6ICcvc2VhcmNoP211c2ljbmFtZT0qKicsCiAgICBzZWFyY2hhYmxlOiAyLAogICAgcXVpY2tTZWFyY2g6IDAsCiAgICBjbGFzc19wYXJzZTogJyN0b3BfYmFubmVyX2JnIGRpdjthJiZUZXh0O2EmJmhyZWY7L2RqbGlzdC8oXFxkKylfMS5odG1sJywKICAgIGhlYWRlcnM6IHsKICAgICAgICAnVXNlci1BZ2VudCc6ICdQQ19VQScKICAgIH0sCiAgICB0aW1lb3V0OiA1MDAwLAogICAgcGxheV9wYXJzZTogdHJ1ZSwKICAgIGxhenk6ICcnLAogICAgbGltaXQ6IDYsCiAgICBkb3VibGU6IGZhbHNlLAogICAg5o6o6I2QOiAnKicsCiAgICDkuIDnuqc6ICcubGlzdF9tdXNpY2xpc3QgdHI6Z3QoMCk7YSYmdGl0bGU7aW1nJiZzcmM7LmNvcjk5OTplcSgxKSYmVGV4dDthJiZocmVmJywKICAgIOS6jOe6pzogJyonLAogICAg5pCc57SiOiAnKjsqOyo7LnNjXzEmJlRleHQ7KicsCn0= \ No newline at end of file diff --git a/潇洒/other/json/BLTS.json b/潇洒/other/json/BLTS.json new file mode 100644 index 00000000..4a5b5eba --- /dev/null +++ b/潇洒/other/json/BLTS.json @@ -0,0 +1,52 @@ +{ + "class": [ + { + "type_name": "有声小说", + "type_id": "有声小说" + }, + { + "type_name": "玄幻有声小说", + "type_id": "玄幻有声小说" + }, + { + "type_name": "奇幻有声小说", + "type_id": "奇幻有声小说" + }, + { + "type_name": "都市有声小说", + "type_id": "都市有声小说" + }, + { + "type_name": "言情有声小说", + "type_id": "言情有声小说" + }, + { + "type_name": "武侠有声小说", + "type_id": "武侠有声小说" + }, + { + "type_name": "仙侠有声小说", + "type_id": "仙侠有声小说" + }, + { + "type_name": "科幻有声小说", + "type_id": "科幻有声小说" + }, + { + "type_name": "重生有声小说", + "type_id": "重生有声小说" + }, + { + "type_name": "穿越有声小说", + "type_id": "穿越有声小说" + }, + { + "type_name": "恐怖惊悚有声小说", + "type_id": "恐怖惊悚有声小说" + }, + { + "type_name": "网游竞技有声小说", + "type_id": "网游竞技有声小说" + } + ] +} \ No newline at end of file diff --git a/潇洒/other/json/BLXP.json b/潇洒/other/json/BLXP.json new file mode 100644 index 00000000..9ebaf366 --- /dev/null +++ b/潇洒/other/json/BLXP.json @@ -0,0 +1,52 @@ +{ + "class": [ + { + "type_name": "春晚小品", + "type_id": "春晚小品" + }, + { + "type_name": "赵本山", + "type_id": "赵本山" + }, + { + "type_name": "陈佩斯", + "type_id": "陈佩斯" + }, + { + "type_name": "冯巩", + "type_id": "冯巩" + }, + { + "type_name": "宋小宝", + "type_id": "宋小宝" + }, + { + "type_name": "赵丽蓉", + "type_id": "赵丽蓉" + }, + { + "type_name": "郭达", + "type_id": "郭达" + }, + { + "type_name": "潘长江", + "type_id": "潘长江" + }, + { + "type_name": "郭冬临", + "type_id": "郭冬临" + }, + { + "type_name": "严顺开", + "type_id": "严顺开" + }, + { + "type_name": "文松", + "type_id": "文松" + }, + { + "type_name": "开心麻花", + "type_id": "开心麻花" + } + ] +} \ No newline at end of file diff --git a/潇洒/other/json/BLXQ.json b/潇洒/other/json/BLXQ.json new file mode 100644 index 00000000..2fb33f01 --- /dev/null +++ b/潇洒/other/json/BLXQ.json @@ -0,0 +1,200 @@ +{ + "class": [ + { + "type_name": "潮剧", + "type_id": "潮剧" + }, + { + "type_name": "粤剧", + "type_id": "粤剧" + }, + { + "type_name": "京剧", + "type_id": "京剧" + }, + { + "type_name": "越剧", + "type_id": "越剧" + }, + { + "type_name": "芗剧", + "type_id": "芗剧" + }, + { + "type_name": "蒲剧", + "type_id": "蒲剧" + }, + { + "type_name": "闽剧", + "type_id": "闽剧" + }, + { + "type_name": "喊麦", + "type_id": "喊麦" + }, + { + "type_name": "陕北说书", + "type_id": "陕北说书" + }, + { + "type_name": "庐剧", + "type_id": "庐剧" + }, + { + "type_name": "吕剧", + "type_id": "吕剧" + }, + { + "type_name": "眉户", + "type_id": "眉户" + }, + { + "type_name": "歌仔戏", + "type_id": "歌仔戏" + }, + { + "type_name": "黄梅戏", + "type_id": "黄梅戏" + }, + { + "type_name": "黄梅戏", + "type_id": "黄梅戏" + }, + { + "type_name": "评剧", + "type_id": "评剧" + }, + { + "type_name": "豫剧", + "type_id": "豫剧" + }, + { + "type_name": "沪剧", + "type_id": "沪剧" + }, + { + "type_name": "昆曲", + "type_id": "昆曲" + }, + { + "type_name": "花鼓戏", + "type_id": "花鼓戏" + }, + { + "type_name": "超清潮剧", + "type_id": "超清潮剧" + }, + { + "type_name": "百花潮剧院", + "type_id": "百花潮剧院" + }, + { + "type_name": "香港潮剧", + "type_id": "香港潮剧" + }, + { + "type_name": "潮剧院", + "type_id": "潮剧院" + }, + { + "type_name": "潮剧团", + "type_id": "潮剧团" + }, + { + "type_name": "潮剧全剧", + "type_id": "潮剧全剧" + }, + { + "type_name": "潮剧选段", + "type_id": "潮剧选段" + }, + { + "type_name": "名家潮剧", + "type_id": "名家潮剧" + }, + { + "type_name": "潮汕小品", + "type_id": "潮汕小品" + }, + { + "type_name": "潮汕讲古", + "type_id": "潮汕讲古" + }, + { + "type_name": "河北梆子", + "type_id": "河北梆子" + }, + { + "type_name": "梆子腔", + "type_id": "梆子腔" + }, + { + "type_name": "晋剧", + "type_id": "晋剧" + }, + { + "type_name": "龙江剧", + "type_id": "龙江剧" + }, + { + "type_name": "越调", + "type_id": "越调" + }, + { + "type_name": "河南曲剧", + "type_id": "河南曲剧" + }, + { + "type_name": "山东梆子", + "type_id": "山东梆子" + }, + { + "type_name": "淮剧", + "type_id": "淮剧" + }, + { + "type_name": "滑稽戏", + "type_id": "滑稽戏" + }, + { + "type_name": "婺剧", + "type_id": "婺剧" + }, + { + "type_name": "绍剧", + "type_id": "绍剧" + }, + { + "type_name": "徽剧", + "type_id": "徽剧" + }, + { + "type_name": "雁剧", + "type_id": "雁剧" + }, + { + "type_name": "上党梆子", + "type_id": "上党梆子" + }, + { + "type_name": "秦腔", + "type_id": "秦腔" + }, + { + "type_name": "武安平调", + "type_id": "武安平调" + }, + { + "type_name": "二人台", + "type_id": "二人台" + }, + { + "type_name": "吉剧", + "type_id": "吉剧" + }, + { + "type_name": "高腔", + "type_id": "高腔" + } + ] +} \ No newline at end of file diff --git a/潇洒/other/json/BLXS.json b/潇洒/other/json/BLXS.json new file mode 100644 index 00000000..bc8c2188 --- /dev/null +++ b/潇洒/other/json/BLXS.json @@ -0,0 +1,32 @@ +{ + "class": [ + { + "type_name": "单口相声", + "type_id": "单口相声" + }, + { + "type_name": "群口相声", + "type_id": "群口相声" + }, + { + "type_name": "德云社", + "type_id": "德云社" + }, + { + "type_name": "青曲社", + "type_id": "青曲社" + }, + { + "type_name": "郭德纲", + "type_id": "郭德纲" + }, + { + "type_name": "岳云鹏", + "type_id": "岳云鹏" + }, + { + "type_name": "曹云金", + "type_id": "曹云金" + } + ] +} \ No newline at end of file diff --git a/潇洒/other/json/BLYCH.json b/潇洒/other/json/BLYCH.json new file mode 100644 index 00000000..3a9b6105 --- /dev/null +++ b/潇洒/other/json/BLYCH.json @@ -0,0 +1,702 @@ +{ + "class": [ + { + "type_name": "演唱会筛选", + "type_id": "演唱会超清" + }, + { + "type_name": "粤语", + "type_id": "粤语歌曲超清" + }, + { + "type_name": "热榜", + "type_id": "2022年热们歌曲超清" + }, + { + "type_name": "抖音神曲", + "type_id": "抖音神曲超清" + }, + { + "type_name": "经典老歌", + "type_id": "经典老歌超清" + }, + { + "type_name": "DJ", + "type_id": "DJ歌曲超清" + }, + { + "type_name": "网红翻唱", + "type_id": "网红翻唱歌曲超清" + }, + { + "type_name": "韩国女团", + "type_id": "韩国女团演唱会超清" + } + ], + "filters": { + "演唱会超清": [ + { + "key": "order", + "name": "排序", + "value": [ + { + "n": "综合排序", + "v": "0" + }, + { + "n": "最多点击", + "v": "click" + }, + { + "n": "最新发布", + "v": "pubdate" + }, + { + "n": "最多弹幕", + "v": "dm" + }, + { + "n": "最多收藏", + "v": "stow" + } + ] + }, + { + "key": "tid", + "name": "分类", + "value": [ + { + "n": "全部", + "v": "演唱会超清" + }, + { + "n": "A阿杜", + "v": "阿杜演唱会超清" + }, + { + "n": "A阿黛尔", + "v": "阿黛尔演唱会超清" + }, + { + "n": "BBeyond", + "v": "Beyond演唱会超清" + }, + { + "n": "BBy2", + "v": "By2演唱会超清" + }, + { + "n": "BBIGBANG", + "v": "BIGBANG演唱会超清" + }, + { + "n": "B布兰妮", + "v": "布兰妮演唱会超清" + }, + { + "n": "B坂井泉水", + "v": "坂井泉水演唱会超清" + }, + { + "n": "C陈奕迅", + "v": "陈奕迅演唱会超清" + }, + { + "n": "C蔡依林", + "v": "蔡依林演唱会超清" + }, + { + "n": "C初音未来", + "v": "初音未来演唱会超清" + }, + { + "n": "C蔡健雅", + "v": "蔡健雅演唱会超清" + }, + { + "n": "C陈小春", + "v": "陈小春演唱会超清" + }, + { + "n": "C草蜢", + "v": "草蜢演唱会超清" + }, + { + "n": "C陈慧娴", + "v": "陈慧娴演唱会超清" + }, + { + "n": "C崔健", + "v": "崔健演唱会超清" + }, + { + "n": "C仓木麻衣", + "v": "仓木麻衣演唱会超清" + }, + { + "n": "D戴荃", + "v": "戴荃演唱会超清" + }, + { + "n": "D动力火车", + "v": "动力火车演唱会超清" + }, + { + "n": "D邓丽君", + "v": "邓丽君演唱会超清" + }, + { + "n": "D丁当", + "v": "丁当演唱会超清" + }, + { + "n": "D刀郎", + "v": "刀郎演唱会超清" + }, + { + "n": "D邓紫棋", + "v": "邓紫棋演唱会超清" + }, + { + "n": "D戴佩妮", + "v": "戴佩妮演唱会超清" + }, + { + "n": "D邓丽君", + "v": "邓丽君演唱会超清" + }, + { + "n": "F飞儿乐队", + "v": "飞儿乐队演唱会超清" + }, + { + "n": "F费玉清", + "v": "费玉清演唱会超清" + }, + { + "n": "F费翔", + "v": "费翔演唱会超清" + }, + { + "n": "F方大同", + "v": "方大同演唱会超清" + }, + { + "n": "F房东的猫", + "v": "房东的猫演唱会超清" + }, + { + "n": "F凤飞飞", + "v": "凤飞飞演唱会超清" + }, + { + "n": "F凤凰传奇", + "v": "凤凰传奇演唱会超清" + }, + { + "n": "G郭采洁", + "v": "郭采洁演唱会超清" + }, + { + "n": "G光良", + "v": "光良演唱会超清" + }, + { + "n": "G郭静", + "v": "郭静演唱会超清" + }, + { + "n": "G郭富城", + "v": "郭富城演唱会超清" + }, + { + "n": "H胡彦斌", + "v": "胡彦斌演唱会超清" + }, + { + "n": "H胡夏", + "v": "胡夏演唱会超清" + }, + { + "n": "H韩红", + "v": "韩红演唱会超清" + }, + { + "n": "H黄品源", + "v": "黄品源演唱会超清" + }, + { + "n": "H黄小琥", + "v": "黄小琥演唱会超清" + }, + { + "n": "H花儿乐队", + "v": "花儿乐队演唱会超清" + }, + { + "n": "H黄家强", + "v": "黄家强演唱会超清" + }, + { + "n": "H后街男孩", + "v": "后街男孩演唱会超清" + }, + { + "n": "J经典老歌", + "v": "经典老歌演唱会超清" + }, + { + "n": "J贾斯丁比伯", + "v": "贾斯丁比伯演唱会超清" + }, + { + "n": "J金池", + "v": "金池演唱会超清" + }, + { + "n": "J金志文", + "v": "金志文演唱会超清" + }, + { + "n": "J焦迈奇", + "v": "焦迈奇演唱会超清" + }, + { + "n": "K筷子兄弟", + "v": "筷子兄弟演唱会超清" + }, + { + "n": "L李玟", + "v": "李玟演唱会超清" + }, + { + "n": "L林忆莲", + "v": "林忆莲演唱会超清" + }, + { + "n": "L李克勤", + "v": "李克勤演唱会超清" + }, + { + "n": "L刘宪华", + "v": "刘宪华演唱会超清" + }, + { + "n": "L李圣杰", + "v": "李圣杰演唱会超清" + }, + { + "n": "L林宥嘉", + "v": "林宥嘉演唱会超清" + }, + { + "n": "L梁静茹", + "v": "梁静茹演唱会超清" + }, + { + "n": "L李健", + "v": "李健演唱会超清" + }, + { + "n": "L林俊杰", + "v": "林俊杰演唱会超清" + }, + { + "n": "L李玉刚", + "v": "李玉刚演唱会超清" + }, + { + "n": "L林志炫", + "v": "林志炫演唱会超清" + }, + { + "n": "L李荣浩", + "v": "李荣浩演唱会超清" + }, + { + "n": "L李宇春", + "v": "李宇春演唱会超清" + }, + { + "n": "L洛天依", + "v": "洛天依演唱会超清" + }, + { + "n": "L林子祥", + "v": "林子祥演唱会超清" + }, + { + "n": "L李宗盛", + "v": "李宗盛演唱会超清" + }, + { + "n": "L黎明", + "v": "黎明演唱会超清" + }, + { + "n": "L刘德华", + "v": "刘德华演唱会超清" + }, + { + "n": "L罗大佑", + "v": "罗大佑演唱会超清" + }, + { + "n": "L林肯公园", + "v": "林肯公园演唱会超清" + }, + { + "n": "LLadyGaga", + "v": "LadyGaga演唱会超清" + }, + { + "n": "L旅行团乐队", + "v": "旅行团乐队演唱会超清" + }, + { + "n": "M莫文蔚", + "v": "莫文蔚演唱会超清" + }, + { + "n": "M毛不易", + "v": "毛不易演唱会超清" + }, + { + "n": "M梅艳芳", + "v": "梅艳芳演唱会超清" + }, + { + "n": "M迈克尔杰克逊", + "v": "迈克尔杰克逊演唱会超清" + }, + { + "n": "N南拳妈妈", + "v": "南拳妈妈演唱会超清" + }, + { + "n": "P朴树", + "v": "朴树演唱会超清" + }, + { + "n": "Q齐秦", + "v": "齐秦演唱会超清" + }, + { + "n": "Q青鸟飞鱼", + "v": "青鸟飞鱼演唱会超清" + }, + { + "n": "R容祖儿", + "v": "容祖儿演唱会超清" + }, + { + "n": "R任贤齐", + "v": "任贤齐演唱会超清" + }, + { + "n": "S水木年华", + "v": "水木年华演唱会超清" + }, + { + "n": "S孙燕姿", + "v": "孙燕姿演唱会超清" + }, + { + "n": "S苏打绿", + "v": "苏打绿演唱会超清" + }, + { + "n": "SSHE", + "v": "SHE演唱会超清" + }, + { + "n": "S孙楠", + "v": "孙楠演唱会超清" + }, + { + "n": "T陶喆", + "v": "陶喆演唱会超清" + }, + { + "n": "T谭咏麟", + "v": "谭咏麟演唱会超清" + }, + { + "n": "T田馥甄", + "v": "田馥甄演唱会超清" + }, + { + "n": "T谭维维", + "v": "谭维维演唱会超清" + }, + { + "n": "T逃跑计划", + "v": "逃跑计划演唱会超清" + }, + { + "n": "T田震", + "v": "田震演唱会超清" + }, + { + "n": "T谭晶", + "v": "谭晶演唱会超清" + }, + { + "n": "T屠洪刚", + "v": "屠洪刚演唱会超清" + }, + { + "n": "T泰勒·斯威夫特", + "v": "泰勒·斯威夫特演唱会超清" + }, + { + "n": "W王力宏", + "v": "王力宏演唱会超清" + }, + { + "n": "W王杰", + "v": "王杰演唱会超清" + }, + { + "n": "W吴克群", + "v": "吴克群演唱会超清" + }, + { + "n": "W王心凌", + "v": "王心凌演唱会超清" + }, + { + "n": "W王靖雯", + "v": "好声音王靖雯演唱会超清" + }, + { + "n": "W汪峰", + "v": "汪峰演唱会超清" + }, + { + "n": "W伍佰", + "v": "伍佰演唱会超清" + }, + { + "n": "W王菲", + "v": "王菲演唱会超清" + }, + { + "n": "W五月天", + "v": "五月天演唱会超清" + }, + { + "n": "W汪苏泷", + "v": "汪苏泷演唱会超清" + }, + { + "n": "X徐佳莹", + "v": "徐佳莹演唱会超清" + }, + { + "n": "X弦子", + "v": "弦子演唱会超清" + }, + { + "n": "X萧亚轩", + "v": "萧亚轩演唱会超清" + }, + { + "n": "X许巍", + "v": "许巍演唱会超清" + }, + { + "n": "X薛之谦", + "v": "薛之谦演唱会超清" + }, + { + "n": "X许嵩", + "v": "许嵩演唱会超清" + }, + { + "n": "X小虎队", + "v": "小虎队演唱会超清" + }, + { + "n": "X萧敬腾", + "v": "萧敬腾演唱会超清" + }, + { + "n": "X谢霆锋", + "v": "谢霆锋演唱会超清" + }, + { + "n": "X徐小凤", + "v": "徐小凤演唱会超清" + }, + { + "n": "X信乐队", + "v": "信乐队演唱会超清" + }, + { + "n": "Y夜愿乐队", + "v": "夜愿乐队演唱会超清" + }, + { + "n": "Y羽泉", + "v": "羽泉演唱会超清" + }, + { + "n": "Y郁可唯", + "v": "郁可唯演唱会超清" + }, + { + "n": "Y叶倩文", + "v": "叶倩文演唱会超清" + }, + { + "n": "Y杨坤", + "v": "杨坤演唱会超清" + }, + { + "n": "Y庾澄庆", + "v": "庾澄庆演唱会超清" + }, + { + "n": "Y尤长靖", + "v": "尤长靖演唱会超清" + }, + { + "n": "Y易烊千玺", + "v": "易烊千玺演唱会超清" + }, + { + "n": "Y袁娅维", + "v": "袁娅维演唱会超清" + }, + { + "n": "Y杨丞琳", + "v": "杨丞琳演唱会超清" + }, + { + "n": "Y杨千嬅", + "v": "杨千嬅演唱会超清" + }, + { + "n": "Y杨宗纬", + "v": "杨宗纬演唱会超清" + }, + { + "n": "Z郑秀文", + "v": "郑秀文演唱会超清" + }, + { + "n": "Z周杰伦", + "v": "周杰伦演唱会超清" + }, + { + "n": "Z张学友", + "v": "张学友演唱会超清" + }, + { + "n": "Z张信哲", + "v": "张信哲演唱会超清" + }, + { + "n": "Z张宇", + "v": "张宇演唱会超清" + }, + { + "n": "Z周华健", + "v": "周华健演唱会超清" + }, + { + "n": "Z张韶涵", + "v": "张韶涵演唱会超清" + }, + { + "n": "Z周深", + "v": "周深演唱会超清" + }, + { + "n": "Z纵贯线", + "v": "纵贯线演唱会超清" + }, + { + "n": "Z赵雷", + "v": "赵雷演唱会超清" + }, + { + "n": "Z周传雄", + "v": "周传雄演唱会超清" + }, + { + "n": "Z张国荣", + "v": "张国荣演唱会超清" + }, + { + "n": "Z周慧敏", + "v": "周慧敏演唱会超清" + }, + { + "n": "Z张惠妹", + "v": "张惠妹演唱会超清" + }, + { + "n": "Z周笔畅", + "v": "周笔畅演唱会超清" + }, + { + "n": "Z郑中基", + "v": "郑中基演唱会超清" + }, + { + "n": "Z张艺兴", + "v": "张艺兴演唱会超清" + }, + { + "n": "Z张震岳", + "v": "张震岳演唱会超清" + }, + { + "n": "Z张雨生", + "v": "张雨生演唱会超清" + }, + { + "n": "Z郑智化", + "v": "郑智化演唱会超清" + }, + { + "n": "Z卓依婷", + "v": "卓依婷演唱会超清" + }, + { + "n": "Z中岛美雪", + "v": "中岛美雪演唱会超清" + } + ] + }, + { + "key": "duration", + "name": "时长", + "value": [ + { + "n": "全部", + "v": "0" + }, + { + "n": "60分钟以上", + "v": "4" + }, + { + "n": "30~60分钟", + "v": "3" + }, + { + "n": "10~30分钟", + "v": "2" + }, + { + "n": "10分钟以下", + "v": "1" + } + ] + } + ] + } +} \ No newline at end of file diff --git a/潇洒/other/json/XQDD.json b/潇洒/other/json/XQDD.json new file mode 100644 index 00000000..427b46fd --- /dev/null +++ b/潇洒/other/json/XQDD.json @@ -0,0 +1,71 @@ +{ + "规则名": "戏曲多多", + "规则作者": "", + "请求头参数": "User-Agent$okhttp/3.12.6", + "网页编码格式": "UTF-8", + "图片是否需要代理": "0", + "是否开启获取首页数据": "0", + "首页推荐链接": "", + "首页列表数组规则": "", + "首页片单列表数组规则": "", + "首页片单是否Jsoup写法": "1", + "首页片单标题": "a&&title", + "首页片单链接": "a&&href", + "首页片单图片": "img&&src", + "首页片单副标题": "", + "首页片单链接加前缀": "", + "首页片单链接加后缀": "", + "分类起始页码": "0", + "分类链接": "https://main.xiquduoduo.com/bama/service/s.php?type=getcollabellist&collid={cateId}&label=默认&pg={catePg}&ps=30", + "分类名称": "花鼓戏&黄梅戏&京剧&老电影&小品相声&儿歌多多&越剧&车载歌曲&采茶戏&豫剧&晋剧&经典歌曲&祁剧&桂剧&民间小调&二人转&河南坠子&评剧&歌仔戏&曲剧&湘剧&川剧&秦腔&婺剧&大平调&越调&莲花落&淮剧&赣剧&春晚戏曲&昆曲&锡剧&二人台&上党梆子&河北梆子&眉户戏&扬剧&皮影戏&绍兴莲花落&北路梆子&泗州戏&楚剧&庐剧&蒲剧&潮剧&评书&沪剧&粤剧&莆仙戏&琼剧&藏剧&布袋戏&吕剧&闽剧&黔剧&滇剧&新疆曲子戏&陇剧&漫瀚剧", + "分类名称替换词": "80000084&80000018&80000013&80000221&80000083&80000069&80000086&80000214&80000103&80000017&80000020&80000219&80000100&80000102&80000224&80000014&80000023&80000091&80000087&80000022&80000096&80000088&80000019&80000216&80000217&80000218&80000136&80000095&80000099&80000015&80000090&80000097&80000021&80000025&80000027&80000110&80000048&80000092&80000137&80000024&80000220&80000098&80000101&80000093&80000026&80000223&80000089&80000085&80000215&80000104&80000112&80000114&80000094&80000105&80000106&80000107&80000108&80000109&80000113", + "筛选数据": {}, + //"筛选数据": "ext", + //{cateId} + "筛选子分类名称": "", + "筛选子分类替换词": "", + //{class} + "筛选类型名称": "", + "筛选类型替换词": "*", + //{area} + "筛选地区名称": "", + "筛选地区替换词": "*", + //{year} + "筛选年份名称": "", + "筛选年份替换词": "*", + //{lang} + "筛选语言名称": "", + "筛选语言替换词": "*", + //{by} + "筛选排序名称": "默认&最新&高清&全本", + "筛选排序替换词": "*", + "分类截取模式": "0", + "分类列表数组规则": "list", + "分类片单是否Jsoup写法": "1", + "分类片单标题": "name", + "分类片单链接": "ddurl", + "分类片单图片": "pic", + "分类片单副标题": "", + "分类片单链接加前缀": "", + "分类片单链接加后缀": "", + "搜索请求头参数": "User-Agent$okhttp/3.12.6", + "搜索起始页码":"0", + "搜索链接": "https://main.xiquduoduo.com/bama/service/s.php?type=ddsearch&keyword={wd}&pg={SearchPg}&ps=30&album=true&allbz=true&origin=true", + "POST请求数据": "", + "搜索截取模式": "0", + "搜索列表数组规则": "list", + "搜索片单是否Jsoup写法": "1", + "搜索片单图片": "pic", + "搜索片单标题": "name", + "搜索片单链接": "ddurl", + "搜索片单副标题": "", + "搜索片单链接加前缀": "", + "搜索片单链接加后缀": "", + "链接是否直接播放": "1", + "直接播放链接加前缀": "", + "直接播放链接加后缀": "", + "直接播放直链视频请求头": "", + "是否开启手动嗅探": "0", + "手动嗅探视频链接关键词": ".mp4#.m3u8#.flv#video/tos", + "手动嗅探视频链接过滤词": ".html#=http" +} \ No newline at end of file diff --git a/潇洒/other/json/YST.json b/潇洒/other/json/YST.json new file mode 100644 index 00000000..4519779c --- /dev/null +++ b/潇洒/other/json/YST.json @@ -0,0 +1,17 @@ +{ + "首页": "0", + // "播放链接前缀": "https://www.gyf.lol", + "数组": "data\":{\"tit&&s_log", + "图片": "https://p0.ssl.cdn.btime.com/+ssl.cdn.btime.com/&&\"", + "副标题": "le\":\"&&\"", + "标题": "text\":\"&&\"", + "链接": "item.btime.com/&&\"", + "链接前缀": "https://app.api.btime.com/video/play?callback=jQuery36009651202523243325_1747927554988&id=", + // "线路标题": "
&&") + + # ==================== 原有功能(保持不变) ==================== + + def homeContent(self, filter): + classes = [ + {"type_name": n, "type_id": i} + for n, i in [ + ("歌手", "/singerlist/index/index/index/index.html"), + ("TOP榜单", "/list/top.html"), + ("新歌榜", "/list/new.html"), + ("电台", "/radiolist/index.html"), + ("高清MV", "/mvlist/oumei.html"), + ("专辑", "/albumlist/index.html"), + ("歌单", "/playtype/index.html") + ] + ] + filters = {} + for p in [c["type_id"] for c in classes if "singer" not in c["type_id"]]: + d = self._fetch_filters(p) + if d: + filters[p] = d + + if "/radiolist/index.html" not in filters: + filters["/radiolist/index.html"] = [{ + "key": "id", + "name": "分类", + "value": [ + {"n": n, "v": v} + for n, v in zip( + ["最新", "最热", "有声小说", "相声", "音乐", "情感", "国漫", "影视", "脱口秀", "历史", "儿童", "教育", "八卦", "推理", "头条"], + ["index", "hot", "novel", "xiangyi", "music", "emotion", "game", "yingshi", "talkshow", "history", + "children", "education", "gossip", "tuili", "headline"] + ) + ] + }] + + filters["/singerlist/index/index/index/index.html"] = [ + { + "key": "area", + "name": "地区", + "value": [ + {"n": "全部", "v": "index"}, + {"n": "华语", "v": "huayu"}, + {"n": "欧美", "v": "oumei"}, + {"n": "韩国", "v": "hanguo"}, + {"n": "日本", "v": "ribrn"} + ] + }, + { + "key": "sex", + "name": "性别", + "value": [ + {"n": "全部", "v": "index"}, + {"n": "男", "v": "male"}, + {"n": "女", "v": "girl"}, + {"n": "组合", "v": "band"} + ] + }, + { + "key": "genre", + "name": "流派", + "value": [ + {"n": "全部", "v": "index"}, + {"n": "流行", "v": "liuxing"}, + {"n": "电子", "v": "dianzi"}, + {"n": "摇滚", "v": "yaogun"}, + {"n": "嘻哈", "v": "xiha"}, + {"n": "R&B", "v": "rb"}, + {"n": "民谣", "v": "minyao"}, + {"n": "爵士", "v": "jueshi"}, + {"n": "古典", "v": "gudian"} + ] + } + ] + return {"class": classes, "filters": filters, "list": []} + + def homeVideoContent(self): + return {"list": []} + + def categoryContent(self, tid, pg, filter, extend): + pg = int(pg or 1) + url = tid + if "/singerlist/" in tid: + parts = tid.split('/') + if len(parts) >= 6: + url = "/".join(parts[:2] + [extend.get(k, parts[i]) for i, k in enumerate(["area", "sex", "genre"], 2)] + + [f"{extend.get('char', 'index')}.html"]) + elif "id" in extend and extend["id"] not in ["index", "top"]: + url = tid.replace("index.html", f"{extend['id']}.html").replace("top.html", f"{extend['id']}.html") + if url == tid: + url = f"{tid.rsplit('/', 1)[0]}/{extend['id']}.html" + + if pg > 1: + sep = "/" if any(x in url for x in ["/singerlist/", "/radiolist/", "/mvlist/", "/playtype/", "/list/"]) else "_" + url = re.sub(r'(_\d+|/\d+)?\.html$', f'{sep}{pg}.html', url) + + doc = self.getpq(url) + items = doc(".play_list li, .video_list li, .pic_list li, .singer_list li, .ali li, .layui-row li, .base_l li") + return { + "list": self._parse_list(items, tid), + "page": pg, + "pagecount": 9999, + "limit": 90, + "total": 999999 + } + + def searchContent(self, key, quick, pg="1"): + doc = self.getpq(f"/so/{quote(key)}/{pg}.html") + items = doc(".base_l li, .play_list li") + return { + "list": self._parse_list(items, "search"), + "page": int(pg) + } + + def detailContent(self, ids): + url = self._abs(ids[0]) + doc = self.getpq(url) + vod = { + "vod_id": url, + "vod_name": self._clean(doc("h1").text() or doc("title").text()), + "vod_pic": self._abs(doc(".djpg img, .pic img, .djpic img").attr("src")), + "vod_play_from": "爱听音乐", + "vod_content": "" + } + + if any(x in url for x in ["/playlist/", "/album/", "/list/", "/singer/", "/special/", "/radio/", "/radiolist/"]): + eps = self._get_eps(doc) + page_urls = { + self._abs(a.attr("href")) + for a in doc(".page a, .dede_pages a, .pagelist a").items() + if a.attr("href") and "javascript" not in a.attr("href") + } - {url} + if page_urls: + with ThreadPoolExecutor(max_workers=5) as ex: + futures = [] + for u in sorted(page_urls, key=lambda x: int(re.search(r'[_/](\d+)\.html', x).group(1)) if re.search( + r'[_/](\d+)\.html', x) else 0): + futures.append(ex.submit(lambda uu: self._get_eps(self.getpq(uu)), u)) + for f in as_completed(futures): + eps.extend(f.result() or []) + if eps: + vod.update({ + "vod_play_from": "播放列表", + "vod_play_url": "#".join(eps) + }) + return {"list": [vod]} + + play_list = [] + if mid := re.search(r'/(song|mp3|radio|radiolist|radioplay)/([^/]+)\.html', url): + lrc_url = f"{self.host}/plug/down.php?ac=music&lk=lrc&id={mid.group(2)}" + play_list = [f"播放${self.e64('0@@@@' + url + '|||' + lrc_url)}"] + + elif vid := re.search(r'/(video|mp4)/([^/]+)\.html', url): + with ThreadPoolExecutor(max_workers=3) as ex: + fs = { + ex.submit(self._api, "/plug/down.php", {"ac": "vplay", "id": vid.group(2), "q": q}): n + for n, q in [("蓝光", 1080), ("超清", 720), ("高清", 480)] + } + play_list = [f"{fs[f]}${self.e64('0@@@@'+u)}" for f in as_completed(fs) if (u := f.result())] + play_list.sort(key=lambda x: {"蓝": 0, "超": 1, "高": 2}.get(x[0], 3)) + + vod["vod_play_url"] = "#".join(play_list) if play_list else f"解析失败${self.e64('1@@@@'+url)}" + return {"list": [vod]} + + def playerContent(self, flag, id, vipFlags): + raw = self.d64(id).split("@@@@")[-1] + url, subt = raw.split("|||") if "|||" in raw else (raw, "") + url = url.replace(r"\/", "/") + + if ".html" in url and not self.isVideoFormat(url): + if mid := re.search(r'/(song|mp3|radio|radiolist|radioplay)/([^/]+)\.html', url): + if r_url := self._api("/js/play.php", method="POST", data={"id": mid.group(2), "type": "music"}, + headers={"Referer": url.replace("http://", "https://"), + "X-Requested-With": "XMLHttpRequest"}): + url = r_url if ".php" not in r_url else url + elif vid := re.search(r'/(video|mp4)/([^/]+)\.html', url): + with ThreadPoolExecutor(max_workers=3) as ex: + for f in as_completed( + [ex.submit(self._api, "/plug/down.php", {"ac": "vplay", "id": vid.group(2), "q": q}) for q in + [1080, 720, 480]]): + if v_url := f.result(): + url = v_url + break + + result = {"parse": 0, "url": url, "header": {"User-Agent": self.headers["User-Agent"]}} + if "22a5.com" in url: + result["header"]["Referer"] = self.host + "/" + + # OK影视3.6.5+支持LRC格式滚动歌词 + if subt: + try: + r = self.session.get(subt, headers={"Referer": self.host + "/"}, timeout=5) + lrc_content = r.text + if lrc_content: + lrc_content = self._filter_lrc_ads(lrc_content) + result["lrc"] = lrc_content + except: + pass + + return result + + def _filter_lrc_ads(self, lrc_text): + """过滤LRC歌词中的广告内容""" + lines = lrc_text.splitlines() + filtered_lines = [] + + # 广告关键词模式 + ad_patterns = [ + r'欢迎来访.*', + r'本站.*', + r'.*广告.*', + r'QQ群.*', + r'.*www\..*', + r'.*http.*', + r'.*\.com.*', + r'.*\.cn.*', + r'.*\.net.*', + r'.*音乐网.*', + r'.*提供.*', + r'.*下载.*', + ] + + for line in lines: + if re.match(r'\[\d{2}:\d{2}', line): + is_ad = False + for pattern in ad_patterns: + if re.search(pattern, line, re.IGNORECASE): + is_ad = True + break + if not is_ad: + filtered_lines.append(line) + else: + filtered_lines.append(line) + + return '\n'.join(filtered_lines) + + def localProxy(self, param): + url = unquote(param.get("url", "")) + type_ = param.get("type") + + if type_ == "img": + try: + headers = { + "Referer": "https://www.baidu.com/", + "User-Agent": self.headers["User-Agent"], + "Accept": "image/webp,image/apng,image/*,*/*;q=0.8", + "Accept-Language": "zh-CN,zh;q=0.9" + } + resp = self.session.get(url, headers=headers, timeout=10) + return [200, "image/jpeg", resp.content, {}] + except Exception as e: + print(f"图片代理失败: {e}") + return [404, "text/plain", b"", {}] + + elif type_ == "lrc": + try: + r = self.session.get(url, headers={"Referer": self.host + "/"}, timeout=5) + lrc_content = r.text + lrc_content = self._filter_lrc_ads(lrc_content) + return [200, "application/octet-stream", lrc_content.encode('utf-8'), {}] + except: + return [404, "text/plain", "Error", {}] + + return None + + # ==================== 辅助方法 ==================== + + def _parse_list(self, items, tid=""): + """解析列表项,修复歌手头像 - 直接返回原始图片URL""" + res = [] + for li in items.items(): + a = li("a").eq(0) + if not (href := a.attr("href")) or href == "/" or any(x in href for x in ["/user/", "/login/", "javascript"]): + continue + if not (name := self._clean(li(".name").text() or a.attr("title") or a.text())): + continue + + is_singer = "/singer/" in href or "/singerlist" in tid + + pic = "" + src = "" + + if is_singer: + img = li(".pic img").eq(0) + src = img.attr("src") or "" + if not src: + img = li("img").eq(0) + src = img.attr("src") or "" + else: + img = li("img").eq(0) + src = img.attr("src") or "" + if not src: + img = li(".pic img").eq(0) + src = img.attr("src") or "" + + if src: + if src.startswith('//'): + src = 'https:' + src + elif src.startswith('/'): + src = self.host + src + pic = src + + res.append({ + "vod_id": self._abs(href), + "vod_name": name, + "vod_pic": pic, + "style": { + "type": "oval" if is_singer else ("list" if any( + x in tid for x in ["/list/", "/playtype/", "/albumlist/"]) else "rect"), + "ratio": 1 if is_singer else 1.33 + } + }) + return res + + def _get_eps(self, doc): + eps = [] + for li in doc(".play_list li, .song_list li, .music_list li").items(): + a = li("a").eq(0) + href = a.attr("href") + if not href or not re.search(r'/(song|mp3|radio|radiolist|radioplay)/([^/]+)\.html', href): + continue + full_url = self._abs(href) + + lrc_part = "" + mid = re.search(r'/(song|mp3|radio|radiolist|radioplay)/([^/]+)\.html', full_url) + if mid: + lrc_url = f"{self.host}/plug/down.php?ac=music&lk=lrc&id={mid.group(2)}" + lrc_part = f"|||{lrc_url}" + + eps.append(f"{self._clean(a.text() or li('.name').text())}${self.e64('0@@@@' + full_url + lrc_part)}") + return eps + + def _clean(self, text): + return re.sub( + r'(爱玩音乐网|视频下载说明|视频下载地址|www\.2t58\.com|MP3免费下载|LRC歌词下载|全部歌曲|\[第\d+页\]|刷新|每日推荐|最新|热门|推荐|MV|高清|无损)', + '', + text or '', + flags=re.I + ).strip() + + def _fetch_filters(self, url): + doc = self.getpq(url) + filters = [] + for i, group in enumerate([ + doc(".ilingku_fl"), + doc(".class_list"), + doc(".screen_list"), + doc(".box_list"), + doc(".nav_list") + ]): + if group: + opts = [{"n": "全部", "v": "top" if "top" in url else "index"}] + seen = set() + for a in group("a").items(): + v = (a.attr("href") or "").split("?")[0].rstrip('/').split('/')[-1].replace('.html', '') + if v and v not in seen: + opts.append({"n": a.text().strip(), "v": v}) + seen.add(v) + if len(opts) > 1: + filters.append({"key": f"id{i}" if i else "id", "name": "分类", "value": opts}) + return filters + + def _api(self, path, params=None, method="GET", headers=None, data=None): + try: + h = self.headers.copy() + if headers: + h.update(headers) + r = (self.session.post if method == "POST" else self.session.get)( + f"{self.host}{path}", + params=params, + data=data, + headers=h, + timeout=10, + allow_redirects=False + ) + if loc := r.headers.get("Location"): + return self._abs(loc.strip()) + return self._abs(r.json().get("url", "").replace(r"\/", "/")) or (r.text.strip() if r.text.strip().startswith( + "http") else "") + except: + return "" + + def _abs(self, url): + if not url: + return "" + if url.startswith("http"): + return url + if url.startswith("//"): + return "https:" + url + return f"{self.host}{'/' if not url.startswith('/') else ''}{url}" + + def e64(self, text): + return b64encode(text.encode("utf-8")).decode("utf-8") + + def d64(self, text): + return b64decode(text.encode("utf-8")).decode("utf-8") \ No newline at end of file diff --git a/潇洒/sport/js/310ZB.js b/潇洒/sport/js/310ZB.js new file mode 100644 index 00000000..28274199 --- /dev/null +++ b/潇洒/sport/js/310ZB.js @@ -0,0 +1 @@ +dmFyIHJ1bGUgPSB7CiAgICB0aXRsZTonMzEw55u05pKtJywKICAgIGhvc3Q6J2h0dHA6Ly93d3cuMzEwLnR2JywKICAgIHVybDonLz9zPTAmdD0xJmE9ZnljbGFzcyZnPWZ5cGFnZScsCiAgICBzZWFyY2hVcmw6JycsCiAgICBzZWFyY2hhYmxlOjAsCiAgICBxdWlja1NlYXJjaDowLAogICAgY2xhc3NfbmFtZTon54Ot6ZeoJui2s+eQgybnr67nkIMnLAogICAgY2xhc3NfdXJsOicwJjEmMicsCiAgICBoZWFkZXJzOnsKICAgICAgICAnVXNlci1BZ2VudCc6J01PQklMRV9VQScKICAgIH0sCiAgICB0aW1lb3V0OjUwMDAsCiAgICBwbGF5X3BhcnNlOmZhbHNlLAogICAgbGF6eTonJywKICAgIGxpbWl0OjYsCiAgICBkb3VibGU6ZmFsc2UsCiAgICDmjqjojZA6JyonLAogICAg5LiA57qnOicubGlzdF9jb250ZW50IGE7LmppYWJpZmVuZyYmcDpsdCg1KSYmVGV4dDsuZmVsZWltZyBpbWcmJnNyYzthJiZ0LW56Zi1vO2EmJmhyZWYnLAogICAg5LqM57qnOicqJywgCiAgICDmkJzntKI6JycsCn0= \ No newline at end of file diff --git a/潇洒/sport/js/360B.js b/潇洒/sport/js/360B.js new file mode 100644 index 00000000..ef4a1fba --- /dev/null +++ b/潇洒/sport/js/360B.js @@ -0,0 +1 @@ +Z2xvYmFsVGhpcy5nZXRWaWRlb3MgPSBmdW5jdGlvbihsaW5rLCBrZXkpIHsKICAgIGxldCBodG1sID0gcmVxdWVzdChsaW5rKTsKICAgIGxldCBqc29uID0gSlNPTi5wYXJzZShodG1sKTsKICAgIGxldCBkYXRhID0ganNvbi5kYXRhOwogICAgZGF0YSA9IGRhdGFba2V5XTsKICAgIGxldCB2aWRlb3MgPSBkYXRhLm1hcCgobikgPT4gewogICAgICAgIGxldCBpZCA9IG4udXJsOwogICAgICAgIGxldCBuYW1lID0gbi5sZWFndWVfbmFtZV96aCArICcgJyArIG4uaG9tZV90ZWFtX3poICsgJyBWUyAnICsgbi5hd2F5X3RlYW1femg7CiAgICAgICAgbGV0IHBpYyA9IG4uY292ZXI7CiAgICAgICAgbGV0IHJlbWFya3MgPSBuLm5pY2tuYW1lOwogICAgICAgIHJldHVybiB7CiAgICAgICAgICAgIHZvZF9pZDogaWQsCiAgICAgICAgICAgIHZvZF9uYW1lOiBuYW1lLAogICAgICAgICAgICB2b2RfcGljOiBwaWMsCiAgICAgICAgICAgIHZvZF9yZW1hcmtzOiByZW1hcmtzLAogICAgICAgIH07CiAgICB9KTsKICAgIHJldHVybiB2aWRlb3MKfQp2YXIgcnVsZSA9IHsKICAgIOexu+WeizogJ+W9seinhicsIC8v5b2x6KeGfOWQrOS5pnzmvKvnlLt85bCP6K+0CiAgICB0aXRsZTogJzM2MOWQp1vnkINdJywKICAgIGhvc3Q6ICdodHRwczovL20uMzYwYmEuY28vJywKICAgIGhvbWVVcmw6ICcvYXBpL3dlYi9oNV9pbmRleCcsCiAgICB1cmw6ICcvYXBpL3dlYi9saXZlX2xpc3RzL2Z5Y2xhc3MnLAogICAgc2VhcmNoVXJsOiAnL2FwaS93ZWIvc2VhcmNoP2tleXdvcmQ9KionLAogICAgc2VhcmNoYWJsZTogMiwKICAgIHF1aWNrU2VhcmNoOiAwLAogICAgZmlsdGVyYWJsZTogMCwKICAgIGhlYWRlcnM6IHsKICAgICAgICAnVXNlci1BZ2VudCc6ICdNT0JJTEVfVUEnLAogICAgfSwKICAgIHRpbWVvdXQ6IDUwMDAsCiAgICBjbGFzc19uYW1lOiAn5YWo6YOoJui2s+eQgybnr67nkIMm57u85ZCIJywKICAgIGNsYXNzX3VybDogJzEmMiYzJjk5JywKICAgIHBsYXlfcGFyc2U6IHRydWUsCiAgICBwYWdlY291bnQ6IHsKICAgICAgICAiMSI6IDEsCiAgICAgICAgIjIiOiAxLAogICAgICAgICIzIjogMSwKICAgICAgICAiOTkiOiAxLAogICAgfSwKICAgIGxhenk6ICRqcy50b1N0cmluZygoKSA9PiB7CiAgICAgICAgaW5wdXQgPSB7CiAgICAgICAgICAgIHBhcnNlOiAwLAogICAgICAgICAgICB1cmw6IGlucHV0LAogICAgICAgICAgICBoZWFkZXI6IHJ1bGUuaGVhZGVycwogICAgICAgIH07CiAgICB9KSwKICAgIOmihOWkhOeQhjogJGpzLnRvU3RyaW5nKCgpID0+IHsKICAgICAgICBPYmplY3QuYXNzaWduKHJ1bGUuaGVhZGVycywgewogICAgICAgICAgICAnUmVmZXJlcic6IHJ1bGUuaG9zdCwKICAgICAgICAgICAgJ09yaWdpbic6IHJ1bGUuaG9zdCwKICAgICAgICB9KTsKICAgIH0pLAogICAg5o6o6I2QOiAkanMudG9TdHJpbmcoKCkgPT4gewogICAgICAgIFZPRFMgPSBnZXRWaWRlb3MoaW5wdXQsICdob3RfbWF0Y2hlcycpOwoKICAgIH0pLAogICAg5LiA57qnOiAkanMudG9TdHJpbmcoKCkgPT4gewogICAgICAgIFZPRFMgPSBbXTsKICAgICAgICBpZiAoTVlfUEFHRSA8PSAxKSB7CiAgICAgICAgICAgIFZPRFMgPSBnZXRWaWRlb3MoaW5wdXQsICdkYXRhJyk7CiAgICAgICAgfQogICAgfSksCiAgICDkuoznuqc6ICcqJywKICAgIOaQnOe0ojogJGpzLnRvU3RyaW5nKCgpID0+IHsKICAgICAgICBWT0RTID0gW107CiAgICAgICAgaWYgKE1ZX1BBR0UgPD0gMSkgewogICAgICAgICAgICBWT0RTID0gZ2V0VmlkZW9zKGlucHV0LCAnYmFsbCcpOwogICAgICAgIH0KICAgIH0pLAp9 \ No newline at end of file diff --git a/潇洒/sport/js/88KQ.js b/潇洒/sport/js/88KQ.js new file mode 100644 index 00000000..27958856 --- /dev/null +++ b/潇洒/sport/js/88KQ.js @@ -0,0 +1 @@ +dmFyIHJ1bGUgPSB7CiAgICB0aXRsZTonODjnnIvnkIMnLAogICAgLy8gaG9zdDonaHR0cDovL3d3dy44OGthbnFpdS5jYycsCiAgICBob3N0OidodHRwOi8vd3d3Ljg4a2FucWl1LmJhci8nLAogICAgdXJsOiAiL21hdGNoL2Z5Y2xhc3MvbGl2ZSIsCiAgICBzZWFyY2hVcmw6ICIiLAogICAgc2VhcmNoYWJsZTogMCwKICAgIHF1aWNrU2VhcmNoOiAwLAogICAgY2xhc3NfcGFyc2U6ICIubmF2LXBpbGxzIGxpO2EmJlRleHQ7YSYmaHJlZjsvbWF0Y2gvKFxcZCspL2xpdmUiLAogICAgaGVhZGVyczogewogICAgICAgICJVc2VyLUFnZW50IjogIlBDX1VBIiwKICAgIH0sCiAgICB0aW1lb3V0OiA1MDAwLAogICAgcGxheV9wYXJzZTogdHJ1ZSwKICAgIHBhZ2Vjb3VudDp7IjEiOjEsIjIiOjEsIjQiOjEsIjIyIjoxLCI4IjoxLCI5IjoxLCIxMCI6MSwiMTQiOjEsIjE1IjoxLCIxMiI6MSwiMTMiOjEsIjE2IjoxLCIyOCI6MSwiNyI6MSwiMTEiOjEsIjMzIjoxLCIyNyI6MSwiMjMiOjEsIjI2IjoxLCIzIjoxLCIyMSI6MSwiMTgiOjF9LAogICAgbGF6eTogYGpzOgogICAgICAgIGlmKC9lbWJlZD0vLnRlc3QoaW5wdXQpKSB7CiAgICAgICAgICAgIGxldCB1cmwgPSBpbnB1dC5tYXRjaCgvZW1iZWQ9KC4qPykmLylbMV07CiAgICAgICAgICAgIHVybCA9IGJhc2U2NERlY29kZSh1cmwpOwogICAgICAgICAgICBpbnB1dCA9IHsKICAgICAgICAgICAgICAgIGp4OjAsCiAgICAgICAgICAgICAgICB1cmw6IHVybC5zcGxpdCgnIycpWzBdLAogICAgICAgICAgICAgICAgcGFyc2U6IDAKICAgICAgICAgICAgfQogICAgICAgIH0gZWxzZSBpZiAoL1w/dXJsPS8udGVzdChpbnB1dCkpewogICAgICAgICAgICBpbnB1dCA9IHsKICAgICAgICAgICAgICAgIGp4OjAsCiAgICAgICAgICAgICAgICB1cmw6IGlucHV0LnNwbGl0KCc/dXJsPScpWzFdLnNwbGl0KCcjJylbMF0sCiAgICAgICAgICAgICAgICBwYXJzZTogMAogICAgICAgICAgICB9CiAgICAgICAgfSBlbHNlIHsKICAgICAgICAgICAgaW5wdXQKICAgICAgICB9CiAgICBgLAogICAgbGltaXQ6IDYsCiAgICBkb3VibGU6IGZhbHNlLAogICAg5o6o6I2QOiAiKiIsCiAgICDkuIDnuqc6ICIubGlzdC1ncm91cCAuZ3JvdXAtZ2FtZS1pdGVtOy5kLW5vbmUmJlRleHQ7aW1nJiZzcmM7LmJ0biYmVGV4dDthJiZocmVmIiwKICAgIOS6jOe6pzogewogICAgICAgIHRpdGxlOiAiLmdhbWUtaW5mby1jb250YWluZXImJlRleHQ7LmN1c3RvbWVyLW5hdmJhci1uYXYgbGkmJlRleHQiLAogICAgICAgIGltZzogImltZyYmc3JjIiwKICAgICAgICBkZXNjOiAiOzs7ZGl2LnRlYW0tbmFtZTplcSgwKSYmVGV4dDtkaXYudGVhbS1uYW1lOmVxKDEpJiZUZXh0IiwKICAgICAgICBjb250ZW50OiAiZGl2LmdhbWUtdGltZSYmVGV4dCIsCiAgICAgICAgdGFiczogImpzOlRBQlM9Wyflrp7ml7bnm7Tmkq0nXSIsCiAgICAgICAgbGlzdHM6IGBqczoKICAgICAgICAgICAgTElTVFMgPSBbXTsKICAgICAgICAgICAgbGV0IGh0bWwgPSByZXF1ZXN0KGlucHV0LnJlcGxhY2UoJ3BsYXknLCAncGxheS11cmwnKSk7CiAgICAgICAgICAgIGxldCBwZGF0YSA9IEpTT04ucGFyc2UoaHRtbCkuZGF0YTsKICAgICAgICAgICAgcGRhdGEgPSBwZGF0YS5zbGljZSg2KTsKICAgICAgICAgICAgcGRhdGEgPSBwZGF0YS5zbGljZSgwLCAtMik7CiAgICAgICAgICAgIHBkYXRhID0gYmFzZTY0RGVjb2RlKHBkYXRhKTsKICAgICAgICAgICAgLy8gbG9nKHBkYXRhKTsKICAgICAgICAgICAgbGV0IGpvID0gSlNPTi5wYXJzZShwZGF0YSkubGlua3M7CiAgICAgICAgICAgIGxldCBkID0gam8ubWFwKGZ1bmN0aW9uIChpdCkgewogICAgICAgICAgICAgICAgcmV0dXJuIGl0Lm5hbWUgKyAnJCcgKyB1cmxlbmNvZGUoaXQudXJsKQogICAgICAgICAgICB9KTsKICAgICAgICAgICAgTElTVFMucHVzaChkKQogICAgICAgIGAsCiAgICB9LAogICAg5pCc57SiOiAiIiwKfTs= \ No newline at end of file diff --git a/潇洒/sport/js/JRKANZB.js b/潇洒/sport/js/JRKANZB.js new file mode 100644 index 00000000..b1346fd7 --- /dev/null +++ b/潇洒/sport/js/JRKANZB.js @@ -0,0 +1 @@ +Ly8g6YGT6ZW/IGRycHnku5PlupMgaHR0cHM6Ly9naXRjb2RlLm5ldC9xcV8zMjM5NDM1MS9kcl9weQovLyDpgZPplb8gZHJweeWuieWNk+acrOWcsOaQreW7uuivtOaYjiBodHRwczovL2NvZGUuZ2l0bGluay5vcmcuY24vYXBpL3YxL3JlcG9zL2hqZGhueC9kcl9weS9ibG9iL21hc3Rlci8lRTUlQUUlODklRTUlOEQlOTMlRTYlOUMlQUMlRTUlOUMlQjAlRTYlOTAlQUQlRTUlQkIlQkElRTglQUYlQjQlRTYlOTglOEUubWQKLy8g6YGT6ZW/IGRycHnlhpnmupAg5qih5p2/6KeE5YiZ6K+05piOIGh0dHBzOi8vZ2l0Y29kZS5uZXQvcXFfMzIzOTQzNTEvZHJfcHkjJUU2JUE4JUExJUU2JTlEJUJGJUU4JUE3JTg0JUU1JTg4JTk5JUU4JUFGJUI0JUU2JTk4JThFCi8vIOmBk+mVvyBkcnB55YaZ5rqQIOWll+aooeaooeeJiCBodHRwczovL2docHJveHkubmV0L2h0dHBzOi8vcmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbS9oamRobngvZHJfcHkvbWFpbi9qcy8lRTYlQTglQTElRTYlOUQlQkYuanMKLy8g6YGT6ZW/IGRycHnlhpnmupAg55u45YWz6KeG6aKR5pWZ56iLIGh0dHBzOi8vd3d3LnlvdXR1YmUuY29tL3dhdGNoP3Y9QUs3Y04tZmN3bTQKLy8g6YGT6ZW/IGRycHnlhpnmupAg5YaZ5rqQ5pWZ5a2m6KeG6aKRIGh0dHBzOi8vdC5tZS9mb25nbWlfb2ZmaWNhbC81NDA4MC82MzU1MwovLyDmtbfpmJTkuIvovb0gaHR0cHM6Ly9oYWlrdW8ubGFuem91aS5jb20vdS9Hb2xkUml2ZXIKLy8g5b2x6KeGVFYg5a6Y5pa5VEcgRHJweee+pCBodHRwczovL3QubWUvZm9uZ21pX29mZmljYWwvNjM2ODkKLy8g5b2x6KeGVFYg5a6Y5pa5VEcg5LiL6L29IGh0dHBzOi8vdC5tZS9mb25nbWlfcmVsZWFzZQoKCnZhciBydWxlID0gewogICAgdGl0bGU6J0pSS0FO55u05pKtJywKICAgIGhvc3Q6J2h0dHA6Ly93d3cuanJrYW5rYW4uY29tLz9sYW49MScsCiAgICAvLyBKUktBTuWkh+eUqOWfn+WQjTp3d3cuanJrYW5rYW4uY29tIC8gd3d3Lmpya2FuMzY1LmNvbSAvIGpyc3l5ZHMuY29tIC8gd3d3LmpyeXlkcy5jb20gLyBqcnNrYW4uY29tIC8ganJzYnhqLmNvbQogICAgLy8gSlJLQU7nvZHlnYDlj5HluIM6cWl1bWkxMzE0LmNvbQogICAgdXJsOicvZnljbGFzcycsCiAgICBzZWFyY2hVcmw6JycsCiAgICBzZWFyY2hhYmxlOjAsCiAgICBxdWlja1NlYXJjaDowLAogICAgY2xhc3NfbmFtZTon5YWo6YOoJywKICAgIGNsYXNzX3VybDonLycsCiAgICAvL2NsYXNzX3VybDonP2xpdmUnLAogICAgaGVhZGVyczp7CiAgICAgICAgJ1VzZXItQWdlbnQnOidNT0JJTEVfVUEnCiAgICB9LAogICAgdGltZW91dDo1MDAwLAogICAgcGxheV9wYXJzZTp0cnVlLAogICAgbGF6eToiIiwKICAgIGxpbWl0OjYsCiAgICBkb3VibGU6ZmFsc2UsCiAgICDmjqjojZA6JyonLAogICAgLy8g5LiA57qnOicubG9jX21hdGNoOmVxKDIpIHVsO2xpOmd0KDEpOmx0KDQpJiZUZXh0O2ltZyYmc3JjO2xpOmx0KDIpJiZUZXh0O2E6ZXEoMSkmJmhyZWYnLC8vcGxheS5zcG9ydHN0ZWFtMzMzLmNvbQogICAg5LiA57qnOiJqczp2YXIgaXRlbXM9W107cGRmaD1qc3AucGRmaDtwZGZhPWpzcC5wZGZhO3BkPWpzcC5wZDt2YXIgaHRtbD1yZXF1ZXN0KGlucHV0KTt2YXIgdGFicz1wZGZhKGh0bWwsJ2JvZHkmJi5kLXRvdWNoJyk7dGFicy5mb3JFYWNoKGZ1bmN0aW9uKGl0KXt2YXIgcHo9cGRmaChpdCwnLm5hbWU6ZXEoMSkmJlRleHQnKTt2YXIgcHM9cGRmaChpdCwnLm5hbWU6ZXEoMCkmJlRleHQnKTt2YXIgcGs9cGRmaChpdCwnLm5hbWU6ZXEoMikmJlRleHQnKTt2YXIgaW1nPXBkKGl0LCdpbWcmJnNyYycpO3ZhciB0aW1lcj1wZGZoKGl0LCcubGFiX3RpbWUmJlRleHQnKTt2YXIgdXJsPXBkKGl0LCdhLm1lJiZocmVmJyk7aXRlbXMucHVzaCh7ZGVzYzp0aW1lcisn8J+PhicrcHMsdGl0bGU6cHorJ/CfhponK3BrLHBpY191cmw6aW1nLHVybDp1cmx9KX0pO3NldFJlc3VsdChpdGVtcyk7IiwKICAgIOS6jOe6pzp7CiAgICAgICAgInRpdGxlIjoiLnN1Yl9saXN0IGxpOmx0KDIpJiZUZXh0Oy5zdWJfbGlzdCBsaTplcSgwKSYmVGV4dCIsCiAgICAgICAgImltZyI6ImltZyYmc3JjIiwKICAgICAgICAiZGVzYyI6Ijs7Oy5sYWJfdGVhbV9ob21lJiZUZXh0Oy5sYWJfdGVhbV9hd2F5JiZUZXh0IiwKICAgICAgICAiY29udGVudCI6Ii5zdWJfbGlzdCB1bCYmVGV4dCIsCiAgICAgICAgInRhYnMiOiJqczpUQUJTPVsnSlJLQU7nm7Tmkq0nXSIsCiAgICAgICAgImxpc3RzIjoianM6TElTVFM9W107cGRmaD1qc3AucGRmaDtwZGZhPWpzcC5wZGZhO3BkPWpzcC5wZDtsZXQgaHRtbD1yZXF1ZXN0KGlucHV0KTtsZXQgZGF0YT1wZGZhKGh0bWwsJy5zdWJfcGxheWxpc3QmJmEnKTtUQUJTLmZvckVhY2goZnVuY3Rpb24odGFiKXtsZXQgZD1kYXRhLm1hcChmdW5jdGlvbihpdCl7bGV0IG5hbWU9cGRmaChpdCwnc3Ryb25nJiZUZXh0Jyk7bGV0IHVybD1wZChpdCwnYSYmZGF0YS1wbGF5Jyk7cmV0dXJuIG5hbWUrJyQnK3VybH0pO0xJU1RTLnB1c2goZCl9KTsiLAogICAgfSwKICAgIOaQnOe0ojonJywKfQ== \ No newline at end of file diff --git a/潇洒/sport/js/WXB.js b/潇洒/sport/js/WXB.js new file mode 100644 index 00000000..28958cae --- /dev/null +++ b/潇洒/sport/js/WXB.js @@ -0,0 +1 @@ +dmFyIHJ1bGUgPSB7Cgl0aXRsZTon5q2m5Lqr5ZCnJywKCWhvc3Q6J2h0dHBzOi8vd3d3Lmh1bGE4Lm5ldCcsCgl1cmw6ICcvZnljbGFzcy9wYWdlL2Z5cGFnZScsCglzZWFyY2hVcmw6ICcvcGFnZS9meXBhZ2UvP3M9KionLAoJc2VhcmNoYWJsZToyLAoJcXVpY2tTZWFyY2g6MCwKCWhlYWRlcnM6ewoJCSdVc2VyLUFnZW50JzogJ1BDX1VBJywKCQknUmVmZXJlcic6ICdodHRwczovL3d3dy5odWxhOC5uZXQvJywKCQknQ29va2llJzonZXNjX3NlYXJjaF9jYXB0Y2hhPTE7cmVzdWx0PTEyJwoJfSwKCXRpbWVvdXQ6NTAwMCwvL+e9keermeeahOWFqOWxgOivt+axgui2heaXtizpu5jorqTmmK8zMDAw5q+r56eSCgljbGFzc19wYXJzZTogJyNtZW51LXhpbmppYW4mJmxpO2EmJlRleHQ7YSYmaHJlZjtuZXQvKC4qKScsCglwbGF5X3BhcnNlOnRydWUsCgljYXRlX2V4Y2x1ZGU6J+mmliDpobV86LWb5LqL6aKE5ZGKfOe+juWbveagvOaWl+i1m3zkuprmtLLmoLzmlpfotZt85YW25LuW5qC85paX6LWbfOaXpeacrOaQj+WHu+i1m3zoo7jmi7PotZsnLAoJbGltaXQ6NiwKCeaOqOiNkDogJ2Rpdi5hcGMtZ3JpZC1pdGVtOyo7Kjsudmlld3MmJlRleHQ7YSYmaHJlZicsCgnkuIDnuqc6ICcuc2l0ZS1tYWluJiZhcnRpY2xlO2ltZyYmYWx0O2ltZyYmZGF0YS1vcmlnaW5hbDsuZ3JpZC1pbmYtbCYmVGV4dDthJiZocmVmJywKCeS6jOe6pzogewoJCSJ0aXRsZSI6ICJoMSYmVGV4dDsubW9kdWxlLWluZm8tdGFnJiZUZXh0IiwKCQkiaW1nIjogIi5hbGlnbmNlbnRlciYmZGF0YS1vcmlnaW5hbCIsCgkJImRlc2MiOiAiOzs7LnZpZXdzOmVxKDApJiZUZXh0OyIsCgkJImNvbnRlbnQiOiAiaDEmJlRleHQiLAoJCSJ0YWJzIjogImpzOlRBQlM9WyfpgZPplb/lnKjnur8nXSIsCgkJImxpc3RzIjogYGpzOgoJCQl2YXIgaHRtbCA9IEpTT04ucGFyc2UocmVxdWVzdChpbnB1dCkubWF0Y2goL3ZhciBiZXZpZGVvX3ZpZHNfLio/PSh7W1xcc1xcU10qP30pOy8pWzFdKTsKCQkJbGV0IGxpc3QgPSBbXTsKCQkJbGlzdCA9IGh0bWwubTN1OGRwbGF5ZXIubWFwKGZ1bmN0aW9uKGl0ZW0pIHsKCQkJCXJldHVybiBpdGVtLnByZSArICIkIiArIGl0ZW0udmlkZW8KCQkJfSk7CgkJCUxJU1RTID0gW2xpc3RdOwoJCWAKCX0sCgnmkJzntKI6ICcqOyo7KjsuZW50cnktbWV0YSYmVGV4dDsqJywKfQ== \ No newline at end of file diff --git a/潇洒/webcast/js/BLZB.js b/潇洒/webcast/js/BLZB.js new file mode 100644 index 00000000..9fee6a5c --- /dev/null +++ b/潇洒/webcast/js/BLZB.js @@ -0,0 +1 @@ +LyoqCiAqIOW9seinhlRWIOW8ueW5leaUr+aMgQogKiBodHRwczovL3QubWUvZm9uZ21pX29mZmljYWwvCiAqIGh0dHBzOi8vZ2l0aHViLmNvbS9Gb25nTWkvUmVsZWFzZS90cmVlL21haW4vYXBrCiAqIOearuearuiZvkRNQm94IOW8ueW5leaUr+aMgQogKiDorr7nva4gPiDnqpflj6PpooTop4ggPiDlvIDlkK8KICogaHR0cHM6Ly90Lm1lL3BpcGl4aWF3ZXJ1bgogKiB2b2RfYXJlYTonYmlsaWxpdmVkYW5tdScKICogQ29va2ll6K6+572uCiAqIENvb2tpZeiOt+WPluaWueazlSBodHRwczovL2docHJveHkubmV0L2h0dHBzOi8vcmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbS9VbmRDb3Zlci9QeXJhbWlkU3RvcmUvbWFpbi9saXN0Lm1kCiAqIENvb2tpZeiuvue9ruaWueazlTE6IERSLVBZIOWQjuWPsOeuoeeQhueVjOmdogogKiBDTVPlkI7lj7DnrqHnkIYgPiDorr7nva7kuK3lv4MgPiDnjq/looPlj5jph48gPiB7ImJpbGlfY29va2llIjoiWFhYWFhYWCIsInZtaWQiOiJYWFhYWFgifSA+IOS/neWtmAogKiBDb29raWXorr7nva7mlrnms5UyOiDmiYvliqjmm7/mjaJDb29raWUKICog5bqV5LiL5Luj56CBIGhlYWRlcnPnmoQKICogIkNvb2tpZSI6IiRiaWxpX2Nvb2tpZSIKICog5omL5Yqo5pu/5o2i5Li6CiAqICJDb29raWUiOiLlsIbojrflj5bnmoRDb29raWXpu4/otLTlnKjov5kiCiAqLwoKdmFyIHJ1bGUgPSB7CiAgICB0aXRsZTogJ+WTlOWTqeebtOaSrScsCiAgICBob3N0OiAnaHR0cHM6Ly9hcGkubGl2ZS5iaWxpYmlsaS5jb20nLAogICAgaG9tZVVybDogJy94bGl2ZS93ZWItaW50ZXJmYWNlL3YxL3NlY29uZC9nZXRVc2VyUmVjb21tZW5kP3BhZ2U9MSZwYWdlX3NpemU9MzAmcGxhdGZvcm09d2ViJywgLy/nlKjkuo4i5YiG57G76I635Y+WIuWSjCLmjqjojZDojrflj5YiCiAgICB1cmw6ICcveGxpdmUvd2ViLWludGVyZmFjZS92MS9zZWNvbmQvZ2V0TGlzdD9wbGF0Zm9ybT13ZWImcGFyZW50X2FyZWFfaWQ9ZnljbGFzcyZhcmVhX2lkPWZ5ZmlsdGVyJnNvcnRfdHlwZT1vbmxpbmUmcGFnZT1meXBhZ2UnLAogICAgY2xhc3NfbmFtZTogJ+eUn+a0uybnvZHmuLgm5omL5ri4JuWNleacuua4uOaIjyblqLHkuZAm55S15Y+wJuiZmuaLn+S4u+aSrSbogYrlpKnlrqQm55+l6K+GJui1m+S6iybluK7miJHnjqkm5LqS5Yqo546p5rOVJui0reeJqScsCiAgICBjbGFzc191cmw6ICcxMCYyJjMmNiYxJjUmOSYxNCYxMSYxMyYzMDEmMTUmMzAwJywKICAgIGZpbHRlcmFibGU6IDEsCiAgICBmaWx0ZXJfdXJsOiAne3tmbC5hcmVhfX0nLAogICAgZmlsdGVyX2RlZjogewogICAgICAgIDEwOiB7CiAgICAgICAgICAgIGFyZWE6ICc2MjQnCiAgICAgICAgfSwKICAgICAgICAyOiB7CiAgICAgICAgICAgIGFyZWE6ICc4NicKICAgICAgICB9LAogICAgICAgIDM6IHsKICAgICAgICAgICAgYXJlYTogJzM1JwogICAgICAgIH0sCiAgICAgICAgNjogewogICAgICAgICAgICBhcmVhOiAnMjM2JwogICAgICAgIH0sCiAgICAgICAgMTogewogICAgICAgICAgICBhcmVhOiAnMjEnCiAgICAgICAgfSwKICAgICAgICA1OiB7CiAgICAgICAgICAgIGFyZWE6ICcxOTAnCiAgICAgICAgfSwKICAgICAgICA5OiB7CiAgICAgICAgICAgIGFyZWE6ICc3NDQnCiAgICAgICAgfSwKICAgICAgICAxNDogewogICAgICAgICAgICBhcmVhOiAnODE4JwogICAgICAgIH0sCiAgICAgICAgMTE6IHsKICAgICAgICAgICAgYXJlYTogJzM3NicKICAgICAgICB9LAogICAgICAgIDEzOiB7CiAgICAgICAgICAgIGFyZWE6ICc1NjInCiAgICAgICAgfSwKICAgICAgICAzMDE6IHsKICAgICAgICAgICAgYXJlYTogJzMwMTAwMCcKICAgICAgICB9LAogICAgICAgIDE1OiB7CiAgICAgICAgICAgIGFyZWE6ICcnCiAgICAgICAgfSwKICAgICAgICAzMDA6IHsKICAgICAgICAgICAgYXJlYTogJzMwMDAwMCcKICAgICAgICB9CiAgICB9LAogICAgZmlsdGVyOiB7CiAgICAgICAgIjEiOiBbewogICAgICAgICAgICAia2V5IjogImFyZWEiLAogICAgICAgICAgICAibmFtZSI6ICLliIbljLoiLAogICAgICAgICAgICAidmFsdWUiOiBbewogICAgICAgICAgICAgICAgIm4iOiAi5YWo6YOoIiwKICAgICAgICAgICAgICAgICJ2IjogIiIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi6JCM5a6F6aKG5Z+fIiwKICAgICAgICAgICAgICAgICJ2IjogIjUzMCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi6KeG6aKR5ZSx6KeBIiwKICAgICAgICAgICAgICAgICJ2IjogIjIxIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLoiJ7op4EiLAogICAgICAgICAgICAgICAgInYiOiAiMjA3IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLpopzlgLwiLAogICAgICAgICAgICAgICAgInYiOiAiMTQ1IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLohLHlj6Pnp4AiLAogICAgICAgICAgICAgICAgInYiOiAiODY4IgogICAgICAgICAgICB9XQogICAgICAgIH1dLAogICAgICAgICIyIjogW3sKICAgICAgICAgICAgImtleSI6ICJhcmVhIiwKICAgICAgICAgICAgIm5hbWUiOiAi5YiG5Yy6IiwKICAgICAgICAgICAgInZhbHVlIjogW3sKICAgICAgICAgICAgICAgICJuIjogIuWFqOmDqCIsCiAgICAgICAgICAgICAgICAidiI6ICIiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuiLsembhOiBlOebnyIsCiAgICAgICAgICAgICAgICAidiI6ICI4NiIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5peg55WP5aWR57qmIiwKICAgICAgICAgICAgICAgICJ2IjogIjMyOSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiQ1M6R08iLAogICAgICAgICAgICAgICAgInYiOiAiODkiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIkFQRVjoi7Hpm4QiLAogICAgICAgICAgICAgICAgInYiOiAiMjQwIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLmsLjliqvml6Dpl7QiLAogICAgICAgICAgICAgICAgInYiOiAiNjY2IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLnqb/otorngavnur8iLAogICAgICAgICAgICAgICAgInYiOiAiODgiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuWRvei/kOaWueiInyIsCiAgICAgICAgICAgICAgICAidiI6ICI1OTAiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIkRPVEEyIiwKICAgICAgICAgICAgICAgICJ2IjogIjkyIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLlkIPpuKHooYzliqgiLAogICAgICAgICAgICAgICAgInYiOiAiODAiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIumAg+emu+WhlOenkeWkqyIsCiAgICAgICAgICAgICAgICAidiI6ICIyNTIiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuS8oOWlhyIsCiAgICAgICAgICAgICAgICAidiI6ICI2OTUiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIkRORiIsCiAgICAgICAgICAgICAgICAidiI6ICI3OCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5Y2h5ouJ5b285LiYIiwKICAgICAgICAgICAgICAgICJ2IjogIjc4MiIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5bmV5ZCO6auY5omLIiwKICAgICAgICAgICAgICAgICJ2IjogIjc3NCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi55Sf5q2754uZ5Ye7MiIsCiAgICAgICAgICAgICAgICAidiI6ICI1NzUiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIua0m+Wlh+iLsembhOS8oCIsCiAgICAgICAgICAgICAgICAidiI6ICI1OTkiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuS4g+aXpeS4lueVjCIsCiAgICAgICAgICAgICAgICAidiI6ICI4NTciCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuacgOe7iOW5u+aDszE0IiwKICAgICAgICAgICAgICAgICJ2IjogIjEwMiIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi6YeN55Sf6L6557yYIiwKICAgICAgICAgICAgICAgICJ2IjogIjgwOSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5pif6ZmF5oiY55SyIiwKICAgICAgICAgICAgICAgICJ2IjogIjI0OSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5qKm5LiJ5Zu9IiwKICAgICAgICAgICAgICAgICJ2IjogIjcxMCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi6Iux6a2C5LmL5YiDIiwKICAgICAgICAgICAgICAgICJ2IjogIjY5MCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5YmR572RMyIsCiAgICAgICAgICAgICAgICAidiI6ICI4MiIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5LuO5YabIiwKICAgICAgICAgICAgICAgICJ2IjogIjgyOSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5YWo5rCR6KGX56+uIiwKICAgICAgICAgICAgICAgICJ2IjogIjg0NSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi6ZOB55Sy6ZuE5YW1IiwKICAgICAgICAgICAgICAgICJ2IjogIjY5MSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5paw5aSp6b6Z5YWr6YOoIiwKICAgICAgICAgICAgICAgICJ2IjogIjY1MyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi6LWb5bCU5Y+3IiwKICAgICAgICAgICAgICAgICJ2IjogIjY2NyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi6YCg5qKm6KW/5ri4IiwKICAgICAgICAgICAgICAgICJ2IjogIjY2OCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5rSb5YWL546L5Zu9IiwKICAgICAgICAgICAgICAgICJ2IjogIjY2OSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi6Zeu6YGTIiwKICAgICAgICAgICAgICAgICJ2IjogIjY3MCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi6K+b5LuZ5LiW55WMIiwKICAgICAgICAgICAgICAgICJ2IjogIjY1NCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5aSn6K+d6KW/5ri4IiwKICAgICAgICAgICAgICAgICJ2IjogIjY1MiIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5aWH6L+5TVUiLAogICAgICAgICAgICAgICAgInYiOiAiNjgzIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLmsLjmgZLkuYvloZQiLAogICAgICAgICAgICAgICAgInYiOiAiNjg0IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICJRUeS4ieWbvSIsCiAgICAgICAgICAgICAgICAidiI6ICI2ODUiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuS6uumXtOWcsOeLsSIsCiAgICAgICAgICAgICAgICAidiI6ICI2NzciCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuW9qeiZueWymyIsCiAgICAgICAgICAgICAgICAidiI6ICI2ODYiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIua0m+WlhyIsCiAgICAgICAgICAgICAgICAidiI6ICI2NjMiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIui3kei3keWNoeS4gei9piIsCiAgICAgICAgICAgICAgICAidiI6ICI2NjQiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuaYn+mZheWFrOawkSIsCiAgICAgICAgICAgICAgICAidiI6ICI2NTgiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIlNxdWFk5oiY5pyv5bCP6ZifIiwKICAgICAgICAgICAgICAgICJ2IjogIjY1OSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5Y+N5oGQ57K+6IuxT25saW5lIiwKICAgICAgICAgICAgICAgICJ2IjogIjYyOSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5Yib5LiW5oiY6L2mIiwKICAgICAgICAgICAgICAgICJ2IjogIjcwNSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi6KOF55Sy5oiY5LqJIiwKICAgICAgICAgICAgICAgICJ2IjogIjY0MiIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5a6I5pyb5YWI6ZSLIiwKICAgICAgICAgICAgICAgICJ2IjogIjg3IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLpmL/lsJTmr5TmgakiLAogICAgICAgICAgICAgICAgInYiOiAiNjM5IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLnjI7mnYDlr7nlhrMiLAogICAgICAgICAgICAgICAgInYiOiAiNjAwIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICJDRkhEIiwKICAgICAgICAgICAgICAgICJ2IjogIjQ3MiIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5q2m6KOF56qB6KKtIiwKICAgICAgICAgICAgICAgICJ2IjogIjYzNCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiMzAw6Iux6ZuEIiwKICAgICAgICAgICAgICAgICJ2IjogIjg0IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLngonnn7PkvKDor7QiLAogICAgICAgICAgICAgICAgInYiOiAiOTEiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuWJkee9kTPnvJjotbciLAogICAgICAgICAgICAgICAgInYiOiAiNDk5IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLooZflpLTnr67nkIMiLAogICAgICAgICAgICAgICAgInYiOiAiNjQ5IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLnu7zlkIjlsITlh7siLAogICAgICAgICAgICAgICAgInYiOiAiNjAxIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLliZHngbUiLAogICAgICAgICAgICAgICAgInYiOiAiNTA1IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLpu5HoibLmspnmvKAiLAogICAgICAgICAgICAgICAgInYiOiAiNjMyIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLlpKnmtq/mmI7mnIjliIAiLAogICAgICAgICAgICAgICAgInYiOiAiNTk2IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLlhpLpmanlspsiLAogICAgICAgICAgICAgICAgInYiOiAiNTc0IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLpgIbmiJgiLAogICAgICAgICAgICAgICAgInYiOiAiNDg3IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLprZTlhb3kuonpnLgzIiwKICAgICAgICAgICAgICAgICJ2IjogIjE4MSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiUVHpo57ovaYiLAogICAgICAgICAgICAgICAgInYiOiAiNjEwIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLprZTlhb3kuJbnlYwiLAogICAgICAgICAgICAgICAgInYiOiAiODMiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIk5CQTJLT0wyIiwKICAgICAgICAgICAgICAgICJ2IjogIjU4MSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5L2/5ZG95Y+s5ZSkOuaImOWMuiIsCiAgICAgICAgICAgICAgICAidiI6ICIzMTgiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuWdpuWFi+S4lueVjCIsCiAgICAgICAgICAgICAgICAidiI6ICIxMTUiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuaImOiIsOS4lueVjCIsCiAgICAgICAgICAgICAgICAidiI6ICIyNDgiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuaImOS6iembt+mchiIsCiAgICAgICAgICAgICAgICAidiI6ICIzMTYiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuaImOaEjyIsCiAgICAgICAgICAgICAgICAidiI6ICIzODMiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIumjjuaatOiLsembhCIsCiAgICAgICAgICAgICAgICAidiI6ICIxMTQiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuaYn+mZheS6iemcuDIiLAogICAgICAgICAgICAgICAgInYiOiAiOTMiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuWIgOWhlOiHqui1sOajiyIsCiAgICAgICAgICAgICAgICAidiI6ICIyMzkiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuWgoeWekuS5i+WknCIsCiAgICAgICAgICAgICAgICAidiI6ICIxNjQiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuaequelnue6qiIsCiAgICAgICAgICAgICAgICAidiI6ICIyNTEiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuS4ieWbveadgCIsCiAgICAgICAgICAgICAgICAidiI6ICI4MSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi6b6Z5LmL6LC3IiwKICAgICAgICAgICAgICAgICJ2IjogIjExMiIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5bm75oOz5YWo5piO5pifIiwKICAgICAgICAgICAgICAgICJ2IjogIjE3NiIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5oCA5pen572R5ri4IiwKICAgICAgICAgICAgICAgICJ2IjogIjI4OCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5paw5ri45YmN5567IiwKICAgICAgICAgICAgICAgICJ2IjogIjI5OCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5pif5oiY5YmN5aSc77ya5pmo5pumIiwKICAgICAgICAgICAgICAgICJ2IjogIjMzMSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5rWB5pS+5LmL6LevIiwKICAgICAgICAgICAgICAgICJ2IjogIjU1MSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiRlBT5rKZ55uSIiwKICAgICAgICAgICAgICAgICJ2IjogIjYzMyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5rC45oGS6L2u5ZueIiwKICAgICAgICAgICAgICAgICJ2IjogIjQ1OSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5r+A5oiYMiIsCiAgICAgICAgICAgICAgICAidiI6ICI2MDciCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuWFtuS7lue9kea4uCIsCiAgICAgICAgICAgICAgICAidiI6ICIxMDciCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuiTneiJsuWNj+iuriIsCiAgICAgICAgICAgICAgICAidiI6ICI3NjAiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIlRoZSBGaW5hbHMiLAogICAgICAgICAgICAgICAgInYiOiAiODQ2IgogICAgICAgICAgICB9XQogICAgICAgIH1dLAogICAgICAgICIzIjogW3sKICAgICAgICAgICAgImtleSI6ICJhcmVhIiwKICAgICAgICAgICAgIm5hbWUiOiAi5YiG5Yy6IiwKICAgICAgICAgICAgInZhbHVlIjogW3sKICAgICAgICAgICAgICAgICJuIjogIuWFqOmDqCIsCiAgICAgICAgICAgICAgICAidiI6ICIiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIueOi+iAheiNo+iAgCIsCiAgICAgICAgICAgICAgICAidiI6ICIzNSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5ZKM5bmz57K+6IuxIiwKICAgICAgICAgICAgICAgICJ2IjogIjI1NiIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5Y6f56WeIiwKICAgICAgICAgICAgICAgICJ2IjogIjMyMSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5bSp5Z2P77ya5pif56m56ZOB6YGTIiwKICAgICAgICAgICAgICAgICJ2IjogIjU0OSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi56ys5LqU5Lq65qC8IiwKICAgICAgICAgICAgICAgICJ2IjogIjE2MyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi57ud5Yy66Zu2IiwKICAgICAgICAgICAgICAgICJ2IjogIjY2MiIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiTE9M5omL5ri4IiwKICAgICAgICAgICAgICAgICJ2IjogIjM5NSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5piO5pel5pa56IifIiwKICAgICAgICAgICAgICAgICJ2IjogIjI1NSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi6buO5piO6KeJ6YaS77ya55Sf5py6IiwKICAgICAgICAgICAgICAgICJ2IjogIjQ3OSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi6JuL5LuU5rS+5a+5IiwKICAgICAgICAgICAgICAgICJ2IjogIjU3MSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5YWD5qKm5LmL5pifIiwKICAgICAgICAgICAgICAgICJ2IjogIjgyMiIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi6Zeq6ICA77yB5LyY5L+K5bCR5aWzIiwKICAgICAgICAgICAgICAgICJ2IjogIjgwNSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi55m96I2G5Zue5buKIiwKICAgICAgICAgICAgICAgICJ2IjogIjg0OSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5YWD5rCU6aqR5aOr5YmN5LygIiwKICAgICAgICAgICAgICAgICJ2IjogIjg1MCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5YWJ6ZqZ6Kej6K+tIiwKICAgICAgICAgICAgICAgICJ2IjogIjg1MyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi6ZKi5bKaIiwKICAgICAgICAgICAgICAgICJ2IjogIjg1NiIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5LyX56We5rS+5a+5IiwKICAgICAgICAgICAgICAgICJ2IjogIjg2MSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5p6B5ZOB6aOe6L2m5Zyo57q/56e75Yqo54mIIiwKICAgICAgICAgICAgICAgICJ2IjogIjg1MiIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5aWz56We5byC6Ze75b2V77ya5aSc5bmV6a2F5b2xIiwKICAgICAgICAgICAgICAgICJ2IjogIjgwMiIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5L6d6Zyy5biM5bCU77ya5pif5pmTIiwKICAgICAgICAgICAgICAgICJ2IjogIjgzOCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5pav6Zyy5b63IiwKICAgICAgICAgICAgICAgICJ2IjogIjc5NyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5Y2D5bm05LmL5peFIiwKICAgICAgICAgICAgICAgICJ2IjogIjgwNiIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi55m95aSc5p6B5YWJIiwKICAgICAgICAgICAgICAgICJ2IjogIjc4MSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi6YCG5rC05a+S5omL5ri4IiwKICAgICAgICAgICAgICAgICJ2IjogIjc3MSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi546H5Zyf5LmL5ruoIiwKICAgICAgICAgICAgICAgICJ2IjogIjgwNyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi6JCk54Gr56qB5Ye7IiwKICAgICAgICAgICAgICAgICJ2IjogIjg3MCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi57uv6Imy5Zue5ZONIiwKICAgICAgICAgICAgICAgICJ2IjogIjgzNyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5pyI5ZyG5LmL5aScIiwKICAgICAgICAgICAgICAgICJ2IjogIjIxNSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5ZOI5Yip5rOi54m577ya6a2U5rOV6KeJ6YaSIiwKICAgICAgICAgICAgICAgICJ2IjogIjQ3NCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5LiD5Lq65Lyg5aWHIiwKICAgICAgICAgICAgICAgICJ2IjogIjgyMyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5bm75aGUIiwKICAgICAgICAgICAgICAgICJ2IjogIjU1MCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5pif5LmL56C05pmTIiwKICAgICAgICAgICAgICAgICJ2IjogIjc5OSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi6YeR6ZOy6ZOy5LmL5oiYIiwKICAgICAgICAgICAgICAgICJ2IjogIjUxNCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5bCR5aWz5YmN57q/Mu+8mui/veaUviIsCiAgICAgICAgICAgICAgICAidiI6ICI4MzIiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIua3seepuuS5i+ecvCIsCiAgICAgICAgICAgICAgICAidiI6ICI1OTgiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuS6pOmUmeaImOe6vyIsCiAgICAgICAgICAgICAgICAidiI6ICI4NjQiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuaXoOacn+i/t+mAlCIsCiAgICAgICAgICAgICAgICAidiI6ICI2NzUiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIui2hei/m+WMlueJqeivrTIiLAogICAgICAgICAgICAgICAgInYiOiAiODYyIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLmmbbmoLgiLAogICAgICAgICAgICAgICAgInYiOiAiNzc3IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLmmJ/nkIPph43lkK8iLAogICAgICAgICAgICAgICAgInYiOiAiODI4IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLlhYnpgYciLAogICAgICAgICAgICAgICAgInYiOiAiNjg3IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLmoYPmupDmt7HlpITmnInkurrlrrYiLAogICAgICAgICAgICAgICAgInYiOiAiNzkyIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLkuInlm73lv5fmiJjmo4vniYgiLAogICAgICAgICAgICAgICAgInYiOiAiNzU2IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLku6Xpl6rkuq7kuYvlkI0iLAogICAgICAgICAgICAgICAgInYiOiAiNzU1IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLlsJjnmb3npoHljLoiLAogICAgICAgICAgICAgICAgInYiOiAiNzc4IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLprLzms6Mt5beF5bOw5LmL5oiYIiwKICAgICAgICAgICAgICAgICJ2IjogIjQ3MCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi6aaZ6IKg5rS+5a+5IiwKICAgICAgICAgICAgICAgICJ2IjogIjY4OSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi6auY6IO96Iux6ZuEIiwKICAgICAgICAgICAgICAgICJ2IjogIjc4MyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5L2/5ZG95Y+s5ZSk5omL5ri4IiwKICAgICAgICAgICAgICAgICJ2IjogIjM4NiIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5bSp5Z2PMyIsCiAgICAgICAgICAgICAgICAidiI6ICI0MCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi6JSa6JOd5qGj5qGIIiwKICAgICAgICAgICAgICAgICJ2IjogIjc4NyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi56ys5LiD5Y+y6K+XIiwKICAgICAgICAgICAgICAgICJ2IjogIjc4NCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5ri45oiP546L77ya5Yaz5paX6ZO+5o6lIiwKICAgICAgICAgICAgICAgICJ2IjogIjQwNyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5ri45oiP546LIiwKICAgICAgICAgICAgICAgICJ2IjogIjMwMyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiSkrmlpflnLDkuLsiLAogICAgICAgICAgICAgICAgInYiOiAiNzI0IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLpmLTpmLPluIgiLAogICAgICAgICAgICAgICAgInYiOiAiMzYiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuasouS5kOaWl+WcsOS4uyIsCiAgICAgICAgICAgICAgICAidiI6ICI3MTkiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuWkquepuuadgCIsCiAgICAgICAgICAgICAgICAidiI6ICI3OTEiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIumVv+WuieW5u+aDsyIsCiAgICAgICAgICAgICAgICAidiI6ICI3MzgiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIueBq+W9seW/jeiAheaJi+a4uCIsCiAgICAgICAgICAgICAgICAidiI6ICIyOTIiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIkZhdGUvR08iLAogICAgICAgICAgICAgICAgInYiOiAiMzciCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIue7vOWQiOaji+eJjCIsCiAgICAgICAgICAgICAgICAidiI6ICIzNTQiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIlFR6aOe6L2m5omL5ri4IiwKICAgICAgICAgICAgICAgICJ2IjogIjE1NCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5Yaz5oiY77yB5bmz5a6J5LqsIiwKICAgICAgICAgICAgICAgICJ2IjogIjE0MCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi54u85Lq65p2AIiwKICAgICAgICAgICAgICAgICJ2IjogIjQxIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLkuInlm73mnYDnp7vliqjniYgiLAogICAgICAgICAgICAgICAgInYiOiAiMzUyIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLnoqfok53oiKrnur8iLAogICAgICAgICAgICAgICAgInYiOiAiMTEzIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLlvbHkuYvor5ciLAogICAgICAgICAgICAgICAgInYiOiAiMTU2IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLmmI7ml6XkuYvlkI4iLAogICAgICAgICAgICAgICAgInYiOiAiMTg5IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLph43ov5TmnKrmnaXvvJoxOTk5IiwKICAgICAgICAgICAgICAgICJ2IjogIjc2MSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi546v6KGM5peF6IiNIiwKICAgICAgICAgICAgICAgICJ2IjogIjc4NiIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5bm75LiW5LiO5YaS6ZmpIiwKICAgICAgICAgICAgICAgICJ2IjogIjgxMyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi6YOo6JC95Yay56qBOueah+WupOaImOS6iSIsCiAgICAgICAgICAgICAgICAidiI6ICI1MCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5aWl5q+U5bKb5omL5ri4IiwKICAgICAgICAgICAgICAgICJ2IjogIjY2MSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5by55by55aCCIiwKICAgICAgICAgICAgICAgICJ2IjogIjczNCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi6ZuA5aesIiwKICAgICAgICAgICAgICAgICJ2IjogIjIxNCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5YWs5Li76L+e57uTUmU6RGl2ZSIsCiAgICAgICAgICAgICAgICAidiI6ICIzMzAiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIkRORuaJi+a4uCIsCiAgICAgICAgICAgICAgICAidiI6ICIzNDMiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIkZJRkHotrPnkIPkuJbnlYwiLAogICAgICAgICAgICAgICAgInYiOiAiNjQxIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICJCYW5HIERyZWFtIiwKICAgICAgICAgICAgICAgICJ2IjogIjI1OCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi6I2S6YeO5Lmx5paXIiwKICAgICAgICAgICAgICAgICJ2IjogIjQ2OSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAiQ0bmiYvmuLgiLAogICAgICAgICAgICAgICAgInYiOiAiMzMzIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLmiJjlj4zluJXlvKXku4AiLAogICAgICAgICAgICAgICAgInYiOiAiMjkzIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLlpKnmtq/mmI7mnIjliIDmiYvmuLgiLAogICAgICAgICAgICAgICAgInYiOiAiMzg5IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLop6Plr4bmuLjmiI8iLAogICAgICAgICAgICAgICAgInYiOiAiNDIiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuaBi+eIseWFu+aIkOa4uOaIjyIsCiAgICAgICAgICAgICAgICAidiI6ICI1NzYiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuaal+m7keegtOWdj+elnu+8muS4jeacvSIsCiAgICAgICAgICAgICAgICAidiI6ICI0OTIiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuaal+WMuueqgeWbtCIsCiAgICAgICAgICAgICAgICAidiI6ICI1MDIiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIui3kei3keWNoeS4gei9puaJi+a4uCIsCiAgICAgICAgICAgICAgICAidiI6ICIyNjUiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIumdnuS6uuWtpuWbrSIsCiAgICAgICAgICAgICAgICAidiI6ICIyMTIiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIueZvumXu+eJjCIsCiAgICAgICAgICAgICAgICAidiI6ICIyODYiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIueMq+WSjOiAgem8oOaJi+a4uCIsCiAgICAgICAgICAgICAgICAidiI6ICIyNjkiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuWdjuWFrOmqkeWGoOWJkSIsCiAgICAgICAgICAgICAgICAidiI6ICI0NDIiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuW/jeiAheW/hemhu+atuzMiLAogICAgICAgICAgICAgICAgInYiOiAiMjAzIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLmoqblubvopb/muLjmiYvmuLgiLAogICAgICAgICAgICAgICAgInYiOiAiMzQyIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLoiKrmtbfnjovng63ooYDoiKrnur8iLAogICAgICAgICAgICAgICAgInYiOiAiNTA0IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLlsJHlpbPliY3nur8iLAogICAgICAgICAgICAgICAgInYiOiAiMzkiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIjMwMOWkp+S9nOaImCIsCiAgICAgICAgICAgICAgICAidiI6ICI2ODgiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuWwkeWls+WJjee6v++8muS6keWbvuiuoeWIkiIsCiAgICAgICAgICAgICAgICAidiI6ICI1MjUiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIua8q+Wogei2hee6p+aImOS6iSIsCiAgICAgICAgICAgICAgICAidiI6ICI0NzgiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuaRqeWwlOW6hOWbreaJi+a4uCIsCiAgICAgICAgICAgICAgICAidiI6ICI0NjQiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuWuneWPr+aipuWkp+mbhue7kyIsCiAgICAgICAgICAgICAgICAidiI6ICI0OTMiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuWwj+WKqOeJqeS5i+aYnyIsCiAgICAgICAgICAgICAgICAidiI6ICI0NzMiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuWkqeWcsOWKq++8muW5veWfjuWGjeS4tCIsCiAgICAgICAgICAgICAgICAidiI6ICI0NDgiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIua8q+WogeWvueWGsyIsCiAgICAgICAgICAgICAgICAidiI6ICI1MTEiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuS4nOaWueW9kuiogOW9lSIsCiAgICAgICAgICAgICAgICAidiI6ICI1MzgiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuaipuW5u+aooeaLn+aImCIsCiAgICAgICAgICAgICAgICAidiI6ICIxNzgiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuaXtuepuueMjuS6ujMiLAogICAgICAgICAgICAgICAgInYiOiAiNjQzIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLkuInlm73vvJrosIvlrprlpKnkuIsiLAogICAgICAgICAgICAgICAgInYiOiAiODcxIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLph43ov5TluJ3lm70iLAogICAgICAgICAgICAgICAgInYiOiAiNjEzIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLkvJHpl7LlsI/muLjmiI8iLAogICAgICAgICAgICAgICAgInYiOiAiNjc5IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLlhbbku5bmiYvmuLgiLAogICAgICAgICAgICAgICAgInYiOiAiOTgiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuWxsea1t+mVnOiKsSIsCiAgICAgICAgICAgICAgICAidiI6ICI4MjEiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuWwj+WGsOWGsOS8oOWlhyIsCiAgICAgICAgICAgICAgICAidiI6ICI4MjQiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuWGkumZqeWym+aJi+a4uCIsCiAgICAgICAgICAgICAgICAidiI6ICI3OTYiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuaWsOa4uOivhOa1iyIsCiAgICAgICAgICAgICAgICAidiI6ICIyNzQiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuWvueWzmTIiLAogICAgICAgICAgICAgICAgInYiOiAiODYzIgogICAgICAgICAgICB9XQogICAgICAgIH1dLAogICAgICAgICI1IjogW3sKICAgICAgICAgICAgImtleSI6ICJhcmVhIiwKICAgICAgICAgICAgIm5hbWUiOiAi5YiG5Yy6IiwKICAgICAgICAgICAgInZhbHVlIjogW3sKICAgICAgICAgICAgICAgICJuIjogIuWFqOmDqCIsCiAgICAgICAgICAgICAgICAidiI6ICIiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuWUseingeeUteWPsCIsCiAgICAgICAgICAgICAgICAidiI6ICIxOTAiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuiBiuWkqeeUteWPsCIsCiAgICAgICAgICAgICAgICAidiI6ICIxOTIiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIueUt+WjsOeUteWPsCIsCiAgICAgICAgICAgICAgICAidiI6ICI4MTciCiAgICAgICAgICAgIH1dCiAgICAgICAgfV0sCiAgICAgICAgIjYiOiBbewogICAgICAgICAgICAia2V5IjogImFyZWEiLAogICAgICAgICAgICAibmFtZSI6ICLliIbljLoiLAogICAgICAgICAgICAidmFsdWUiOiBbewogICAgICAgICAgICAgICAgIm4iOiAi5YWo6YOoIiwKICAgICAgICAgICAgICAgICJ2IjogIiIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5Li75py65ri45oiPIiwKICAgICAgICAgICAgICAgICJ2IjogIjIzNiIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5YW25LuW5Y2V5py6IiwKICAgICAgICAgICAgICAgICJ2IjogIjIzNSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi54us56uL5ri45oiPIiwKICAgICAgICAgICAgICAgICJ2IjogIjI4MyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5oCA5pen5ri45oiPIiwKICAgICAgICAgICAgICAgICJ2IjogIjIzNyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5oGQ5oCW5ri45oiPIiwKICAgICAgICAgICAgICAgICJ2IjogIjI3NiIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5bm75YW95biV6bKBIiwKICAgICAgICAgICAgICAgICJ2IjogIjg2NiIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi54yb5YW95rS+5a+5IiwKICAgICAgICAgICAgICAgICJ2IjogIjM4NCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5ZG96L+QMiIsCiAgICAgICAgICAgICAgICAidiI6ICIyNzciCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIkZPUlpBIOaegemZkOernumAnyIsCiAgICAgICAgICAgICAgICAidiI6ICIzMDIiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuWNoeeJjOa9rueOqSIsCiAgICAgICAgICAgICAgICAidiI6ICI4NTQiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuaIkeeahOS4lueVjCIsCiAgICAgICAgICAgICAgICAidiI6ICIyMTYiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIumTgeaLszgiLAogICAgICAgICAgICAgICAgInYiOiAiODY3IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLlhajlooPlsIHplIEyIiwKICAgICAgICAgICAgICAgICJ2IjogIjI0MyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi6Zu+6ZSB546L5Zu9IiwKICAgICAgICAgICAgICAgICJ2IjogIjg2OSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5qSN54mp5aSn5oiY5YO15bC4IiwKICAgICAgICAgICAgICAgICJ2IjogIjMwOSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5pqW6ZuqIiwKICAgICAgICAgICAgICAgICJ2IjogIjU4MiIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi6ZuA6a2C6bq75bCGIiwKICAgICAgICAgICAgICAgICJ2IjogIjgwMyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5oCq54mp54yO5Lq6IiwKICAgICAgICAgICAgICAgICJ2IjogIjU3OCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5L2/5ZG95Y+s5ZSkMjAiLAogICAgICAgICAgICAgICAgInYiOiAiMjgyIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLnlJ/ljJbljbHmnLoiLAogICAgICAgICAgICAgICAgInYiOiAiNzIxIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLmiJjlnLDpo47kupEiLAogICAgICAgICAgICAgICAgInYiOiAiNTk3IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLmoLzmlpfmuLjmiI8iLAogICAgICAgICAgICAgICAgInYiOiAiNDMzIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLnsr7ngbXlrp3lj6/moqYiLAogICAgICAgICAgICAgICAgInYiOiAiMjI4IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLnoqfok53lubvmg7NHQlIiLAogICAgICAgICAgICAgICAgInYiOiAiODU5IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLnuqLoibLorabmiJIyIiwKICAgICAgICAgICAgICAgICJ2IjogIjY5MyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi562W55Wl5ri45oiPIiwKICAgICAgICAgICAgICAgICJ2IjogIjU3MCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi6Im+5bCU55m75rOV546vIiwKICAgICAgICAgICAgICAgICJ2IjogIjU1NSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5pqX6buR56C05Z2P56We4oWjIiwKICAgICAgICAgICAgICAgICJ2IjogIjc4MCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5Li65LqG5ZC+546LSUkiLAogICAgICAgICAgICAgICAgInYiOiAiNzY5IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLlrp3lj6/moqbpm4bmjaLlvI/ljaHniYzmuLjmiI8iLAogICAgICAgICAgICAgICAgInYiOiAiNzIwIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLppaXojZIiLAogICAgICAgICAgICAgICAgInYiOiAiMjE4IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLojZLph47lpKfplZblrqIyIiwKICAgICAgICAgICAgICAgICJ2IjogIjIyNiIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5aGe5bCU6L6+5Lyg6K+0IiwKICAgICAgICAgICAgICAgICJ2IjogIjMwOCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5pa56IifIiwKICAgICAgICAgICAgICAgICJ2IjogIjI5NSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5bid5Zu95pe25LujNCIsCiAgICAgICAgICAgICAgICAidiI6ICI1NDgiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuS9k+iCsua4uOaIjyIsCiAgICAgICAgICAgICAgICAidiI6ICI1MDAiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIkRhcmsgYW5kIERhcmtlciIsCiAgICAgICAgICAgICAgICAidiI6ICI3OTUiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuS7geeOizIiLAogICAgICAgICAgICAgICAgInYiOiAiMzEzIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLlj6rni7wiLAogICAgICAgICAgICAgICAgInYiOiAiMjQ1IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLmmpfpu5HnoLTlnY/npZ4iLAogICAgICAgICAgICAgICAgInYiOiAiNTM1IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICJGQzI0IiwKICAgICAgICAgICAgICAgICJ2IjogIjgzMCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5Lul5pKSIiwKICAgICAgICAgICAgICAgICJ2IjogIjIxOSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5rOw5ouJ55Ge5LqaIiwKICAgICAgICAgICAgICAgICJ2IjogIjU5MyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi6aqR6ams5LiO56CN5p2AIiwKICAgICAgICAgICAgICAgICJ2IjogIjMyNiIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5pav5pmu5ouJ6YGBMyIsCiAgICAgICAgICAgICAgICAidiI6ICI2OTQiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuWIuuWuouS/oeadoSIsCiAgICAgICAgICAgICAgICAidiI6ICIyMjciCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIkRyZWFkIEh1bmdlciIsCiAgICAgICAgICAgICAgICAidiI6ICI1OTEiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuaBi+eIseaooeaLn+a4uOaIjyIsCiAgICAgICAgICAgICAgICAidiI6ICI1OTIiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIk5CQTJLIiwKICAgICAgICAgICAgICAgICJ2IjogIjM2MiIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5ri45oiP6YCf6YCaIiwKICAgICAgICAgICAgICAgICJ2IjogIjY3OCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5Y2a5b635LmL6ZeoMyIsCiAgICAgICAgICAgICAgICAidiI6ICIzODUiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuWFqOmdouaImOS6ie+8muaImOmUpDMiLAogICAgICAgICAgICAgICAgInYiOiAiNTk0IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLlj4zkurrmiJDooYwiLAogICAgICAgICAgICAgICAgInYiOiAiNDQ2IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLotZvljZrmnIvlhYsyMDc3IiwKICAgICAgICAgICAgICAgICJ2IjogIjQwMiIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi57OW6LGG5Lq6IiwKICAgICAgICAgICAgICAgICJ2IjogIjM1NyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi6IGa5Lya5ri45oiPIiwKICAgICAgICAgICAgICAgICJ2IjogIjYzNiIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5YWo6Z2i5oiY5LqJIiwKICAgICAgICAgICAgICAgICJ2IjogIjI1NyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5b635bee55S16ZSvIiwKICAgICAgICAgICAgICAgICJ2IjogIjgzNCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi6YeN55Sf57uG6IOeIiwKICAgICAgICAgICAgICAgICJ2IjogIjQyNiIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi6L6Q5bCENzYiLAogICAgICAgICAgICAgICAgInYiOiAiMjIwIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLmiJjnpZ4iLAogICAgICAgICAgICAgICAgInYiOiAiNTc5IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLljLnor7rmm7nnmoTosI7oqIAiLAogICAgICAgICAgICAgICAgInYiOiAiODEyIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLprLzms6M1IiwKICAgICAgICAgICAgICAgICJ2IjogIjI0NCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5oGQ6ay855eHIiwKICAgICAgICAgICAgICAgICJ2IjogIjM4NyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5raI6YCd55qE5YWJ6IqSMiIsCiAgICAgICAgICAgICAgICAidiI6ICI1ODYiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIlJvYmxveCIsCiAgICAgICAgICAgICAgICAidiI6ICI3NTMiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuaXoOS4u+S5i+WcsDMiLAogICAgICAgICAgICAgICAgInYiOiAiMjczIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLovrnlooMiLAogICAgICAgICAgICAgICAgInYiOiAiNzYzIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLntKLlsLzlhYtTdXBlclN0YXIiLAogICAgICAgICAgICAgICAgInYiOiAiODQ0IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLog6Hpl7nljqjmiL8iLAogICAgICAgICAgICAgICAgInYiOiAiNTA3IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLnm5fotLzkuYvmtbciLAogICAgICAgICAgICAgICAgInYiOiAiMzQxIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICJLQVJEUyIsCiAgICAgICAgICAgICAgICAidiI6ICI4MzUiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuaUtuiOt+aXpTMiLAogICAgICAgICAgICAgICAgInYiOiAiODExIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLoh7Tlkb3lhazlj7giLAogICAgICAgICAgICAgICAgInYiOiAiODU4IgogICAgICAgICAgICB9XQogICAgICAgIH1dLAogICAgICAgICI5IjogW3sKICAgICAgICAgICAgImtleSI6ICJhcmVhIiwKICAgICAgICAgICAgIm5hbWUiOiAi5YiG5Yy6IiwKICAgICAgICAgICAgInZhbHVlIjogW3sKICAgICAgICAgICAgICAgICJuIjogIuWFqOmDqCIsCiAgICAgICAgICAgICAgICAidiI6ICIiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuiZmuaLn1NpbmdlciIsCiAgICAgICAgICAgICAgICAidiI6ICI3NDQiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuiZmuaLn0dhbWVyIiwKICAgICAgICAgICAgICAgICJ2IjogIjc0NSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi6Jma5ouf5aOw5LyYIiwKICAgICAgICAgICAgICAgICJ2IjogIjc0NiIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi6Jma5ouf55S3ViIsCiAgICAgICAgICAgICAgICAidiI6ICI4NTEiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuiZmuaLn+aXpeW4uCIsCiAgICAgICAgICAgICAgICAidiI6ICIzNzEiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuiZmuaLn0FQRVgiLAogICAgICAgICAgICAgICAgInYiOiAiNzg5IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICAibiI6ICLomZrmi59QSyIsCiAgICAgICAgICAgICAgICAidiI6ICI3NzUiCiAgICAgICAgICAgIH1dCiAgICAgICAgfV0sCiAgICAgICAgIjEwIjogW3sKICAgICAgICAgICAgImtleSI6ICJhcmVhIiwKICAgICAgICAgICAgIm5hbWUiOiAi5YiG5Yy6IiwKICAgICAgICAgICAgInZhbHVlIjogW3sKICAgICAgICAgICAgICAgICJuIjogIuWFqOmDqCIsCiAgICAgICAgICAgICAgICAidiI6ICIiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIueUteWtkOamqOiPnCIsCiAgICAgICAgICAgICAgICAidiI6ICI2MjQiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIueUn+a0u+WIhuS6qyIsCiAgICAgICAgICAgICAgICAidiI6ICI2NDYiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuiBiuWkqeS6pOWPiyIsCiAgICAgICAgICAgICAgICAidiI6ICI4MjUiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuaJi+W3pee7mOeUuyIsCiAgICAgICAgICAgICAgICAidiI6ICI2MjciCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuaDheaEnyIsCiAgICAgICAgICAgICAgICAidiI6ICI2MjMiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuaIt+WkliIsCiAgICAgICAgICAgICAgICAidiI6ICIzNjgiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuiQjOWuoCIsCiAgICAgICAgICAgICAgICAidiI6ICIzNjkiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIui/kOWKqCIsCiAgICAgICAgICAgICAgICAidiI6ICI2MjgiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIue+jumjnyIsCiAgICAgICAgICAgICAgICAidiI6ICIzNjciCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuaXtuWwmiIsCiAgICAgICAgICAgICAgICAidiI6ICIzNzgiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuayiea1uOS9k+mqjCIsCiAgICAgICAgICAgICAgICAidiI6ICI4MjciCiAgICAgICAgICAgIH1dCiAgICAgICAgfV0sCiAgICAgICAgIjExIjogW3sKICAgICAgICAgICAgImtleSI6ICJhcmVhIiwKICAgICAgICAgICAgIm5hbWUiOiAi5YiG5Yy6IiwKICAgICAgICAgICAgInZhbHVlIjogW3sKICAgICAgICAgICAgICAgICJuIjogIuWFqOmDqCIsCiAgICAgICAgICAgICAgICAidiI6ICIiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuekvuenkeazleW+i+W/g+eQhiIsCiAgICAgICAgICAgICAgICAidiI6ICIzNzYiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuS6uuaWh+WOhuWPsiIsCiAgICAgICAgICAgICAgICAidiI6ICI3MDIiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuagoeWbreWtpuS5oCIsCiAgICAgICAgICAgICAgICAidiI6ICIzNzIiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuiBjOWcusK35oqA6IO9IiwKICAgICAgICAgICAgICAgICJ2IjogIjM3NyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi56eR5oqAIiwKICAgICAgICAgICAgICAgICJ2IjogIjM3NSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi56eR5a2m56eR5pmuIiwKICAgICAgICAgICAgICAgICJ2IjogIjcwMSIKICAgICAgICAgICAgfV0KICAgICAgICB9XSwKICAgICAgICAiMTMiOiBbewogICAgICAgICAgICAia2V5IjogImFyZWEiLAogICAgICAgICAgICAibmFtZSI6ICLliIbljLoiLAogICAgICAgICAgICAidmFsdWUiOiBbewogICAgICAgICAgICAgICAgIm4iOiAi5YWo6YOoIiwKICAgICAgICAgICAgICAgICJ2IjogIiIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5ri45oiP6LWb5LqLIiwKICAgICAgICAgICAgICAgICJ2IjogIjU2MSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5L2T6IKy6LWb5LqLIiwKICAgICAgICAgICAgICAgICJ2IjogIjU2MiIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi6LWb5LqL57u85ZCIIiwKICAgICAgICAgICAgICAgICJ2IjogIjU2MyIKICAgICAgICAgICAgfV0KICAgICAgICB9XSwKICAgICAgICAiMTQiOiBbewogICAgICAgICAgICAia2V5IjogImFyZWEiLAogICAgICAgICAgICAibmFtZSI6ICLliIbljLoiLAogICAgICAgICAgICAidmFsdWUiOiBbewogICAgICAgICAgICAgICAgIm4iOiAi5YWo6YOoIiwKICAgICAgICAgICAgICAgICJ2IjogIiIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5Lqk5Y+LIiwKICAgICAgICAgICAgICAgICJ2IjogIjgxOCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi54K55ZSxIiwKICAgICAgICAgICAgICAgICJ2IjogIjgxOSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5YW06LajIiwKICAgICAgICAgICAgICAgICJ2IjogIjgyMCIKICAgICAgICAgICAgfV0KICAgICAgICB9XSwKICAgICAgICAiMTUiOiBbewogICAgICAgICAgICAia2V5IjogImFyZWEiLAogICAgICAgICAgICAibmFtZSI6ICLliIbljLoiLAogICAgICAgICAgICAidmFsdWUiOiBbewogICAgICAgICAgICAgICAgIm4iOiAi5YWo6YOoIiwKICAgICAgICAgICAgICAgICJ2IjogIiIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi56ue5oqA546p5rOVIiwKICAgICAgICAgICAgICAgICJ2IjogIjgxNSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5YW75oiQ546p5rOVIiwKICAgICAgICAgICAgICAgICJ2IjogIjg0MCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5qOL54mM546p5rOVIiwKICAgICAgICAgICAgICAgICJ2IjogIjg0MSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5LyR6Zey546p5rOVIiwKICAgICAgICAgICAgICAgICJ2IjogIjgxNiIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgIm4iOiAi5pCe56yR5pW06JuKIiwKICAgICAgICAgICAgICAgICJ2IjogIjg0MiIKICAgICAgICAgICAgfV0KICAgICAgICB9XSwKICAgICAgICAiMzAxIjogW3sKICAgICAgICAgICAgImtleSI6ICJhcmVhIiwKICAgICAgICAgICAgIm5hbWUiOiAi5YiG5Yy6IiwKICAgICAgICAgICAgInZhbHVlIjogW3sKICAgICAgICAgICAgICAgICJuIjogIuWFqOmDqCIsCiAgICAgICAgICAgICAgICAidiI6ICIiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIueDremXqOW4rueOqSIsCiAgICAgICAgICAgICAgICAidiI6ICIzMDEwMDAiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuaJi+a4uOW4rueOqSIsCiAgICAgICAgICAgICAgICAidiI6ICIzMDEwMDIiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIue9kea4uOW4rueOqSIsCiAgICAgICAgICAgICAgICAidiI6ICIzMDEwMDMiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgICJuIjogIuWNleacuuW4rueOqSIsCiAgICAgICAgICAgICAgICAidiI6ICIzMDEwMDQiCiAgICAgICAgICAgIH1dCiAgICAgICAgfV0KICAgIH0sCiAgICBkZXRhaWxVcmw6ICdodHRwczovL2xpdmUuYmlsaWJpbGkuY29tL2Z5aWQnLCAvL+S6jOe6p+ivpuaDheaLvOaOpemTvuaOpShqc29u5qC85byP55SoKQogICAgLy8gZGV0YWlsVXJsOidodHRwczovL2FwaS5saXZlLmJpbGliaWxpLmNvbS94bGl2ZS93ZWItcm9vbS92MS9wbGF5VXJsL3BsYXlVcmw/Y2lkPWZ5aWQmcGxhdGZvcm09aDUmb3R5cGU9anNvbiZxdWFsaXR5PTAnLC8v5LqM57qn6K+m5oOF5ou85o6l6ZO+5o6lKGpzb27moLzlvI/nlKgpCiAgICAvLyBzZWFyY2hVcmw6Jy94L3dlYi1pbnRlcmZhY2Uvc2VhcmNoL3R5cGU/X19yZWZyZXNoX189dHJ1ZSZwYWdlPWZ5cGFnZSZwYWdlX3NpemU9NDImb3JkZXI9b25saW5lJnBsYXRmb3JtPXBjJmhpZ2hsaWdodD0xJnNpbmdsZV9jb2x1bW49MCZrZXl3b3JkPSoqJnNlYXJjaF90eXBlPWxpdmUmZHluYW1pY19vZmZzZXQ9MCZwcmVsb2FkPXRydWUnLAogICAgc2VhcmNoVXJsOiAnaHR0cHM6Ly9hcGkuYmlsaWJpbGkuY29tL3gvd2ViLWludGVyZmFjZS9zZWFyY2gvdHlwZT9zZWFyY2hfdHlwZT1saXZlJmtleXdvcmQ9KiomcGFnZT1meXBhZ2UnLAogICAgc2VhcmNoYWJsZTogMiwKICAgIHF1aWNrU2VhcmNoOiAwLAogICAgaGVhZGVyczogewogICAgICAgICJVc2VyLUFnZW50IjogIlBDX1VBIiwKICAgICAgICAiUmVmZXJlciI6ICJodHRwczovL3d3dy5iaWxpYmlsaS5jb20iLAogICAgICAgIC8vICJDb29raWUiOiIkYmlsaV9jb29raWUiCiAgICAgICAgIkNvb2tpZSI6ICJodHRwOi8vMTI3LjAuMC4xOjk5NzgvZmlsZS9UVkJveC9iaWxpYmlsaS50eHQiCiAgICB9LAogICAgdGltZW91dDogNTAwMCwKICAgIGxpbWl0OiA4LAogICAgcGxheV9wYXJzZTogdHJ1ZSwKICAgIC8vIHBsYXlfanNvbjpbe3JlOicqJywganNvbjp7ang6MCwgcGFyc2U6MSxoZWFkZXI6SlNPTi5zdHJpbmdpZnkoeyJ1c2VyLWFnZW50IjoiTW96aWxsYS81LjAgKExpbnV4OyBVOyBBbmRyb2lkIDk7IHpoLUNOOyBNSSA5IEJ1aWxkL1BLUTEuMTgxMTIxLjAwMSkgQXBwbGVXZWJLaXQvNTM3LjM2IChLSFRNTCwgbGlrZSBHZWNrbykgVmVyc2lvbi80LjAgQ2hyb21lLzU3LjAuMjk4Ny4xMDggVUNCcm93c2VyLzEyLjUuNS4xMDM1IE1vYmlsZSBTYWZhcmkvNTM3LjM2In0pfX1dLAogICAgLy8gcGxheV9qc29uOlt7cmU6JyonLCBqc29uOntqeDowLCBwYXJzZToxLGhlYWRlcjpKU09OLnN0cmluZ2lmeSh7InVzZXItYWdlbnQiOiJ1Y191YSJ9KX19XSwKICAgIC8vIHBsYXlfanNvbjowLAogICAgbGF6eTogYGpzOgogICAgICAgIGxldCBpZHMgPSBpbnB1dC5zcGxpdCgnXycpOwogICAgICAgIGxldCBkYW4gPSAnaHR0cHM6Ly9hcGkuYmlsaWJpbGkuY29tL3gvdjEvZG0vbGlzdC5zbz9vaWQ9JyArIGlkc1sxXTsKICAgICAgICBsZXQgcmVzdWx0ID0ge307CiAgICAgICAgbGV0IGl1cmwgPSAnaHR0cHM6Ly9hcGkubGl2ZS5iaWxpYmlsaS5jb20vcm9vbS92MS9Sb29tL3BsYXlVcmw/Y2lkPScgKyBpZHNbMV0gKyAnJicgKyBpZHNbMF07CiAgICAgICAgbGV0IGh0bWwgPSByZXF1ZXN0KGl1cmwpOwogICAgICAgIGxldCBqUm9vdCA9IEpTT04ucGFyc2UoaHRtbCk7CiAgICAgICAgbGV0IGpvID0galJvb3RbJ2RhdGEnXTsKICAgICAgICBsZXQgamEgPSBqb1snZHVybCddOwogICAgICAgIGxldCBwdXJsID0gJyc7CiAgICAgICAgaWYgKGphLmxlbmd0aCA+IDApIHsKICAgICAgICAgICAgcHVybCA9IGphWzBdWyd1cmwnXQogICAgICAgIH0KICAgICAgICByZXN1bHRbJ3BhcnNlJ10gPSAwOwogICAgICAgIHJlc3VsdFsncGxheVVybCddID0gJyc7CiAgICAgICAgcmVzdWx0Wyd1cmwnXSA9IHVuZXNjYXBlKHB1cmwpOwogICAgICAgIHJlc3VsdFsnaGVhZGVyJ10gPSB7CiAgICAgICAgICAgIFJlZmVyZXI6ICdodHRwczovL2xpdmUuYmlsaWJpbGkuY29tJywKICAgICAgICAgICAgJ1VzZXItQWdlbnQnOiAnTW96aWxsYS81LjAgKFdpbmRvd3MgTlQgMTAuMDsgV2luNjQ7IHg2NCkgQXBwbGVXZWJLaXQvNTM3LjM2IChLSFRNTCwgbGlrZSBHZWNrbykgQ2hyb21lLzg2LjAuNDI0MC4xOTggU2FmYXJpLzUzNy4zNicKICAgICAgICB9OwogICAgICAgIHJlc3VsdFsnZGFubWFrdSddID0gZGFuOwogICAgICAgIGlmICgvaDUvLnRlc3QoaWRzWzBdKSkgewogICAgICAgICAgICByZXN1bHRbJ2NvbnRlbnRUeXBlJ10gPSAnJzsKICAgICAgICAgICAgaW5wdXQgPSByZXN1bHQKICAgICAgICB9IGVsc2UgewogICAgICAgICAgICByZXN1bHRbJ2NvbnRlbnRUeXBlJ10gPSAndmlkZW8veC1mbHYnOwogICAgICAgICAgICBpbnB1dCA9IHJlc3VsdAogICAgICAgIH0KICAgIGAsCiAgICBkb3VibGU6IGZhbHNlLAogICAg5o6o6I2QOiAnKicsCiAgICAvLyDkuIDnuqc6J2pzb246ZGF0YS5saXN0O3RpdGxlO3N5c3RlbV9jb3Zlcjt1bmFtZTtyb29taWQnLAogICAg5LiA57qnOiBganM6CiAgICAgICAgdmFyIGQgPSBbXTsKICAgICAgICBsZXQgaHRtbCA9IHJlcXVlc3QoaW5wdXQpOwogICAgICAgIGh0bWwgPSBKU09OLnBhcnNlKGh0bWwpLmRhdGEubGlzdDsKICAgICAgICBodG1sLmZvckVhY2goaXQgPT4gewogICAgICAgICAgICBsZXQgcGljID0gaXQuc3lzdGVtX2NvdmVyOwogICAgICAgICAgICBpZiAocGljLnN0YXJ0c1dpdGgoJy8nKSkgewogICAgICAgICAgICAgICAgcGljID0gdXJsam9pbjIoaW5wdXQsIHBpYykKICAgICAgICAgICAgfQogICAgICAgICAgICBkLnB1c2goewogICAgICAgICAgICAgICAgdGl0bGU6IGl0LnRpdGxlLAogICAgICAgICAgICAgICAgaW1nOiBwaWMsCiAgICAgICAgICAgICAgICBkZXNjOiAn8J+RgScgKyBpdC53YXRjaGVkX3Nob3cudGV4dF9zbWFsbCArICcgIPCfhpknICsgaXQudW5hbWUsCiAgICAgICAgICAgICAgICB1cmw6IGl0LnJvb21pZAogICAgICAgICAgICB9KQogICAgICAgIH0pOwogICAgICAgIHNldFJlc3VsdChkKTsKICAgIGAsCiAgICAvLyDkuoznuqc6JyonLAogICAg5LqM57qnOiAianM6bGV0IGFpZD1pbnB1dC5tYXRjaCgvXFwvKFxcZCspLylbMV07bG9nKGFpZCk7bGV0IGh0bWw9cmVxdWVzdCgnaHR0cHM6Ly9hcGkubGl2ZS5iaWxpYmlsaS5jb20vcm9vbS92MS9Sb29tL2dldF9pbmZvP3Jvb21faWQ9JythaWQpO2xldCBqbz1KU09OLnBhcnNlKGh0bWwpLmRhdGE7bGV0IHRpdGxlPWpvWyd0aXRsZSddO2xldCBwaWM9am9bJ2tleWZyYW1lJ107bGV0IGRlc2M9am9bJ2Rlc2NyaXB0aW9uJ107bGV0IGRpcmU9am9bJ3VpZCddO2xldCB0eXBlTmFtZT1qb1snYXJlYV9uYW1lJ107bGV0IHJlbWFyaz0n5Zyo57q/5Lq65pWwOicram9bJ29ubGluZSddO2xldCB2b2Q9e3ZvZF9pZDphaWQsdm9kX25hbWU6dGl0bGUsdm9kX3BpYzpwaWMsdHlwZV9uYW1lOnR5cGVOYW1lLHZvZF9hcmVhOidiaWxpbGl2ZWRhbm11Jyx2b2RfcmVtYXJrczpyZW1hcmssdm9kX2FjdG9yOifnm7Tmkq3pl7RpZC0nK2FpZCx2b2RfZGlyZWN0b3I6ZGlyZSx2b2RfY29udGVudDpkZXNjfTt2b2RbJ3ZvZF9wbGF5X2Zyb20nXT0nQuermSc7dm9kWyd2b2RfcGxheV91cmwnXT0nZmx257q/6Lev5Y6f55S7JHBsYXRmb3JtPXdlYiZxdWFsaXR5PTRfJythaWQrJyNmbHbnur/ot6/pq5jmuIUkcGxhdGZvcm09d2ViJnF1YWxpdHk9M18nK2FpZCsnI2g157q/6Lev5Y6f55S7JHBsYXRmb3JtPWg1JnF1YWxpdHk9NF8nK2FpZCsnI2g157q/6Lev6auY5riFJHBsYXRmb3JtPWg1JnF1YWxpdHk9M18nK2FpZDtWT0Q9dm9kOyIsCiAgICAvLyDmkJzntKI6J2pzb246ZGF0YS5yZXN1bHQubGl2ZV9yb29tO3RpdGxlO2NvdmVyO3VuYW1lO3Jvb21pZCcsCiAgICDmkJzntKI6IGBqczpsZXQgaHRtbD1yZXF1ZXN0KGlucHV0KTtsZXQgbXNnPUpTT04ucGFyc2UoaHRtbCkubWVzc2FnZTtpZihtc2chPT0iMCIpe1ZPRFM9W3t2b2RfbmFtZTpLRVkrIuKeoiIrbXNnLHZvZF9pZDoibm9fZGF0YSIsdm9kX3JlbWFya3M6IuWIq+eCuSznvLrlsJFiaWxpX2Nvb2tpZSIsdm9kX3BpYzoiaHR0cHM6Ly9naHByb3h5Lm5ldC9odHRwczovL3Jhdy5naXRodWJ1c2VyY29udGVudC5jb20vaGpkaG54L2RyX3B5L21haW4vNDA0LmpwZyJ9XX1lbHNle2xldCB2aWRlb3M9W107bGV0IHZvZExpc3Q9SlNPTi5wYXJzZShodG1sKS5kYXRhLnJlc3VsdC5saXZlX3Jvb207dm9kTGlzdC5mb3JFYWNoKGZ1bmN0aW9uKHZvZCl7bGV0IGFpZD12b2RbInJvb21pZCJdO2xldCB0aXRsZT0i55u05pKt6Ze077yaIit2b2RbInRpdGxlIl0ucmVwbGFjZShcJzxlbSBjbGFzcz0ia2V5d29yZCI+XCcsIiIpLnJlcGxhY2UoIjwvZW0+IiwiIik7bGV0IGltZz0iaHR0cHM6Iit2b2RbInVzZXJfY292ZXIiXTtsZXQgcmVtYXJrPXZvZFsid2F0Y2hlZF9zaG93Il1bInRleHRfc21hbGwiXSsiICAiK3ZvZFsidW5hbWUiXTt2aWRlb3MucHVzaCh7dm9kX2lkOmFpZCx2b2RfbmFtZTp0aXRsZSx2b2RfcGljOmltZyx2b2RfcmVtYXJrczpyZW1hcmt9KX0pO1ZPRFM9dmlkZW9zfWAsCiAgICAvLyDpooTlpITnkIY6J2lmKHJ1bGVfZmV0Y2hfcGFyYW1zLmhlYWRlcnMuQ29va2llLnN0YXJ0c1dpdGgoImh0dHAiKSl7cnVsZV9mZXRjaF9wYXJhbXMuaGVhZGVycy5Db29raWU9ZmV0Y2gocnVsZV9mZXRjaF9wYXJhbXMuaGVhZGVycy5Db29raWUpO3NldEl0ZW0oUlVMRV9DSyxjb29raWUpfTtsb2cocnVsZV9mZXRjaF9wYXJhbXMuaGVhZGVycy5Db29raWUpJywKfQ== \ No newline at end of file diff --git a/潇洒/webcast/js/DYZB.js b/潇洒/webcast/js/DYZB.js new file mode 100644 index 00000000..4dcc960e --- /dev/null +++ b/潇洒/webcast/js/DYZB.js @@ -0,0 +1 @@ +dmFyIHJ1bGUgPSB7CiAgICB0aXRsZTogIuaWl+mxvOebtOaSrSIsCiAgICBob3N0OiAiaHR0cHM6Ly9tLmRvdXl1LmNvbSIsCiAgICBob21lVXJsOiAiL2FwaS9ob21lL21peCIsCiAgICB1cmw6ICIvYXBpL3Jvb20vbGlzdD9wYWdlPWZ5cGFnZSZ0eXBlPWZ5ZmlsdGVyIiwKICAgIGZpbHRlcmFibGU6IDEsCiAgICBmaWx0ZXJfdXJsOiAie3tmbC5jYXRlSWR9fSIsCiAgICBmaWx0ZXI6IHsKICAgICAgICB5bDogW3sKICAgICAgICAgICAga2V5OiAiY2F0ZUlkIiwKICAgICAgICAgICAgbmFtZTogIuWIhuexuyIsCiAgICAgICAgICAgIHZhbHVlOiBbewogICAgICAgICAgICAgICAgbjogIuWOn+WIm0lQIiwKICAgICAgICAgICAgICAgIHY6ICJpcCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuS4gOi1t+eciyIsCiAgICAgICAgICAgICAgICB2OiAieXFrIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi5LqM5qyh5YWDIiwKICAgICAgICAgICAgICAgIHY6ICJlY3kiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLpn7PkuZAiLAogICAgICAgICAgICAgICAgdjogIm11c2ljIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi5oi35aSWIiwKICAgICAgICAgICAgICAgIHY6ICJIVyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIue+jumjnyIsCiAgICAgICAgICAgICAgICB2OiAibXMiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLlv4PliqjmtL7lr7kiLAogICAgICAgICAgICAgICAgdjogInhkcGQiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLpn7PpgYfmgYvkuroiLAogICAgICAgICAgICAgICAgdjogInlpbnl1IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi5pif56eAIiwKICAgICAgICAgICAgICAgIHY6ICJ4aW5neGl1IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi5b+D5YqoRk0iLAogICAgICAgICAgICAgICAgdjogImR0eHMiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLlqLHkuZDmjqjojZAiLAogICAgICAgICAgICAgICAgdjogInlsdGoiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLmlrDpgIkiLAogICAgICAgICAgICAgICAgdjogInhpbnh1YW4iCiAgICAgICAgICAgIH1dCiAgICAgICAgfV0sCiAgICAgICAgUENnYW1lOiBbewogICAgICAgICAgICBrZXk6ICJjYXRlSWQiLAogICAgICAgICAgICBuYW1lOiAi5YiG57G7IiwKICAgICAgICAgICAgdmFsdWU6IFt7CiAgICAgICAgICAgICAgICBuOiAi6Iux6ZuE6IGU55ufIiwKICAgICAgICAgICAgICAgIHY6ICJMT0wiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLng63pl6jmuLjmiI8iLAogICAgICAgICAgICAgICAgdjogInJteXgiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLnqb/otorngavnur8iLAogICAgICAgICAgICAgICAgdjogIkNGIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi6YeN55Sf6L6557yYIiwKICAgICAgICAgICAgICAgIHY6ICJDU0JZT0wiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLml6DnlY/lpZHnuqYiLAogICAgICAgICAgICAgICAgdjogIlZBTE9SQU5UIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAiQ0ZIRCIsCiAgICAgICAgICAgICAgICB2OiAiQ0ZIRCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuWRvei/kOaWueiInyIsCiAgICAgICAgICAgICAgICB2OiAiTG9zdEFyayIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIkRORiIsCiAgICAgICAgICAgICAgICB2OiAiRE5GIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAiRE9UQTIiLAogICAgICAgICAgICAgICAgdjogIkRPVEEyIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi5L2/5ZG95Y+s5ZSkIiwKICAgICAgICAgICAgICAgIHY6ICJDT0QiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLngonnn7PkvKDor7QiLAogICAgICAgICAgICAgICAgdjogIkhvdyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIkNTMiIsCiAgICAgICAgICAgICAgICB2OiAiQ291bnRlclN0cmlrZSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogImxvbOS6kemhtuS5i+W8iCIsCiAgICAgICAgICAgICAgICB2OiAieWR6aHkiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLprZTlhb3kuonpnLgiLAogICAgICAgICAgICAgICAgdjogIm1zemIiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLprZTlhb3mgIDml6fmnI0iLAogICAgICAgICAgICAgICAgdjogIndvd2NsYXNzaWMiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLlhajmsJHooZfnr64iLAogICAgICAgICAgICAgICAgdjogInFtamwiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLoh6rotbDmo4siLAogICAgICAgICAgICAgICAgdjogImRvdGEycnBnIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi5Lyg5aWHIiwKICAgICAgICAgICAgICAgIHY6ICJjcSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIui3kei3keWNoeS4gei9piIsCiAgICAgICAgICAgICAgICB2OiAiUG9wa2FydCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIue9keaYk+a4uOaIjyIsCiAgICAgICAgICAgICAgICB2OiAid3l5eCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuaYn+mZheS6iemcuCIsCiAgICAgICAgICAgICAgICB2OiAiU0MiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLlrojmnJvlhYjplIsiLAogICAgICAgICAgICAgICAgdjogIk92ZXJ3YXRjaCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIkRPVEEiLAogICAgICAgICAgICAgICAgdjogIkRPVEEiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLprZTlhb3kuJbnlYwiLAogICAgICAgICAgICAgICAgdjogIldPVyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuWJkee9kTMiLAogICAgICAgICAgICAgICAgdjogIkpYMyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIumtlOWfnyIsCiAgICAgICAgICAgICAgICB2OiAiRXVkZW1vbnNPbmxpbmUiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLmiJHnmoTkuJbnlYwiLAogICAgICAgICAgICAgICAgdjogIk1DIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi6LaF5r+A5paX5qKm5aKDIiwKICAgICAgICAgICAgICAgIHY6ICJjamRtaiIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuWGkumZqeWymyIsCiAgICAgICAgICAgICAgICB2OiAibXhkIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi5LiJ5Zu95p2AIiwKICAgICAgICAgICAgICAgIHY6ICJzYW5ndW9zaGEiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLmoqblubvopb/muLgiLAogICAgICAgICAgICAgICAgdjogIk1IWFlPTCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuWkqea2r+aYjuaciOWIgCIsCiAgICAgICAgICAgICAgICB2OiAidGlhbnlhIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi6KGX5aS056+u55CDIiwKICAgICAgICAgICAgICAgIHY6ICJqdGxxIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAiTkJBMktPTDIiLAogICAgICAgICAgICAgICAgdjogIk5CQTJLT0wyIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAiUVHpo57ovabnq6/muLgiLAogICAgICAgICAgICAgICAgdjogInFxZmNkeSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuaImOWcsOS5i+eOiyIsCiAgICAgICAgICAgICAgICB2OiAiQVZBIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi5Yab5LqL5ri45oiPIiwKICAgICAgICAgICAgICAgIHY6ICJqc3l4IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi5qOL54mM5aix5LmQIiwKICAgICAgICAgICAgICAgIHY6ICJxaXBhaSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIkZDIE9OTElORSIsCiAgICAgICAgICAgICAgICB2OiAiRkNPTCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIueDremXqOe9kea4uCIsCiAgICAgICAgICAgICAgICB2OiAicm13eSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuWNoeaLieW9vOS4mCIsCiAgICAgICAgICAgICAgICB2OiAia2xicSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuivm+S7meS4lueVjCIsCiAgICAgICAgICAgICAgICB2OiAienhzaiIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuWNg+WPpOmjjua1gSIsCiAgICAgICAgICAgICAgICB2OiAicWdmbHBjIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAiQVBFWCIsCiAgICAgICAgICAgICAgICB2OiAiQVBFWCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIua1geaUvuS5i+i3r1BPRSIsCiAgICAgICAgICAgICAgICB2OiAiUGF0aG9mRXhpbGUiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLliZHnvZEz57yY6LW3IiwKICAgICAgICAgICAgICAgIHY6ICJKVzNZUSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIumAhuawtOWvkiIsCiAgICAgICAgICAgICAgICB2OiAibnNoIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi6aOO5pq06Iux6ZuEIiwKICAgICAgICAgICAgICAgIHY6ICJIT1RTIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi6YCG5oiYIiwKICAgICAgICAgICAgICAgIHY6ICJOWiIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuWdpuWFi+S4lueVjCIsCiAgICAgICAgICAgICAgICB2OiAiVEtTSiIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuaImOiIsOS4lueVjCIsCiAgICAgICAgICAgICAgICB2OiAid2Z3cyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuW3q+W4iOS5i+aYhueJueeJjCIsCiAgICAgICAgICAgICAgICB2OiAid3N6a3RwIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi5Y+N5oGQ57K+6IuxT25saW5lIiwKICAgICAgICAgICAgICAgIHY6ICJDUyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuaal+m7keegtOWdj+elniIsCiAgICAgICAgICAgICAgICB2OiAiRElBQkxPIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi5qKm5LiJ5Zu9MiIsCiAgICAgICAgICAgICAgICB2OiAibXNnMiIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuS8oOWlh+S4lueVjCIsCiAgICAgICAgICAgICAgICB2OiAiY3FzaiIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuaWueiIn++8mueUn+WtmOi/m+WMliIsCiAgICAgICAgICAgICAgICB2OiAiZnpzY2poIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi56We5q2mNOeUteiEkeeJiCIsCiAgICAgICAgICAgICAgICB2OiAic3dkbmIiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLnvqTpm4TpgJDpub8iLAogICAgICAgICAgICAgICAgdjogInF4emwiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLloKHlnpLkuYvlpJwiLAogICAgICAgICAgICAgICAgdjogImJsenkiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLml6DpmZDms5XliJkiLAogICAgICAgICAgICAgICAgdjogInJvZSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIumXrumBk+eUteiEkeeJiCIsCiAgICAgICAgICAgICAgICB2OiAid2RkbmIiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLopb/lsbHlsYXmuLjmiI8iLAogICAgICAgICAgICAgICAgdjogIlNlYXN1biIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuacgOe7iOW5u+aDszE0IiwKICAgICAgICAgICAgICAgIHY6ICJGRjE0IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi5oiY5oSPIiwKICAgICAgICAgICAgICAgIHY6ICJXWVpZIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi5YmR54G1IiwKICAgICAgICAgICAgICAgIHY6ICJCbGFkZVNvdWwiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLmmJ/pmYXmiJjnlLIiLAogICAgICAgICAgICAgICAgdjogIldhcmZyYW1lIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi6b6Z5LmL6LC3IiwKICAgICAgICAgICAgICAgIHY6ICJEcmFnb25OZXN0IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi6ZOB55Sy6ZuE5YW1IiwKICAgICAgICAgICAgICAgIHY6ICJ0anhiIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi5Y+k5YmR5aWH6LCt572R57uc54mIIiwKICAgICAgICAgICAgICAgIHY6ICJnanF0d2xiIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi6L2p6L6V5Lyg5aWHIiwKICAgICAgICAgICAgICAgIHY6ICJYWUNRIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi56We6YCUIiwKICAgICAgICAgICAgICAgIHY6ICJzaGVudHUiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLmv4DmiJgyIiwKICAgICAgICAgICAgICAgIHY6ICJHdWlsZFdhcnMyIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi6auY6L6+5paH5YyW5Yy6IiwKICAgICAgICAgICAgICAgIHY6ICJnZHl4cSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuW/jeiAheadkeWkp+aImDIiLAogICAgICAgICAgICAgICAgdjogInJ6Y2R6MiIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIlJQR+e9kea4uOS4k+WMuiIsCiAgICAgICAgICAgICAgICB2OiAicnBnd3l6cSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuivm+S7mTMiLAogICAgICAgICAgICAgICAgdjogInpodXhpYW4zIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi56yR5YKy5rGf5rmWT0wiLAogICAgICAgICAgICAgICAgdjogInhhamhvbCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuWGkumZqeWymzIiLAogICAgICAgICAgICAgICAgdjogIk1YRDIiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLotoXlh7vnqoHnoLQiLAogICAgICAgICAgICAgICAgdjogIlN1cGVyUGVvcGxlIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi5peg5bC95oiY5Yy6IiwKICAgICAgICAgICAgICAgIHY6ICJXSlpRIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi5paX5oiY56WeIiwKICAgICAgICAgICAgICAgIHY6ICJkenMiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLmsLjmgZLkuYvloZQiLAogICAgICAgICAgICAgICAgdjogIkFJT04iCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLkuZ3pmLTnnJ/nu48iLAogICAgICAgICAgICAgICAgdjogIkpZWkoiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICJGUFPnu7zlkIjnvZHmuLgiLAogICAgICAgICAgICAgICAgdjogIkZQU09MIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi5Yqy6Iie5ZuiIiwKICAgICAgICAgICAgICAgIHY6ICJqd3QiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLlpKnkuIsiLAogICAgICAgICAgICAgICAgdjogInRpYW54YWkiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLms6Hms6HloIIiLAogICAgICAgICAgICAgICAgdjogInBwdCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuatpuS+oOS5giIsCiAgICAgICAgICAgICAgICB2OiAid3h5IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi6Z+z5LmQ5ri45oiPIiwKICAgICAgICAgICAgICAgIHY6ICJNRyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuaWsOWAqeWls+W5vemtgiIsCiAgICAgICAgICAgICAgICB2OiAiT05MSU5FIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi5aSp6LCVIiwKICAgICAgICAgICAgICAgIHY6ICJ0aWFueXUiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLlvoHpgJQyIiwKICAgICAgICAgICAgICAgIHY6ICJ6aGVuZ3R1MiIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIlFR54Kr6IieIiwKICAgICAgICAgICAgICAgIHY6ICJxcXh3IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi5rOw5Lqa5Y+y6K+XIiwKICAgICAgICAgICAgICAgIHY6ICJ0eXNzIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi5oCq54mp54yO5Lq6b2wiLAogICAgICAgICAgICAgICAgdjogIk1Ib2wiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLmiYvlt6XmmJ/nkIMiLAogICAgICAgICAgICAgICAgdjogInNneHEiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLmmJ/miJjliY3lpJzvvJrmmajmm6YiLAogICAgICAgICAgICAgICAgdjogIkVWRSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIueDreihgOS8oOWlh++8muacrOa6kCIsCiAgICAgICAgICAgICAgICB2OiAicnhjcWhqc2diIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi5p6q54Gr6YeN55SfIiwKICAgICAgICAgICAgICAgIHY6ICJxaGNzIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi5b2p6Jm55bKbIiwKICAgICAgICAgICAgICAgIHY6ICJDSEQiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLlvqHpvpnlnKjlpKkiLAogICAgICAgICAgICAgICAgdjogIllMWlQiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLoi7HprYLkuYvliIMiLAogICAgICAgICAgICAgICAgdjogIllIWlIiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLoh6rnlLHnr67nkIMiLAogICAgICAgICAgICAgICAgdjogIlpZTFEiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLmtJvlpYfoi7Hpm4TkvKAiLAogICAgICAgICAgICAgICAgdjogIkxRWVhaIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi5bCB5Y2w6ICFIiwKICAgICAgICAgICAgICAgIHY6ICJGWVoiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLlkIjph5HlvLnlpLQiLAogICAgICAgICAgICAgICAgdjogIkhKRFQiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLmlrDoi7Hpm4TlubTku6MiLAogICAgICAgICAgICAgICAgdjogIlhZWFNEIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi5pif5bCY5Lyg6K+0IiwKICAgICAgICAgICAgICAgIHY6ICJYQ0NTIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi55ub6Laj5ri45oiPIiwKICAgICAgICAgICAgICAgIHY6ICJTUVlYIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi5paw54Ot6KGA6Iux6LGqIiwKICAgICAgICAgICAgICAgIHY6ICJYUlhZSCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuaymeebkua4uOaIjyIsCiAgICAgICAgICAgICAgICB2OiAiU0hZWCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuaIkeeahOS4lueVjO+8muWcsOS4i+WfjiIsCiAgICAgICAgICAgICAgICB2OiAiTUQiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLmgZDprLznl4ciLAogICAgICAgICAgICAgICAgdjogIktHWiIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIumihuWcsOS6uueUnyIsCiAgICAgICAgICAgICAgICB2OiAiTERSUyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuaipuWhlOmYsiIsCiAgICAgICAgICAgICAgICB2OiAiVERPVEsiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLlpKfor53opb/muLgyIiwKICAgICAgICAgICAgICAgIHY6ICJkaHh5MiIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIueMjuS6uiIsCiAgICAgICAgICAgICAgICB2OiAibHIiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLng63ooYDmsZ/muZZvbmxpbmUiLAogICAgICAgICAgICAgICAgdjogInJ4amhvbCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuWNg+W5tDMiLAogICAgICAgICAgICAgICAgdjogInFuMyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIumAjemBpeaDhee8mCIsCiAgICAgICAgICAgICAgICB2OiAieHlxeSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuW/q+S5kOilv+a4uCIsCiAgICAgICAgICAgICAgICB2OiAia2x4eSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIum5v+m8juiusCIsCiAgICAgICAgICAgICAgICB2OiAibGRqIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi5paw5qGD6Iqx5rqQ6K6wIiwKICAgICAgICAgICAgICAgIHY6ICJ4dGh5aiIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIueWvumjjuS5i+WIg+eUteiEkeeJiCIsCiAgICAgICAgICAgICAgICB2OiAiamZ6cjEiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLmrabprYIy55S16ISR54mIIiwKICAgICAgICAgICAgICAgIHY6ICJ3aDJwYyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuWlh+i/ueS4lueVjHN1biIsCiAgICAgICAgICAgICAgICB2OiAicWpzanN1biIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuWJkeS+oOS4lueVjDLnlLXohJHniYgiLAogICAgICAgICAgICAgICAgdjogImp4c2oycGMiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLmlqnprYIiLAogICAgICAgICAgICAgICAgdjogInpocGMiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLlpKfllJAyIiwKICAgICAgICAgICAgICAgIHY6ICJkdDJwYyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuicgOWxse+8muWIneeroCIsCiAgICAgICAgICAgICAgICB2OiAic3NjenBjIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi54u85Lq65a+55Yaz572R5ri4IiwKICAgICAgICAgICAgICAgIHY6ICJscmRqcGMiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLmrabmnpfnvqTkvqDkvKAiLAogICAgICAgICAgICAgICAgdjogIndscXh6cGMiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLpo5jmtYHlubvlooMiLAogICAgICAgICAgICAgICAgdjogInBsaGpwYyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuegtOWkqeS4gOWJkSIsCiAgICAgICAgICAgICAgICB2OiAicHR5aiIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuWbm+WbveWGm+ajiyIsCiAgICAgICAgICAgICAgICB2OiAic2dqcSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuaWsOWkp+ivneilv+a4uDMiLAogICAgICAgICAgICAgICAgdjogInh5MyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuijheeUsuaImOS6iSIsCiAgICAgICAgICAgICAgICB2OiAiemp6eiIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuaatOmbqua4uOaIj+e7vOWQiCIsCiAgICAgICAgICAgICAgICB2OiAiZ19ibGl6IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi6ZW/5bC+NOmDqOiZmuaLn+WIhuWMuiIsCiAgICAgICAgICAgICAgICB2OiAiY3c0YnhuZnEiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLnh5XkupHljYHlha3lo7AiLAogICAgICAgICAgICAgICAgdjogIldIRVJFV0lORFNNRUVUIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAiVEhFIEZJTkFMUyIsCiAgICAgICAgICAgICAgICB2OiAiVEhFRklOQUxTIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAiTkJBMksgT25saW5lIiwKICAgICAgICAgICAgICAgIHY6ICJOQkEyS09MIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi5aGU55Ge5pav5LiW55WMIiwKICAgICAgICAgICAgICAgIHY6ICJUYXJpc2xhbmQiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLot5Hot5HljaHkuIHovabvvJrmvILnp7siLAogICAgICAgICAgICAgICAgdjogIkthcnRSaWRlckRyaWZ0IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi5Lyg5aWH5rC45oGSIiwKICAgICAgICAgICAgICAgIHY6ICJFdGVybmFsTGVnZW5kIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi5YWo5aKD5bCB6ZSBMiIsCiAgICAgICAgICAgICAgICB2OiAiVGhlRGl2aXNpb24yIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi55ub6Laj5Lyg5aWHIiwKICAgICAgICAgICAgICAgIHY6ICJzcWNxIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi54Gr54iG54Ot5ri4IiwKICAgICAgICAgICAgICAgIHY6ICJoYnJ5IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi54Gr54iG5Lyg5aWHIiwKICAgICAgICAgICAgICAgIHY6ICJoYmNxIgogICAgICAgICAgICB9XQogICAgICAgIH1dLAogICAgICAgIGRqcnk6IFt7CiAgICAgICAgICAgIGtleTogImNhdGVJZCIsCiAgICAgICAgICAgIG5hbWU6ICLliIbnsbsiLAogICAgICAgICAgICB2YWx1ZTogW3sKICAgICAgICAgICAgICAgIG46ICLkuLvmnLrmuLjmiI8iLAogICAgICAgICAgICAgICAgdjogIlRWZ2FtZSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuWIuuWuouS/oeadoTroi7HngbXmrr8iLAogICAgICAgICAgICAgICAgdjogIkFDIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi6ams6YeM5aWl5Yi26YCgIiwKICAgICAgICAgICAgICAgIHY6ICJNYXJpbyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIumAg+emu+WhlOenkeWkqyIsCiAgICAgICAgICAgICAgICB2OiAiRUZUIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi5ZG96L+QMiIsCiAgICAgICAgICAgICAgICB2OiAiTVkyIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi5oGQ5oCW5ri45oiPIiwKICAgICAgICAgICAgICAgIHY6ICJIb3Jyb3IiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLojZLph47lpKfplZblrqIiLAogICAgICAgICAgICAgICAgdjogImh5ZGJrIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi54G16a2C562556CBIiwKICAgICAgICAgICAgICAgIHY6ICJsaGNtIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi6aqR6ams5LiO56CN5p2AIiwKICAgICAgICAgICAgICAgIHY6ICJNb3VudEFuZEJsYWRlIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi5Y+q54u8IiwKICAgICAgICAgICAgICAgIHY6ICJaTCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuagvOaWl+a4uOaIjyIsCiAgICAgICAgICAgICAgICB2OiAiRlRHIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi6aWl6I2SIiwKICAgICAgICAgICAgICAgIHY6ICJEb250U3RhcnZlIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi5YWo5aKD5bCB6ZSBIiwKICAgICAgICAgICAgICAgIHY6ICJxamZzIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi5oCA5pen5ri45oiPIiwKICAgICAgICAgICAgICAgIHY6ICJjbGFzc2ljIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAiTkJBMksiLAogICAgICAgICAgICAgICAgdjogIk5CQTJLIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi5YWr5pa55peF5Lq6IiwKICAgICAgICAgICAgICAgIHY6ICJPVCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuihgOaxoe+8muWknOS5i+S7quW8jyIsCiAgICAgICAgICAgICAgICB2OiAiQmxvb2QiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLkurrnsbvkuIDotKXmtoLlnLAiLAogICAgICAgICAgICAgICAgdjogIkh1bWFuIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi546v5LiW55WMIiwKICAgICAgICAgICAgICAgIHY6ICJSaW1Xb3JsZCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuWPpOWik+S4veW9sSIsCiAgICAgICAgICAgICAgICB2OiAiZ21seSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIumsvOazoyIsCiAgICAgICAgICAgICAgICB2OiAiRE1DIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi5b6A5pel5LiN5YaNIiwKICAgICAgICAgICAgICAgIHY6ICJXUkJaIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi5LuZ5YmR5aWH5L6g5LygIiwKICAgICAgICAgICAgICAgIHY6ICJQQUwiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLnpZ7np5jmtbfln58iLAogICAgICAgICAgICAgICAgdjogIlVuY2hhcnRlZCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuWhnuWwlOi+vuezu+WIlyIsCiAgICAgICAgICAgICAgICB2OiAiVExvWiIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuWDteWwuOS4lueVjOWkp+aImCIsCiAgICAgICAgICAgICAgICB2OiAiV1daIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi6Laz55CD5ri45oiPIiwKICAgICAgICAgICAgICAgIHY6ICJ6cSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuapmeWFiSIsCiAgICAgICAgICAgICAgICB2OiAiY2ciCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLkuobkuI3otbfnmoTkv67ku5nmqKHmi5/lmagiLAogICAgICAgICAgICAgICAgdjogIkFDUyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuWls+elnuW8gumXu+W9lSIsCiAgICAgICAgICAgICAgICB2OiAiUDUiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLotoXnuqfpqazph4zlpaUiLAogICAgICAgICAgICAgICAgdjogIlNNTyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuS4ieWbveW/l+ezu+WIlyIsCiAgICAgICAgICAgICAgICB2OiAiU2FuZ29rdXNoaSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuacgOe7iOW5u+aDsyIsCiAgICAgICAgICAgICAgICB2OiAiRkYiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLkuK3lnJ/kuJbnlYzvvJrmiJjkuonkuYvlvbEiLAogICAgICAgICAgICAgICAgdjogIk1pZGRsZUVhcnRoIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi5rWB5pS+6ICF5p+v5Y2XIiwKICAgICAgICAgICAgICAgIHY6ICJDb25hbiIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuS4ieWbvee+pOiLseS8oCIsCiAgICAgICAgICAgICAgICB2OiAiU0FOR08iCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLml6DkuLvkuYvlnLAiLAogICAgICAgICAgICAgICAgdjogIkJvciIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIui+kOWwhCIsCiAgICAgICAgICAgICAgICB2OiAiZnMiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICJTQ1VNIiwKICAgICAgICAgICAgICAgIHY6ICJTY3VtIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi5paH5piOIiwKICAgICAgICAgICAgICAgIHY6ICJDVkkiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLku4HnjosiLAogICAgICAgICAgICAgICAgdjogIk5JT0giCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLnvLrmsKciLAogICAgICAgICAgICAgICAgdjogIk9OSSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuWFqOmdouWQg+m4oeaooeaLn+WZqCIsCiAgICAgICAgICAgICAgICB2OiAiVEFCIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi5Y+k5YmR5aWH6LCtIiwKICAgICAgICAgICAgICAgIHY6ICJHdUppYW4zIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi55qH54mM56m65oiYIiwKICAgICAgICAgICAgICAgIHY6ICJocGt6IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi5L2T6IKy5ri45oiPIiwKICAgICAgICAgICAgICAgIHY6ICJ0eXl4IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi5rW35bKb5aSn5LqoIiwKICAgICAgICAgICAgICAgIHY6ICJoZGRoIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi56Kn5rW36buR5biGIiwKICAgICAgICAgICAgICAgIHY6ICJrbGhkdCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuakjeeJqeWkp+aImOWDteWwuDroirHlm63miJjkuonns7vliJciLAogICAgICAgICAgICAgICAgdjogIlB2c1oiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLonJjom5vkvqAiLAogICAgICAgICAgICAgICAgdjogIlNwaWRlIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi5YuH6ICF5paX5oG26b6Z77ya5bu66YCg6ICFMiIsCiAgICAgICAgICAgICAgICB2OiAiRFFCMiIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIumBl+i/ue+8mueBsOeDrOmHjeeUnyIsCiAgICAgICAgICAgICAgICB2OiAiUmVtIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi6KGA5rqQIiwKICAgICAgICAgICAgICAgIHY6ICJCQiIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuaXuui+vuS4juW3qOWDjyIsCiAgICAgICAgICAgICAgICB2OiAiU290QyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuatu+S6oeaQgea1hSIsCiAgICAgICAgICAgICAgICB2OiAiRFMiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLmqKHmi5/kurrnlJ8iLAogICAgICAgICAgICAgICAgdjogIlNpbXMiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLnqbrmtJ7pqpHlo6siLAogICAgICAgICAgICAgICAgdjogIkhLUyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuiDoemXueWOqOaIvyIsCiAgICAgICAgICAgICAgICB2OiAiT3ZlcmNvb2tlZCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuWcsOmTgTrnprvljrsiLAogICAgICAgICAgICAgICAgdjogIk1FIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi55Sf5q2754uZ5Ye7MiIsCiAgICAgICAgICAgICAgICB2OiAic3NqanR3byIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuS4ieWbveaImOe6qiIsCiAgICAgICAgICAgICAgICB2OiAic2d6aiIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuaAgOaXp0ZDIiwKICAgICAgICAgICAgICAgIHY6ICJlZHdjeSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIue7j+WFuOWNleacuiIsCiAgICAgICAgICAgICAgICB2OiAiamRkaiIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuiLsembhOaXoOaVjCIsCiAgICAgICAgICAgICAgICB2OiAiSG9NTSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuihl+acuua4uOaIjyIsCiAgICAgICAgICAgICAgICB2OiAiamp5eCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuWQiOmHkeijheWkhyIsCiAgICAgICAgICAgICAgICB2OiAiTWV0YWxHZWFyIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi57qi6Imy6K2m5oiSIiwKICAgICAgICAgICAgICAgIHY6ICJoc2pqIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi6ZWc5LmL6L6557yYIiwKICAgICAgICAgICAgICAgIHY6ICJNc0UiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLli7/lv5jmiJEiLAogICAgICAgICAgICAgICAgdjogIlJlbXciCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLngavnhLDnurnnq6Dns7vliJciLAogICAgICAgICAgICAgICAgdjogIkZpcmVFbWJsZW0iCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLmmJ/pnLLosLfnianor60iLAogICAgICAgICAgICAgICAgdjogIlN0YXJkZXciCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLngavngqzkuYvlhYkiLAogICAgICAgICAgICAgICAgdjogIlRvcmNobGlnaHQiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLotZvljZrmnIvlhYsyMDc3IiwKICAgICAgICAgICAgICAgIHY6ICJDeWJlcnB1bmsiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLkuK3lm73lvI/lrrbplb8iLAogICAgICAgICAgICAgICAgdjogIkNQIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi57K+54G15a6d5Y+v5qKm57O75YiXIiwKICAgICAgICAgICAgICAgIHY6ICJQb2tlbW9uIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi5bC85bCU77ya5py65qKw57qq5YWDIiwKICAgICAgICAgICAgICAgIHY6ICJOaWVSIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi5peg5Lq65rex56m6IiwKICAgICAgICAgICAgICAgIHY6ICJOTVMiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICJFVk9USU5DVElPTiIsCiAgICAgICAgICAgICAgICB2OiAiRVZPVElOQ1RJT04iCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICJHVOi1m+i9pjciLAogICAgICAgICAgICAgICAgdjogIkdUIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi6LaF57qn5py65Zmo5Lq65aSn5oiYIiwKICAgICAgICAgICAgICAgIHY6ICJTUlciCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLov5nmmK/miJHnmoTmiJjkuokiLAogICAgICAgICAgICAgICAgdjogIlRXb00iCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLmnYDmiK7lsJbloZQiLAogICAgICAgICAgICAgICAgdjogInNsanQiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLlhrDmsb3ml7bku6MiLAogICAgICAgICAgICAgICAgdjogIkZyb3N0cHVuayIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuW4neWbveaXtuS7oyIsCiAgICAgICAgICAgICAgICB2OiAiQW9FSVYiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLmrbvkuqHnqbrpl7QiLAogICAgICAgICAgICAgICAgdjogInN3a2oiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLlh6/nkZ/nkLNGdWxsIEJvZHkiLAogICAgICAgICAgICAgICAgdjogIkNGQiIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIui2s+eQg+e7j+eQhiIsCiAgICAgICAgICAgICAgICB2OiAiRm9vdGJhbGwiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLpm6jkuK3lhpLpmakiLAogICAgICAgICAgICAgICAgdjogIlJvUiIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuS6v+S4h+WDteWwuCIsCiAgICAgICAgICAgICAgICB2OiAiQmlsbGlvbnMiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLmraboo4XnqoHooq0iLAogICAgICAgICAgICAgICAgdjogIkFybUEiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLnn7PmsrnlpKfkuqgiLAogICAgICAgICAgICAgICAgdjogIk9pbCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuasp+a0suWNoei9puaooeaLn+WZqCIsCiAgICAgICAgICAgICAgICB2OiAiVHJ1Y2siCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLnvo7lm73pgIPkuqHogIUiLAogICAgICAgICAgICAgICAgdjogIkZ1Z2l0aXZlIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi5ryr5ryr6ZW/5aScIiwKICAgICAgICAgICAgICAgIHY6ICJtbWN5IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi5rC45oGS6L2u5ZueIiwKICAgICAgICAgICAgICAgIHY6ICJTdXJ2aXZhbCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuWtpOWym+aDiumtgiIsCiAgICAgICAgICAgICAgICB2OiAiRmFyQ3J5IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi6YO95biC77ya5aSp6ZmF57q/IiwKICAgICAgICAgICAgICAgIHY6ICJTa3lsaW5lcyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuebl+i0vOS5i+a1tyIsCiAgICAgICAgICAgICAgICB2OiAiaGR6aCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIkRheXoiLAogICAgICAgICAgICAgICAgdjogIkRheVoiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICI2MOenkiIsCiAgICAgICAgICAgICAgICB2OiAiNjBTIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi5L+E572X5pav6ZKT6bG8IiwKICAgICAgICAgICAgICAgIHY6ICJSRiIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIueMjuS6uu+8muiNkumHjueahOWPrOWUpCIsCiAgICAgICAgICAgICAgICB2OiAidGhlSHVudGVyIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi5oGQ5oCW6buO5piOIiwKICAgICAgICAgICAgICAgIHY6ICJHRCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIueci+mXqOeLlyIsCiAgICAgICAgICAgICAgICB2OiAia21nIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi55yf5LiJ5Zu95peg5Y+MIiwKICAgICAgICAgICAgICAgIHY6ICJEVyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuaImOaWl+egluWdl+WJp+WcuiIsCiAgICAgICAgICAgICAgICB2OiAiQlQiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLms7Dmi4nnkZ7kupoiLAogICAgICAgICAgICAgICAgdjogIlRlcnJhcmlhIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi5byC5pif5bel5Y6CIiwKICAgICAgICAgICAgICAgIHY6ICJGYWN0b3JpbyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIlVGQyIsCiAgICAgICAgICAgICAgICB2OiAiVUZDIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi5bqV54m55b6LOuWPmOS6uiIsCiAgICAgICAgICAgICAgICB2OiAiRGV0cm9pdCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuaBtumtlOWfjiIsCiAgICAgICAgICAgICAgICB2OiAiQ2FzdGxldmFuaWEiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLmr4Hnga3miJjlo6siLAogICAgICAgICAgICAgICAgdjogIkRvb20iCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLngavlvbHlv43ogIXvvJrnqbbmnoHlv43ogIXpo47mmrQiLAogICAgICAgICAgICAgICAgdjogIk5hcnV0byIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuWdjuW3tOaLieWkquepuuiuoeWIkiIsCiAgICAgICAgICAgICAgICB2OiAiS2VyYmFsIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi6b6Z54+g77ya6LaF5a6H5a6ZIiwKICAgICAgICAgICAgICAgIHY6ICJEQlgiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLpqazph4zlpaXotZvovaYiLAogICAgICAgICAgICAgICAgdjogIk1hcmlvS2FydCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuasp+mZhumjjuS6kSIsCiAgICAgICAgICAgICAgICB2OiAiRVUiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLkuZ7kuJDmqKHmi5/lmagiLAogICAgICAgICAgICAgICAgdjogIkhvYm9Ub3VnaExpZmUiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLlsI/lgbfmqKHmi5/lmagiLAogICAgICAgICAgICAgICAgdjogIlRoaWVmU2ltdWxhdG9yIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi6YCG6L2s6KOB5YikIiwKICAgICAgICAgICAgICAgIHY6ICJBY2VBIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi6LaF6LaK5YWJ6YCfIiwKICAgICAgICAgICAgICAgIHY6ICJGVEwiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLmpI3nianlpKfmiJjlg7XlsLgiLAogICAgICAgICAgICAgICAgdjogIlB2WiIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIua4uOaIj+W8gOWPkeiAhSIsCiAgICAgICAgICAgICAgICB2OiAiR0dNIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi5pyA5ZCO55qE57u/5rSyIiwKICAgICAgICAgICAgICAgIHY6ICJMTyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuWkp+WvjOe/gSIsCiAgICAgICAgICAgICAgICB2OiAiUmljaE1hbiIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuWPjeaBkOeyvuiLsSIsCiAgICAgICAgICAgICAgICB2OiAiZmtqeSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuiLsembhOi/niIsCiAgICAgICAgICAgICAgICB2OiAieXhsIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi5rC45Yqr5peg6Ze0IiwKICAgICAgICAgICAgICAgIHY6ICJOQiIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuWInemfs+acquadpe+8muatjOWnrOiuoeWIkiIsCiAgICAgICAgICAgICAgICB2OiAiTUlLVSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIumDqOiQveS4juW8r+WIgCIsCiAgICAgICAgICAgICAgICB2OiAiQkxZV0QiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLkuIDotbflvIDngavovabvvIEiLAogICAgICAgICAgICAgICAgdjogIlVucmFpbGVkIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi6ZyT6Jm55rex5riKIiwKICAgICAgICAgICAgICAgIHY6ICJOQSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuS4u+acuuWFtuS7lua4uOaIjyIsCiAgICAgICAgICAgICAgICB2OiAiT0ciCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLmiJjlnLrlhYTlvJ8iLAogICAgICAgICAgICAgICAgdjogIlpDWEQiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLlnLDni7HmvZzogIUiLAogICAgICAgICAgICAgICAgdjogIkRZUVoiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLlnLDkuIvln44iLAogICAgICAgICAgICAgICAgdjogImR4YyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuS6uumXtOWcsOeLsSIsCiAgICAgICAgICAgICAgICB2OiAiUkpEWSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogInRlbXRlbSIsCiAgICAgICAgICAgICAgICB2OiAidGVtdGVtIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi5by55Li46K6656C0IiwKICAgICAgICAgICAgICAgIHY6ICJkd2xwIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi55qH5a62576O6aOfIiwKICAgICAgICAgICAgICAgIHY6ICJISk1TIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi5Z+65L2s5aSn5Lmx5paXIiwKICAgICAgICAgICAgICAgIHY6ICJqbGRsZCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuWDteWwuOavgeeBreW3peeoiyIsCiAgICAgICAgICAgICAgICB2OiAianNobWdjIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi5bKb5bG/55Sf5a2Y6ICFIiwKICAgICAgICAgICAgICAgIHY6ICJTdXIiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLlhqzml6XorqHliJIiLAogICAgICAgICAgICAgICAgdjogImRyamgiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLlm5vmtbflhYTlvJ8iLAogICAgICAgICAgICAgICAgdjogInNoeGQiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLliJvkuJbnkIbmg7PkuaEiLAogICAgICAgICAgICAgICAgdjogIkNyYWZ0b3BpYSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuafr+WonO+8mueyvuelnuS5i+ahpSIsCiAgICAgICAgICAgICAgICB2OiAiS2VuYSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuW5veeBtee6v++8muS4nOS6rCIsCiAgICAgICAgICAgICAgICB2OiAiR1RPIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAiU29sYXIgQXNoIiwKICAgICAgICAgICAgICAgIHY6ICJBc2giCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICJCVUdTTkFYIiwKICAgICAgICAgICAgICAgIHY6ICJCVUdTTkFYIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi55Sf5YyW5Y2x5py6NOmHjeWItueJiCIsCiAgICAgICAgICAgICAgICB2OiAiUmVzaWRlbnRFdmlsIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAiR3JvdW5kZWQiLAogICAgICAgICAgICAgICAgdjogIkdyb3VuZGVkIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAiU3VwZXJsaW1pbmFsIiwKICAgICAgICAgICAgICAgIHY6ICJTdXBlcmxpbWluYWwiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICJPbW5vIiwKICAgICAgICAgICAgICAgIHY6ICJPbW5vIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAiUsO2a2kiLAogICAgICAgICAgICAgICAgdjogIlJva2kiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICJVbmR1bmdlb24iLAogICAgICAgICAgICAgICAgdjogIlVuZHVuZ2VvbiIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuezluixhuS6uiIsCiAgICAgICAgICAgICAgICB2OiAiRmFsbEd1eXMiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLmuKHnpZ7nuqoiLAogICAgICAgICAgICAgICAgdjogIkdvZHMiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICJBZW9saXMgVG91cm5hbWVudCIsCiAgICAgICAgICAgICAgICB2OiAiQWVvbGlzIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi54yb5YW95rS+5a+5IiwKICAgICAgICAgICAgICAgIHY6ICJBbmltYWxzIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAiT2xpamEiLAogICAgICAgICAgICAgICAgdjogIk9saWphIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAiQ3JlYWtzIiwKICAgICAgICAgICAgICAgIHY6ICJDcmVha3MiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLmmpflvbHngavngqzln44iLAogICAgICAgICAgICAgICAgdjogIkZJU1QiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLpmL/lsJTmr5TmgakiLAogICAgICAgICAgICAgICAgdjogIkFsYmlvbiIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIlVyYWd1biIsCiAgICAgICAgICAgICAgICB2OiAiVXJhZ3VuIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi5oi05qOu55CD6K6h5YiSIiwKICAgICAgICAgICAgICAgIHY6ICJEU1AiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICJNdXNlIERhc2giLAogICAgICAgICAgICAgICAgdjogIk11c2VEYXNoIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi5oGQ5oOn5LmL6Ze0IiwKICAgICAgICAgICAgICAgIHY6ICJGZWFyc3Vycm91bmRzIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi5a2k5bKb5oOK6a2CNiIsCiAgICAgICAgICAgICAgICB2OiAiRmFyQ3J5NiIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuaAqueJqeeMjuS6uiIsCiAgICAgICAgICAgICAgICB2OiAiTW9uc3Rlckh1bnRlclJpc2UiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLpu5HnpZ7or53vvJrmgp/nqboiLAogICAgICAgICAgICAgICAgdjogIkJsYWNrTXl0aFd1S29uZyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuS7geeOizIiLAogICAgICAgICAgICAgICAgdjogIk5pb2gyIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi5LiJ5Zu9576k6Iux5LygOCIsCiAgICAgICAgICAgICAgICB2OiAiVGhlVGhyZWVLaW5nZG9tczgiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLkuInlm73lv5cxNCIsCiAgICAgICAgICAgICAgICB2OiAiVEhSRUVLSU5HRE9NU1hJViIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuadgOaJizMiLAogICAgICAgICAgICAgICAgdjogIkhpdG1hbjMiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLlj4zkurrmiJDooYwiLAogICAgICAgICAgICAgICAgdjogIml0dGFrZXN0d28iCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICJTY3JhcG5hdXQiLAogICAgICAgICAgICAgICAgdjogIlNjcmFwbmF1dCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuenn+aIv+i+vuS6uiIsCiAgICAgICAgICAgICAgICB2OiAiVGhlVGVuYW50cyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIueLmeWHu+aJi++8muW5veeBteaImOWjq+Wlkee6pjIiLAogICAgICAgICAgICAgICAgdjogIlNuaXBlckNvbnRyYWN0czIiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLlhajpnaLmiJjkuokiLAogICAgICAgICAgICAgICAgdjogIlRvdGFsV2FyV0FSSEFNTUVSIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi5aSN5L2TIiwKICAgICAgICAgICAgICAgIHY6ICJUaGVDb21wbGV4IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi5oiY5LqJ5py65Zmo77ya5oiY5pyv5bCP6ZifIiwKICAgICAgICAgICAgICAgIHY6ICJHZWFyc1RhY3RpY3MiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLmtbfnu7Xlrp3lrp3vvJrmr5TlpYfloKHnmoTlhpLpmakiLAogICAgICAgICAgICAgICAgdjogIkJhdHRsZWZvckJpa2luaSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuWIhuemuyIsCiAgICAgICAgICAgICAgICB2OiAiRGlzaW50ZWdyYXRpb24iCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLlpYflppnmjqLpmanpmJ8yIiwKICAgICAgICAgICAgICAgIHY6ICJDdXJpb3VzRXhwZWRpdGlvbjIiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLliLrlrqLkv6HmnaHvvJrlpaXlvrfotZsiLAogICAgICAgICAgICAgICAgdjogIk9keXNzZXkiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLkuKflsLjlm7Tln440IiwKICAgICAgICAgICAgICAgIHY6ICJEZWFkUmlzaW5nNCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuaYn+eQg+Wkp+aImO+8muWJjee6vyIsCiAgICAgICAgICAgICAgICB2OiAiQmF0dGxlZnJvbnQiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICJNb29ucmF5IiwKICAgICAgICAgICAgICAgIHY6ICJNb29ucmF5IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi54G16a2C5peF5Lq6IiwKICAgICAgICAgICAgICAgIHY6ICJTcGlyaXRGYXJlcmxobHIiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLpnaLlrrkiLAogICAgICAgICAgICAgICAgdjogIlZpc2FnZSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIui9pueluOeOsOWcuuaooeaLn+WZqCIsCiAgICAgICAgICAgICAgICB2OiAiQWNjaWRlbnQiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLnoLTpl6jogIzlhaUy77ya5YyX5pa554m56YGj6ZifIiwKICAgICAgICAgICAgICAgIHY6ICJEb29yS2lja2VyczIiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLkv4TnvZfmlq/mlrnlnZfmlYjlupTvvJrov57mjqUiLAogICAgICAgICAgICAgICAgdjogIlRldHJpc0VmZmVjdCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIlNE6auY6L6+R+S4lue6qu+8mui1t+a6kCIsCiAgICAgICAgICAgICAgICB2OiAiU0RHdW5kYW1HIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi5Lic5pa56K6h5YiS77ya5LiN5Y+v5oCd6K6u55qE5bm75oOz5LmhIiwKICAgICAgICAgICAgICAgIHY6ICJUb3VIb3UiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICJGYXRlL0VYVEVMTEEiLAogICAgICAgICAgICAgICAgdjogIkZhdGVFWFRFTExBIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi5Li057uI77ya6YeN55Sf6K+V54K8IiwKICAgICAgICAgICAgICAgIHY6ICJEWUlOR1JlYm9ybiIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuiZmuaLn+eOsOWunuS5kOWbrSIsCiAgICAgICAgICAgICAgICB2OiAiVlJXb3JsZHMiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLoi43nv7zpu5jnpLrlvZXvvJrnpZ7op4LkuYvmoqYiLAogICAgICAgICAgICAgICAgdjogIkNlbnRyYWxGaWN0aW9uIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi5pma54+tIiwKICAgICAgICAgICAgICAgIHY6ICJMYXRlU2hpZnQiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLlrZDlvLnpo47mmrQiLAogICAgICAgICAgICAgICAgdjogIkJ1bGxldHN0b3JtIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi5beh6K2mIiwKICAgICAgICAgICAgICAgIHY6ICJCZWF0Q29wIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi6IC76L6x5LmL5pelIiwKICAgICAgICAgICAgICAgIHY6ICJEYXlvZkluZmFteSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIueLmeWHu+eyvuiLsTQiLAogICAgICAgICAgICAgICAgdjogIlNuaXBlckVsaXRlNCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIueDreihgOeJqeivre+8muWcsOS4i+S4lueVjCIsCiAgICAgICAgICAgICAgICB2OiAiUml2ZXJDaXR5UmFuc29tIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi5Y+y6K+X5oiY5LqJ5qih5ouf5ZmoIiwKICAgICAgICAgICAgICAgIHY6ICJCYXR0bGVTaW11bGF0b3IiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLpk7bmsrPmiqTljavpmJ8iLAogICAgICAgICAgICAgICAgdjogIkd1YXJkaWFucyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuS4iuWPpOWNt+i9tO+8muS8oOWlhyIsCiAgICAgICAgICAgICAgICB2OiAiU2Nyb2xsc0xlZ2VuZHMiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLpl6rkubHnpZ7kuZDvvJrlsJHlpbPku6znmoTpgInmi6kiLAogICAgICAgICAgICAgICAgdjogIlNlbnJhbkthZ3VyYSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuW5veeBteihjOWKqO+8muiNkumHjiIsCiAgICAgICAgICAgICAgICB2OiAiR2hvc3RSZWNvbldpbGRsYW5kIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi55m96Imy5oOF5Lq66IqCIiwKICAgICAgICAgICAgICAgIHY6ICJXaGl0ZURheSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuiqk+atu+WdmuWuiCIsCiAgICAgICAgICAgICAgICB2OiAiVW50aWxXZURpZSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIueLguaImOS8oOivtCIsCiAgICAgICAgICAgICAgICB2OiAiVGFsZXNvZkJlcnNlcmlhIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi5Y+M5oiq6b6ZNCIsCiAgICAgICAgICAgICAgICB2OiAiRG91YmxlRHJhZ29uNCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuWcsOS4i+iageWbvSIsCiAgICAgICAgICAgICAgICB2OiAiVW5kZXJncm93dGgiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLlr7vmib7lpKnloIIiLAogICAgICAgICAgICAgICAgdjogImZpbmRwYXJhZGlzZSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIueUu+S4reS4lueVjCIsCiAgICAgICAgICAgICAgICB2OiAiR29yb2dvYSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIueOsOS7o+aImOS6iSIsCiAgICAgICAgICAgICAgICB2OiAiTW9kZXJuQ29tYmF0IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi57uv57qi57uT57O7IiwKICAgICAgICAgICAgICAgIHY6ICJTQ0FSTEVUTkVYVVMiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLnvarmgbboo4XlpIfvvJpTVFJJVkUiLAogICAgICAgICAgICAgICAgdjogIkd1aWx0eUdlYXIiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLmtoXlhYvnvZfokpnovr7vvJrotY/ph5HnjI7kuroiLAogICAgICAgICAgICAgICAgdjogIk5IaXJlZEd1biIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIumqkeWjq+eyvuelnjIiLAogICAgICAgICAgICAgICAgdjogIkNoaXZhbHJ5MiIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIlJ1bmUgS25pZ2h0cyIsCiAgICAgICAgICAgICAgICB2OiAiUnVuZUtuaWdodHMiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLnuqLoh7Pml6Uy77ya5bm45a2Y6ICFIiwKICAgICAgICAgICAgICAgIHY6ICJUaGVSZWQyIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi55yf5aWz56We6L2s55SfMyIsCiAgICAgICAgICAgICAgICB2OiAiU2hpbk1lZ2FtaTMiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLpgJ/pmY3njovogIUiLAogICAgICAgICAgICAgICAgdjogIkRlc2NlbmRlcnMiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLlt6XkuJrltJvotbciLAogICAgICAgICAgICAgICAgdjogIlJpc2VJbmR1c3RyeSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuWJjeW+gOS4reS4lue6qiIsCiAgICAgICAgICAgICAgICB2OiAiR29NZWRpZXZhbCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIkFyaWQiLAogICAgICAgICAgICAgICAgdjogIkFyaWQiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLkvIrlp4vkuYvlnLAiLAogICAgICAgICAgICAgICAgdjogIlRlcnJhTmlsIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi6L+b5Ye755qE5beo5Lq6MiIsCiAgICAgICAgICAgICAgICB2OiAiQXR0YWNrb25UaXRhbjIiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLprZTln5/kuYvkuaYiLAogICAgICAgICAgICAgICAgdjogIkJvb2tvZmRldmlsIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi6Ieq55Sx5Lq677ya5ri45Ye75oiY5LqJIiwKICAgICAgICAgICAgICAgIHY6ICJGcmVlbWFuIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi5oiY5Zu95peg5Y+MNSIsCiAgICAgICAgICAgICAgICB2OiAiU1dhcnJpb3JzNSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuS4jeimgeWWgumjn+eMtOWtkCIsCiAgICAgICAgICAgICAgICB2OiAiTm90RmVlZE1vbmtleXMiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLlj6TliZHlpYfosK0zIiwKICAgICAgICAgICAgICAgIHY6ICJHdUppYW5xaXRhbjMiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLliZHlo6siLAogICAgICAgICAgICAgICAgdjogIktlbnNoaUpTIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAiR1JJUyIsCiAgICAgICAgICAgICAgICB2OiAiR1JJUyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuWPpOWJkeWlh+iwre+8muawuOWknCIsCiAgICAgICAgICAgICAgICB2OiAiZ3VqaWFueW9uZ3llIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi5rC45oGS6L6557yYIiwKICAgICAgICAgICAgICAgIHY6ICJFZGdlRXRlcm5pdHkiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICJCZWxvdyIsCiAgICAgICAgICAgICAgICB2OiAiQmVsb3ciCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLlvanombnlnaDlhaUiLAogICAgICAgICAgICAgICAgdjogIklyaXNGYWxsIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi5Zec6KGA5Y2wIiwKICAgICAgICAgICAgICAgIHY6ICJCbG9vZHlTcGVsbCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuWFveS6uuW/hemhu+atuzMiLAogICAgICAgICAgICAgICAgdjogIk9yY3NEaWUzIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi54uZ5Ye757K+6IuxVlIiLAogICAgICAgICAgICAgICAgdjogIlNuaXBlckVsaXRlVlIiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLpgZflv5jkuYvln44iLAogICAgICAgICAgICAgICAgdjogIkZvcmdvdENpdHkiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICJMYXN0IFN0b3AiLAogICAgICAgICAgICAgICAgdjogIkxhc3RTdG9wIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi6L6555WM5LmL5aSWIiwKICAgICAgICAgICAgICAgIHY6ICJPdXRvZkxpbmUiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLku47lhpsiLAogICAgICAgICAgICAgICAgdjogImpvaW50aGVhcm15IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi55+z54KJIiwKICAgICAgICAgICAgICAgIHY6ICJTdG9uZWhlYXJ0aCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIueLgueDrei/kOi+kzIiLAogICAgICAgICAgICAgICAgdjogIlRyYW5zcG9ydEZldmVyMiIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuacuueUsuaImOWjqzUiLAogICAgICAgICAgICAgICAgdjogIk1lY2hXYXJyaW9yNSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIlBJQ08gUEFSSyIsCiAgICAgICAgICAgICAgICB2OiAiUElDT1BBUksiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLlhYnmmI7orrDlv4bvvJrml6DpmZAiLAogICAgICAgICAgICAgICAgdjogIkJyaWdodG1lbW9yeSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuenmOmmhueWkei4qiIsCiAgICAgICAgICAgICAgICB2OiAiSGVhdmVuRHVzdCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuS+oOebl+WFrOWPuCIsCiAgICAgICAgICAgICAgICB2OiAiUm9ndWVDb21wYW55IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi6Iux6ZuE5Lyg6K+077ya5Yib5LmL6L2o6L+5IiwKICAgICAgICAgICAgICAgIHY6ICJIYWppbWFyaU5PS2lzZWtpIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi5oiY5Zyw57O75YiXIiwKICAgICAgICAgICAgICAgIHY6ICJCYXR0bGVmaWVsIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi5aGe5bCU6L6+5Lyg6K+077ya5aSp56m65LmL5YmRSEQiLAogICAgICAgICAgICAgICAgdjogIlNreXdhcmRTd29yZCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuWwmOWfg+W8guWPmCIsCiAgICAgICAgICAgICAgICB2OiAiR1JJTUUiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLlvILlvaLvvJrngavlipvlsI/pmJ/nsr7oi7EiLAogICAgICAgICAgICAgICAgdjogIkZpcmV0ZWFtRWxpdGUiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICIxMuWIhumSnyIsCiAgICAgICAgICAgICAgICB2OiAiVHdlbHZlTWludXRlcyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuS5neWNgeWFreWPt+WFrOi3ryIsCiAgICAgICAgICAgICAgICB2OiAiUm9hZDk2IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAiRk9SRUNMT1NFRCIsCiAgICAgICAgICAgICAgICB2OiAiRk9SRUNMT1NFRCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIlJpTVMgUmFjaW5nIiwKICAgICAgICAgICAgICAgIHY6ICJSaU1TUmFjaW5nIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi6ZKi6ZOB5LmL5bC+IiwKICAgICAgICAgICAgICAgIHY6ICJUYWlsc29mSXJvbiIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuWJkeS+oOWbviIsCiAgICAgICAgICAgICAgICB2OiAiSmlhblhpYVR1IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi5a6h5Yik5LmL6YCdIiwKICAgICAgICAgICAgICAgIHY6ICJMb3N0anVkZ21lbnQiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLluJ3lm73npZ7or50iLAogICAgICAgICAgICAgICAgdjogIm15dGhvZmVtcGlyZXMiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLoib7lsJTnmbvms5Xnjq8iLAogICAgICAgICAgICAgICAgdjogIkVMREVOUklORyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuaegemZkOernumAn++8muWcsOW5s+e6vzUiLAogICAgICAgICAgICAgICAgdjogIkZvcnphSG9yaXpvbjUiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLkvb/lkb3lj6zllKTns7vliJciLAogICAgICAgICAgICAgICAgdjogIkNBTExPRkRVVFlDT0QiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLnvZHlkKfmqKHmi5/lmagiLAogICAgICAgICAgICAgICAgdjogIkludGVybmV0Q1MiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICJUaGUgQW5hY3J1c2lzIiwKICAgICAgICAgICAgICAgIHY6ICJUaGVBbmFjcnVzaXMiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLmtanliqvliY3lpJUiLAogICAgICAgICAgICAgICAgdjogIlRoZURheUJlZm9yZSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuaWh+Wtl+a4uOaIjyIsCiAgICAgICAgICAgICAgICB2OiAiV29yZEdhbWUiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLmtojpgJ3nmoTlhYnoipIyIiwKICAgICAgICAgICAgICAgIHY6ICJEeWluZ0xpZ2h0MiIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuaXoOS4u+S5i+WcsDMiLAogICAgICAgICAgICAgICAgdjogIkJvcmRlcmxhbmRzMyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuaImOelnu+8muivuOelnum7hOaYjyIsCiAgICAgICAgICAgICAgICB2OiAiR29kb2ZXYXJSYWduYXJvayIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIua1t+S4iueLvOS6uuadgCIsCiAgICAgICAgICAgICAgICB2OiAiRHJlYWRIdW5nZXIiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLkvqDkuYLooYzvvJrmtarov7nlpKnmtq8iLAogICAgICAgICAgICAgICAgdjogIlhJQVlJWElORyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuacgOe7iOW5u+aDs++8mui1t+a6kCIsCiAgICAgICAgICAgICAgICB2OiAiU1RSQU5HRVJPRlBBUkFESVNFIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAiSG9yZGVDb3JlIiwKICAgICAgICAgICAgICAgIHY6ICJIb3JkZUNvcmUiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLlj4zlrZDmmJ/vvJrnm5vmsJTlh4zkuroiLAogICAgICAgICAgICAgICAgdjogIllvdW5nU291bHMiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICJJbmRpZXPigJkgTGllcyIsCiAgICAgICAgICAgICAgICB2OiAiSW5kaWVzTGllcyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIkRlY2sgb2YgQXNoZXMiLAogICAgICAgICAgICAgICAgdjogIkRlY2tvZkFzaGVzIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi5pif56m6IiwKICAgICAgICAgICAgICAgIHY6ICJTdGFyZmllbGQiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICJJbHlzaWEiLAogICAgICAgICAgICAgICAgdjogIklseXNpYSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIlByb2plY3QgUSIsCiAgICAgICAgICAgICAgICB2OiAiUHJvamVjdFEiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICJQdW1tZWwgUGFydHkiLAogICAgICAgICAgICAgICAgdjogIlB1bW1lbFBhcnR5IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAiSG9sb21lbnRvIiwKICAgICAgICAgICAgICAgIHY6ICJIb2xvbWVudG8iCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICJPdmVycHJpbWUiLAogICAgICAgICAgICAgICAgdjogIk92ZXJwcmltZSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuajruael+S5i+WtkCIsCiAgICAgICAgICAgICAgICB2OiAiU29uc09mVGhlRm9yZXN0IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi5byI5LuZ54mMIiwKICAgICAgICAgICAgICAgIHY6ICJ5aXhpYW5wYWkiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLlpJzml4/ltJvotbciLAogICAgICAgICAgICAgICAgdjogIlZSaXNpbmciCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLnvZfpqazlpI3lhbQiLAogICAgICAgICAgICAgICAgdjogIlJvbWFuUmVuYWlzc2FuY2UiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLokKTngavnqoHlh7siLAogICAgICAgICAgICAgICAgdjogIkxvc3RMaWdodCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIkhpZ2ggb24gTGlmZSIsCiAgICAgICAgICAgICAgICB2OiAiSGlnaG9uTGlmZSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuWMueivuuabueeahOiwjuiogCIsCiAgICAgICAgICAgICAgICB2OiAiTGllc29mUCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIklzb256byIsCiAgICAgICAgICAgICAgICB2OiAiSXNvbnpvIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi55if55ar5Lyg6K+077ya5a6J6a2C5puyIiwKICAgICAgICAgICAgICAgIHY6ICJSZXF1aWVtIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi5ryC5rOK54mn5q2MIiwKICAgICAgICAgICAgICAgIHY6ICJXYW5kZXJpbmdWaWxsYWdlIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi5aGe5bCU6L6+5Lyg6K+077ya546L5Zu95LmL5rOqIiwKICAgICAgICAgICAgICAgIHY6ICJURUFSU0tJTkdET00iCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLnoLTnoo7nur8iLAogICAgICAgICAgICAgICAgdjogIlNoYXR0ZXJsaW5lIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi5Y2n6b6Z77ya6IuN5aSp6Zmo6JC9IiwKICAgICAgICAgICAgICAgIHY6ICJXb2xvbmciCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLljaHlupPov5zlj6TlsIHljbAiLAogICAgICAgICAgICAgICAgdjogIktBS1UiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLljp/lrZDkuYvlv4MiLAogICAgICAgICAgICAgICAgdjogIkF0b21pY0hlYXJ0IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAiV2FyaGF2ZW4iLAogICAgICAgICAgICAgICAgdjogIldhcmhhdmVuIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi5a6d5Y+v5qKm77ya5pyxL+e0qyIsCiAgICAgICAgICAgICAgICB2OiAiU2NhcmxldGFuZFZpb2xldCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIkV2ZXJjb3JlIEhlcm9lcyIsCiAgICAgICAgICAgICAgICB2OiAiRXZlcmNvcmVIZXJvZXMiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLngbXprYLnn7PlubjlrZjogIUiLAogICAgICAgICAgICAgICAgdjogIlNvdWxzdG9uZVN1cnZpdm9ycyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuS4u+acuuS4gOi1t+eciyIsCiAgICAgICAgICAgICAgICB2OiAiemp5cWsiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLnpL7kuqTkupLliqjmuLjmiI8iLAogICAgICAgICAgICAgICAgdjogIlNKSERZWCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIui9ruWbnuS/ruS7mei3ryIsCiAgICAgICAgICAgICAgICB2OiAibGh4eGwiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICJEaXZpbmUgS25vY2tvdXQiLAogICAgICAgICAgICAgICAgdjogIkRpdmluZUtub2Nrb3V0IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi6Iez5pqX5pe25Yi7IiwKICAgICAgICAgICAgICAgIHY6ICJEYXJrYW5kRGFya2VyIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi6Ieq5p2A5bCP6Zif77ya5p2A5q275q2j5LmJ6IGU55ufIiwKICAgICAgICAgICAgICAgIHY6ICJLVEpMIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAiWERlZmlhbnQiLAogICAgICAgICAgICAgICAgdjogIlhEZWZpYW50IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAiV2FybGFuZGVyIiwKICAgICAgICAgICAgICAgIHY6ICJXYXJsYW5kZXIiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICJTY2FycyBBYm92ZSIsCiAgICAgICAgICAgICAgICB2OiAiU2NhcnNBYm92ZSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIlBhY2lmaWMgRHJpdmUiLAogICAgICAgICAgICAgICAgdjogIlBhY2lmaWNEcml2ZSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuacgOe7iOW5u+aDszE2IiwKICAgICAgICAgICAgICAgIHY6ICJGaW5hbEZhbnRhc3lYVkkiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLooZflpLTpnLjnjosiLAogICAgICAgICAgICAgICAgdjogIlN0cmVldEZpZ2h0ZXIiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICJUY2hpYSIsCiAgICAgICAgICAgICAgICB2OiAiVGNoaWEiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLlpKfkvqDnq4vlv5fkvKAiLAogICAgICAgICAgICAgICAgdjogIkhlcm9zQWR2ZW50dXJlIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi5pyA5ZCO57qq5YWDIiwKICAgICAgICAgICAgICAgIHY6ICJMYXN0RXBvY2giCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLprZTmiJLvvJrlkpXlmZwiLAogICAgICAgICAgICAgICAgdjogIkdvbGx1bSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIlByaXNvbiBMaWZlIDIiLAogICAgICAgICAgICAgICAgdjogIlByaXNvbkxpZmUiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICJJbm5jaGFudGVkIiwKICAgICAgICAgICAgICAgIHY6ICJJbm5jaGFudGVkIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi5bm75YW95biV6bKBIiwKICAgICAgICAgICAgICAgIHY6ICJQYWx3b3JsZCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIkxpZmUgYnkgWW91IiwKICAgICAgICAgICAgICAgIHY6ICJMaWZlYnlZb3UiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICJFcmVzeXMiLAogICAgICAgICAgICAgICAgdjogIkVyZXN5cyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIlBheCBEZWkiLAogICAgICAgICAgICAgICAgdjogIlBheERlaSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIlRlcmF2aXQiLAogICAgICAgICAgICAgICAgdjogIlRlcmF2aXQiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICJDYWxpYmVyIiwKICAgICAgICAgICAgICAgIHY6ICJDYWxpYmVyIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi5rKZ55uS5LiO5Ymv5pys77ya6Iux5YuH5LmL5ZywIiwKICAgICAgICAgICAgICAgIHY6ICJIZXJvc0xhbmQiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICJDb3JpZGRlbiIsCiAgICAgICAgICAgICAgICB2OiAiQ29yaWRkZW4iCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICJVbnJlY29yZCIsCiAgICAgICAgICAgICAgICB2OiAiVW5yZWNvcmQiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICJEZWR1Y3RvIDIiLAogICAgICAgICAgICAgICAgdjogIkRlZHVjdG8yIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi6KOF55Sy5qC45b+DNu+8muWig+eVjOWkqeeBqyIsCiAgICAgICAgICAgICAgICB2OiAiQXJtb3JlZENvcmUiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICJXYXlmaW5kZXIiLAogICAgICAgICAgICAgICAgdjogIldheWZpbmRlciIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIui/t+eYtOe6quS6iyIsCiAgICAgICAgICAgICAgICB2OiAiTWlhc21hQ2hyb25pY2xlcyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIk1pbmlnYW1lIE1hZG5lc3MiLAogICAgICAgICAgICAgICAgdjogIk1pbmlnYW1lTWFkbmVzcyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuS4pemYteS7peW+hSIsCiAgICAgICAgICAgICAgICB2OiAiUmVhZHlvck5vdCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuS4iuWPpOWNt+i9tE9MIiwKICAgICAgICAgICAgICAgIHY6ICJUaGVFbGRlclNjcm9sbHMiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLlvLnluZXpo47mmrQiLAogICAgICAgICAgICAgICAgdjogImRtZmIiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLlrablm63mnoTmg7PlrrYiLAogICAgICAgICAgICAgICAgdjogIlNjaG9vbEhvbWVyb29tIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi5byI5LuZ54mM5omL5ri4IiwKICAgICAgICAgICAgICAgIHY6ICJZaVhpYW5tIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAiSnVzYW50IiwKICAgICAgICAgICAgICAgIHY6ICJKVVNBTlQiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLmvZzmsLTlkZjmiLTlpKsiLAogICAgICAgICAgICAgICAgdjogIkRBVkVUSEVESVZFUiIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIkdZTFQiLAogICAgICAgICAgICAgICAgdjogIkdZTFQiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLntKLliKnmlq/loKEiLAogICAgICAgICAgICAgICAgdjogIkZvcnRTb2xpcyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIlRvd2VyYm9ybmUiLAogICAgICAgICAgICAgICAgdjogIlRvd2VyYm9ybmUiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICIzMyBJbW1vcnRhbHMiLAogICAgICAgICAgICAgICAgdjogIjMzSW1tb3J0YWxzIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAiV2lsZG1lbmRlciIsCiAgICAgICAgICAgICAgICB2OiAiV2lsZG1lbmRlciIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIkhvdyAyIEVzY2FwZSIsCiAgICAgICAgICAgICAgICB2OiAiSG93MkVzY2FwZSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIueip+iTneW5u+aDs++8mlJlbGluayIsCiAgICAgICAgICAgICAgICB2OiAiUmVsaW5rIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi5ryr5aiB6JyY6Jub5L6gMiIsCiAgICAgICAgICAgICAgICB2OiAiTWFydmVsU3BpZGVybWFuMiIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIueOi+adg+S4juiHqueUsSIsCiAgICAgICAgICAgICAgICB2OiAiVGhyb25lYW5kTGliZXJ0eSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuWNmuW+t+S5i+mXqDMiLAogICAgICAgICAgICAgICAgdjogIkJHMyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIkV0ZXJuaWdodHMiLAogICAgICAgICAgICAgICAgdjogIkV0ZXJuaWdodHMiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICJQcm9qZWN0IEYiLAogICAgICAgICAgICAgICAgdjogIlByb2plY3RGIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAiQmFsZE1hbiBDbGltYnMgVXAiLAogICAgICAgICAgICAgICAgdjogIkJhbGRNYW5DbGltYnNVcCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIkZDMjQiLAogICAgICAgICAgICAgICAgdjogIkZDMjQiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICJOQkEgMksyNCIsCiAgICAgICAgICAgICAgICB2OiAiTkJBMksyNCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuayieayoeS5i+WcsCIsCiAgICAgICAgICAgICAgICB2OiAiU3Vua2VubGFuZCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuS4g+aXpeS4lueVjCIsCiAgICAgICAgICAgICAgICB2OiAicXJzaiIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIumbvumUgeeOi+WbvSIsCiAgICAgICAgICAgICAgICB2OiAid3N3ZyIKICAgICAgICAgICAgfV0KICAgICAgICB9XSwKICAgICAgICBzeXh4OiBbewogICAgICAgICAgICBrZXk6ICJjYXRlSWQiLAogICAgICAgICAgICBuYW1lOiAi5YiG57G7IiwKICAgICAgICAgICAgdmFsdWU6IFt7CiAgICAgICAgICAgICAgICBuOiAi5YWD5qKm5LmL5pifIiwKICAgICAgICAgICAgICAgIHY6ICJZTVpYIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi546L6ICF6I2j6ICAIiwKICAgICAgICAgICAgICAgIHY6ICJ3enJ5IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAiTE9M5omL5ri4IiwKICAgICAgICAgICAgICAgIHY6ICJMT0xNIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi5bSp5Z2P77ya5pif56m56ZOB6YGTIiwKICAgICAgICAgICAgICAgIHY6ICJiaHhxdGQiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLlkozlubPnsr7oi7EiLAogICAgICAgICAgICAgICAgdjogImhwankiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLmmpfljLrnqoHlm7QiLAogICAgICAgICAgICAgICAgdjogImFxdHciCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLom4vku5TmtL7lr7kiLAogICAgICAgICAgICAgICAgdjogImR6cGQiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLpq5jog73oi7Hpm4QiLAogICAgICAgICAgICAgICAgdjogImdueXgiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLlubvloZQiLAogICAgICAgICAgICAgICAgdjogImh0IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi54Gr5b2x5b+N6ICFIiwKICAgICAgICAgICAgICAgIHY6ICJoeXJ6IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAiQ09E5omL5ri4IiwKICAgICAgICAgICAgICAgIHY6ICJzbXpoc3kiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICJsb2znlLXnq57nu4/nkIYiLAogICAgICAgICAgICAgICAgdjogIkVHQU1FIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAiRE5G5omL5ri4IiwKICAgICAgICAgICAgICAgIHY6ICJtZG5mIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi6YeR6ZOy6ZOy5LmL5oiYIiwKICAgICAgICAgICAgICAgIHY6ICJKR0FNRSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuWkqeWIgOaJi+a4uCIsCiAgICAgICAgICAgICAgICB2OiAidGRzeSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuWOn+elniIsCiAgICAgICAgICAgICAgICB2OiAieXVhbnNoZW4iCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLoiKrmtbfnjovng63ooYDoiKrnur8iLAogICAgICAgICAgICAgICAgdjogIkhIV1JYSFgiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLpgIbmsLTlr5LmiYvmuLgiLAogICAgICAgICAgICAgICAgdjogIk5TSE0iCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLkuIflm73op4nphpIiLAogICAgICAgICAgICAgICAgdjogIndnangiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLpuL/lm77kuYvkuIsiLAogICAgICAgICAgICAgICAgdjogImh0engiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLmrKLkuZDpurvlsIYiLAogICAgICAgICAgICAgICAgdjogIkhMTUoiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLnjovogIXmqKHmi5/miJgiLAogICAgICAgICAgICAgICAgdjogInd6cnBnIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi5Lit5Zu96LGh5qOLIiwKICAgICAgICAgICAgICAgIHY6ICJaR1hRIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi5aSp6LCV5omL5ri4IiwKICAgICAgICAgICAgICAgIHY6ICJ0eXN5IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi5beF5bOw5Z2m5YWLIiwKICAgICAgICAgICAgICAgIHY6ICJERlRLIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi5paw5ri45Lit5b+DIiwKICAgICAgICAgICAgICAgIHY6ICJ4eXp4IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi54Ot6Zeo5omL5ri4IiwKICAgICAgICAgICAgICAgIHY6ICJwaG9uZSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuaipuW5u+aJi+a4uCIsCiAgICAgICAgICAgICAgICB2OiAibWh4eSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIlFR6aOe6L2mIiwKICAgICAgICAgICAgICAgIHY6ICJxcWZjc3kiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLnrKzkupTkurrmoLwiLAogICAgICAgICAgICAgICAgdjogImR3cmciCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLmrKLkuZDmlpflnLDkuLsiLAogICAgICAgICAgICAgICAgdjogImhsZGR6IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi6I2S6YeO5Lmx5paXIiwKICAgICAgICAgICAgICAgIHY6ICJoeWxkIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi6Zi06Ziz5biIIiwKICAgICAgICAgICAgICAgIHY6ICJ5eXMiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLni7zkurrmnYAiLAogICAgICAgICAgICAgICAgdjogIkxSUyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIkpK5paX5Zyw5Li7IiwKICAgICAgICAgICAgICAgIHY6ICJqaiIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuaipuW5u+aWsOivm+S7mSIsCiAgICAgICAgICAgICAgICB2OiAibWh4engiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLooZfpnLjlr7nlhrMiLAogICAgICAgICAgICAgICAgdjogImpiZGoiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLmnLrliqjpg73luILpmL/lsJTms5UiLAogICAgICAgICAgICAgICAgdjogImpkZHNhZWYiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLkuIDkurrkuYvkuIsiLAogICAgICAgICAgICAgICAgdjogInlyengiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLlpJrlpJroh6rotbDmo4siLAogICAgICAgICAgICAgICAgdjogInp6cSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuW0qeWdjzMiLAogICAgICAgICAgICAgICAgdjogImJoeGwiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLpo47kupHlspvooYzliqgiLAogICAgICAgICAgICAgICAgdjogImZ5ZHhkIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi5LqR5ri45oiPIiwKICAgICAgICAgICAgICAgIHY6ICJjbG91ZGdhbWUiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLot5Hot5HmiYvmuLgiLAogICAgICAgICAgICAgICAgdjogIlBQS0RDU1kiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLnjoflnJ/kuYvmu6giLAogICAgICAgICAgICAgICAgdjogInN0emIiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLngYznr67pq5jmiYsiLAogICAgICAgICAgICAgICAgdjogImdsZ3MiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLnmoflrqTmiJjkuokiLAogICAgICAgICAgICAgICAgdjogImhzenoiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLlv43ogIXlv4XpobvmrbszIiwKICAgICAgICAgICAgICAgIHY6ICJyemJ4czMiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLnpZ7mraY05omL5ri4IiwKICAgICAgICAgICAgICAgIHY6ICJzdzMiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLmoqblubvmqKHmi5/miJgiLAogICAgICAgICAgICAgICAgdjogIm1obW56IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi5a6e5Ya16Laz55CDIiwKICAgICAgICAgICAgICAgIHY6ICJza3pxIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi5YmR5LiO6L+c5b6BIiwKICAgICAgICAgICAgICAgIHY6ICJqeXl6IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi6Iiq5rW3546L77ya54eD54On5oSP5b+XIiwKICAgICAgICAgICAgICAgIHY6ICJoaHdyc3l6IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi55CD55CD5aSn5L2c5oiYIiwKICAgICAgICAgICAgICAgIHY6ICJxcWR6eiIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuiLsembhOadgCIsCiAgICAgICAgICAgICAgICB2OiAieXhzIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi6a2U5Z+f5Y+j6KKL54mIIiwKICAgICAgICAgICAgICAgIHY6ICJteWtkYiIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuWPo+iii+aWsOaXheeoiyIsCiAgICAgICAgICAgICAgICB2OiAiS0RYTEMiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLliZHnvZEz77ya5oyH5bCW5rGf5rmWIiwKICAgICAgICAgICAgICAgIHY6ICJqdzN6ampoIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi6YOo6JC95Yay56qBIiwKICAgICAgICAgICAgICAgIHY6ICJibGN0IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi5YmR5LiO5a625ZutIiwKICAgICAgICAgICAgICAgIHY6ICJqeWp5IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi5paw56yR5YKy5rGf5rmWIiwKICAgICAgICAgICAgICAgIHY6ICJ4eGFqaCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIueMq+WSjOiAgem8oCIsCiAgICAgICAgICAgICAgICB2OiAibWhscyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIueMjuS6uuaJi+a4uCIsCiAgICAgICAgICAgICAgICB2OiAibHJsciIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuaYjuaXpeS5i+WQjiIsCiAgICAgICAgICAgICAgICB2OiAibXJ6aCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuW9seS5i+ivlyIsCiAgICAgICAgICAgICAgICB2OiAieXpzIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi5Yaz5oiY5bmz5a6J5LqsIiwKICAgICAgICAgICAgICAgIHY6ICJqenBhaiIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIumtguaWl+e9l+W9kuadpSIsCiAgICAgICAgICAgICAgICB2OiAiRExIR0wiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLotKrlkIPom4flpKfkvZzmiJgiLAogICAgICAgICAgICAgICAgdjogInRjc2R6eiIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuWco+aWl+Wjq+aYn+efoiIsCiAgICAgICAgICAgICAgICB2OiAic2RzeHMiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLprZTlipvlrp3otJ3miYvmuLgiLAogICAgICAgICAgICAgICAgdjogIm1sYmJzeSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuWTiOWIqeazoueJue+8mumtlOazleiniemGkiIsCiAgICAgICAgICAgICAgICB2OiAiSGFycnlQb3R0ZXIiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLmiYvmuLjmjqjlub8iLAogICAgICAgICAgICAgICAgdjogInJtc3kiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLprZTngbXlj6zllKQiLAogICAgICAgICAgICAgICAgdjogIm1semgiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLpppnogqDmtL7lr7kiLAogICAgICAgICAgICAgICAgdjogInhjcGQiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLov7fkvaDkuJbnlYwiLAogICAgICAgICAgICAgICAgdjogIk1OU0oiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLojZLph47ooYzliqgiLAogICAgICAgICAgICAgICAgdjogImh5eGQiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLlpKfor53opb/muLgy5Y+j6KKL54mIIiwKICAgICAgICAgICAgICAgIHY6ICJkaHh5MmtkYiIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIkZD6Laz55CD5LiW55WMIiwKICAgICAgICAgICAgICAgIHY6ICJGQ1pRU0oiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLooZfnr64iLAogICAgICAgICAgICAgICAgdjogImpsIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi5LiA6LW35p2l5o2J5aaWIiwKICAgICAgICAgICAgICAgIHY6ICJ5aXFpbGFpemh1b3lhbyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuaYjuaXpeaWueiInyIsCiAgICAgICAgICAgICAgICB2OiAibXJmeiIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuiHqueUseW5u+aDs+aJi+a4uCIsCiAgICAgICAgICAgICAgICB2OiAienloeCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuS4gOaipuaxn+a5liIsCiAgICAgICAgICAgICAgICB2OiAieW1qaCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIueOi+eJjOaImOS6ie+8muaWh+aYjumHjeWQryIsCiAgICAgICAgICAgICAgICB2OiAid21jcSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuWujOe+juS4lueVjOaJi+a4uCIsCiAgICAgICAgICAgICAgICB2OiAid21zanN5IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi5ouz55qHOThPTCIsCiAgICAgICAgICAgICAgICB2OiAia29mOTgiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLotZvlsJTlj7ciLAogICAgICAgICAgICAgICAgdjogInNyaCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIueMjumtguiniemGkiIsCiAgICAgICAgICAgICAgICB2OiAibGhqeCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuS7meWig+S8oOivtCIsCiAgICAgICAgICAgICAgICB2OiAieGpjcyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIumAg+i3keWQp+WwkeW5tCIsCiAgICAgICAgICAgICAgICB2OiAidHBic24iCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLnn7Plmajml7bku6MiLAogICAgICAgICAgICAgICAgdjogInNxc2QiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLoi7HprYLkuYvliIPlj6PooovniYgiLAogICAgICAgICAgICAgICAgdjogInloIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi5ouJ57uT5bCUIiwKICAgICAgICAgICAgICAgIHY6ICJsamUiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLlgKnlpbPlub3prYLmiYvmuLgiLAogICAgICAgICAgICAgICAgdjogInFueWhzeSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuWGs+aWl+S5i+WfjjIiLAogICAgICAgICAgICAgICAgdjogImpkemMyIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi5Lyg5aWH5omL5ri4IiwKICAgICAgICAgICAgICAgIHY6ICJjcXN5IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi5qyi5LmQ5Y2H57qnIiwKICAgICAgICAgICAgICAgIHY6ICJobHNqIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi6ZuA6a2CIiwKICAgICAgICAgICAgICAgIHY6ICJNYWpzb3VsIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi5LqM5qyh5YWD5omL5ri4IiwKICAgICAgICAgICAgICAgIHY6ICJlY3lzeSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuWkqem+meWFq+mDqG9ubGluZSIsCiAgICAgICAgICAgICAgICB2OiAidGlhbmxvbmdiYWJ1b25saW5lIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi5b6B6YCUMuaJi+a4uCIsCiAgICAgICAgICAgICAgICB2OiAienQyc3kiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLkuIfnjovkuYvnjoszRCIsCiAgICAgICAgICAgICAgICB2OiAid3d6dzNEIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi5q2m5p6X5aSW5LygIiwKICAgICAgICAgICAgICAgIHY6ICJ3bHd6IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi5oiR5Y+rTVQ0IiwKICAgICAgICAgICAgICAgIHY6ICJNVDQiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLlhYPmsJTpqpHlo6siLAogICAgICAgICAgICAgICAgdjogInl1YW5xaXFpc2hpIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi57qi6K2mT0zmiYvmuLgiLAogICAgICAgICAgICAgICAgdjogImhqb2xzeSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuakjeeJqeWkp+aImOWDteWwuOaJi+a4uCIsCiAgICAgICAgICAgICAgICB2OiAiWldEWkpTIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi6b6Z5LmL6LC35omL5ri4IiwKICAgICAgICAgICAgICAgIHY6ICJsemdzeSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuWIm+mAoOS4jumtlOazlSIsCiAgICAgICAgICAgICAgICB2OiAiY2N5bWYiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLlooPnlYwt5q2756We5r+A5paXIiwKICAgICAgICAgICAgICAgIHY6ICJqanNzamQiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLlpYfov7nop4nphpIiLAogICAgICAgICAgICAgICAgdjogInFqangiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLlhYnpgYciLAogICAgICAgICAgICAgICAgdjogInNreWd5IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi5ri45oiP546L77ya5Yaz5paX6ZO+5o6lIiwKICAgICAgICAgICAgICAgIHY6ICJ5eHdqZGxqIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi5beF5bOw5oiY6IiwIiwKICAgICAgICAgICAgICAgIHY6ICJkZnpqIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi57ud5LiW5oiY6a2CIiwKICAgICAgICAgICAgICAgIHY6ICJqc3poIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi5a+75LuZIiwKICAgICAgICAgICAgICAgIHY6ICJ4dW54aWFuIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi5aSp5aSp6LGh5qOLIiwKICAgICAgICAgICAgICAgIHY6ICJ0dHhxIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi546L5Zu957qq5YWDIiwKICAgICAgICAgICAgICAgIHY6ICJ3Z2p5IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi6b6Z5peP5bm75oOzIiwKICAgICAgICAgICAgICAgIHY6ICJsemh4IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi5YmR572RM+aMh+WwluWvueW8iCIsCiAgICAgICAgICAgICAgICB2OiAiandzempkeSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuWJkeS+oOaDhee8mDLvvJrliZHmrYzooYwiLAogICAgICAgICAgICAgICAgdjogImppYW54aWFxaW5neXVhbiIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuS4ieWbveadgOenu+WKqOeJiCIsCiAgICAgICAgICAgICAgICB2OiAiU0dTU1kiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLnvZfluIPkuZDmgJ0iLAogICAgICAgICAgICAgICAgdjogIlJvYmxveCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIui2s+eQg+aJi+a4uCIsCiAgICAgICAgICAgICAgICB2OiAienFzeSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuaciOWchuS5i+WknCIsCiAgICAgICAgICAgICAgICB2OiAieXl6eSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIueOi+eJjOaImOS6iSIsCiAgICAgICAgICAgICAgICB2OiAid3B6eiIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuenpuaXtuaYjuaciOS4lueVjCIsCiAgICAgICAgICAgICAgICB2OiAicXNteXNqIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi54us56uL5omL5ri4IiwKICAgICAgICAgICAgICAgIHY6ICJkbHN5IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi56We6YO95aSc6KGM5b2VIiwKICAgICAgICAgICAgICAgIHY6ICJzZHl4bCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIumjjuS5i+Wkp+mZhiIsCiAgICAgICAgICAgICAgICB2OiAiZnpkbCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIumHkeWxnuWvueWGsyIsCiAgICAgICAgICAgICAgICB2OiAianNkaiIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIui9qei+leWJkem+meiInuS6keWxsSIsCiAgICAgICAgICAgICAgICB2OiAieHlqbHd5cyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuW+ruS5kOaji+eJjCIsCiAgICAgICAgICAgICAgICB2OiAiV0xRUCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIui+kOWwhO+8mumBv+mavuaJgE9ubGluZSIsCiAgICAgICAgICAgICAgICB2OiAiZnNibnNvbmxpbmUiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLooZfnr64yIiwKICAgICAgICAgICAgICAgIHY6ICJqbDIiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLmnoHlhYnorqHliJIiLAogICAgICAgICAgICAgICAgdjogImpnamgiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLkuI3oia/kurozIiwKICAgICAgICAgICAgICAgIHY6ICJibHIzIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi6ZWH6a2U5puy5omL5ri4IiwKICAgICAgICAgICAgICAgIHY6ICJ6bXEiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLkvKDlpYfkuJbnlYzmiYvmuLgiLAogICAgICAgICAgICAgICAgdjogImNxc2pzeSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuawuOaBkue6quWFgyIsCiAgICAgICAgICAgICAgICB2OiAieWhqeSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuS5seS4lueOi+iAhSIsCiAgICAgICAgICAgICAgICB2OiAibHN3eiIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuaVsOeggeWunei0ne+8muebuOmBhyIsCiAgICAgICAgICAgICAgICB2OiAic21iYnh5IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi5LuZ5YmRNCIsCiAgICAgICAgICAgICAgICB2OiAieGpxeHo0IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi6ZW/5a6J5bm75LiW57uYIiwKICAgICAgICAgICAgICAgIHY6ICJjYWhzaCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuevrueQg+aJi+a4uCIsCiAgICAgICAgICAgICAgICB2OiAibHFzeSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIumsvOazoy3lt4Xls7DkuYvmiJgiLAogICAgICAgICAgICAgICAgdjogImdxZGZ6eiIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuWwhOWHu+exu+aJi+a4uCIsCiAgICAgICAgICAgICAgICB2OiAicXRzeSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuWRvei/kOatjOWnrCIsCiAgICAgICAgICAgICAgICB2OiAibXlnaiIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuWFieaYjuWkp+mZhiIsCiAgICAgICAgICAgICAgICB2OiAiZ21kbCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuaal+m7keS4jeacvSIsCiAgICAgICAgICAgICAgICB2OiAiZGlhYmxvaW1tb3J0YWwiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLmlrDnpZ7prZTlpKfpmYYiLAogICAgICAgICAgICAgICAgdjogInhzbWRsIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi5YWs5Li76L+e57uTUmU6RGl2ZSIsCiAgICAgICAgICAgICAgICB2OiAiZ3psaiIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuS4ieWbveW/l+aImOeVpeeJiCIsCiAgICAgICAgICAgICAgICB2OiAic2d6emxiIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi5aSp5Zyw5Yqr77ya5bm95Z+O5YaN5Li0IiwKICAgICAgICAgICAgICAgIHY6ICJ0ZGoiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICJEaXNvcmRlciIsCiAgICAgICAgICAgICAgICB2OiAiRGlzb3JkZXIiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLlh7nlh7jkuJbnlYwiLAogICAgICAgICAgICAgICAgdjogImF0c2oiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLkupHkuIrln47kuYvmrYwiLAogICAgICAgICAgICAgICAgdjogInlzY3pnIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi5LqU5a2Q5qOLIiwKICAgICAgICAgICAgICAgIHY6ICJ3enEiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLlm7Tmo4siLAogICAgICAgICAgICAgICAgdjogIndxIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi5qKm5oOz5paw5aSn6ZmGIiwKICAgICAgICAgICAgICAgIHY6ICJteHhkbCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuS4ieWbveW/l+W5u+aDs+Wkp+mZhu+8muWbveWIm+WKoOW8uueJiCIsCiAgICAgICAgICAgICAgICB2OiAic2d6aHhkbCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuWFqOeQg+ihjOWKqCIsCiAgICAgICAgICAgICAgICB2OiAicXF4ZCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuivm+S7meaJi+a4uCIsCiAgICAgICAgICAgICAgICB2OiAienhzeSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuWmhOaDs+Wxsea1tyIsCiAgICAgICAgICAgICAgICB2OiAid3hzaCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIum7juaYjuiniemGku+8mueUn+acuiIsCiAgICAgICAgICAgICAgICB2OiAibG1qeCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIum+meS5i+iwtzLmiYvmuLgiLAogICAgICAgICAgICAgICAgdjogImx6ZzJzeSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuW6huS9meW5tCIsCiAgICAgICAgICAgICAgICB2OiAiUVlOIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi5oiR55qE5L6g5a6iIiwKICAgICAgICAgICAgICAgIHY6ICJ3ZHhrIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi5puZ5YWJ6Iux6ZuEIiwKICAgICAgICAgICAgICAgIHY6ICJzZ3l4IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi55yf5LiJ5Zu95peg5Y+M6Zy4IiwKICAgICAgICAgICAgICAgIHY6ICJ6c2d3c2IiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLlpKfor53opb/muLjmiYvmuLgiLAogICAgICAgICAgICAgICAgdjogImRoeHlzeSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuWPo+iii+i/m+WMliIsCiAgICAgICAgICAgICAgICB2OiAia2RqaCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuW8gOW/g+a2iOa2iOS5kCIsCiAgICAgICAgICAgICAgICB2OiAia3h4eGwiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLmiJjkuonmgJLlkLwiLAogICAgICAgICAgICAgICAgdjogInp6bmgiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLlv5jlt53po47ljY7lvZUiLAogICAgICAgICAgICAgICAgdjogIndjZmhsIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi5paw5YmR5L6g5oOF57yY5omL5ri4IiwKICAgICAgICAgICAgICAgIHY6ICJ4anhxeXN5IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi6YeN55Sf57uG6IOeIiwKICAgICAgICAgICAgICAgIHY6ICJjc3hiIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi5rGJ5a625rGf5rmWIiwKICAgICAgICAgICAgICAgIHY6ICJISkpIIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi5rW35bKb5aWH5YW1IiwKICAgICAgICAgICAgICAgIHY6ICJoZHFiIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi6ZKi6ZOB5Yqb6YePMiIsCiAgICAgICAgICAgICAgICB2OiAiZ3RsbDIiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLku5nliZHlpYfkvqDkvKDkuZ3ph44iLAogICAgICAgICAgICAgICAgdjogInhqcXh6ankiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLprZTln5/miYvmuLgiLAogICAgICAgICAgICAgICAgdjogIm15c3kiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLlpKfllJDml6Dlj4zmiYvmuLgiLAogICAgICAgICAgICAgICAgdjogImR0d3NzeSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuWcsOmTgei3kemFtyIsCiAgICAgICAgICAgICAgICB2OiAiZHRwayIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuaImOiIsOS4lueVjOmXquWHu+aImCIsCiAgICAgICAgICAgICAgICB2OiAiempzanNqeiIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIueLguaatOS5i+e/vCIsCiAgICAgICAgICAgICAgICB2OiAia2J6eSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuilv+a4uOWls+WEv+WbvSIsCiAgICAgICAgICAgICAgICB2OiAieHluZWciCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLlsJHlubTkuInlm73lv5ciLAogICAgICAgICAgICAgICAgdjogInNuc2d6IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi6ZKi55C05biIIiwKICAgICAgICAgICAgICAgIHY6ICJncXMiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLmqKrmiavljYPlhpsiLAogICAgICAgICAgICAgICAgdjogImhzcWoiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLoioLlpY/lpKfniIbngrgiLAogICAgICAgICAgICAgICAgdjogImp6ZGJ6IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi5Za15pav5b+r6LeRIiwKICAgICAgICAgICAgICAgIHY6ICJtc2twIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi5Y+M5a2QIiwKICAgICAgICAgICAgICAgIHY6ICJzeiIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuaipuaDs+S4lueVjDPmiYvmuLgiLAogICAgICAgICAgICAgICAgdjogIm14c2ozIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi57K+54G15LmL5aKDIiwKICAgICAgICAgICAgICAgIHY6ICJqbHpqIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi6ZWH6a2C6KGX77ya5q2m56We6LqvIiwKICAgICAgICAgICAgICAgIHY6ICJ6aGp3c3EiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLmlpfnvZflpKfpmYbvvJrmlpfnpZ7lho3kuLQiLAogICAgICAgICAgICAgICAgdjogImRsZGxkc3psIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi5paX572X5aSn6ZmG77ya5q2m6a2C6KeJ6YaSIiwKICAgICAgICAgICAgICAgIHY6ICJkbGRsd2hqeCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuaWl+e9l+Wkp+mZhjLnu53kuJbllJDpl6giLAogICAgICAgICAgICAgICAgdjogImRsZGwyanN0bSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuaImOelnuiniemGkiIsCiAgICAgICAgICAgICAgICB2OiAienNqeCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuS5neW3nuS7meWJkeS8oEg1IiwKICAgICAgICAgICAgICAgIHY6ICJqenhqemg1IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi6I2j6ICA5aSn5aSp5L2/IiwKICAgICAgICAgICAgICAgIHY6ICJyeWR0cyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuiTneaciOS8oOWlhyIsCiAgICAgICAgICAgICAgICB2OiAibHljcSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuWHoeS6uuS/ruS7meS8oOaMguacuueJiEg1IiwKICAgICAgICAgICAgICAgIHY6ICJmcnh4emdqYmg1IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi5oiR55qE5bid5Zu9SDUiLAogICAgICAgICAgICAgICAgdjogIndkZGdoNSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuebl+Wik+eslOiusCIsCiAgICAgICAgICAgICAgICB2OiAiZG1iaiIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuWJkeS4jui9ruWbniIsCiAgICAgICAgICAgICAgICB2OiAianlsaCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIua3t+ayjOi1t+a6kCIsCiAgICAgICAgICAgICAgICB2OiAiaGRxeSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuWkp+WkqeS9v+S5i+WJkSIsCiAgICAgICAgICAgICAgICB2OiAiZHRzemoiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLmiJjmlpflsJHlpbPot5HphbciLAogICAgICAgICAgICAgICAgdjogInpkc25wayIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIue7neS4luS7meeOiyIsCiAgICAgICAgICAgICAgICB2OiAianN4dyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuS4gOWIgOS8oOS4liIsCiAgICAgICAgICAgICAgICB2OiAieWRjcyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuaWl+e9l+Wkp+mZhiIsCiAgICAgICAgICAgICAgICB2OiAiZGxkbCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuegtOmbquWIgyIsCiAgICAgICAgICAgICAgICB2OiAicHhyIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAiSkrosaHmo4siLAogICAgICAgICAgICAgICAgdjogImpqeHEiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLlpKnlp6zlj5giLAogICAgICAgICAgICAgICAgdjogInRqYiIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuWJkeeOsuePkSIsCiAgICAgICAgICAgICAgICB2OiAiamxsIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi54Gr57q/57K+6IuxIiwKICAgICAgICAgICAgICAgIHY6ICJoeGp5IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi6YCg5qKm6KW/5ri4T0wiLAogICAgICAgICAgICAgICAgdjogInpteHlvbCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuWlpeWlh+S8oOivtOaJi+a4uCIsCiAgICAgICAgICAgICAgICB2OiAiYXFjc3N5IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi5oiY5paX5ZCn6b6Z6a2CIiwKICAgICAgICAgICAgICAgIHY6ICJ6ZGJsaCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuWJkeW8gOS7memXqCIsCiAgICAgICAgICAgICAgICB2OiAiamt4bSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuacuueUsueIseS4veS4nSIsCiAgICAgICAgICAgICAgICB2OiAiamphbHMiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLni7zkurrlr7nlhrMiLAogICAgICAgICAgICAgICAgdjogImxyZGoiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLmnIDnu4jlubvmg7PvvJrli4fmsJTlkK/npLrlvZUg5bm75b2x5oiY5LqJIiwKICAgICAgICAgICAgICAgIHY6ICJoeXp6IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi6LSd5q+U5bKbIiwKICAgICAgICAgICAgICAgIHY6ICJiYmQiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLokavoiqblqIPlhYTlvJ8iLAogICAgICAgICAgICAgICAgdjogImhsd3hkIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi6YCg5qKm6KW/5ri4NCIsCiAgICAgICAgICAgICAgICB2OiAiem14eTQiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLmr5TnibnlsI/pmJ8iLAogICAgICAgICAgICAgICAgdjogImJ0eGQiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLmtYHoqIDkvqbmjqIiLAogICAgICAgICAgICAgICAgdjogImx5enQiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLlsJHlpbPliY3nur8iLAogICAgICAgICAgICAgICAgdjogInNucXgiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLpgYfop4EiLAogICAgICAgICAgICAgICAgdjogInlqIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi6ZyT6Jm55rex5riK77ya5peg6ZmQIiwKICAgICAgICAgICAgICAgIHY6ICJuaHN5d3giCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLog6HojrHkuInlm70zIiwKICAgICAgICAgICAgICAgIHY6ICJobHNnMyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuWlpeaLieaYnyIsCiAgICAgICAgICAgICAgICB2OiAiYWx4IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi5YWI5ri45LqR5ri45oiPIiwKICAgICAgICAgICAgICAgIHY6ICJHYW1lciIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIue7v+iMteS/oeS7sCIsCiAgICAgICAgICAgICAgICB2OiAibHl4eSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuicgOWxseaOjOmXqCIsCiAgICAgICAgICAgICAgICB2OiAic3N6bSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIueQg+eQg+iBlOebnyIsCiAgICAgICAgICAgICAgICB2OiAicXFsbSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIueip+iTneiIque6v+aJi+a4uCIsCiAgICAgICAgICAgICAgICB2OiAiYmxoeHN5IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAiMzAw5aSn5L2c5oiYIiwKICAgICAgICAgICAgICAgIHY6ICIzMDBkenoiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLnrKzkuIPlj7Lor5ciLAogICAgICAgICAgICAgICAgdjogImRxc3MiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLlrp3lj6/moqblpKfpm4bnu5MiLAogICAgICAgICAgICAgICAgdjogIlBva2Vtb25VTklURSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuaXoOaegeS7memAlCIsCiAgICAgICAgICAgICAgICB2OiAid2p4dCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuaxieacq+mcuOS4miIsCiAgICAgICAgICAgICAgICB2OiAiaG1ieSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIkVWReaYn+aImOWJjeWknO+8muaXoOeDrOaYn+aysyIsCiAgICAgICAgICAgICAgICB2OiAiZXZleHpxeXdqeGgiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLlsJHlpbPliY3nur8y77ya6L+95pS+IiwKICAgICAgICAgICAgICAgIHY6ICJzcTJ6ZiIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIueBq+WKm+iLj+aJk++8iFQz77yJIiwKICAgICAgICAgICAgICAgIHY6ICJUMyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuakjeeJqeWkp+aImOWDteWwuDIiLAogICAgICAgICAgICAgICAgdjogInp3ZHpqczIiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLnkIPnkIPoi7Hpm4QiLAogICAgICAgICAgICAgICAgdjogInFxeXgiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLmgqDplb/lgYfmnJ8iLAogICAgICAgICAgICAgICAgdjogInljanEiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLml6DmgpTljY7lpI8iLAogICAgICAgICAgICAgICAgdjogIndocmh4IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi54yr5LmL5Z+OIiwKICAgICAgICAgICAgICAgIHY6ICJtemMiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLloqjmlpciLAogICAgICAgICAgICAgICAgdjogIm1vZG91IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi5Zyj5paX5aOr5pif55+i77ya5q2j5LmJ5Lyg6K+0IiwKICAgICAgICAgICAgICAgIHY6ICJzZHN4c3p5eiIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuacquWumuS6i+S7tuewvyIsCiAgICAgICAgICAgICAgICB2OiAid2RzanAiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLnmb3lpJzmnoHlhYkiLAogICAgICAgICAgICAgICAgdjogImJ5amciCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLmlpfnvZflpKfpmYbvvJrprYLluIjlr7nlhrMiLAogICAgICAgICAgICAgICAgdjogImRsZGxoc2RqIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi5Y+k5aKT5Li95b2x5Lyg6K+077ya6L+36LiqIiwKICAgICAgICAgICAgICAgIHY6ICJnbWx5Y3NteiIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuaUvue9ruS4juWPrOWUpCIsCiAgICAgICAgICAgICAgICB2OiAiZnp5emgiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLpl6rng4HkuYvlhYkiLAogICAgICAgICAgICAgICAgdjogInN5emciCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLogIHlhpznp43moJEiLAogICAgICAgICAgICAgICAgdjogImxuenMiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLkuInlm73mvJTkuYnvvJrlkJ7lmazml6DnlYwiLAogICAgICAgICAgICAgICAgdjogInNneXl0c3dqIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi5YG25YOP5qKm5bm756WtMiIsCiAgICAgICAgICAgICAgICB2OiAib3htaGoyIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi5Y2h5Y2h5L+d55qHIiwKICAgICAgICAgICAgICAgIHY6ICJra2JoIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi54G154yr5LygIiwKICAgICAgICAgICAgICAgIHY6ICJsbXoiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLnu53lr7nmvJTnu44iLAogICAgICAgICAgICAgICAgdjogImpkeXkiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLliZHkvqDkuJbnlYwzIiwKICAgICAgICAgICAgICAgIHY6ICJqeHNqMyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuWPrOWUpOS4juWQiOaIkDIiLAogICAgICAgICAgICAgICAgdjogInpoeWhjMiIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuS7meS+oOesrOS4gOaUvue9riIsCiAgICAgICAgICAgICAgICB2OiAieHhkeWZ6IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi5byT566t5omL5aSn5L2c5oiYIiwKICAgICAgICAgICAgICAgIHY6ICJnanNkenoiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLmjKjppb/ojZLph44iLAogICAgICAgICAgICAgICAgdjogImFlaHkiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLor7rkuprkuYvlv4MiLAogICAgICAgICAgICAgICAgdjogIm55engiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLpl6rogIDmmpbmmpYiLAogICAgICAgICAgICAgICAgdjogInN5bm4iCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLmqKHmi5/ln47luILvvJrmiJHmmK/luILplb8iLAogICAgICAgICAgICAgICAgdjogIm1uY3N3c3NjIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi6YeN6L+U5bid5Zu9IiwKICAgICAgICAgICAgICAgIHY6ICJjZmRnIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi6ZW/5a6J5bm75oOzIiwKICAgICAgICAgICAgICAgIHY6ICJjYWh4IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi54Gr54Ks5LmL5YWJ77ya5peg6ZmQIiwKICAgICAgICAgICAgICAgIHY6ICJoanpnd3giCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLlr4zosarpl6/kuInlm70iLAogICAgICAgICAgICAgICAgdjogImZoY3NnIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi5ouC5pmTIiwKICAgICAgICAgICAgICAgIHY6ICJmeCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIueBq+W9seW/jeiAhe+8muW/jeiAheaWsOS4luS7oyIsCiAgICAgICAgICAgICAgICB2OiAiaHlyenJ6eHNkIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi5rua5Yqo55qE5aSp56m6IiwKICAgICAgICAgICAgICAgIHY6ICJnZGR0ayIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuaWsOaWl+e9l+Wkp+mZhiIsCiAgICAgICAgICAgICAgICB2OiAieGRsZGwiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLnmbvlsbHotZvovaYiLAogICAgICAgICAgICAgICAgdjogImRzc2MiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLojZLph47kubHmlpfvvIjohb7orq/niYjvvIkiLAogICAgICAgICAgICAgICAgdjogImh5bGR0eGIiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLlsI/lsI/li4fogIUiLAogICAgICAgICAgICAgICAgdjogInh4eXoiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLlsI/lhrDlhrDkvKDlpYciLAogICAgICAgICAgICAgICAgdjogInhiYmNxIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi5LiJ5Zu95oiY57qqMuaJi+a4uCIsCiAgICAgICAgICAgICAgICB2OiAic2d6ajIiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLmiJHnmoTmiJjoiLAiLAogICAgICAgICAgICAgICAgdjogIndkemoiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLmiJHmmK/lpKfkuJzlrrYiLAogICAgICAgICAgICAgICAgdjogIndzZGRqIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi5bm45a2Y6ICF5Y2x5Z+OIiwKICAgICAgICAgICAgICAgIHY6ICJ4Y3p3YyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuaal+mtlOmihuS4uyIsCiAgICAgICAgICAgICAgICB2OiAiYW1seiIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuWGkumZqeWFrOekvuaJi+a4uCIsCiAgICAgICAgICAgICAgICB2OiAibXhncyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuasp+mZhuaImOS6iTXvvJrluJ3lm70iLAogICAgICAgICAgICAgICAgdjogIm9seno1ZGciCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLnuqrlv7XnopHosLcyIiwKICAgICAgICAgICAgICAgIHY6ICJqbmJnMiIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuWkp+iIqua1t+aOoumZqeeJqeivrSIsCiAgICAgICAgICAgICAgICB2OiAiZGhodHh3eSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuaIkeWcqDflubTlkI7nrYnnnYDkvaAiLAogICAgICAgICAgICAgICAgdjogInd6N25oZHpuIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi6Iiq5rW35pel6K6wIiwKICAgICAgICAgICAgICAgIHY6ICJoaHJqIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi5LiA5ouz6LaF5Lq677ya5pyA5by65LmL55S3IiwKICAgICAgICAgICAgICAgIHY6ICJ5cWNyenF6biIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIueOi+WbveS/neWNq+aImDQiLAogICAgICAgICAgICAgICAgdjogIndnYnd6NCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuWNiuS4lueVjOS5i+aXhSIsCiAgICAgICAgICAgICAgICB2OiAiYnNqemwiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLlpaXnibnmm7zlroflrpnoi7Hpm4QiLAogICAgICAgICAgICAgICAgdjogImF0bXl6eXgiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLmlrDkuInlm73mnYAiLAogICAgICAgICAgICAgICAgdjogInhzZ3MiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLlpbblnZciLAogICAgICAgICAgICAgICAgdjogIm5rIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi562W6a2C5LiJ5Zu9IiwKICAgICAgICAgICAgICAgIHY6ICJjaHNnIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi5aWl54m55pu857O75YiXT0wiLAogICAgICAgICAgICAgICAgdjogImF0bXhsb2wiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLmtKrojZLmlofmmI4iLAogICAgICAgICAgICAgICAgdjogImhod20iCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLooZflpLTotrPnkIMiLAogICAgICAgICAgICAgICAgdjogImp0enEiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLlkIzkurrlnKPkuInlm73onIDmsYnkvKAiLAogICAgICAgICAgICAgICAgdjogInRyc3Nnc2hjIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi5oiR5YGa5aSr5Lq66YKj5Lqb5bm0IiwKICAgICAgICAgICAgICAgIHY6ICJ3emZybnhuIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi5bCP5bCP5LqU5Y2D5bm0IiwKICAgICAgICAgICAgICAgIHY6ICJ4eHdxbiIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuWunuWGteeQg+S8mue7j+eQhiIsCiAgICAgICAgICAgICAgICB2OiAic2txaGpsIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi5pe256m654yO5Lq6IiwKICAgICAgICAgICAgICAgIHY6ICJza2xyIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi5pif6ZmF6YCG5oiYIiwKICAgICAgICAgICAgICAgIHY6ICJ4am56IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAiTG92ZUxpdmUhIOWtpuWbreWBtuWDj+elrSIsCiAgICAgICAgICAgICAgICB2OiAibG92ZWxpdmV4eW94aiIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIum7keiJsuaymea8oOaJi+a4uCIsCiAgICAgICAgICAgICAgICB2OiAiaGVzbXN5IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi6a2U5Yqb5a6d6LSd77ya5peF5Lq6IiwKICAgICAgICAgICAgICAgIHY6ICJtbGJibHIiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLnm77kuYvli4fogIXmiJDlkI3lvZXvvJrmtarmva4iLAogICAgICAgICAgICAgICAgdjogImR6eXpjbWxsYyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIumtlOWKm+Wunei0neW9kuadpSIsCiAgICAgICAgICAgICAgICB2OiAibWxiYmdsIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi6I2j6ICA5paw5LiJ5Zu9IiwKICAgICAgICAgICAgICAgIHY6ICJyeXhzZyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuW3heWzsOaegemAnyIsCiAgICAgICAgICAgICAgICB2OiAiZGZqcyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuaWsOebl+Wik+eslOiusCIsCiAgICAgICAgICAgICAgICB2OiAieGRtYmoiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLljafpvpnlkJ8yIiwKICAgICAgICAgICAgICAgIHY6ICJ3bHkyIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi5q2m5p6X6Zey5L6gIiwKICAgICAgICAgICAgICAgIHY6ICJ3bHh4IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi5reY57Gz5ri45oiPIiwKICAgICAgICAgICAgICAgIHY6ICJ0bXl4IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi5pqW6ZuqIiwKICAgICAgICAgICAgICAgIHY6ICJ3YXJtc25vdyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuaXoOacn+i/t+mAlCIsCiAgICAgICAgICAgICAgICB2OiAid3FtdCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIumAhuWFiea9nOWFpSIsCiAgICAgICAgICAgICAgICB2OiAibmdxciIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIkNG5omL5ri4IiwKICAgICAgICAgICAgICAgIHY6ICJDRlNZIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi5paw5aSp6b6Z5YWr6YOo5omL5ri4IiwKICAgICAgICAgICAgICAgIHY6ICJ4dGxiYnN5IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi5peg56We5LmL55WMIiwKICAgICAgICAgICAgICAgIHY6ICJ3c3pqIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi5bCY55m956aB5Yy6IiwKICAgICAgICAgICAgICAgIHY6ICJjYmpxIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi5Lyg5aWH5aSp5LiLIiwKICAgICAgICAgICAgICAgIHY6ICJDUVRYIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi5YWo5rCR5aSn54GM56+uIiwKICAgICAgICAgICAgICAgIHY6ICJxbWRnbCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuaequeBq+mHjeeUn+aJi+a4uCIsCiAgICAgICAgICAgICAgICB2OiAiR3VuZmlyZVJlYm9ybiIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIueBq+W9seS4ieWbveW/lyIsCiAgICAgICAgICAgICAgICB2OiAiZ19oeXNnIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi572R5piT5YW25a6D57uEIiwKICAgICAgICAgICAgICAgIHY6ICJnX3d5cXQiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLkuInlm73miJjnuqrmiYvmuLgiLAogICAgICAgICAgICAgICAgdjogInNnempzeSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuafk8K36ZKf5qW86LCc5ZuiIiwKICAgICAgICAgICAgICAgIHY6ICJCT1RDIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi57ud5Yy66Zu2IiwKICAgICAgICAgICAgICAgIHY6ICJqcWwiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLprZTlhb3lvKflhYnlpKfkvZzmiJgiLAogICAgICAgICAgICAgICAgdjogIndhcmNyYWZ0cnVtYmxlIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi6YeN6L+UQ09ETSIsCiAgICAgICAgICAgICAgICB2OiAiUkVDT0RNIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi57u85ZCI5omL5ri4IiwKICAgICAgICAgICAgICAgIHY6ICJ6aHN5IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAiSVDmuLjmiI8iLAogICAgICAgICAgICAgICAgdjogImlweXgiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLpuKPmva4iLAogICAgICAgICAgICAgICAgdjogImNtIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi5qOL54mM5ri45oiPIiwKICAgICAgICAgICAgICAgIHY6ICJRUFlYIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi5aWl5q+U5bKb77ya5qKm5oOz5Zu95bqmIiwKICAgICAgICAgICAgICAgIHY6ICJhYmRteGdkIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi6ZOD5YWw5LmL5YmRIiwKICAgICAgICAgICAgICAgIHY6ICJsbHpqd3pocGRzaiIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuaZtuaguCIsCiAgICAgICAgICAgICAgICB2OiAiamhjb2EiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLmmJ/kuYvnoLTmmZMiLAogICAgICAgICAgICAgICAgdjogImRocHgiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLotZvlsJTorqHliJIiLAogICAgICAgICAgICAgICAgdjogInNyamgiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICJTTEfnu7zlkIgiLAogICAgICAgICAgICAgICAgdjogIlNMRyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuS7o+WPt++8muS8meS8tCIsCiAgICAgICAgICAgICAgICB2OiAiREhHQiIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuWkqeS9v+S5i+aImCIsCiAgICAgICAgICAgICAgICB2OiAidHN6eiIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuWFqOaYjuaYn+ihl+eQg+a0vuWvuSIsCiAgICAgICAgICAgICAgICB2OiAiaG9vcGhlcm9lcyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuWQiOmHkeW8ueWktO+8muiniemGkiIsCiAgICAgICAgICAgICAgICB2OiAiTWV0YWxTbHVnIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi55m96I2G5Zue5buKIiwKICAgICAgICAgICAgICAgIHY6ICJCSkhMIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi5LiJ5Zu95b+X5oiY5qOL54mIIiwKICAgICAgICAgICAgICAgIHY6ICJnX3NnenpxYiIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIum5hem4readgOaJi+a4uCIsCiAgICAgICAgICAgICAgICB2OiAiR29vc2VEdWNrIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi5aSq56m65p2AIiwKICAgICAgICAgICAgICAgIHY6ICJTdXBlclN1cyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuWkqem+meWFq+mDqDLvvJrpo57pvpnmiJjlpKkiLAogICAgICAgICAgICAgICAgdjogInRsYmIyZmx6dCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuilv+ihjOe6qiDnh4PprYIiLAogICAgICAgICAgICAgICAgdjogInh4anJoIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi5Yaz6IOc5beF5bOwIiwKICAgICAgICAgICAgICAgIHY6ICJqdWVzaGVuZ2RpYW5mZW5nIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi5YaS6Zmp5bKb77ya5p6r5LmL5Lyg6K+0IiwKICAgICAgICAgICAgICAgIHY6ICJNYXBsZVN0b3J5IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi55+z5Zmo5pe25Luj77ya6KeJ6YaSIiwKICAgICAgICAgICAgICAgIHY6ICJzcXNkangiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLmmJ/nkIPvvJrph43lkK8iLAogICAgICAgICAgICAgICAgdjogInhxY3EiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLlhrPmiJjnjpvms5UiLAogICAgICAgICAgICAgICAgdjogImp6bWYiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLkuozmrKHlhYPmuLjmiI8iLAogICAgICAgICAgICAgICAgdjogIkVDWVlYIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi5Zyj5aKD5LmL5aGUIiwKICAgICAgICAgICAgICAgIHY6ICJzanp0IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi5Lyg6K+05rOV5biI5omL5ri4IiwKICAgICAgICAgICAgICAgIHY6ICJDU0ZTU1kiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLpkqLlspoiLAogICAgICAgICAgICAgICAgdjogIk1lY2hhcmFzaGkiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLli4fpl6/kuInlm70iLAogICAgICAgICAgICAgICAgdjogInljc2ciCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLnu6/oibLlm57lk40iLAogICAgICAgICAgICAgICAgdjogImZzaHhnZiIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuS4ieWbve+8muiwi+WumuWkqeS4iyIsCiAgICAgICAgICAgICAgICB2OiAic2dtZHR4IgogICAgICAgICAgICB9XQogICAgICAgIH1dLAogICAgICAgIGtqd2g6IFt7CiAgICAgICAgICAgIGtleTogImNhdGVJZCIsCiAgICAgICAgICAgIG5hbWU6ICLliIbnsbsiLAogICAgICAgICAgICB2YWx1ZTogW3sKICAgICAgICAgICAgICAgIG46ICLmlbDnoIHnp5HmioAiLAogICAgICAgICAgICAgICAgdjogInNta2oiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLnuqrlvZXniYciLAogICAgICAgICAgICAgICAgdjogImpscCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuaIkOW5tOaVmeiCsiIsCiAgICAgICAgICAgICAgICB2OiAiamlhb3l1IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi5Lq65paH56S+56eRIiwKICAgICAgICAgICAgICAgIHY6ICJIdW1hbml0aWVzIgogICAgICAgICAgICB9XQogICAgICAgIH1dLAogICAgICAgIHlwOiBbewogICAgICAgICAgICBrZXk6ICJjYXRlSWQiLAogICAgICAgICAgICBuYW1lOiAi5YiG57G7IiwKICAgICAgICAgICAgdmFsdWU6IFt7CiAgICAgICAgICAgICAgICBuOiAi5rS+5a+5IiwKICAgICAgICAgICAgICAgIHY6ICJwYWlkdWkiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLlv4PliqhGTS4iLAogICAgICAgICAgICAgICAgdjogIkRJQU5UIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi5LiA6LW3546pIiwKICAgICAgICAgICAgICAgIHY6ICJ5aXFpd2FuIgogICAgICAgICAgICB9XQogICAgICAgIH1dLAogICAgICAgIHZvaWNlOiBbewogICAgICAgICAgICBrZXk6ICJjYXRlSWQiLAogICAgICAgICAgICBuYW1lOiAi5YiG57G7IiwKICAgICAgICAgICAgdmFsdWU6IFt7CiAgICAgICAgICAgICAgICBuOiAi6K+t6Z+z5Lqk5Y+LIiwKICAgICAgICAgICAgICAgIHY6ICJ5eWp5IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi6Z+z5LmQ5LmL5aOwIiwKICAgICAgICAgICAgICAgIHY6ICJ5eXpzIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi6L+e6bqm5LqS5YqoIiwKICAgICAgICAgICAgICAgIHY6ICJsaWFubWFpaHVkb25nIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi5aix5LmQ5byA6buRIiwKICAgICAgICAgICAgICAgIHY6ICJ5bGtoIgogICAgICAgICAgICB9XQogICAgICAgIH1dCiAgICB9LAogICAgZmlsdGVyX2RlZjogewogICAgICAgIHlsOiB7CiAgICAgICAgICAgIGNhdGVJZDogInlxayIKICAgICAgICB9LAogICAgICAgIFBDZ2FtZTogewogICAgICAgICAgICBjYXRlSWQ6ICJMT0wiCiAgICAgICAgfSwKICAgICAgICBkanJ5OiB7CiAgICAgICAgICAgIGNhdGVJZDogIlRWZ2FtZSIKICAgICAgICB9LAogICAgICAgIHN5eHg6IHsKICAgICAgICAgICAgY2F0ZUlkOiAid3pyeSIKICAgICAgICB9LAogICAgICAgIHl6OiB7CiAgICAgICAgICAgIGNhdGVJZDogInl6IgogICAgICAgIH0sCiAgICAgICAga2p3aDogewogICAgICAgICAgICBjYXRlSWQ6ICJzbWtqIgogICAgICAgIH0sCiAgICAgICAgeXA6IHsKICAgICAgICAgICAgY2F0ZUlkOiAieWlxaXdhbiIKICAgICAgICB9LAogICAgICAgIHZvaWNlOiB7CiAgICAgICAgICAgIGNhdGVJZDogInl5enMiCiAgICAgICAgfSwKICAgICAgICB6bmw6IHsKICAgICAgICAgICAgY2F0ZUlkOiAiem5sIgogICAgICAgIH0KICAgIH0sCiAgICBjbGFzc19uYW1lOiAi5aix5LmQ5aSp5ZywJue9kea4uOernuaKgCbljZXmnLrng63muLgm5omL5ri45LyR6ZeyJuminOWAvCbnp5HmioDmlofljJYm6K+t6Z+z5LqS5YqoJuivremfs+ebtOaSrSbmraPog73ph48iLAogICAgY2xhc3NfdXJsOiAieWwmUENnYW1lJmRqcnkmc3l4eCZ5eiZrandoJnlwJnZvaWNlJnpubCIsCiAgICBkZXRhaWxVcmw6ICJodHRwczovL20uZG91eXUuY29tL2Z5aWQ/ZHlzaGlkPTAtMWM2ZDUyYzc0YjFlNmJlYzdhYTYzYThlMDAwNjE3cDEmZHlzaGNpPTE4MSIsCiAgICBzZWFyY2hVcmw6ICIvYXBpL3NlYXJjaC9saXZlUm9vbT8jZGlkPTEwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAwMDAxNTAxJmxpbWl0PTIwJm9mZnNldD0wJnNrPSoqO3Bvc3QiLAogICAgc2VhcmNoYWJsZTogMiwKICAgIHF1aWNrU2VhcmNoOiAwLAogICAgaGVhZGVyczogewogICAgICAgICJVc2VyLUFnZW50IjogIk1PQklMRV9VQSIKICAgIH0sCiAgICB0aW1lb3V0OiA1ZTMsCiAgICBsaW1pdDogOCwKICAgIHBsYXlfcGFyc2U6ICEwLAogICAgbGF6eTogIiIsCiAgICAi5o6o6I2QIjogImpzOlxuICAgICAgICBsZXQgZCA9IFtdO1xuICAgICAgICBsZXQgam8gPSBKU09OLnBhcnNlKHJlcXVlc3QoaW5wdXQpKS5kYXRhO1xuICAgICAgICBqby5mb3JFYWNoKChpdCxpZGV4KSA9PiB7XG4gICAgICAgICAgICBsZXQgc2xpc3QgPSBqb1tpZGV4XS5saXN0IDtcbiAgICAgICAgICAgIHNsaXN0LmZvckVhY2goaXQgPT4ge1xuICAgICAgICAgICAgICAgIGQucHVzaCh7XG4gICAgICAgICAgICAgICAgICAgIHVybDogaXQucmlkLFxuICAgICAgICAgICAgICAgICAgICB0aXRsZTogaXQucm9vbU5hbWUsXG4gICAgICAgICAgICAgICAgICAgIGltZzogaXQucm9vbVNyYyxcbiAgICAgICAgICAgICAgICAgICAgZGVzYzogJ/CfkYEnICsgaXQuaG4gKyAnICDwn4aZJyArIGl0Lm5pY2tuYW1lLFxuICAgICAgICAgICAgICAgIH0pXG4gICAgICAgICAgICB9KTtcbiAgICAgICAgfSk7XG4gICAgICAgIHNldFJlc3VsdChkKTtcbiAgICAiLAogICAgIuS4gOe6pyI6ICJqczpcbiAgICAgICAgbGV0IGQgPSBbXTtcbiAgICAgICAgbGV0IGpvID0gSlNPTi5wYXJzZShyZXF1ZXN0KGlucHV0KSkuZGF0YS5saXN0O1xuICAgICAgICBqby5mb3JFYWNoKGl0ID0+IHtcbiAgICAgICAgICAgIGQucHVzaCh7XG4gICAgICAgICAgICAgICAgdXJsOiBpdC5yaWQsXG4gICAgICAgICAgICAgICAgdGl0bGU6IGl0LnJvb21OYW1lLFxuICAgICAgICAgICAgICAgIGltZzogaXQucm9vbVNyYyxcbiAgICAgICAgICAgICAgICBkZXNjOiAn8J+RgScgKyBpdC5obiArICcgIPCfhpknICsgaXQubmlja25hbWUsXG4gICAgICAgICAgICB9KVxuICAgICAgICB9KTtcbiAgICAgICAgc2V0UmVzdWx0KGQpO1xuICAgICIsCgogICAg5LqM57qnOiAnKicsCgogICAgIuaQnOe0oiI6ICJqczpcbiAgICAgICAgdmFyIGQgPSBbXTtcbiAgICAgICAgbGV0IHJ1cmxzID0gaW5wdXQuc3BsaXQoJzsnKVswXS5zcGxpdCgnIycpO1xuICAgICAgICBsZXQgcnVybCA9IHJ1cmxzWzBdO1xuICAgICAgICBsZXQgcGFyYW1zID0gcnVybHMubGVuZ3RoID4gMSA/cnVybHNbMV06Jyc7XG4gICAgICAgIGxldCBfZmV0Y2hfcGFyYW1zID0gSlNPTi5wYXJzZShKU09OLnN0cmluZ2lmeShydWxlX2ZldGNoX3BhcmFtcykpO1xuICAgICAgICBsZXQgcG9zdERhdGEgPSB7Ym9keTpwYXJhbXN9O1xuICAgICAgICBPYmplY3QuYXNzaWduKF9mZXRjaF9wYXJhbXMscG9zdERhdGEpO1xuICAgICAgICBsZXQgam8gPSBKU09OLnBhcnNlKHBvc3QocnVybCxfZmV0Y2hfcGFyYW1zKSkuZGF0YS5saXN0O1xuICAgICAgICBqby5mb3JFYWNoKGl0ID0+IHtcbiAgICAgICAgICAgIGQucHVzaCh7XG4gICAgICAgICAgICAgICAgdXJsOiBpdC5yb29tSWQsXG4gICAgICAgICAgICAgICAgdGl0bGU6IGl0LnJvb21OYW1lLFxuICAgICAgICAgICAgICAgIGltZzogaXQucm9vbVNyYyxcbiAgICAgICAgICAgICAgICBkZXNjOiAn8J+RgScgKyBpdC5obiArICcgIPCfhpknICsgaXQubmlja25hbWUsXG4gICAgICAgICAgICB9KVxuICAgICAgICB9KTtcbiAgICAgICAgc2V0UmVzdWx0KGQpO1xuICAgICIsCiAgICBzbmlmZmVyOiAxLAogICAgaXNWaWRlbzogImpzOlxuICAgICAgICBsb2coaW5wdXQpO1xuICAgICAgICBpZigvXFwvaHV5YS8udGVzdChpbnB1dCkpIHtcbiAgICAgICAgICAgIGlucHV0ID0gdHJ1ZVxuICAgICAgICB9IGVsc2UgaWYoL1xcLmZsdj98XFwubTN1OD98XFwubXA0Py8udGVzdChpbnB1dCkpe1xuICAgICAgICAgICAgaW5wdXQgPSB0cnVlXG4gICAgICAgIH1lbHNle1xuICAgICAgICAgICAgaW5wdXQgPSBmYWxzZVxuICAgICAgICB9XG4gICAgIgp9Ow== \ No newline at end of file diff --git a/潇洒/webcast/js/HYZB.js b/潇洒/webcast/js/HYZB.js new file mode 100644 index 00000000..029b49f0 --- /dev/null +++ b/潇洒/webcast/js/HYZB.js @@ -0,0 +1 @@ +dmFyIHJ1bGUgPSB7CiAgICB0aXRsZTogIuiZjueJmeebtOaSrSIsCiAgICBob3N0OiAiaHR0cHM6Ly93d3cuaHV5YS5jb20iLAogICAgaG9tZVVybDogIi9jYWNoZS5waHA/bT1MaXZlTGlzdCZkbz1nZXRMaXZlTGlzdEJ5UGFnZSZnYW1lSWQ9MjE2OCZ0YWdBbGw9MCZwYWdlPTEiLAogICAgdXJsOiAiL2NhY2hlLnBocD9tPUxpdmVMaXN0JmRvPWdldExpdmVMaXN0QnlQYWdlJmdhbWVJZD1meWZpbHRlciZ0YWdBbGw9MCZwYWdlPWZ5cGFnZSIsCiAgICBjbGFzc19uYW1lOiAi5aix5LmQJue9kea4uCbljZXmnLom5omL5ri4IiwKICAgIGNsYXNzX3VybDogIjgmMSYyJjMiLAogICAgZGV0YWlsVXJsOiAiaHR0cHM6Ly9tLmh1eWEuY29tL2Z5aWQiLAogICAgZmlsdGVyYWJsZTogMSwKICAgIGZpbHRlcl91cmw6ICJ7e2ZsLmNhdGVJZH19IiwKICAgIGZpbHRlcl9kZWY6IHsKICAgICAgICA4OiB7CiAgICAgICAgICAgIGNhdGVJZDogIjIxMzUiCiAgICAgICAgfSwKICAgICAgICAxOiB7CiAgICAgICAgICAgIGNhdGVJZDogIjEiCiAgICAgICAgfSwKICAgICAgICAyOiB7CiAgICAgICAgICAgIGNhdGVJZDogIjE3MzIiCiAgICAgICAgfSwKICAgICAgICAzOiB7CiAgICAgICAgICAgIGNhdGVJZDogIjIzMzYiCiAgICAgICAgfQogICAgfSwKICAgIGZpbHRlcjogewogICAgICAgIDg6IFt7CiAgICAgICAgICAgIGtleTogImNhdGVJZCIsCiAgICAgICAgICAgIG5hbWU6ICLliIbnsbsiLAogICAgICAgICAgICB2YWx1ZTogW3sKICAgICAgICAgICAgICAgIG46ICLmmJ/np4AiLAogICAgICAgICAgICAgICAgdjogIjE2NjMiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLmiLflpJYiLAogICAgICAgICAgICAgICAgdjogIjIxNjUiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLkuIDotbfnnIsiLAogICAgICAgICAgICAgICAgdjogIjIxMzUiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLkuozmrKHlhYMiLAogICAgICAgICAgICAgICAgdjogIjI2MzMiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLomZrmi5/lgbblg48iLAogICAgICAgICAgICAgICAgdjogIjYwNTUiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLml4XmuLgiLAogICAgICAgICAgICAgICAgdjogIjY3OTEiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLmlL7mmKDljoUiLAogICAgICAgICAgICAgICAgdjogIjYyNDUiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLlqLHkuZDlpKnlnLAiLAogICAgICAgICAgICAgICAgdjogIjEwMDAyMiIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuS6pOWPiyIsCiAgICAgICAgICAgICAgICB2OiAiNDA3OSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIue7hOmYnyIsCiAgICAgICAgICAgICAgICB2OiAiNTM2NyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuWQg+WWneeOqeS5kCIsCiAgICAgICAgICAgICAgICB2OiAiMTAwMDQ0IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi5Y6f5YibIiwKICAgICAgICAgICAgICAgIHY6ICI2ODYxIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi6JmO54mZ5paH5YyWIiwKICAgICAgICAgICAgICAgIHY6ICI0MDg5IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi5L2T6IKyIiwKICAgICAgICAgICAgICAgIHY6ICIyMzU2IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi6JmO54mZ5Zyw5pa5IiwKICAgICAgICAgICAgICAgIHY6ICI1MTIzIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi6aKc5YC8IiwKICAgICAgICAgICAgICAgIHY6ICIyMTY4IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi56eR5oqAIiwKICAgICAgICAgICAgICAgIHY6ICIyNDA4IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi6Z+z5LmQIiwKICAgICAgICAgICAgICAgIHY6ICIzNzkzIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi6Laj5YiG5LqrIiwKICAgICAgICAgICAgICAgIHY6ICI1ODgzIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi5LiA6LW35LmwIiwKICAgICAgICAgICAgICAgIHY6ICI3NzU5IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi5rS+5a+5IiwKICAgICAgICAgICAgICAgIHY6ICI3Nzg1IgogICAgICAgICAgICB9XQogICAgICAgIH1dLAogICAgICAgIDE6IFt7CiAgICAgICAgICAgIGtleTogImNhdGVJZCIsCiAgICAgICAgICAgIG5hbWU6ICLliIbnsbsiLAogICAgICAgICAgICB2YWx1ZTogW3sKICAgICAgICAgICAgICAgIG46ICLoi7Hpm4TogZTnm58iLAogICAgICAgICAgICAgICAgdjogIjEiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICJDUzIiLAogICAgICAgICAgICAgICAgdjogIjg2MiIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuepv+i2iueBq+e6vyIsCiAgICAgICAgICAgICAgICB2OiAiNCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogImxvbOS6kemhtuS5i+W8iCIsCiAgICAgICAgICAgICAgICB2OiAiNTQ4NSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuaXoOeVj+Wlkee6piIsCiAgICAgICAgICAgICAgICB2OiAiNTkzNyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIkNGSEQiLAogICAgICAgICAgICAgICAgdjogIjYwNzkiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLpgIbmiJgiLAogICAgICAgICAgICAgICAgdjogIjEzNSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIueCieefs+S8oOivtCIsCiAgICAgICAgICAgICAgICB2OiAiMzkzIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAiRE9UQTIiLAogICAgICAgICAgICAgICAgdjogIjciCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLlnLDkuIvln47kuI7li4flo6siLAogICAgICAgICAgICAgICAgdjogIjIiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLprZTlhb3kuJbnlYwiLAogICAgICAgICAgICAgICAgdjogIjgiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLlnablhYvkuJbnlYwiLAogICAgICAgICAgICAgICAgdjogIjgwMiIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIkRPVEExIiwKICAgICAgICAgICAgICAgIHY6ICI2IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi5qKm5LiJ5Zu9IiwKICAgICAgICAgICAgICAgIHY6ICI0ODkiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLprZTlhb3kuonpnLgzIiwKICAgICAgICAgICAgICAgIHY6ICI0NjE1IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi6Zeu6YGTIiwKICAgICAgICAgICAgICAgIHY6ICIxMDciCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLlkb3ov5DmlrnoiJ8iLAogICAgICAgICAgICAgICAgdjogIjMwNTgiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICJRUemjnui9piIsCiAgICAgICAgICAgICAgICB2OiAiOSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuaYn+mZheS6iemcuCIsCiAgICAgICAgICAgICAgICB2OiAiNSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIue9kea4uOernuaKgCIsCiAgICAgICAgICAgICAgICB2OiAiMTAwMDIzIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi5bCE5Ye757u85ZCI5ri45oiPIiwKICAgICAgICAgICAgICAgIHY6ICIxMDAxNDEiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLmmrTpm6rkuJPljLoiLAogICAgICAgICAgICAgICAgdjogIjEwMDA0MyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuW9qeiZueWym09ubGluZSIsCiAgICAgICAgICAgICAgICB2OiAiNjgzIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi5YmR54G1IiwKICAgICAgICAgICAgICAgIHY6ICI4OTciCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLlhpvkuovmuLjmiI8iLAogICAgICAgICAgICAgICAgdjogIjEwMDEzMyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuWGkumZqeWymyIsCiAgICAgICAgICAgICAgICB2OiAiMjI0MyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuaal+m7keegtOWdj+elniIsCiAgICAgICAgICAgICAgICB2OiAiMTEyMyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuivm+S7mTMiLAogICAgICAgICAgICAgICAgdjogIjE2NDYiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLng63ooYDmsZ/muZYiLAogICAgICAgICAgICAgICAgdjogIjM4NyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuiLsemtguS5i+WIgyIsCiAgICAgICAgICAgICAgICB2OiAiMTgzMCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuatpuael+WkluS8oOS4gOS4lueQtOe8mCIsCiAgICAgICAgICAgICAgICB2OiAiMTY2MSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIui1t+WHoe+8mue+pOmbhOmAkOm5vyIsCiAgICAgICAgICAgICAgICB2OiAiMTYxMiIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuelnuatpjTnlLXohJHniYgiLAogICAgICAgICAgICAgICAgdjogIjMyMjciCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLpvpnkuYvosLciLAogICAgICAgICAgICAgICAgdjogIjE1IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi54KJ55+z5oiY5qOLIiwKICAgICAgICAgICAgICAgIHY6ICI1NzUxIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi5b6h6b6Z5Zyo5aSpIiwKICAgICAgICAgICAgICAgIHY6ICI2NzUiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLpgIbmsLTlr5IiLAogICAgICAgICAgICAgICAgdjogIjI5NTIiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLljYPlubQzIiwKICAgICAgICAgICAgICAgIHY6ICI4NzgiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLmsLjmgZLkuYvloZQiLAogICAgICAgICAgICAgICAgdjogIjQ0NiIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuS9k+iCsua4uOaIjyIsCiAgICAgICAgICAgICAgICB2OiAiMTAwMTM1IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi5a+75LuZIiwKICAgICAgICAgICAgICAgIHY6ICI3MzQiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLmiJjoiLDkuJbnlYwiLAogICAgICAgICAgICAgICAgdjogIjE5NDciCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICJRUeS4ieWbvSIsCiAgICAgICAgICAgICAgICB2OiAiMTA5MCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIua1geaUvuS5i+i3ryIsCiAgICAgICAgICAgICAgICB2OiAiNDI3IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi5Y+N5oGQ57K+6IuxT25saW5lIiwKICAgICAgICAgICAgICAgIHY6ICIxOTE4IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi5Y+N5oGQ6KGM5Yqob25saW5lIiwKICAgICAgICAgICAgICAgIHY6ICI4NjEiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLlvoHpgJQiLAogICAgICAgICAgICAgICAgdjogIjI3MTUiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLmiJjkuonpm7fpnIYiLAogICAgICAgICAgICAgICAgdjogIjYyNCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuS4nei3r+S8oOivtDIiLAogICAgICAgICAgICAgICAgdjogIjEwMjYiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLmmJ/pmYXmiJjnlLIiLAogICAgICAgICAgICAgICAgdjogIjYyNyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIk5CQTJLT0zns7vliJciLAogICAgICAgICAgICAgICAgdjogIjM5NTkiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLkuZ3pmLTnnJ/nu48iLAogICAgICAgICAgICAgICAgdjogIjEwMDkiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLot5Hot5HljaHkuIHovaYiLAogICAgICAgICAgICAgICAgdjogIjE2MiIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuivm+S7meS4lueVjCIsCiAgICAgICAgICAgICAgICB2OiAiNzc0OSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIlFR5Y2O5aSPIiwKICAgICAgICAgICAgICAgIHY6ICIxODc4IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi5aSp5rav5piO5pyI5YiAIiwKICAgICAgICAgICAgICAgIHY6ICIxMjE5IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi5aSn6K+d6KW/5ri477ya5b2S5p2lIiwKICAgICAgICAgICAgICAgIHY6ICI4MjM5IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi6I2S6YeO6KGM5YqoUEPniYgiLAogICAgICAgICAgICAgICAgdjogIjMxODUiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLmlrDliZHkvqDmg4XnvJgiLAogICAgICAgICAgICAgICAgdjogIjU4NiIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuWJkee9kTMiLAogICAgICAgICAgICAgICAgdjogIjkwMCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIueUn+atu+eLmeWHuzIiLAogICAgICAgICAgICAgICAgdjogIjYwOTEiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLlhajnkIPkvb/lkb0iLAogICAgICAgICAgICAgICAgdjogIjkzOSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuaipuaDs+S4lueVjDMiLAogICAgICAgICAgICAgICAgdjogIjQ4NiIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuaequelnue6qiIsCiAgICAgICAgICAgICAgICB2OiAiNDk2IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi5paw5aSp6b6Z5YWr6YOoIiwKICAgICAgICAgICAgICAgIHY6ICI1NjcxIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi6ZOB55Sy6ZuE5YW1IiwKICAgICAgICAgICAgICAgIHY6ICIyNzY1IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi56We5rOjIiwKICAgICAgICAgICAgICAgIHY6ICIyNTMxIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi5paX5oiY56WeIiwKICAgICAgICAgICAgICAgIHY6ICI1OTEiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLpgKDmoqbopb/muLhPTCIsCiAgICAgICAgICAgICAgICB2OiAiNjgxNSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuWkqeWggiIsCiAgICAgICAgICAgICAgICB2OiAiMTk2NiIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuWkp+ivneilv+a4uDIiLAogICAgICAgICAgICAgICAgdjogIjI5NzUiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLkvb/lkb3lj6zllKTvvJrmiJjljLoiLAogICAgICAgICAgICAgICAgdjogIjU5MTEiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLluIzmnJtPTCIsCiAgICAgICAgICAgICAgICB2OiAiMTE2MSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuaegeWFieS4lueVjCDlvJHnpZ7kvKAiLAogICAgICAgICAgICAgICAgdjogIjUxNCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuWuiOacm+WFiOmUi+W9kuadpSIsCiAgICAgICAgICAgICAgICB2OiAiMjE3NCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIlFR6Ieq55Sx5bm75oOzIiwKICAgICAgICAgICAgICAgIHY6ICIxODYyIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi5ZG96L+QMiIsCiAgICAgICAgICAgICAgICB2OiAiMjk0MiIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuWlh+i/ueS4lueVjDIiLAogICAgICAgICAgICAgICAgdjogIjc2NiIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuWdpuWFi+Wkp+aImCIsCiAgICAgICAgICAgICAgICB2OiAiNDM1OSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIueUn+atu+eLmeWHuyIsCiAgICAgICAgICAgICAgICB2OiAiMjQ3MSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuWkqee/vOWGsyIsCiAgICAgICAgICAgICAgICB2OiAiNzc5IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAiUVHlubvmg7MiLAogICAgICAgICAgICAgICAgdjogIjI0MTkiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLmlrDpo57po54oRmx5RkYpIiwKICAgICAgICAgICAgICAgIHY6ICIxNTgyIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi5YiA5YmR6Iux6ZuEIiwKICAgICAgICAgICAgICAgIHY6ICI5MTUiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICJGSUZBIE9ubGluZeezu+WIlyIsCiAgICAgICAgICAgICAgICB2OiAiMTAwMDc5IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi5YWo55CD5L2/5ZG9MyIsCiAgICAgICAgICAgICAgICB2OiAiMjk1MyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuWujOe+juerr+a4uOezu+WIlyIsCiAgICAgICAgICAgICAgICB2OiAiMzAzNCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuaImOaEjyIsCiAgICAgICAgICAgICAgICB2OiAiMjU5OSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuazoeazoeWggiIsCiAgICAgICAgICAgICAgICB2OiAiNDQwIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi6LWb5bCU5Y+3IiwKICAgICAgICAgICAgICAgIHY6ICIyNzU1IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi5aSn5ZSQ5peg5Y+M6Zu2IiwKICAgICAgICAgICAgICAgIHY6ICIxNTg0IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAiUVHngqvoiJ4iLAogICAgICAgICAgICAgICAgdjogIjI0NDAiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICIwMDfvvJrkvKDlpYciLAogICAgICAgICAgICAgICAgdjogIjExMzUiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLlpKnkuIsiLAogICAgICAgICAgICAgICAgdjogIjE1OTciCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLlpKnosJUiLAogICAgICAgICAgICAgICAgdjogIjE4OTkiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLmlrDlgKnlpbPlub3prYIiLAogICAgICAgICAgICAgICAgdjogIjE1NzkiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLkvKDkuJbml6Dlj4wiLAogICAgICAgICAgICAgICAgdjogIjk4NCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuWJkeS+oOS4lueVjCIsCiAgICAgICAgICAgICAgICB2OiAiOTAzIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAiV2FyaGF2ZW4iLAogICAgICAgICAgICAgICAgdjogIjkwNTMiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLor7rkuprkvKDor7QiLAogICAgICAgICAgICAgICAgdjogIjE5MCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuaWsOaMkeaImCIsCiAgICAgICAgICAgICAgICB2OiAiNTgzIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi6LaF5r+A5paX5qKm5aKDIiwKICAgICAgICAgICAgICAgIHY6ICI1NjkxIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAiUVHpn7PpgJ8iLAogICAgICAgICAgICAgICAgdjogIjEwODUiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLlvoHpgJQyIiwKICAgICAgICAgICAgICAgIHY6ICI2NzciCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLlvoHnqIsiLAogICAgICAgICAgICAgICAgdjogIjY3OCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuicgOmXqCIsCiAgICAgICAgICAgICAgICB2OiAiNDcxMSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuWujOe+juS4lueVjO+8muivuOelnuS5i+aImCIsCiAgICAgICAgICAgICAgICB2OiAiNzIxNyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuaImOS5i+WIg++8muW5uOWtmOiAhSIsCiAgICAgICAgICAgICAgICB2OiAiODYyNyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIum7juaYjuS5i+WFiSIsCiAgICAgICAgICAgICAgICB2OiAiNDEiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLlpKnlkb3opb/muLgiLAogICAgICAgICAgICAgICAgdjogIjEwODYiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLngqvoiJ7ml7bku6MiLAogICAgICAgICAgICAgICAgdjogIjMzNTMiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLojaPoqonnqbrpl7QiLAogICAgICAgICAgICAgICAgdjogIjIyNSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuWNoeaLieW9vOS4mCIsCiAgICAgICAgICAgICAgICB2OiAiOTA3MyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuaIkOWQieaAneaxl+aAgOaXp+eJiCIsCiAgICAgICAgICAgICAgICB2OiAiNjQwIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi6Iux6ZuE5bm05LujMyIsCiAgICAgICAgICAgICAgICB2OiAiMTIzMiIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuWkqeS5puWlh+iwiCIsCiAgICAgICAgICAgICAgICB2OiAiMjIyNSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuWKsuiInuWboiIsCiAgICAgICAgICAgICAgICB2OiAiMjQyMCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIui/nOW+gU9ubGluZeaipuaDs+eJiCIsCiAgICAgICAgICAgICAgICB2OiAiMTQyIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi5aWH6L+577ya5Lyg5aWHIiwKICAgICAgICAgICAgICAgIHY6ICIzOTE3IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi5bCB5Y2w6ICFIiwKICAgICAgICAgICAgICAgIHY6ICIyMjk0IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi5LiK5Y+k5LiW57qqIiwKICAgICAgICAgICAgICAgIHY6ICIxMDQ2IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi5qKm5bm76K+b5LuZMiIsCiAgICAgICAgICAgICAgICB2OiAiNDg4IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAiVEVSQSBPbmxpbmUiLAogICAgICAgICAgICAgICAgdjogIjEwNzIiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLlgJrlpKnihaEiLAogICAgICAgICAgICAgICAgdjogIjk1OSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuihl+WktOevrueQgyIsCiAgICAgICAgICAgICAgICB2OiAiMjA2IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi5rC45oGS6L2u5Zue77ya5peg6ZmQIiwKICAgICAgICAgICAgICAgIHY6ICI3ODQ3IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi54Gr57q/57K+6IuxIiwKICAgICAgICAgICAgICAgIHY6ICIyNTUwIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi5b+N6ICF5p2R5aSn5oiYMiIsCiAgICAgICAgICAgICAgICB2OiAiMjM2OSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIumihuWcsOS6uueUnyIsCiAgICAgICAgICAgICAgICB2OiAiMjI4MiIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuS7meS+oOS4lueVjCIsCiAgICAgICAgICAgICAgICB2OiAiOTk1IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi5rSb5aWH6Iux6ZuE5LygIiwKICAgICAgICAgICAgICAgIHY6ICI0MzIiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICJLQVJEUyIsCiAgICAgICAgICAgICAgICB2OiAiODI2MSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuaXoOmZkOazleWImSIsCiAgICAgICAgICAgICAgICB2OiAiMzE4OSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuWFqOmdouaImOS6ie+8muernuaKgOWcuiIsCiAgICAgICAgICAgICAgICB2OiAiNTkwMSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuiHqueUseevrueQgyIsCiAgICAgICAgICAgICAgICB2OiAiMjQzIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAiRkMgT25saW5lNCIsCiAgICAgICAgICAgICAgICB2OiAiMzY4MyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuaImOWcsOS5i+eOiyIsCiAgICAgICAgICAgICAgICB2OiAiNjE4IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi5Y+k5YmR5aWH6LCtT0wiLAogICAgICAgICAgICAgICAgdjogIjE4OTIiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICJRUeS7meS+oOS8oCIsCiAgICAgICAgICAgICAgICB2OiAiMjI5MSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIjMwMOiLsembhCIsCiAgICAgICAgICAgICAgICB2OiAiMTEzMiIKICAgICAgICAgICAgfV0KICAgICAgICB9XSwKICAgICAgICAyOiBbewogICAgICAgICAgICBrZXk6ICJjYXRlSWQiLAogICAgICAgICAgICBuYW1lOiAi5YiG57G7IiwKICAgICAgICAgICAgdmFsdWU6IFt7CiAgICAgICAgICAgICAgICBuOiAi5aSp5aSp5ZCD6bihIiwKICAgICAgICAgICAgICAgIHY6ICIyNzkzIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi5rC45Yqr5peg6Ze0IiwKICAgICAgICAgICAgICAgIHY6ICI2MjE5IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi5Li75py65ri45oiPIiwKICAgICAgICAgICAgICAgIHY6ICIxMDAwMzIiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLnjJvlhb3mtL7lr7kiLAogICAgICAgICAgICAgICAgdjogIjYxNjUiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLkupLliqjngrnmkq0iLAogICAgICAgICAgICAgICAgdjogIjU5MDciCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLmiJHnmoTkuJbnlYwiLAogICAgICAgICAgICAgICAgdjogIjE3MzIiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLmlrnoiJ8iLAogICAgICAgICAgICAgICAgdjogIjE5OTciCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLljZXmnLrng63muLgiLAogICAgICAgICAgICAgICAgdjogIjEwMDAwMiIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuaAgOaXp+a4uOaIjyIsCiAgICAgICAgICAgICAgICB2OiAiMTAwMTI1IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi6YCD56a75aGU56eR5aSrIiwKICAgICAgICAgICAgICAgIHY6ICIzNDkzIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi5L+E572X5pav6ZKT6bG8NCIsCiAgICAgICAgICAgICAgICB2OiAiNTQ5NSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIumDqOiQve+8muS4iuWNhyIsCiAgICAgICAgICAgICAgICB2OiAiMTMxOCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIkRhcmsgYW5kIERhcmtlciIsCiAgICAgICAgICAgICAgICB2OiAiNzkwNSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIlRoZSBGcm9udCIsCiAgICAgICAgICAgICAgICB2OiAiOTQ5NyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIkFwZXjoi7Hpm4QiLAogICAgICAgICAgICAgICAgdjogIjUwMTEiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLnlJ/ljJbljbHmnLo06YeN5Yi254mIIiwKICAgICAgICAgICAgICAgIHY6ICI4MDEzIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAiRGF5WueLrOeri+eJiCIsCiAgICAgICAgICAgICAgICB2OiAiMTEyNSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuaYn+epuiIsCiAgICAgICAgICAgICAgICB2OiAiNzg1NyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuS6kuWKqOWJp+a4uCIsCiAgICAgICAgICAgICAgICB2OiAiNjkxOSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuiJvuWwlOeZu+azleeOryIsCiAgICAgICAgICAgICAgICB2OiAiNTgwMSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuaBkOaDp+S5i+mXtCIsCiAgICAgICAgICAgICAgICB2OiAiNjY3OSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIlNDVU0iLAogICAgICAgICAgICAgICAgdjogIjQyNDUiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICJEcmVhZCBIdW5nZXIiLAogICAgICAgICAgICAgICAgdjogIjc2MDEiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLloZ7lsJTovr7kvKDor7TvvJrnjovlm73kuYvms6oiLAogICAgICAgICAgICAgICAgdjogIjc4ODMiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLmrKfmtLLljaHovabmqKHmi58iLAogICAgICAgICAgICAgICAgdjogIjQ3NSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIua0m+WFi+eOi+WbvSIsCiAgICAgICAgICAgICAgICB2OiAiMjg2NCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuWNp+m+me+8muiLjeWkqemZqOiQvSIsCiAgICAgICAgICAgICAgICB2OiAiNzg1OSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuaXoOS6uua3seepuiIsCiAgICAgICAgICAgICAgICB2OiAiMjU2NiIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuW4neWbveelnuivnSIsCiAgICAgICAgICAgICAgICB2OiAiNjgyMSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIumlpeiNkiIsCiAgICAgICAgICAgICAgICB2OiAiNzQiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLmo67mnpfkuYvlrZAiLAogICAgICAgICAgICAgICAgdjogIjc5NDMiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLmmJ/nkIPlpKfmiJjns7vliJciLAogICAgICAgICAgICAgICAgdjogIjU1NCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuaegemZkOernumAn++8muWcsOW5s+e6vyIsCiAgICAgICAgICAgICAgICB2OiAiMjYzNCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuacgOe7iOW5u+aDszE2IiwKICAgICAgICAgICAgICAgIHY6ICI3ODY5IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAiQW1vbmcgVXMiLAogICAgICAgICAgICAgICAgdjogIjYxNjMiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLmgKrniannjI7kurrvvJrltJvotbciLAogICAgICAgICAgICAgICAgdjogIjY0NzkiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLmgKrniannjI7kurrnianor60iLAogICAgICAgICAgICAgICAgdjogIjcxMDEiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLpqpHpqazkuI7noI3mnYDns7vliJciLAogICAgICAgICAgICAgICAgdjogIjQ3ODMiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLojZLph47lpKfplZblrqIyIiwKICAgICAgICAgICAgICAgIHY6ICI0MzE5IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi5aSq6I2S5Yid5aKDIiwKICAgICAgICAgICAgICAgIHY6ICI3Njg1IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi572X5biD5LmQ5oCdIiwKICAgICAgICAgICAgICAgIHY6ICI1NzcxIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi5Y+q54u877ya5b2x6YCd5LqM5bqmIiwKICAgICAgICAgICAgICAgIHY6ICI0NTA1IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi5Y+M5Lq65oiQ6KGMIiwKICAgICAgICAgICAgICAgIHY6ICI2NzM3IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi6YeN55Sf6L6557yYIiwKICAgICAgICAgICAgICAgIHY6ICI2MjAxIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi5rW36LS8546LIOWvu+enmOS4lueVjCIsCiAgICAgICAgICAgICAgICB2OiAiNTA5NyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuaImOelnu+8muivuOelnum7hOaYjyIsCiAgICAgICAgICAgICAgICB2OiAiNzc3MSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuaBkOmsvOeXhyIsCiAgICAgICAgICAgICAgICB2OiAiNjIwNSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIumsvOiwt+WFq+iNkiIsCiAgICAgICAgICAgICAgICB2OiAiNjU3MSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIumcjeagvOayg+iMqOS5i+mBlyIsCiAgICAgICAgICAgICAgICB2OiAiNzg4MSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuWFqOmdouaImOS6iSIsCiAgICAgICAgICAgICAgICB2OiAiMzUyMSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuS7geeOizIiLAogICAgICAgICAgICAgICAgdjogIjU3OTUiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLlpaXmi4nmmJ8iLAogICAgICAgICAgICAgICAgdjogIjI4NDYiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLnlJzonJzkuYvlrrYiLAogICAgICAgICAgICAgICAgdjogIjY3MzkiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLku5nliZHlpYfkvqDkvKDkuIMiLAogICAgICAgICAgICAgICAgdjogIjY1MDkiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLmtojpgJ3nmoTlhYnoipIyIiwKICAgICAgICAgICAgICAgIHY6ICI3NTgxIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi5rih56We6K6wIiwKICAgICAgICAgICAgICAgIHY6ICI2MjMxIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi5b2S5a625byC6YCUIiwKICAgICAgICAgICAgICAgIHY6ICIyOTQ5IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi5Y2a5b635LmL6ZeoMyIsCiAgICAgICAgICAgICAgICB2OiAiNjE0NyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIueci+mXqOeLl++8muWGm+WboiIsCiAgICAgICAgICAgICAgICB2OiAiNjE1NSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuS9v+WRveWPrOWUpOezu+WIlyIsCiAgICAgICAgICAgICAgICB2OiAiMTAwMTM3IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi6IKy56Kn5ri45oiPIiwKICAgICAgICAgICAgICAgIHY6ICIxMDAxMzkiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLluJ3lm73ml7bku6M0IiwKICAgICAgICAgICAgICAgIHY6ICI0ODM1IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi6Iux54G156We5q6/IiwKICAgICAgICAgICAgICAgIHY6ICI2NjA5IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi6Juu6I2S5b+X5byC77ya6LW35rqQIiwKICAgICAgICAgICAgICAgIHY6ICI5NzA5IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi5bKbIiwKICAgICAgICAgICAgICAgIHY6ICIzMDE5IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi5rKZ55uS5LiO5Ymv5pysIiwKICAgICAgICAgICAgICAgIHY6ICI5MTUxIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi5omr6Zu3IiwKICAgICAgICAgICAgICAgIHY6ICIyMzQ5IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi6KGX5py65ri45oiPIiwKICAgICAgICAgICAgICAgIHY6ICI1OTk5IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi5bm954G157q/77ya5Lic5LqsIiwKICAgICAgICAgICAgICAgIHY6ICI3NjY5IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi5oCq54mp54yO5Lq65LiW55WMIiwKICAgICAgICAgICAgICAgIHY6ICIzNTE5IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi55uX6LS85LmL5rW3IiwKICAgICAgICAgICAgICAgIHY6ICIzNjQxIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi57q45Lq6IiwKICAgICAgICAgICAgICAgIHY6ICI1MjU3IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi6buR6Imy5YOP57Sg5Lq6IiwKICAgICAgICAgICAgICAgIHY6ICIyOCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuWvuemprOWym+S5i+mtgiIsCiAgICAgICAgICAgICAgICB2OiAiNjAzOSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIueRnuWlh+S4juWPruW9kyIsCiAgICAgICAgICAgICAgICB2OiAiMjQ1NSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIua4r+ivoeWunuW9lSIsCiAgICAgICAgICAgICAgICB2OiAiNTg1MyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuWJkeWjqyIsCiAgICAgICAgICAgICAgICB2OiAiMTQ2NyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIumtlOazlemXqOS5i+iLsembhOaXoOaVjOezu+WIlyIsCiAgICAgICAgICAgICAgICB2OiAiMjA5NiIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuaYn+mcsuiwt+eJqeivrSIsCiAgICAgICAgICAgICAgICB2OiAiMjQ0MyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuS7meWJkeWlh+S+oOS8oOWbmyIsCiAgICAgICAgICAgICAgICB2OiAiMTY1OSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuS8pOWus+S4lueVjCIsCiAgICAgICAgICAgICAgICB2OiAiMjMzNyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuemgemXreaxgueUnyIsCiAgICAgICAgICAgICAgICB2OiAiNjA2NSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuecn+S4ieWbveaXoOWPjCIsCiAgICAgICAgICAgICAgICB2OiAiMTU5OSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuaBkOaAlum7juaYjiIsCiAgICAgICAgICAgICAgICB2OiAiMzQzNSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuWFtuS7luWNleacuiIsCiAgICAgICAgICAgICAgICB2OiAiMzA2OSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuW5veeBteihjOWKqO+8muiNkumHjiIsCiAgICAgICAgICAgICAgICB2OiAiMjc5NCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIui+uee8mCIsCiAgICAgICAgICAgICAgICB2OiAiMTUxIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi6Zi/5Yeh6L6+IiwKICAgICAgICAgICAgICAgIHY6ICIxMDYiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLlhajpnaLmiJjkuonvvJrkuInlm70iLAogICAgICAgICAgICAgICAgdjogIjMwMDQiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLpu47mmI7kuYvmmJ8iLAogICAgICAgICAgICAgICAgdjogIjQwIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi57+85pif5rGC55SfIiwKICAgICAgICAgICAgICAgIHY6ICI3NDYzIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi6buO5piO5Lyg6K+0IiwKICAgICAgICAgICAgICAgIHY6ICIzOSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuaBtumtlOS5i+mtgiIsCiAgICAgICAgICAgICAgICB2OiAiNjE1MSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuiJvuWFsOWymyIsCiAgICAgICAgICAgICAgICB2OiAiMzg1NSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIum+meS4juWcsOS4i+Wfju+8muenmOW9seWOhuS7o+iusEhEIiwKICAgICAgICAgICAgICAgIHY6ICIxNyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIum+meS4juWcsOS4i+Wfju+8muWMlemmluiwtyIsCiAgICAgICAgICAgICAgICB2OiAiMTgiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLmspnnn7PplYfml7blhYkiLAogICAgICAgICAgICAgICAgdjogIjc2ODciCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLkuInlm73lv5fmm7nmk43kvKAiLAogICAgICAgICAgICAgICAgdjogIjI1OTIiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICJGSUZB6Laz55CDIiwKICAgICAgICAgICAgICAgIHY6ICIxODg4IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi5pyA57uI5bm75oOzN++8mumHjeWItueJiCIsCiAgICAgICAgICAgICAgICB2OiAiNTgwOSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuWbm+a1t+WFhOW8nyIsCiAgICAgICAgICAgICAgICB2OiAiNTk5NSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuacgOe7iOW5u+aDs++8mui1t+a6kCIsCiAgICAgICAgICAgICAgICB2OiAiNzY1MyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuaRlOi3pOWfjuWkp+S5seaWlyIsCiAgICAgICAgICAgICAgICB2OiAiNzc3MyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIumfs+S5kOa4uOaIjyIsCiAgICAgICAgICAgICAgICB2OiAiMjc2MSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIueyvueBteS4juiQpOeBq+aEj+W/lyIsCiAgICAgICAgICAgICAgICB2OiAiNTg5NSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuahpeaigeW7uumAoOW4iCIsCiAgICAgICAgICAgICAgICB2OiAiMzI3NSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuWTiOi/quaWryIsCiAgICAgICAgICAgICAgICB2OiAiNjE1MyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuWwj+e8h+WonOeahOWlh+W5u+S5i+WcsCIsCiAgICAgICAgICAgICAgICB2OiAiNzY0NyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuWuneWPr+aipu+8muWJkeebviIsCiAgICAgICAgICAgICAgICB2OiAiNTcxNSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIui+ueWigyIsCiAgICAgICAgICAgICAgICB2OiAiNDc3OSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuS6uuexu+S4gOi0pea2guWcsCIsCiAgICAgICAgICAgICAgICB2OiAiMzI4OSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuezluixhuS6uu+8mue7iOaegea3mOaxsOi1myIsCiAgICAgICAgICAgICAgICB2OiAiNjA4MyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIueyvueBteWuneWPr+aipkxldCdzIEdvIiwKICAgICAgICAgICAgICAgIHY6ICI0Mzc1IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi5oiY6ZSkNDBL77ya5pqX5r2uIiwKICAgICAgICAgICAgICAgIHY6ICIzMDE2IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi55+z5rK56aqa5YqoIiwKICAgICAgICAgICAgICAgIHY6ICIyNTg1IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi57Sr5aGe56eL6aOOIiwKICAgICAgICAgICAgICAgIHY6ICI2MDQ1IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi6Zi/5bCU5q+U5oGpIiwKICAgICAgICAgICAgICAgIHY6ICI4MTE1IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi54yO5Lq677ya6I2S6YeO55qE5Y+s5ZSkIiwKICAgICAgICAgICAgICAgIHY6ICIyOTA2IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAiRklGQSAyMyIsCiAgICAgICAgICAgICAgICB2OiAiNzc4OSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIumDveW4gu+8muWkqemZhee6vyIsCiAgICAgICAgICAgICAgICB2OiAiMjIwMSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuS5kOmrmOWkp+eUteW9se+8mua4uOaIj+eJiCIsCiAgICAgICAgICAgICAgICB2OiAiMTQzOSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuWFqOmdouaImOS6ie+8mumYv+aPkOaLiSIsCiAgICAgICAgICAgICAgICB2OiAiMjM4MyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuaWqeWmluihjCIsCiAgICAgICAgICAgICAgICB2OiAiNjEwNSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIumprOmHjOWlpei1m+i9pjgiLAogICAgICAgICAgICAgICAgdjogIjU5NDciCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLlpI3ku4fogIXogZTnm58iLAogICAgICAgICAgICAgICAgdjogIjYxMjEiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLpnJPombnmt7HmuIoiLAogICAgICAgICAgICAgICAgdjogIjU3NDMiCiAgICAgICAgICAgIH1dCiAgICAgICAgfV0sCiAgICAgICAgMzogW3sKICAgICAgICAgICAga2V5OiAiY2F0ZUlkIiwKICAgICAgICAgICAgbmFtZTogIuWIhuexuyIsCiAgICAgICAgICAgIHZhbHVlOiBbewogICAgICAgICAgICAgICAgbjogIueOi+iAheiNo+iAgCIsCiAgICAgICAgICAgICAgICB2OiAiMjMzNiIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuWSjOW5s+eyvuiLsSIsCiAgICAgICAgICAgICAgICB2OiAiMzIwMyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuiLsembhOiBlOebn+aJi+a4uCIsCiAgICAgICAgICAgICAgICB2OiAiNjIwMyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIkNG5omL5ri4IiwKICAgICAgICAgICAgICAgIHY6ICIyNDEzIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi6YeR6ZOy6ZOy5LmL5oiYIiwKICAgICAgICAgICAgICAgIHY6ICI3MTg1IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi5LiJ5Zu95p2AIiwKICAgICAgICAgICAgICAgIHY6ICIxNjY5IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi5Y6f56WeIiwKICAgICAgICAgICAgICAgIHY6ICI1NDg5IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi5qOL54mM5qGM5ri4IiwKICAgICAgICAgICAgICAgIHY6ICIxMDAwMzYiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLnu7zlkIjmiYvmuLgiLAogICAgICAgICAgICAgICAgdjogIjEwMDAyOSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuWKsuS5kOW5u+aDsyIsCiAgICAgICAgICAgICAgICB2OiAiNzY5MSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuaWsOa4uOW5v+WcuiIsCiAgICAgICAgICAgICAgICB2OiAiMTAwMDUyIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi5bSp5Z2P77ya5pif56m56ZOB6YGTIiwKICAgICAgICAgICAgICAgIHY6ICI3MzQ5IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi54Gr5b2x5b+N6ICF5omL5ri4IiwKICAgICAgICAgICAgICAgIHY6ICIyNDI5IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi56ys5LqU5Lq65qC8IiwKICAgICAgICAgICAgICAgIHY6ICIzMTE1IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi6Zeu6YGT5omL5ri4IiwKICAgICAgICAgICAgICAgIHY6ICIyNDc3IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi5pqX5Yy656qB5Zu0IiwKICAgICAgICAgICAgICAgIHY6ICI3MjA5IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAiUVHpo57ovabmiYvmuLgiLAogICAgICAgICAgICAgICAgdjogIjI5MjgiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLnkIPnkIPlpKfkvZzmiJgiLAogICAgICAgICAgICAgICAgdjogIjI0MTEiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLmmI7ml6XkuYvlkI4iLAogICAgICAgICAgICAgICAgdjogIjM0ODMiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLnmoflrqTmiJjkuokiLAogICAgICAgICAgICAgICAgdjogIjI0MzkiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICJDT0TmiYvmuLgiLAogICAgICAgICAgICAgICAgdjogIjQ3NjkiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLmiYvmuLjkvJHpl7IiLAogICAgICAgICAgICAgICAgdjogIjEwMDAwNCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuS6jOasoeWFg+aJi+a4uCIsCiAgICAgICAgICAgICAgICB2OiAiMTAwMDkxIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi5pG45LqG5Liq6bG8IiwKICAgICAgICAgICAgICAgIHY6ICI5MjgzIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAiTU1PUlBHIiwKICAgICAgICAgICAgICAgIHY6ICIxMDAyNzMiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLliqjkvZzmuLjmiI8iLAogICAgICAgICAgICAgICAgdjogIjEwMDE5NyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuaImOS6ieWGsueqgSIsCiAgICAgICAgICAgICAgICB2OiAiNzQ0OSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIueOi+iAheaooeaLn+aImCIsCiAgICAgICAgICAgICAgICB2OiAiNTY5OSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIumAhuawtOWvkuaJi+a4uCIsCiAgICAgICAgICAgICAgICB2OiAiNzcyNSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuW5u+WhlCIsCiAgICAgICAgICAgICAgICB2OiAiNjQzNyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuasouS5kOaWl+WcsOS4uyIsCiAgICAgICAgICAgICAgICB2OiAiMTc0OSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuelnuatpjTmiYvmuLgiLAogICAgICAgICAgICAgICAgdjogIjMxMzUiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLpmLTpmLPluIgiLAogICAgICAgICAgICAgICAgdjogIjI1OTgiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICJETkbmiYvmuLgiLAogICAgICAgICAgICAgICAgdjogIjQ5MjEiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLmrKLkuZDpurvlsIYiLAogICAgICAgICAgICAgICAgdjogIjE3NTEiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLoi7Hpm4TogZTnm5/nlLXnq57nu4/nkIYiLAogICAgICAgICAgICAgICAgdjogIjcxNzciCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLni7zkurrmnYDmiYvmuLgiLAogICAgICAgICAgICAgICAgdjogIjEwMDA0OSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuaWsOWkqem+meWFq+mDqOaJi+a4uCIsCiAgICAgICAgICAgICAgICB2OiAiNjk0NSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuS4reWbveixoeajiyIsCiAgICAgICAgICAgICAgICB2OiAiMTY3MSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuWkqeWkqeixoeajiyIsCiAgICAgICAgICAgICAgICB2OiAiNDk5NyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuS8oOWlh+S4lueVjDNEIiwKICAgICAgICAgICAgICAgIHY6ICIzOTYxIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi5b6h6b6Z5Zyo5aSp5omL5ri4IiwKICAgICAgICAgICAgICAgIHY6ICIyNTY4IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi6auY6IO96Iux6ZuEIiwKICAgICAgICAgICAgICAgIHY6ICI4MzU5IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi5aSp6b6Z5YWr6YOo5omL5ri4IiwKICAgICAgICAgICAgICAgIHY6ICIyODUyIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi5LiJ5Zu95b+X5oiY55Wl54mIIiwKICAgICAgICAgICAgICAgIHY6ICI1NjE5IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi5b+N6ICF5b+F6aG75q27MyIsCiAgICAgICAgICAgICAgICB2OiAiNDA0MSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIlNLWeWFiemBhyIsCiAgICAgICAgICAgICAgICB2OiAiMzcxOSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuiZjueJmemihuS4u+S6iemcuCIsCiAgICAgICAgICAgICAgICB2OiAiNzUyOSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuS6keS4iuWfjuS5i+atjCIsCiAgICAgICAgICAgICAgICB2OiAiNTk3NyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuaZtuaguCIsCiAgICAgICAgICAgICAgICB2OiAiNzI3OSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuS7meWig+S8oOivtFJPIiwKICAgICAgICAgICAgICAgIHY6ICIyNjc1IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi5aSp5aSp54u85Lq6IiwKICAgICAgICAgICAgICAgIHY6ICIyNzc0IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAiSkrmo4vniYwiLAogICAgICAgICAgICAgICAgdjogIjM4NDEiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLlpYfov7lNVe+8muiniemGkiIsCiAgICAgICAgICAgICAgICB2OiAiMzExNiIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuaMh+WwluWbm+W3nem6u+WwhiIsCiAgICAgICAgICAgICAgICB2OiAiNzIxNSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIumDqOiQveWGsueqgSIsCiAgICAgICAgICAgICAgICB2OiAiMTc5NyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuaWsOWJkeS+oOaDhee8mOaJi+a4uCIsCiAgICAgICAgICAgICAgICB2OiAiNjI1OSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuiQjOWuoOi/nOW+gSIsCiAgICAgICAgICAgICAgICB2OiAiOTM4NSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuaal+m7keegtOWdj+elnu+8muS4jeacvSIsCiAgICAgICAgICAgICAgICB2OiAiNjM4NSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuiLsembhOadgCIsCiAgICAgICAgICAgICAgICB2OiAiMjY4OCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIueDreihgOaxn+a5luaJi+a4uCIsCiAgICAgICAgICAgICAgICB2OiAiMjgxNyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuibi+S7lOa0vuWvuSIsCiAgICAgICAgICAgICAgICB2OiAiNjkwOSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuWujOe+juS4lueVjOaJi+a4uCIsCiAgICAgICAgICAgICAgICB2OiAiNDIzNyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuW3heWzsOaImOiIsCIsCiAgICAgICAgICAgICAgICB2OiAiMjUwMiIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIueLvOS6uuadgCIsCiAgICAgICAgICAgICAgICB2OiAiMjc4NSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuaWl+e9l+Wkp+mZhu+8mumtguW4iOWvueWGsyIsCiAgICAgICAgICAgICAgICB2OiAiNjc0NSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuatpuS+oOS5guaJi+a4uCIsCiAgICAgICAgICAgICAgICB2OiAiNDkyOSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuivm+S7meaJi+a4uCIsCiAgICAgICAgICAgICAgICB2OiAiMjY0NyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuaWl+egtOiLjeepueaJi+a4uCIsCiAgICAgICAgICAgICAgICB2OiAiNDMzNyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIui/t+S9oOS4lueVjCIsCiAgICAgICAgICAgICAgICB2OiAiMjY4MyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIumjjuS6kSIsCiAgICAgICAgICAgICAgICB2OiAiMzA2MSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuWmhOaDs+Wxsea1tyIsCiAgICAgICAgICAgICAgICB2OiAiNjAwNyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuabmeWFieiLsembhCIsCiAgICAgICAgICAgICAgICB2OiAiNjE2OSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuS4ieWbveaImOe6qjIiLAogICAgICAgICAgICAgICAgdjogIjYwNDkiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLmoqblubvmlrDor5vku5kiLAogICAgICAgICAgICAgICAgdjogIjU5NzUiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLpu47mmI7op4nphpLvvJrnlJ/mnLoiLAogICAgICAgICAgICAgICAgdjogIjYxMzEiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLov5zlvoEiLAogICAgICAgICAgICAgICAgdjogIjc4MzciCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLoiKrmtbfnjovvvJrnh4Png6fmhI/lv5ciLAogICAgICAgICAgICAgICAgdjogIjM5NDMiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLngavngqzkuYvlhYnvvJrml6DpmZAiLAogICAgICAgICAgICAgICAgdjogIjYzOTkiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLlt4Xls7DmnoHpgJ8iLAogICAgICAgICAgICAgICAgdjogIjY5NzkiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLlnKPlooPkuYvloZQiLAogICAgICAgICAgICAgICAgdjogIjcwNTUiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLprZTlipvlrp3otJ0iLAogICAgICAgICAgICAgICAgdjogIjI4OTEiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLpppnogqDmtL7lr7kiLAogICAgICAgICAgICAgICAgdjogIjM2MzkiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLliJvpgKDkuI7prZTms5UiLAogICAgICAgICAgICAgICAgdjogIjI5MzEiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICJKSuaWl+WcsOS4uyIsCiAgICAgICAgICAgICAgICB2OiAiNjI3MSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuawuOaBkue6quWFg++8muaIkiIsCiAgICAgICAgICAgICAgICB2OiAiMjY0NiIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuWkqea2r+aYjuaciOWIgOaJi+a4uCIsCiAgICAgICAgICAgICAgICB2OiAiNTExNSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIueLvOS6uuadgOWumOaWuSIsCiAgICAgICAgICAgICAgICB2OiAiMzY3OSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIua3t+ayjOi1t+a6kCIsCiAgICAgICAgICAgICAgICB2OiAiNTk4NSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuWkmuWkmuiHqui1sOajiyIsCiAgICAgICAgICAgICAgICB2OiAiNTEzMyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuaipuW5u+ivm+S7meaJi+a4uCIsCiAgICAgICAgICAgICAgICB2OiAiMjY3MiIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIum4v+WbvuS5i+S4iyIsCiAgICAgICAgICAgICAgICB2OiAiNjAyNyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuaWsOeskeWCsuaxn+a5liIsCiAgICAgICAgICAgICAgICB2OiAiNTY2OSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuWHoeS6uuS/ruS7meS8oO+8muS6uueVjOevhyIsCiAgICAgICAgICAgICAgICB2OiAiODI5NyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuWkmuS5kOaji+eJjCIsCiAgICAgICAgICAgICAgICB2OiAiNjIwOSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuWPo+iii+iniemGkiIsCiAgICAgICAgICAgICAgICB2OiAiNTk1MyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIui3kei3keWNoeS4gei9puaJi+a4uCIsCiAgICAgICAgICAgICAgICB2OiAiMjYyMCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuWltuWdlyIsCiAgICAgICAgICAgICAgICB2OiAiMjc3NSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuaciOWchuS5i+WknCIsCiAgICAgICAgICAgICAgICB2OiAiNDMzOSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIueOh+Wcn+S5i+a7qCIsCiAgICAgICAgICAgICAgICB2OiAiMjY5MSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuW+gemAlDLmiYvmuLgiLAogICAgICAgICAgICAgICAgdjogIjI4MTEiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLoi7HprYLkuYvliIPlj6PooovniYgiLAogICAgICAgICAgICAgICAgdjogIjI3NjAiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLnsr7ngbXnm5vlhbjvvJrpu47mmI4iLAogICAgICAgICAgICAgICAgdjogIjYxMjMiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLmlrnoiJ/miYvmuLgiLAogICAgICAgICAgICAgICAgdjogIjQwMzUiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLmjrzom4siLAogICAgICAgICAgICAgICAgdjogIjYyMjUiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLnu53kuJbku5nnjosiLAogICAgICAgICAgICAgICAgdjogIjY2MTkiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLmtYHmmJ/nvqTkvqDkvKAiLAogICAgICAgICAgICAgICAgdjogIjM5MjciCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLlr7vku5nmiYvmuLgiLAogICAgICAgICAgICAgICAgdjogIjI5NzkiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLkuIDmoqbmsZ/muZYiLAogICAgICAgICAgICAgICAgdjogIjMwODIiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICJMb3N0IExpZ2h077yI6JCk54Gr56qB5Ye75Zu96ZmF5pyN77yJIiwKICAgICAgICAgICAgICAgIHY6ICI2ODU5IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi5by55bmV5LqR5ri45oiPIiwKICAgICAgICAgICAgICAgIHY6ICI3MDAxIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi54yO6a2C6KeJ6YaSIiwKICAgICAgICAgICAgICAgIHY6ICIzMDcxIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi5YaS6Zmp5bKb77ya5p6r5LmL5Lyg6K+0IiwKICAgICAgICAgICAgICAgIHY6ICI4MDA1IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi5b6B6YCU5omL5ri4IiwKICAgICAgICAgICAgICAgIHY6ICIyNTU2IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi5rW35bKb5aWH5YW1IiwKICAgICAgICAgICAgICAgIHY6ICIyNjI0IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi5YCp5aWz5bm96a2C5omL5ri4IiwKICAgICAgICAgICAgICAgIHY6ICIyNTAzIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi6LaF5Yeh5YWI6ZSLIiwKICAgICAgICAgICAgICAgIHY6ICI2NTA3IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi6b6Z5LmL6LC3MuaJi+a4uCIsCiAgICAgICAgICAgICAgICB2OiAiMjczNiIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuW0qeWdjzMiLAogICAgICAgICAgICAgICAgdjogIjI2MzkiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLnjKvlkozogIHpvKAiLAogICAgICAgICAgICAgICAgdjogIjI3NTgiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLkuIPkurrkvKDlpYfvvJrlhYnkuI7mmpfkuYvkuqTmiJgiLAogICAgICAgICAgICAgICAgdjogIjgxMjUiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICJKSum6u+WwhiIsCiAgICAgICAgICAgICAgICB2OiAiOTQ4NyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuaLiei9sOilv+a4uCIsCiAgICAgICAgICAgICAgICB2OiAiOTU0MyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuS4ieWbveaImOe6qiIsCiAgICAgICAgICAgICAgICB2OiAiNjA0NyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuiHqueUseW5u+aDs+aJi+a4uCIsCiAgICAgICAgICAgICAgICB2OiAiNDAxNSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuenpuaXtuaYjuaciOS4lueVjCIsCiAgICAgICAgICAgICAgICB2OiAiNTI3OSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuaWsOaWl+e9l+Wkp+mZhiIsCiAgICAgICAgICAgICAgICB2OiAiNjY1NyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuaWsOelnumtlOWkp+mZhiIsCiAgICAgICAgICAgICAgICB2OiAiNTkzOSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIumAg+i3keWQp++8geWwkeW5tCIsCiAgICAgICAgICAgICAgICB2OiAiNDEzNyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuWkquWPpOelnueOizIiLAogICAgICAgICAgICAgICAgdjogIjY2NDkiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLliZHkvqDkuJbnlYwzIiwKICAgICAgICAgICAgICAgIHY6ICI3MTgzIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi5aSp5aSp5ZCD6bih5omL5py654mIIiwKICAgICAgICAgICAgICAgIHY6ICI0MzQxIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi5pe256m654yO5Lq6MyIsCiAgICAgICAgICAgICAgICB2OiAiNjQxMSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuWQiOmHkeW8ueWktO+8muiniemGkiIsCiAgICAgICAgICAgICAgICB2OiAiNjkzMSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuaYjuaXpeaWueiInyIsCiAgICAgICAgICAgICAgICB2OiAiNDkyNSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuWOn+Wni+W+gemAlCIsCiAgICAgICAgICAgICAgICB2OiAiNzcxMyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuWlh+i/ue+8muacgOW8uuiAhSIsCiAgICAgICAgICAgICAgICB2OiAiMzIxNSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuWkqeWkqemFt+i3kSIsCiAgICAgICAgICAgICAgICB2OiAiMTcxNSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIkZDIOi2s+eQg+S4lueVjCIsCiAgICAgICAgICAgICAgICB2OiAiMzg3MyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuS4h+WbveiniemGkiIsCiAgICAgICAgICAgICAgICB2OiAiNjE1OSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuacuuWKqOmDveW4gumYv+WwlOazlSIsCiAgICAgICAgICAgICAgICB2OiAiNTQxMSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuiIqua1t+eOi+eDreihgOiIque6vyIsCiAgICAgICAgICAgICAgICB2OiAiNjE4MSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuW5u+S4luS5neatjCIsCiAgICAgICAgICAgICAgICB2OiAiNzE5OSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuakjeeJqeWkp+aImOWDteWwuCIsCiAgICAgICAgICAgICAgICB2OiAiNDg1IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi5peg5oKU5Y2O5aSPIiwKICAgICAgICAgICAgICAgIHY6ICI3MDYzIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi5pe256m654yO5Lq6IiwKICAgICAgICAgICAgICAgIHY6ICIxNzQyIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi6I2S6YeO5Lmx5paXIiwKICAgICAgICAgICAgICAgIHY6ICI0NjEzIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi5ouz55qHOTjnu4jmnoHkuYvmiJhPTCIsCiAgICAgICAgICAgICAgICB2OiAiMjY4NyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuibh+ibh+S6iemcuCIsCiAgICAgICAgICAgICAgICB2OiAiMjY4MCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIueOi+eJjOernumAnyIsCiAgICAgICAgICAgICAgICB2OiAiNjQ2MyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIumHjei/lOW4neWbvSIsCiAgICAgICAgICAgICAgICB2OiAiNjk1NSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuWQnuWZrOaYn+epuu+8mum7juaYjiIsCiAgICAgICAgICAgICAgICB2OiAiNjY1MSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuWPo+iii+WmluaAqiIsCiAgICAgICAgICAgICAgICB2OiAiMjU0MSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIlFR54Kr6Iie5omL5ri4IiwKICAgICAgICAgICAgICAgIHY6ICIyOTkxIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi5LiA5ouz6LaF5Lq677ya5pyA5by65LmL55S3IiwKICAgICAgICAgICAgICAgIHY6ICI0NjI5IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi6I2j6ICA5paw5LiJ5Zu9IiwKICAgICAgICAgICAgICAgIHY6ICI2OTQzIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi5bCR5bm05LiJ5Zu95b+XMiIsCiAgICAgICAgICAgICAgICB2OiAiNjEyNSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuaIkeeahOi1t+a6kCIsCiAgICAgICAgICAgICAgICB2OiAiNTM2NSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuWGs+aImOW5s+WuieS6rCIsCiAgICAgICAgICAgICAgICB2OiAiMzA2NCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuWJkeeBtTIiLAogICAgICAgICAgICAgICAgdjogIjcyMjMiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLlvIDlv4PmtojmtojkuZAiLAogICAgICAgICAgICAgICAgdjogIjE3MTIiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLlsI/lsI/omoHlm70iLAogICAgICAgICAgICAgICAgdjogIjc4MDMiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLmnIDlvLpOQkEiLAogICAgICAgICAgICAgICAgdjogIjI5ODgiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLliZHkvqDmg4XnvJjmiYvmuLgiLAogICAgICAgICAgICAgICAgdjogIjI2MjEiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLplb/lronlubvmg7MiLAogICAgICAgICAgICAgICAgdjogIjY3MjciCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLmiJHlj6tNVDQiLAogICAgICAgICAgICAgICAgdjogIjQwODciCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLlhajmmI7mmJ/ooZfnkIPmtL7lr7kiLAogICAgICAgICAgICAgICAgdjogIjg0MDEiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLlpKfor53opb/muLjmiYvmuLgiLAogICAgICAgICAgICAgICAgdjogIjI2MjYiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLojaPogIDlpKflpKnkvb8iLAogICAgICAgICAgICAgICAgdjogIjY0NzciCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLplYfprYLooZfvvJrlpKnnlJ/kuLrnjosiLAogICAgICAgICAgICAgICAgdjogIjY1NTciCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLmkanlsJTluoTlm60iLAogICAgICAgICAgICAgICAgdjogIjU5ODEiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLmuLjmiI/njovvvJrlhrPmlpfpk77mjqUiLAogICAgICAgICAgICAgICAgdjogIjQ0NTEiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLliZHkvqDkuJbnlYwy5omL5ri4IiwKICAgICAgICAgICAgICAgIHY6ICIzMTUwIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi6Z2S5LqR6K+AMiIsCiAgICAgICAgICAgICAgICB2OiAiNjAwOSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuaImOWcsOaXoOeWhiIsCiAgICAgICAgICAgICAgICB2OiAiNzkwOSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuS4gOW/temAjemBpSIsCiAgICAgICAgICAgICAgICB2OiAiNjQxOSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuawuOWKq+aXoOmXtOaJi+a4uCIsCiAgICAgICAgICAgICAgICB2OiAiNzU3OSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuWwmOeZveemgeWMuiIsCiAgICAgICAgICAgICAgICB2OiAiNzI5NyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuWFg+aipuS5i+aYnyIsCiAgICAgICAgICAgICAgICB2OiAiOTUyMSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuS4jeiJr+S6ujMiLAogICAgICAgICAgICAgICAgdjogIjU4OTEiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLliZHngbXvvJrpnanlkb0iLAogICAgICAgICAgICAgICAgdjogIjQ1NDUiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLprZTlipvlrp3otJ3vvJrml4XkuroiLAogICAgICAgICAgICAgICAgdjogIjc1NzMiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLnsbPliqDlsI/plYciLAogICAgICAgICAgICAgICAgdjogIjcyNjkiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLpvpnmrabmiYvmuLgiLAogICAgICAgICAgICAgICAgdjogIjUyMTkiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLmlpfnvZflpKfpmYYy77ya57ud5LiW5ZSQ6ZeoIiwKICAgICAgICAgICAgICAgIHY6ICI2NTgxIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi6KW/6KGM57qq54eD6a2CIiwKICAgICAgICAgICAgICAgIHY6ICI4MzAzIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi5Z2m5YWL5LiW55WM6Zeq5Ye75oiYIiwKICAgICAgICAgICAgICAgIHY6ICI0OTc3IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi5Yab5qOLIiwKICAgICAgICAgICAgICAgIHY6ICIyNTYxIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi6aWl6I2S77ya5paw5a62IiwKICAgICAgICAgICAgICAgIHY6ICI2NDkxIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi5ouz55qH5ZG96L+QIiwKICAgICAgICAgICAgICAgIHY6ICIzMzc5IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi5a6e5Ya16Laz55CDIiwKICAgICAgICAgICAgICAgIHY6ICIzNzQxIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi5oiY6Iiw5LiW55WM6Zeq5Ye75oiYIiwKICAgICAgICAgICAgICAgIHY6ICI0MTAxIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi5pe256m65Y+s5ZSkIiwKICAgICAgICAgICAgICAgIHY6ICIyNTUxIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi546L54mM5oiY5LqJ77ya5paH5piO6YeN5ZCvIiwKICAgICAgICAgICAgICAgIHY6ICI1NDc5IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi6ZuA6a2C6bq75bCGIiwKICAgICAgICAgICAgICAgIHY6ICI3MTA3IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi5qyi5LmQ5Y2H57qnIiwKICAgICAgICAgICAgICAgIHY6ICIzOTI1IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi57u/6Imy5b6B6YCUIiwKICAgICAgICAgICAgICAgIHY6ICI0MjI3IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi5by55by55aCC5omL5ri4IiwKICAgICAgICAgICAgICAgIHY6ICIyODU3IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi5aSq5p6B54aK54yrM++8mueMjum+mSIsCiAgICAgICAgICAgICAgICB2OiAiMjc3OCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuWTiOWIqeazoueJue+8mumtlOazleiniemGkiIsCiAgICAgICAgICAgICAgICB2OiAiNTgzNSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuWkqeWcsOWKq++8muW5veWfjuWGjeS4tCIsCiAgICAgICAgICAgICAgICB2OiAiNTk4NyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIueDreihgOihl+evriIsCiAgICAgICAgICAgICAgICB2OiAiNTg1OSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuelnumbleS+oOS+o+aJi+a4uCIsCiAgICAgICAgICAgICAgICB2OiAiMTc4MSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuWxsea1t+mVnOiKsSIsCiAgICAgICAgICAgICAgICB2OiAiNTA4OSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuS4ieWbveW/l+aImOaji+eJiCIsCiAgICAgICAgICAgICAgICB2OiAiNzkzNyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuelnumbleS+oOS+ozIiLAogICAgICAgICAgICAgICAgdjogIjQyMDkiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLku5nprZTlhrMiLAogICAgICAgICAgICAgICAgdjogIjE2NzQiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLnjovogIXojaPogIDmmJ/kuYvnoLTmmZMiLAogICAgICAgICAgICAgICAgdjogIjc5MjciCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLmiJHlnKjmsZ/muZbkuYvnpZ7prZTpgZMiLAogICAgICAgICAgICAgICAgdjogIjc2OTkiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLmoqblubvmqKHmi5/miJgiLAogICAgICAgICAgICAgICAgdjogIjM0ODEiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLljZXmnLrmiYvmuLgiLAogICAgICAgICAgICAgICAgdjogIjI3NzciCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLmlpfnvZflpKfpmYYt5paX56We5YaN5Li0IiwKICAgICAgICAgICAgICAgIHY6ICI2NjMxIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi5pyq5p2l5LmL5b25IiwKICAgICAgICAgICAgICAgIHY6ICI2ODMxIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi6aOO5LqR5bKb6KGM5YqoIiwKICAgICAgICAgICAgICAgIHY6ICI0Njk1IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi5paw5ri45o6o6I2QIiwKICAgICAgICAgICAgICAgIHY6ICIzMTYwIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi54Gr5b2x5b+N6ICFT0wiLAogICAgICAgICAgICAgICAgdjogIjM5MDEiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLkuZ3ngbXnpZ7ln58iLAogICAgICAgICAgICAgICAgdjogIjc3MTkiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLmrabliqjkub7lnaQiLAogICAgICAgICAgICAgICAgdjogIjM4MjkiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLnp6bml7bmmI7mnIgyIiwKICAgICAgICAgICAgICAgIHY6ICIxNzg0IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi5paH5piO5LiO5b6B5pyNIiwKICAgICAgICAgICAgICAgIHY6ICI3MDcxIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi5oiY5Y+M77ya5biV5byl5LuAIiwKICAgICAgICAgICAgICAgIHY6ICI0MTMzIgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi5aSn6Iiq5rW35pe25Luj77ya5rW35LiK6Zy45Li7IiwKICAgICAgICAgICAgICAgIHY6ICI2OTI5IgogICAgICAgICAgICB9LCB7CiAgICAgICAgICAgICAgICBuOiAi5YmR572RMe+8muW9kuadpSIsCiAgICAgICAgICAgICAgICB2OiAiNzM2MSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIue7neWMuumbtiIsCiAgICAgICAgICAgICAgICB2OiAiNzcxMSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIum7keiJsuaymea8oOaJi+a4uCIsCiAgICAgICAgICAgICAgICB2OiAiNzI4NyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuiZjueJmeWQg+m4oSIsCiAgICAgICAgICAgICAgICB2OiAiNzQ2NSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuS4gOWJkeaWqeS7mSIsCiAgICAgICAgICAgICAgICB2OiAiNjg0MyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuS8oOWlh+WkqeS4iyIsCiAgICAgICAgICAgICAgICB2OiAiNjkyNyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuaWl+aWl+WggiIsCiAgICAgICAgICAgICAgICB2OiAiNzEzMyIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuaWl+e9l+Wkp+mZhiIsCiAgICAgICAgICAgICAgICB2OiAiNjExOSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuWkqeiwleaJi+a4uCIsCiAgICAgICAgICAgICAgICB2OiAiNTkyNSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuWdjuWFrOmqkeWGoOWJkSIsCiAgICAgICAgICAgICAgICB2OiAiNjY0MSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuacgOe7iOW5u+aDs+iniemGkiIsCiAgICAgICAgICAgICAgICB2OiAiMjcyMSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuelnuWwhuS4ieWbvSIsCiAgICAgICAgICAgICAgICB2OiAiNjYyMSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIueBjOevrumrmOaJi+ato+eJiOaOiOadg+aJi+a4uCIsCiAgICAgICAgICAgICAgICB2OiAiNTM5OSIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuWJkeS4juWutuWbrSIsCiAgICAgICAgICAgICAgICB2OiAiMjgzOCIKICAgICAgICAgICAgfSwgewogICAgICAgICAgICAgICAgbjogIuaegeaXoOWPjDIiLAogICAgICAgICAgICAgICAgdjogIjc4MjUiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLlhYnmmI7lpKfpmYYiLAogICAgICAgICAgICAgICAgdjogIjI4MzIiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLojZLph47ooYzliqgiLAogICAgICAgICAgICAgICAgdjogIjMwODQiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLmiJjmlpfms5XliJkiLAogICAgICAgICAgICAgICAgdjogIjk1MTMiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLnlq/ni4Lljp/lp4vkuroiLAogICAgICAgICAgICAgICAgdjogIjQ2MTkiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLpgIbmiJjmiYvmuLgiLAogICAgICAgICAgICAgICAgdjogIjc1NzUiCiAgICAgICAgICAgIH0sIHsKICAgICAgICAgICAgICAgIG46ICLnn7Plmajml7bku6PvvJrop4nphpIiLAogICAgICAgICAgICAgICAgdjogIjkxNTkiCiAgICAgICAgICAgIH1dCiAgICAgICAgfV0KICAgIH0sCiAgICBzZWFyY2hVcmw6ICJodHRwczovL3NlYXJjaC5jZG4uaHV5YS5jb20vP209U2VhcmNoJmRvPWdldFNlYXJjaENvbnRlbnQmcT0qKiZ1aWQ9MCZ2PTQmdHlwPS01JmxpdmVzdGF0ZT0wJnJvd3M9NDAmc3RhcnQ9MCIsCiAgICBzZWFyY2hhYmxlOiAyLAogICAgcXVpY2tTZWFyY2g6IDAsCiAgICBoZWFkZXJzOiB7CiAgICAgICAgIlVzZXItQWdlbnQiOiAiTU9CSUxFX1VBIgogICAgfSwKICAgIHRpbWVvdXQ6IDVlMywKICAgIGxpbWl0OiA4LAogICAgcGxheV9wYXJzZTogITAsCiAgICBsYXp5OiAianM6XG4gICAgICAgIGxldCByaWQgPSBpbnB1dC5tYXRjaCgvXFwvIChcXGQgKyApIC8gKVsxXTtcbiAgICAgICAgZnVuY3Rpb24gZ2V0UmVhbFVybChsaXZlX3VybCkge1xuICAgICAgICAgICAgbGV0IFtpLCBiXSA9IGxpdmVfdXJsLnNwbGl0KCc/Jyk7XG4gICAgICAgICAgICBsZXQgciA9IGkuc3BsaXQoJy8nKS5wb3AoKTtcbiAgICAgICAgICAgIGxldCBzID0gci5yZXBsYWNlKC8uKGZsdnxtM3U4KS8sICcnKTtcbiAgICAgICAgICAgIGxldCBjX3RtcCA9IGIuc3BsaXQoJyYnKS5maWx0ZXIobiA9PiBuKTtcbiAgICAgICAgICAgIGxldCBuID0ge307XG4gICAgICAgICAgICBsZXQgY190bXAyID0gW107XG4gICAgICAgICAgICBjX3RtcC5mb3JFYWNoKGZ1bmN0aW9uKHRtcCwgaW5kZXgpIHtcbiAgICAgICAgICAgICAgICBpZiAoaW5kZXggPCAzKSB7XG4gICAgICAgICAgICAgICAgICAgIG5bdG1wLnNwbGl0KCc9JylbMF1dID0gdG1wLnNwbGl0KCc9JylbMV1cbiAgICAgICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgICAgICBjX3RtcDIucHVzaCh0bXApXG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICBsZXQgdG1wMiA9IGNfdG1wMi5qb2luKCcmJyk7XG4gICAgICAgICAgICBuW3RtcDIuc3BsaXQoJz0nKVswXV0gPSB0bXAyLnNwbGl0KCc9JylbMV07XG4gICAgICAgICAgICBsZXQgZm0gPSBkZWNvZGVVUklDb21wb25lbnQobi5mbSkuc3BsaXQoJyYnKVswXTtcbiAgICAgICAgICAgIGxldCB1ID0gYmFzZTY0RGVjb2RlKGZtKTtcbiAgICAgICAgICAgIGxldCBwID0gdS5zcGxpdCgnXycpWzBdO1xuICAgICAgICAgICAgbGV0IGYgPSBuZXcgRGF0ZSgpLmdldFRpbWUoKSArICcwMDAwJztcbiAgICAgICAgICAgIGxldCBsbCA9IG4ud3NUaW1lO1xuICAgICAgICAgICAgbGV0IHQgPSAnMCc7XG4gICAgICAgICAgICBsZXQgaCA9IFtwLCB0LCBzLCBmLCBsbF0uam9pbignXycpO1xuICAgICAgICAgICAgbGV0IG0gPSBtZDUoaCk7XG4gICAgICAgICAgICByZXR1cm4gKGkgKyAnP3dzU2VjcmV0PScgKyBtICsgJyZ3c1RpbWU9JyArIGxsICsgJyZ1PScgKyB0ICsgJyZzZXFpZD0nICsgZiArICcmJyArIGNfdG1wMi5wb3AoKSkucmVwbGFjZSgnaGxzJywgJ2ZsdicpLnJlcGxhY2UoJ20zdTgnLCAnZmx2JylcbiAgICAgICAgfVxuICAgICAgICBsZXQgcHVybCA9IEpTT04ucGFyc2UocmVxdWVzdCgnaHR0cHM6Ly9tcC5odXlhLmNvbS9jYWNoZS5waHA/bT1MaXZlJmRvPXByb2ZpbGVSb29tJnJvb21pZD0nICsgcmlkKSkuZGF0YS5zdHJlYW0uZmx2Lm11bHRpTGluZVswXS51cmw7XG4gICAgICAgIGlucHV0ID0ge1xuICAgICAgICAgICAgang6IDAsXG4gICAgICAgICAgICB1cmw6IGdldFJlYWxVcmwocHVybCksXG4gICAgICAgICAgICBwYXJzZTogMCxcbiAgICAgICAgICAgIGhlYWRlcjogSlNPTi5zdHJpbmdpZnkoe1xuICAgICAgICAgICAgICAgICd1c2VyLWFnZW50JzogJ01vemlsbGEvNS4wJ1xuICAgICAgICAgICAgfSlcbiAgICAgICAgfVxuICAgICIsCiAgICAi5o6o6I2QIjogImpzOlxuICAgICAgICBsZXQgZCA9IFtdO1xuICAgICAgICBsZXQgam8gPSBKU09OLnBhcnNlKHJlcXVlc3QoaW5wdXQpKS5kYXRhLmRhdGFzO1xuICAgICAgICBqby5mb3JFYWNoKGl0ID0+IHtcbiAgICAgICAgICAgICAgICBkLnB1c2goe1xuICAgICAgICAgICAgICAgICAgICB1cmw6IGl0LnByb2ZpbGVSb29tLFxuICAgICAgICAgICAgICAgICAgICB0aXRsZTogaXQuaW50cm9kdWN0aW9uLFxuICAgICAgICAgICAgICAgICAgICBpbWc6IGl0LnNjcmVlbnNob3QsXG4gICAgICAgICAgICAgICAgICAgIGRlc2M6ICfwn5GBJyArIGl0LnRvdGFsQ291bnQgKyAnICDwn4aZJyArIGl0Lm5pY2ssXG4gICAgICAgICAgICAgICAgfSlcbiAgICAgICAgfSk7XG4gICAgICAgIHNldFJlc3VsdChkKTtcbiAgICAiLAogICAgIuS4gOe6pyI6ICJqczpcbiAgICAgICAgbGV0IGQgPSBbXTtcbiAgICAgICAgbGV0IGpvID0gSlNPTi5wYXJzZShyZXF1ZXN0KGlucHV0KSkuZGF0YS5kYXRhcztcbiAgICAgICAgam8uZm9yRWFjaChpdCA9PiB7XG4gICAgICAgICAgICAgICAgZC5wdXNoKHtcbiAgICAgICAgICAgICAgICAgICAgdXJsOiBpdC5wcm9maWxlUm9vbSxcbiAgICAgICAgICAgICAgICAgICAgdGl0bGU6IGl0LmludHJvZHVjdGlvbixcbiAgICAgICAgICAgICAgICAgICAgaW1nOiBpdC5zY3JlZW5zaG90LFxuICAgICAgICAgICAgICAgICAgICBkZXNjOiAn8J+RgScgKyBpdC50b3RhbENvdW50ICsgJyAg8J+GmScgKyBpdC5uaWNrLFxuICAgICAgICAgICAgICAgIH0pXG4gICAgICAgIH0pO1xuICAgICAgICBzZXRSZXN1bHQoZCk7XG4gICAgIiwKICAgICLkuoznuqciOiAiKiIsCiAgICAi5pCc57SiIjogImpzb246cmVzcG9uc2UuMy5kb2NzO2dhbWVfcm9vbU5hbWU7Z2FtZV9zY3JlZW5zaG90O2dhbWVfbmljaztyb29tX2lkIgp9Ow== \ No newline at end of file diff --git a/潇洒/webcast/json/DYZB.json b/潇洒/webcast/json/DYZB.json new file mode 100644 index 00000000..4d0a6572 --- /dev/null +++ b/潇洒/webcast/json/DYZB.json @@ -0,0 +1 @@ +tAu0KIT8KiRZLKvO++PIHNAvY2R1yG9lIONlecQ4CQhVuCgBSZf2HrkMrUpEOWgNtYyEvQOxH/RFIKDe4nLJBIr+1Ul4pN0T5m0gK0mO3q+IFpLmLssRVP3kZ/czi8x0MzzvLD4Oi2MzT0qlGS06OUx+pW2yamUm7JDldu7fYmydGW05EIHxTEH08xaa8VnNPHV4wgJn0sVFk9cS5ZMN4E9OygHsYesop4Btro34KpBReQn61VWUjatE4/fJVtbzPuiAQ40eEt5YXZwKFd6CPDA0MEYcI50NwpnjeU/YjSTvLXYhNAGSiRskLsAWEakZmBsFha0Tj0R/oUjvgPvTiuu0wDujnMoiyOnqRP5yeIEB+Gc2FO5s+rVRLVmtp2m6IQmH6b3RidLjY6JyC4OyobifeP4XIG7j5YYe5zJr5UPnLUsEF3we22f7b6ejdna+CbtWN0LFFAn/I1PvSrFk6b0yqVZpgxy7ORIIJLw/4fXnw5GTtWPmhZxZRoblxEVV34B5CWMIsZnz0To4Z+xCaylnEXnyOuxf1+vr1asD0bEHpKlDDu9lMR8DJnaPV1H4tIiQFvTNu7eLHQB7cHT1ZUBfbngmW0DhPvw+mNSXfyD98T5YnC9+soTdkmLQFN7HYggMpzmjO/K+p81kEhU1p5CdXhb8SQW0SIzPXap/CMcHNaVkqqxw1t302uPOqLXiVIL65+riJY3AF5niAOsc6ju4p11TXEfyGCZ8cz+2ENLDTGU6O2rMZO0uuzxHTrG0mSRFac5Nki4Rhfm8OYX6NnfkJWhcogrjq87W/qigNbwPzijqea2uIVWe7kgdVckeQ9WRY7lR53e79TWnZZcl3lsC88d6zQmoRcqM0O9Y8AuneJRwegq6x8RdD+y6/QGQc8rAzK0KDoqeHnGMgltfvT2IzWyHD2TPAKG/id4Ltiv1n+RinNiMqbe9q0SAEHwBigdXAdDMOx0gQQFlsYOVMsTbBb+PS2ut1Gi156PtbxWxk6KaA1rmPzFMwuxddWxAmh99oVqnfDfmZNplMidmZTd7nY81iMrEB3T+7JmGvHoJUeRnUoCPiRC1im1xEK3NcxUB7tyssrYhI/0riUSrg5VS3Iot++HAd5Y1J9hk81+U0e5qH0lVU0FX+0P0RkIe26l84hhEKXRSa5JtKCPu8EaAKNewRqrMn/sD3UYZCT+JxhAsFd8YzthOFUoodkXU+Cr+zs3yS9XJNrrV6OsHV+14T/04PWX6SSWPDWsyjta6l7o08b6pbJIeJDrZtn+ql6s58oq1j0iTw06ieuXEMUibi2VL5r07zl6EQxf/ww9Q6C+OqYqoW60XZsmqq32E+ZRJDHNQ5GdoNRCzzwtmg4IPAfO9X82n6P9Q3o9yRwo35GAM+KLcg+TILGgkQ6EEfaxU9GBL4vC67If53U77P70qccdwXmnspOaAJdnyhqI39d4DMIkEsLGgUh57yH3OsNy+553AyhnIQk/eumqFQXPTqwfQgBKnz5B9K355OdnGOI1/9RITsVKEuDrqBXrALnaILJHeoChimo50s7+jHjCbZIQL9zcuK8/w2bQsp8/+m/y9sQcWQgP0HHXZ/AqGweO9YLwJSSSlDz48KHANt4altlmabRdZmFl/bPaLZ1/s/cbYP5FTZqLE4IY7sLFL/WNtjDmRW0JitN8sb7QDkPZJvaQM8eX8KEPTJfdzIKocOUYTnS09042AatLzMIgWoQYJ8XIL0MYkhZchldCW1F6YflDTV6gBJcNyGJNaL03DNqfZo2cDPrd9lTO/r1FvVODkCHXLi7kBQgMwtJY3JPWwVqHD6u0GoZybCmmVjqJKwYeJwb+o34qMc/7wkev2c0x+aF2coL/6hYM82Gb85P5pJsFszLI8K+3Mebsw9DmQsyWCwldY36ay3sNBFOBHZF9u6Wpda5RMWpnCXhUPWcsB0xdBQj9Ojwdd3V3a5J43UDdo/68vU2O1fr+29Q7Jtqwz/AHm8xk5kFBZcCArC8s6vYa5A1spkHDIQhkfDNhWDAdcp7w2YAiMfMim/EBj7IQUu28M7Wf8BhJ6K0NhOOb/OUpX3LV9r8io3psOPpIldcHvhyP08WFEqq4Q+cEhB2n6tWI0xF9iZYYGAIVz/foQUtqJLTzVKS2SNPeWpeWQE5MqGyP5A3nDh2//lpSW+4u+qHdvNBHujx050y2emgi2bPHQhwaGyk/TXzaMmXc7/eHetywNUNMZ52dDZLNcQn4QOkFKlXRmtKSBo8NSmuKqfKYn6pnMgI8d/4yQbIXmqeGCKALHWyJi2p9YNooXC3wfIxY0icK856JKvubayG0SS84Od7dFJG05XR8BKdT554vIUd+ju5Z6N13ZKtfrJ/r4kWuXMkoZmyuhb3Z0Cf8vWkspfsd0JaWniTKpRlhOIX6napPoJluESK3iNezXePPIr5f7FASIbJUKwB2fQavrc1RalIB7tW8jl66N0IPhHWz6qdyyCUnkNBFRaF/4Rfrj/fqZB5BUNnYqVjOa+fOFi7bEoWSKYAm7WrsqNxX5JooDKFOhGW01WUf8orGGPlmUjZduKLQ4DJI2DPAzV23EQ5sgy3nYSJml5V5FMuFxNV6IkHGZuCSjy2D7x0fRT6dlh+PvCJEJvC+iWrwshdVd/RVH9homcRCt9j8wEHOdHdBnDLC6MAVHpY2+suUussZYXqI0HuL/RRNVdX8IF+9Va7up9bn8JtIWuvWv5t/mZnvmIflRiPkSezCvqWxWkDe8XpnBqBSLmF+u5Q+2ig21c7tGfhQt7GoSLKdiKapG++Oq1yh/8c21CkRySln2jHQF5fVOaRZM0G5o9SxifcWfhgn5L+f0zzX45sRbjdbzicj+VJrBUcJvYY+/Jd8FVPs1pMHs7nuMaRsR3BiVIJ+6XS2Z0vqMbnFaxaUUdONKL7utiR8TjU3o9WflKUNK+56XpXY19PtlsRSBXejFs/okmjjxEEcfJ1QrqA86Rg6eGSCkyBfProxELw6hqbf1ppqUzfW+7hW1Ijd+qDAQb3E7wHn9VDF6aUPrSu5Zng8yVZJ7yYACVz3XFL75lbVZO6F85C0k4qL/LZSHrn9iWQ+aycuTwKEUqcTUQ0+XiUpMaZ2wNi/R54XYJZyeGVRijU3XoE7LlyW9Txw3iaP+QpSyaE8lguGWGFCNNV8xopZLJxH25buZFvNlGhYoQo57EizeKvAdJz+c38tcQuHM4D5m+hwAb0QtzxXBCTXDk3t0Ex4ZD5izHF2dJhJ1qiYCHw2DflFxK7ENHpc+b8pB69ctx3vIe+/dx0kwMwdsieBqsK3xcVi0bVmRu2Z/wcmJf3mXFEGlM0RrcWnuKY0c8Z2PkuvLZCvU7dvkt2s3CwzSXUunF6VOt0BG4mchVKOheUlezDjDzbKIXQKmugHIRHwSQLPcla/eCxSAPiDbVGwUmgRZikoAw98nbS8kpPK1aGuw4d3wc6DgQ/xtUpMP73V76n8wHEGCT9wcBF9bA+DRP+jhoOaEOWE2pOPXJdYlmiBpdAPVPJcjhyoOxruR39myQ/Uv7WDJbuKwg9Sv4IrYp+94WLlbqMneoY3djEqJ4c0/Dp8aODGYqWh1md3yPYtim/c7OWi2U11gHQUFupbDaTg45XIqK9AtrLd2HzLnfec/tkzPTtFRud77P/nrzXD2rkFhI27wCrumrYzx9cdYLAsXpuB5OsJ0fw+HjFLEn2ibVR8DXB/+00JjuQawLaTP7nxEVqHX5xeO0V/07SolWDfbVS9fzXweajZkgYluWE95FMxwafN5ch3wo5RAiG2FWuy/4qOnAJH/vAF0VyaYCnXA1/nKGLu5EK6CY3MvM9admNL+GB0RuWmzgBi5HLujhT2YDhRQ888eDh0PspdcEVTGN6JtoUDFgfKyoUeYdsVsBV5HJHOq8WFF+F7nw3X1vu5eQLSczbIFrXewkwIJ9PtKUKRfjOg7IL8dekhgdUJDesX+Ge0JyNrKZtVzE0DtXUBrnAPzgsjwJ4z/KYF2bYLFrTx80n90BugUT38ocZqSFtB8+ZIQvYBTRQJqDlikhbNroeZ2uQjhp/IwfVUhCqwGddzaWiTkf2IfIe1CgxRtEti1ehhEoEVK8EHCmxIsBd0qbmPGyo4+l6c0iZFCptSGWtgarJmDQeaV1ESf/He80YyRhG6Eqi/6CJz9ukIqHl3RHFUYAe88yZMyPX2T+ZKkh6Vl1ah+Rn0IRtcocjfacz7Fm4473o/3cEvuztzC4MJji+EskmA6rwZMQDU/u96RhofAlIPibxybr2HN4HWAIkYyEgcR6z7mptAc0i8wyXwZZgSdby+J3VNT1w+S+NDsgpnMg3ybKC5ULvlxefDRxWInfLt6N9HprjXsZxffB9wRAZT2LR4p4EXPdSW2/5EPRTU0L6t1u9Z4fnwGAfVAIfsC4GjH1iE+iu8RJ4bH58V9eljEsqj4ez4y9fDrov9zHqYK5CwU9tbvwiLEqyOeyXDNfw8vLPKo1U5HGgM7O10iL0z67InuB//pVhI1BBeINAa+kXPHSFn6RC0/jkmwwBwBytOEA/UXNUG38gF929vP5uMYkMsJfBigZP5Q7+VuMYG4D0AGxgy4jlQA85l/pmxtFVUl+3ollmkoE7tt+HcJ4sCwCtSn3OaeQ4+UlWVC9UwvVkO00Jrekl2VHQszG9HpiMmsJF3wpsdW7yMuOONKaTjjT46zpnHr18FwxDl6A5lE7mSP3yn0FalS/bNxHeYQiT3hvPavUvW4lNKuAebVJMkvtFI50c3qlPK7XAlS3WjEUIhSPT1TixHvKX9r/HWPQmEwaxzi0JGeir5O1C/xwLWG7jDKBcbIGS4ufanQsp2cq7N9H83Bh+xlw8DukJ4I/4QvnlQGL6rznQVhEVubbWZZhKktNHlPwYwQHgSiYR73/D0/OZsFstBvJhtr54atLGI3jYOX567OL8Fv2lrjMff+nPAFpM4bA955avy29cVWgyw44fsKTVT62fUYC/qtYI70xHJKgUktSWMKAJkIq8Gq8j7nm5Q9J94gNl4CPmaUus8A71az0eHUnMWmNLeoN7WEQbn6hH/pAJSC/CyjN+aPir/PjKw1pkLEVdp4+IC/X2sefz/o3fYXamMbBtECJvIN5GA1TF/iJvwFDoCh27owMGcLyuTx2Ub475ZkiWVQKRZho48hs68xXemVZusyN88LIunAHUbYd4ETiyzwrjVgpTykNwx39U2Wy8DY74kDPPtNW9Rnh9mNw0hFVdHx7gznkoVjySUu0Mm3ggYDz1CDPFb5F3bDuoYLSLj12ZKY4/Hu24J3Q0yc5qtgPWZWvyccKzGw/6nHRsohsLv5MJxe19LDuSEZGXK7iTivjKpSCb76pxM0eQc6IZi+5+nAWlmCN+tdlXucMmQWqM6oWvRycuwZIFQcgWwcxARHqYd8ZdnsOui/rLPHMLuyGod94HVR6KNydH4dr5DelNKl+X0Y8bRqhvxvvXljPeYZaMqmg3yOqLJp/G1go0Eh0F6LxQxyHxFiJ6/bRBG2W0AOzTPOB5dsFCeU52zzuaDqONes01LTV5nOgkQu7JRmSyPKdKvTlq6jfW56vj/RKWbnXX8CrrZ8VYQX3HoLgikJJ5xKQ0j+MwYcVr8imcVEWKCAMsTExs6/Tvp9ZnIqWTvvW0U07KkxC+nWCMkgVWAzicBd3b3H46bsRJWPHsB3tfMMko+JFCrxqZ4eHOiPwRE0pEmf95GcxEGAehmaThbRSnTrSfJHh89wa3llWkseXbo2n48D8ZpzprHWD/bD6HXNtaC7p+7tws177LcTk9LwK21U9EDPRPq0CkVjg19ECNV1gMNol4kqcyienG1zRBaf2M/UrVZoqqhrsi4ZxbJ8Kls4EK/IWuvTyp83lu9JFJSID6H1ZQAuUe7MRPiH1VC9r+uHdzqbibuXqVqKAQJQcxvl1kKcfcEc/HYTqvIa0nwNjEiWJFxjpeDyn5HvbUOFREPMVVRJDtFtEZXJ8r9m05D7JK46usOE3b4yDjVvWiKazTQNg0wDRfWnU2p5i1v43EHkuXTA/F8r4sg9ALBySibujcSkCf/MmiQOQf52779m7u8gToQd8/YCxzphahl960ZM2Rq5E1jjJQhRDU636j4Foa7drodI/Ycugvx6ihLEkAFFZw3TEcYqODnAktTA9WT/fbp/GmqLNOVlumBwwQM3dop9bE2P1hSPp7EEbGMkC5JmKQbxOD2IihdSnCtd3VQVsTfzUUGpLLwEQWQNdjaX74GU6I48ylSL/PnGjVomSHR2iXdx3T85E15AGk7tUJwU3AxyR/j/NARU5LB/5qcMYO7dtXzetdtPGrZ1ky+KdYSS91WjpIUA5Yvp8xPmnRF/qJKOhgppmk4oFesaBieayLoweg92/vKLTzSabD+2Yr5FsXCCpWtr6/h5pkTLx3oTqjBW4timKjqxTwrj7/G/KMKlZDGhQmAdWmGyyZiwvisLisuxBNxAQNXjezmYyN2ewOhWBo3OFcazxuHKvZrbUa+1iRYvqNybwxQH+lljZ3cEzuCWZc3Axgqw5WZcGZ4fCIdxSWHQ5HGnWV2KGhFRKTbAKnWElGqN/oO/9czlP9HArDm4pRYls1XoIMBvGm3qvAMOoJ0MCB+CUR7N1REhyXRXf9eekuhTCR2NHLqRreJgRNQuhTXBa4+mRx/8O6zL3ee9tQ3k0pnxCZukj3A1AAkC4AkHd+RAHZyC8rMirCwlVFBciBDk109YbGWlEnRjhi7PJD1ai4rFbri/PTjaSIkWFFm8HCG5ihx6N9spNSfTCYJTx+1edJG40/khe394rIIlJs/LtbFBKubmNH5oCPvV+vdB8Zo3bBOqWJ6o36Y344toXqgU3GVlBbR9PuP51V8zzz95CEFD8ZwBMkJS4XLMQxXZp9LwwT6OGI/OWqDBVjUo9GVHu7uyqU3nm0J1H6RFwt5u7V8Zf1QoKuHvXw6jeLT4j+vubjVGoDiJ1n3XQSWnKmbpMQB4yuniaHBaLyu/wpZx4++CUhrk3Dv1IPzOF1ZNWdqVMiGT6N3oYS3WDCJjCBouJpRVLm98FY6HMiqtHItdvl+vIFuVZbLxolJ+h8YFZot/GaxgFgw07gjs5ofolscv6ecEG9dmtVsBfs6QikjyjZ8vaZn331iIQTG77IBJBbhd6DBWlEE0J09f3S5NeGjX0ttvsJFSxkpMxzlplx6G/8Rv+x7Eoib9VB3fTqmxi9j78E+XD22CkFO6xyAA0Mv9FUhgw03QJB+ia0rg0lR/lTfPQjUZ9juOPzN1HBuUhFou4mbGvUGjXLJW3aU/x1qyVqBjzErUfGGgmIlHmueq6kEft1IDiQZawr1j21LH7tB5kALg+jrxn0dOQnkntT3YtNsqxXc9IpMVOhMvi90OVWoL3hH3RAgywOHDz+ZC8rTk2TYVGnpSLqTDCdNwEKpLfgIwJ8sIlDAO1YdHSAc6SkWTQgd1ThocOyEvnGMY6nTb0+js3hOwXVazNjj5zj/vv8IRgZNqr3zslFAJpc7gOVZUoLRiQdUkwq1wut3s/h9yCzF0Afx6bwjxFGgmU+2UfxbhnF9/Sp1Ce5WVxh8eFVGTg9m1wL2QC7neE+mBnxDICbTRS/0YW5IptXQQzgTUgoWKqt/b4hBSa32N0+KDAyYvuNkapEFrQ1eTXk8ozF4GSnV+BMeIMy60e3SWTk31mSSxDuYGbk1xnfTXO1zKxKddoyciTsD+eDgFosiO9ezsejltN/l4ktFK6WMtpAFD6UQliyGc0gD9GSZUYOpxfFHK33HyC5IRCkXNlmq3SiuO3eVI3jkrfEeUi+ZhZXWhs1o8tZsKZVNeyqFcH3d6sunvUhBu2IE8zgyIOleH0+EScnWnHRlFFaycXRIIl1h+dGse/NhvYcBQNkJA1td+Iuve2QKX/WfMh7Ku47rnxfTGlVOTzdmgZNIowU3h8Ts+z4Hqw2KFavvuhocaUq4WmCawI15IvIztcbFHPRUvkALkwkdndj5BUS33MvkCZwNnu0nMu7uG37vF3xxJRT7fNearRiL4xh03piKpaEJGpD0XqUJGA7LNaegtpBfobjaQdlee+aDyAs/mzlVyZSHk6q3MDMGlFLQDMMR14WZKnqHK/xPvJq2PmAlt4Rn3yyBpFYEiKbOm6e3Pu5s0iZh4beTjLFnT4wlCTU5cfGgBW0pyOxMMzRrwpsOAyHG/qyEqGftqqypxAJchHohAIFomadti0XsO0yr+pMEU7PTJUUzqpycVzbPA6/4/X1jeArsbETkMvajjH6f4DYdRHyjCvbPqSvxfvcDukmx5zh0222qqGcuB6/GComr1JZTjGC7Rs/eUQeTGAqRgUBF5WTDw1r1AeYKCiQqN2GhrAaNWACUHOrk3+rHPPsmQ8O86EvFGiqe3oO/6sMXgtbRAsOSD1KogiwfAoRzF5xiGzXv2+8JYCZnjVtY5fheeLkc2nEF7GcPVY0GRr/tz2aTEZ/7kXxrTBIphKWranAkM5ZuWgXJ7/9jupNL0mDz4mFykeh0gd2JcLCNqFQohGA27c/FBuMbT0KY/QxEMCvMNKku/mrlGPpK7cZYLgyXC1DYCjVn/Eeay3EmriwD8yEFGfqwCrDmqyVfuzm6JqYdj2kEPATEP7bVY3aTivnJZfLh3idcDTbdX6/TklnBbQ28wldbeFB/uuoV6ie3tofWA91qg1Khsnpy2+b0Bs9IzkGhDsGli/uZJGmduuqoMhiYiC6jD+7fNEB4xU0djZjhwz4jWj+tWsNS8boJJUlEBhS09uRYc9CKe6K4RhQS3McX5J+DrP0rRbALnMoGi1DH7+u9dbmkmS4bUaHqJne2loN4pefliKbaNWMqdRfXqWcDEBD8l2jpF56sBaPuuGh8FYEnLeCMcTDYej2R6c445K+7mvMKnhETHfIdtHfb8oBrI/LYmGgAd1Vyk5pYAn4ptmllv6GG4SvJk1aDx1w/cnbcOEJPHBXvvpdlX8FF56R6CZDw8wjL+q/YgnX015r0cF5CXAlsba7KcOI7InGnLGbebdEZ4WwLQm3VtU3MkOv7eot0sYQJnYrlDot+iCbNlwGDVE+ACTeyWLKSlJZvxbzkPy5zrsjvZuXTn8/jbdsiQzen3MiIgjKUw+NLwXraTjT7J3Zz8PYHKQWxJWKunPwPUzFylS02dIfoRHFHCx1vGfBu584XvAkSCHBq96BIOWEQ82/c7nIuFS3VUv/CqfxIV35HPRkoL9Z5l7x38TIRklxWUSEo5Om0tj9iANQbJ285379qmoqr3U+RyUYVoqsnfRG6ONwto4RuBbONRiWRy0TOIBGQG+T+FohH5pLqo3xYH4tiR+MYt4578uVGiPegibhXLmNu51aPFhab0xEF3lVwoaTfDaQUZYdAMGLMyGjjU5JAbAIyThV6ObsWWMhS6/qAllGjr2/GfRSwj5XWivVPbqZZjKf56yerDs8yGHJ3yqV6AIcdtpFBxUun/3ZHWNQKvD5wRo0SrPEjMWwxr8KaRM7We0w3tYWPl50PnIB7LgcK6HknSUf0UIFPfS4x2sqiOK+gc9YWnFH39IwbFuoPdXEB/OXNF6zSMfN0SQMGi3iZIszsq4Q5MGb6FX1B1MlHRyBwaGHZ4WlwBi7uUmv+q32mdJTm/2qhrXJ7ONVSRaTDmp1s+BJrkdRCa4wsF452Wp+3PZMGj6TIMKBwW0+zDyg7K5c8GaagPJzpZzOs2zQSftbeeY2AzFxLHdMWlx5yt7nQtW2zZQvF5rFFmErN3B95vRonb5GhG3uUCSF8XCVGbydCIq/Tb2gCM5xlEGHUZzAUvM6PwQPXoEFF6+d1DcnRVu79+WPMI/JEeQgbTNr1DC/59AwyUHdKZuTXwxUGVFpkN0y73EKApeRYuTLr/c2VK3QdQLjsL9YjT4+bN/oKqR0xcZydjP4S9GW0q16KHYZYOhe8JlqNjtHeMrHC3YQlpkhd2kIiTf6gb4Re8rrG8MtryL5GQKB7oNrOjXODStvbXM8gb/gf8jyGwWx3feCTqosL9jVKoLVBrj3sfBF3hxjVZ98+JdnaMEpZSlwpQ3X6aTiisEjP6xAcA7Pw5Q7NWtz2N67FTyR1gxVFZGY3/JzxG3rA6IlUUAfqKCKxRK/caKXxxn4Cwt0YrxOezTv5VgJenisYTekSHYMVCLVaJe1zYJVcudCnkFymaxPAJAqYPJIUkX070wFSDefRdytbIBW3yZEUKnGENqPugvzEIlhXbl2G6qFaFUBH9RqPH7JSbXckKgppd95ItRhtej1xlJxiv8IZSnYhv/SMSH29tD/Po/kibelo0sI35/M9blRIeQJHCR2cn0Q0+X3H0L8QR4LPkMnSGQh8+RdJqP5+VM2NU7OKZMPrElE66mMfWy6ebLTrPmkrhDfeukvoOWYOQIcoYUPYcbSdgGzZ/lBYaIxAvr1zW55X7DyNtqAig4JAvETY2MgqM8jRe/KplvDgjV2KFR3yaU1Tgze2Z6/MAOrEiU8yctUAEcZeX/dLZ/wpi5a6huxpT8sXafWZBPEnin27vp1jfpGthhNopkkY/DUy9r2gU0HuW559GP2gap6teB/HMlpFZy70feVxk9w4I6ou8EpdW+c8aY7V1uhYngO0ptfCXJ7SnL1ElnKY13Jm0nNQ80nmDGrBRyzBloaJqMtWZa2wuR51FBMVUbmEP9R2Y78s+QA40pjd6dE3BFsStUOQV5z647htk5u/jDUeUyaqS5+O/pFf/aBTidbkejoFge7Y8hs6O/8YwvlqGcZdtaxoaOGOw2Y3LfEv6eoqqV31QnnhqMigna74MlS6nlSHBVEp/zM0Q26TBgoR91B2scumikcHOKm7BE6ge2fCuHqznEofK4r4+P8eVoGMhvQAmmHSA0Cim+m8equa7VlvHE/C/5bODWJgobXCG4rkvlTbBp+si07HFbgoyTkHuOAHgb9foFFq/dxAxUl3jOABTQc5jlu40v1wkXAzkyug0XASg8TMK1Irdxb8xOPfz3F43FfVOGvAwVc//H954WpEgQmE/sUc3SGdNYUpZhMOTlz0J1hwyd2jRjygRGafKYvWxF3r8fz+2JEQzr2vph3USeITKrUjW7SnBx43acup8r4uWXU8hnainc1ZRenUEZk+YODW80ss4hySij5frUZdSRKzE2edsuCSl5NCm4gAeLmb6He/oXH1+ep4KtgNrJQVcg6WiNyVYpTZkTsIs3YjnmM0M4LciZvsll/hEKe2Yjv1cSA7fdV1DcZbWN7cUvogv+u810zB2Pf7mZ+MHX1ZyeJRCFjyhjzWwETSjDDM3bmzCOOS9x0BuePSQWfPNi4JeSk24f9tP8qbgR81K7hbzHXszaWR2UgYAtorh74zuYV7BhH7KFgv1W849TVc9//JryKdGeXAZi2TKEAwK7cIqCpCmdBumZ9MvvlRi/Mh3gedensznWHnAHBZtRKtX+m14HbAeB/PIGmRWinJGOYAmImrEaTXuoNqEZCjCbB6p7JuEDcjwCdE9+PyKUSCcX67A++8rcOOaIAhEV8zeTW3zYG3AqYzwCFoWUPc79zaMElLFgoz9m3xhaji3HZddM8P0ySNsP25JleQIKu5rOnBsAXW/Jfvs7158P/ceTCWNVxe5850ph0fy8nRBGNGFscxVVe5RKU6yB0r7v5A4hznNXJ7uzErLcZKebk4hbsTfjxAKxLtR/jw8eNCPUJ6ZV8WQPzYzwsl1v391MUWR2wXZrIcurQDF2sZSHRW5+9MjFBBoKEt3YPH/3OEZUssi2d38UqjURk0d7PBMjxNsokamEe7rDNdwZB0p8IEigg9zjsq0N471baDdalYzR4iS6PItm8G0RIeAVIVczu8FpkqiRn/yixUHHetBbFCQYNKYfKgCtWibHnVvUCLaB9Mvm/tFLY8E50BioSr74dZRIO/fyoIcWVEs14mGdU5u3NScoiYv1xgFQSyvJRHnTSOR2lJ2K2K0HLk6nl/M+7Gcp2pIx3irAg2QwrM7kkhxNOOBxes040B2aSYJaLboIOf/3ObaaagYiSe0bvaGqgjC3Z9uZJeWOKdR7b3AMcro5XClgPkmHzrenUMuFu4Mcetxp3n7prGOEh84Wxs4mgskYBSWFldBaq7CjRZtH2yUTPIqSI0DbU/+U/K0KVvPQjqwbsa2S3A0Qw2JpFmBmxX/hFXuSsXF0XPjqR6PlqcaqcoW1fl5FncKOZ3KR1Wex+ITAOcnj8q+z6UMM5PEsiixkLOAjbVQsES1IZ0A1bZNku0qBcuYRBhgNbE0FlPytwqYk1kbcwW0r/kAUTPXuCYkB/UcU7+U4ESOCfNGyNp8JqZCRY7hs+QbKE1K16yK3BBbkZMxwwNIRkOpZKddWzEPrBL6d8vXk8+EZ/wSKDaLjd4THKkui9CxGYFeOGdOW0MxnvPUJunFaqFY1Vex/9pzDgYJeJ+0MD92PuSgu8vHbf1gX4ZMjXhquJFEN0nCMIsW38HLEtGemxTVRFsZxz7x3A6O8Xixt7kgxkA6XjSMshTtTAxEW4BIZlVDCxgtWXffY234o70v+fQ7FYpJwC0IAyvAOsyxRkX69ackaTW1HpLVz5XMVq8Qpt/4mdh3IamOpSnbgLoy4f3dTM14p9y6t1atW4Z28wRck4MyZgltnQxmQl7oOEakkT09ER1UgBi4cE47ayFIgybs5P+1Zti2WtzQZy5bNgMAVnzK5MZeFqGup51OYLDjvfi8Ag97n/JcXrAErnx4LQqXoJw2bBQ9+0Kc3ijgkHPzmU79J7WcIKylf9uYjCpjR3V1V9yedfNkf0bDRbmwrs+NWpFEs0PEl7XvfEd79MpzcEBcZLCOhI6IxQDhTPjgfYw6IACjq9nl34ATzdEQivydFgjxdU6BBIBuE5D4fzc9C0EKWgylYpHbo6FO9tE8SuVXZGvbqrrK0x2+4F8Kjh5msEkiizHzWhsJ3AtQeMbnOAOBhll4fTbRa96WbWVTMtLKkmnEfjMAP6BsUopFN1ZXzI8zyDp/76NiZD4njBNq3QrM+UaypcsLKa/ECemhUaKKnato+MPUWE/K2DnkMB1EXoqP/35yFxThdOISGssPCdjeOjcrzH95/7PESYwuRuG8LtRVt4mDGHTVb9ksvHbLJyt/QvXwh29dZI/CkpPvn/73pPNBUn3AXY9TfL71hIp94b+G+6fA1WScIIsRtUJQjeyHDZ1/1ewjy7SVM94Uljg/5lblsx5slg6bGwYAZMDdbW1rUH+3iPz6ghZoli9LEnDtKPOmaFwu6XQDOuBZGVXuxmhudTYMUcBGNm81KzCYu1RFMIh4cQcFpxGVDvATn5ptTTIvDeKimc4jpeKTniZsbLTazxvxN710Y/DM1UYDQ7R1pXu5fZVGfFlqZR3o0UlkM/6faB3qchLA0azpWQsrBAJtNDa6Hqjj4qkUoDeiCO5g/EpZ54tFualt+Hfe8d1H7zTIbicsJNYIbonpodAUsF9ztkPo6v0pNOMTcPAcTp6yhmFmaAlMkYoJ4TZhmTgSmbFCx+zY/OHMkmOIf24nDtoL2nMBTIOUC55XYX/kI6UuISNH9HfLYWMXl2YDHbJzELl/7fdxiicJQTWyvo06o4z8y8r6cIKA59FuXPDDSAWZzJch7sc2/YWDhHUxos2Rc8ICqpJwKKsYw6QEYOpUArEvF5r63MU6Tr7BmNdC2TTBOsJkr8DeQutU9+awU+4YrimlohbVk9GJSzcTHxIONxfwLPT5zMf02uP1IyGtk94l7RFFiyM3bj6k93iL/qhaYBbzvOlh3ooWrUVbtLqGaT26tH6vs64oThJ+JqLHK1aGmks/ytSMZC9Ffm+vrHMKYReiPI1OFa6VrRqUDfOXIL2LjkjvlHT7uyokkrYe3sw0s9+DBsm5zMYMTX03o1MKbu8qF06uJ3fRdHC7021+1HkiiuVzfQ4j6AfV2Mk8B1gXOKAU4PT5IXrbPkm5z/cYGRfXYVWl1LpJYXuoCVBIpsgpsMCezGBzrIpaqJSrMcfTbV+RNYvssa32IajC7CmuYATmvFP8YbOkoe8ZONxOFW1artW7eXz1bA6+x4p2qsBzQ4eU0BPjqhffNfZ/bwg4Ya4zTZHt1AleYPkRaNieQN6grAv5PrH7IpLHeYw1LtsMrIZm2dRrQ1Iwt8P5UHVPRUmHw8lHRpv0AYJmocsMqikcJE31QmuhSpEr8C5Mwp0xjPu+A0RER0tF2GcDxhu3cpomv8TViXZ3Pk45jmK4Js4gYPvKgmk0gCBlicNQlstf1Pc/+52klrfszyPsdUwP8bHx5wAuym0eyLgXgrJVPDBX6FbqGEL3ohAwJlP4sV7kb81M3vpOaL9cSO6oi/0RRu74jdshsIBhY+50b5bSXURgH1Ol7/7P/Lv6a+noP5Xrrzg3W0Lul2asNG8h6cEgcQ/7vWTjTKkFUqh5y8PuX3zshXXsquhQAp74ITeLCQ4jskndUDJVxt0IEo3zHfX6qmuC8EaDKaswOymksCZ/jvIL4wnZJsgWYBNbzxKtNgJI2wYrkicLKUK5QDSKiHh6n2vYqeNdZheyyhPObj+YAIo/jurIosNdZjHm/RDVak8G5fLakwKRXV5L4wgWxZEHUz0MZxh2QF4yBYvIcloXDAmIR/+6eT48dZ7Y8TqgkbX+0xhRs0q0XQx9MYSHhfR5UQEa8RwGP6qYSACcbyn+x/N2kahyBC2LPV9hb9UJ78HMCf9bBCfXy4LerMDYi0SEdWMWVtSZfkMHRn/YxktYIDPQQ1jYxXfzovHYUmJXZG0XCjiDsXTDkUtSXZiG0HVrW8J6yT9MfKF9Z7jQ+dUO0bymft+NLRLply0rh6Kzi6g5sb651XMUtup53yoY2z/ysoxrOgnzTrqgq6xT+YylszABKrYbOeHutlcRyeP3xSJB3bZUIrP9JAb85EsZFVIqMuQ5n5n+EgXtqoPybHaiRos65dGNPd1oNQpGCx4rCS9ekQOmkmdB6uZqscqNwZPlsXYII7IYI/2UyLELpUncH0x9lBUzv3JAzLvCMMfure/eemNd3iEQTKlY0Nvg/B1gg+E0Wm6kDNe+SNtNysopqt9rbbbatRoUM23fhZJ2AoLe6EqhbXPbq/KCczvdZsPuj8czC7iAdqDn3HZBcH5G67mD2ZRNW421egQmFjeTGpUP58O0VOscSEew/RWNF+XpFS2Ou6cjMNkYQGH7O1yyBZE0NDYrDAIq3H8pSWS3H1dHJbdaE8W20YFN25xyFmaK/7+HL6t/YtWwsoMonktEwUTQjKsk8PvNTma2YvEWDL1JIRTX68+8O6SujkijFd5qIUWKrhoFMN5+sCta0zwAasJGlR750iGPYE06hRp65xaElNrHVcBPqYUieoPyIZxhZuRtXROu9x2WCZHKG72mscpQUXGWp0zFCTICYovwtYy1BASIKXy6NyJHnKFwGfw5M1szFn6HCZwq26avpWkeFoXwT4UKfFUsTV9h5IhjOdS3JwQtyGyhvHDunAKQJMLx70ufbpEkTykAJL3/EyZ1dGa0yI7atZMfsolrDLDkmk9bCgdz/gE+IaIFSRXdc7bG2Xwc/7uMnOtoJ2BI2cSoV9FG4AX079Rna2jQGNAEO4Mvmx7CMmeq3cQYY2HwMdjNZnexdegdYlsuE/7OVvKtCtlnZFHFykcYTbpvixd6wOUZVv6FqujdBdSmvn9uPBh1xEvKnZDkmcEwWXOycYOggIpkZw0ztd9dwEkhzDNeZUV+g2JA+ozN01/RuguUnApQ8fh0GFi8gDYjzFE/zziqqnswlRvt04bn4QJRRTqz2PMYRdDaEVfeL1OGOPMLHZD08DeICJ3mPzhywaUDLk/vv7hUDe9VUkmwgCT3Aju+8Yfd78If85cH6Tfa6o9XSkbMQ0e8Z810o5mHHLdXgfVfyUxzgw0eOayFYDylTcQ+TeBf6dxInsqrUYkm9kyhScdqXuqFfLod/yQLpqIVc3TWPb4e/FpNmY36YXgn7LqgLFt8lm4XRwSssWPL+L4Z1QkxZkiMTCnffJqmxwMix0qOG5HGZ2QFIJ1WmlarVd7X/f5Ztp+peT+k4rlkrtNJ7TVoxxjU2ZA9lAeyXJqxri7ivB6iXkFExK7sZbQdFgVWfZ2bQ7wkGUeoUmqL9Yj5zgIpLPps85jDy6XuG2xUqisr0tb875KvKTxodaIV6TJePlMLOHceWEqOEziTlfC8TzKVD4t49U3SWKnRVobXMTBOY/LyzCttDIVfgwDLuEK7Tfl/zR2QQA/NrvdE6jA/RxUo1yZfK92LEZT84k+xxV4OUubps4pJ49RHdQqRgqTwo4UIcth8sC9izj/zoRJkCM+pKDHkjS4M6NhEalhFyYkwdG01Q2133LEcIkmqQRTKuLT3ObQzhC5QN3qj3SZZLSNZTEyLUjNCZle8rzL/hVXYcfZK+v45cnz4lCckNik0GE5osmDjN/NpWEu8y9JvLibAFwO41pMc8xYGJd7S/3SYC2MNSfWJb8IBEli1L9/NzHKjev0j/JGJs7TPvQqPYlq7hzcMJuAK8v2AlOCZuig5IhJ0k3zzAcZ3xY0xJwndjCGs0QoWQH4SB3hWL6FQEeQkCzZf9wFl0Ce7KSXWGLONT3uAd/u6+Y9p3J1Z1pWyuUPPoJLBDeXHIMNfwLGj2sTaVfiuwmE/mKQGXH8C9az35PQPV+dUlLvQdqNgv/VX3J+8xXo5PN5e3877215j/uN8M8FPlvJUtvVXc15y6nOal5Gz1nD7RkFLSPICw1jF2lUsHlsL0Us2B+XrH2jD+sQcSsCSEFhyqR3eUldEwmHrcg84NXHPs/4zq+G36U9jPKzzkjufaqmHW0Mv2dvXnrn6oTS0RUq1QApgv3x3SIX5qeAqjrldtM0iaU5omKCRtSLkWk6JsyEe6z3/F0RKZgm+D0ivFrzxeEC9SsYWEfJp6R/HRGdYc+OVXjnvmBjLtFZnqxum0zheYYTDJkeZr1BOxJk+427F9OtQt1lpVC7cnt49nge6/bw3x6zuiA3KR0jFENK7JKypf/PxsMbZAlnCzlh7jPMHajMlUeN1KLRDLACc/AQBJFcpiEZX3MUfHglDwDg70ObkG9Qtx30MphG3opueGDHfPV5FRQldMC5/PNHie3ppOiWE88r6rsLPb0QGsJNS+PuPHwyGyG7HQGngi0SMhZ2JwJM8ae34rWaIP1f/mjZPmZwAyy45ip1Mbf1CcqgYXrmefDIEHfNeoBxFtXBDcA2xWemBC1zyvK5DQ2MAkqjE2glfw8aKYD6Z2HFuuDZnpT+zjUIx5HyHbfRKaUxrg1UJS7++6a4ZNYCyFaORNbE8dtr59JaiX7ADhvKBSxH1+aQA71gldpK7wGpz3+KnqzFnXYaFXyRCuiraJJfGimgoBZGhdjrl+USwIZMblvaG/cOCg/nGVkA+wsxHfS+fzMhxK73qkqcQ1F7J2jWDUomlq466c530cM+Q8e4LHlz7X+AUF9Sc+TQemv63qGC3TSctCO3pNylzJOtabOVgnev7a2kw5WIFOEjHXTC7RhS8+87tdE39tCx+Brpn0JwcBkd8uXiQhxqEXZZKDFcQ51TpLbDMgVhG4xPtFWoVH+BDbQNtB3yTsBlQ6uMOkKzg0+/1siZhvd4CzYnJx+0v/85MTP4ZxGvFcdOFuv24Yr+MrTbdHOSIeG7A2lg+i7H0/RO8wgJRz08OysNiy2FAzEr8rEoE6gYQ3Oodeb3zbKhtdvCUImBevtFpL9mkjFz8dU0pFeS+kGhrvGdz/2jjRP1VsFnwb+CBQ96X3tmwZVxkt1YRdnAfnm/JTGgeOSUnbtwCtwiIwP2rwZxoX7ODwOB47vf0RoMlxDoMurHOS794F76yW5ad1LNGnCiG/9OvYmRjYeUsVamneMkjk1AXZAhF0kgl1GwkI6FbDILtD9HUGAGQcuOYMW+iihcMCYCLw96PW+REg7bOW37sHllMHIm+zuw5hpUp5qwst5/mcAbfwekps9TqoPuBMXn1+GuX8pUq8bo8XBU44xYcuVJL2jJKfubtCRJ/GRh480WAYFx44Bt1PrEOlw+qot4XPABt+WR1ZGYGlkUykr9pTdA9bBGLR99aqT/0SqBTGMrnxG/07qQ6BBxE/2vStEG/BNMbMsz3JcLGZKgqfFujJithmHH3PmbeEIOF0JBjifUMF2I06mMpxAvgZ+QCWw7iMVT8T0Yy+EhhdKwqOOkFFboka8B8OHoo4kK3iwI2yiUeD19B/nP2Syl4Y3I5BPWWLt6uy3NIgeBbPqNbkE/JUWtqY8EUmq0819CqyxrzFgRLWieNbHfFjNVt6+gcgp3yFX8MMMQIEs1pLE3+4G/P5LX0YrN+7Bvzs+wl7wd2wKjs1J3V8u+jLO80IZkXEYPEYK+0Ol5WyE1fYDHBOiG4EY3NnXMKNJTDzzhZ98fG8ZhqMX1Sh4MUmAqiYUYRwUbolQ5C/kbOL9/V82xGjpBGSt8ds14VcNPUnvqzan3JMZbZmknjN32Oh72S2P1ExzPjIwT3nnODXFV1oZscuE7tk3ufhFEq61Rz/8Nb9a4LDZ90PSXGLDAH5adGensrT/G+ntmUQt9uUC+P1ZPcl0bvPXbBdVwRjgov94Yfkkz8Llid6GyuW+pnb0auLWfc/kgfD382QbofUpC7NpTiCNqb2bWfrQYLlL3FpdtVuqFTj7xTlrlT5xj8nZC0UuKXTHBay/ko8Q6rTKPtwPi7IrLtuUQIl5aIcU/z/3VJwlDEllZekzKOYEEH6jjre4pg7rTj8jz7I9+PLTLA66D08BfyII7PQLOUdYvHYrkBXBO9NQuw0zX0Nkrza9CqHiZvmYO94ozL2TFzVqTWR5KfGz5Gn29Hw4qmEtpdTzBqHg6a41wNwCGul25kP5X5k7yb0q8CBcULZbYadcHus2+0fHr3wNtKzxakoitQVDVKV99lT6fPUGCA6NlOTJ1n0Lpz5qpZP17S33cAEurO3BkhM4kE2jMROwfzaFXn8LihgWNCHneWY39vd3I4XRbDs4Tz1oLsCH59xAER0PbCEmAbwZrOgunCuomb5kLq0o8Ulgf8pWQGq3T0CZg8th3+uRnOxKiI6hmREj72k3estbqqoiq1zz0JZkVFPa1CorX4JXXarHXTZPQgaMk+xglgKv1L+rBA9mUDKAdYLAaoabFxF/KJJ9bxQOdldIx6NqocGpwPzb2rAqSbbV5mEW/exSL32cPyPvdFMpusCHZM4BpoH4t5qBPtsXveEAK/a+x9lK+LfhT7yISFH3j2CdX37dB5zP4vEhrXgq/rsce5h4fWndZtNYBpk06k7PwysbwVmpwwhX/vCWsJ6foJr90+/nFvbb+EQcJE/NML/yilIU8/UueF+R6nYhUNaSudX1F895NVMkJCgEDfily2koonlr8cZjCfXdnP0ZfVCEW4Mqz6CK0BUWGa/eBEWfbUScsAFwGU4UDhHjVyIH/NXKO5GajVYTlMzfaqdA5u6Mq4FQ9rM3AIdUKvi5CEKpkH+W9NDsGJ6Jnqifjx2utU86k4SLNGEvcYcrXK9u1r3Uk4Egq3O+osxhMF8LX/Slo3DdUM5aM8l7UZ7dedFvUZi1yDwqMXkMCoM3pauylaBsH63/N4vwFqSYKztYSeo3r5+9I57FkNVav3gGNwu07k2k1wnfP85CuoFoj4EW4FTGTlIynmO2Qq8d4kncSQRgdN0XuKUHKqQ5TZN2msLlOEGCyZeIF6MY0zdTFMCQO2yZGOI9S54/DAx5cMX+PxX06hT3gQSeLmH7jy813z/qq/p22kW4mIdq9s1AH1F7ZrVR/oAKq7aZLtq4Hw0suHvMjJTF3IoyKxMlvFCTCoYdtmEmSksMpHaVreXjZjL4d8EFKLrpwRzGrKTm7/muvyfAJP8sMIbtrjAYdjbn1JXHy3AucRQga8HR1o0rnqSUJHX+mGznggZGnsEg7IP5DvtcHnm+YU/NrkarN3ZgVzOGcODw/cBnQczC12yp2jsUer7X59MpeVw3+iYRifMe4QQ5kDaIQRHu3I9Z8Me7hMXhg1pSkP/5osY2cyKfp0SE8diUcAomrVInZfn5Wfe9EhaDuFNZ4VdwqLY3/hBtQxGJgiu/eX/oaSrHGqxYpoqpK7Q7CembWKRbYEh0PELwVraqDQxDENLzl+/cDRjRmqS9OpD8lcm/cc704xvnZxX1J3c+YM7gSiSq5k54q5jTCbjFQdYYTfPYs56hg3NwmP3PUSRm1I2d8SwXduL5digPzZRSwEcdwyW/BncJyAzlU+ZDNjPFx9YJW1AZT1uNnAefRIRNdn81lDxF7i+8Tg/BdR/utgXskl+I/4aKqwRILEHPDBZO03f02zO+kh6JmyyHmHRrlrEQVbG8M62wIZ1XQV3WS5xOO4zJSIyoTat3nAPb/gkQhN3ZyQY8Gi/6YWS3bHzegc7gyYvzKOZ9XbkCMqdv8SI55pjxZ65sPTtSJJn7rvoYlF78lmGkelVLPnOPJYK8tCbmWxjYR0QwRubnhPxOsyixLHYpDLH/nIQhZ/9TQQmVO9CAQ9Qbg2rSN9lMi6P5Lq51Pe8cTn7DMhsXDmkym5JGgXwJvw4sx3CIlnAG/GZiub6IItyAf6E23UpAIsRm8rEHcs4dhY2s8wXtMiLZdRWzeCd++tewLh3U0tMk16mCvPKBM5ZzxKNusLOVHFabL9LGBBTolq98uwonYFWaiZ/lbWo30uDvRdZA3XO6j10924l7CnZVZItSqEWzALH9bPH3/2hM/DMeec3NozVGfeQS1etwZ9gEMoFoJxD46PzZ/ZMKpJTekf7DqX21L7mdxphdTWckTxvqStlTObdp3d4ETu3sU737b2zQBVW6aBqHSY3UNhJDAY+L9u9iCGVpn2nHa8ib2wQGOmP6rtHt9xiq/8ErIMFL1r5nIWQvhkk5XSI5r8Ha2jI/RZKC5n2gPrrHJEDdt+84jO1CTnSR4AhV6HOysNonfGB1GKbvB0zdhvERJ17iTub44vw6t5d0unD4ZGTQp3+GCAka0a9GMVHAqAUQ6iT9tXSWeIwgD5s/k3KEWbC+4h3pWaGVFeGd00WSWz1tIwNpVb1ehginY+d38yz+hE8JVnO0f6jGgv7Vtrt4anFgu7gOZiWrfhgFgbLGV56Zi6CeAjV3rMz6dHOlA5SvKpVkNtl9zUNmIrsSy42qo4LQPRx7WoB6kK+JcntRO6bFkeatLaV9UN0tcQNy2vIrcnpWVJGZHxrVjR1PMD6RgLCkGf6bSQhkLm8m6x3KA59XjiceFt51NSl/jeM8B1hhT/mEWvt7+4nwjP5b4qCfa4rtBwXn1KE/W6vgM2zw8QQKF6bZQLymTCUAoCkcFLZ2FKptT9BfET8eFhKGrW18wdyVpsi5bQ5LNpZKDW186109WGa4uKkuKmREQfiBzxfEnsZv3tQ+40DJvyRSzfIWr/2qDnWwBvvMMNzwTElGdBaBjcb3RJfg8++X/EbbtliR/cpuuz5rlwZMRR2z1jo0/chU9z47ovtbi7o+ZnEkqcIbvldK46s6NE2iJYZKa9rWNF5sbLdeqpAvWenU843PV2DJauxbmkDCOtY9h4UkTkj58svoQUBws5sA2HlnxkIwpjdUqnrBBun400A2HAfOy12vLeSxu2NK6COfF2eS7kjYRFfRUWDFxNIlOqtu8vnhL35FR3hGjEk9SR6SqDGX15wXvv61c8iaFTGs7m02UirjDg3HQmta+DNHTX5zOaUdQAWNT/67DbjPGT3ec6fYkZNQb49P6InxKnYDzybU7DgN9K329ZBgPRhLY8o/vDO3ddJ+ZyH7sKX6+ok7dcttPK3zEz+JJWAume3sASyjxwgx9hfRqPHDl/PVN/QedyzlG3377FlgYaDwk8AtPNhcsJ8+q7Wh3pyUJ1uuHRu/2An2b8L5R9/ydaX6bTdxPKu+P3pl7kB2VrAesr5rx1FBmJsOvrdyGf9VYy64KUcAvcizDjYMywACLpdsJ9M7STfCsVd0SxxBdWaqpXCv2rCsh9+JTqpRRgn0IoHYiUUYVVdP0C70eVg+ZgR10TMx0dWcqJBGUiXwNdMy7x6qeS6GIa+puC6smIKXagRpqYFz5K5zC2Qo52bewpYcGVmR2UcLcB5k0/WHpBzApIBajTpqONxBYagnY2tvzjZEo8KSTzAymeJAj5iZNkhS/Nf1UZAhP0FZv8Hr8mr8rCqRUA+kUwtwW+9Z9zUVOqPMWugXmaWtCsYvQ1AkDgsT2+d/qmc2/yHFFD8aoVPLhXveNqntX+8JZbZAZw4WqCi2s3lWmPFtVlWZlWgcvP+1pTasBnHj84M6hsPiiuvTqjAHalOmv79OHEea0rbEkGOc40vIiwgnVsbXyV1+5rR2ZP+tAzvi4fr1GY5M788DwTQ/vkcmOYkcqL6GUGuU/kPoIEbv6WCHrc3gq3lrQurglwrrlfTz1TsGSf3XDyRxthZkmC6PHvTnluAZMmKf7unrj4CzZ5WwO7kURE8T2TsOhz8N9ZVEq7C0ZtizV7hjC16zEhYtbGaqUpwniNrQ5HlfTBONg+84ttFE9YtLTDSbF+XEXvIPmcZSzSOYg8ieMWbIrqxvHhK7DXLM+hcTwfv0VqtRNlzngFzuXSIToRRGuWeb1XR1WSfaFWaXNMTAkoRfbDhDbBw3+aS473a4xRhtqtdGgpe0CUFUsGvww/P/5vkeouhGjbBFKIq+PO/nZ7tTm6q38kzI9GSQHklPF21hbylum6fij6jPXcu9t32NKBOIITBls0mm3CKs3ccgWupntZL+1qRQKo/RT3r44eQZlCCa/7ZIjRTy5342SUfLS+H4pP3loImxi+Us4YL8sQq0aeJI4aiCUiKzF0VUvjkc2jZjiFZNYmIZ0h/q1QHfOKHuIj99RrGwhGNbH8QuTho5ZLNG/R9e3Rtu0muXuMkAtlSK+x+pgAY3fWMhs8p9YD7hIYC0f6acfxhoMOwH6KG+dRJ17N32OL4lyac5/EYaCCGD39jNK8/+Ub3D2VexF3qICbEumnZul++QYMU9SftR11RuCs5GI14YMM9rEb8RnMbmeHsH00d3+DXtxuLD+0MQCNcRzidf9bXZs/EgZfA5wM5cZHtcLihAYYS+0n45xw6BsRuC3VQ3AUFYM7Ljy8e/NK1okB/97T5bm0LfVGSmILESWHHQ9BGrsR89FnT9nIurKopV7fZy3YQT+oWP1wJAC44UxVxBMGGT2NMMH0TxKTXAPuDUaDAHUoZjdajux2uAsBFfoBNQ0UXEpC4o6j/5AEv90W/FkPhNn03kHyr9qX8/J7qax54mNx0n+ub/gjZSXcZHKCC4MGLItSKdPZKa+FXATNsn9F9CRs3GygTNPk3qxh/+f5hIdwGtbX5jkhhva0cxI0JFJ0wXzAcNmDK3f/qHA0zT+U15YUKm8SIQIpyW8BQY3VhTxSfno0Z29tSDR4tVPi8GY5aWgz2B1hO5ntuwFkpSeBky/+M3i5D4MtFvec7/q59dYkHsc9t3H7/AEOHW8lKPJz56Tt3uwxoo1pXGLBQmLGyuH2coqIgnJkUbQEQT8Ylvw+cvZL6xO2C94Dba6wLByqXEa38CfV7LJ0bxhGstyWhZCvSEwo0PRRcHHjUslB66SruyxIYChebjA47ZV0vZb5QyGQXI3Iynnn8WhoMJMMeFCf4N5t4sSAQs5n4CZX3xoLwffa56h+WnTuHrj+sCQ7zkxoFrADu4feQxXA5aBfKt1Aa0GWxUUKOmuSiPxjRyw8xaup0NBNKSWy2jSJXjvp48Nvdz/oXeEhONvx0q3rkuEZcdCKJLzrfhScd1HyYSfAyT5Ceurr4mRWbsMVE0oyZJhaaPdzxEymmOG7DN/dN/lWCaB7GqOYGRm/H3WOFgCXTNp2vtXuDxT84h3O3OzFtswg9YN3cD9LCQ05wpUYJZqyOQc2j8Ze2xapCdlumINYqajBp6pEt8Usb2CtJ/bR0Ka4cPz1qHKn9FM2jP5nIO9q2Pjy0ukO1p01axjriMhWIQd3zgANSsYgR57qubZrYk6qWkPgTCnGyR4Hhp/unglcC+npxFvQLaFqRg2cwasCC0c/lbJcby7yb86XBaczqqVMbm67QUQURx39L30ll2kw0MqtZjsmWon3raYFHbG5awQ+Ak4/7gkmrRKQ+ahNB+QAyU//mLrCeDqRdR9WnugYRp1advrLSgG1C1qPumO+vDU6ZmRDe/WC9Er6Yxu+49IvJPOuWYIU7QIrhPRn7sAiivZWipbwRmDqyrZ/ktKp4dX4Y6xl5WIS0fQgMsZYT96NS0tAN0hAJsfV4BwkpOfOH7nZ6YmRd2ff4frKVXXauitJ5oDysCfvKgsjlGD7acAzcIQjn+vi6/Acbs33qr9Vqp3ndqIxyuSx2Cg832QbBW4uenx0qygq3wXr2bcPYVtOD7DqJE0ukFfuytrCYt3tTAhrCF00Qn/GAlHJulLxL3r/5TowAguL4f9+phpKoLNFs8CJzeh3LZFSystk5RCL/pf9JJRn6Eil9bVUPzVArYrnsek/dKrlYOhkZVnlB8LmcIAhzvbtymsIAswhIinbWimI7Ybo/hooLvpNk0L9AymOAbjqsj2BISh5YYNyE3HNZ0vI3S5lx5ki00JK8q0ZJYlbw1kEvv4vuLJuG9AfpTqrqKRuhPRed2ftA2eFDnAFF9Tuge8XIxXWH2Ljb/K8tDjVuOX54S+Ezop+2d6C6auqK3RRmHiCyzsYzbZgo/xdoGJMpVeTK4MO0wjZO31jsm37zFqchBgDqCEYcPAzSaNLx6K+zDBw0nSCSkXNO2hWwtkme96qfraq0ql2RoFsTwZ0JGjoNVUoq1rz2EWxvFAEFtK3m24qYlsaG6EFjz+JR341JM2TIlQzCPKRpoG9zJHqnwlhzsqrqXYc6rFfYaDuzw3hPBR8MCmbOH7sRocIZ1eGZhdqPnQQs4MU73dWYdt43sEpcrevRdkmXutev8o2V7Ik7j0pQuRqsWyvqbuP4KAjZqN2VEkpILGr3MSjYQvmcSQaV6KaYiu96CvHSK/IcLXRa6yMpJoyFrAgXKHMTTiTpZsv+iCtUM0pEGSVrLOCtJwoRXhEzBJxe18VzAbQ0DT71o9WipbCg6yn3U0eo6wE+eOfJs8DCfJWOKUcolMYDMQFL9i/zKXLbqABppvK27QyJs/k6Fmy8WX64VVTAt5cIre19JPRxj21BMGRUAmKZ53Ffqnto/kQ6eMR6EeJH22rt6TYPs9Xjf+oyNt38ME2fEHXoRBSrt9hj4+Vz4jUwgaxsjSEHziVyBsCrXhhnR8FjxlswNjI46NiUuGUrWBbROmc1C8cEuA4+wBlA+aPmyhN7DfFiQTVI1Yqy4vqeVysiA5X0VC78ox8aLEbObFAvp4frcqI7o2rJYw/F9OH3Ht4WjPmGnByadfvKMwZogATMBjf6GPG5PNpsOXfs/4shOnRYMw0CDisc3dKtxF4KHq0g6bRZdJ+9G2Kdl84lv0LggKIJxp4gql7zRYzoxKnmuBRGUYSnSRMEYGmeJJFi3V/3mD5P1r/xM//p9iI5AlCBuRAZGMY+2SjlfZGia8sz2cCCp0gYmJG+vtPhnxi+d/nA3HH+6jFarXwrMZbmLo8u4cu3/WRIBy/jvJUJAjO9C4BhL5PNbFtUHqwtvPt0+xInZ2Xf2czOLsd2cY4dp+RKNgYBL+bPhJKun6ZavbWcU13+w0DJXXSz0QOluIeP6rFPtCsNlSGYZ/m9UynGqy6TOKT+fUXotNe3sjrIXn21HWBUkvlF33yaK7FsLLr00HVNKHl+I3HuK225QPxnM5wDE9ZHIpGfCl2FXC9RN+eSR6ZY6hW7YJEQYG32k3YJY5NkvZjtxr9AIq5ZWTYztw+tAm6OGDAypDiTnFmhZYXEyTcCehRbN+LqkPHMcjlixTfwufBxCpqvJqDO7eCcY0Ms48Ukyiwqnipyk/n3gR+9KR6WjAznIpBJLxZbonk8I/iuys1F07n9ob5EGB1IQnmTAZo7dAOlYvk6Dig98OuVdLwba0MSp31y+xJFEHqzbcUjiMry/nOF0YdvP4OKAUgaQJI2jMjtsvWl4l0hcf8cZJqjQKoAq7wKokH4E96rrFn5srch2hw7ACGZT0VzNXlVOq37Nti9QyWTUl64IePoD84b8TGMXP1Laf2Rdy4liRE5UNBmOfw7NhPCRoecCnArCvOXhL3IaJpjJSoFHm8vSQO9KMLBWRB1a86akOi94uGXcdzM0Fr/2AFEtvvyaSw7FzzAGuTG0GhWvzp8lzWP7eu2weWY/n7ln1bJpqTxXacrAauK0loLlQVyu/XOrX7kyTkGtrFnfXl2Ar6Sbw7NgNzifd6g1Rj1n0FXS+klh99hJF9KV48ZFMbbP9oBLgXJv5RrevpRPqI8QMvZ63E+/wHRGZ+6QyYT9bwbGnzMVIXEaSmoCuD7v6Q8bboKbdvJON1FSCNZcjYNzefZiqYfTOdDP+nefQmRpG0PDltUficUq2DNWt1zQuc35ewzE29ynqTBFCmgHP+jdkcmf6kd6nh4WPgGxjEHwiorufygfHk0v2FgMP5B8PCFofK39ZW5j8+T5XhBDrH/3WMeIqWhipv3xVzgY5tmv039EReykYJLpy6XOPk5me0j4bQ8VRf7GNi2vnIGb57nB5zM/K3Rz0rY1J6OotMDywJ3aPxFW2JPTcVdlJNaC95hjgIlkC0qyZLnjg180DZd0uB6hN696SGd0iGHXVsIIICeJHzgTmN6PxQDQsof7n/ysIirLF+ZJnQ4P73xFZGMexW9QdN11e1dreFjjOJJj43JtbizZMzjXSEif3oJFDbRQ2sFHwXxsZETt4h1T/5NbcBqLXCFAV8ZhufFvk2S1oCryP4MTD+TrmJjsQ2oD8G1pXWWOFASOXpSr658/xz6EuknYjQ7PTi4V29JAXlluDhNVwMqTvz9tzpt0mgbH/v48iZl/Htz3irlOn6I6TJivGCZjVYjYuKWAaXSRLgA3q0TCckxr+OegpOJ1ytRd6dl8n6Izx21l0YMTr+CdyuBjFWHteEOgd0TzT0Vk9uyR6W7p6Cmc2ka63Q7rQ7bQllLesgHF/XQHj7AecJy1IMUQICrUejBLDfbj3vOCLxdbo4SpNBPTFJbYsGyVOOwdaIjv2u0kdlQOYf6AuOte0usVChKfDalnVJm4dhCdsAN5ONVm7r9bSkwo0WnJ+a2tgPYIljKL73vfHHCuxYAYQqAGb1I6OGcL713R06+WlpgBww1E10JCDK3oZnhQPtCyTaO9yVibTpF1au/HwCJf5shwEWVwzE1EvRNy7LtEyFY4qESUlQ1diSc8c+HgbdCXL1sG5M1uApRGOA8+/1Uud1N/sSdl29O5LbTMUDBFEusJ58EgKBfvxqc6EYhI0CDb2jIw4YKnWKchLkyoQnOZYWy8SVyGbeYlUuSDt22ocy3waKYBp4C332PUsPtlTWyWrXqhN+1cm6azwqUBvqTUMIKf6vyp2MkhMpjhx86aGgUKP0c1DdlxArPg5IMu3WvYufV5fHYNBxbeyg8kgDwTxNS81jJo0C+Ogrxs1suVY8kI01FWMoTKQ5zdLwIyRVbwqm4OXdNja4eXTDLaaSCtG70d95jyg2tSlAjoGqC4zxouyDrxV/xiY1HPBXPvAIVTRR4kFSnjIgCkHFoN8i8RpJYJ+t5gi2K+GibxZ6qSwyN3ow7n0sabNSj3PQGlgNlY66yzkmmfuogZ1VhfnUcyrXKrEGMpYTa6c2MOJWehFoikb/9JPGhcmhlcV61PwE1UIftVGARBVFeWsfo9DqBKK+Blnwq+gs9qKLL1wFlGS91wv7YaMqiBjwjlv9g/QEiPiuLxIuyN4pFYyOgMa+V0bF1B9UW+DqDXp+r24MG70lpRiYDu9qnBtKbZsXk2HKNkZ3RFJ++A5sX+1BbmcVWfXQJ3sOv6s/g8kii2F2DByjy9/YZNComYPzY0o1guGx7i+usKuBgMlWX9223UwL8iD4YBLs7Nprvqt+8Ros/Y/v4DzhMoi4nPvjU/foKmza/FpLEHkaTrIfRzSfU9ZxKmOep2dmvgkrwlmV7seMzWDSYul1ssy7uj1JBjvunqzP0hTnonUSk6r5BILLlCoR3B4nSO+AHG6Wx2dW0WA+P43m9lGZNTAq84GArV8XQN4TLO9acza7IkU+4iH63BsTpi+zIVnlpNcGLz2GkfV2V4VzK7ayQqTKcpYC1MAhosRu0ZcE1egaHIuyY1ekf1yDhItw4s45t5OTqZFTya5cPCmensNhb5rY3JaomjoI6pM7jaS6lCRnfcHuhW5ebTVofNO33Z8odd5omP/C+LE8fuL7dSNf0GdqVuyqnaCpAFEC0v8VW5rrFKTaYTks7XQm6c1g/w2oZcl9ZZet0/B3YEwcb9kQmKqkgQzFiRpJpFnL4xHmBK1FZlVsQjaOd/f+/rnMpSsDsTYBPV0Xb6d/cGfBS5HB2UFIgxavwzS/eJcrDDQGabZYj40NbCyHHSSkyyaWZHLOS4gm2FMYvXF3ioNNWg+Zqid501b7jgF8elumccQfKG3Ty8VsDIQfEan4V4GPFXJlq2njl7l0OQqRXt19t7Dxq8XbMSrp4Zwms7XmhKz8gCkldgY6fJ2uUtJUyN6ZtOUHl1YKepqKe98y2I5LXqzSMfsEvKRdwi9ZHo3yuXbRRoJYErQPw6+Mfdaq86veJNcC9v9osSpU9camjLtDfDLgb0lRHZBLjxZj20ceUQKs1X8EXNtI9XeGGvOulBfiIwxN9ubKlK1/QBn3HOmHxmS0rdOM7lC3FrIlzHHcmFgDFM4JhwKSGCUV9HYRJGGtQGcewf+1PztbrRgmNi63pSa6E09OddlXloEK1+8EITv5zVARSp0MbuddPzerdQKEk5MqIe52QnJiWNQL44YcTQTu2soaXxF6akLwJkK05sYUl9gPpCm3aUTfMLpkMyHvda2eANBZlcAMZj0gze5h9KUF0ILDLSmxFGzmiP123JhWCA9k/v1zGg+FRQGHCEDOvgZnJEGVDtC3BTUePnK0ZsGU3lA7/C0n/4mLlZYOqPxZwZX5kcCw0xUWsNV5jBT5rpdXM4n+ChzniBpSUVYKrSOOnwvctmaAdZHn6L7eYmTSTSL5JVjPhjlELKx5TaRELLsTbpUtoRBaLFg5zZeL+2Vytcz7Kb09hMoUJKHmW48kJ4cHo0MIq7ih+m3jBJFv3TtJl0Sul5b7PFo+RRrK+Ubkx2rnmt8YVd8eR21tDcZDH2CpXgSKkTyKqadoBopz0Pq9NOpkTH199Rhb0wfcPDOyx1j9oHHVX6ZJG1LGt61zVhQhrmVxiK5ENsDarWvVYCroN1CSuqlOiabMJ4Smi7SG0tng6D8GVec3RUnZAIA3B3VGjCVHtVSYYWTtgYo41NLoRCZjP6PPv7rpUytbk4dljNR0iFqyl8qUG1ULO3ZvqjnBlJC2bEMFh+y8M1t9My15uuLzMPVYEuAYk0KSg4WifPMXSEbHJgkGMe4HSCK+R81x5F4pgD8JyGcVqwyLAg7owCaDiPllCUWBu+WBzNnihwgsP3ol9QPdsdZCHLBx9BTihkeDEzEa4qp74/avTg/Tvhg5elVMyZ47E7TQgWBY1CFRLd3xImViz8C9bVi2Mk26Q8chI/30lK+AUCl8Xl7EKWE07hvWWgNHMcHokb2b20LQTcIbiz8KK23bojeK/iOlkCwESTEC6kEf+ipsLumXC7t8wX/X1gyM6D3y1FZoonCQ4YlLmtKG5pv4stv4Cqa57vCnFyKXMo+UpSHcVFm2/PdInRsq8UhbdDkikk059aEKYgeSk4AzpWVFGaP5EOaACmQ7VYIZWQuSjnebD0fH5ZaeISWOj/uR80CDDetG1Vlb9o3iTc1fRrLVDLNmOAG499xKw6kY6sjcpAugPUthHsbToujggb8sOYTMm+xVKsPm60Rxs+44XMP6eVa7KTj3f7xWudFHZQx8T29ceXhK641MhuNavqk+BwqbAXhmaiKP3WrB4QPWXvlU3YXSMsONgU54eAcexrrssL3gdD0E/WQnwH9bCI1foHh46Uz8kIQ0ps1aj2ymo57fqzqNZqvHHH1Pt36cmUVQYbQ5ehvOfuezlqfPxcTHcygsD4XADmBZBwP/w7FdWLlPPw4/R42vGMiaNNIEqABzHwajAjpetH2pzW4hckAekPVp+jfakyNR/sazW423IB0FSsWEMQX5Q12MdvhHUfuf0GufWoe3W2eQ4EkY8W6fw8DQGXUAicQJ7IxefSRPqjab7uuvmFoGj84jxS724fZvn5GtKcVFzB26fYF+5jJvpiyBRxWhhSc5nLbAjQkbKh2SReKx3Mgc7ZJQXCl+qgYpB/sDf4JZUNnIvmcvYj29uuxuumlDcK+P+h7cVkCxbbA/VV6PX7alj/GeixzLf8eTg65u7BIrAkULu/oDr5/YxRLHWXfZ0f50Uq7Nwsx8hkXM0SlWqXIxUOLDzgOSHEAfRY57Ae67xL3H4EJteYa7JPr0qfSdWdNBQCW80lAKNKk3Z3HOLLkZ0u/Yfm8GtCNLKZfRx5hMNIlVkM1wGA+5QI724X2+Gg1WTzTt863pur8b++BWCXNERhcAxf7w89QHJn19Yul0sYnkFOBvXO50Y0f5ybdP5wOZRDwjfGjv+PAmE0zHFKvyNEl82YgF34MIDSWP4SpOww509IcAddn8ftA52I5joEgmah8TQrYooJWr7O6ae9oxTPd54JJKarYwmgaF64BXG8JJjZyCM/kxLlPgwAKoXJmtEEHtxtwxLSo4GdPQ47qyeTQ6CkbOyB8Apj9NfmCbiEzhB/BvmlhGTU+uDTHIrtsnxWQikwW1NFXG8kXJVhJTmTh09D1UPMcvEV62MkiGtk9axOA6P325Vyx+Rc5FkIxNxPl7cK5QyZVlDQgpkm0YFrDc1XlyfOq8oQDI1lChiARgwAOuH75q36LOgIc0pVPDkLKl0d29DDFiNc48/CimALRknWkcXiDLcjPp93kvp7SAvOTUTDjeNj1nFO4Q9muKm69nDcN5PRk7K59ONFAol+0qANc8/iJZyofLLyVzhlM0k4qI59O0YjUIE2QqcWd9Tu/8kgMJ0vWGfYz92T9b7RoaHUKbG3Y8fjKRn2UrOCm89EROJQYC6YBUiypsIQREN5P1ALMyTYKDW1pw4p7ZZUm6JfMbQoX/FXDXgoG0jAKMFV9ZbZIyQw5BJ2a3ZdwbCVvYDAq0wyutcgZ6+pcnnwuXQxf7xk/OYZcqtm5+8bod/eYZhQyNghtRUrpw9LCHRic1GyIE1mJ2RFTbpIgrqN1h1onfTr/rTj15ULSbZBA/cAwzoEkVpbCmvQGyXkZaA55SuXEi3+bQPxA+zhd5Mmqxt5jIk1Yw4XQ5dcsrSBcHmFZpue3XSbEcqI4sWMjmGjq5g/WkUrlFOECoDCJ9/cdensdQaEevsQMa2gL5yXZkXEEKQotMB+6tTMNDUt2tRG+exkOWl6Q6lk+1FAQV24D7Pr5n33lo5u62n9U39cjxWRmyJRIoEwJu/PqvCkZzjdj32fKG8xBUn1heNuS/ErxrotWnGh9/+Kam9QPztJ5ZXCaNIWc9/RwgejYb2vAM/3o9QqiaGk1gJ9Jf2G0Pvk2eT+qjQx+VmJ4bshMNnxJrJgIriiqDYW6y1T2Xdpg/DLFSnX6fIGiHbhB1Mu6hhseDO9YNoA6h9x/dTTUqirCOB43fAl1kY/v4+l090N5j6n82A7vdkedQPX1xuw5DXdp+sMqOg11PqRanPp6Uy0xkgnMX8EkuNUOJBfCD68fOCLNEZGs4/xUr/1QtCCnyoz9mftXV+e+ZVV3br57Hrm3YJ+tQ09iMoyxi7fktTAJ0DT0ur16pR6BqZ8McNecMsvHUr/JgoK5imBj4FgxHMLiokXaHBmWDlznteyxFxFSCVhDkYfe7zpCQaXf+PKqNC6e+kz4teRmkJ+J+47tSccmsjKp24RxDvIe1ZuhrjvNu6JQG8ZXbl2QPhGS9JcpbmxYlyFeVn+v26yVNNdkXG+abIzE74LNebVKbZSi0MB7/4N49PpurL189Fg7M8zXWNfcoBPbklmuTRfHIThcAZ7PJYCcybIhewkSytO5vmpCakKKUJUUUMWji3Gm4Li+9zecri60lRyuVchrFKnLxlQ3uRhiHV6h/RdeeSlGMZRLiJW43JxGnIDIsNyXnx4EmB5kamK+PUy+4GhdQelXennDyCs6AIPkc7A40IfBsYuhH5TvOSOAhCSgwOCgT0W5uUC4d8sC0j5aJzCTNt8XuvguK1dreayoMl32FsXgTdSYopq9wGWnv2CoWNTFB4JuShx2p7XG5eswNikLEUvrndwlnQrKB0/vKJcWLyptC6Z1dWkeo9Fsy4YwGfr+6mJQ/XFGDkiz4jljgPPrP/rPFXMD+WnXmD7532rY1QdgOeT6avPVB6BQRhW14bU6KAhX/yQbcqrU14++7Vwd9q+Uh5K6WdUKDZrUhBsUA1AJtqOMQVHI1ePJeYCb+GGFo2uC+5y+x0PhH63B4IsGnzOZXWLDm0qMG60khLnwG1CxQjhYtlDQ6m2lAdXHkO1e6jMNQD7SpHQqK081F0H7ntIxz8AQQVXhO0NqdyA5/l2grgJF1NEyt+VWAX4HHKUFT76hHaewzyFpPP/dvxOiTgEhVU2G8Fv3pij3+CqUm2N78PXgypf1jb5Nnej7ZkBfEWXNTgOK5cEZ+wD2xNb5Puw98KRAXZa6GsUGJNVOWeBN104+mEB4z+ZADrxv24mjK125J8GmuEIjEz/27aWl2Qw1MW8oB3uuXr5mXeym6kNNC35hCD8cg3LHZNRDTCXyMlWA0QcWfmhJt2jpwxFJTLTPo4DspOw9B5yVsJY4qVESI5lvk4tnmMDlywkOIBk/QprW9yzdoaIdtV267T7Y8detVSbaQOHI5TAZkGKL9zWtW53b5nMwwFgydgs+FNSBjf3ccaTOt89CIIy5+K8+onCwfMx5Sw4sjT6ENiTq00uZFQYhz/f2mLJPFvHVVtAFrXJ88Ke3JrpNAw1KtDGLTjpDnS4d+WICXzzw1xcsgbmS1gkerZe65TZp1ARS+YnOaH0NMFRU+WhwGsUcrhjOYpbKVuEhZK+N0OKea9m5WU90JO4ngJBQB+xsz97NUYCwTFo2/uzPuXvIDUwx/q+sJn8XIMRe5x0CtRPeFIWY8iSN/Zb67jSE6Xw0NlZrReiPPfiKrPUqJtL6TZ8emDtcFI+03FBfH5BHWADYGsvdNqjfWlJy2D8+6W5UhrK3IBASujDyRJFo5ZiSGdpenOd+r7rJ5K8YCHYv2SuyweQKU+gnuiw/9fij95CgGzhLNVGIYyWrTuBEoCb6zC4gvRqeMu7TYnNkouUUSLIqfY4p3ls6CI1kjyzFt/qbZYCbNd+dKKPZd8TLkxvB/m2acXj5s5+5WXluqm+QM0kCw5gouG7ch4Yf9DFAdums3ileROv7ZPXD2Gp+0G0z2iXjaiF2YoPaqq9Tjpf5zAcax56EktgrMKgEp4BmRuQW8kIkBHtpqZdUH/WeuuRxHZuy/jXovFLRHAMr06GtiezG/04vR6MVsQUz97/qvgs0XC3QQ0tj1qL5ac97IslLzeSq3C9/Lo/3bHBlAe/31lO2M7O+h7PbUdRO6aDkVPBgCRfL2qmMJEMe5ngLRT5iiai0E8u/BXwISCwFNWR/mmYtLYvT9zAnpzy3KsGu0S3FkqnYOfeNGEI990B02Niw6cSoKecDa3iTfn0ZErVRJ3IofMOKyo6umUDlDBS92G9LlcsVc5syiV4mpHkF7EHcUIYd5pevmKK1nFhZWUZgiswF2bVb13i0n0NE4t3otiiRWY7hno+zC45b1iVgSC2D3q35qCdpRNw== \ No newline at end of file diff --git a/潇洒/webcast/json/HYZB.json b/潇洒/webcast/json/HYZB.json new file mode 100644 index 00000000..91442609 --- /dev/null +++ b/潇洒/webcast/json/HYZB.json @@ -0,0 +1 @@ +T9gRzxVv97kY+03muqZ84l2hNKMQ3mrHJFyTiCRwHqwb6xL0mipcsNebe9T+7XOBlWWx9Nx4FT4pKvyS8vZwL8Jw7dZcj33/hHQUl+qNArfk5KEUKgMyAbHlQ2kpBCee2s7iR9W4EavYhXFM4sXImt4KZEPGfM8B1wEpwX4cPiv7R8oXUUN3jjkC0pC46fAPwuFQP40uMAOdBg+TTBrevk8bSKeEk9NZqoduzwXm7I9JSfIfhGkiSJ56FFhRWIRGy9zJAKCUp2I8TIK6lVJQCzb90OMzq/BNchYNfHMSrkAEVvXRwd3jPBgfVXD94SLIuC0tCCaH1fvWr4PeYYEj7dw6tXrM22Le/lWFIFo64q0ZOQSkRX4uTJVzRbsz9T+myZpHY2/8A0JezPMMv9RtZjsVE+mx69haiRlxvwIN4iQJYFEU+obIJRUr/ihj/UAzQVpMRTb66FcNOphWfo2D7bSl1TMc4cwL9GxsmBFooYEfXWWwKaOvKJgQ2euRGKWid0JTqIdykL8AvbWlwnrjUuJZALjzQf/0ME0xYxIlrbQYsmDwHuaLvavFntIaq2PN3B4ZU2k2ENyszd9Galu4ACu6DCft/6/cBcG8Ln7PRmzlA+u/8lePc7a8fM2Pb16MnlHlHpVKmBUU1hTJVv4IsnNBdXaOYBz+Y650o87ALB+HlNQeDbmpW8/Zxc/YW9ca21IBBf/9z5rarcpkLOlRVlXsefYpqi6OiwzRiJc1/U8AiZ56mJd5lM2W3t9fiDznl6NCVzyLcdcd+X44jOzKeXr+i0FzVNnzBEoB2MzerehOH5fNfe/sR1S4uOEP2ZLUeF8AuMWTJbY/9CCvFhGxC2OFQDW9VYnOaFIspIFkTL4dRiQ6AZw/AVb49tuRlpNEy9L6tPpXn1eb3k/BH8aQ/kKaPEr7BNr7RwPPsMickmpJY/WiYK3gXv/zES1w9BqZd8p5LVGuxJtLQ46qo73dy165skPbIC53kD/Jf+minMehrhz+hhD5r4iu/Ksf3OJtGHcP502ZZ5EIEj1kHgAdEKy5eaFkID+J1Q7VIH9ne9rD6d5z7oeEdKOE3rq/aHSsKg4jyk0hsK24fcHO9Yk36YdDdZP48+Pm7d5RL93DDmr8gLv/7uZkXcQuSrLPi8vmTUzZD0DIgl0nA+8wtDqgZdUkEdPBIPZhosE8Yxu2ldFIkxJvZd5tfo1BGnu3/XGRx1byRXD19o4m/pJ3kjMuP3JrAme5gdCzH/ReO9Nz7dHW+A8yscWny2rhsewjhDM4V3L4VvgUUSVvwxopIeyt0VD+wFEEkbjlXEGBKcHm6Ls/2geEDGx/pevc7eo0uXS5j5OStZdCNYG4yAaxfEdSYqVXywI2lEyCJbT3yboPYDhplltCzjJprPI5mXkbSg9TS17WBzrvOfPb1bhDiuU/2fvLrS/gMZZ7v8DavCfi01EbJH5IH698542F/C8Td/VKB2qWFrv6Uot3gDoFwFj4+xVthhNjArxJ99vz0vHAuMzr4ZQG65mB8k0LQIe/6VgtVyNS3pmY1Chxs19KUaQOgjDtt6t5ujlt2i/TPB3Cpwh6nOCo1fyPcgIMEIkxbk/B3Z3i98BC99rQtuoi7UyGA6SK3/E0snjUbUZcSs7O/MJwIPy1Fegvamh8TyL3aQ/Q+Mr0i4lGdUL5UZTcPB/kN8kxcgsSSgTU/a550NZ7VohXmLPfBpAqH1snxdlKdliF9I3Zbz1GzQTrHCtvst43eCgwofyb+50Lh57nDcAeQ67pAYqHA3rBR7AZxjTiTMybxmG9UyfzHjmt8w9Ha2Rh52hLkzPHV8KXsVKd++3bfdSl8rXf1Bd9XSPeTXeBTpNKGjz1FaxMN+IA6TL6xk9xxv8v8JtZQZ4kRwInASlNyD7VAYWc4ZITDsdcHhwtfCsOt3gw9r1BvlWOCXPg0hIyOE40sbDlrv1TY2m4l0IiiStM717xV4WjNwtuhyC895ukugcDwE6DcqRNPwjW7IQKdWGQsoN6KwU8k9rsJsAvYXf/xfkdoOPILjDAG403gDsd8RBCeVuKZc+fC5g0hMfT8Quq0z4I7HMqSxGc7IF6XzChH0vJWbu4itB8oY5IhaJsL6xpTOI+m8eiJY5cbLh9OIc0gFarsbdC1dFwLjpwLzThR5uNYuVx6hyt2z7VPbGbF3G5CmH5FG43gpRXBDHnjvNKg+euDXeyOkZXbJ0Clf2jjpuj0mSGZDWSXrURoGzHhD0d7SXZQ7J23L6e0L6h+MXjg2rUEKwCoLK3gChyxE91sPDZ9uWl+SJBc37TDFqXlh7B4wJIn/KPT0zXfUeVAxcRQfI/3GE9oA9f99TDThqH7TnL+3Q68hu/U82+rt/oepUGyO1e+jh8N/lZAEVWU9KOiQ3Z02k827jTvzIDprmH4cQfWbBNZFKcCJhAjxZUmFSWX6y1Lh9/gvQTzq44GA== \ No newline at end of file diff --git a/潇洒/webcast/py/BLZB.py b/潇洒/webcast/py/BLZB.py new file mode 100644 index 00000000..fbf2c77e --- /dev/null +++ b/潇洒/webcast/py/BLZB.py @@ -0,0 +1,314 @@ +# coding=utf-8 +# !/usr/bin/python + +""" + +作者 丢丢喵 🚓 内容均从互联网收集而来 仅供交流学习使用 版权归原创者所有 如侵犯了您的权益 请通知作者 将及时删除侵权内容 + ====================Diudiumiao==================== + +""" + +from Crypto.Util.Padding import unpad +from Crypto.Util.Padding import pad +from urllib.parse import unquote +from Crypto.Cipher import ARC4 +from urllib.parse import quote +from base.spider import Spider +from Crypto.Cipher import AES +from datetime import datetime +from bs4 import BeautifulSoup +from base64 import b64decode +import urllib.request +import urllib.parse +import datetime +import binascii +import requests +import base64 +import json +import time +import sys +import re +import os + +sys.path.append('..') + +xurl = "https://search.bilibili.com" + +xurl1 = "https://api.live.bilibili.com" + +headerx = { + 'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/129.0.0.0 Safari/537.36 Edg/129.0.0.0' + } + +class Spider(Spider): + global xurl + global xurl1 + global headerx + + def getName(self): + return "首页" + + def init(self, extend): + pass + + def isVideoFormat(self, url): + pass + + def manualVideoCheck(self): + pass + + def extract_middle_text(self, text, start_str, end_str, pl, start_index1: str = '', end_index2: str = ''): + if pl == 3: + plx = [] + while True: + start_index = text.find(start_str) + if start_index == -1: + break + end_index = text.find(end_str, start_index + len(start_str)) + if end_index == -1: + break + middle_text = text[start_index + len(start_str):end_index] + plx.append(middle_text) + text = text.replace(start_str + middle_text + end_str, '') + if len(plx) > 0: + purl = '' + for i in range(len(plx)): + matches = re.findall(start_index1, plx[i]) + output = "" + for match in matches: + match3 = re.search(r'(?:^|[^0-9])(\d+)(?:[^0-9]|$)', match[1]) + if match3: + number = match3.group(1) + else: + number = 0 + if 'http' not in match[0]: + output += f"#{match[1]}${number}{xurl}{match[0]}" + else: + output += f"#{match[1]}${number}{match[0]}" + output = output[1:] + purl = purl + output + "$$$" + purl = purl[:-3] + return purl + else: + return "" + else: + start_index = text.find(start_str) + if start_index == -1: + return "" + end_index = text.find(end_str, start_index + len(start_str)) + if end_index == -1: + return "" + + if pl == 0: + middle_text = text[start_index + len(start_str):end_index] + return middle_text.replace("\\", "") + + if pl == 1: + middle_text = text[start_index + len(start_str):end_index] + matches = re.findall(start_index1, middle_text) + if matches: + jg = ' '.join(matches) + return jg + + if pl == 2: + middle_text = text[start_index + len(start_str):end_index] + matches = re.findall(start_index1, middle_text) + if matches: + new_list = [f'{item}' for item in matches] + jg = '$$$'.join(new_list) + return jg + + def homeContent(self, filter): + result = {} + result = {"class": [{"type_id": "舞", "type_name": "舞蹈"}, + {"type_id": "音乐", "type_name": "音乐"}, + {"type_id": "手游", "type_name": "手游"}, + {"type_id": "网游", "type_name": "网游"}, + {"type_id": "单机游戏", "type_name": "单机游戏"}, + {"type_id": "虚拟主播", "type_name": "虚拟主播"}, + {"type_id": "电台", "type_name": "电台"}, + {"type_id": "体育", "type_name": "体育"}, + {"type_id": "聊天", "type_name": "聊天"}, + {"type_id": "娱乐", "type_name": "娱乐"}, + {"type_id": "电影", "type_name": "影视"}, + {"type_id": "新闻", "type_name": "新闻"}] + } + + return result + + def homeVideoContent(self): + pass + + def categoryContent(self, cid, pg, filter, ext): + result = {} + videos = [] + + if pg: + page = int(pg) + else: + page = 1 + + url = f'{xurl}/live?keyword={cid}&page={str(page)}' + detail = requests.get(url=url, headers=headerx) + detail.encoding = "utf-8" + res = detail.text + doc = BeautifulSoup(res, "lxml") + + soups = doc.find_all('div', class_="video-list-item") + + for vod in soups: + + names = vod.find('h3', class_="bili-live-card__info--tit") + name = names.text.strip().replace('直播中', '') + + id = names.find('a')['href'] + id = self.extract_middle_text(id, 'bilibili.com/', '?', 0) + + pic = vod.find('img')['src'] + if 'http' not in pic: + pic = "https:" + pic + + remarks = vod.find('a', class_="bili-live-card__info--uname") + remark = remarks.text.strip() + + video = { + "vod_id": id, + "vod_name": name, + "vod_pic": pic, + "vod_remarks": remark + } + videos.append(video) + + result = {'list': videos} + result['page'] = pg + result['pagecount'] = 9999 + result['limit'] = 90 + result['total'] = 999999 + return result + + def detailContent(self, ids): + did = ids[0] + result = {} + videos = [] + xianlu = '' + bofang = '' + + url = f'{xurl1}/xlive/web-room/v2/index/getRoomPlayInfo?room_id={did}&platform=web&protocol=0,1&format=0,1,2&codec=0,1' + detail = requests.get(url=url, headers=headerx) + detail.encoding = "utf-8" + data = detail.json() + + content = '欢迎观看哔哩直播' + + setup = data['data']['playurl_info']['playurl']['stream'] + + nam = 0 + + for vod in setup: + + try: + host = vod['format'][nam]['codec'][0]['url_info'][1]['host'] + except (KeyError, IndexError): + continue + + base = vod['format'][nam]['codec'][0]['base_url'] + + extra = vod['format'][nam]['codec'][0]['url_info'][1]['extra'] + + id = host + base + extra + + nam = nam + 1 + + namc = f"{nam}号线路" + + bofang = bofang + namc + '$' + id + '#' + + bofang = bofang[:-1] + + xianlu = '哔哩专线' + + videos.append({ + "vod_id": did, + "vod_content": content, + "vod_play_from": xianlu, + "vod_play_url": bofang + }) + + result['list'] = videos + return result + + def playerContent(self, flag, id, vipFlags): + + result = {} + result["parse"] = 0 + result["playUrl"] = '' + result["url"] = id + result["header"] = headerx + return result + + def searchContentPage(self, key, quick, pg): + result = {} + videos = [] + + if pg: + page = int(pg) + else: + page = 1 + + url = f'{xurl}/live?keyword={key}&page={str(page)}' + detail = requests.get(url=url, headers=headerx) + detail.encoding = "utf-8" + res = detail.text + doc = BeautifulSoup(res, "lxml") + + soups = doc.find_all('div', class_="video-list-item") + + for vod in soups: + + names = vod.find('h3', class_="bili-live-card__info--tit") + name = names.text.strip().replace('直播中', '') + + id = names.find('a')['href'] + id = self.extract_middle_text(id, 'bilibili.com/', '?', 0) + + pic = vod.find('img')['src'] + if 'http' not in pic: + pic = "https:" + pic + + remarks = vod.find('a', class_="bili-live-card__info--uname") + remark = remarks.text.strip() + + video = { + "vod_id": id, + "vod_name": name, + "vod_pic": pic, + "vod_remarks": remark + } + videos.append(video) + + result['list'] = videos + result['page'] = pg + result['pagecount'] = 9999 + result['limit'] = 90 + result['total'] = 999999 + return result + + def searchContent(self, key, quick, pg="1"): + return self.searchContentPage(key, quick, '1') + + def localProxy(self, params): + if params['type'] == "m3u8": + return self.proxyM3u8(params) + elif params['type'] == "media": + return self.proxyMedia(params) + elif params['type'] == "ts": + return self.proxyTs(params) + return None + + + + + + + + diff --git a/潇洒/webcast/py/WLZB.py b/潇洒/webcast/py/WLZB.py new file mode 100644 index 00000000..26029ef1 --- /dev/null +++ b/潇洒/webcast/py/WLZB.py @@ -0,0 +1,1260 @@ +# -*- coding: utf-8 -*- +# by @星河 +# 修复版本 - 参考最新三合一.js重构虎牙、斗鱼、B站直播逻辑 +# 修复:虎牙清晰度选择,确保ratio参数正确传递码率值 +# 修复:斗鱼切换分辨率只能播放1秒的问题(每次重新获取安全密钥和签名) +# 修复:B站使用特殊UA和WBI签名绕过-352风控 [^90^][^30^] +import json +import re +import sys +import time +import hashlib +import random +import urllib.parse +from base64 import b64decode, b64encode +from urllib.parse import parse_qs +import requests +from pyquery import PyQuery as pq +sys.path.append('..') +from base.spider import Spider +from concurrent.futures import ThreadPoolExecutor + + +class Spider(Spider): + + def init(self, extend=""): + # 初始化B站WBI密钥 + self.bili_wbi_keys = None + self.bili_wbi_expire = 0 + pass + + def getName(self): + return "直播" + + def isVideoFormat(self, url): + pass + + def manualVideoCheck(self): + pass + + def destroy(self): + pass + + headers = [ + { + # 特殊UA绕过B站风控 [^90^] + "User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/126.0.0.0 Safari/537.36 Edg/126.0.0.0" + }, + { + "User-Agent": "Dart/3.4 (dart:io)" + } + ] + + excepturl = 'https://www.baidu.com' + + hosts = { + "huya": ["https://www.huya.com", "https://mp.huya.com"], + "douyu": "https://www.douyu.com", + "wangyi": "https://cc.163.com", + "bili": ["https://api.live.bilibili.com", "https://api.bilibili.com"] + } + + referers = { + "huya": "https://live.cdn.huya.com", + "douyu": "https://m.douyu.com", + "bili": "https://live.bilibili.com" + } + + playheaders = { + "wangyi": { + "User-Agent": "ExoPlayer", + "Connection": "Keep-Alive", + "Icy-MetaData": "1" + }, + "bili": { + 'Accept': '*/*', + 'Icy-MetaData': '1', + 'referer': 'https://live.bilibili.com', + 'user-agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/126.0.0.0 Safari/537.36' + }, + 'huya': { + 'User-Agent': 'ExoPlayer', + 'Connection': 'Keep-Alive', + 'Icy-MetaData': '1' + }, + 'douyu': { + 'User-Agent': 'libmpv', + 'Icy-MetaData': '1' + } + } + + # WBI签名相关常量 [^30^] + MIXIN_KEY_ENC_TAB = [ + 46, 47, 18, 2, 53, 8, 23, 32, 15, 50, 10, 31, 58, 3, 45, 35, 27, 43, 5, 49, + 33, 9, 42, 19, 29, 28, 14, 39, 12, 38, 41, 13, 37, 48, 7, 16, 24, 55, 40, + 61, 26, 17, 0, 1, 60, 51, 30, 4, 22, 25, 54, 21, 56, 59, 6, 63, 57, 62, 11, + 36, 20, 34, 44, 52 + ] + + def _get_bili_wbi_keys(self): + """获取B站WBI密钥 [^30^]""" + try: + # 检查缓存 + if self.bili_wbi_keys and time.time() < self.bili_wbi_expire: + return self.bili_wbi_keys + + # 从导航接口获取 - 使用特殊UA [^90^] + resp = self.fetch( + 'https://api.bilibili.com/x/web-interface/nav', + headers={ + 'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/126.0.0.0 Safari/537.36', + 'Referer': 'https://www.bilibili.com/' + } + ).json() + + if resp.get('code') != 0: + return None + + img_url = resp['data']['wbi_img']['img_url'] + sub_url = resp['data']['wbi_img']['sub_url'] + + # 提取文件名作为key + img_key = img_url.rsplit('/', 1)[1].split('.')[0] + sub_key = sub_url.rsplit('/', 1)[1].split('.')[0] + + self.bili_wbi_keys = (img_key, sub_key) + self.bili_wbi_expire = time.time() + 86400 # 24小时过期 + + return self.bili_wbi_keys + except Exception as e: + print(f"获取B站WBI密钥失败: {e}") + return None + + def _get_mixin_key(self, orig: str): + """生成mixin_key [^30^]""" + return ''.join([orig[i] for i in self.MIXIN_KEY_ENC_TAB])[:32] + + def _enc_wbi(self, params: dict): + """WBI签名 [^30^]""" + keys = self._get_bili_wbi_keys() + if not keys: + return params + + img_key, sub_key = keys + mixin_key = self._get_mixin_key(img_key + sub_key) + + # 添加时间戳 + params['wts'] = round(time.time()) + + # 排序参数 + params = dict(sorted(params.items())) + + # 过滤特殊字符 + params = { + k: ''.join(filter(lambda c: c not in "!'()*", str(v))) + for k, v in params.items() + } + + # 计算签名 + query = urllib.parse.urlencode(params) + w_rid = hashlib.md5((query + mixin_key).encode()).hexdigest() + + params['w_rid'] = w_rid + return params + + def process_bili(self): + """获取B站分类列表 - 使用WBI签名 [^30^]""" + try: + # 尝试获取分类列表 - 使用特殊UA和WBI签名 + params = {'need_entrance': 1, 'parent_id': 0} + signed_params = self._enc_wbi(params) + + data = self.fetch( + f'{self.hosts["bili"][0]}/room/v1/Area/getList', + params=signed_params, + headers=self.headers[0] + ).json() + + if data.get('code') == 0 and data.get('data'): + # 保存分类数据供后续使用 + self.bili_areas = data['data'] + return ('bili', [{'key': 'cate', 'name': '分类', + 'value': [{'n': i['name'], 'v': str(i['id'])} + for i in data['data']]}]) + return 'bili', None + except Exception as e: + print(f"bili处理错误: {e}") + # 使用默认分类 + return 'bili', [{'key': 'cate', 'name': '分类', + 'value': [{'n': '网游', 'v': '2'}, {'n': '手游', 'v': '3'}, + {'n': '单机', 'v': '6'}, {'n': '娱乐', 'v': '1'}, + {'n': '电台', 'v': '5'}, {'n': '虚拟主播', 'v': '9'}, + {'n': '生活', 'v': '10'}, {'n': '知识', 'v': '11'}, + {'n': '赛事', 'v': '13'}]}] + + def process_douyu(self): + try: + self.dyufdata = self.fetch( + f'{self.referers["douyu"]}/api/cate/list', + headers=self.headers[1] + ).json() + return ('douyu', [{'key': 'cate', 'name': '分类', + 'value': [{'n': i['cate1Name'], 'v': str(i['cate1Id'])} + for i in self.dyufdata['data']['cate1Info']]}]) + except Exception as e: + print(f"douyu错误: {e}") + return 'douyu', None + + def homeContent(self, filter): + result = {} + cateManual = { + "虎牙": "huya", + "斗鱼": "douyu", + "网易": "wangyi", + "B站": "bili" + } + classes = [] + filters = { + 'huya': [{'key': 'cate', 'name': '分类', + 'value': [{'n': '网游', 'v': '1'}, {'n': '单机', 'v': '2'}, + {'n': '娱乐', 'v': '8'}, {'n': '手游', 'v': '3'}]}] + } + + with ThreadPoolExecutor(max_workers=2) as executor: + futures = { + executor.submit(self.process_bili): 'bili', + executor.submit(self.process_douyu): 'douyu' + } + + for future in futures: + platform, filter_data = future.result() + if filter_data: + filters[platform] = filter_data + + for k in cateManual: + classes.append({ + 'type_name': k, + 'type_id': cateManual[k] + }) + + result['class'] = classes + result['filters'] = filters + return result + + def homeVideoContent(self): + pass + + def categoryContent(self, tid, pg, filter, extend): + vdata = [] + result = {} + pagecount = 9999 + result['page'] = pg + result['limit'] = 90 + result['total'] = 999999 + if tid == 'wangyi': + vdata, pagecount = self.wyccContent(tid, pg, filter, extend, vdata) + elif 'bili' in tid: + vdata, pagecount = self.biliContent(tid, pg, filter, extend, vdata) + elif 'huya' in tid: + vdata, pagecount = self.huyaContent(tid, pg, filter, extend, vdata) + elif 'douyu' in tid: + vdata, pagecount = self.douyuContent(tid, pg, filter, extend, vdata) + result['list'] = vdata + result['pagecount'] = pagecount + return result + + def wyccContent(self, tid, pg, filter, extend, vdata): + params = { + 'format': 'json', + 'start': (int(pg) - 1) * 20, + 'size': '20', + } + response = self.fetch(f'{self.hosts[tid]}/api/category/live/', params=params, headers=self.headers[0]).json() + for i in response['lives']: + if i.get('cuteid'): + bvdata = self.buildvod( + vod_id=f"{tid}@@{i['cuteid']}", + vod_name=i.get('title'), + vod_pic=i.get('cover'), + vod_remarks=i.get('nickname'), + style={"type": "rect", "ratio": 1.33} + ) + vdata.append(bvdata) + return vdata, 9999 + + def biliContent(self, tid, pg, filter, extend, vdata): + """B站分类内容 - 使用WBI签名绕过风控 [^30^][^90^]""" + try: + # 分类列表 - 显示子分类 + if extend.get('cate') and pg == '1' and 'click' not in tid: + # 从已保存的分类数据中找到对应分类的子分类 + if hasattr(self, 'bili_areas'): + for area in self.bili_areas: + if str(area['id']) == extend['cate']: + for sub_area in area.get('list', []): + v = self.buildvod( + vod_id=f"click_{tid}@@{extend['cate']}@@{sub_area['id']}", + vod_name=sub_area.get('name'), + vod_pic=sub_area.get('pic'), + vod_tag=1, + style={"type": "oval", "ratio": 1} + ) + vdata.append(v) + return vdata, 1 + # 如果没有找到子分类,直接返回空,让用户进入房间列表 + return vdata, 1 + + # 房间列表 - 使用getList接口并添加WBI签名 [^30^] + if 'click' in tid: + # 子分类房间 + ids = tid.split('_')[1].split('@@') + tid = ids[0] + parent_area_id = ids[1] + area_id = ids[2] + else: + # 默认使用分类ID作为parent_area_id,area_id为0表示该分类下所有 + parent_area_id = extend.get('cate', '2') # 默认网游 + area_id = 0 + + # 构建请求参数并添加WBI签名 [^30^] + params = { + 'parent_area_id': parent_area_id, + 'area_id': area_id, + 'page': pg, + 'platform': 'web', + 'sort_type': 'online' # 按热度排序 + } + signed_params = self._enc_wbi(params) + + # 调用getList接口 + api_url = f'{self.hosts[tid][0]}/xlive/web-interface/v1/second/getList' + data = self.fetch(api_url, params=signed_params, headers=self.headers[0]).json() + + # 如果WBI签名失败,尝试不带签名 + if data.get('code') == -352: + print("WBI签名失败,尝试无签名请求...") + params = { + 'parent_area_id': parent_area_id, + 'area_id': area_id, + 'page': pg, + 'platform': 'web', + 'sort_type': 'online' + } + data = self.fetch(api_url, params=params, headers=self.headers[0]).json() + + if data.get('code') == 0: + room_list = data.get('data', {}).get('list', []) + for room in room_list: + if room.get('roomid'): + # 处理在线人数显示 + online = room.get('online', 0) + if online > 10000: + online_str = f"{online / 10000:.1f}万" + else: + online_str = str(online) + + v = self.buildvod( + f"{tid}@@{room['roomid']}", + room.get('title', '未知标题'), + room.get('cover') or room.get('system_cover'), + f"{online_str}人", + 0, + room.get('uname', ''), + style={"type": "rect", "ratio": 1.33} + ) + vdata.append(v) + + # 检查是否有更多数据 + has_more = data.get('data', {}).get('has_more', 0) + if not has_more: + pagecount = int(pg) + else: + pagecount = 9999 + else: + print(f"B站API返回错误: {data.get('message', '未知错误')} (code: {data.get('code')})") + pagecount = 1 + + return vdata, pagecount + + except Exception as e: + print(f"B站内容获取错误: {e}") + return vdata, 1 + + def huyaContent(self, tid, pg, filter, extend, vdata): + if extend.get('cate') and pg == '1' and 'click' not in tid: + id = extend.get('cate') + data = self.fetch(f'{self.referers[tid]}/liveconfig/game/bussLive?bussType={id}', + headers=self.headers[1]).json() + for i in data['data']: + v = self.buildvod( + vod_id=f"click_{tid}@@{int(i['gid'])}", + vod_name=i.get('gameFullName'), + vod_pic=f'https://huyaimg.msstatic.com/cdnimage/game/{int(i["gid"])}-MS.jpg', + vod_tag=1, + style={"type": "oval", "ratio": 1} + ) + vdata.append(v) + return vdata, 1 + else: + gid = '' + if 'click' in tid: + ids = tid.split('_')[1].split('@@') + tid = ids[0] + gid = f'&gameId={ids[1]}' + data = self.fetch(f'{self.hosts[tid][0]}/cache.php?m=LiveList&do=getLiveListByPage&tagAll=0{gid}&page={pg}', + headers=self.headers[1]).json() + for i in data['data']['datas']: + if i.get('profileRoom'): + v = self.buildvod( + f"{tid}@@{i['profileRoom']}", + i.get('introduction'), + i.get('screenshot'), + str(int(i.get('totalCount', '1')) / 10000) + '万', + 0, + i.get('nick'), + style={"type": "rect", "ratio": 1.33} + + ) + vdata.append(v) + return vdata, 9999 + + def douyuContent(self, tid, pg, filter, extend, vdata): + if extend.get('cate') and pg == '1' and 'click' not in tid: + for i in self.dyufdata['data']['cate2Info']: + if str(i['cate1Id']) == extend['cate']: + v = self.buildvod( + vod_id=f"click_{tid}@@{i['cate2Id']}", + vod_name=i.get('cate2Name'), + vod_pic=i.get('icon'), + vod_remarks=i.get('count'), + vod_tag=1, + style={"type": "oval", "ratio": 1} + ) + vdata.append(v) + return vdata, 1 + else: + path = f'/japi/weblist/apinc/allpage/6/{pg}' + if 'click' in tid: + ids = tid.split('_')[1].split('@@') + tid = ids[0] + path = f'/gapi/rkc/directory/mixList/2_{ids[1]}/{pg}' + url = f'{self.hosts[tid]}{path}' + data = self.fetch(url, headers=self.headers[1]).json() + for i in data['data']['rl']: + v = self.buildvod( + vod_id=f"{tid}@@{i['rid']}", + vod_name=i.get('rn'), + vod_pic=i.get('rs16'), + vod_year=str(int(i.get('ol', 1)) / 10000) + '万', + vod_remarks=i.get('nn'), + style={"type": "rect", "ratio": 1.33} + ) + vdata.append(v) + return vdata, 9999 + + def detailContent(self, ids): + ids = ids[0].split('@@') + if ids[0] == 'wangyi': + vod = self.wyccDetail(ids) + elif ids[0] == 'bili': + vod = self.biliDetail(ids) + elif ids[0] == 'huya': + vod = self.huyaDetail(ids) + elif ids[0] == 'douyu': + vod = self.douyuDetail(ids) + return {'list': [vod]} + + def wyccDetail(self, ids): + try: + vdata = self.getpq(f'{self.hosts[ids[0]]}/{ids[1]}', self.headers[0])('script').eq(-1).text() + + def get_quality_name(vbr): + if vbr <= 600: + return "标清" + elif vbr <= 1000: + return "高清" + elif vbr <= 2000: + return "超清" + else: + return "蓝光" + + data = json.loads(vdata)['props']['pageProps']['roomInfoInitData'] + name = data['live'].get('title', ids[0]) + vod = self.buildvod(vod_name=data.get('keywords_suffix'), vod_remarks=data['live'].get('title'), + vod_content=data.get('description_suffix')) + resolution_data = data['live']['quickplay']['resolution'] + all_streams = {} + sorted_qualities = sorted(resolution_data.items(), + key=lambda x: x[1]['vbr'], + reverse=True) + for quality, data in sorted_qualities: + vbr = data['vbr'] + quality_name = get_quality_name(vbr) + for cdn_name, url in data['cdn'].items(): + if cdn_name not in all_streams and type(url) == str and url.startswith('http'): + all_streams[cdn_name] = [] + if isinstance(url, str) and url.startswith('http'): + all_streams[cdn_name].extend([quality_name, url]) + plists = [] + names = [] + for i, (cdn_name, stream_list) in enumerate(all_streams.items(), 1): + names.append(f'线路{i}') + pstr = f"{name}${ids[0]}@@{self.e64(json.dumps(stream_list))}" + plists.append(pstr) + vod['vod_play_from'] = "$$$".join(names) + vod['vod_play_url'] = "$$$".join(plists) + return vod + except Exception as e: + return self.handle_exception(e) + + def biliDetail(self, ids): + """ + B站直播详情 - 使用playUrl接口获取多清晰度 + """ + try: + room_id = ids[1] + + # 获取房间信息 + info_res = self.fetch( + f'{self.hosts["bili"][0]}/room/v1/Room/get_info?room_id={room_id}', + headers=self.headers[0] + ).json() + + if info_res.get('code') != 0: + return self.handle_exception(Exception("获取房间信息失败")) + + room_info = info_res['data'] + title = room_info.get('title', 'B站直播') + + vod = self.buildvod( + vod_name=title, + type_name=f"{room_info.get('parent_area_name', '')}/{room_info.get('area_name', '')}", + vod_director=room_info.get('uname', ''), + vod_remarks=f"在线{room_info.get('online', 0)}人" + ) + + # 获取播放地址信息 + play_res = self.fetch( + f'{self.hosts["bili"][0]}/room/v1/Room/playUrl?cid={room_id}&qn=10000&platform=web', + headers={ + **self.headers[0], + 'Referer': 'https://live.bilibili.com/', + 'Origin': 'https://live.bilibili.com' + } + ).json() + + if play_res.get('code') != 0: + return self.handle_exception(Exception("获取播放地址失败")) + + play_data = play_res['data'] + accept_quality = play_data.get('accept_quality', ['10000', '400', '250', '150']) + quality_desc = {item['qn']: item['desc'] for item in play_data.get('quality_description', [])} + + # 构建清晰度列表 + qualities = [] + for qn in sorted([int(q) for q in accept_quality], reverse=True): + desc = quality_desc.get(qn, f'清晰度{qn}') + qualities.append(f"{desc}$bili@@{room_id}@@{qn}") + + vod['vod_play_from'] = 'B站直播' + vod['vod_play_url'] = '#'.join(qualities) + return vod + + except Exception as e: + print(f"B站详情错误: {e}") + return self.handle_exception(e) + + def huyaDetail(self, ids): + """ + 虎牙播放详情 - 参考最新三合一.js重构 + 支持多线路多清晰度选择 + 核心算法:通过房间信息API获取uid、streamName和rateArray,为每个清晰度生成签名URL + 清晰度说明: + - 蓝光8M/6M/4M/10M = 8000/6000/4000/10000 kbps = 1080P+ + - 蓝光 = 3000 kbps = 1080P + - 超清 = 2000 kbps = 1080P (官方标准) + - 高清 = 1200 kbps = 720P + - 标清/流畅 = 500-800 kbps = 480P/540P + """ + try: + room_id = ids[1] + + # 1. 获取房间信息 + api_url = f'{self.hosts[ids[0]][1]}/cache.php?m=Live&do=profileRoom&roomid={room_id}' + res = self.fetch(api_url, headers=self.headers[0]) + + if res.status_code != 200: + return self.handle_exception(Exception(f"API请求失败: {res.status_code}")) + + data = res.json() + if not data or not data.get('data'): + return self.handle_exception(Exception("房间数据为空")) + + room_data = data['data'] + + # 2. 提取关键信息 + uid = room_data.get('profileInfo', {}).get('uid') + stream_info = room_data.get('stream', {}) + live_data = room_data.get('liveData', {}) + + if not uid: + return self.handle_exception(Exception("缺少uid")) + + # 3. 获取streamName和码率信息 + base_stream_list = stream_info.get('baseSteamInfoList', []) + if not base_stream_list: + return self.handle_exception(Exception("无直播流信息")) + + # 获取第一个CDN的streamName作为基准 + base_stream = base_stream_list[0] + stream_name = base_stream.get('sStreamName') + if not stream_name: + return self.handle_exception(Exception("无法获取streamName")) + + # 4. 构建VOD对象 + vod = self.buildvod( + vod_name=live_data.get('introduction', '虎牙直播'), + type_name=live_data.get('gameFullName', ''), + vod_director=live_data.get('nick', ''), + vod_remarks=live_data.get('contentIntro', ''), + ) + + # 5. 获取所有CDN线路 + cdn_list = [] + for stream in base_stream_list: + cdn_type = stream.get('sCdnType', 'AL') + flv_url = stream.get('sFlvUrl', '') + hls_url = stream.get('sHlsUrl', '') + stream_name_cdn = stream.get('sStreamName', stream_name) + + if flv_url: + cdn_list.append({ + 'cdn': cdn_type, + 'flv_base': flv_url, + 'hls_base': hls_url, + 'stream_name': stream_name_cdn, + 'priority': stream.get('iWebPriorityRate', 0) + }) + + # 按优先级排序 + cdn_list.sort(key=lambda x: x['priority'], reverse=True) + + # 6. 获取清晰度列表 (rateArray) + rate_array = stream_info.get('rateArray', []) + + # 如果没有rateArray,尝试从vMultiStreamInfo获取 + if not rate_array and 'vMultiStreamInfo' in room_data: + rate_array = room_data['vMultiStreamInfo'] + + # 如果仍然没有,使用默认清晰度(按虎牙官方标准) + if not rate_array: + rate_array = [ + {'sDisplayName': '蓝光4M', 'iBitRate': 4000}, + {'sDisplayName': '蓝光', 'iBitRate': 3000}, + {'sDisplayName': '超清', 'iBitRate': 2000}, # 2000kbps = 1080P + {'sDisplayName': '高清', 'iBitRate': 1200}, # 1200kbps = 720P + {'sDisplayName': '流畅', 'iBitRate': 500} + ] + + # 过滤和排序清晰度 + # 虎牙的rateArray中,iBitRate就是码率值,sDisplayName是显示名称 + # 需要确保:超清=2000kbps(1080P),高清=1200kbps(720P) + filtered_rates = [] + seen_bitrates = set() + + for rate in rate_array: + bit_rate = rate.get('iBitRate', 0) + name = rate.get('sDisplayName', '') + + # 跳过重复的码率 + if bit_rate in seen_bitrates: + continue + + # 修正清晰度名称,确保符合虎牙标准 + # 2000kbps应该是超清(1080P),不是高清 + if bit_rate == 2000 and ('高清' in name or '720' in name): + name = '超清' # 强制修正为超清 + elif bit_rate == 1200 and ('标清' in name or '480' in name): + name = '高清' # 1200kbps对应高清 + elif bit_rate == 2000 and name == '原画': + name = '超清' # 修正原画为超清 + + seen_bitrates.add(bit_rate) + filtered_rates.append({ + 'sDisplayName': name, + 'iBitRate': bit_rate + }) + + # 按码率从高到低排序 + sorted_rates = sorted(filtered_rates, key=lambda x: x['iBitRate'], reverse=True) + + # 7. 为每个CDN生成各清晰度的播放URL + play_lines = [] + line_names = [] + + for cdn_idx, cdn in enumerate(cdn_list[:3]): # 最多取3个CDN + cdn_name = cdn['cdn'] + line_names.append(f"线路{cdn_idx + 1}({cdn_name})") + + qualities = [] + for rate in sorted_rates: + quality_name = rate['sDisplayName'] + bit_rate = rate['iBitRate'] + + # 生成该清晰度的URL + quality_url = self._generate_huya_play_url( + cdn, uid, stream_name, bit_rate + ) + + qualities.extend([quality_name, quality_url]) + + # 编码该线路的所有清晰度 + encoded_qualities = self.e64(json.dumps(qualities)) + play_lines.append(f"{live_data.get('introduction', '直播')}${ids[0]}@@{encoded_qualities}") + + # 8. 构建播放数据 + vod['vod_play_from'] = "$$$".join(line_names) + vod['vod_play_url'] = "$$$".join(play_lines) + + return vod + + except Exception as e: + return self.handle_exception(e) + + def _generate_huya_play_url(self, cdn, uid, stream_name, bit_rate): + """ + 生成虎牙播放URL,参考最新三合一.js算法 + 关键:ratio参数必须正确设置为iBitRate值(如2000、4000等) + """ + # 基础URL构建 + flv_base = cdn['flv_base'] + stream = cdn['stream_name'] + + # 生成时间戳和签名参数 + timestamp = int(time.time()) + seqid = f"{uid}{timestamp}" + ss = hashlib.md5(f"{seqid}|huya_adr|102".encode()).hexdigest() + ws_time = hex(timestamp + 21600)[2:] # 16进制,有效期6小时 + + # 计算wsSecret + ws_secret = hashlib.md5( + f"DWq8BcJ3h6DJt6TY_{uid}_{stream_name}_{ss}_{ws_time}".encode() + ).hexdigest() + + # 构建基础URL + base_url = f"{flv_base}/{stream}.flv" + + # 关键修复:ratio参数直接使用iBitRate值 + # 超清=2000,高清=1200,蓝光=3000/4000/6000/8000 + if bit_rate > 0: + ratio_param = f"ratio={bit_rate}" + else: + # 原画/0码率时,使用默认2000或从URL推断 + ratio_param = "ratio=2000" + + # 构建完整URL + play_url = ( + f"{base_url}?{ratio_param}&wsSecret={ws_secret}&wsTime={ws_time}" + f"&ctype=huya_adr&seqid={seqid}&uid={uid}" + f"&fs=bgct&ver=1&t=102" + ) + + return play_url + + def douyuDetail(self, ids): + """ + 斗鱼播放详情 - 参考最新三合一.js重构 + 核心算法:设备ID生成 -> 获取加密密钥 -> 计算签名 -> 获取播放地址 + 修复:切换分辨率只能播放1秒的问题 + 方案:存储房间号和码率信息,在playerContent中实时获取对应码率的URL + """ + try: + channel = ids[1] + headers = self.gethr(0, zr=f'{self.hosts[ids[0]]}/{channel}') + + # 1. 初始化会话和设备ID (参考JS中的initialize和setupDeviceId) + session = {} + + # 请求首页获取Cookie + try: + home_res = self.fetch(f'{self.hosts[ids[0]]}/{channel}', headers=headers) + if home_res.headers.get('Set-Cookie'): + cookie_str = home_res.headers.get('Set-Cookie') + # 解析dy_did + did_match = re.search(r'dy_did=([a-f0-9]{32})', cookie_str) + if did_match: + device_id = did_match.group(1) + else: + device_id = self._generate_random_hex(32) + else: + device_id = self._generate_random_hex(32) + except: + device_id = self._generate_random_hex(32) + + session['dy_did'] = device_id + session['mantine-color-scheme-value'] = 'light' + + # 2. 获取房间基本信息 + betard_res = self.fetch(f'{self.hosts[ids[0]]}/betard/{channel}', headers=headers).json() + if not betard_res or not betard_res.get('room'): + return self.handle_exception(Exception("获取房间信息失败")) + + room_info = betard_res['room'] + vname = room_info.get('room_name', '斗鱼直播') + + vod = self.buildvod( + vod_name=vname, + vod_remarks=room_info.get('second_lvl_name', ''), + vod_director=room_info.get('nickname', ''), + ) + + # 3. 获取安全密钥 (参考JS中的getSecurityKey) + sec_url = f"{self.hosts[ids[0]]}/wgapi/livenc/liveweb/websec/getEncryption?did={device_id}" + sec_res = self.fetch(sec_url, headers=headers).json() + + if not sec_res or sec_res.get('error') != 0: + return self.handle_exception(Exception("获取加密密钥失败")) + + security_data = sec_res['data'] + secret_key = security_data.get('key') + random_str = security_data.get('rand_str') + enc_time = security_data.get('enc_time', 1) + enc_data = security_data.get('enc_data') + + # 4. 计算签名 (参考JS中的computeSignature) + current_time = int(time.time()) + + # 迭代计算MD5 + current = random_str + for _ in range(enc_time): + current = hashlib.md5(f"{current}{secret_key}".encode()).hexdigest() + + signature = hashlib.md5(f"{current}{secret_key}{channel}{current_time}".encode()).hexdigest() + + # 5. 请求播放地址 (参考JS中的requestStreamData) + play_payload = { + 'enc_data': enc_data, + 'tt': str(current_time), + 'did': device_id, + 'auth': signature, + 'cdn': '', + 'rate': '', + 'hevc': '0', + 'fa': '0', + 'ive': '0' + } + + play_api = f"{self.hosts[ids[0]]}/lapi/live/getH5PlayV1/{channel}" + + # 构建请求头带Cookie + play_headers = headers.copy() + cookie_str = '; '.join([f"{k}={v}" for k, v in session.items()]) + play_headers['Cookie'] = cookie_str + play_headers['Content-Type'] = 'application/x-www-form-urlencoded' + + play_res = requests.post(play_api, data=play_payload, headers=play_headers, timeout=10).json() + + if not play_res or play_res.get('error') != 0: + # 尝试旧版API + play_res = self._try_legacy_douyu_api(channel, device_id, signature, current_time, play_headers) + if not play_res: + return self.handle_exception(Exception("获取播放地址失败")) + + stream_info = play_res.get('data', {}) + + # 6. 检查并更新设备ID (参考JS中的checkAndUpdateDeviceId) + rtmp_live = stream_info.get('rtmp_live', '') + if rtmp_live: + did_match = re.search(r'did=([a-f0-9]{32})', rtmp_live) + if did_match and did_match.group(1) != device_id: + device_id = did_match.group(1) + session['dy_did'] = device_id + # 重新请求 + play_payload['did'] = device_id + play_res = requests.post(play_api, data=play_payload, headers=play_headers, timeout=10).json() + if play_res and play_res.get('error') == 0: + stream_info = play_res.get('data', {}) + + # 7. 提取播放URL和多码率信息 + stream_url = None + if stream_info.get('rtmp_url') and stream_info.get('rtmp_live'): + stream_url = f"{stream_info['rtmp_url']}/{stream_info['rtmp_live']}" + elif stream_info.get('hls_url'): + stream_url = stream_info['hls_url'] + + if not stream_url: + return self.handle_exception(Exception("无法获取播放地址")) + + # 8. 构建多码率选项 + multirates = stream_info.get('multirates', []) + + # 关键修复:存储房间号和码率信息,而不是直接存储URL + # 这样在切换清晰度时可以重新获取对应码率的签名URL + qualities = [] + + if multirates: + # 按码率排序 + sorted_rates = sorted(multirates, key=lambda x: x.get('bit', 0), reverse=True) + for rate in sorted_rates: + bit_rate = rate.get('rate', -1) + name = rate.get('name', f"{bit_rate}P") + + # 存储格式:码率值,用于playerContent中重新获取URL + # 使用特殊标记#来区分这是码率值而不是URL + qualities.extend([name, f"#{bit_rate}"]) + else: + # 只有原画 + qualities = ['原画', '#-1'] + + # 同时存储房间号和设备信息,用于重新获取URL + # 格式:房间号|设备ID|签名信息(base64编码) + session_info = { + 'channel': channel, + 'device_id': device_id, + 'secret_key': secret_key, + 'random_str': random_str, + 'enc_time': enc_time, + 'enc_data': enc_data + } + encoded_session = self.e64(json.dumps(session_info)) + + # 9. 构建播放数据 + # vod_play_url格式:房间名$平台@@base64(清晰度列表)@@base64(会话信息) + encoded_qualities = self.e64(json.dumps(qualities)) + vod['vod_play_from'] = '斗鱼直播' + vod['vod_play_url'] = f"{vname}${ids[0]}@@{encoded_qualities}@@{encoded_session}" + + return vod + + except Exception as e: + return self.handle_exception(e) + + def _generate_random_hex(self, length): + """生成随机十六进制字符串""" + hex_chars = '0123456789abcdef' + return ''.join(random.choice(hex_chars) for _ in range(length)) + + def _try_legacy_douyu_api(self, channel, device_id, signature, timestamp, headers): + """尝试使用旧版API获取播放地址""" + try: + legacy_payload = { + 'did': device_id, + 'tt': str(timestamp), + 'sign': signature, + 'cdn': '', + 'rate': '-1', + 'ver': 'Douyu_223061205', + 'iar': '1', + 'ive': '1', + 'hevc': '0', + 'fa': '0' + } + legacy_api = f"https://www.douyu.com/lapi/live/getH5Play/{channel}" + res = requests.post(legacy_api, data=legacy_payload, headers=headers, timeout=10) + return res.json() if res.status_code == 200 else None + except: + return None + + def _get_douyu_play_url(self, channel, device_id, secret_key, random_str, enc_time, enc_data, rate): + """ + 获取斗鱼指定码率的播放URL(带签名) + 用于切换清晰度时重新获取URL + """ + try: + current_time = int(time.time()) + + # 重新计算签名 + current = random_str + for _ in range(enc_time): + current = hashlib.md5(f"{current}{secret_key}".encode()).hexdigest() + + signature = hashlib.md5(f"{current}{secret_key}{channel}{current_time}".encode()).hexdigest() + + # 构建请求 + play_payload = { + 'enc_data': enc_data, + 'tt': str(current_time), + 'did': device_id, + 'auth': signature, + 'cdn': '', + 'rate': str(rate) if rate > 0 else '', + 'hevc': '0', + 'fa': '0', + 'ive': '0' + } + + play_api = f"https://www.douyu.com/lapi/live/getH5PlayV1/{channel}" + + headers = { + 'User-Agent': self.headers[0]['User-Agent'], + 'Referer': f'https://www.douyu.com/{channel}', + 'Origin': 'https://www.douyu.com', + 'Cookie': f'dy_did={device_id}; mantine-color-scheme-value=light', + 'Content-Type': 'application/x-www-form-urlencoded' + } + + play_res = requests.post(play_api, data=play_payload, headers=headers, timeout=10).json() + + if not play_res or play_res.get('error') != 0: + # 尝试旧版API + return self._get_douyu_play_url_legacy(channel, device_id, signature, current_time, rate) + + stream_info = play_res.get('data', {}) + + # 检查设备ID是否匹配 + if stream_info.get('rtmp_live'): + did_match = re.search(r'did=([a-f0-9]{32})', stream_info['rtmp_live']) + if did_match and did_match.group(1) != device_id: + # 设备ID不匹配,使用新设备ID重新获取 + return self._get_douyu_play_url(channel, did_match.group(1), secret_key, random_str, enc_time, enc_data, rate) + + if stream_info.get('rtmp_url') and stream_info.get('rtmp_live'): + return f"{stream_info['rtmp_url']}/{stream_info['rtmp_live']}" + elif stream_info.get('hls_url'): + return stream_info['hls_url'] + + return None + except Exception as e: + print(f"获取斗鱼播放URL失败: {e}") + return None + + def _get_douyu_play_url_legacy(self, channel, device_id, signature, timestamp, rate): + """使用旧版API获取斗鱼播放URL""" + try: + legacy_payload = { + 'did': device_id, + 'tt': str(timestamp), + 'sign': signature, + 'cdn': '', + 'rate': str(rate) if rate > 0 else '-1', + 'ver': 'Douyu_223061205', + 'iar': '1', + 'ive': '1', + 'hevc': '0', + 'fa': '0' + } + legacy_api = f"https://www.douyu.com/lapi/live/getH5Play/{channel}" + + headers = { + 'User-Agent': self.headers[0]['User-Agent'], + 'Referer': f'https://www.douyu.com/{channel}', + 'Cookie': f'dy_did={device_id}', + 'Content-Type': 'application/x-www-form-urlencoded' + } + + res = requests.post(legacy_api, data=legacy_payload, headers=headers, timeout=10) + if res.status_code == 200: + data = res.json() + if data.get('error') == 0: + stream_info = data.get('data', {}) + if stream_info.get('rtmp_url') and stream_info.get('rtmp_live'): + return f"{stream_info['rtmp_url']}/{stream_info['rtmp_live']}" + return None + except: + return None + + def searchContent(self, key, quick, pg="1"): + pass + + def playerContent(self, flag, id, vipFlags): + try: + ids = id.split('@@') + p = 1 + if ids[0] in ['wangyi']: + p, url = 0, json.loads(self.d64(ids[1])) + elif ids[0] == 'bili': + p, url = self.biliplay(ids) + elif ids[0] == 'huya': + p, url = self.huyaplay(ids) + elif ids[0] == 'douyu': + p, url = self.douyuplay(ids) + return {'parse': p, 'url': url, 'header': self.playheaders[ids[0]]} + except Exception as e: + return {'parse': 1, 'url': self.excepturl, 'header': self.headers[0]} + + def biliplay(self, ids): + """ + B站播放解析 - 使用playUrl接口获取指定清晰度直播流 + ids: [平台, 房间号, 清晰度qn] + 支持多线路返回 + """ + try: + room_id = ids[1] + qn = ids[2] if len(ids) > 2 else '10000' + + # 使用playUrl接口获取直播流 + play_url = f'{self.hosts["bili"][0]}/room/v1/Room/playUrl?cid={room_id}&qn={qn}&platform=web' + data = self.fetch(play_url, headers={ + **self.headers[0], + 'Referer': 'https://live.bilibili.com/', + 'Origin': 'https://live.bilibili.com' + }).json() + + if data.get('code') != 0: + return 1, self.excepturl + + play_data = data['data'] + durl_list = play_data.get('durl', []) + + if not durl_list: + return 1, self.excepturl + + # 构建多线路结果 [线路1, URL1, 线路2, URL2, ...] + urls = [] + for idx, item in enumerate(durl_list, 1): + url = item.get('url') + if url: + urls.extend([f'线路{idx}', url]) + + # 如果只有一条线路,直接返回URL + if len(urls) == 2: + return 0, urls[1] # 直接返回URL字符串 + + return 0, urls + + except Exception as e: + print(f"B站播放错误: {e}") + return 1, self.excepturl + + def huyaplay(self, ids): + """ + 虎牙播放解析 - 返回所有清晰度选项供用户选择 + ids[1] 格式: base64编码的 [清晰度名称1, URL1, 清晰度名称2, URL2, ...] + """ + try: + # ids[1] 是编码后的播放地址列表 [名称1, URL1, 名称2, URL2, ...] + decoded = json.loads(self.d64(ids[1])) + # decoded 是一个列表,奇数索引是名称,偶数索引是URL + return 0, decoded + except Exception as e: + print(f"虎牙播放解析错误: {e}") + return 1, self.excepturl + + def douyuplay(self, ids): + """ + 斗鱼播放解析 - 实时获取对应码率的播放URL + ids格式: [平台, base64(清晰度列表), base64(会话信息)] + 清晰度列表: [名称1, #码率1, 名称2, #码率2, ...] + #表示这是码率值,需要重新获取URL + """ + try: + if len(ids) < 3: + # 兼容旧格式 + decoded = json.loads(self.d64(ids[1])) + return 0, decoded + + # 解析清晰度列表和会话信息 + qualities = json.loads(self.d64(ids[1])) + session_info = json.loads(self.d64(ids[2])) + + channel = session_info['channel'] + device_id = session_info['device_id'] + secret_key = session_info['secret_key'] + random_str = session_info['random_str'] + enc_time = session_info['enc_time'] + enc_data = session_info['enc_data'] + + # 为每个清晰度实时获取播放URL + result = [] + for i in range(0, len(qualities), 2): + name = qualities[i] + rate_marker = qualities[i + 1] + + # 解析码率值(去掉#前缀) + if rate_marker.startswith('#'): + rate = int(rate_marker[1:]) + else: + rate = -1 + + # 实时获取对应码率的URL + play_url = self._get_douyu_play_url( + channel, device_id, secret_key, random_str, + enc_time, enc_data, rate + ) + + if play_url: + result.extend([name, play_url]) + + if not result: + return 1, self.excepturl + + return 0, result + except Exception as e: + print(f"斗鱼播放解析错误: {e}") + return 1, self.excepturl + + def localProxy(self, param): + pass + + def e64(self, text): + try: + text_bytes = text.encode('utf-8') + encoded_bytes = b64encode(text_bytes) + return encoded_bytes.decode('utf-8') + except Exception as e: + print(f"Base64编码错误: {str(e)}") + return "" + + def d64(self, encoded_text): + try: + encoded_bytes = encoded_text.encode('utf-8') + decoded_bytes = b64decode(encoded_bytes) + return decoded_bytes.decode('utf-8') + except Exception as e: + print(f"Base64解码错误: {str(e)}") + return "" + + def josn_to_params(self, params, skip_empty=False): + query = [] + for k, v in params.items(): + if skip_empty and not v: + continue + query.append(f"{k}={v}") + return "&".join(query) + + def params_to_json(self, query_string): + parsed_data = parse_qs(query_string) + result = {key: value[0] for key, value in parsed_data.items()} + return result + + def buildvod(self, vod_id='', vod_name='', vod_pic='', vod_year='', vod_tag='', vod_remarks='', style='', + type_name='', vod_area='', vod_actor='', vod_director='', + vod_content='', vod_play_from='', vod_play_url=''): + vod = { + 'vod_id': vod_id, + 'vod_name': vod_name, + 'vod_pic': vod_pic, + 'vod_year': vod_year, + 'vod_tag': 'folder' if vod_tag else '', + 'vod_remarks': vod_remarks, + 'style': style, + 'type_name': type_name, + 'vod_area': vod_area, + 'vod_actor': vod_actor, + 'vod_director': vod_director, + 'vod_content': vod_content, + 'vod_play_from': vod_play_from, + 'vod_play_url': vod_play_url + } + vod = {key: value for key, value in vod.items() if value} + return vod + + def getpq(self, url, headers=None, cookies=None): + data = self.fetch(url, headers=headers, cookies=cookies).text + try: + return pq(data) + except Exception as e: + print(f"解析页面错误: {str(e)}") + return pq(data.encode('utf-8')) + + def gethr(self, index, rf='', zr=''): + headers = self.headers[index] + if zr: + headers['referer'] = zr + else: + headers['referer'] = f"{self.referers[rf]}/" + return headers + + def handle_exception(self, e): + print(f"报错: {str(e)}") + return {'vod_play_from': '哎呀翻车啦', 'vod_play_url': f'翻车啦${self.excepturl}'} \ No newline at end of file diff --git a/潇洒/单07131529.zip b/潇洒/单07131529.zip new file mode 100644 index 00000000..c351cafd Binary files /dev/null and b/潇洒/单07131529.zip differ